Search code examples
androidandroid-mediaplayer

Is it possible to control media player quality?


I download video with:

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

Header contains following data:

#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

Can I manually force media player to play only video with resolution 400x224 for example? (Except manually alerating url adding quality code to id)


Solution

  • You can use the method selectTrack and getTrackInfo Therefore, it doesn't work properly for all devices and Android OS version.

    It might be helpfull to use ExoPlayer . Here you can check the demo app.