【问题标题】:Manually generate "empty" h264 p-frame手动生成“空”h264 p 帧
【发布时间】:2017-09-10 19:32:37
【问题描述】:

如果 p 帧帧不改变当前解码视频中的任何像素(即没有运动矢量,什么都没有),我们将其称为空帧。

我需要的是能够根据请求手动将空 p 帧插入到视频流中(需要以恒定帧速率将帧发送到流式客户端,但是流式服务器上的帧源可以提供具有不同/更低)。

所以我需要能够正确形成代表当前分辨率的空 p 帧的字节序列(我想知道还需要哪些其他参数?)

理想情况下,我更喜欢独立于编码器的解决方案,因为我使用两种不同的解决方案:通过 Nvidia Video SDK 的 nvenc 和通过 FFmpeg 的 x264。

我应该去哪里看?

【问题讨论】:

  • 这个问题对于stackoverflow来说是很广泛的。要为您指明正确的方向,请查看 h264 比特流解析、VCL 和 CABAC 编码以及 SKIP 宏块。
  • @szatmary 好的,会研究 FFmpeg 的!两个编码器应该或多或少地工作相同,不是吗?
  • 另外,刚刚发现:h264bitstream
  • 您找到解决方案了吗?
  • @DavidQHogan 抱歉回答迟了。我记不太清了,但可能只是给一个 h264 编码器一个序列中两个(或更多)相同的帧,然后查看它的字节流输出

标签: ffmpeg video-streaming h.264 x264 nvenc


【解决方案1】:

我认为有一个专门用于数据填充的 h264 nal 单元(nal_unit_type:12:filler_data_rbsp())。它可能对你有用。

【讨论】:

    猜你喜欢
    • 2021-05-06
    • 2017-02-19
    • 2019-06-20
    • 1970-01-01
    • 1970-01-01
    • 2012-06-12
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    相关资源
    最近更新 更多