-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
请教延时累加问题 #264
Comments
先检查几小时后是否音画同步。 以及,使用最新版本 |
使用的版本为1.4.0,配置为 1.4.0 |
如果是 h264 裸流直接打包出来的,可能是 fps 问题。 |
H264裸流中是不包含fps信息的,不是根据timestamp来播放的吗? 一定要fps信息? |
我记错了,目前的代码是不参考标记fps的 |
H264裸流的参考帧率是30fps, 1920x1080,如果我将timestamp手动填为29ms,则flv.js播放3小时延迟都只有300ms左右,延迟几乎没怎么增加,chrome://media-internals中有循环印有BUFFERING_HAVE_NOTHING/BUFFERING_HAVE_ENOUGH的log信息,但走RTMP用VLC播放播放几秒就会卡一下。 |
是指 dts 按 29ms 累加? |
只有I帧和P帧,29ms累加值 是填到FLV的VideoTag中的timestamp字段 |
所以现在的问题是有一个固定的延迟,但延迟不会随播放时间而增加? |
目前 看来是只有刚开始的延迟,未有累加情况 。 |
在解码前丢帧无论如何都是不合适的选择。而 flv.js 又是 transmuxer 的身份 只是跳过初始延迟的话,seek到已缓冲区域尾附近就行了 #258 |
@rechard666 是否解决这个问题 |
怎么将timestamp手动填为29ms的? |
@rechard666 请问,通过这个设置可以解决延迟累加的情况吗,这个设置具体如何实现呢? |
@163WT @wangxingkang 请问您解决延迟累加的问题了吗? |
@rechard666@163WT @wangxingkang @chenyoujie 请问有解决不?要怎样设置?感谢! |
请问有解决不?要怎样设置?感谢! |
追帧: let end = this.player.buffered.end(0);
let delta = end - this.player.currentTime;
if (delta > 2) {
console.log(`%c 开始追帧 `, 'background:#42A5F5;color:#fff', delta.toFixed(2))
this.videoElement.playbackRate = 1.1
} else {
console.log('delta<1', delta.toFixed(2))
this.videoElement.playbackRate = 1
} |
在live模式下跑了几小时后,延迟会越来越大,请教一下在这种情况下怎样保证实时性,另外像网络不好的情况下又如何保证实时性,可否通过丢掉一些帧来保证实时性?
The text was updated successfully, but these errors were encountered: