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 音视频基础到工程应用 ...

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

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

    购买课程

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

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

    课时介绍

    使用cmake完成ffmpeg6.0的自动化构建

    课程介绍

    课程介绍

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

     

     

     

    推荐课程

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

    李明 · 909人在学

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

    王先生 · 22798人在学

    手把手搭建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
    课件正在飞速打包中,请耐心等待几秒钟~