Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在实时流Android中视频播放之前如何显示进度条?_Java_Android_Video Streaming_Android Videoview_Live Streaming - Fatal编程技术网

Java 在实时流Android中视频播放之前如何显示进度条?

Java 在实时流Android中视频播放之前如何显示进度条?,java,android,video-streaming,android-videoview,live-streaming,Java,Android,Video Streaming,Android Videoview,Live Streaming,我正在开发一个应用程序,需要将远程服务器上的视频作为实时流播放 这是我成功完成的。 我管理我应用程序中的每件事 但当视频加载时,我需要在VideoView上显示进度对话框 我尝试将OnPreparedListener用作“” 但progressbar 5-7秒后的视频播放消失了。 我在谷歌上搜索了很多,但没有找到任何解决方案 谁能帮帮我吗 提前谢谢 令人难忘的是,Android没有公开OnStart侦听器。准备就绪状态后,一旦开始播放,MediaPlayer将进入启动状态 但只有在准备就绪的状态

我正在开发一个应用程序,需要将远程服务器上的视频作为实时流播放

这是我成功完成的。 我管理我应用程序中的每件事

但当视频加载时,我需要在VideoView上显示进度对话框

我尝试将OnPreparedListener用作“”

但progressbar 5-7秒后的视频播放消失了。 我在谷歌上搜索了很多,但没有找到任何解决方案

谁能帮帮我吗


提前谢谢

令人难忘的是,Android没有公开OnStart侦听器。准备就绪状态后,一旦开始播放,MediaPlayer将进入启动状态


但只有在准备就绪的状态下,您才应该有足够的缓冲区来播放。是否可以使用setOnBufferingUpdateListener(MediaPlayer.OnBufferingUpdateListener侦听器)并打印缓冲区百分比。这样你就可以看到,如果处于准备状态,你是否有足够的缓冲区。

看看这个解决了我的问题,希望对你也有帮助


:)

而且在播放视频之前,我的视频视图是透明的。我观察到,当我单击按钮时,“onPrepared”侦听器会立即调用,但视频播放时间为5-6秒。为什么是这个时间间隔?好家伙。。解决了我的问题。。但是你能解释一下这段代码吗。。我想知道这段代码背后的确切过程是什么。@DevelopSmart sure,根据文档OnPreparedListener()是在媒体源准备好播放时调用回调的接口定义。只需使用OnVideoSizeChangedListener()检查视频视图的开始时刻并隐藏进度条..我们如何知道视频是否再次开始渲染,如果视频正在渲染,我每次都需要显示加载程序…此代码中是否有其他视频播放状态?
@Override
public void onPrepared(MediaPlayer mp) {
    progressbar.setVisibility(View.GONE);
    mp.start();

}
 progressbar.setVisibility(View.VISIBLE);

 videoView.setOnPreparedListener(new OnPreparedListener() {

            @Override
            public void onPrepared(MediaPlayer mp) {



                mp.start();

                mp.setOnVideoSizeChangedListener(new OnVideoSizeChangedListener() {

                    @Override
                    public void onVideoSizeChanged(MediaPlayer mp, int arg1, int arg2) {
                        // TODO Auto-generated method stub
                        Log.e(TAG, "Changed");
                        progressbar.setVisibility(View.GONE);
                        mp.start();
                    }
                });


            }
        });