ffmpeg添加sps,pps

1、ffmpeg自动添加, 在avcodec_open2之前添加一行代码就行了:

cpp 复制代码
codec_ctx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;

2、手动添加, 在avcodec_open2之前添加如下代码, 0x00000001或者0x000001是起始码,0x67是sps的开头,0x68是pps的开头。

cpp 复制代码
unsigned char sps_pps[23] = { 0x00, 0x00, 0x00, 0x01, 0x67, 0x42, 0x00, 0x0a, 0xf8, 0x0f, 0x00, 0x44, 0xbe, 0x8, 
                              0x00, 0x00, 0x00, 0x01, 0x68, 0xce, 0x38, 0x80 };
codec_ctx->extradata_size = 23;
codec_ctx->extradata = (uint8_t*)av_malloc(23 + AV_INPUT_BUFFER_PADDING_SIZE);
if (codec_ctx->extradata == NULL) {
    printf("could not av_malloc the video params extradata!\n");
    return -1;
}
memcpy(codec_ctx->extradata, sps_pps, 23);
相关推荐
程序员老陆1 天前
从零写一个 FFmpeg 播放器:架构设计远比“解码显示”复杂
ffmpeg·音视频·播放器
程序员老陆1 天前
FFmpeg 硬解在 Linux 上:从“能跑”到“跑满 GPU”的实战笔记
linux·笔记·ffmpeg
≮傷£≯√2 天前
移植ffmpeg 到 GEC6818
ffmpeg
海带紫菜菠萝汤3 天前
FFmpeg.wasm 实践:在浏览器中运行 FFmpeg 的能力边界与性能瓶颈
前端·javascript·ffmpeg·音视频·wasm
程序员老陆4 天前
FFmpeg6的滤镜函数解析
ffmpeg·音视频·avfilter
看浪的路人4 天前
第10讲:Python 调用 FFmpeg 批量处理——打造你的视频处理工具箱
python·ffmpeg·音视频
程序员老陆5 天前
FFmpeg 时间戳全解:从 av_rescale_q 到时间基黑洞
ffmpeg·音视频·时间基
水獭比特5 天前
自动成片没报错,为什么音画还会漂?
ffmpeg
Yeauty5 天前
2026 年在 Rust 里处理音视频,该走哪条路?
rust·ffmpeg·音视频·视频
勿忘初心12216 天前
【Windows流媒体实战1】FFmpeg+Nginx-RTMP Windows详细搭建教程
ffmpeg·nginx-rtmp·windows流媒体搭建·rtmp直播