发布时间: 2019-11-29
发货 百度网盘 自动发货 时间 2020年 类型 会员打折
¥16.00
4.4分/7人
课程目标
基于c++编程,掌握录制视频(rtsp和系统相机)录制音频(qt)开发方法,掌握音视频各类参数含义,掌握音视频编码(h264+acc),磨皮美颜(opencv),音视频封装(flv),基于rtmp协议推流。掌握ffmpeg音视频时间换算和同步策略。掌握nginx-rtmp等直播服务器配置。
适用人群
想要学习音视频的技术的同学,或者有一定C/C++编程基础想要投入实战的同学
课程环境介绍
1.系统环境:windows10 ubuntu16.04
win7及以上系统即可,XP系统没有经过验证,开发使用框架都是跨平台,可以代码不调整直接修改项目配置移植到linux和Mac环境中。
直播服务器配置在ubuntu 16.04 64位的虚拟机中。
2.开发工具:vs2015
可以使用vs2013,尽量不要使用太低的版本,太低版本对C++11的特性支持不好,在linux上或者mac环境可以使用QTcreater。
3. 程序平台:x86 32位
可以使用64位,所有调用的第三方库都要保证是64位,arm平台可以直接移植,但需要编译ffmpeg、qt、opencv库源码。
4.开发库版本
QT 5.9 32位
FFmpeg 3.3 32位
Opencv 3.2 32位
课程介绍
1 基于c++编程,掌握录制视频(使用opencv支持rtsp和系统相机)录制音频(qt5)开发方法,掌握音视频各类参数含义,掌握音视频编码(h264+acc),磨皮双边滤波美颜(opencv),音视频封装(flv),基于rtmp协议推流。多线程处理技术各个模块交互。
2 掌握nginx-rtmp和crtmpserver的直播服务器配置。
3 课程讲解ffplay和html的flash插件播放直播.
4 基于c++语言的一些设计模式完成直播美颜推流项目。
课程目录
第1章课程介绍和基础知识24分钟3节
1-1课程介绍[免费试看]07:45
1-2直播推流流程分析讲解[免费试看]06:39
1-3直播rtmp协议分析[免费试看]10:08
第2章直播服务器讲解和配置41分钟4节
2-1直播服务器介绍crtmpserver编译运行(ubu[免费试看]12:57
2-2下载ffmpeg工具推流并使用功能vlc拉流播放测试08:06
2-3nginx-rtmp源码下载、编译运行(ubuntu)09:09
2-4nginx-rtmp直播和直播状态监听配置ffplay播放11:25
第3章FFMpegSDK解封和推流2小时7分钟7节
3-1ffmpegSDK开发环境准备,第一个ffmpeg项[免费试看]20:46
3-2初始化封装和网络库打开音视频流并打印调试信息18:29
3-3完成输出音视频流配置信息,使用ffmpeg新版本属性19:33
3-4打开rtmp推流输出并从文件读取音视频帧17:36
3-5AVPacket的pts运算并完成帧推送使用vlc测试10:49
3-6根据pts和系统记时控制推流速度_浏览器flash播放直播流15:25
3-7推流基于rtsp协议的大华海康相机24:58
第4章OpencvSDK基础45分钟5节
4-1opencv源码在windows下载编译安装07:53
4-2windows 上创建opencv示例项目12:04
4-3遍历修改连续的Mat图像空间10:50
4-4VideoCapture打开摄像头接口讲解和源码分析05:31
4-5读取一帧视频接口讲解和源码分析,分析读取解码和颜色转换过程09:20
第5章视频采集编码推流和类封装3小时53分钟15节
5-1opencv播放rtsp海康摄像头和播放系统摄像头16:17
5-2基于opencv采集rtsp流并使用异常处理失败流程19:07
5-3像素格式转换(RGBToYUV)上下文创建配置和清理20:34
5-4rgb转yuv空间分配和转换函数调用23:50
5-5查找编码器并创建编码器上下文12:34
5-6编码器参数配置(包括打开多线程编码)并打开编码器17:07
5-7视频帧编码并根据设置AVFrame的输入pts13:36
5-8创建封装器添加视频AVStream并设置参数12:40
5-9打开推流IO,发送封装头,计算pts完成帧推流15:14
5-10XMediaEndcode工厂生产方法创建11:16
5-11完成InitScale初始化像素格式转换接口10:18
5-12完成RGBToYUV接口封装并重构代码13:18
5-13完成视频编码器初始化InitVideoCodec接口封装09:53
5-14完成了视频编码接口并重构rtsp_to_rtmp代码11:55
5-15创建XRtmp接口类完成封装器接口25:26
第6章音频录制编码推流和类封装2小时28分钟12节
6-1QT5开发环境准备11:56
6-2音频基础知识音频参数分析12:38
6-3QT音频录制接口讲解并编写录制音频程序13:31
6-4音频重采样上下文创建和配置12:27
6-5音频重采样空间分配并完成重采样14:11
6-6音频编码器创建和参数设置12:13
6-7音频的pts运算音频数据编码测试07:38
6-8完成音频推流并测试12:52
6-9音频重采样XMediaEncode重采样接口封装代码重构20:20
6-10封装音频编码器设置接口重构视频编码器接口09:30
6-11完成音频编码接口封装和代码重构08:28
6-12完成音频推流接口XRtmp封装重构音频推流13:13
第7章音视频同步编码推流处理2小时38分钟11节
7-1封装音频XAudioRecord初始化和关闭接口14:23
7-2完成音频录制接口,录制缓冲队列处理22:27
7-3封装视频录制接口完成初始化和关闭接口13:33
7-4XDataThread数据处理线程类创建并实现13:19
7-5XAudioRecord集成数据基类重构12:52
7-6加入视频编码器和流11:06
7-7完成音视频推流封装处理未同步16:36
7-8音频推流同步策略分析08:37
7-9音视频同步时间计算代码分析第一部分28:57
7-10音视频同步二解决音频有相同pts情况09:36
7-11音视频同步三完成同步07:25
第8章XRtmpStreamer项目完成(界面和美颜)2小时22分钟10节
8-1磨皮双边滤波算法参数说明09:55
8-2双边滤波磨皮算法调用并测试性能14:52
8-3直播框架添加图像过滤XFilter接口并实现双边滤波磨皮类18:55
8-4直播框架添加美颜磨皮09:27
8-5XRtmpStreamer项目框架架构(类图)讲解06:30
8-6完成了XController音视频录制模块初始化16:13
8-7完成XController中的编码封装推流模块初始化17:24
8-8XController推流数据线程完成16:31
8-9QT直播推流项目完成界面设计14:18
8-10完成了qt项目直播推流18:36
课程大小
备注:(04)20191129编程开发