libretro / mame2003-plus-libretro

Updated 2018 version of MAME (0.78) for libretro. with added game support plus many fixes and improvements
Other
188 stars 108 forks source link

Double Dragon Samples Missing #1140

Closed ToniBC closed 2 years ago

ToniBC commented 3 years ago

Hi, it's been a long time since when you generate the .dat or .xml to complete the romset, the following Double Dragon samples shown in the image are missing.

Captura de pantalla 2021-08-26 123239

Apparently according to comments in the forums, these samples do not exist, it is a dat error. The game plays with the new music without problems even though those samples are missing.

It could be verified and in case of an error, remove them from the list.

Thanks.

mahoneyt944 commented 3 years ago

Hi, this is not an error. The sample in question is an optional cd soundtrack that will replace original game audio when available. I can't link you the file but if you google mame2003-plus romset, archive.org has a file under "optional soundtrack samples".

ToniBC commented 3 years ago

As I mentioned, I have the optional soundtrack samples. The game is played with those soundtracks, with sung music and that, but when checking the xml, it appears that those other samples that are not anywhere are missing and several comment that it is a dat error.

What you find is this that you see in the picture and it works without problems, but it is not the complete set.

Captura de pantalla 2021-08-26 135754

This is the custom ost found, 70MB and it only contains that.

But if we look at the data that is generated with the MAME2003 Plus itself we see that there are more files that are missing and that they are not anywhere. Apparently they are optional versions that are not used or are not available because it does not appear anywhere. If it is not an error, it is strange not to find samples with twice the number of files, so I asked and several in forums after the search comment that they do not exist, that it is an error.

But in the xml we can see that more are missing.

Captura de pantalla 2021-08-26 140615

Those files in red are not in any lake and as I say, everyone comments that they are that, alternate versions that were included by mistake, but they are the same samples but with different qualities.

That's why I put it, to verify that, because something similar happened with ffight and then it was retouched.

Thanks.

markwkidd commented 3 years ago

You can use mono or stereo CD sountrack samples. If it's stereo, each track has two files.

It looks like you have mono samples, which work fine as well, but your scanner will show the second audio file as missing.

ToniBC commented 3 years ago

It is possible that the missing files are from the Stereo version, but it is rare that they are not anywhere.

Can anyone verify the existence of the sample with a screenshot of the sample, to continue looking for it?

It seems strange that nowhere is the complete sample and more after more than 1 years that this came out.

ToniBC commented 3 years ago

By the way, it may be that it is the duplicated track, that is, that it is the same track but double to simulate the Stereo. I see that in the ffight sample that I have, they put them like this, each track duplicated.

Could that be?

markwkidd commented 3 years ago

@KMFDManic is more of an authority on this, but duplicating the mono will have no effect. When there is only one file it is played on both channels. If there are two files, one is left and one is right.

Maybe we need to add a write up about this to the docs

mahoneyt944 commented 3 years ago

By the way, it may be that it is the duplicated track, that is, that it is the same track but double to simulate the Stereo. I see that in the ffight sample that I have, they put them like this, each track duplicated.

Could that be?

Copying and renaming the "01" equivalent to "02" will work as intended and show complete for building purposes. It's probably the easiest route if you're just looking for completion. These samples are very hard to locate. I'll see if I can find out if they were originally duplicates or not though.

ghost commented 3 years ago

I thought we removed ost samples from the dat. If not it's probably worth concedering. The samples work like this if you have one channel any left or right it will play on both speakers. If you have both it will support stereo. The only issue is the dat listing and a notification saying missing samples when u start the game with mono samples.

mahoneyt944 commented 3 years ago

Should have been.

mahoneyt944 commented 3 years ago

ost samples were changed to not display a missing samples warning if the user disabled the cd soundtrack option..... but they are probably still in the dat. I guess we can remove them there too if that's the general consensus.

ghost commented 3 years ago

I'm not too bothered but it comes up time and time again. Problem is people will complain if there not listed as well. Less headache solution perhaps a core option and document it with a little info with how the stereo and mono samples work. So it will be user discretion on what they choose. Unless you can think of another way. Maybe documenting will be enough.

