bbbradsmith / nsfplay

Nintendo NES sound file NSF music player
https://bbbradsmith.github.io/nsfplay/
277 stars 42 forks source link

Make Time Unlimited please. #38

Closed ghost closed 4 years ago

ghost commented 4 years ago

Hi Brad. Thank you for the lovely software.

I have made .nsf songs longer than 5m:05s before.

Would it be possible for you could make the time of the song unlimited?

c-yan commented 4 years ago

5m;05s means PLAY_TIME + FADETIME. PLAY TIME is set in yansf.ini. You can also configure it from the GUI. How about setting PLAY TIME to be practically infinite?

ghost commented 4 years ago

Thank you. I apologize I had no idea that could be set by the user. Just extended it to 10minutes, 595sec+5sec fade time. Thank you very much for your help.

As for the rest, I just experimented with the playtime detection and save it when detected but doesn't seem to work. What I wanted was for the player to instantly detect the whole length of the song just as if it was with any other formats like .wav and so on. In that case, playtime to be infinite would be a great idea if the player can detect the length of the songs and leave the rest like the number of loops for people that write small looped songs. But otherwise, it's fine if that can't be implemented but it would be a nice feature.

c-yan commented 4 years ago

The NSF is not standardized performance data, but the driver (machine language for NES) and its own performance data, so the length of the music is not known to the player like other formats.

ghost commented 4 years ago

Oki doki. At least got the maximum play limit sorted. Many thanks for your help and for your time. Best wishes, Filipe.

bbbradsmith commented 4 years ago

Infinite play will be an option in the next version, it's currently in progress are part of pull request #36

I don't mind the suggestion though, and you're definitely not the first to ask. Thank you also c-yan for pointing out the work-around with current features.

bbbradsmith commented 4 years ago

Infinite play should be available in the unstable preview build now that #36 is merged. Look for a drop-down box in the corner of the main options panel. It will say "Advance Next" by default, but you can change it to "Infinite Loop" now. In the INI it is the PLAY_ADVANCE setting (0 = auto advance to next track, 1 = infinite loop, 2 = stop after single track)