Decodificar WMA con ffmpeg en iPhone
-
26-10-2019 - |
Pregunta
Estoy usando esta función para decodificar audio, pero no hay sonido:
int decodedBytes;
decodedBytes = avcodec_decode_audio4(myData->pCodecCtx, myData->myFrame, &data_size, &myData->pkt);
Los datos se descargan con éxito, pero no sé a dónde ir desde aquí, ya que no hay sonido en absoluto.
Solución
Si utiliza avcodec_decode_audio3
En su lugar, se cose funcionar:
decodedBytes = avcodec_decode_audio3(myData->pCodecCtx, samples, &data_size, &myData->pkt);
Pero probablemente deberías usar avcodec_decode_audio4
como avcodec_decode_audio3
costuras para estar en desuso. No sé mucho sobre FFMPEG/Libav, pero supongo que el Audio4 usa el sistema de búfer en Libav en lugar de pasar un búfer.
Tal vez esta diferencia le dé una pista de cómo usar audio4:
http://git.libav.org/?p=libav.git;a=commitdiff ;h=f199f38573c4c02753f03ba8db04481038fa6f2e
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow