C++编程FFMpeg实时美颜直播推流实战-基于ffmpeg,qt5,opencv-2018Udemy
〖课程介绍〗:
适用人群mt.1x.net
想要学习音视频的技术的同学,或者有一定C/C++编程基础想要投入实战的同学
课程概述
基于c++编程,掌握录制视频(使用opencv支持rtsp和系统相机)录制音频(qt5)开发方法,掌握音视频各类参数含义,掌握音视频编码(h264+acc),磨皮双边滤波美颜(opencv),音视频封装(flv),基于rtmp协议推流。多线程处理技术各个模块交互。mt.1x.net
掌握nginx-rtmp和crtmpserver的直播服务器配置。
基于c++语言的一些设计模式完成直播美颜推流项目。
mt.1x.net
课程环境介绍
1.系统环境:windows10 ubuntu16.04
win7及以上系统即可,XP系统没有经过验证,开发使用框架都是跨平台,可以代码不调整直接修改项目配置移植到linux和Mac环境中。
直播服务器配置在ubuntu 16.04 64位的虚拟机中。
mt.1x.net
2.开发工具:vs2015
可以使用vs2013,尽量不要使用太低的版本,太低版本对C++11的特性支持不好,在linux上或者mac环境可以使用QTcreater。
3. 程序平台:x86 32位mt.1x.net
可以使用64位,所有调用的第三方库都要保证是64位,arm平台可以直接移植,但需要编译ffmpeg、qt、opencv库源码。mt.1x.net
4.开发库版本
QT 5.9 32位
FFmpeg 3.3 32位
Opencv 3.2 32位
〖课程目录〗:
章节1:课程介绍和基础知识
课时1直播推流流程分析讲解06:39mt.1x.net
课时2直播rtmp协议分析10:08
课时3ffmpegRTMP直播推流课程介绍07:45
章节2:直播服务器讲解和配置
课时4直播服务器介绍crtmpserver编译运行(ubuntu)12:57
课时5下载ffmpeg工具推流并使用功能vlc拉流播放测试08:06
课时6nginx-rtmp源码下载、编译运行(ubuntu)09:10
课时7nginx-rtmp直播和直播状态监听配置并使用ffplay播放直播流11:25mt.1x.net
章节3:FFMpegSDK解封和推流
课时8ffmpegSDK开发环境准备,第一个ffmpeg项目创建20:46mt.1x.net
课时9初始化封装和网络库、打开音视频流并打印调试信息18:29
课时10完成输出音视频流配置信息,使用ffmpeg新版本属性19:33mt.1x.net
课时11打开rtmp推流输出并从文件读取音视频帧17:36mt.1x.net
课时12AVPacket的pts运算并完成帧推送使用vlc测试10:50mt.1x.net
课时13根据pts和系统记时控制推流速度_浏览器flash播放直播流15:25mt.1x.net
课时14推流基于rtsp协议的大华海康相机24:58mt.1x.net
章节4:OpencvSDK基础mt.1x.net
课时15opencv源码在windows下载编译安装07:53mt.1x.net
课时16windows 上创建opencv示例项目12:03
课时17遍历修改连续的Mat图像空间10:50mt.1x.net
课时18VideoCapture打开摄像头接口讲解和源码分析05:31mt.1x.net
课时19读取一帧视频接口讲解和源码分析,分析读取解码和颜色转换过程 09:21
章节5:视频采集编码推流和类封装
课时20opencv播放rtsp海康摄像头和播放系统摄像头 16:18
课时21基于opencv采集rtsp流并使用异常处理失败流程19:07mt.1x.net
课时22像素格式转换(RGBToYUV)上下文创建配置和清理20:34
课时23rgb转yuv空间分配和转换函数调用 23:50mt.1x.net
课时24查找编码器并创建编码器上下文12:34
课时25编码器参数配置(包括打开多线程编码)并打开编码器17:07mt.1x.net
课时26视频帧编码并根据设置AVFrame的输入pts13:36
课时27创建封装器添加视频AVStream并设置参数12:40mt.1x.net
课时28打开推流IO,发送封装头,计算pts完成帧推流15:15mt.1x.net
课时29XMediaEndcode工厂生产方法创建 11:16
课时30完成InitScale初始化像素格式转换接口10:18
课时31完成RGBToYUV接口封装并重构代码13:18
课时32完成视频编码器初始化InitVideoCodec接口封装09:54
课时33完成了视频编码接口并重构rtsp_to_rtmp代码 11:55
课时34创建XRtmp接口类和工厂方法完成封装器初始化25:26mt.1x.net
章节6:音频录制编码推流和类封装
课时35QT5开发环境准备11:57
课时36音频基础知识音频参数分析12:39
课时37QT音频录制接口讲解并编写录制音频程序13:31
课时38音频重采样上下文创建和配置12:27
课时39音频重采样空间分配并完成重采样14:11
课时40音频编码器创建和参数设置12:13mt.1x.net
课时41音频的pts运算音频数据编码测试07:38
课时42完成音频推流并测试12:52
课时43音频重采样XMediaEncode重采样接口封装代码重20:20
课时44封装音频编码器设置接口重构视频编码器接口09:30mt.1x.net
课时45完成音频编码接口封装和代码重构08:28mt.1x.net
课时46完成音频推流接口XRtmp封装重构音频推流13:13
章节7:音视频同步编码推流处理
课时47封装音频XAudioRecord初始化和关闭接口14:23
课时48完成音频录制接口,录制缓冲队列处理22:27
课时49封装视频录制接口完成初始化和关闭接口13:33mt.1x.net
课时50XDataThread数据处理线程类创建并实现13:19
课时51XAudioRecord集成数据基类重构12:52
课时52加入视频编码器和流11:06
课时53完成音视频推流封装处理未同步16:37
课时54音频推流同步策略分析08:37mt.1x.net
课时55音视频同步时间计算代码分析第一部分28:58
课时56音视频同步二解决音频有相同pts情况09:36
课时57音视频同步三完成同步07:26
章节8:XRtmpStreamer项目完成(界面和美颜)mt.1x.net
课时58磨皮双边滤波算法参数说明09:56mt.1x.net
课时59双边滤波磨皮算法调用并测试性能14:53
课时60直播框架添加图像过滤XFilter接口并实现双边18:56
课时61直播框架添加美颜磨皮09:27
课时62项目框架架构(类图)讲解06:31
课时63完成了XController音视频录制模块初始化16:13mt.1x.net
课时64完成XController中的编码封装推流模块初始化17:24mt.1x.net
课时65XController推流数据线程完成16:32
课时66QT直播推流项目完成界面设计14:18mt.1x.net
课时67完成了qt项目直播推流18:36mt.1x.net
〖百度网盘下载地址〗:
---------------------------------华丽分割线--------------------------------华丽分割线-------------------华丽分割线-------------------------华丽分割线----------------
〖下载地址失效反馈〗:
如果下载地址失效,请尽快反馈给我们,我们尽快修复。反馈地址:https://www.itmsf.com/forum-66-1.html
〖赞助VIP免学币下载全站资源〗:
全站资源高清无密,每天更新,vip特权了解一下:https://www.itmsf.com/plugin.php?id=threed_vip
〖客服24小时咨询〗:
有任何问题,请点击右侧QQ咨询。
|