mahoneyt944 commented 3 years ago

The core option to use them or not has a new description which I think is pretty clear, though it doesn't explicitly describe stereo and mono behaviors. I think we need to determine if the 02 samples are available somewhere or if not maybe just cut them out and use 01 only?

Screenshot_20210826-182145

markwkidd commented 3 years ago

It's going to be pretty tedious for someone to get their OST samples set up right if they aren't in the DAT at all.

I feel like @KMFDManic may have told me about the situation with the stereo tracks for this particular OST sample, so I'm hoping he'll weigh in to correct my memory.

mahoneyt944 commented 3 years ago

Yeah I think if we are going to advertise ost samples they should probably be in the dat. The option effectively disables the nag notifications anyhow. Just need to ensure the 02 samples are actually available for those wanting to use them or else update the samples list.

ToniBC commented 3 years ago

It is not so much a problem of concept, of understanding or not how the custom OSTs work, rather of whether they are available or not. Samples don't have CRC in the .dat, so it basically doesn't matter what you put in.

Observing the samples, I see that the community, since there are no samples in real stereo, what it does is duplicate the mono track and thus it no longer gives an error when scanning the romset, but of course, that causes the size of the sample to be doubled, 80mb to 160mb for example, but the result in the end is the same, only this way we double the size of the samples.

If we do not have real stereo samples or ways to create them, it is better to remove those samples from the dat and leave only the versions available in mono, which play the same in stereo and take up less space. I don't think anyone has the custom OST tracks in real stereo.

ghost commented 3 years ago

There are stereo samples you just need to find them. I had the stereo sets when I ported the ost over. One is left the other is right. If you only have one left or right it play them through both speakers as mono

mahoneyt944 commented 3 years ago

If you or @KMFDManic don't have them now, they may just be lost. Don't know who else to check with.

ToniBC commented 3 years ago

I understand the problem, that is, in the GIT of KMFDManic, there are the samples, I don't know if it is the official one or not, but there they are, and they are only the mono tracks. I have also seen various qualities of these in different places, to suit different low memory devices.

I understand that, if the “stereo” track is eliminated, when rebuilding the romset, these will remain in momo and although it will later be reproduced in Stereo, it may be that for the most gourmets they will not like it. And as it is now, it is only something so to speak aesthetic, it marks you that they are incomplete, but it works the same.

The samples issue is complicated and since MAME 2003 Plus is only for low-performance devices and does not shine for its quality or precision of emulation, I think it would be best to leave the samples in mono, but since it works the same, it is indifferent.

ghost commented 3 years ago

Its not complicated at all if you have stereo separated channel samples it works in stereo . If you have the mono samples it works the only issue you have is the dat. Adding two mono samples dont make something stereo but solves you issue of not living with dat errors.

markwkidd commented 3 years ago

@ToniBC there is a technical description at https://github.com/libretro/mame2003-plus-libretro/wiki/Building-samples-for-mame2003-plus that includes how the OST samples work including how they work for mono and stereo

KMFDManic commented 3 years ago

@ToniBC @grant2258 @mahoneyt944 @markwkidd Some platforms are incapable of running the "alt" samples sets, due to memory load limitations. Remember, depending on the Core and file types, some instances require loading "into memory". This doesn't work so well on RetroPie or the Mini Classics, and can actually lead to crashing or non-load of the games, due to not being able to allocate enough memory! The samples "we" posted are smaller sized to compensate for the potential crashes. But, if you have a platform where you CAN load more into memory, such as a PC! Or, utilize Zram Virtual Ram Swap, they would also work! I upgraded my Google Drive to be 2 TB and will throw the samples up within the next several days, as I had intended to have these available for the next Release I post, anyways. But, yeah, the "Stereo" ones did not work properly, for the longest time, simply due to inability to load 300+ MB into memory for "MAME Samples!", at least on the select platforms that have RAM issues. 256 MB of ram ain't gonna cut it! This cumulative RAM loading effectively counts the size of the rom, the size of the samples, as well as the core size! So, it all adds up! It becomes messy when playing PSP games, too! Anyways, I will link to my Google Drive once I get these up. They sound fantastic, and I did one video showcasing the SUPER large Stereo Samples, fairly recently, too! So, you can see how much better they sound than the mono ones!

