音视频相关文章总目录

为了方便各位观看,本文置顶,以目录形式汇集我写过的大部分音视频专题文章。之后文章更新,本目录也会同步更新。写得不好和零零散散的文章就不放在这里了😅 :

=================================================================

音视频入门基础:像素格式专题系列文章:

音视频入门基础:像素格式专题(1)------RGB简介

音视频入门基础:像素格式专题(2)------不通过第三方库将RGB24格式视频转换为BMP格式图片

音视频入门基础:像素格式专题(3)------FFmpeg源码解析BMP格式图片的底层实现原理

音视频入门基础:像素格式专题(4)------YUV简介

音视频入门基础:像素格式专题(5)------使用OpenGL实现yuv420p转rgb播放视频(三重纹理实现)

=================================================================

=================================================================

音视频入门基础:H.264专题系列文章:

通过本系列,可以对AnnexB包装的H.264格式有一个基本了解,学会如何阅读H.264官方文档,以及如何通过SPS中的属性得到视频信息:

音视频入门基础:H.264专题(1)------H.264官方文档下载

音视频入门基础:H.264专题(2)------使用FFmpeg命令生成H.264裸流文件

音视频入门基础:H.264专题(3)------EBSP, RBSP和SODB

音视频入门基础:H.264专题(4)------NALU Header:forbidden_zero_bit、nal_ref_idc、nal_unit_type简介

音视频入门基础:H.264专题(5)------FFmpeg源码中 解析NALU Header的函数分析

音视频入门基础:H.264专题(6)------FFmpeg源码:从H.264码流中提取NALU Header、EBSP、RBSP和SODB

音视频入门基础:H.264专题(7)------FFmpeg源码中 指数哥伦布编码的解码实现

音视频入门基础:H.264专题(8)------H.264官方文档的描述符

音视频入门基础:H.264专题(9)------SPS简介

音视频入门基础:H.264专题(10)------FFmpeg源码中,存放SPS属性的结构体和解码SPS的函数分析

音视频入门基础:H.264专题(11)------计算视频分辨率的公式

音视频入门基础:H.264专题(12)------FFmpeg源码中通过SPS属性计算视频分辨率的实现

音视频入门基础:H.264专题(13)------FFmpeg源码中通过SPS属性获取视频色彩格式的实现

音视频入门基础:H.264专题(14)------计算视频帧率的公式

音视频入门基础:H.264专题(15)------FFmpeg源码中通过SPS属性获取视频帧率的实现

音视频入门基础:H.264专题(16)------FFmpeg源码中,判断某文件是否为H.264裸流文件的实现

音视频入门基础:H.264专题(17)------FFmpeg源码获取H.264裸流文件信息(视频压缩编码格式、色彩格式、视频分辨率、帧率)的总流程

=================================================================

=================================================================

音视频入门基础:PCM专题系列文章:

音视频入门基础:PCM专题(1)------使用FFmpeg命令生成PCM音频文件并播放

音视频入门基础:PCM专题(2)------使用Qt播放PCM音频文件

音视频入门基础:PCM专题(3)------使用Audacity工具分析PCM音频文件

=================================================================

=================================================================

音视频入门基础:WAV专题系列文章:

FFmpeg这个库很大很重,所以很多同学会选择不依赖任何第三方库自己写解析媒体文件头的代码,可是自己写的解析demo真的比第三方库做得更好吗?比如WAV这种文件格式,它的文件头结构非常简单,但还存在可能包含扩展块和可选区块的情况;它可能遵守RIFF格式的规则,也可能遵守RIFX格式的规则;ACT音频格式可能会包含一个标准的WAV文件头所以要防止误判的情况;然后还有WAVE 64位扩展格式Wave64......自己写解析代码真的考虑清楚所有的情况了吗?所以在不完全了解清楚一种文件格式之前,参考FFmpeg等第三方库的解析部分是一个比较好的选择,本系列以WAV音频文件为例介绍如何对媒体文件的文件头进行解析:

音视频入门基础:WAV专题(1)------使用FFmpeg命令生成WAV音频文件

音视频入门基础:WAV专题(2)------WAV格式简介

音视频入门基础:WAV专题(3)------FFmpeg源码中,判断某文件是否为WAV音频文件的实现

音视频入门基础:WAV专题(4)------FFmpeg源码中获取WAV文件音频压缩编码格式、采样频率、声道数量、采样位数、码率的实现

音视频入门基础:WAV专题(5)------FFmpeg源码中解码WAV Header的实现

=================================================================

=================================================================

FFmpeg内存管理相关的源码分析:

FFmpeg内存管理使用了C语言的设计艺术,比如AVBufferRef和AVBuffer结构体模仿了C++,使用了引用计数来解决使用浅拷贝可能造成的资源重复释放问题,通过引入引用计数:增加一个变量(比如AVBuffer中的refcount),记录资源使用的次数,控制资源的释放:

FFmpeg中内存分配和释放相关的源码:av_malloc函数、av_mallocz函数、av_free函数和av_freep函数分析

FFmpeg引用计数数据缓冲区相关的结构体:AVBuffer、AVBufferRef简介

FFmpeg源码:buffer_create、av_buffer_create、av_buffer_default_free、av_buffer_alloc、av_buffer_allocz函数分析

FFmpeg源码:av_buffer_ref、av_buffer_unref函数分析

=================================================================

=================================================================

FFmpeg基本函数分析:

FFmpeg源码是由一个个基本函数组成的,了解了其基本函数,才能更好地理解FFmpeg源码:

FFmpeg源码:ff_ctz / ff_ctz_c函数分析

FFmpeg源码:get_bit_length函数分析

FFmpeg源码:av_gcd函数分析

=================================================================

=================================================================

FFmpeg宏定义分析:

FFmpeg源码:#define IMAGEAUTO_DEMUXER(imgname, codecid) 宏定义分析

FFmpeg源码:AV_RB32宏定义分析

FFmpeg源码:MKTAG和MKBETAG宏定义分析

=================================================================

相关推荐
换个昵称都难13 小时前
webrtc 音频模块FEC模块
网络·音视频·webrtc
qq_3665665014 小时前
视频配音自动化Pipeline:TTS选型+音色克隆+批量处理(附完整代码)
自动化·新媒体运营·音视频·音频
hz5678918 小时前
公安局远程办案用什么音视频系统?安全取证与多方协同方案
安全·架构·云计算·音视频·实时音视频·信息与通信
Championship.23.2418 小时前
Linux 3.0 音频机制深度解析:ALSA基础架构与传统音频驱动模型
linux·运维·音视频·alsa
VOOHU-沃虎19 小时前
PoE+音频一体化接口设计:从电源变压器到XLR卡侬座的完整链路
音视频
“码”力全开21 小时前
解密企业级智能视频中台:基于 Docker 与边缘计算的 GB28181/RTSP 异构架构设计(支持源码交付)
docker·音视频·边缘计算
潜创微科技21 小时前
QCW5007+QCW5004 | HDMI 1.3 无线投屏芯片方案空旷 150 米支持穿墙传输
音视频
MemoriKu1 天前
Flutter 相册 APP 视频模态稳定化实战:从视频抽帧、Embedding 元数据到 Android 真机启动修复
android·开发语言·前端·flutter·架构·音视频·embedding
EasyDSS1 天前
视频直播点播/高清点播/音视频点播/云点播/云直播EasyDSS一站式音视频平台助力智慧校园智能化建设
音视频
johnny2331 天前
视频创作工具:OpenCut、HyperFrames、social-auto-upload、OpenStoryline、ArcReel
音视频