【问题标题】:Compress videos while fetching from server in Android在 Android 中从服务器获取时压缩视频
【发布时间】:2015-12-30 04:47:22
【问题描述】:

我正在创建一个应用程序来获取存储在 FTP 服务器上的视频。我提供了使用以下链接中说明的 Android Videoview 在线播放视频的选项。我的问题是我希望用户选择他喜欢观看视频的质量,即低质量或高质量,在选择低质量时,视频质量应该在播放视频时降低(如果是高清视频)。有没有人知道如何实现它。

使用 Android Videoview 观看视频的参考链接:http://www.androidbegin.com/tutorial/android-video-streaming-videoview-tutorial/

【问题讨论】:

    标签: android video android-videoview


    【解决方案1】:

    听起来您在描述自适应比特率流式传输,其中客户端播放器根据连接速度不断从多个可用视频流中进行选择,以确保连续播放而不会停止缓冲。

    这是可能的,因为源视频以多种比特率进行编码,并在每个流中分块为相同时间大小的块。因此,玩家可以在任何时间点选择最合适的下一个块,具体取决于当时的带宽。

    许多播放器,包括 YoutTube 的播放器,将允许用户覆盖它并从可用的比特率中手动选择他们想要的比特率(查看典型 YouTube 视频上设置按钮下的质量设置)。

    不幸的是,作为标准的 Android 不太擅长支持自适应比特率流。这些流传统上是 HLS,您可以看到许多用户发现的一些 HLS 问题:

    目前似乎没有任何普遍接受的支持 HLS 的开源和免费 Android 视频播放器库 - 新兴的 MPEG-DASH(一种 HLS 的行业标准版本)可能会成为主导,并且有更好的 Android 支持,尽管这可能仍然意味着流提供程序必须同时支持 HLS(适用于 iOS 设备)和适用于其他设备的 MPEG-DASH。

    对于您的情况,如果您的服务器上只有两个单独的视频文件,您可以使用更简单的解决方案,只需要求用户预先选择一个或另一个,然后使用适当的 URL视频的时长。

    【讨论】:

    • 感谢您的回答 Mick,我宁愿采用当前在服务器上有两个文件的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-30
    • 1970-01-01
    • 2016-03-20
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 2021-05-30
    相关资源
    最近更新 更多