I have recently upgraded my video setup, which is far better than this earlier video. And, I do videos with talking, as well as without. An example of this pristine quality would be my 2 latest Mega Man 4 CUSTOM OST vids, as a comparison...The Mega Man 4 ones sound as amazing as the NEWER MAME ones! But, you get the idea:)

https://www.youtube.com/watch?v=1oTii_i0ad0

ghost commented 3 years ago

@KMFDManic I had issues with the big samples it was the loading and unloading that caused it. It is fixable to work properly but the sample code will need tweaking for dynamic loading/unloading for low memory devices.

KMFDManic commented 3 years ago

@grant2258 Let me know if u feel anything can be done hard code wise. Street Fighter 2 OST generally wont work at all on MD/SNES/NES and similar, without Zram. Would be beautiful to be able to work around that. Hope all else is well with you!

mahoneyt944 commented 3 years ago

@KMFDManic aren't all these samples in wav format? Couldn't we use mp3 or something more compressed?

KMFDManic commented 3 years ago

@mahoneyt944 legally, we can really only do wav format. The necessary coding needed to run mp3s, as far as I'm aware, cannot be "publicly" used...just privately (license wise). If you look at the genesis plus gx hub, you will see what i mean, viewing the readme there, regarding mp3 usage with that Core. Mp3s would certainly be nice, if we could legally get away with them. But, wavs can still be smaller, near mp3 size, per the already current posted samples. Again, the legality of it all is what we would need to be absolute sure of before doing that sort of implementation, just to be on the safe side.

mahoneyt944 commented 3 years ago

Mp3 is generally 8 to 10 times smaller. So it's definitely interesting. Other than that, there's wav compression tools out there... maybe we read in a wav file, then filter it through a compression method, then copy our filtered version into memory instead of the original? Active compression on large WAV files? Could be a core option.

ghost commented 3 years ago

@KMFDManic I was just going to fix up into fixing what we had the allocate and deallocate when needed. I patched sf2 on my core to work for sf2 as the samples would stop randomly if @mahoneyt944 wants to add compressed wavs or another format will leave it for him. Only issue with using compressed formats is eating cpu power o lower end devices but all roads lead to Rome.

mahoneyt944 commented 3 years ago

I don't have much investment into ost samples since I don't really use them personally. what I find most valuable is making sure the originality of the driver is left intact for those who want to play them with original sound. Which means there should never be a "missing samples" notification if the user has this option turned off.

Likewise if the user wishes to use ost samples then notifications of missing samples can be useful in most cases.

At some point I recall adding options.use_samples to ost driver conditions for this reason to ensure a good user experience however they wish to use or not use these.

I'd be curious to add the sf2 fixes too. Though it's also a game I haven't played much.

ghost commented 3 years ago

Well sf2 did need some fixes I just stopped the big samples from freeing to stop the silence that happened when it did. The problem is we need to store the sample being played to free / allocate on the fly.

srk15372 commented 2 years ago

I upgraded my Google Drive to be 2 TB and will throw the samples up within the next several days, as I had intended to have these available for the next Release

Hi, any chance to give us a download link for the missing samples track 2 of ddragon and moonwalker? It would be very graceful. Thanks Regards

mahoneyt944 commented 2 years ago

We can't link here. @KMFDManic did you locate these samples?

KMFDManic commented 2 years ago

@mahoneyt944 I still need to get the samples onto my Google Drive. I haven't been able to get much done over the last couple weeks due to real life reality fun stuff:) But, gonna try to get back into the groove and get more updating done! I am gonna open an issue with another thing that you and Arcadez2003 might be interested in trying to get into 2003 Plus/Xtreme:)

mahoneyt944 commented 2 years ago

@KMFDManic any progress on this?

KMFDManic commented 2 years ago

@ToniBC @mahoneyt944 @grant2258 @arcadez2003 @markwkidd @Wilstorm I apologize for the delay. I have temporarily hosted the pertinent sample sets on Google Drive. Confirm once you have grabbed them, as I will take some of them down. There are 8 and 16 bit mono and stereo wavs and or flacs for some of them. A few were previously done before @gpstar81 incorporated the higher level flac awesomeness! Attached is an older text file with some notes about Moonwalker, as an example. I will update the notes about this stuff in the near future, to coincide with the Next Release I post. Source files are also included, for some of the games, if anyone wants to do 16 bit stereo wav or flacs for the ones that were not done yet. Still, this many years later, I have little or no interest in even listening to the original soundtracks, anymore:) I am just too much a fan of these masterpieces! So, for now, be sure to let me know when you've grabbed the pertinent files. This issue should be able to be closed now. If anyone wants to try to "help encode" better quality sample sets in 16 bit stereo wav or flacs, be sure to let me know, and we can go from there! But, grab them now, while you can...And, let me know once you've grabbed them! @Wilstorm , I believe you may have been the one that was interested in the samples before? If my memory serves me right, you'd probably be the best bet for the higher encodes!

