Are you talking about how it lags Audacity/Foobar and takes forever to actually start playing? Because, if so, I'm having that issue too. However, I believe I have solved it and also came up with a way to separate each subchannel! Be warned that this program has a weird quirk that really bugs me, though, so it's not very pretty.
First of all, make a new batch file. This one here scans the file for its metadata so you can see the number of channels it has, then prints instructions to the console window.
Code: Select all
set FILE=%1
[path to test.exe] -m %FILE%
echo "Find value 'channels:' above and set MAX in the main batch file to (number of channels - 1). Ex. If there are 16 channels, set MAX = 15. Otherwise, the program will simply start over when it reaches the end of the channels!"
pause
Unfortunately, you have to set the maximum value of channels the program exports manually, otherwise it simply restarts. For example, with the track you gave me, I set total channels to 18 to see if it would stop (keep in mind there are 16 channels, so it should've stopped at 15 (16 - 1, because channel 1 is at position 0 -- kind of confusing, I know)), but sure enough, it went all the way to 18. 16 was a copy of 0. FML.
Here is the modified batch script that exports each subchannel. These resulting wav files seem to playback just fine in Audacity, with no lag. You can replace the old one with this.
Code: Select all
set FILE=%1
set /p MAX="Number of channels?: "
[path to test.exe] -2 0 -o %FILE%_0.wav %FILE%
for /L %%A in (1,1,%MAX%) do (
[path to test.exe] -2 %%A -o %FILE%_%%A.wav %FILE%
)
pause
... And here's an explanation of what (I believe) it does, line by line.
Sets "FILE" to the full path to the file drag-and-dropped onto the batch script.
Code: Select all
set /p MAX="Number of channels?: "
Sets the maximum number of channels to export to a number. Must be an integer. This is requested to be input by the user in the console window as it's running. For the example AWC file given (nrt_song_06), input 15 (because the file has 16 channels).
Code: Select all
[path to test.exe] -2 0 -o %FILE%_0.wav %FILE%
Runs test.exe with flag -2 (get channel number (for stereo channel; it looks like they're all actually stereo tracks, not mono!), in this case we're getting channel 0), and flag -o to output [original filepath]_0.wav, reading from [original file path]. This has to be done to get channel 0, because I can't find a reliable method to make the following for loop do it without getting caught in an infinite loop.
Runs the following command on each channel until we reach the maximum number of channels, input earlier.
Code: Select all
[path to test.exe] -2 %%A -o %FILE%_%%A.wav %FILE%
Same as before, but this time we set the channel number to the number we're currently on, until we reach the end of this for loop (until we run out of channels).
Marks the end of the for loop's actions, which began with "do (". Kind of self-explanatory, lol
Brings up the "Press any key to continue..."; simply stops the program from instantly exiting. You can remove this if you don't want to have to press a key every time it finishes just to close it.
I hope this helps! Sorry there isn't an easier way to do it without having to manually input how many channels there are, but I suppose having to do that is infinitely less time consuming than having to manually export every individual channel with Audacity, especially when apparently some of these files can get up to, like, 200 channels or something.
EDIT: Okay, actually, I listened to the track output on channel 3 (or 2 in this case) and I think I get what you mean now. The left channel for this one is like... stuttering at the start and lagging behind? (The right channel does it later on in the song, too...)
I have no idea what's causing that. (I believe it might have something to do with how test.exe is processing the file, as it seems to stutter differently each time it gets exported...) I'm afraid I don't know how to help other than by suggesting you split the two channels into mono, try to manually edit the laggy bits back to normal, and correct them manually.
I hope this modified batch script helps at least in some way. I'll see if I can figure out a way to get it to stop stuttering, but I don't think there's anything that can be done about that, unfortunately...