GSYVideoPlayer icon indicating copy to clipboard operation
GSYVideoPlayer copied to clipboard

MP4 播放卡顿和加载慢的请看

Open CarGuo opened this issue 5 years ago • 16 comments

一般 ijk 默认内核,如果存在卡顿或者不同步,一般是因为软解码处理不过来,可以尝试问题集锦的丢帧处理,或者切到都 exoplayer 内核。

同时有的MP4写的不合理。 近似位置的audio video pts相差比较大。 导致不断的请求206 partial content来回seek读取流内容。曾经遇到过1个100多M的视频,播放消耗掉移动流量几个G的情况。查了很久才发现是媒体文件有缺陷。本地播放不会有这个问题。

https://github.com/bilibili/ijkplayer/issues/4808#issuecomment-519835764

CarGuo avatar Nov 19 '19 07:11 CarGuo

首次播放Mp4视频画面和声音会卡顿,退出播放页面,重新进来播放同样视频,就很流畅了,请问这是什么原因呢?

zijin2014 avatar Jan 10 '20 02:01 zijin2014

是不是缓存到本地了?

CarGuo avatar Jan 10 '20 02:01 CarGuo

是不是缓存到本地了? 是的,有缓存。我断开网络能缓存播放。第一次播放能设置提前缓冲吗 第一次播放总感觉很卡

zijin2014 avatar Jan 10 '20 03:01 zijin2014

    VideoOptionModel videoOptionModel10 = new VideoOptionModel(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "packet-buffering", 1024);

我开启了缓冲应该好了

zijin2014 avatar Jan 10 '20 05:01 zijin2014

这个不是一回事,你可以先看看 https://mp.weixin.qq.com/s/HjSdmAsHuvixCH_EWdvk3Q

缓冲和缓存不一样。

感觉如果本地没问题,网络有问题,可能就是流媒体的问题。

CarGuo avatar Jan 10 '20 05:01 CarGuo

那种第一次播放一卡一卡的问题,可能怎样才能解决呢?实时流量显示的也是1M多播放的

zijin2014 avatar Jan 10 '20 10:01 zijin2014

你可以看到文章说的,IBP帧解析的原理,有可能是帧率或者帧排布的原因。

你可以试试切换playermanager 到 exo

CarGuo avatar Jan 10 '20 10:01 CarGuo

你可以看到文章说的,IBP帧解析的原理,有可能是帧率或者帧排布的原因。

你可以试试切换playermanager 到 exo 试过,切到 exo 我的音频没有声音,但是确实不卡。ijk 我加入了adpcm

zijin2014 avatar Jan 10 '20 11:01 zijin2014

请问下,怎么播放本地视频,没找到播放本地视频的方法呢

ZengHongHua avatar Apr 25 '20 08:04 ZengHongHua

@ZengHongHua file:// 或者用 content://,看demo 的 detailplayer

CarGuo avatar Apr 25 '20 12:04 CarGuo

播放本地下载的1个多小时mp4的时候 ,文件大概300-400M那样,总是先有声音,黑屏2-3s之后画面才出来 能不能画面和声音同时出来? 播放在线m3u8正常

huangxiaoyu avatar Jun 22 '20 10:06 huangxiaoyu

@huangxiaoyu 默认内核是 cpu 软解吗的,你的码率和帧率太高会这样,比如你可以切换到 exo 内核模式试试。https://mp.weixin.qq.com/s/HjSdmAsHuvixCH_EWdvk3Q

CarGuo avatar Jun 23 '20 02:06 CarGuo

最近遇到了这个问题,咨询几个问题:

  1. 如何检测这种情况呢
  2. 能否通过修改 ijk 相关代码解决呢?

Jayxiang avatar Dec 09 '20 06:12 Jayxiang

播放本地mp4,声音和视频不同步,已经关闭了硬解码,也切换到EXO内核模式,也降低了倍数,但是依旧不同步

zhouwenton avatar Dec 10 '20 07:12 zhouwenton

你好 我遇到一个类似的问题 与本项目无关 但是希望大佬能解答一下,大概也是踩了类似的坑吧。上传到云盘上以后,当浏览器加载mp4视频时,遇到你上面说的,会不断的去做206的请求,这是加载别的mp4没有遇到的,而且视频也会很卡顿。想排查是否是视频出现你说的问题。我通过使用ffprobe 获取了视频 audio 和vidio的 每帧的信息,但是我对这个 “pts相差比较大” 没有概念。望解答

顺便附上 ffprobe 获取的每帧的pts等信息 https://share.weiyun.com/cEyHQBJh https://share.weiyun.com/m5dCAjEB

cyclonevox avatar Jan 13 '22 06:01 cyclonevox

大佬能不能详细讲讲 pts相差比较大 是什么概念啊

mlp1995 avatar May 24 '24 10:05 mlp1995