【发布时间】:2017-06-12 02:31:15
【问题描述】:
我从我的网络摄像头获取视频数据,并使用 ffmpeg 制作 ts、m3u8
但是 ts 是 ffmpeg 做的,每个 ts 有不同的帧数。
那么,我怎样才能使帧数相等?
而且ts中每个gop的大小也不同..
我怎样才能使 gop 大小保持不变?
avformat_alloc_output_context2(&ptr->hls_ctx, NULL, "hls", "hls.m3u8");
((HLSContext*)ptr->hls_ctx->priv_data)->flags = HLS_DELETE_SEGMENTS | HLS_ROUND_DURATIONS;
((HLSContext*)ptr->hls_ctx->priv_data)->max_nb_segments = 2;
((HLSContext*)ptr->hls_ctx->priv_data)->time = 2;
我已经用time参数来设置ts的播放时间了
【问题讨论】:
-
H.264 非常高效,部分原因是数据流最小化算法是由输入像素流的变化驱动的……您对恒定数据块的渴望与这些效率驱动的设计目标背道而驰。 . 请用您要实现的目标更新您的问题
-
@ScottStensland 他可能需要与关键帧对齐的流,并且他使用实时源,因此他不能两次通过以获得同步的自适应 GOP。