只需通过缓存视频即可播放视频,而无需先下载完整视频。这有什么图书馆吗?

问题描述 投票:2回答:1

我有一个关于在videoview中播放视频的项目。视频播放效果不错,没问题。问题是视频在完全下载后在视频中加载。因此,需要一段时间才能启动视频。对我来说这是一个很大的问题,我需要一个解决方案或任何适合缓冲视频网址的库(20%)并且无需完全加载即可播放。

    videoView.setOnPreparedListener(
            new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mediaPlayer) {

                    progress_bar.setVisibility(View.GONE);

                    if (mCurrentPosition > 0) {
                        videoView.seekTo(mCurrentPosition);
                    } else {
                        videoView.seekTo(1);
                    }
                    videoView.start();
                }
            });
android video video-streaming android-videoview
1个回答
2
投票

正如评论中所提到的,ExoPlayer通常是Android上视频播放的好主意,因此值得考虑使用它。

但是,对于您的特定问题,您可能希望查看服务器端,特别是为了确保您的服务器接受范围请求并确保视频设置为快速启动(如果它是MP4) - 这会将元数据信息移动到视频的开头而不是结束。

您可以在此处找到有关范围请求的更多信息,以及如何检查服务器是否接受它们的示例:https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests

curl -I http://i.imgur.com/z4d4kWk.jpg

HTTP/1.1 200 OK
...
Accept-Ranges: bytes
Content-Length: 146515

大多数服务器都接受它们,所以如果你发现它不是,它可能只是一个配置问题。

为了移动mp4'MooV atom',元数据标题信息,开头有很多工具可以让你这样做,包括开源手刹工具(查看'web optimized'复选框):

© www.soinside.com 2019 - 2024. All rights reserved.