目录整体结构模块 整体结构 模块 AVUtil:核心工具库,该模块是最基础的模块,许多其他的模块都会依赖该库做一些基本的音视频处理。 AVFormat:文件格式和协议库,该模块是最重要的模块之一,封装了Protocol层和Demuxer,Muxer层,使得协议和格式对于开发者来说是透明的。 AVCodec:编解码库,最重
在做音视频相关的开发过程大体如下所示,对于其中的编码/解码,整个流程相对比较固定,使用ffmpeg可以很好的完成这部分的开发。对其中的帧数据处理(包括音频和视频数据)则相对要多样化一些,比如对视频做尺寸变换,进行音频音量均衡,直播中的美颜处理,多路流合成等等,这些都是属于流程中的帧数据
要想将摄像头采集的视频流和桌面采集的视频流混成一股流,需要再次借助ffmpeg的avfilter功能库。 技术简介 借助fmpeg的filter功能,将两股视频合成一股视频流,从而实现两股视频的画中画效果 使用模块(库) 使用ffmpeg的avfilter库 主要流程和代码 1、初始化视频混流器。最需要关注的
其它过滤器文章: day09-----1-----FFmpeg过滤器框架分析。 day09-----2-----视频过滤器实战。 day09-----3-----音频过滤器实战(ffmpeg进行混音,将两路音频pcm数据合成一路输出)。 day09-----4-----FFmpeg filter补充之使用filter添加水印。 day09-----5-----FFmpeg filter补充
FFmpeg编译 *.默认的编译会生成4个可执行文件和8个静态库 4个可执行文件 *.可执行文件包括转码,推流,Dump媒体文件的ffmpeg,用于播放媒体文件的ffplay,用于获取媒体文件信息的ffprobe,以及作为简单流媒体服务器的ffserver. 8个静态库 1.AVUtil:核心工具类,该模块是最基础的模块之一,
头文件extern "C" {#include "libavutil/mem.h"#include "libavfilter/avfiltergraph.h"#include "libavfilter/buffersink.h"#include "libavfilter/buffersrc.h"#include "libavutil/avutil.h"#include "lib