导航
课程首页
  • PM-Summit 全球产品经理大会云会员
  • SDCon 全球软件研发技术大会云会员
  • ML-Summit 全球机器学习技术大会云会员
  • C++性能优化高端培训
  • AI全栈开发实战营
精品课 极客时间

AI 搜索

登录
登录后您可以:
  • 复制代码和一键运行
  • 与博主大V深度互动
  • 解锁海量精选资源
  • 获取前沿技术资讯
立即登录
会员中心
消息
历史
创作中心
创作
学习中心
成为讲师

基于qt和ffmpeg视频播放器开发实战 FFmpeg编译和开发环境准备 windows下ffmpeg库下载安装方法和库文件说明

基于qt和ffmpeg视频播放器开发实战
共126节 45523人在学 课程详情
课程目录
讨论留言
  • 课程介绍和环境准备

    • 课程介绍
    • 学习方法说明和课程代码下载演示
    • 音视频基础知识mpeg4封装格式音视频编码格式讲解
    • 音视频解封装和解码原理分析
    • 图形像素格式RGB和YUV格式分析
    • PCM音频采样率_通道_planar等格式参数分析
    • MP4标准和h264格式的NAL的GOP分析
    • QT开发环境下载和安装
    • QtSDK路径目录文件说明
    • 创建第一个qtcreator项目_并确定文件和目录的作用
    • 在linux中安装qt及其依赖并编写测试项目
    • windows下qtcreator调试环境安装配置使用
    • vs创建QT项目并详细介绍vs项目设置
    • VS设置qt库版本导出为qtcreator项目
  • FFmpeg编译和开发环境准备

    • windows下ffmpeg库下载安装方法和库文件说明
    • VS2015配置开发显示ffmpeg配置信息测试项目
    • VS2015配置32位和64位通用的ffmpeg测试程序
    • QtCreator配置32位和64位windows通用的ffmpeg测试程序
    • 项目移植到ubuntu中并配置跨平台的pro文件
  • FFmpeg解封装

    • ffmpeg SDK软硬解码流程说明
    • ffmpeg音视频解封装用到的函数和结构体详解
    • avformat_open_input函数详解
    • 初始化解封装使用avformat_open_input打开MP4文件,并设置延时等属性
    • AVFormatContext结构分析
    • avformat_close_input清理封装上下文
    • avformat_find_stream_info探测获取封装上下文的格式信息并打印
    • AVStream和AVCodecParameters分析
    • 通过遍历获取AVStream音频流信息并打印参数
    • 通过遍历和av_find_best_stream方法获取视频流信息并打印参数.
    • av_read_frame读取帧数据函数分析和产生的空间问题分析
    • AVPacket结构解析空间申请-初始化-复制-引用计数函数讲解
    • av_seek_frame改变播放进度函数详解
    • av_read_frame和av_seek_frame代码示例并分析内存占用和清理情况
  • FFmepg解码和像素格式、音频采样转换

    • AVCodecContext解码上下文初始化讲解
    • 音视频解码上下文创建配置和打开avcodec_open2打开演示
    • AVFrame格式解析和空间处理函数
    • avcodec_send_packet和avcodec_receive_frame函数讲解
    • avcodec_send_packet和avcodec_receive_frame完成音视频解码代码
    • sws_getContext和sws_scale像素格式和尺寸转换函数讲解
    • sws_getContext像素格式上下文初始化代码演示
    • sws_scale像素格式转换代码演示
    • 音频重采样SwrContext格式和swr_convert相关函数详解
    • swr_init音频重采样上下文初始化和swr_convert音频重采样代码示例
  • XPlay2 Qt音频及OpenGLShader显示YUV

    • Qt音频播放接口QAudioOutput详解
    • Qt播放音频代码演示(源码)
    • Qt的opengl编程分析及QOpenGLWidget使用方法
    • 顶点和片元作色器原理讲解和yuv转rgb的glsl代码讲解
    • 创建和显示材质glTexImage2D
    • 创建QtOpengl项目提升窗口控件并重载QOpenGLWidget函数(源码)
    • shader代码并用QGLShaderProgram载入(源码)
    • 写入顶点和材质坐标glVertexAttribPointer(源码)
    • 完成材质的初始化和显存和内存空间分配glTexImage2D(源码)
    • 完成对yuv文件使用OpenGLShader播放(源码)
  • XPlay2.0 播放器项目实战开发一

    • 面向对象的五大原则
    • XPlay2.0项目类图分析
    • XDemu类Open接口开发并测试打开本地文件和香港卫视直播流(源码)
    • XDemu类Read接口开发测试并分析内存泄露(源码)
    • AVCodecParameters音视频参数获取和复制(源码)
    • av_seek_frameXDemu类Seek接口和清理关闭接口完成(源码)
    • XDecode音视频解码器打开关闭和清理avcodec_open2(源码)
    • XDecode的音视频解码Send和Recv接口开发并测试(源码)
    • XVideoWidget初始化接口完成并测试调用(源码)
    • 不完整,已重新上传,等审核XVideoWidget显示完成并添加测试线程完成视频图像播放(源码)
    • (不用看,错误)XVideoWidget初始化接口完成并测试调用
    • XVideoWidget显示完成并添加测试线程完成视频图像播放
  • XPlay2.0 播放器项目实战开发二

    • XResample音频重采样Open和Close接口完成(源码)
    • XResample接口完成并添加测试代码(源码)
    • XAudioPlay音频播放接口Open和Close接口完成并添加测试代码(源码)
    • XAudioPlay音频接口完成并测试音频播放成功(源码)
    • XAudioThread打开音频解码、重采样、播放成功(源码)
    • XAudioThread缓冲队列Push完成
    • XAudioThread完成功能并编写测试代码(源码)
    • XVideoThread视频解码线程和显示接口完成并测试(源码)
    • XDemuxThread的Open接口完成
    • XDemuxThread音视频播放测试完成(源码)
  • XPlay2.0 播放器项目实战开发三

    • 音视频同步策略分析并计算出当前音频播放的pts
    • 测试播放rtmp香港卫视直播解决视频显示的行对齐问题(源码)
    • 通过界面选择打开视频文件(源码)
    • 抽象出XDecodeThread类添加Push和Pop函数
    • XDecodeThread添加Clear清理接口清理音视频线程的缓冲队列(源码)
    • 所有模块添加Close关闭线程和清理资源接口解决程序退出会宕掉的bug(源码)
    • 使用VS的诊断工具查看内存泄漏问题并修正音频播放线程内存泄漏(源码)
    • 使用QSlider进度条显示播放的进度
    • 窗口尺寸变化和双击全屏播放视频(源码)
    • 各个模块添加暂停功能SetPause完成音视频播放暂停
    • 完成了Seek视频进度跳转到关键帧位置(源码)
    • 完成了音视频Seek封装功能
    • 重构XDemuxThread和XDecode和ffmpeg解耦合
    • 重载XSlider解决滑动条拖动bug并支持点击滑动条转到指定播放位置(源码)
    • 系统移植到ubuntu的linux64位环境编译运行(源码)
  • XPlay1.0 课程

    • 本章都是XPlay1.0课程 qt开发环境准备
    • ffmpeg开发环境准备
    • 第一个例子,打开视频获取视频信息
    • 读取视频并分析视频包
    • 打开视频解码器
    • 视频解码并分析H264解码
    • 打开格式转换和缩放
    • 视频转RGB并缩放
    • 重构封装FFmpeg类完成打开和关闭视频接口
    • 重构读取视频帧接口
    • 重构解码接口
    • 重构ToRGB接口
    • 基于QT的播放器界面绘制
    • 通过QT显示转码后的RGB数据
    • 创建解码线程控制播放速度
    • 通过QT打开外部视频
    • 视频总时间显示
    • 视频播放的当前时间显示
    • 进度条显示播放进度
    • 进度条拖动控制播放位置
    • 控制视频的播放和暂停
    • 视频显示和窗口大小变化同步
    • 重载QT滑动条类鼠标点击移动滑动条并跳转到相应的视频位置
    • QT音频库介绍和示例
    • QT音频播放类封装
    • QT音频播放的启动和停止接口实现
    • QT音频播放暂停和缓冲写入接口实现
    • ffmpeg音频解码器打开
    • ffmpeg音频解码
    • ffmpeg音频重采样标准化音频的输出格式
    • 完成音视频的播放
    • 通过多线程和缓冲队列实现音视频同步播放
    • 本课程代码下载和目录结构说明
    • 课程总结和学习建议和老师联系方式
    • ubuntu下安装qt5.8并编译安装ffmpeg
    • 将XPLay播放器项目移植到ubuntu下并修正出现的声音问题
