欲解码WMA流以16位PCM。现在我有一个关于FFMpeg-什么是的输出格式的问题..

len = avcodec_decode_audio2(c, (int16_t *)outbuf, &outbuf_used, inbuf_ptr, size);

这是此任务的右功能?

感谢您

有帮助吗?

解决方案

中的一句话:尝试问的ffmpeg用户列表上的这个问题。你一定会发现ffmpeg的大师那里。

我主要使用的ffmpeg编码/解码视频。为了解码,将“avcodec_decode_ *”是用于...解码正确的事情。你得到的是... 16位PCM。

我的意思是,解码的多媒体流可以是棘手和FFMPEG是一个相当低的水平库。这是很难与代码你给(至少你应该是更精确有关您的参数)。

只是线条更加精确

你应该小心的是,阅读的多媒体流时,你必须解复用器你先流(有时即使只有一个流在你的容器),然后将其与正确的解码器进行解码。如果你已经正确地解复用的流,正确初始化你的解码器/解码器方面,那么你可以调用avcodec_decode,它会工作:)

至于你提到的C ++在你的标签,你可以尝试一个C ++包装的ffmpeg的: FOBS 使用更加简单,但当然,你失去精确控制...

我希望它能帮助。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top