Suggested improvements to CDDA support in games?
Moderator: ScummVM Team
Suggested improvements to CDDA support in games?
Lately I was thinking about the CDDA support in ScummVM, and how I feel it could be improved somehow in future...
1) Add support for running CDDA tracks from a subdirectory, say named "music", or "CDDA", or whatever would be a better term. It would likely make a game directory look less cluttered IMO.
2) Add some kind of option or something to have ScummVM detect or assume a +1 index number increment in the track numbers. That way having to rename all the audio files afterwards to make their numbers go down one notch wouldn't be necessary. Unless of course EAC (my ripper of choice) has some kind of hidden option to make it go down one notch on the numbers in the case of mixed-mode CDs (read: all games with CDDA)?
I would try and help myself, but alas, I'm no coder by any means! =[ Still, what do you guys think of these ideas?
Cheers.
1) Add support for running CDDA tracks from a subdirectory, say named "music", or "CDDA", or whatever would be a better term. It would likely make a game directory look less cluttered IMO.
2) Add some kind of option or something to have ScummVM detect or assume a +1 index number increment in the track numbers. That way having to rename all the audio files afterwards to make their numbers go down one notch wouldn't be necessary. Unless of course EAC (my ripper of choice) has some kind of hidden option to make it go down one notch on the numbers in the case of mixed-mode CDs (read: all games with CDDA)?
I would try and help myself, but alas, I'm no coder by any means! =[ Still, what do you guys think of these ideas?
Cheers.
- Strangerke
- ScummVM Developer
- Posts: 335
- Joined: Wed Sep 06, 2006 8:39 am
- Location: Belgium
Isn't this the answer to your question ?
http://scummvm.sourceforge.net/faq.php#id257885
Is so : yes it already works. Just extract the audio track in MP3, Ogg or Flac named track1.mp3, track2.mp3, etc etc (or adequate extension, of course)
http://scummvm.sourceforge.net/faq.php#id257885
Is so : yes it already works. Just extract the audio track in MP3, Ogg or Flac named track1.mp3, track2.mp3, etc etc (or adequate extension, of course)
I think this is his point....
Some games had a lot of tracks - some between 30 and 90 - back in the day when redbook audio took off... and that makes for a cluttered directory - hence the request of his for the CDDA extracted tracks to be put in a subdirectory... I imagine that would be fairly easy...
The track numbers was the other bit - since track 1 was data the rest of the tracks would be track 2+ but scummvm looks for them indexed from 1 rather than 2... again this would be a rather easy change...
The key bit for them would be coordination in the release (notes) to inform people of the changes so that currently working stuff isn't broken unexpectedly...
Some games had a lot of tracks - some between 30 and 90 - back in the day when redbook audio took off... and that makes for a cluttered directory - hence the request of his for the CDDA extracted tracks to be put in a subdirectory... I imagine that would be fairly easy...
The track numbers was the other bit - since track 1 was data the rest of the tracks would be track 2+ but scummvm looks for them indexed from 1 rather than 2... again this would be a rather easy change...
The key bit for them would be coordination in the release (notes) to inform people of the changes so that currently working stuff isn't broken unexpectedly...
Re: Suggested improvements to CDDA support in games?
The Extra Path can easily be used for this purpose.marzipan wrote: 1) Add support for running CDDA tracks from a subdirectory, say named "music", or "CDDA", or whatever would be a better term. It would likely make a game directory look less cluttered IMO.
Could actually lead to more confusion, when problems do occur, since the games actually require the audio tracks to be in that order.marzipan wrote: 2) Add some kind of option or something to have ScummVM detect or assume a +1 index number increment in the track numbers. That way having to rename all the audio files afterwards to make their numbers go down one notch wouldn't be necessary. Unless of course EAC (my ripper of choice) has some kind of hidden option to make it go down one notch on the numbers in the case of mixed-mode CDs (read: all games with CDDA)?
Besides this only needs to be done once for each game, and there aren't that many CD audio tracks in games supported by ScummVM.
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
Re: Suggested improvements to CDDA support in games?
The Secret of Monkey Island can be a bit tedious. Of course, on a Unix-like system, you should be able to do something like this in a command shell:Kirben wrote: Besides this only needs to be done once for each game, and there aren't that many CD audio tracks in games supported by ScummVM.
Code: Select all
for num in `seq 2 25` ; do mv track$num.ogg track$(($num - 1)).ogg ; done
Re: Suggested improvements to CDDA support in games?
Well I tried to do this in Windows Powershell just now but it doesn't seem to be able to pick it up all that well...eriktorbjorn wrote:The Secret of Monkey Island can be a bit tedious. Of course, on a Unix-like system, you should be able to do something like this in a command shell:Kirben wrote: Besides this only needs to be done once for each game, and there aren't that many CD audio tracks in games supported by ScummVM.
I imagine someone could come up with something similar for Windows.Code: Select all
for num in `seq 2 25` ; do mv track$num.ogg track$(($num - 1)).ogg ; done
Code: Select all
Windows PowerShell
Copyright (C) 2006 Microsoft Corporation. All rights reserved.
PS C:\Documents and Settings\MarzSyndrome> e:
PS E:\> cd 0
PS E:\0> for num in `seq 2 25` ; do mv track$num.ogg track$(($num - 1)).ogg ; done
Missing opening '(' after keyword 'for'.
At line:1 char:5
+ for n <<<< um in `seq 2 25` ; do mv track$num.ogg track$(($num - 1)).ogg ; done
PS E:\0>
This is all I could find on it...
This really is hurting my poor brain. >.<
Man, all this aggro because ScummVM expects tracks named differently to most other programs....
For (Scripting)
[:label] for ([initializer]; [condition]; [iterator]) {}
Example:
for ($i = 0; $i –lt 5; $i++) {Write-Object $i}
Foreach (Scripting)
[:label]
foreach (identifier in collection) {}
Expression | foreach {}
Expression | foreach {BEGIN{} PROCESS{} END{}}
Examples:
$i = 1,2,3
foreach ($z in $i) {Write-Object $z}
Get-Process |foreach {BEGIN{$x=1}
PROCESS{$X++}
END{“$X Processes”}}
This really is hurting my poor brain. >.<
Man, all this aggro because ScummVM expects tracks named differently to most other programs....