DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  4737 随笔 :: 2 文章 :: 542 评论 :: 1617万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  ffmpeg、ffplay

上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页

摘要:VFrame可以被解釋為一個AVPicture來填充 data 和 linesize 欄位。 填充這些欄位最簡單的方法是使用 avpicture_fill 函數。 要填充AVFrame和V 緩衝區的Y,它取決於輸入數據和想要使用框架( 要寫入 AVFrame ) 。 或者保留副本) 。 如果緩衝區足 阅读全文
posted @ 2021-07-23 11:49 DoubleLi 阅读(219) 评论(0) 推荐(0) 编辑

摘要:AVPacket 结构体解释AVBUffer/ref *buf : AVPacket采用的是引用计数,每次 AVPacket的时候把引用加一。 int64_t pts 显示时间, 计算方法 pts * num/den) int64_t dts 解码时间 因为b帧 有前后依赖帧率,先解码可能后显示,所 阅读全文
posted @ 2021-07-22 10:43 DoubleLi 阅读(408) 评论(0) 推荐(0) 编辑

摘要:FFMPEG官网给出了FFMPEG 滤镜使用的实例,它是将视频中的像素点替换成字符,然后从终端输出。我在该实例的基础上稍微的做了修改,使它能够保存滤镜处理过后的文件。在上代码之前先明白几个概念: Filter:代表单个filter FilterPad:代表一个filter的输入或输出端口,每个fil 阅读全文
posted @ 2021-07-21 18:30 DoubleLi 阅读(807) 评论(0) 推荐(0) 编辑

摘要:一、FFmpeg filter简介 FFmpeg中的libavfilter提供了一整套的基于filter的机制。filter本身是一个插件的形式,可以快速的组装需要的效果。比如下面的filter,可以实现视频的水平镜像效果。ffplay.exe sample.rmvb -vf hflip FFmpe 阅读全文
posted @ 2021-07-21 18:29 DoubleLi 阅读(634) 评论(0) 推荐(0) 编辑

