FFMPEG-视频解码-支持rtsp|rtmp|音视频文件(低延迟)

  • 本人亲测解码显示对比延迟达到7到20毫秒之间浮动
  • 兼容播放音视频文件、拉流RTSP、RTMP等网络流
    FFMPEG-视频解码-支持rtsp|rtmp|音视频文件(低延迟)_第1张图片

基于 Qt 和 FFmpeg 的视频解码播放器类,继承自 QThread,实现了视频流的解码、播放控制、帧同步和错误恢复等功能

  • 工作流程

初始化阶段:
用户设置URL和显示尺寸
调用play()启动线程解码循环:
打开媒体流并初始化解码器
持续读取视频帧并解码
处理帧同步和播放速度控制
转换帧格式并发送给显示
错误处理:
网络中断时尝试重连
帧延迟过大时调整播放速度
严重错误时停止播放
资源清理:
停止播放时释放所有资源
析构时确保资源正确释放

  1. 初始化和清理函数

avformat_network_init()
功能: 初始化网络库
说明: 在使用网络协议(如RTSP/RTMP)前必须调用对应清理

  • int avformat_open_input(AVFormatContext **ps, con

你可能感兴趣的:(ffmpeg,音视频,qt,c++)