Author Topic: Chapter List | MB, A Plugin for Creating Chapters Within Songs  (Read 2197 times)

Eincrou

  • Newbie
  • *
  • Posts: 6
Hi, guys.  This is a work-in progress plugin, but I think it is in decent-enough state to get some feedback.  There are some essential features I want to implement first before submitting it as a plugin.

Chapter List | MB is an upgrade of a Winamp-based widget for the ClassicPro plugin.  It allows the user to manually create saved points within tracks and give them names, just like DVDs and Blu-rays have chapters.  You can add, remove and give titles to chapters with Chapter List | MB.  Data is persisted through XML files that are located at the tracks' file paths.

My first priority was to get 100% backward compatibility with my hundreds of existing Chapter List XML files and to match all of the original's features, such as chapter repeating.

Here are some of Chapter List | MB's features as they compare to the original widget.

Original features, implemented and/or improved
• Create and remove chapters (manually!) at any point within a track's duration.
     - Added a combo box with common chapter titles to use for newly created chapters.
• Give custom names to chapters
     - Renaming is done directly in the cell, instead of in a separate text box.
• Jump to chapter positions by double-clicking
• Save chapters in XML format
     - Possibility for new chapter format to save additional information
• Chapter repeating
    - Original CL could only repeat a chapter to the subsequent chapter. CL|MB has full A-B repeating between any set of chapters.

New Features vs. Chapter List
• Toolstrip bar on the bottom displays current song and current chapter.
• Chapter positions can be nudged forwards and backwards by 200ms (user configurable in the future) to fine-tune where a chapter begins.  Hold Shift to move by 4x (currently 800 ms).
• Full row highlighting for current chapter. (Colors user configurable in the future)

Known Issues
• Characters that could be invalid in XML aren't dealt with properly.
• The first column has ugly placeholder image icons appear for a fraction of a second if you add or remove a chapter.
• User settings are partially implemented, but for now there's no way to set them.  8)
• I'm still trying to figure out how to load the plugin on MusicBee launch without the form blowing up.
• Sometimes removing a chapter causes the currently playing chapter to not display, but it should correct itself when the next chapter is reached.
• I'd love to integrate this plugin's into MusicBee's interface.... as soon as I figure out how to do it.
• Visual Studio's default icon :(
• When the artist - title | chapter # - chapter name toolstrip is too long, it appears blank.  Expand the window horizontally to see everything.

The binary and source are available at my GitHub.  Detailed instructions on how to use it are also available.

https://github.com/Eincrou/ChapterList-MB/releases

Here's an image to show you when CL|MB can be really useful!

hiccup

  • Member
  • Hero Member
  • *****
  • Posts: 2906
Wow, that is a great (and fun) plugin.

It really raises the desire having it possible for it's panel being docked (and skinned) within MusicBee's panel.

Steven

  • Administrator
  • Hero Member
  • *****
  • Posts: 29770
• I'd love to integrate this plugin's into MusicBee's interface.... as soon as I figure out how to do it.
could you explain some more what you are looking for with that? eg. i can imagine you want a way to set the text displayed in the player controls panel

It really raises the desire having it possible for it's panel being docked (and skinned) within MusicBee's panel.
@Eincrou, this is possible but not documented as yet. If you want to do this let me know and i will create some instructions

Eincrou

  • Newbie
  • *
  • Posts: 6
Thanks, Hiccup, and that's exactly what I hope to do!


It really raises the desire having it possible for it's panel being docked (and skinned) within MusicBee's panel.
@Eincrou, this is possible but not documented as yet. If you want to do this let me know and i will create some instructions

Yep, that's exactly what I had in mind, rather than having a separate Windows Form window.  I did a tiny, tiny amount of experimentation with
Code
mbApiInterface.MB_AddPanel(_mainForm.DataGridView, PluginPanelDock.ApplicationWindow)
, and it gave quite a hilariously bad result.  ;D

I'd like to be able to have the whole format of CL|MB fit on the side, probably over where the Track Information and Playing Tracks panels are.  I remember reading a thread about doing something like this a few months ago, but I couldn't find it again.  If you could give any information about it, I'd be very appreciative.


hiccup

  • Member
  • Hero Member
  • *****
  • Posts: 2906
1. Would it be possible to create and save some of your own entries in the combo box?

2. This is probably me, but I can't get a good grip on the repeat feature. It seems to behave a little bit unpredictable, and it's not completely intuitive at first sight.

For example, when set like this:



- When 'Chorus' is selected while playing, the 'next chapter' button is not actually 'next chapter', but 'repeat chapter'.
- I would assume that 'Bridge' and 'Solo' would play and repeat both. (as if being one chapter) But only 'Bridge' will repeat.
- The Play and Repeat icon share their space. So if repeat is activated for a track, you no longer see the Play icon when it plays.
- Why is one repeat icon black and the other one grey? And why are they not vertically aligned?


And this is a bit weird:



When 'Verse' is playing and you double-click 'Bridge', you would expect that 'Bridge' would then play, but 'Verse' repeats.


