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);
相关推荐
活捉一个坏小孩4 天前
Nvidia FFmpeg安装说明
ffmpeg
WF_YL4 天前
如何删除 Oracle 过期 key / 数据,删除目的的key
ffmpeg
浩瀚之水_csdn4 天前
avcodec_find_decoder函数详解
ffmpeg
浩瀚之水_csdn7 天前
avcodec_parameters_copy详解
linux·人工智能·ffmpeg
不吃鱼的猫74811 天前
【ffplay 源码解析系列】02-核心数据结构详解
c++·ffmpeg·音视频
不吃鱼的猫74811 天前
【ffplay 源码解析系列】01-开篇-ffplay整体架构与启动流程
c++·架构·ffmpeg·音视频
REDcker13 天前
FFmpeg开发者快速入门
ffmpeg
不吃鱼的猫74813 天前
【从零手写播放器:FFmpeg 音视频开发实战】04-封装格式与多媒体容器
c++·ffmpeg·音视频
REDcker14 天前
FFmpeg完整文档
linux·服务器·c++·ffmpeg·音视频·c·后端开发
硬汉嵌入式14 天前
QEMU & FFmpeg作者Fabrice Bellard推出MicroQuickJS,一款面向嵌入式系统JavaScript引擎,仅需10K RAM
javascript·ffmpeg·microquickjs