我目前正在制作一个使用libVlc来显示来自城市网络摄像头的rtsp流的城市网络摄像头应用。我的问题是,是否有可能获得流的实际加载状态?我想向用户展示。我可以在Android Studio runLog中看到有某种缓冲,但是在代码中找不到。

D/VLC: core input: Buffering 56%
D/VLC: core input: Buffering 58%
D/VLC: core input: Buffering 61%
D/VLC: core input: Buffering 64%
D/VLC: core input: Buffering 66%
D/VLC: core input: Buffering 69%
D/VLC: core input: Buffering 72%
D/VLC: core input: Buffering 72%
D/VLC: core input: Buffering 77%

最佳答案

这用于libvlc:2.1.1。您可以使用类似以下内容获取缓冲百分比->


在视频播放器活动中实施MediaPlayer.EventListener
将媒体播放器事件侦听器附加到当前活动:mMediaPlayer.setEventListener(this);
在您的活动中覆盖onEvent方法
在该方法中,您可以使用event.getBuffering()获取缓冲区浮点数:

@Override
public void onEvent(MediaPlayer.Event event) {
    switch(event.type) {
        case MediaPlayer.Event.Buffering:
            Log.d("BUFFERING", ""+event.getBuffering());
            break;
    }
}

关于android - 有没有办法获取LibVlc加载的缓冲区百分比?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42690992/

10-08 22:21