12 2018 档案
摘要:滤波也不总是单一的输入,也存在对多个输入流进行滤波的需求,最常见的就是对视频添加可视水印,水印的组成通常为原视频以及作为水印的图片或者小动画,在ffmpeg中可以使用overlay滤波器进行水印添加。 对于多视频流输入的滤波器,ffmpeg提供了一个名为framesync的处理方案。framesyn
阅读全文
摘要:在ffmpeg中,常使用AVOption的API来进行参数设置。AVOption的API主要分为设置参数以及提取参数两种,无论是哪一种API都主要分为两大步骤: 本文主要讨论第一步,即定位参数所在的内存位置(av_opt_find2)。 可被进行参数查找的结构 在调用av_opt_set这一类函数的
阅读全文
摘要:如果有定制ffmpeg滤波器的需求,有两个结构体是必须要了解的:AVFilter、AVFilterPad,所定制的滤波器主要就是通过填充这两个结构体来实现的。我们下面将详细解析这两个结构体,并通过对滤波器的初始化流程以及滤波流程进行分析,进一步加深对ffmpeg滤波框架的了解。 AVFilter A
阅读全文
摘要:ffmpeg的中滤波器是以帧为原料来进行滤波的,那么自然地就会对帧的格式有所要求,可以说如果滤波器不知道帧的格式,就无法对帧进行处理。在进行视频滤波时,滤波格式指的是视频的像素格式;在进行音频滤波时,滤波格式包括音频采样格式,采样率以及通道数目。 承担协商任务的结构体AVFilterLink 滤波器
阅读全文
摘要:ffmpeg中有很多已经实现好的滤波器,这些滤波器的实现位于libavfilter目录之下,用户需要进行滤波时,就是是调用这些滤波器来实现的。ffmpeg对于调用滤波器有一整套的调用机制。 基本结构 我们把一整个滤波的流程称为滤波过程。下面是一个滤波过程的结构 图中简要指示出了滤波所用到的各个结构体
阅读全文