Page 1 of 1

BDJ4 feedback from fiesta0618

Posted: Thu Jun 13, 2024 11:50 am
by bll
Reported by fiesta0618

Manage page

Sequence and Playlist names are limited to alphanumeric characters plus space. If you try to include a punctation character, BDJ4 silently refuses to save it. This limitation is not documented or mentioned.

Player page

You cannot alter the Speed setting while a song is paused. If you try, the setting will revert once you press play.
(There used to be the same issue with the Position setting in version 3, but this is thankfully resolved in 4)

There is no one-click method to reset speed to 100. This was a super-useful feature of BDJ3.

Hitting the Next Song button will clear a song from the player even if it is currently set to Repeat. Not a huge problem, but it can be useful to have the inter-song pause in place to give you time to walk away from the device before the music plays. Yes, I can just use Fade instead, but I don't find it at all intuitive that Fade and Next Song would behave differently on this point.

If you close the Player while a song is playing, music continues to play. Not a problem. However, if you reopen the Player, you can control the song speed/position/volume normally, but the title and other song information does not display.

Automatic playlists

Using the Queue Playlist menu with playlist automatic results in unpredictable and unintuitive behavior. It adds seemingly a random number of songs to the queue--sometimes even zero! In BDJ3, automatic fully filled the queue with one click, which made much more sense.

Creating a "default" automatic playlist, with no limits on Maximum Play Time, Stop After, or Count for any particular dance, is permitted. But if you select that playlist in the Queue Playlist menu, it causes the player to stop responding to all inputs, and an app reboot is required to resolve it. On my machine, it also leaves a Windows background process named bdj4player hanging, which must be manually killed in addition to the app reset to regain functionality.

Anyway, that is what I have seen so far. Happy to keep reporting if I find more.

Re: BDJ4 feedback from fiesta0618

Posted: Thu Jun 13, 2024 12:00 pm
by bll
Some quick notes (I have not researched anything as yet):

The next song button is generally intended for use in the song manager, when checking and editing songs. In this case, no fade-out or gap is wanted.
For teaching / practice purposes, I would set up a profile for teaching/practice, and set the fade-out time and gap as appropriate, then use the fade button.

The behaviour described when closing the player is indicative of a crash in the player user interface. The behaviour when restarting the player after a crash is correct, the title and song information is lost, and will re-display for the next song. The problem will be figuring out what is crashing the player ui.

The default (example) automatic playlist is set to play songs with a dance rating of 'Good' or better. To make it choose any song, edit the playlist and set the dance rating to 'Unrated'.

Creating a new automatic playlist doesn't have any dances selected. I can change this.
I will also fix the issue where the player crashes in this case.

Re: BDJ4 feedback from fiesta0618

Posted: Thu Jun 13, 2024 4:22 pm
by bll
2024-6-13 so far, I have done:
  • Windows: Added validation to reject invalid characters in filenames * < > | ' " :
    I tried creating filenames with these characters, and they are the ones that failed.
    Some sort of Windows weirdness.
    And of course, / and \ are already rejected.
  • Improved validation messages.
  • Player: Added a button to reset the speed to 100%.
  • Player: Allow speed to be change while paused.
    VLC doesn't allow the speed to be changed while paused, so I have to work around this, and wait until the song starts playing again.
    I have more testing to do here to handle situations when the next-song button is selected.
Still to do:
  • Prevent crashes when an automatic playlist has no dances selected
    Also check sequenced playlists and automatic playlists with dance counts set to zero.
  • Decide if the sample automatic playlist should be changed.
  • Update documentation in various places.

Re: BDJ4 feedback from fiesta0618

