使用live555和FFmpeg流式传输H264视频

5
我正在尝试使用live555来流式传输使用FFMPEG编码的数据。我有一个自定义的帧源将数据发送到sink,但我无法弄清楚如何在framer中设置SPS和PPS。我了解到extradata包含此信息,但我只看到了SPS。当FFMPEG进行编码时,extradata是否会发生变化?如果是,我们需要在何时更新live555 framer中的此信息。
有人有使用FFMpeg和live555流式传输H264的工作示例吗?
1个回答

9
Live555是一款简单的流媒体工具,不执行任何编码操作。
SPS和PPS是编码H264数据流(或FFMPEG输出的数据)中的NAL单元(参见此处的一些信息:http://www.cardinalpeak.com/blog/the-h-264-sequence-parameter-set/)。
如果您想更改SPS或PPS信息,则需要在FFMPEG中进行更改。
这里有FFMPEG和Live555一起使用以流传输MPG2和H264流的示例:
https://github.com/alm865/FFMPEG-Live555-H264-H265-Streamer/ 要流传输H264流,您需要将FFMPEG输出拆分为NAL单元,然后将其发送到离散帧处理器进行正确处理。您还必须从数据包中删除前导和尾随的NAL位(即删除NAL标识符0x00 0x00 0x00 0x01)。
Live555将自动读取并根据需要更新这些信息。

1
这些示例链接真的救了我一命!! - seleciii44

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接