Author Topic: Add "Work" and Possibly Other Fields to the Auto-DJ Random Sort Capability  (Read 10134 times)

ArthurDaniels

  • Full Member
  • ***
  • Posts: 160
I have now noticed another nice feature.  If I delete tracks from the top of the list (after they are played, for example), then a like number of additional tracks are added to the bottom of the list.  And, when these tracks are added to the list, if additional tracks are needed to complete the work at the bottom of the list, then those tracks are added.

I am happily using the "new and improved" Auto DJ Works feature to randomly select and play music.

I have also discovered that, while Auto DJ is active, if I want to play a specific work that I have manually selected, I can do so simply by adding the work's tracks to the top of the play list, while remaining in the Auto DJ play mode.  When finished with these hand-selected tracks, I simply delete them.  The important thing to remember is to add the tracks to the top of the list so that the Auto DJ Works selection process is not disturbed.

I will report other observed results as they occur.

Art

ArthurDaniels

  • Full Member
  • ***
  • Posts: 160
Additional Observations About Using the Auto DJ Feature with "Work" Selection:

Here are two possible "workarounds" for the "problem" of truncated tracks when a long work appears in the middle of a random selection.

1.  In the "Playing Tracks" panel, find the last track in the work which has truncated tracks (not all tracks in the work are present).

2.  Beginning with the first track of the next work in the list, remove all subsequent tracks in the list.  This action effectively places the work with missing tracks at the end of the list.

Because the truncated work is now at the ends of the list, whenever tracks are added by Auto-DJ, those tracks should be the next tracks in the truncated work.  This process should continue as additional tracks are deleted after they are played from other works which appear ahead of the truncated work.  Eventually, all missing tracks should be added so that the complete work is available for play.

An alternative approach, which may also work:

1.  Highlight all tracks in the truncated work.

2.  Move the tracks to the bottom of the list in the Playing Tracks Panel.

Now that the truncated tracks are at the bottom of the list, the program may continue to add missing tracks as previously-played tracks are removed.

I have not fully tested either pf these two approaches yet.  When I encounter another work with truncated tracks in the middle of the list, I will test these approaches and report results by amending this Post.

Again, thanks Steve, for adding this very versatile feature to MusicBee.

Art

redwing

  • Guest
A simple way is use "Play next album" hotkey. You can configure it in Preferences> Hotkeys.

ArthurDaniels

  • Full Member
  • ***
  • Posts: 160
Hi Steve:

One more request on this topic.

Please add Work to one of the Sort Menus - either the Main Sort Menu (Album, Album, Artist, etc.) or the the Other Tags Sort Menu.

Since Work is now a defined field, the program does not permit Work to be added as a Custom Field.

Thanks,

Art
Last Edit: November 05, 2017, 01:04:40 PM by ArthurDaniels

Steven

  • Administrator
  • Sr. Member
  • *****
  • Posts: 34313
Support for the virtual tag was an excellent idea!
Now, how about simplifying the setting as there's no need to list all virtual fields in the menu - track, album, and a few blank text box where the user can enter either a tag name or a formula with multiple tags?
i do agree that would make it easier to use for some users. However its not so straight-forward to implement vs. how much i think people would actually use that feature. If i am proved wrong, happy to change my stance.

Steven

  • Administrator
  • Sr. Member
  • *****
  • Posts: 34313
But, if a long work is selected in the middle of the track list, there seems to be an arbitrary limitation of the number of tracks chosen from that work before a different work is added to the list.
Looks like the bug occurs only to the first set of upcoming tracks right after the initial list. After the first set, all is working fine, keep playing multi-track works completely that have more tracks than the number of upcoming tracks.
It should only be when the auto-dj is started using a list generated using the preview command. Once the auto-dj is running, although it wont show the remaining tracks for large work, they should still be retrieved in sequence as the dj progresses.

What i have done for the next v3.2 update is make the preview command exceed the initial playlist size restriction if there are remaining tracks in a sequence.
Last Edit: November 05, 2017, 03:37:08 PM by Steven

redwing

  • Guest
currently a null value will be lumped with all other null value files

Again, I don't see the point of including null value files to the source. Try with a virtual tag "<Work>", and it keeps selecting the same compilation albums in the same order that have no values for work field.

redwing

  • Guest