回复
切换为未回复评论
切换为时间正序
请发表友善的回复…
发表回复
发表回复
按下Enter换行,Ctrl+Enter发表内容
编辑
预览
    轻敲空格完成输入
    • 显示为
    • 卡片
    • 标题
    • 链接

    反馈

    播放页问题反馈
    视频学习中有任何产品建议都可由此反
    馈,我们将及时处理!

    课时介绍

    windows下ffmpeg库下载安装方法和库文件说明-FFmpeg编译和开发环境准备-基于qt和ffmpeg视频播放器开发实战

    课程介绍

    ffmpeg是世界上应用广的开源视频处理框架,在各个平台(windows,linux,嵌入式、Android、IOS)被广泛应用,可以说是做视频相关项目技能 qt是目前跨平台项目界面开发的第一选择,本课程基于这两种框架在加上VC++,给大家讲解延时如何开发出一个视频播放器,各个模块如何结合,如何考虑性能问题,如何设计封装类,如何处理各种异常情况。
    推荐课程

    信息系统项目管理师自考笔记

    李明 · 779人在学

    python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

    王先生 · 22279人在学

    手把手搭建Java超市管理系统【附源码】(毕设)

    汤小洋 · 4236人在学

    Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

    黄菊华 · 803人在学

    基于SSM酒店管理系统(毕设)

    小尼老师 · 852人在学

    java项目实战之购物商城(java毕业设计)

    Long · 5171人在学

    手把手搭建Java求职招聘系统【附源码】(毕设)

    汤小洋 · 1517人在学

    Python Django 深度学习 小程序

    钟翔 · 2346人在学

    城管局门前三包管理系统+微信小程序(vue+springboot)

    赖国荣 · 616人在学

    Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

    李杰 · 4017人在学

    正在试验
    后自动删除环境
    课程实验
    本次实验时间已到期 00:00:00

      订阅失败

      基于qt和ffmpeg视频播放器开发实战
      基于qt和ffmpeg视频播放器开发实战 ...

      订阅列表已满,请先移出部分订阅内容。

      当前章节需购买后观看
      开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
      提交答案

      购买课程

      扫码完成付费,可继续学习全部课程内容

      加载中...
      课件正在飞速打包中,请耐心等待几秒钟~

      视频问题反馈

      提交遇到的问题我们会尽快解决的 ~

      首页
      博客
      下载
      学习
      社区
      AI搜索
      GitCode
      InsCodeAI
      技术会议
      会员中心
      创作中心
      联系我们
      工作时间: 8:30 - 22:00
      客服电话: 400-660-0108
      kefu@csdn.net在线客服
      • 关于我们
      • 招贤纳士
      • 商务合作
      • 寻求报道
      • 京ICP备19004658号
      • 经营性网站备案信息
      • 公安备案号11010502030143
      • 营业执照
      • 北京互联网违法和不良信息举报中心
      • 家长监护
      • 中国互联网举报中心
      • 网络110报警服务
      • Chrome商店下载
      • 账号管理规范
      • 版权与免责声明
      • 版权申诉
      • 出版物许可证
      • ©1999-2025北京创新乐知网络技术有限公司