人工精选51CTO - C++音视频实战-FFmpeg基础到工程-多路H265监控录放开发
如果你做的是安防、车载、录播或者工业视觉方向的客户端,迟早会撞上同一类需求:同时拉多路摄像头,实时解码显示,还要能存下来、事后回放。这类活儿绕不开 FFmpeg,但网上零散教程大多停在"跑通一个命令""播一个本地文件",真到多路并发、H265、录像回放这些环节,坑得自己一个个踩。这门课就是冲着这个场
会员可免费下载本篇月会员可按日额度下载(每篇扣 1 次)。
开通会员 ›会员 A · 按档位折扣
会员 B
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
如果你做的是安防、车载、录播或者工业视觉方向的客户端,迟早会撞上同一类需求:同时拉多路摄像头,实时解码显示,还要能存下来、事后回放。这类活儿绕不开 FFmpeg,但网上零散教程大多停在"跑通一个命令""播一个本地文件",真到多路并发、H265、录像回放这些环节,坑得自己一个个踩。这门课就是冲着这个场景来的,主题是 C++ 下的 FFmpeg 音视频处理,落点放在多路 H265 监控的录与放。
它解决的是"能跑通"到"能交付"之间的那段
单路播放的 demo 谁都能写,难的是工程化:解码线程怎么和渲染、录像解耦,多路同时进来 CPU 怎么扛,H265 相比 H264 在解析和封装上多出哪些处理,录像文件怎么切、怎么按时间检索回放。课程把视频编码原理、像素格式转换、H264/H265 码流结构这些底层内容先讲清楚,再往多路处理和录放工程上推,目的不是让你背 API,而是让你遇到花屏、卡顿、时间戳错乱时知道从哪一层查。适合已经会 C++、能看懂基本多线程代码,但对音视频方向还没系统过一遍的人;纯零基础不建议直接上,会卡在编译和内存管理上。
建议的看课顺序
不用按目录从头刷。先过视频编码原理那部分,把 I 帧、P 帧、宏块、帧间预测这些概念建立起来,尤其是码流里 SPS、PPS、NALU 各自承担什么,这是后面解析 H265 的地基。接着看像素格式转换,YUV 各种排布和 RGB 之间的转换在实际工程里出现频率极高,画面颜色不对基本都是这里的问题。然后进入编码参数部分,ABR、CQP 这类码率控制方式各自适合什么场景,直接决定你录像文件的体积和画质取舍。最后才是多路处理与录放的综合实践,把前面的东西串起来。
学完能独立做什么,资料怎么用
比较现实的目标是:你能自己搭出一个支持多路 H265 接入的客户端,完成解码显示、按需录像、以及录像文件的回放定位,并且能根据现场反馈调整码率和缓冲策略。练习时别只看视频,每讲完一块就自己动手改一遍——比如把单路解码改成多路,观察线程和内存的变化;把 H264 的解析逻辑迁移到 H265,对比差异在哪。视频文件建议按主题分批看,编码原理和像素格式这两块可以反复回看,工程部分看一遍就动手,卡住了再回来查对应章节。这套资料的价值在于把工程里真实会遇到的细节讲到了,但前提是你愿意跟着敲代码,光看很难转化成手上的能力。
课程目录
第5章 FFmpeg视频编码原理和实战 (4小时26分钟 19节)185 集
- 5-13 H264码流中NALU_SPS_PPS_I.mp4
- [36.9 MB] 5-7 H264原理分析宏块划分_帧间预测I帧_.mp4
- [96.1 MB] 5-11 ABR平均比特率CQP恒定质量X264.mp4
- [71.4 MB] 5-2 视频编码原理概述.mp4
- [34.4 MB] 5-4 FFmpeg编码器获取和上下文打开.mp4
- [114.5 MB] 5-17 XEncode完成编码和AVFrame创.mp4
- [119.9 MB] 5-10 代码试验ultrafast最快编码.mp4
- [71.4 MB] 5-15 XEncode编码封装完成上下文创建码.mp4
- [71.0 MB] 5-5 完成了视频帧创建和编码.mp4
- [119.0 MB] 5-3 FFMpeg编码接口和AVPacket结构体详解.mp4
- [50.0 MB] 5-6 完成h264和h265编码并使用VLC测试播放.mp4
- [49.3 MB] 5-18 XEncode解决丢帧添加获取编码.mp4
- [49.7 MB] 5-16 XEncode添加线程安全锁并添加支持.mp4
- [82.8 MB] 5-19 总结_代码下载编译说明.mp4
- [18.4 MB] 5-14 代码测试解析出AVPacket中的.mp4
- [67.5 MB] 5-9 x264预设编码器preset_tune设置编码.mp4
- [38.1 MB] 5-12 CBR恒定比特率_CRF恒定速率因子.mp4
- [69.0 MB] 5-8 变换_量化和熵编码_变长和算数.mp4
- [46.3 MB] 5-1 学习引导和章节介绍必看.mp4
- [45.1 MB] 📁 第1章 开发环境准备和ffmpeg跨平台源码编译(2小时33分钟13节) 1-7 完成x265源码编译和安装.mp4
- [26.5 MB] 1-12 QT5.14安装和项目创建并切换不同的QT版本.mp4
- [71.4 MB] 1-6 完成音频编码fdk-aac源码编译和安装.mp4
- [34.2 MB] 1-10 Linux编译x264_x265_aac.mp4
- [36.5 MB] 1-1 音视频实训课程介绍.mp4
- [100.4 MB] 1-2 学习引导和章节介绍必看.mp4
- [54.6 MB] 1-3 环境准备步骤说明VS2019控制台和msys2运行.mp4
- [50.8 MB] 1-8 ffmpeg4.3在vs2019完成源码编译.mp4
- [74.8 MB] 1-5 完成x264源码编译和安装.mp4
- [34.6 MB] 1-11Linux编译ffmpeg4.3并编写测试程序.mp4
- [27.9 MB] 1-4 msys2使用pacman安装编译依赖工具.mp4
- [68.6 MB] 1-9 第一个vs2019ffmpeg项目创建和源码.mp4
- [105.6 MB] 1-13 章节总结和ffmpeg代码调试设置.mp4
- [47.5 MB] 📁 第13章 CMake自动构建FFmpeg6.0 (4小时41分钟 20节) 13-5 使用cmake自动解压SDL源码.mp4
- [56.9 MB] 13-13 实现cmake的build_and_install函数构建SDL.mp4
- [46.3 MB] 13-19 使用cmake自动部署xviewer包含自动复制QT动态库.mp4
- [109.1 MB] 13-15 实现cmake的config_and_build函数构建x264.mp4
- [72.5 MB] 13-3 创建批处理自动运行vs控制台和msys2.mp4
- [103.6 MB] 13-1 cmake构建ffmpeg6.0和课程项目说明.mp4
- [89.9 MB] 13-17 使用cmake构建xcodec.mp4
- [156.1 MB] 13-11 手动构建ffmpeg6.0.mp4
- [164.0 MB] 13-9 使用cmake自动化构建x265.mp4
- [56.7 MB] 13-10 使用cmake构建x264生成并执行shell.mp4
- [90.1 MB] 13-8 使用cmake自动化构建opus.mp4
- [40.4 MB] 13-16 使用cmake完成ffmpeg6.0的自动化构建.mp4
- [111.0 MB] 13-7 使用cmake自动化构建fdk-aac.mp4
- [59.3 MB] 13-12 准备好自动化构建的目录和文件.mp4
- [98.9 MB] 13-2 cmake_msys2_vs2022环境准备.mp4
- [92.4 MB] 13-6 使用cmake自动化构建和安装SDL.mp4
- [84.2 MB] 13-18 使用cmake构建xviewer支持QT.mp4
- [75.5 MB] 13-14 使用build_and_install构建x265_opus_fdk-acc.mp4
- [33.4 MB] 13-4 使用cmake分步骤手动构建SDL源码.mp4
- [104.8 MB] 13-20 一次性自动构建和安装ffmpeg和xviewer.mp4
- [68.6 MB] 📁 第4章 FFmpeg像素格式转换和多路YUV、RGB渲染 (2小时37分钟 11节) 4-3 像素格式转换YUV420P转换为RGBA.mp4
- [143.5 MB] 4-11 总结_代码下载编译说明和作业.mp4
- [72.5 MB] 4-7 完成多路XVideoView窗口初始化并生成测试.mp4
- [109.2 MB] 4-6 YUV_RGB播放器QT界面设计和打开文件处理.mp4
- [103.2 MB] 4-9 完成了支持YUV和RGB格式两路视频同时播放.mp4
- [67.3 MB] 4-4 sws_scale像素格式转换RGBA转.mp4
- [74.1 MB] 4-10 完成了两路视频帧率显示并能设置不同的播放帧率.mp4
- [65.8 MB] 4-8 XVideoView_Read接口读取像素数据.mp4
- [118.4 MB] 4-2 FFMpeg的像素格式转换接口解.mp4
- [36.2 MB] 4-5 多路YUV_RGB文件播放器需求和设计说明.mp4
- [25.3 MB] 4-1 学习引导和章节介绍必看.mp4
- [23.1 MB] 📁 第8章 FFmpeg解封装rtsp并录制视频 (4小时31分钟 16节) 8-12 完成通过责任链接收解封装AVPacket数据.mp4
- [65.0 MB] 8-5 ffmpeg的rtsp相关接口分析和多线程处理.mp4
- [24.3 MB] 8-1 学习引导和章节介绍必看.mp4
- [33.1 MB] 8-13 完成rtsp的多线程责任链解封装解码和渲染.mp4
- [133.1 MB] 8-4 大华和海康相机设置和rtsp协议抓包分析.mp4
- [119.0 MB] 8-2 使用VLC模拟一个rtsp服务器.mp4
- [14.4 MB] 8-7 开发XDemuTask线程类使用上下文的回调函数.mp4
- [188.8 MB] 8-3 RTSP协议详细分析包括鉴权协议分析.mp4
- [74.2 MB] 8-11 完成解码线程初始化和并实现线程t.mp4
- [146.4 MB] 8-6 完成XThread线程类的启动和安全退出.mp4
- [142.3 MB] 8-8 解封装rtsp断网或摄像机重启后自动重连处理.mp4
- [83.8 MB] 8-9 解封装解码线程责任链设计模式明.mp4
- [40.0 MB] 8-10 完成责任链代码和返回智能指针类型的解封装视频参数.mp4
- [120.6 MB] 8-14 封装音视频处理线程代码初始化传递音视频参数.mp4
- [182.5 MB] 8-16 总结和代码测试本地模拟rtsp.mp4
- [20.6 MB] 8-15 完成相机录制重新封装处理pts计算问题.mp4
- [137.0 MB] 📁 第6章 FFmpeg视频软解码和硬解码 (3小时5分钟 12节) 6-8 重构XEncode添加基类XCodec.mp4
- [144.1 MB] 6-9 完成XDecode解码支持硬解并做.mp4
- [64.6 MB] 6-1 学习引导和章节介绍必看.mp4
- [41.9 MB] 6-11 DXVA硬解到GPU不复制内存渲染代码实现.mp4
- [132.9 MB] 6-2 FFmpeg视频解码接口详细分析.mp4
- [40.1 MB] 6-4 基于ffmpeg接口完成视频解码.mp4
- [46.3 MB] 6-3 av_parser_parse2从h264文件.mp4
- [90.5 MB] 6-5 完成解码视频渲染并测试多线解码帧率.mp4
- [59.1 MB] 6-10 DXVA硬解码到GPU不复制到内存.mp4
- [50.3 MB] 6-12 总结和作业要求.mp4
- [12.8 MB] 6-7 修改XVideoView支持渲.mp4
- [151.5 MB] 6-6 完成硬件GPU加速解码DXVA2.mp4
- [117.3 MB] 📁 第11章 XViewer 0.2版本 (2小时9分钟 6节) 11-1 学习引导和章节介绍必看.mp4
- [10.2 MB] 11-5 完成音视频的暂停和播放.mp4
- [162.1 MB] 11-6 完成SEEK进度条控制播放进度.mp4
- [149.3 MB] 11-3 完成QT界面设置音视频播放速度.mp4
- [100.3 MB] 11-2 xviewer0.2监控工具支持音视频同步播放.mp4
- [221.3 MB] 11-4 完成QT进度条显示视频播放进度.mp4
- [129.4 MB] 📁 第9章 XViewer多路H265监控录放系统0.1版本开发 (7小时43分钟 24节) 9-18 回放界面设计并实现与预览界面的切换按钮.mp4
- [114.4 MB] 9-10 完成相机配置读取和列表显示列表显示.mp4
- [97.1 MB] 9-5 XViewer窗口自定义标题_关闭_最小化按钮.mp4
- [141.2 MB] 9-3 XCodec封装音视频编解码和渲染的动态链接库编.mp4
- [121.8 MB] 9-1 学习引导和章节介绍必看.mp4
- [32.4 MB] 9-13 通过QListWidget拖拽实现指定播放.mp4
- [100.5 MB] 9-15 多路音视频录制模块设计说明.mp4
- [149.5 MB] 9-24 总结和XViewer0.1编码和准备发布版本.mp4
- [85.4 MB] 9-4 预览界面设计说明XViewer项目创建标.mp4
- [64.9 MB] 9-9 XCameraConfig持久化写入和读取文件.mp4
- [66.9 MB] 9-16 定时创建新的视频文件并解决录制文件开发花屏问题.mp4
- [139.4 MB] 9-22 添加回放日历中的视频播放器.mp4
- [117.3 MB] 9-8 完成摄像机管理的数据的增删改模型层代码.mp4
- [185.3 MB] 9-6 XViewer窗口布局设计和窗口最大化和恢复处理.mp4
- [157.2 MB] 9-2 XViewer多路H265监控录放开发项目.mp4
- [91.3 MB] 9-23 完成回放视频播放器的播放速度控制.mp4
- [84.8 MB] 9-14 通过拖拽配置完成多窗口rtsp相机的渲染.mp4
- [134.8 MB] 9-11 代码生成新增摄像机配置界面.mp4
- [115.4 MB] 9-12 完成摄像机管理的修改和删除功能.mp4
- [103.6 MB] 9-21 点击视频时间列表获取视频绝对路径.mp4
- [62.3 MB] 9-19 自定义日历控件显示有视频日期继承.mp4
- [107.6 MB] 9-20 点击摄像机刷新日历改变有视频文件日期的背景.mp4
- [149.3 MB] 9-17 多路相机录制界面交互功能完成.mp4
- [128.6 MB] 9-7 右键菜单调整预览窗口数量1_4_9_16通过t.mp4
- [164.4 MB] 📁 第2章 图像格式_基于QT和SDL渲染(3小时57分钟16节) 2-13 渲染画面随着窗口大小自动缩放并解决锯齿问题.mp4
- [65.0 MB] 2-10 XVideoView工厂模式封装SDL接口设计.mp4
- [115.9 MB] 2-12 完成XSDL渲染Draw接口并测试渲染.mp4
- [56.5 MB] 2-9 使用SDL_QT直接播放渲染YUV格式文件.mp4
- [69.5 MB] 2-3 合并两幅图像并使用SDL_QT渲染和保持.mp4
- [15.3 MB] 2-6 SDL渲染RGB数据到QT的控件中通过定时器刷新.mp4
- [147.4 MB] 2-15 总结_代码下载编译说明和作业.mp4
- [51.6 MB] 2-4 SDL2源码编译安装和渲染视频接口详解.mp4
- [37.2 MB] 2-14 完成XSDL资源清理接口接收窗口退出事件放.mp4
- [100.9 MB] 2-11 XSDL封装完成窗口渲染器和材质的初始化.mp4
- [161.4 MB] 2-7 合并两幅图像法使用SDL渲染并用QT保存文件.mp4
- [115.5 MB] 2-1 学习引导和章节介绍必看.mp4
- [32.9 MB] 2-8 YUV格式详解并使用ffmpeg生成yuv文件.mp4
- [34.2 MB] 2-5 SDL2渲染RGB数据画面定时变化.mp4
- [140.4 MB] 2-2 RGB像素格式原理讲解并使用QT渲染RGB数据.mp4
- [108.2 MB] 📁 第7章 FFmpeg封装和解封装 (5小时13分钟 14节) 7-14 总结和代码说明.mp4
- [12.5 MB] 7-5 完成解封装后对视频进行解码和渲染代码.mp4
- [114.2 MB] 7-3 FFmpeg解封装流程和接口详解.mp4
- [57.6 MB] 7-7 av_seek_frame控制播放进度函数详解.mp4
- [29.1 MB] 7-12 根据输入的文件名和时间参数完成截断视频功能.mp4
- [221.4 MB] 7-11 完成封装代码重构XMux并测试重新封装音视频文件(8.15).mp4
- [211.5 MB] 7-2 封装分析和MP4封装格式详解.mp4
- [52.8 MB] 7-6 封装流程分析ffmpeg封装文件接口详解.mp4
- [71.6 MB] 7-13 完成视频重编码为h265并写重新封装MP4.mp4
- [208.6 MB] 7-8 完成重封装mp4文件测试基本代码.mp4
- [142.9 MB] 7-9 重封装剪切中间10秒视频并重新计算pts_dts.mp4
- [145.2 MB] 7-4 FFmpeg解封装代码示例并区分音频视频包.mp4
- [146.6 MB] 7-10 完成XFormat和XDemux重构解封装.mp4
- [250.1 MB] 7-1 学习引导和章节介绍必看.mp4
- [27.1 MB] 📁 第12章 ffmpeg_gsoap_onvif探测和预览onvif协议 (3小时33分钟 13节) 12-3 Onvif协议分析和测试工具使用.mp4
- [115.8 MB] 12-8 完成gsoap的onvif_discovery.mp4
- [110.5 MB] 12-1 第十二章学习引导和章节介绍必看.mp4
- [18.1 MB] 12-9 封装gsoap代码使用c++调用重构设备探测.mp4
- [115.9 MB] 12-11 完成onvif鉴权和获取媒体信息.mp4
- [88.8 MB] 12-10 完成鉴权并获取onvif设备能力.mp4
- [144.0 MB] 12-7 初始化和清理相机探测probe的soap消息头.mp4
- [164.3 MB] 12-12 完成onvif的rtsp地址获取.mp4
- [107.8 MB] 12-2 修正无法删除摄像机和修改线程退出函数后录制.mp4
- [57.5 MB] 12-6 创建第一个test_onvif项目.mp4
- [68.1 MB] 12-4 gsoap的wsdl2h_vs2019.mp4
- [123.0 MB] 12-5 生成支持鉴权的onvif代码gsoap.mp4
- [81.4 MB] 12-13 基于gsoap的ffmpeg预览onvif.mp4
- [69.1 MB] 📁 第3章 FFmpeg AVFrame视频渲染 (2小时28分钟 9节) 3-2 AVFrame结构体和相关ffmpeg接口详解.mp4
- [43.9 MB] 3-8 渲染界面中添加显示fps和设置fps的控件.mp4
- [43.8 MB] 3-1 学习引导和章节介绍必看.mp4
- [35.1 MB] 3-4 读取YUV数据到AVFrame并添加渲染e.mp4
- [172.8 MB] 3-5 视频帧率详解帧率控制策略分析和sleep时间.mp4
- [26.0 MB] 3-3 测试AVFrame的空间分配引用计数接口齐.mp4
- [94.2 MB] 3-7 多线程控制帧率渲染AVFrame的YUV数据.mp4
- [223.9 MB] 3-6 测试sleep和wait的精确度并实现精确控制.mp4
- [94.8 MB] 3-9 总结_代码下载编译说明和作业.mp4
- [22.2 MB] 📁 第10章 音频原理_ffmpeg&SDL播放音视频同步 (4小时4分钟 12节) 10-5 完成了XAudioPlay类的单件模式初始化.mp4
- [103.3 MB] 10-9 音视频同步_初始化_渲染播放和时间.mp4
- [45.5 MB] 10-8 mp4中音频解码解封装手动转换平面格式.mp4
- [307.2 MB] 10-2 音频核心基础声波频率_采样频率_采样大小.mp4
- [38.5 MB] 10-6 完成XAudioPlay播放音频通过缓冲队.mp4
- [128.0 MB] 10-3 PCM格式_音频编码分析_SDL音频.mp4
- [32.3 MB] 10-11 完成音视频文件多线程同步播放.mp4
- [279.3 MB] 10-10 音视频播放XPlayer视频打开和线程初始化.mp4
- [125.1 MB] 10-1 学习引导和章节介绍必看.mp4
- [30.0 MB] 10-12 章总结和代码说明.mp4
- [8.4 MB] 10-4 完成SDL播放PCM音频文件项目.mp4
- [135.8 MB] 10-7 音频播放音量和播放速度_慢放.mp4
- [75.6 MB] 适合人群 音视频开发工程师 移动应用开发者 对音视频处理感兴趣的爱好者 学习收获 掌握FFmpeg音视频处理原理 学会音视频编码与解码 能够开发音视频处理应用 祝您学习愉快! 学有所成,前程似锦!





