【价值268】C++实战手把手教您用ffmpeg和QT开发播放器实战视频课程 附源码 87课

发布时间: 2019-11-29

发货 百度网盘 自动发货 时间 2020年 类型 会员打折

¥15.00

立即下载 加入收藏

5.0分/10人

升级会员组 享受更多优惠

自动发货

QQ截图20191129111246.png


QQ截图20191129111145.png

适用人群

有一定C或者C++基础,想要提高自己是实战能力学员

或者想要学习ffmpeg和qt的同学


课程概述

课程在2018年4月4日已经更新内容

开发工具:vs2015为主,最后移植到qtcreator和ubuntu下

前置知识:需要有c++基础,了解qt

课程购买后加入 462249121 群咨询课程中问题

这门课程给大家讲解的是基于当前最流行FFMpeg 3.3视频处理框架和最流行的QT5跨平台库。开发的一个完整的视频播放器,可不是基于视频播放控件开发,而是从底层全部实现。

         本课程从功能需求分析、基本原理讲解到代码实现演示,让您经历一个实际项目的全过程。

        特别适合有一定C或者C++基础,想要提高自己是实战能力学员,学完此门课,可以说你们项目经历里面就可以增加一项,开发过qt和ffmpeg的C++程序,实现了一个播放器的音视频全部功能。

       本课程同时也适合与想要学习ffmpeg和qt的同学,本课程学完之后你就已经将ffmpeg可以投入实际的项目应用,对于QT的基本原理你也非常清楚了,可以实现复杂的qt界面,您就可以独立开发出音视频的各种应用,包括无人机,安防,直播视频直播,视频会议,并能够开发出跨平台的应用。课程在windows中用vs演示讲解,课程最后讲解播放器代码移植到linux下。

课程目录

├─00.配套资料(代码、讲义)

│      00.配套资料(代码、讲义).rar

├─01.介绍

│      01.课程介绍

│      02.音视频基础知识mpeg4封装格式音视频编码格式讲解

│      03.音视频解封装和解码原理分析

│      04.图形像素格式RGB和YUV格式分析

│      05.PCM音频采样率_通道_planar等格式参数分析

├─02.Qt开发环境准备

│      07.QT开发环境下载和安装

│      08.QtSDK路径目录文件说明

│      09.创建第一个qtcreator项目_并确定文件和目录的作用

│      10.在linux中安装qt及其依赖并编写测试项目

│      11.windows下qtcreator调试环境安装配置使用

│      12.vs创建QT项目并详细介绍vs项目设置

│      13.VS设置qt库版本导出为qtcreator项目

├─03.FFmpeg编译和开发环境准备

│      14.windows下ffmpeg库下载安装方法和库文件说明

│      15.VS2015配置开发显示ffmpeg配置信息测试项目

│      16.VS2015配置32位和64位通用的ffmpeg测试程序

│      17.QtCreator配置32位和64位windows通用的ffmpeg测试程序

│      18.项目移植到ubuntu中并配置跨平台的pro文件

├─04.FFmpeg解封装

│      19.ffmpeg SDK软硬解码流程说明

│      20.ffmpeg音视频解封装用到的函数和结构体详解

│      21.avformat_open_input函数详解

│      23.AVFormatContext结构分析

│      24.avformat_close_input清理封装上下文

│      25.avformat_find_stream_info探测获取封装上下文的格式信息并打印

│      26.AVStream和AVCodecParameters分析

│      27.通过遍历获取AVStream音频流信息并打印参数

│      28. 通过遍历和av_find_best_stream方法获取视频流信息并打印参数.

│      29. av_read_frame读取帧数据函数分析和产生的空间问题分析

│      30. AVPacket结构解析空间申请-初始化-复制-引用计数函数讲解

│      31. av_seek_frame改变播放进度函数详解

│      32. av_read_frame和av_seek_frame代码示例并分析内存占用和清理情况

├─05.FFmepg解码和像素格式、音频采样转换

│      33.AVCodecContext解码上下文初始化讲解

│      34.音视频解码上下文创建配置和打开avcodec_open2打开演示

│      35.AVFrame格式解析和空间处理函数

│      36.avcodec_send_packet和avcodec_receive_frame函数讲解

│      37.avcodec_send_packet和avcodec_receive_frame音视频解码代码演示

│      38.sws_getContext和sws_scale像素格式和尺寸转换函数讲解

│      39.sws_getContext像素格式上下文初始化代码演示

│      40.sws_scale像素格式转换代码演示

│      41.音频重采样SwrContext格式和swr_convert相关函数详解

