【问题标题】:FFMPEG reduce fps for live h264 stream with direct copyFFMPEG 通过直接复制降低实时 h264 流的 fps
【发布时间】:2020-04-22 21:14:35
【问题描述】:

我发现了有关使用 ffmpeg 更改 fps 的不同文章,但没有一篇与我的确切目的相匹配。

有一个ffmpeg命令如下:

ffmpeg -i RTSPCAMERAPRODUCEH264 -c:v copy -an -movflags +frag_keyframe+empty_moov -f mp4

这将完美地将我的相机流重新混合为碎片化的 mp4。

有没有办法强制 ffmpeg 降低 FPS 以节省带宽?

即相机流 30fps,fmp4 需要 1Mbps(样本数!):

我想知道是否可以降低 FPS 并在不重新编码的情况下获得 500kbps(原始的 50% 就足够了)的输出流。

ffmpeg -r 1 -i RTSPCAMERAPRODUCEH264 -c:v copy -an -movflags +frag_keyframe+empty_moov -f mp4

ffmpeg -i RTSPCAMERAPRODUCEH264 -c:v copy -an -movflags +frag_keyframe+empty_moov -r 1 -f mp4

似乎没有用。

【问题讨论】:

  • 不可能,除非流仅在内部(非常不可能)
  • 不,它肯定不仅仅是 I 帧。谢谢。您能否添加一个答案,说明由于技术限制而无法实现,我会接受。

标签: ffmpeg


【解决方案1】:

时间编码的视频流(如使用 H264 编解码器的视频流)不能任意丢弃中间数据包,因此这是不可能的。只能删除 GOP 的全部或尾随部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 2013-10-04
    • 2015-08-07
    • 2018-08-24
    • 2015-05-29
    • 2019-05-15
    • 1970-01-01
    相关资源
    最近更新 更多