fgsfdsfgs / sm64-port

PS2, PS3, OG Xbox and DOS ports of sm64-port.
https://discord.gg/7bcNTPK
243 stars 38 forks source link

Segmentation fault when building with custom voices and sounds (Xbox) #26

Closed PootisDaMan closed 3 years ago

PootisDaMan commented 3 years ago

So I have been trying to build the Xbox port with my custom Mel Blanc voice pack for Mario which has worked on the PS2, PS3, and the xsm64 Xbox ports. When I build it with the custom voices, it says:

make: [Makefile:773: build/us_xbox/sound/samples/sfx_mario/00.aifc] Segmentation fault make: Deleting file 'build/us_xbox/sound/samples/sfx_mario/00.aifc' make: Waiting for unfinished jobs.... make: [Makefile:773: build/us_xbox/sound/samples/sfx_mario/01.aifc] Segmentation fault make: *** Deleting file 'build/us_xbox/sound/samples/sfx_mario/01.aifc'

I don't know why this is happening as the sound pack works on other ports.

fgsfdsfgs commented 3 years ago

This is a bug in the audio tools that is present in all sm64-port forks. It's pretty funky because it appears to be a result of undefined behavior, so it can randomly appear to work correctly on different setups. However, it really only works correctly on vanilla audio files and certain custom AIFFs. It might be a bug in libaudiofile, a mistake in the single file conversion of it, or a bug in the other audio tools. I don't know the exact cause of it and it's not unique to this repo.

PootisDaMan commented 3 years ago

I have found a workaround to the segmentation faults. I used a different port to convert the AIFF to AIFC and took them from that port's build folder to this port's build folder. Built it again and it works flawlessly.