摘要:ffmpeg中的并行解码分为两种: Frame-level Parallelism Slice-level Parallelism Frame-level Parallelism 帧间依赖 我们之前讨论过Frame-level Parallelism。在之前的文章中,我们说过在进行帧级的并行处理时,
阅读全文
随笔分类 - ffmpeg、ffplay
摘要:滤波也不总是单一的输入,也存在对多个输入流进行滤波的需求,最常见的就是对视频添加可视水印,水印的组成通常为原视频以及作为水印的图片或者小动画,在ffmpeg中可以使用overlay滤波器进行水印添加。 对于多视频流输入的滤波器,ffmpeg提供了一个名为framesync的处理方案。framesyn
阅读全文
摘要:如果有定制ffmpeg滤波器的需求,有两个结构体是必须要了解的:AVFilter、AVFilterPad,所定制的滤波器主要就是通过填充这两个结构体来实现的。我们下面将详细解析这两个结构体,并通过对滤波器的初始化流程以及滤波流程进行分析,进一步加深对ffmpeg滤波框架的了解。 AVFilter A
阅读全文
摘要:在做音视频相关的开发过程大体如下所示,对于其中的编码/解码,整个流程相对比较固定,使用ffmpeg可以很好的完成这部分的开发。对其中的帧数据处理(包括音频和视频数据)则相对要多样化一些,比如对视频做尺寸变换,进行音频音量均衡,直播中的美颜处理,多路流合成等等,这些都是属于流程中的帧数据处理。今天要介
阅读全文
摘要:滤镜 什么是滤镜?百度百科介绍说“滤镜主要是用来实现图像的各种特殊效果......”。 我们最早在ffmpeg是如何转码的一文中了解过滤镜,来回顾下当时的转码流程图。 从图中可以看到滤镜前后画的是虚线,表示可有可无,在术语中,滤镜指的是在编码之前针对解码器解码出来的原始数据(即音视频帧)进行处理的动
阅读全文
摘要:本文的主要目的是梳理,记录自己在学习开发ffmpeg视频滤镜的笔记。参考的主要内容是根据ffmpeg中doc下的writing_filter.txt文件以及ffmpeg的源码。 1. Contex 定义自己私有的上下文结构 跳过头文件往下走,我们一般在滤镜的文件中会首先给出和定义一个自己的私有上下文
阅读全文
摘要:最近在使用ffmpeg开发了一些滤镜filter功能,中间出现一些问题,今天想把这部分的内容整理为笔记,方便以后遇到同样问题的时候,方便翻阅。 如何生成dump core文件? 当我们在linux下将ffmpeg编译好之后,进入运行调试阶段,突然ffmpeg就cash了,提示出现了一个莫名其妙的"s
阅读全文
摘要:FFmpeg Filter 1. 概念介绍 在多媒体处理中,术语滤镜(filter)指的是修改未编码的原始音视频数据帧的一种软件工具。 2. 基本原理 ● 在编码前,ffmpeg可以对raw(真实/原)音频和视频使用libavfilter库中的滤镜进行处理。(非压缩数据帧)● 多个滤镜可以组成滤镜链
阅读全文
摘要:其它过滤器文章:day09 1 FFmpeg过滤器框架分析。day09 2 视频过滤器实战。day09 3 音频过滤器实战(ffmpeg进行混音,将两路音频pcm数据合成一路输出)。day09 4 FFmpeg filter补充之使用filter添加水印。day09 5 FFmpeg filter补
阅读全文
摘要:首先,阅读本文前,可以参考前面几篇文章。 详细分析FFmpeg过滤器框架 FFmpeg过滤器实战(1) FFmpeg过滤器实战(2) ffmpeg已经实现了很多滤波器,这些实现位于于libavfilter⽬录之下,具有一整套机制。 官网地址:http://ffmpeg.org/libavfilter
阅读全文
摘要:目录 音视频过滤器 视频过滤器 FFmpeg 音视频过过滤器 在编码之前,FFmpeg 可以使用 libavfilter 库中的过滤器处理原始音频和视频帧。几个链式过滤器行程一个过滤图像。 FFmpeg中的filter包含三个层次,filter -> filterchain -> filtergra
阅读全文
摘要:在AVPacket中有两个比较相近的函数av_packet_free和av_free_packet,在看api的时候有些迷茫,不知道如何使用,之后特意看了一下源码,在此记录一下 不多说,直接上源码 //av_free_packet其实就是清空pkt中data以及buf的内容,并没有把pkt的指针清空
阅读全文
摘要:from:https://zhuanlan.zhihu.com/p/23606669 本文是我的《FFMPEG Tips》系列的第三篇文章,上篇文章 介绍了如何提取整个音视频码流的媒体信息,包括:封装格式、编码格式、视频的分辨率、帧率、码率、音频的采样率、位宽、通道数等等,而本文则关注得更细一点,看
阅读全文
摘要:ffmpeg推流降低延迟的优化一.针对编码器上下文的参数配置AVCodecContext *vc = NULL; // AV_CODEC_FLAG_GLOBAL_HEADER -- 将全局头文件放在引渡文件中,而不是每个关键帧中。 //AV_CODEC_FLAG_LOW_DELAY --较低延迟 v
阅读全文
摘要:最新使用 FFmpeg 进行 H264 的编码时,发现视频编码有延迟,不是实时编码,进过一番研究发现,只要在调用 avcodec_open2 函数 打开编码器时,设置 AVDictionary 参数即可,关键代码如下: avcodec_open2函数: int avcodec_open2(AVCod
阅读全文
摘要:FFMPEG关于推流端降低延迟调节(一) 本文所写的是调节推流端降低延迟能调节的一些方案,有不足请补充,其他端方向类似,例如降低采集缓存,减少编码时间等等,如有需要请参考。本文以windows推流端为例做解释。 1:减少采集缓存 av_dict_set(&p_device_options,"rtbu
阅读全文
摘要:from:http://lib.csdn.net/article/57/40941?knId=1586 近日在做一个分布式转码服务器,解码器是采用开源的ffmpeg,在开发的过程中遇到一个问题:编码延迟多大5、6秒钟,也就是最初编码的几十帧并不能马上取出,而我们的要求是实时编码!虽然我对视频编码方面
阅读全文
摘要:av_dict_set(&optionsDict, "rtsp_transport", "udp", 0); av_dict_set(&optionsDict, "stimeout", "200000", 0); av_dict_set(&optionsDict, "fflags", "nobuff
阅读全文
摘要:不知大家有没有发现FFmpeg长时间解码会出现延时增大(特别是在丢包的情况下)?如果在播放本地文件,这个问题是没有影响的。但是如果播放的是实时流,则图像的延时就越来越大。本人是做安防监控的,很多招标项目对解码器的图像延时都有要求:不能高于250毫秒。所以,对实时性要求高的场合,要尽量降低图像的延时。
阅读全文
摘要:这是基于FFMPEG的视频编码器,可以将yuv视频元数据编码成h264压缩编码数据。主要是记录一下自己学习FFMPEG时总结的视频编码流程。ffmpeg版本:ffmpeg-4.2.2libx264版本:x264-snapshot-20191023-2245-stable 流程图 简单介绍下各个函数的
阅读全文