Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: OpenMPT Module Decoder (Read 29158 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: OpenMPT Module Decoder

Reply #75
Can it be made to output in sample rate that is specified in plugin settings?

Re: OpenMPT Module Decoder

Reply #76
Unfortunately I can't make sample rate of my audio device higher. It's limited to 48000 Hz in settings.

But I want to output OpenMPT in 96000 Hz then downsample it to 48000 Hz (sample rate of my audio device). At first glance It may sound as a bad idea. But it depends. For some synthesized audio formats, outputting in higher sample rate may give higher quality. Even if it is downsampled next. Specifically for OpenMPT it depends on how good antialiasing filter works in it. If it works well then output in higher sample rate, of course, is not needed.

As for downsampling to 48000 Hz, good resampler doesn't make any significant quality loss. I programmed simple sinc filter based resampler by myself. I tried to resample 16 bit WAV file to 48000 Hz and then back to 44100 Hz. It was bit to bit exact after resampling.

As far as I know dBpoweramp/SSRC resampler is good enough. So I don't afraid of downsampling to 48000 Hz.

Re: OpenMPT Module Decoder

Reply #77
But there is literally no point to doing that, as it already uses a sinc resampler on the modules when synthesizing them. You gain literally nothing useful by oversampling.

Re: OpenMPT Module Decoder

Reply #78
But what is the point having this setting then?

Re: OpenMPT Module Decoder

Reply #79
What about 2SF Decoder? It doesn't have sinc filtering. The best you can get from it is linear interpolation. Downsampling makes sense for it. But sample rate can't be changed.

BTW, why was vio2sf replaced by 2sf2wav? vio2sf had sinc resampling. Although sample rate was low (32768) and couldn't be reconfigured.

Re: OpenMPT Module Decoder

Reply #80
@tonez you can use WASAPI exlusive output mode (it is built-in in 1.6.7 and available with component for older versions). Then kode54's decoders will respect their samplertae settings and then you can use resampler in DSP to resample to samplerate that is supported by your device.
If you don't want to use WASAPI exclusive output, you can use normal WASPI shared with this component. In this case, kode54's decoders will respect their samplertae settings too and resampling to supported  samplerate will be done automatically, but not within decoder.
Edit: corrected link to WASAPI shared output component

Re: OpenMPT Module Decoder

Reply #81
@Rollin, thank you very much! It works!

Another way is to use older foobar2000 version (v1.6) which doesn't support forcing sample rate.

But it would be better if "use audio device sample rate" was one of the sample rate options in plugin. It can be enabled by default. But if someone wanted to change sample rate, it could do it by changing the settings.

Re: OpenMPT Module Decoder

Reply #82
The sample rate option does affect conversion. Just stick to your old version forever.

Re: OpenMPT Module Decoder

Reply #83
 :'(

Re: OpenMPT Module Decoder

Reply #84
Fine, I'll make the default 96k and get rid of this output rate syncing feature.

Re: OpenMPT Module Decoder

Reply #85
Thank you!


Re: OpenMPT Module Decoder

Reply #87
Reported upstream. I do nothing unusual with the interface, except use the interactive extended interface for changing the tempo factor. Are you sure you haven't set tempo to greater than 100%?

Edit: Okay, sorry. I didn't realize you'd have to be interfacing the dialog with a screen reader. Apparently it's not doing a very good job of indicating that the tempo is above 100%. There's also a handy reset button to restore 100% to both sliders. At least, I hope the button is handy to someone using a screen reader. I haven't actually tested any of my code with screen readers, unfortunately.

Re: OpenMPT Module Decoder

Reply #88
Yes, I have pressed the reset button and the issue persists. Looking at this further, it looks like it seems that it may have something to do with the muting issue I found some time ago being reintroduced. bahgdad boogie.it is broken again, unmuting channels specified as muted when the playback override is enabled, resulting in hanging notes. Regarding screen reader accessibility, the OpenMPT control is usable but could use some improvements. The two issues I've noticed are that the controls for the dialog are hidden from keyboard navigation and can't be accessed using tab and shift+tab, and the checkboxes for the channels are all labelled as "check1," rather than channel 1, channel 2, etc. Labeling them with channel names if the module specifies them would be nice as well.

Re: OpenMPT Module Decoder

Reply #89
Sorry, there was a bug in new OpenMPT regarding the channel mutes on startup. I have fixed it. A new release will be uploaded shortly.

Re: OpenMPT Module Decoder

Reply #90
Both files are working now, thanks for the fix and the channel labels. :)

Re: OpenMPT Module Decoder

Reply #91
I saw that lib.openmpt is at v0.7.1. Will this component be updated?
(\__/)
(='.'=)
(")_(")

Re: OpenMPT Module Decoder

Reply #92
Weird bug, but since the components are outdated, not really worthy of a bug report:
Updating this component led to foo_keep_queue's contents to be emptied (on foobar2000 v.1.6.16).


Re: OpenMPT Module Decoder

Reply #94
I now regret updating foobar2000 and OpenMPT. In the latest version half of the tracks don't even work properly because of some "invalid subsong" error. They all work fine on VLC and the Modo music player that hasn't been updated in years. And they worked fine in the previous version.


Re: OpenMPT Module Decoder

Reply #96
It would help if, you know, people report bugs rather than moaning. Kinda hard to fix things when people just moan without reporting the bug in the right spots.

Re: OpenMPT Module Decoder

Reply #97
I now regret updating foobar2000 and OpenMPT. In the latest version half of the tracks don't even work properly because of some "invalid subsong" error. They all work fine on VLC and the Modo music player that hasn't been updated in years. And they worked fine in the previous version.
Subsong issue points to logic difference in how a component represents tracks for files where a single module file shows up as multiple tracks in the playlist. I'm quite confident that behavior hasn't changed in foo_openmpt54.
Did you perhaps use something else like foo_dumb for module playback earlier and now when you updated the player you switched to a different module decoder? That would leave at least some old multitrack-enabled tracks in existing playlists inoperational. You can fix that by re-adding the files to the playlist.

Re: OpenMPT Module Decoder

Reply #98
Hi there!
My current layout for listening tracker music.
-------------------------------------------------
Additional info:
  • for display the contents of the $meta(message) field of the module file, used the "Text Display" component by foosion. For the correct display of the message text, selected the Terminal,7,regular font with left alignment.
  • for display the contents of other metadata fields of the module file (Inst, Smpl), used the script "Biography v1.4.1" by WilB in the "Item properties" mode, with Consolas,12,0 font and the necessary settings in the item_properties_alternative_grouping.json file.
  • for display the information of dynamic fields %__mod_dyn_order%, %__mod_dyn_pattern% and others also used the "Text Display" in "Prefer playing track" mode.

Maybe useful to someone...

Re: OpenMPT Module Decoder

Reply #99
Is it possible to get a stereo separation slider added? Listening to 4 channel MODs with headphones has always hurt the ears.