gpt4 book ai didi

ffmpeg - h264annexb比特流到flv mux ffmpeg库

转载 作者:行者123 更新时间:2023-12-02 06:35:58 25 4
gpt4 key购买 nike

我有一个 IP 摄像机,它通过 SDK 调用提供 H264 附件比特流。我想将此视频流打包到 FLV 容器中。到目前为止我已经了解以下内容:-

我必须将 H264annexb 转换为 H264 AVCC :为此,我必须将 NAL header 字节 (0x00000001) 替换为 NALU 的大小(大端格式)。

我的问题是,我该如何使用 SPS 和 PPS?我应该在替换 NAL header 后按原样写入 (av_interleaved_write_frame) 吗?或者我根本不写这些框架?

我读到有关 AVCC 需要额外数据的信息。我该如何构建它?我该在哪里传递它?

最佳答案

首先从相机中检索 SPS/PPS。将 SPS/PPS 写入 AVCC 额外数据格式(请参阅此处的操作方法:Possible Locations for Sequence/Picture Parameter Set(s) for H.264 Stream)

设置 AVCodecContext.extradata

void *extradata = /**/;
int extradata_size = /**/;
codecCtx->extradata_size = extradata_size;
codecCtx->extradata = av_malloc ( codecCtx->extradata_size );
memcpy ( codecCtx->extradata, extradata, codecCtx->extradata_size);

调用avcodec_open2之前

关于ffmpeg - h264annexb比特流到flv mux ffmpeg库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29751805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com