This is of course not intended as criticism, but I am just responding (and thinking ;-) as some noob, so to possible help improve on intuitiveness.


edit:

I find it's also difficult to just 'untick' or remove the 'Repeat' for a chapter. Things seem to be happening, but just disabling it is not one of it.

hiccup

  • Member
  • Hero Member
  • *****
  • Posts: 2906
2. This is probably me, but I can't get a good grip on the repeat feature. It seems to behave a little bit unpredictable, and it's not completely intuitive at first sight.

I just noticed at closing down there were a lot of your plugin panels open in the background simultaneously.
I wasn't aware of that while testing, so that might be the cause of some of these issues I reported?

So another suggestion: allow only one panel at the same time...

Eincrou

  • Newbie
  • *
  • Posts: 6
Thanks for taking a detailed look at the plugin, Hiccup!

1. Would it be possible to create and save some of your own entries in the combo box?

Yes! That's something on my list of things to do once I get user preferences working.  There are some common chapter titles I use not in the list, so it'd be great for me, too.

2. This is probably me, but I can't get a good grip on the repeat feature. It seems to behave a little bit unpredictable, and it's not completely intuitive at first sight.

The repeat function works like this: The A position is where the playing track will return to upon hitting the B position (or the end of the track, if you have no B set.)  The B chapter doesn't actually play.  This is necessary for when you want to repeat just one chapter.  In your example, to repeat both Bridge and Solo, you'd set the B position to Outro.

I was undecided on whether to continue showing the playhead image if you're on a chapter set to repeat.  I'll take note that you'd prefer the play icon to continue displaying.

The repeat icons are different colors to indicate which is set as A and which is set as B.  The plan is to have A and B images appear instead of those circular arrows I borrowed from the original Chapter List.

And this is a bit weird:



When 'Verse' is playing and you double-click 'Bridge', you would expect that 'Bridge' would then play, but 'Verse' repeats.

I can't reproduce this right now.  I'll check into it later today.


I find it's also difficult to just 'untick' or remove the 'Repeat' for a chapter. Things seem to be happening, but just disabling it is not one of it.

If you click the "B" (gray) circle it will clear the B chapter from the repeating.  If you click the "A" (black) circle, it will clearboth A and B.

I just noticed at closing down there were a lot of your plugin panels open in the background simultaneously.
I wasn't aware of that while testing, so that might be the cause of some of these issues I reported?

Thanks.  I thought I had fixed that issue a long time ago; I'll fix it again.  ;D

I appreciate you trying out the plugin.  Let me know if you find any other issues or have any suggestions.  I'll try to fix the issues you've brought up ASAP.

hiccup

  • Member
  • Hero Member
  • *****
  • Posts: 2906
Thanks for taking a detailed look at the plugin, Hiccup!

No effort at all, I find it an interesting and fun addition.
And thanks for explaining.

So having this:



does not make 'Chorus' repeat at all. (I expected it to)


And this:



does not make 'Solo' repeat together with 'Chorus' (I expected it to)

Once you understand how that works, it's not a problem.
But I'm not sure it's intuitive enough.

Perhaps something like this would improve a bit on that?

(Having 'Chorus' and 'Solo' both repeating)



edit:
Or if you prefer not to change too much under the hood, just change the repeat icons to something like this?:

Last Edit: June 13, 2017, 06:14:29 PM by hiccup

Eincrou

  • Newbie
  • *
  • Posts: 6
The circular icons are literally copied over from the original Chapter List's set of icons, which could only repeat one chapter, so the circular arrow made sense in that context. For CL|MB, these icons will eventually say A and B, rather than the two ambiguous arrow circles.  That should help make it more clear what's happening.

In your first image, the Chorus will repeat, but only after reaching the end of the track; then it will jump back up to the Chorus chapter and repeat the sections in between, forever.  That's what happens if you set an "A" chapter, but don't explicitly set a "B" chapter; the "B" is implicitly set to the end of the track.

In the second image, no the Solo will not repeat.  Again, this confusion is understandable because of the inappropriate placeholder icons.  I'll have those changed for the next release.

I like the icons in your last image.  The lines make it clear what is being repeated.   I may go with something similar!

By the way, you were right about some strange issues being caused by multiple windows being open.  I was able to reproduce the problem, and I've fixed it.

Eincrou

  • Newbie
  • *
  • Posts: 6
I should have updated this thread ages ago, because I have not released the final version of Chapter List | MB for two years.

With the info Steven gave me, I was able to integrate the plugin into the MusicBee interface:



Whenever starting MusicBee up, the CL|MB panel doesn't load and stays blank, but disabling it, applying, and then reenabling it in the "Configure Layout > Arrange Panels..." menu will make it load properly.  I only had the problem once I switched to using the Windows Store version of MusicBee, so it might not affect all users.

I also was in the process of adding some options in the MusicBee options for plugins, but the elements look messed up.  The functionality should still work, though.  ;)

Chapter List | MB 2.0 - Final Release

boroda

  • Hero Member
  • *****
  • Posts: 3315