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: foo_input_pmd (Professional Music Driver) (Read 4653 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

foo_input_pmd (Professional Music Driver)

foo_input_pmd is a foobar2000 component that adds playback of Professional Music Driver (PMD) files to foobar2000.

Professional Music Driver (PMD) is a music driver developed by Masahiro Kajihara which utilizes MML (Music Macro Language) to create music files for most Japanese computers of the 80s and early 90s.

Download from GitHub or the foobar2000 Components Repository.


Re: foo_input_pmd (Professional Music Driver)

Reply #1
I think you shouldn't report bitrate for these files. The one you report now is based on chosen render quality but bitrate is a property of the source file. Generally speaking synthesized tracks don't really have a bitrate, one could render the output at any sample rate and bit depth.

Is there a way for you to bypass using the external dll for reading the files? Right now your component can't handle files that foobar2000's own readers could, like playing files from internet or from archives. Actually it can't even open files with unicode characters in their names.

Re: foo_input_pmd (Professional Music Driver)

Reply #2
I think you shouldn't report bitrate for these files. The one you report now is based on chosen render quality but bitrate is a property of the source file. Generally speaking synthesized tracks don't really have a bitrate, one could render the output at any sample rate and bit depth.

The bitrate is dependent on the sample rate and the decoder supports a number of them. I'll make them available on the preferences page. So yes, it should be available as an info tag so it can be displayed.

Is there a way for you to bypass using the external dll for reading the files? Right now your component can't handle files that foobar2000's own readers could, like playing files from internet or from archives. Actually it can't even open files with unicode characters in their names.

It's v0.1.0. Give me some time...

Re: foo_input_pmd (Professional Music Driver)

Reply #3
I'm just trying to offer my two cents worth of hints regarding foobar2000 component development.

It's foobar2000 convention not to report bitrate for synthesized formats. No other input component does that to my knowledge. It's not a useful parameter for these files.
The bitrate shown in properties should be based on source file, not on user chosen render settings. It should be calculated from audio file size divided by playback duration.

Another thing, the file properties that are visible on Properties dialog's Details tab are for physical file attributes. Data that changes depending on synth parameters shouldn't be reported that way but with dynamic info. Sample rate for synth formats is not a hardcoded property of the file. And output bit depth is another property that lossy or synthesized files don't have, even if a decoder library truncates output to some chosen limit.

Remember, I'm only trying to help.

Re: foo_input_pmd (Professional Music Driver)

Reply #4
Oh, I appreciate the help. You just worded things a little too strong for my taste. Must be the heat.

Re: foo_input_pmd (Professional Music Driver)

Reply #5
v0.2.0, 2023-07-16, "That's a wrap"

* Added: pmd_loop_length info tag.
* Added: Seeking to a position in the current song.
* Added: Loop playing with or without fading.
* Improved: Loading and scanning a file.
* Fixed: Files with Unicode filenames failed to load.
* Fixed: Wrong specification of source buffer size.

Download from GitHub or the foobar2000 Components Repository.

Re: foo_input_pmd (Professional Music Driver)

Reply #6
v0.3.0, 2023-07-22, "What's your preference?"

* Improved: Added all configuration parameters to the Preferences page.
* Improved: Several performance improvements.
* Fixed: Wrong specification of source buffer size (again).

Download from GitHub or the foobar2000 Components Repository.

Re: foo_input_pmd (Professional Music Driver)

Reply #7
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

Re: foo_input_pmd (Professional Music Driver)

Reply #8
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Re: foo_input_pmd (Professional Music Driver)

Reply #9
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Gotcha. Where to find all these 10000 .m files? Would it make sense to convert them to FLAC format?

Re: foo_input_pmd (Professional Music Driver)

Reply #10
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Gotcha. Where to find all these 10000 .m files? Would it make sense to convert them to FLAC format?

You can use the links in the README as a starting point. Converting them to FLAC will only increase the size and if the decoder gets improved you won't get that benefit, so no, I would not do that.

Re: foo_input_pmd (Professional Music Driver)

Reply #11
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Gotcha. Where to find all these 10000 .m files? Would it make sense to convert them to FLAC format?

You can use the links in the README as a starting point. Converting them to FLAC will only increase the size and if the decoder gets improved you won't get that benefit, so no, I would not do that.

Gotcha. Speaking of, I just realize C60's own FMPMD player can play another format called .opi and .ovi in Windows 11 with its 2023 dlls. I can't tell which format is better. Is supporting them also possibly in your roadmap?

Re: foo_input_pmd (Professional Music Driver)

Reply #12
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Gotcha. Where to find all these 10000 .m files? Would it make sense to convert them to FLAC format?

You can use the links in the README as a starting point. Converting them to FLAC will only increase the size and if the decoder gets improved you won't get that benefit, so no, I would not do that.

Gotcha. Speaking of, I just realize C60's own FMPMD player can play another format called .opi and .ovi in Windows 11 with its 2023 dlls. I can't tell which format is better. Is supporting them also possibly in your roadmap?


I can look into .opi and .ovi files if you can point me to some examples and an explanation about the format. My Japanese is not what it used to be...

Re: foo_input_pmd (Professional Music Driver)

Reply #13
I totally didn't expect this. It totally works!!!! You have really made my day and month, if not two decades per https://hydrogenaud.io/index.php/topic,12845.msg130608.html#msg130608!!!!! Appreciate it deeply to the Mariana Trench. With this single file, do I still need to go to the Japanese website to download the latest PMDWin052 and WinFMP052 dlls? I saw it's also posted to https://foobar2000.xrea.jp/?%E6%9B%B4%E6%96%B0%E7%8A%B6%E6%B3%81. So maybe the original author was somewhat involved? Or it's just you all along!!!

The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

You don't need the DLL's. The decoder is stripped down and cleaned-up version of the source of PMDWin 0.52. I intend to incorporate the latest version of the sound core (ymfm) but I still need to study on that because C60 did some modifications of his own.

I'll have a look at the files later. The component has been tested with more than 10000 .m files.

Gotcha. Where to find all these 10000 .m files? Would it make sense to convert them to FLAC format?

You can use the links in the README as a starting point. Converting them to FLAC will only increase the size and if the decoder gets improved you won't get that benefit, so no, I would not do that.

Gotcha. Speaking of, I just realize C60's own FMPMD player can play another format called .opi and .ovi in Windows 11 with its 2023 dlls. I can't tell which format is better. Is supporting them also possibly in your roadmap?


I can look into .opi and .ovi files if you can point me to some examples and an explanation about the format. My Japanese is not what it used to be...

Here are the samples for dokyusei 2. https://www.dropbox.com/scl/fi/5upqyegiqyyha3bli33se/Dou-Kyu-Sei-2-PC98.zip?rlkey=bzq7ra7ilsqi4cyht6ibuniun&dl=0 It would be hard for me to explain, but the old https://ux.getuploader.com/foobar2000/download/31/foo_input_fmpmd_v0.8.0.15.zip and the 2023 dlls from C60 can let foobar 2000 v2.1 beta x86 play them. So presumably, they are close to .M?

Re: foo_input_pmd (Professional Music Driver)

Reply #14
The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

This is not recognized as a PMD file by FMPPMD either. It's a totally different format. I've encountered many .M files that seem to be 'music' files for a different or modified synthesizer.

Re: foo_input_pmd (Professional Music Driver)

Reply #15
Gotcha. Speaking of, I just realize C60's own FMPMD player can play another format called .opi and .ovi in Windows 11 with its 2023 dlls. I can't tell which format is better. Is supporting them also possibly in your roadmap?
I can look into .opi and .ovi files if you can point me to some examples and an explanation about the format. My Japanese is not what it used to be...
Here are the samples for dokyusei 2. https://www.dropbox.com/scl/fi/5upqyegiqyyha3bli33se/Dou-Kyu-Sei-2-PC98.zip?rlkey=bzq7ra7ilsqi4cyht6ibuniun&dl=0 It would be hard for me to explain, but the old https://ux.getuploader.com/foobar2000/download/31/foo_input_fmpmd_v0.8.0.15.zip and the 2023 dlls from C60 can let foobar 2000 v2.1 beta x86 play them. So presumably, they are close to .M?
.OPI and .OVI are FMP files, a different format than PMD. Hence "fmpmd" and "FMPMD Player". I'll see how different they are from .M files.

Re: foo_input_pmd (Professional Music Driver)

Reply #16
The only other PC9801 music still unplayable is the ones from Dragon Knight IV at https://www.dropbox.com/scl/fi/3n592igc3mpxmjfuhp0vv/Dragon-Knight-IV-PC98.zip?rlkey=d42ago0dc32tqslyus8m3yy4t&dl=0. I don't understand how these .M are different from the rest. Can this be brought to the attention of the coders? Many thanks.

This is not recognized as a PMD file by FMPPMD either. It's a totally different format. I've encountered many .M files that seem to be 'music' files for a different or modified synthesizer.

Many thanks. I can't recall where I extracted it. Probably not of top priority then.

Re: foo_input_pmd (Professional Music Driver)

Reply #17
v0.4.0, 2023-10-08, "Rough edges, be gone!"

* Added: Checkbox to enable or disable the use of PPS samples (default: false).
* Added: Checkbox to enable or disable the use of the Rhythm instead of the SSG (Software-controlled Sound Generator) sound source (default: false).
* Improved: Doubled the startup speed of each song.
* Improved: Tweaked the Shift JIS to UTF-8 conversion a little bit.
* Improved: The driver outputs a couple of diagnostics messages to the console about the external files (sample banks or files) that are expected for a song to play correctly.
* Fixed: Various path error conditions that prevented the correct sample banks from loading.
* Fixed: Some settings weren't reset by the Reset button.
* Builds with foobar2000 SDK 2023-09-06.

Download from GitHub or the foobar2000 Components Repository.

Re: foo_input_pmd (Professional Music Driver)

Reply #18
Does anybody know where I can find a PMD song that uses a PVI sample bank?

I currently don't have a way to test that part of the PPZ driver.

Thanks in advance.

Re: foo_input_pmd (Professional Music Driver)

Reply #19
Does anybody know where I can find a PMD song that uses a PVI sample bank?

I currently don't have a way to test that part of the PPZ driver.

Thanks in advance.

So OPI and OVI are not PVI? The .opi/.ovi songs I uploaded at https://www.dropbox.com/scl/fi/5upqyegiqyyha3bli33se/Dou-Kyu-Sei-2-PC98.zip?dl=0&file_subpath=%2FDou+Kyu+Sei+2+-+PC98&rlkey=bzq7ra7ilsqi4cyht6ibuniun wouldn't help?

Re: foo_input_pmd (Professional Music Driver)

Reply #20
Thanks. I'll have a look at them later. I did a deep scan of the PMD files I already have, found a couple examples and fixed a couple of loading bugs along the way.

Re: foo_input_pmd (Professional Music Driver)

Reply #21
Thanks. I'll have a look at them later. I did a deep scan of the PMD files I already have, found a couple examples and fixed a couple of loading bugs along the way.

Hope all is well sir. Any update in supporting .opi/.ovi on 64bit as well? Last stronghold. Many thanks

Re: foo_input_pmd (Professional Music Driver)

Reply #22
Thanks. I'll have a look at them later. I did a deep scan of the PMD files I already have, found a couple examples and fixed a couple of loading bugs along the way.

Hope all is well sir. Any update in supporting .opi/.ovi on 64bit as well? Last stronghold. Many thanks
@Supermansaga ,

unfortunately I haven't had the time to look at it yet. foo_vis_spectrum_analyzer has taken all my development time.

Re: foo_input_pmd (Professional Music Driver)

Reply #23
Thanks. I'll have a look at them later. I did a deep scan of the PMD files I already have, found a couple examples and fixed a couple of loading bugs along the way.

Hope all is well sir. Any update in supporting .opi/.ovi on 64bit as well? Last stronghold. Many thanks
@Supermansaga ,

unfortunately I haven't had the time to look at it yet. foo_vis_spectrum_analyzer has taken all my development time.

Gotcha. i can wait. Did you have a deadlink regarding the new component? Do you mean https://hydrogenaud.io/index.php/topic,125031.msg1035122?

 

Re: foo_input_pmd (Professional Music Driver)

Reply #24
Thanks. I'll have a look at them later. I did a deep scan of the PMD files I already have, found a couple examples and fixed a couple of loading bugs along the way.

Hope all is well sir. Any update in supporting .opi/.ovi on 64bit as well? Last stronghold. Many thanks
@Supermansaga ,

unfortunately I haven't had the time to look at it yet. foo_vis_spectrum_analyzer has taken all my development time.

Gotcha. i can wait. Did you have a deadlink regarding the new component? Do you mean https://hydrogenaud.io/index.php/topic,125031.msg1035122?
Yes. I just copied the link from my documentation. I'll have to update it.