AdPlug, An input plugin for various AdLib sound formats. Emulates the OPL chip |
![]() ![]() |
AdPlug, An input plugin for various AdLib sound formats. Emulates the OPL chip |
Mar 1 2011, 16:18
Post
#26
|
|
|
Group: Members Posts: 26 Joined: 8-January 11 From: Griswold, IA Member No.: 87162 |
Thanks for the responses, everyone! I utilized the tools that romor pointed out, and did indeed successfully extract the music. I then played it with SSPlayer, a player designed for System Shock. However, deus-ex is right in that the timing and instrumentation was off. A more grunt-work approach may be necessary (recording with DOSBox manually). It would be great to access the music directly instead of doing methods like this.
|
|
|
|
Mar 1 2011, 20:41
Post
#27
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
The timing for the XMI files in foo_midi should be spot on now, the only problem would be that they're designed for Adlib playback with custom instrument sets.
|
|
|
|
Mar 1 2011, 21:31
Post
#28
|
|
|
Group: Members Posts: 26 Joined: 8-January 11 From: Griswold, IA Member No.: 87162 |
The timing for the XMI files in foo_midi should be spot on now, the only problem would be that they're designed for Adlib playback with custom instrument sets. Ah, you're right; the timing is just fine. It is just the awkwardness of hearing banjos and telephone rings in placement of eerie synth! |
|
|
|
Sep 2 2011, 21:16
Post
#29
|
|
![]() Group: Members Posts: 53 Joined: 8-April 02 Member No.: 1724 |
hi all
i'm using foo_midi 1.141 some xmi files i have make foobar crashes (for the game "lands of lore" for the older ones here the same files play pretty fine in winamp but using winamp isn't an option i'm wondering if i could upload one file and give a link here (just 10kb) for kode54 to have a look is this ok ? take care |
|
|
|
Sep 10 2011, 04:27
Post
#30
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Upload at will.
|
|
|
|
Sep 14 2011, 12:12
Post
#31
|
|
![]() Group: Members Posts: 53 Joined: 8-April 02 Member No.: 1724 |
|
|
|
|
Sep 17 2011, 04:16
Post
#32
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
AdPlug does not handle those files, and foo_midi does not crash on them. I have fixed it so that it will read them now, though.
|
|
|
|
Sep 24 2011, 20:39
Post
#33
|
|
![]() Group: Members Posts: 53 Joined: 8-April 02 Member No.: 1724 |
thanks for the fix, it seems "my" xmi are broken, i wasn't aware of that of course
take care |
|
|
|
Sep 25 2011, 15:21
Post
#34
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Not explicitly yours, but maybe the game's. The issue with several of these files seems to be that one of the main nested chunks lists a static number as its size instead of the actual size, and that the EVNT chunk for the main MIDI stream seems to be missing the zero byte after the FF/2F end of track meta event, even though it's included in the length field for that chunk. It's the latter problem which caused the actual parsing errors.
|
|
|
|
Feb 3 2012, 08:52
Post
#35
|
|
|
Group: Members Posts: 5 Joined: 3-February 12 Member No.: 96904 |
If I have this foo_input_adplug.dll and foo_midi.dll (both latest versions), can I do anything to force the AdPlug component to handle .lds files instead of the MIDI component?
|
|
|
|
Feb 3 2012, 12:55
Post
#36
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Rename them to .ldsa.
|
|
|
|
Feb 4 2012, 03:37
Post
#37
|
|
|
Group: Members Posts: 5 Joined: 3-February 12 Member No.: 96904 |
Works great! Thanks for the quick reply.
|
|
|
|
Feb 4 2012, 05:05
Post
#38
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
The same trick goes for .mid(a), .s3m(a), and .msc(a). Although, some day, I'll probably incorporate a passable (possibly tandem) AdLib emulation based MIDI driver into foo_midi, just for kicks. It will also support multiple loadable instrument banks, such as the widely used Fat Man set, featured in such games as Hocus Pocus, and included in the MSOPL driver. Or the Duke Nukem 3D patch kit. Or the Doom engine games, which had layered 2 operator instruments, and also had slight variations between different game franchises. I could probably adapt the MIDI driver from AdPlug to work with all of those, and also work under my own MIDI player loop.
My MIDI component utilizes MIDI parsers which turn various formats into basic multi-track MIDI sequence data in an internal format, with functions to turn that data either into a timestamped event stream, or a Standard MIDI File. All of the current player drivers, except for the disabled DXi player, use the event stream data. I just need a MIDI driver which is capable of accepting raw MIDI events, and rendering sample data between sets of events to simulate time passing. The only special case is the VSTi driver, which I moved out to its own process because some VST plug-ins are so crashtastic. |
|
|
|
Feb 4 2012, 09:36
Post
#39
|
|
|
Group: Members Posts: 57 Joined: 12-March 08 Member No.: 51973 |
The same trick goes for .mid(a), .s3m(a), and .msc(a). Although, some day, I'll probably incorporate a passable (possibly tandem) AdLib emulation based MIDI driver into foo_midi, just for kicks. It will also support multiple loadable instrument banks, such as the widely used Fat Man set, featured in such games as Hocus Pocus, and included in the MSOPL driver. So one can listen to adlib version of Ultima Underworld's *.xmi and they will sound exactly like in the game? I knew that this day will come! |
|
|
|
Feb 4 2012, 15:39
Post
#40
|
|
|
Group: Members Posts: 3 Joined: 28-January 12 Member No.: 96767 |
Thank you so much for this plugin!
I've always wanted to listen to music from the Xargon trilogy. I realized that by renaming the music files (examples: SONG_1.XR3) to .cmf, this is possible. The music is "exactly" what you hear in the game. Great job! |
|
|
|
Feb 25 2012, 00:18
Post
#41
|
|
|
Group: Members Posts: 12 Joined: 8-July 02 Member No.: 2520 |
Any chance to play Westwood ADL files? The latest plugin version does not seem to support the extension while vanilla adplug/adplay do.
Perhaps it is simply disabled due to some known problems with format support in the library atm? Dune II files are a no-go in particular, which is a great disappointment. P.S. Great plugin, thanks a lot! |
|
|
|
Feb 25 2012, 18:04
Post
#42
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Westwood ADL is disabled for that exact reason. I don't want to enable it until all supported files play without crashing.
|
|
|
|
Sep 23 2012, 14:59
Post
#43
|
|
|
Group: Members Posts: 2 Joined: 23-September 12 Member No.: 103352 |
Excuse me, we are the authors of the RIX decoder part of AdPlug. Recently we have modified our code. A bug was fixed to make our rix simulation more close to its original sound. Would you please update your codebase with upstream cvs and give us a test build?
Thank you very much! This post has been edited by C_Gear: Sep 23 2012, 15:01 |
|
|
|
Sep 24 2012, 13:53
Post
#44
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Done.
|
|
|
|
Feb 7 2013, 05:02
Post
#45
|
|
|
Group: Members Posts: 2 Joined: 23-September 12 Member No.: 103352 |
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 23rd May 2013 - 00:21 |