Problems with pipeline_play_sdcard_music example for opus and ogg files.

dauhen
Posts: 2
Joined: Sat Sep 16, 2023 5:08 pm

Problems with pipeline_play_sdcard_music example for opus and ogg files.

Postby dauhen » Sat Sep 16, 2023 5:23 pm

I am trying to exercise a ESP32-LyraT-Mini dev kit using the pipeline_play_sdcard_music example. It works great on MP3 files but I cannot get either OPUS or OGG files to work. Here are the error messages from the monitor...

For OPUS files I get....
I (1968) PLAY_SDCARD_MUSIC: [ 6 ] Listen for all pipeline events
E (1978) FATFS_STREAM: Failed to open. File name: /sdcard/test.ops, error message: No such file or directory, line: 135
E (1988) AUDIO_ELEMENT: [file] AEL_STATUS_ERROR_OPEN,-1
W (1988) AUDIO_ELEMENT: [file] audio_element_on_cmd_error,7
W (1998) AUDIO_ELEMENT: IN-[dec] AEL_IO_ABORT

For OGG files I get...
I (1955) PLAY_SDCARD_MUSIC: [ 6 ] Listen for all pipeline events
E (1985) VORBIS_DECODER: Error open ogg file: -132, ffffff7c, 325
E (1985) AUDIO_ELEMENT: [dec] AEL_STATUS_ERROR_OPEN,-1
W (1988) AUDIO_ELEMENT: [file] audio_element_on_cmd_error,7
W (1998) AUDIO_ELEMENT: IN-[dec] AEL_IO_ABORT

Are there any restrictions on the sample rates, bit rates, etc. for the OPUS or OGG decoders? I think the FatFS is actually opening the files but the decoder is rejecting the files for some reason. That is just a suspicion since the MP3 version works so well.

There seems to be no way to really debug these issues since the decoder source code is not provided for the pre-compiled libraries in esp-adf. Or am I missing something?

Martin Brennan
Posts: 5
Joined: Thu May 02, 2024 10:26 am

Re: Problems with pipeline_play_sdcard_music example for opus and ogg files.

Postby Martin Brennan » Thu May 02, 2024 10:35 am

Hi

I too got this error when attempting to decode an ogg file

E (20974) VORBIS_DECODER: Error open ogg file: -132, ffffff7c, 325

Incidentally Winamp would not play this file whereas VLC would play it OK

I noticed that that the bad ogg file had one more header - marked by the bytes "OggS" than good ogg files.

I found that if I stripped this first header (167 bytes) then the rest of the file plays.
I have not delved deeper into the header construction and the ogg decoder sources are apparently not included in adf but I thought I would post this finding in case it helps others.

Martin

Who is online

Users browsing this forum: No registered users and 12 guests