Closed LockonS closed 1 year ago
I've never actually played the dumped audio (though I have setup pipelines to play the dumped video), just examined its initial bit content for some debugging.
One ought to be able to get it to play through a standalone gstreamer pipeline modeled on the one used in renderers/audio_renderer_gstreamer.c, but I just made a quick try and its not working.
The problem is that it is a raw audio output not in a standard container with headers that the various players use to identify the type of audio. In principle it should be not too difficult to work out what to do, once playback through a standalone gstreamer pipeline is achieved.
Thanks for the detailed reply. Before start this issue, I've already tried multiple media players, VOX, Movist, IINA, Elmedia, and none of those could identify the audio type, just like you have explained. Yet I haven't got the skillset myself to look into the problem about the audio file headers. But I've got a working 3B+ which could be tinkered around if needed. Would you please post the updates in the thread if any breakthrough was reached?
Yes, I should make the audio dump more useful by adding some some option to provide a header or container that allows the dumped audio to be recognized and played by one of the standard tools.
This would be the "alac magic cookie" or its aac equivalent, that are send to gstreamer in the "caps" (Capabilities) entry when the audio pipeline is created in lib/audio_renderer_gstreamer.c
But I don't know how to do this correctly, and don't have time right now to research it.
Best would be if someone knowledgable shows up to provide guidance .....
Is there any way to play the dumped audio file? Try to decode it with ffmpeg and that didn't went well. The audio dump file could be downloaded here. Plus, the content of this file should be a part of 《Weight Of The World》 from game Nier Automata. I was 100% sure that the audio was streamed successfully as I could hear it play from speaker.
The platform is
RPi 3B+
runningRaspi OS Bullseye
,with the gstreamer build from the latest source code.The uxplay command in this case.
The complete error info is extremly long and I've extract some of the console output here.