gpstar81 (porting and backporting entirely different C coding from higher MAME to 2003 (true devotion) and bigbluefrontend (original Final Fight Custom OST origination, SFII), as well as markwkidd, grant2258, have all been instrumental in this amazing implementation and overall Custom OST Project! Very glad it has worked out so well! I believe we STILL need to get Street Fighter II Custom OST support into 2003 Plus, however! There was a reason it was added, then removed, if I recall? This can be a NEW Issue, if the support is to be added back in...That is, if it has not yet! And, I find this a bit odd. I am not even sure if the guy who had communicated with me about this was just messing around or not. But, he had told me he was able to run Custom OST on Double Dragon II. I realize they are on the same driver. I haven't tested this, YET. But, it would be an interesting test to see what happens if you attempted to run a Custom OST with Double Dragon II, hehe. Might be a two birds with one stone sort of affair, via an interesting exploit of sorts! If it DOES work, then, it should be hopefully be easy to pad in the TurboGrafx CD version of Double Dragon II into Plus/Xtreme!

Thanks, everyone, for all your pure awesomeness. If we need to continue things, Custom OST wise, feel free to ping me anytime! Otherwise, will chat with you all on the other "Open" Issues, in the interim!

https://drive.google.com/drive/folders/13Lzqdx2kH-G3t4aStfkznu5uQK7ThMwi

_km_mame2003_xtreme_moonwalker_7_14_18.txt

mahoneyt944 commented 2 years ago

@ToniBC once you confirm to have the sample I'll close this. @KMFDManic thanks!

ToniBC commented 2 years ago

At the moment everything seems to be working correctly. I like that some of them are in Mono 8bits for the more limited devices and others in Flac that I have not tried yet. The one from Street Fighter 2 still does not appear in the database (xml) so for the moment when passing it CLR it detects it as unknown.

mahoneyt944 commented 2 years ago

Might not be hooked up here yet.

KMFDManic commented 2 years ago

@mahoneyt944 @ToniBC As far as I am aware, SFII Custom OST was added, then removed from MAME 2003 Plus Fork. For now, it should only work on my fork with MAME 2003 Xtreme. So, it shouldn't even work, currently, to my last check. But, it should be able to be readded, if @grant2258 analyzes things and feels comfortable with it.

ghost commented 2 years ago

i added the share last night will download it now. I done a bit of work on sf2 for my port for the sf2 ost. Plus is the only one that doesnt have it not sure why it was removed to be honest would need to as whoever removed it. Ill grab the samples now will let you know when ive downloaded them cheers!

mahoneyt944 commented 2 years ago

The only thing I recall is this https://github.com/libretro/mame2003-plus-libretro/commit/e6681171d0116e581687e57d65a1275e7839c359 where I believe @Wilstorm was trying to remove ffight ost Samples them from the dat. This was before we had ost specific labeling. I'm sure it's safe to add it in though?

I don't see any sf2 ost being removed in the git history... maybe it never was added?

Also I recall https://github.com/libretro/mame2003-plus-libretro/commit/62e938d2b9cdb1c006037444945e0d524dc9467c which allows full bypass of these samples so the samples being turned off will be honored and won't notify of missing samples etc.

ghost commented 2 years ago

de2fbbde7536028d10f4c576f0184fbe2788c03a is where it was reverted no idea why its not showing for you maybe you checked cps2? Ill leave this one to you I done some updates on my port

mahoneyt944 commented 2 years ago

I never use ost but I think we should isolate these customizations from the original writes that way if there are any issues then the core option can completely bypass them using the original functionality. Maybe we could create a write for the regular sound and for the ost write and use a ternary operator in the memory map?

ghost commented 2 years ago

There is already an option to disable ost that will use orginal sound even if you have the samples

mahoneyt944 commented 2 years ago

Yes I know, it falls back to the original return. But these long customizations are messy and can introduce bugs which maybe why it was removed at one point. Not to mention the "is playing" and other related flags. Everything is functional just not very tidy.

mahoneyt944 commented 2 years ago

I'm thinking we should create ost.c and include all the ost functions here. Then include that in the driver's that use it. If the option is turned off it will use the original function is it's on it uses the function is ost.c

ghost commented 2 years ago

feel free to un messy it if you feel that way I think gpstar did a good job with this. one function wont work for every game it still has to be embedded into the driver to use faded sound ect aka sf2.

ghost commented 2 years ago

https://github.com/libretro/mame2003-plus-libretro/commit/60df6b3b4b4121a6afffd27d41a12a8cb9e40144#diff-1b37a8eb83a3826c81974ada8ac0b94866748064f2bb83f3c3bbf2b0f1344eac just variables needing fixed maybe other issues beyond that in this core I know i donet a few teaks on mine. If you want to jiggle code out to a ost file thats an option for you dont see it it will be less messy in another file though unless you plan on re-writing code

Wilstorm commented 2 years ago

I wasn’t trying to remove them, it was cleanup. If I recall the OST’s were removed but for some reason the Anniversary Edition was still in the DAT. It didn’t make sense to have…that set only…in the DAT. The PR was for continuity. It’s been a while since I’ve rebuilt my set so I’ve no idea if they are in or out at this point.

@KMFDManic - I’m out of the country on holiday for a few more weeks. I’ll see if I can get on a machine to get these beauties downloaded. Huge fan, thank you, thank you!! Once I get back home…if I can get back into the country, as this Omicron variant spreads. :-/ I just did my booster a month ago so that helps. Nah it should be fine. Any support or help I can offer in any way count me in.

@grant2258 - Thanks so much for all your expertise on the OST’s too. You sure you weren’t a core MAME developer in another life!! :)

Happy holidays and Merry Christmas to you guys. We’ve been drinking and making merry damn near every night at the local pubs to wee hours in the morning. I’m getting to old for this shit but the mood around the holidays keeps the energy going. It’s going to be a rough go getting back to reality in a few weeks.

mahoneyt944 commented 2 years ago

@grant2258 this is a preliminary move but we can structure things neatly like this https://github.com/libretro/mame2003-plus-libretro/compare/OST

Some of the init states are not set in the drivers... I'm not sure if that matters but I've copied them as is for now just to get a visual of things.

ghost commented 2 years ago

@mahoneyt944 So far this is just refactoring moving stuff (variables and structures) to another file no real bug changes you where talking about. just copy and pasting else where ill keep my eye on this for the bug fixes.

@Wilstorm you need real talent to be a mamedev most coders can port other work thats why a lot of people think they are devs because people make open source available so people can use it as they wish they are the real superstars that make things work. I think the best credits belong arcadez he does work for nothing and gets hassle left right and center for all his hard work he does for nothing.