Please add Work to one of the Sort Menus - either the Main Sort Menu (Album, Album, Artist, etc.) or the the Other Tags Sort Menu.

Since Work is now a defined field, the program does not permit Work to be added as a Custom Field.

You can create a virtual tag for the field (<Work>) in Preferences> Tags(1)> Define New Tags. And add that field instead to column/thumbnail browser. But I agree "Work" field needs to be available for those filtering browsers.

redwing

  • Guest
What i have done for the next v3.2 update is make the preview command exceed the initial playlist size restriction if there are remaining tracks in a sequence.

That works. The only complaint is when those additional tracks were added, pressing play next album stops Auto-DJ at the end of the initial list whereas it continues to work with normal initial size. Not a big deal though.

Steven

  • Administrator
  • Sr. Member
  • *****
  • Posts: 34313
currently a null value will be lumped with all other null value files

Again, I don't see the point of including null value files to the source. Try with a virtual tag "<Work>", and it keeps selecting the same compilation albums in the same order that have no values for work field.
i think i am OK with that so will change it for the next update

ArthurDaniels

  • Full Member
  • ***
  • Posts: 160
Hi Steven,

Thanks for taking an interest and acting upon my Auto-DJ Work suggestion.  I am having a lot of fun experimenting with this feature in Auto-DJ.  I have set both my Initial Tracks and Maintain Tracks to 100 tracks.  I am using the Filter option to create different random sorts based upon my Genre designations.

How do I find out about when your next Version 3.2 release becomes available?

Thanks,

Art


ArthurDaniels

  • Full Member
  • ***
  • Posts: 160
Well, Steven, here I am again:

I am working with Playlists now to learn about this feature.  I notice that selection options are limited to Track and Album.  Can Work be added to this set of options as well?

As, always - thanks for considering my request.

Best,

Art

psychoadept

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 10691
.I notice that selection options are limited to Track and Album.  Can Work be added to this set of options as well?

+1
MusicBee Wiki
Use & improve MusicBee's documentation!

Latest beta patch (3.5)
(Unzip and overwrite existing program files)


redwing

  • Guest
Keep getting this sort of error with whatever field for "select by" setting (this is with track):

10.0.16299.0 - 3.2.6519.38379 - System.NullReferenceException: Object reference not set to an instance of an object.
   at #=qdNFnq8JshM_NRlwtfD8GbCkQHFmQhv8ATaES8NVmoiwSiHBdD_3rTwVISn56QgKF.#=qFsrdFYw3B22DTZAnFh5Czg==()
   at #=qdNFnq8JshM_NRlwtfD8GbCkQHFmQhv8ATaES8NVmoiwSiHBdD_3rTwVISn56QgKF.#=qeuiBZfwcyuXhkKToU1g1Y$TzJtsMBOO75U8R83Jmh7k=(#=qj$4$ApyjYLCttjibBouRiVU_9GwfN6mLT6gYr12Ma_s= #=qmMSioO$0MqXQqEVZXD1sag==)
   at MusicBee.Media.PlayManager.#=q_NFOjLMc2In$QpUfyaGkpw==.#=qwYMuuKqt7_FqOqdQgqQnRw==(#=q9zM2fpdKeRc32K1X9WRLV8373lNL7NCJd7u$UxC9CNHOkFEoFSY0VtdJxHq9EhKj #=qn4wrVgcwB9HTy1me6gx4dw==, #=qkPL8Jc4N$92aVZFHFgt3dcO_XEvd4_l5VKxQdgfGFaVPRpbZj5k7l1iWBayzi_yQ #=qrAFm9mAVkTh8BWNrigiq7jXFav$PvZEklJxKC6NXU0Y=)
   at #=q_H2ENTRfvlCZNA0GppFLU9K0CeYK0JGLzyayBM4dyaM=.#=qPCkPpjT4dpRIyay$3i4kn67mhL5ZiFoJebjxyF0rFL4=(Object #=qURQS2g_LjO2xhurn4Gb8Tw==, EventArgs #=qGQFyme7eMSnu$F0ignzDQA==)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at #=q$RLB2dn5Z83w6PI9_9YPwxBaed7N4y7LEG3$ENRt$rM=.OnClick(EventArgs #=qRbI2tNgAVbhXnzDbL1ZgbA==)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)