首页 > 其他分享 >音视频播放异常现象总结

音视频播放异常现象总结

时间:2024-05-11 13:52:26浏览次数:19  
标签:播放器 异常现象 解码 音视频 流媒体 播放 GOP

播放卡顿或者卡住:

1 流媒体不发流给客户端,客户端停在当前画面不动也不销毁,也不重拉流;

2 弱网环境,tcp乱序,且发包间隔时间比较大,播放器收一包耗时较多,导致解码异常卡主;

3 流媒体(发流端)数据插入一些增强帧,其他的P帧等(一般是某些公司的定制)导致播放器得到的数据不是一个连续的GOP;解码花屏或者直接跳过;

4 播放器 音视频解码使用同一个线程,视频解码超时阻塞音频以及后续的 视频,播放卡顿;

5 国标PS封装,PSM里有音视频,但是流里边只有单路视频或者音频,结合某些播放库的机制要等待复合流,或者视频像音频同步,导致卡主或者不显示

6 帧率过高,实时流,渲染来不及消耗,解码为了不阻塞数据接收,进而解码后丢帧(一般不在解码前丢帧,因为会影响解码是否成功),导致显示卡顿跳变;

loading。。。。。

秒开:

一般是 流媒体来做;流媒体开辟一个GOP容器, 当一个播放端去流媒体拉流的时候,流媒体要将容器中当前帧(不是I帧的话)前边的GOP快速刷出去,保证播放器能画面秒开

如果是流媒体推流也一样,流媒体在接收数据流解封装成帧的时候,没遇到I帧,清理一下GOP容器,遇到非I帧,就一边输出数据,一边送给容器,这样保证每次不管是推流还是被拉,都能秒开;

当然流媒体接收数据流要从I帧开始处理,否则流媒体接收P帧开始处理,此时有客户端过来拉流,没有I帧也就没有GOP容器内容,也无法秒开;

RTSP拉流下载:

 

减少传输延时:

 

标签:播放器,异常现象,解码,音视频,流媒体,播放,GOP
From: https://www.cnblogs.com/8335IT/p/18186359

相关文章

  • FFMpegCore 对音视频格式转换
    下载Nuget包FFMpegCore FFMpeg的官网下载转码程序点击Dowload 选择对应系统的下载源本次为Windows系统 选择Full标记的压缩包 解压后的文件结构ffmpeg版本 将bin文件夹下的ffmpeg.exe文件放置在程序项目的根目录下  视频格式转换以下是将.mov转.mp4///......
  • 抖音无人直播循环播放录音频软件
    需求是做抖音或其他短视频平台无人直播时,需要循环播放录音文件列表,那么就可以用到这个小软件。使用方法双击exe的可执行文件,启动软件点击循环播放按钮,可以读取当前目录以及子目录下面的音频文件列表,循环往复播放点击停止循环按钮,可以停止播放插队播放实现效果是,配合抖音评......
  • Qt/C++音视频开发72-倍速推流/音视频同步倍速推流/不改变帧率和采样率/低倍速和高倍速
    一、前言最近多了个新需求,需要倍速推流,推流界的扛把子obs也有倍速推流功能,最高支持到两倍速。这里所说的倍速,当然只限定在文件,只有文件才可能有倍速功能,因为也只有文件才能倍速解码播放。实时视频流是不可能倍速的,因为没有时长,有时长的才可以按照播放进度来。是否是文件也不能通......
  • FFmpeg开发笔记(十九)FFmpeg开启两个线程分别解码音视频
    ​同步播放音视频的时候,《FFmpeg开发实战:从零基础到短视频上线》一书第10章的示例程序playsync.c采取一边遍历一边播放的方式,在源文件的音频流和视频流交错读取的情况下,该方式可以很好地实现同步播放功能。但个别格式的音频流和视频流是分开存储的,前面一大段放了所有的音频帧,后......
  • FFmpeg开发笔记(十八)FFmpeg兼容各种音频格式的播放
    ​FFmpeg结合SDL可以播放音频文件,也能播放视频文件中的音频流,《FFmpeg开发实战:从零基础到短视频上线》一书第10章的示例程序playaudio.c支持播放mp3和aac两种格式的音频,却不支持播放其他格式的音频。因为mp3和aac两个格式拥有标准的规范定义,比如mp3规定每帧音频固定包含1152个样......
  • 解放音视频应用的未来!Introducing HoloWAN
    在当今数字化世界中,音视频应用已经成为我们日常生活和工作的不可或缺的一部分。但是,你是否曾经遇到过由于网络问题而导致的音视频质量下降、延迟增加或者连接不稳定的情况?别担心,HoloWAN网络仿真仪为你而生!......
  • 实现FLV,HLS(M3U8)视频播放
    1.安装hls.js和flv.jsnpmihls.jsflv.js<template><div><videocontrolsautoplayloopmutedpreload="auto"width="550"ref="videoEl"></video>......
  • 【CC2DX随笔】多个精灵播放同一个动画时的问题(只播放最后一个动画)
    多个精灵播放同一个动画时的问题代码摘要//pSpReinit在2次循环里代表2个精灵.for(shortj=0;j<2;j++){for(shorti=0;i<THMAX_ANI_COUNT;i++){if(0==strcmp(m_arrpAniGroup[i]->szarrDesc,"batMove")){pAniMoveTo=m_arrpAni......
  • Qt/C++音视频开发71-指定mjpeg/h264格式采集本地摄像头/存储文件到mp4/设备推流/采集
    一、前言用ffmpeg采集本地摄像头,如果不指定格式的话,默认小分辨率比如640x480使用rawvideo格式,大分辨率比如1280x720使用mjpeg格式,当然前提是这个摄像头设备要支持这些格式。目前市面上有一些厂家做的本地设备支持264格式,这个压缩率极高,由于采集到的就是264格式的裸流,所以不用编码......
  • MPV PLAYER播放器 快捷键  2024版本
    MPVPLAYER播放器快捷键 2024版本#MBTN_LEFT忽略#什么都不做#MBTN_LEFT_DBL循环全屏#切换全屏#MBTN_RIGHT循环暂停#切换暂停/播放模式#MBTN_BACK播放列表前一个#跳到前一个文件#MBTN_FORWARD播放列表next#跳到下一个文件#鼠标滚轮、触摸板或其他具有轴的输入设备#如果输......