│      42. swr_init音频重采样上下文初始化和swr_convert音频重采样代码示例

├─06.XPlay2Qt音频及OpenGLShader显示YUV

│      43.Qt音频播放接口QAudioOutput详解

│      44.Qt播放音频代码演示(源码)

│      45.Qt的opengl编程分析及QOpenGLWidget使用方法

│      46.顶点和片元作色器原理讲解和yuv转rgb的glsl代码讲解

│      47.创建和显示材质glTexImage2D

│      48.创建QtOpengl项目提升窗口控件并重载QOpenGLWidget函数(源码)

│      49.shader代码并用QGLShaderProgram载入(源码)

│      50.写入顶点和材质坐标glVertexAttribPointer(源码)

│      51.完成材质的初始化和显存和内存空间分配glTexImage2D(源码)

│      52. 完成对yuv文件使用OpenGLShader播放(源码)

├─07.XPlay2.0播放器项目实战开发一

│      53.面向对象的五大原则

│      54.XPlay2.0项目类图分析

│      55.XDemu类Open接口开发并测试打开本地文件和香港卫视直播流(源码)

│      56.XDemu类Read接口开发测试并分析内存泄漏(源码)

│      57.AVCodecParameters音视频参数获取和复制(源码)

│      58.av_seek_frameXDemu类Seek接口和清理关闭接口完成(源码)

│      59.XDecode音视频解码器打开关闭和清理avcodec_open2(源码)

│      60.XDecode的音视频解码Send和Recv接口开发并测试(源码)

│      61.XVideoWidget初始化接口完成并测试调用(源码)

│      62. XVideoWidget显示完成并添加测试线程完成视频图像播放(源码)

├─08.XPlay2.0播放器项目实战开发二

│      63.XResample音频重采样Open和Close接口完成(源码)

│      64.XResample接口完成并添加测试代码(源码)

│      65.XAudioPlay音频播放接口Open和Close接口完成并测试(源码)

│      66.XAudioPlay音频接口完成并测试音频播放成功(源码)

│      67.XAudioThread打开音频解码、重采样、播放成功(源码)

│      68.XAudioThread缓冲队列Push完成

│      69.XAudioThread完成功能并编写测试代码(源码)

│      70.XVideoThread视频解码线程和显示接口完成并测试(源码)

│      71.XDemuxThread的Open接口完成

│      72. XDemuxThread音视频播放测试完成(源码)

└─09.XPlay2.0播放器项目实战开发三

        73.音视频同步策略分析并计算出当前音频播放的pts

        74.测试播放rtmp香港卫视直播解决视频显示的行对齐问题(源码)

        75.通过QT界面选择打开视频文件(源码)

        76.抽象出XDecodeThread类添加Push和Pop函数

        77.XDecodeThread添加Clear清理接口清理音视频线程的缓冲队列(源码)

        78.所有模块添加关闭线程和清理资源接口解决程序退出宕掉的bug(源码)

        79.使用VS的诊断工具查看内存泄漏并修正音频播放线程内存泄漏(源码)

        80.使用QSlider进度条显示播放的进度

        81.窗口尺寸变化和双击全屏播放视频(源码)

        82. 各个模块添加暂停功能SetPause完成音视频播放暂停(源码)

        83. 完成了Seek视频进度跳转到关键帧位置(源码)

        84. 完成了音视频Seek封装功能

        85. 重构XDemuxThread和XDecode和ffmpeg解耦合

        86. 重载XSlider解决滑动条拖动bug并支持点击转到指定播放位置(源码)

        87. 系统移植到ubuntu的linux64位环境编译运行(源码)

课程大小

QQ截图20191129111214.png

备注(4)20191129编程开发

版权信息:本站所有资源仅供学习与参考,请勿用于商业用途,如有侵犯您的版权,请及时联系客服,我们将尽快处理。
  • 低调**

    2月前低调**

    未评价,系统默认好评!

  • 浩*

    9月前浩*

    未评价,系统默认好评!

  • Ke***

    10月前Ke***

    未评价,系统默认好评!

  • ku**

    12月前ku**

    未评价,系统默认好评!

  • zglx****

    2020-02-10 20:24:47zglx****

    未评价,系统默认好评!

  • a9153*****

    2020-02-08 11:14:20a9153*****

    未评价,系统默认好评!

  • 深*

    2020-01-20 15:45:01深*

    未评价,系统默认好评!

  • csf0****

    2019-12-26 12:22:25csf0****

    未评价,系统默认好评!

更多评论

嘿,我来帮您!