摘要:1、概述此例子用ffmpeg的filter实现视频scale。2、代码 /** * 最简单的基于FFmpeg的AVFilter例子(scale) * * 缪国凯(MK) * 821486004@qq.com * * http://blog.csdn.net/dancing_night * * 本程序 阅读全文
posted @ 2021-07-21 18:28 DoubleLi 阅读(493) 评论(0) 推荐(0) 编辑

摘要:本节主要讲AVPacket中的数据解码到AVFrame中的过程。 前置知识点 1.FFmpeg数据结构简介 AVFormatContext:封装格式上下文结构体,也是统领全局的结构体,保存了视频文件封装格式相关信息 AVInputFormat:每种封装格式对应一个该结构体 AVStream:视频文件 阅读全文
posted @ 2021-07-21 18:01 DoubleLi 阅读(1033) 评论(0) 推荐(0) 编辑

摘要:目录 一、AVFrame结构体的定义 二、AVFrame相关的函数 2.1 av_frame_alloc() 2.2 avpicture_fill() 2.3 av_frame_free() 2.4 av_frame_ref() 2.5 av_frame_clone() AVFrame中存储的是经过 阅读全文
posted @ 2021-07-21 18:00 DoubleLi 阅读(1338) 评论(0) 推荐(0) 编辑

摘要:AVFrame结构体内有很多成员变量,我们肯定不可能都分析,只关心我们需要的,从实际应用场景出发,用到avframe只要有4个场景,1,init,2,decode,3 encode 4,free 从decode说起,decode涉及的函数是avcodec_decode_video2(),这个函数代码 阅读全文
posted @ 2021-07-21 17:58 DoubleLi 阅读(234) 评论(0) 推荐(0) 编辑

摘要:我们知道平时使用AVFrame这个数据结构时,首先需要调用av_frame_alloc()对其进行初始化,初始化后的数据里data数组和buf数组都是空的,也就是说初始化后不会填充一个默认图像数据(毕竟初始化时不需要知道图片的任何信息)。 我平时使用的AVframe填充数据的方式为av_image_ 阅读全文
posted @ 2021-07-21 17:51 DoubleLi 阅读(1144) 评论(0) 推荐(0) 编辑

摘要:ffmpeg4.2.2-avpicture_fill()的使用心得1. avpicture_fill()的声明/** * @deprecated use av_image_fill_arrays() instead. */attribute_deprecatedint avpicture_fill( 阅读全文
posted @ 2021-07-21 17:22 DoubleLi 阅读(1072) 评论(0) 推荐(1) 编辑

摘要:1. 视频播放器基本原理 下图引用自“雷霄骅,视音频编解码技术零基础学习方法”,因原图太小,看不太清楚,故重新制作了一张图片。 如下内容引用自“雷霄骅,视音频编解码技术零基础学习方法”: 解协议 将流媒体协议的数据,解析为标准的相应的封装格式数据。视音频在网络上传播的时候,常常采用各种流媒体协议,例 阅读全文
posted @ 2021-07-21 17:14 DoubleLi 阅读(686) 评论(0) 推荐(0) 编辑

摘要:ffmpeg中已经实现了使用dxva加速解码部分代码。但是要整合在自己的播放器中dxva相关管理代码没有实现。 以下笔者带大家去实现一个基于dxva的加速解码器。 由于文笔不好,主要以代码来说话,望见谅。 一:ffmpeg中实现的dxva解码相关代码介绍 ffmpeg已经实现了h264 h263 m 阅读全文
posted @ 2021-07-21 17:11 DoubleLi 阅读(589) 评论(0) 推荐(0) 编辑

摘要:索引地址:系列教程索引地址 上一篇:FFmpeg4入门系列教程5:解码视频流过程 上一篇介绍了解码的基本流程,获取了视频帧数,但是没有视频每一帧数据的解码操作。 我们从视频中取出每一帧进行操作,我们已经分配了AVFrame内存,当我们转换它颜色空间时仍然需要一个位置来放置原始数据。我们使用av_im 阅读全文
posted @ 2021-07-21 17:00 DoubleLi 阅读(483) 评论(0) 推荐(0) 编辑

摘要:0 引言 FFmpeg使用很久了,一直没有认真看过FFmpeg内部源码所提供的各种机制和功能。本文的主要目标是能够初步总结FFmpeg的avutil中所提供的功能。从FFmpeg官网的文档-libavutil来看,avutil主要有一下几种功能(顺序做了重排): 数学函数 字符串操作 内存管理相关 阅读全文
posted @ 2021-07-21 16:35 DoubleLi 阅读(400) 评论(0) 推荐(0) 编辑

摘要:鼎鼎大名的FFmpeg不用多作介绍,基本是音视频技术必备的基础库之一,提供了强大的音视频处理方案。本文记录FFmpeg的一些基本知识,基于4.0.2,有时间会慢慢增改。(PS:可能有错误) FFmpeg最常用的结构体 解协议(http,rtsp,rtmp,mms) 协议(文件)操作的顶层结构是AVI 阅读全文
posted @ 2021-07-21 15:44 DoubleLi 阅读(457) 评论(0) 推荐(0) 编辑

摘要:更新记录(2014.7.24): 1.为了使本文更通俗易懂,更新了部分内容,将例子改为从内存中打开。 2.增加了将数据输出到内存的方法。 从内存中读取数据 ffmpeg一般情况下支持打开一个本地文件,例如“C:\test.avi” 或者是一个流媒体协议的URL,例如“rtmp://222.31.64 阅读全文
posted @ 2021-07-21 14:31 DoubleLi 阅读(1121) 评论(0) 推荐(1) 编辑

摘要:文章目录I . FFMPEG AVFrame 图像数据帧处理 前置操作II . FFMPEG 解码 AVPacket 数据到 AVFrame 流程III. FFMPEG 解码前后的图像格式IV . FFMPEG 获取 SwsContextV . FFMPEG 初始化图像数据存储内存VI . FFMP 阅读全文
posted @ 2021-07-21 11:45 DoubleLi 阅读(1631) 评论(0) 推荐(0) 编辑

摘要:前言 AVPacket是ffmpeg常用的结构体,位于libavcodec/avcodec.h中,它用于表示一帧压缩的视频或者多帧压缩的音频,使用了引用计数机制来管理内存 AVPacket结构体分析 常用函数 AVPacket使用方式 AVPacket结构体分析 如下为源码中关于AVPacket的描 阅读全文
posted @ 2021-07-21 11:24 DoubleLi 阅读(1985) 评论(0) 推荐(0) 编辑

摘要:前言 ffmpeg实现了软件解码,以及导入libx264等外部库实现软编码。同时它还对各个平台的硬编解码也进行了封装,提供了统一的调用接口。本文目的就是通过实现硬遍解码h264了解这些流程和接口 视频硬解码相关流程 image.png 视频硬编码相关流程 image.png 视频硬编解码相关函数及结 阅读全文
posted @ 2021-07-21 11:14 DoubleLi 阅读(2919) 评论(0) 推荐(0) 编辑

摘要:前言 1、视频缩放是指将视频放大或者缩小,放大或者缩小对应着不同的缩放算法,每一种算法性能和效果也不一致。视频缩小也是很常见的需求,各个点播平台基本上都会提供不同分辨率(超清1080P,高清720P,标清360P)的视频资源以适应用户不同网络条件的需求。2、视频像素格式转换;安卓平台碎片化的特性,安 阅读全文
posted @ 2021-07-21 11:09 DoubleLi 阅读(1099) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页
点击右上角即可分享
微信分享提示