
音视频
文章平均质量分 88
jiodg45
这个作者很懒,什么都没留下…
展开
-
FFmpeg笔记(五)
FFmpeg-文件夹信息读取(avio_list_dir)文件夹读取分为3个大的步骤:创建文件读取的上下文对象 URLContext,用来保存记录文件读取过程中所有环境变量和源数据typedef struct URLContext { const AVClass *av_class; //用来提供上下文日志信息的打印,以及提供AVOptions const struct URLProtocol *prot; //文件协议对象,遵守文件的基本协议如`open/close原创 2021-03-22 22:47:04 · 532 阅读 · 0 评论 -
FFmpeg笔记(四)
FFmpeg编解码流程下面是一个文件格式的基本转换流程,a.libavformat.a提供demuxer和muxer,它是音视频文件容器的拆包解包工厂,encoded data packets对应的是AVPacket(音视频数据包).b. libavcodec.a提供decoder和encoder,对上游传递过的来的AVPacket进行编解码,的到AVFrame(视频帧,或音频帧,多个音频帧),音视频的压缩和特效实现就是针对AVFrame进行处理的。c. 处理后的音视频帧可以再次封装成文件,或是原创 2021-03-20 20:44:13 · 760 阅读 · 3 评论 -
FFmpeg笔记(三)
视频编码格式-H.264H.261是1990年ITU-T定制的一个视频编码标准,属于视频编解码器,视频编码器的鼻祖H.261又称为P*64,其目是为了能在64kbps的带宽上传输质量可接受的视频信号,编码程序设计的码率是能够在40kbps到2Mbps之间工作对CIF和QCIF分辨率的视频进行编解码(即亮度分辨率分别是352x288和176x144,色度采用4:2:0采样,分辨率分别是176x144和88x72), 它们是一种国际化的标准图像格式,不同硬件之间共同约定的统一格式H.261的实现原理原创 2021-03-20 00:27:33 · 390 阅读 · 1 评论 -
FFmpeg笔记(二)
集成FFmpeg主要分为量大块,按需将相关的库导入到工程中,补充缺失的头文件编译FFmpeg以iOS为例需要指定平台,Xcode信息,root sdk路径,编译工具链,支持的arch,输出路径,等参数.这里推荐一份完成的脚本,如果自己编译碰到问题可以参考这个脚本FFmpeg-iOS-build-script执行./build-ffmpeg.sh,会自动抓去依赖yasm:1.2.0,FFmpeg 4.3.1,gas-preprocessor.pl然后编译生成FFmpeg-iOS文件夹,内容如下:├原创 2021-03-15 20:42:32 · 515 阅读 · 0 评论 -
FFmpeg简介(一)
FFmpeg简介ffmpeg是一个非常快的视频/音频转换器,其也可以现场抓取音频/视频源,并在任意采样率、尺寸之间调整视频,以及提供多种高品质的滤镜系统。FFmpeg涉及的基本概念分辨率: 分辨率可以分为显示分辨率与图像分辨率.显示分辨率是指屏幕显示器的分辨率,是屏幕的像素(每一个像素 pixel是由多个颜色单元subPixel组成)密度决定的在单位英寸内像素越多,硬件所能控制的颜色点位越多,屏幕的显示的画面就会越精细。在手机参数一栏都会标有屏幕分辨率是多少。目前手机上常见的分辨率有720p,原创 2021-03-14 14:57:15 · 1522 阅读 · 0 评论