-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BCSTM files incompatible with a 3DS #124
Comments
Try repacking the audio stream. I think you might be able to do that by "converting" the BCSAR to another BCSAR. If not, convert to something like BCSTM and back. If that doesn't work it's most likely an issue with how the BCSAR container is packed |
I'm sorry for making a mistake, the file in question is BCSTM, not BCSAR (I'll fix the comments as well as the title). I've tried the following:
The results
BCSTM (original)
BCSTM to BCSTM
BCSTM to HCA to BCSTM
BCSTM to BRSTM to BCSTM
BCSTM to WAV (VGAudio) to BCSTM
BCSTM to WAV (FFmpeg) to BCSTM
After testing all the files, the only one that plays is the original one. More than half of the files' information that differs seems to be unique, but they have two parameters that match for those files that don't work:
Also, the sample count from data size in those reencoded files match the file's sample count as well as the loop end (the loop ends at the very end of the file). The original file:
All the other reencoded files:
|
So I've decided to recreate both working and non-working scenarios so that you could reproduce them as well to see the difference. To avoid any copyright infringement, I'll be using a royalty-free audio file. These are the exact steps to creating both files:
More details are available below (both files were exported without the loop - it's not a problem): Looping Audio Converter 1.3 variant - cannery2.bcstm (works)
VGAudio variant - cannery2_vg.bcstm (doesn't work)
The difference (working vs. not working)
I would be glad if this helped you with solving the problem. |
The BCSTM files created using the VGAudio library work fine when decoded on a computer, but fail to play on a 3DS, specifically when applied as a background theme in the HOME menu. I've tried comparing the file information of two BCSTM files, which had everything in common but the library that was used to encode the file. The results can be seen below:
Original
Re-encoded (VGAudio)
There seems to be a difference in offsets for the following:
0x250
vs0x24A
)2051084
vs2051072
)Other than that, the files seem to be identical.
May I ask if a fix is possible? I can provide more information or samples if needed.
Also, thank you for the previous fix you've made!
Many thanks in advance.
The text was updated successfully, but these errors were encountered: