FFmpeg 4.3 音视频基础到工程应用

FFmpeg 4.3 音视频基础到工程应用
共184节 3701人在学 课程详情
  • 开发环境准备

    • FFmpeg 4.3 音视频课程介绍
    • 学习引导和章节介绍必看
    • 环境准备步骤说明VS2019控制台和msys2运行环境准备
    • msys2使用pacman安装编译依赖工具
    • 完成x264源码编译和安装
    • 完成x265源码编译和安装
    • 完成音频编码fdk-aac源码编译和安装
    • ffmpeg4.3在vs2019完成源码编译
    • 第一个vs2019ffmpeg项目创建和源码pdb调试设置
    • Linux编译x264_x265_aac
    • Linux编译ffmpeg4.3并编写测试程序makefile
    • QT5.14安装和项目创建并切换不同的QT版本
    • 章节总结和ffmpeg代码调试设置
  • 图像格式_基于QT和SDL渲染

    • 学习引导和章节介绍必看
    • RGB像素格式原理讲解并使用QT渲染RGB数据
    • 合并两幅图像并使用SDL_QT渲染和保持的案例技术分析
    • SDL2源码编译安装和渲染视频接口详解
    • SDL2渲染RGB数据画面定时变化
    • SDL渲染RGB数据到QT的控件中通过定时器刷新
    • 合并两幅图像法使用SDL渲染并用QT保存文件
    • YUV格式详解并使用ffmpeg生成yuv文件
    • 使用SDL_QT直接播放渲染YUV格式文件
    • XVideoView工厂模式封装SDL接口设计和代码实现
    • XSDL封装完成窗口渲染器和材质的初始化
    • 完成XSDL渲染Draw接口并测试渲染YUV420数据
    • 渲染画面随着窗口大小自动缩放并解决锯齿问题
    • 完成XSDL资源清理接口接收窗口退出事件并自动处理窗口缩放
    • 章总结_代码下载编译说明和作业
  • FFmpeg AVFrame视频渲染

    • 学习引导和章节介绍必看
    • AVFrame结构体和相关ffmpeg接口详解
    • 测试AVFrame的空间分配引用计数接口并测试字节对齐
    • 读取YUV数据到AVFrame并添加渲染AVFrame的接口
    • 视频帧率详解帧率控制策略分析和sleep时间不准的问题分析
    • 测试sleep和wait的精确度并实现精确控制帧率的MSleep
    • 多线程控制帧率渲染AVFrame的YUV数据
    • 渲染界面中添加显示fps和设置fps的控件完成设置渲染帧率
    • 章总结_代码下载编译说明和作业
  • FFmpeg像素格式转换和多路YUV、RGB渲染

    • 学习引导和章节介绍必看
    • FFMpeg的像素格式转换接口sws_scale详解
    • 像素格式转换YUV420P转换为RGBA并写入文件
    • sws_scale像素格式转换RGBA转YUV420P
    • 多路YUV_RGB文件播放器需求和设计说明
    • YUV_RGB播放器QT界面设计和打开文件处理
    • 完成多路XVideoView窗口初始化并生成测试的YUV和RGB文件
    • XVideoView_Read接口读取像素数据并初始化AVFrame空间
    • 完成了支持YUV和RGB格式两路视频同时播放
    • 完成了两路视频帧率显示并能设置不同的播放帧率
    • 章总结_代码下载编译说明和作业
  • FFmpeg视频编码原理和实战

    • 学习引导和章节介绍必看
    • 视频编码原理概述
    • FFMpeg编码接口和AVPacket结构体详解
    • FFmpeg编码器获取和上下文打开
    • 完成了视频帧创建和编码
    • 完成h264和h265编码并使用VLC测试播放
    • H264原理分析宏块划分_帧间预测I帧_帧内预测P帧和B帧_GOP
    • 变换_量化和熵编码_变长和算数编码CABAC分析
    • x264预设编码器preset_tune设置编码速度和质量
    • 代码试验ultrafast最快编码和zerolatency零延时参数设定
    • ABR平均比特率CQP恒定质量X264和x265QP参数选择试验
    • CBR恒定比特率_CRF恒定速率因子_VBV代码测试
    • H264码流中NALU_SPS_PPS_IDR帧的分析
    • 代码测试解析出AVPacket中的NALU类型SPS_PPS和IDR
    • XEncode编码封装完成上下文创建和测试代码
    • XEncode添加线程安全锁并添加支持crf参数的设置
    • XEncode完成编码和AVFrame创建接口封装
    • XEncode解决丢帧添加获取编码缓冲区接口_编码封装完成
    • 章总结_代码下载编译说明
  • FFmpeg视频软解码和硬解码

    • 学习引导和章节介绍必看
    • FFmpeg视频解码接口详细分析
    • av_parser_parse2从h264文件中截取AVPacket
    • 基于ffmpeg接口完成视频解码
    • 完成解码视频渲染并测试多线解码帧率
    • 完成硬件GPU加速解码DXVA2并测试CPU使用率和帧率
    • 修改XVideoView支持渲染硬解码NV12格式数据
    • 重构XEncode添加基类XCodec并完成XDecode封装
    • 完成XDecode解码支持硬解并做了播放测试
    • DXVA硬解码到GPU不复制到内存直接渲染原理和接口分析
    • DXVA硬解到GPU不复制内存渲染代码实现
    • 章总结和作业要求
  • FFmpeg封装和解封装

    • 学习引导和章节介绍必看
    • 封装分析和MP4封装格式详解
    • FFmpeg解封装流程和接口详解
    • FFmpeg解封装代码示例并区分音频视频包
    • 完成解封装后对视频进行解码和渲染代码
    • 封装流程分析ffmpeg封装文件接口详解
    • av_seek_frame控制播放进度函数详解
    • 完成重封装mp4文件测试基本代码
    • 重封装剪切中间10秒视频并重新计算pts_dts
    • 完成XFormat和XDemux重构解封装并测试接口
    • 完成封装代码重构XMux并测试重新封装音视频文件
    • 根据输入的文件名和时间参数完成截断视频功能
    • 完成视频重编码为h265并写重新封装MP4
    • 章总结和代码说明
  • FFmpeg解封装rtsp并录制视频

    • 学习引导和章节介绍必看
    • 使用VLC模拟一个rtsp服务器
    • RTSP协议详细分析包括鉴权协议分析
    • 大华和海康相机设置和rtsp协议抓包分析
    • ffmpeg的rtsp相关接口分析和多线程处理解封装说明
    • 完成XThread线程类的启动和安全退出_XLOG日志宏代码
    • 开发XDemuTask线程类使用上下文的回调函数实现超时退出AVIOInterruptCB
    • 解封装rtsp断网或摄像机重启后自动重连处理
    • 解封装解码线程责任链设计模式和线程安全的list类图设计说明
    • 完成责任链代码和返回智能指针类型的解封装视频参数
    • 完成解码线程初始化和并实现线程安全的XAVPacketList
    • 完成通过责任链接收解封装AVPacket数据并解码视频
    • 完成rtsp的多线程责任链解封装解码和渲染
    • 封装音视频处理线程代码初始化传递音视频参数
    • 完成相机录制重新封装处理pts计算问题
    • 章总结和代码测试本地模拟rtsp
  • XViewer多路H265监控录放0.1版本项目开发

    • 学习引导和章节介绍必看
    • XViewer多路H265监控录放开发项目需求文档详细分析
    • XCodec封装音视频编解码和渲染的动态链接库编译和测试
    • 预览界面设计说明XViewer项目创建和配置并设置程序图标
    • XViewer窗口自定义标题_关闭_最小化按钮和窗口拖动的鼠标事件处理
    • XViewer窗口布局设计和窗口最大化和恢复处理
    • 右键菜单调整预览窗口数量1_4_9_16通过QGridLayout
    • 完成摄像机管理的数据的增删改模型层代码
    • XCameraConfig持久化写入和读取文件中的摄像机配置
    • 完成相机配置读取和列表显示列表显示
    • 代码生成新增摄像机配置界面_并使用qss设置按钮样式
    • 完成摄像机管理的修改和删除功能
    • 通过QListWidget拖拽实现指定播放rtsp和窗口
    • 通过拖拽配置完成多窗口rtsp相机的渲染
    • 多路音视频录制模块设计说明和XCameraRecord录制测试
    • 定时创建新的视频文件并解决录制文件开发花屏问题
    • 多路相机录制界面交互功能完成
    • 回放界面设计并实现与预览界面的切换按钮
    • 自定义日历控件显示有视频日期继承QCalendarWidget
    • 点击摄像机刷新日历改变有视频文件日期的背景
    • 点击视频时间列表获取视频绝对路径
    • 添加回放日历中的视频播放器
    • 完成回放视频播放器的播放速度控制_项目0.1版本完成
    • 章总结和XViewer0.1编码和准备发布版本
  • 音频原理_ffmpeg&SDL播放音视频同步

    • 学习引导和章节介绍必看
    • 音频核心基础声波频率_采样频率_采样大小_信噪比_多通道平面存储
    • PCM格式_音频编码分析_SDL音频播放接口介绍
    • 完成SDL播放PCM音频文件项目
    • 完成了XAudioPlay类的单件模式初始化
    • 完成XAudioPlay播放音频通过缓冲队列传递数据
    • 音频播放音量和播放速度_慢放和快放音频处理
    • mp4中音频解码解封装手动转换平面格式并使用用SDL播放
    • 音视频同步_初始化_渲染播放和时间同步协作图分析
    • 音视频播放XPlayer视频打开和线程初始化
    • 完成音视频文件多线程同步播放
    • 章总结和代码说明
  • XViewer 0.2版本

    • 习引导和章节介绍必看
    • xviewer0.2监控工具支持音视频同步播放
    • 完成QT界面设置音视频播放速度_慢放和快放
    • 完成QT进度条显示视频播放进度
    • 完成音视频的暂停和播放
    • 成SEEK进度条控制播放进度
    • 修正无法删除摄像机和修改线程退出函数后录制回放出错_日历样式和布局
  • ffmpeg_gsoap_onvif探测和预览onvif协议

    • 学习引导和章节介绍必看
    • Onvif协议分析和测试工具使用
    • gsoap的wsdl2h_vs2019支持ssl编译和运行测试
    • 生成支持鉴权的onvif代码gsoap的soapcpp2使用
    • 创建第一个test_onvif项目
    • 初始化和清理相机探测probe的soap消息头
    • 完成gsoap的onvif_discovery探测设备
    • 封装gsoap代码使用c++调用重构设备探测
    • 完成鉴权并获取onvif设备能力GetCapabilities
    • 完成onvif鉴权和获取媒体信息GetProfiles
    • 完成onvif的rtsp地址获取GetStreamUri
    • 基于gsoap的ffmpeg预览onvif摄像机设备代码
  • CMake自动构建FFmpeg6.0

    • cmake构建ffmpeg6.0和课程项目说明
    • cmake_msys2_vs2022环境准备
    • 创建批处理自动运行vs控制台和msys2
    • 使用cmake分步骤手动构建SDL源码
    • 使用cmake自动解压SDL源码
    • 使用cmake自动化构建和安装SDL
    • 使用cmake自动化构建fdk-aac
    • 使用cmake自动化构建opus
    • 使用cmake自动化构建x265
    • 使用cmake构建x264生成并执行shell
    • 手动构建ffmpeg6.0
    • 准备好自动化构建的目录和文件
    • 实现cmake的build_and_install函数构建SDL
    • 使用build_and_install构建x265_opus_fdk-acc
    • 实现cmake的config_and_build函数构建x264
    • 使用cmake完成ffmpeg6.0的自动化构建
    • 使用cmake构建xcodec
    • 使用cmake构建xviewer支持QT
    • 使用cmake自动部署xviewer包含自动复制QT动态库
    • 一次性自动构建和安装ffmpeg和xviewer

    订阅失败

    FFmpeg 4.3 音视频基础到工程应用
    FFmpeg 4.3 音视频基础到工程应用 ...

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

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

    购买课程

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

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

    课时介绍

    修正无法删除摄像机和修改线程退出函数后录制回放出错_日历样式和布局

    课程介绍

    课程介绍

    1课程面向音视频行业的入门者,没有太多音视频基础或者是音视频零基础的同学
    2课程通过概念分析、代码试验、项目实战的方式当你真正理解音视频
    3提供直播答疑和学员作业代码评审,提升学员的代码能力
    4包含视频封装、编解码(H264、 H265、 硬件加速)、像素格式转换、视频渲染
    5实现接入多路RTSP网络摄像头,预览多路视频并完成硬盘录像机自动录制功能

     

     

     

    推荐课程

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

    李明 · 909人在学

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

    王先生 · 22796人在学

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

    汤小洋 · 4293人在学

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

    黄菊华 · 838人在学

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

    小尼老师 · 899人在学

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

    Long · 5203人在学

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

    汤小洋 · 1531人在学

    Python Django 深度学习 小程序

    钟翔 · 2406人在学

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

    赖国荣 · 681人在学

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

    李杰 · 4075人在学

    正在试验
    后自动删除环境
    课程实验
    本次实验时间已到期 00:00:00
    课件正在飞速打包中,请耐心等待几秒钟~