Posted: Sat Jun 15, 2024 9:53 am
by bll
The following changes are in version 4.10.4, which will be released 2024-6-15 if testing goes well.
Sequence and Playlist names are limited to alphanumeric characters plus space. If you try to include a punctation character, BDJ4 silently refuses to save it. This limitation is not documented or mentioned.
Validation has been improved for song list, sequence and playlist names. I tried all the various characters on windows, and found the characters that did not work (I did not research why some of these characters do not work). The validation process will now reject names with those characters and display an error message.
You cannot alter the Speed setting while a song is paused. If you try, the setting will revert once you press play.
(There used to be the same issue with the Position setting in version 3, but this is thankfully resolved in 4)
VLC does not allow the speed to be changed while a song is paused, so I never implemented this. I have now implemented a way around this limitation, and the speed can now be changed while the player is paused.
There is no one-click method to reset speed to 100. This was a super-useful feature of BDJ3.
New feature request. I have implemented this. I'm not entirely happy about how it looks in the user interface, but I haven't come up with a better idea as yet.
Hitting the Next Song button will clear a song from the player even if it is currently set to Repeat. Not a huge problem, but it can be useful to have the inter-song pause in place to give you time to walk away from the device before the music plays. Yes, I can just use Fade instead, but I don't find it at all intuitive that Fade and Next Song would behave differently on this point.
The 'Next Song' button is intended to go directly to the next song without any fade time, without any gap and also turns off the repeat. This is useful when managing and editing songs and reviewing playlists.

For use during a practice session, you can set up a second music queue (or a profile) that has the fade time and gap set to how you want it for practice.

References:
wiki: Player / Player
wiki: Subjects / Music Queues
wiki: Subjects / Profiles
If you close the Player while a song is playing, music continues to play. Not a problem. However, if you reopen the Player, you can control the song speed/position/volume normally, but the title and other song information does not display.
This is not normal behaviour. When the player is closed while a song is playing, the music should stop. This appears to be some sort of crash of the player user interface. The missing song information when the player is re-opened after a crash is a known limitation (once the next song starts, everything goes back to normal). I'm not going to put in code to handle that, as the player is not supposed to crash.

I am unable to reproduce this problem.

In order to fix this, I need to know why the player user interface is crashing on exit. If anyone experiences this issue, you can follow the steps outlined in wiki: Submitting Bug Reports. This would be really helpful.

If you experience this issue, after exiting the player, in the Starter window, select the Actions menu, and select Stop all BDJ4 Processes.
Using the Queue Playlist menu with playlist automatic results in unpredictable and unintuitive behavior. It adds seemingly a random number of songs to the queue--sometimes even zero! In BDJ3, automatic fully filled the queue with one click, which made much more sense.
This is a difference in how the sample automatic playlist is configured between BDJ3 and BDJ4. In BDJ4, the sample automatic playlist has the Dance Rating set to Good or better, while in BDJ3, it allowed any rating.

I am inclined to completely remove the sample automatic playlist. Everyone expects the sample automatic playlist to magically create a spectacular mix without doing any setup. Automatic playlists work best if the songs have a dance rating set. I have not decided yet what I will do.
Creating a "default" automatic playlist, with no limits on Maximum Play Time, Stop After, or Count for any particular dance, is permitted. But if you select that playlist in the Queue Playlist menu, it causes the player to stop responding to all inputs, and an app reboot is required to resolve it. On my machine, it also leaves a Windows background process named bdj4player hanging, which must be manually killed in addition to the app reset to regain functionality.
The situation where the player hangs has been fixed. All invalid song lists, sequences and automatic playlists are now skipped over. And Playlist Management will no longer save an invalid automatic playlist.

Re: BDJ4 feedback from fiesta0618

Posted: Tue Jul 09, 2024 3:43 pm
by bll
Hitting the Next Song button will clear a song from the player even if it is currently set to Repeat. Not a huge problem, but it can be useful to have the inter-song pause in place to give you time to walk away from the device before the music plays. Yes, I can just use Fade instead, but I don't find it at all intuitive that Fade and Next Song would behave differently on this point.
I am wondering if a pre-playback-gap would be useful for practice sessions.
For practice (and I would make a separate profile for practicing), two music queues could be set up, one with a pre-playback gap, and one without, and the one that is most appropriate could be used.

Re: BDJ4 feedback from fiesta0618

Posted: Fri Jan 17, 2025 11:15 am
by bll
bll wrote: Tue Jul 09, 2024 3:43 pm
Hitting the Next Song button will clear a song from the player even if it is currently set to Repeat. Not a huge problem, but it can be useful to have the inter-song pause in place to give you time to walk away from the device before the music plays. Yes, I can just use Fade instead, but I don't find it at all intuitive that Fade and Next Song would behave differently on this point.
I am wondering if a pre-playback-gap would be useful for practice sessions.
For practice (and I would make a separate profile for practicing), two music queues could be set up, one with a pre-playback gap, and one without, and the one that is most appropriate could be used.

In version 4.12.9, a "start wait time" was added to the music queue configuration. The start wait time is only used when the player is stopped.