android - 是否可以控制媒体播放器的质量?

标签 android android-mediaplayer

我下载视频:

mPlayer.setDataSource("https://s3-eu-west-1.amazonaws.com/ellovidsout/1232/9/1423065486.mp4.m3u8")

header 包含以下数据:

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=532000,RESOLUTION=400x224,CODECS="avc1.42001e,mp4a.40.2"
400k_1423065486.mp4.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1273000,RESOLUTION=640x360,CODECS="avc1.4d001f,mp4a.40.2"
1000k_1423065486.mp4.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2476000,RESOLUTION=1024x576,CODECS="avc1.4d001f,mp4a.40.2"
2000k_1423065486.mp4.m3u8

我可以手动强制媒体播放器只播放分辨率为 400x224 的视频吗? (除了手动提醒 url 添加质量代码到 id)

最佳答案

您可以使用方法selectTrackgetTrackInfo因此,它并不适用于所有设备和 Android 操作系统版本。

使用 ExoPlayer 可能会有帮助.在这里您可以查看 demo app .

关于android - 是否可以控制媒体播放器的质量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30355075/

相关文章:

android - 我可以在 Android Studio 中测试响应式网站吗?如何?

Android Mediaplayer 音量波动

java - 按下主页按钮后如何在Android中播放mediaPlayer并在收到电话时恢复播放视频?

android - AppWidgetProvider 的模型

android - 数据绑定(bind)时自定义属性 setter 错误 - Android

android - MediaPlayer并不总是播放

android - 来自 http url 的在线视频流,在 android 应用程序中具有缓存

android - MediaHTTPConnection : readAt 1343667/32768 => java.net.ProtocolException

android - shouldOverrideUrlLoading() 永远不会被调用

Android 主要 Activity 不会在启动时启动