【问题标题】:Adding audio channel using ffmpeg使用 ffmpeg 添加音频通道
【发布时间】:2010-04-24 12:46:02
【问题描述】:

我正在开发 ffmpeg 并尝试动态添加音频流。我正在使用 AudioQueues,我得到了原始音频缓冲区。我正在使用线性 PCM 编码音频,因此我得到的音频将是原始格式,我知道 ffmpeg 确实接受它。但我无法弄清楚如何。我研究了 AVStream,我们必须在其中为此音频通道创建一个新流,但是如何将其编码为已经在另一个 AVStream 结构中初始化的视频。

总的来说,我想了解一下 ffmpeg 的架构。我发现它很难工作,因为它的记录最少。任何指针或细节表示赞赏。

感谢和问候, 拉吉帕万G

【问题讨论】:

  • 嗨,你有任何与 OSX 相关的示例,我正在尝试使用相同的示例
  • 很遗憾,我无法访问源代码!

标签: cocoa macos ffmpeg


【解决方案1】:

如果你想使用 java,你会发现一个文档更好的 FFmpeg API 包装器Xuggler

也就是说,FFmpeg 可以支持 Raw PCM,但并非所有容器都可以包含它。使用 PCM 编解码器(请参阅 avcodec.h)并找到具有所需大小和属性的编解码器。要将音频添加到同一容器中,请找到用于现有视频流的 AVFormatContext 对象,然后使用 av_new_stream(...) 添加新流。然后附加您的 PCM 编码器并对其进行“编码”并写入结果数据包。请参阅 FFmpeg 中的 output_example.c,了解此 API 的实际操作示例。

【讨论】:

  • 是的,谢谢,我已经开始朝着这个方向前进了。我基本上在关注 output_example.c,如果我在任何地方受到打击,我都会回复你。我使用的是 Cocoa,而不是 java。但无论如何,实现语言是 FFMpeg 调用的抽象!
猜你喜欢
  • 2022-01-19
  • 2019-07-03
  • 1970-01-01
  • 2012-09-04
  • 2016-07-27
  • 2016-04-11
  • 1970-01-01
  • 2019-07-06
  • 2011-11-17
相关资源
最近更新 更多