FFmpeg 4.3 音视频-多路H265监控录放C++开发十九,ffmpeg复用

封装就是将 一个h264,和一个aac文件重新封装成一个mp4文件。

这里我们的h264 和 aac都是来源于另一个mp4文件,也就是说,我们会将 in.mp4文件解封装成一路videoavstream 和 一路 audioavstream,然后 将这两路的 avstream 合并成一个 out.mp4文件。

封装流程如下:

创建上下文

int avformat_alloc_output_context2(AVFormatContext **ctx, const AVOutputFormat *oformat,const char *format_name, const char *filename);

封装API:avformat_alloc_output_context2,avformat_free_context,-CSDN博客

创建avstream

打开输入IO

写入文件头

写入帧数据

写入尾部数据

相关推荐
ai产品老杨9 小时前
深度解析:基于国产化异构计算的 AI 视频管理平台架构——从 GB28181 接入到 NPU 边缘推流的解耦实践
人工智能·架构·音视频
watson_pillow9 小时前
音视频相关基础知识储备入门-字幕
音视频
charlie11451419110 小时前
通用GUI编程技术——图形渲染实战(三十八)——顶点缓冲与输入布局:GPU的第一个三角形
开发语言·c++·学习·图形渲染·win32
程序员JerrySUN10 小时前
Jetson边缘嵌入式实战课程第二讲:JetPack 和 SDK Manager 是什么
c语言·开发语言·网络·udp·音视频
用户8055336980310 小时前
现代Qt开发教程(新手篇)1.10——进程
c++·qt
海参崴-11 小时前
C++ STL篇 AVL树的模拟实现
开发语言·c++
汉克老师11 小时前
GESP2025年6月认证C++五级( 第二部分判断题(1-10))
c++·贪心算法·分治算法·线性筛法·gesp5级·gesp五级
6Hzlia11 小时前
【Hot 100 刷题计划】 LeetCode 15. 三数之和 | C++ 排序+双指针
c++·算法·leetcode
vegetablesssss11 小时前
VTK切割图
c++·qt·vtk
CN-Dust11 小时前
【C++】for循环例题专题
java·c++·算法