如何在Android中的单个活动中播放多个(在我的情况下最多四个).m3u8视频流?

Chi*_*ang 8 android http-live-streaming m3u8 vitamio exoplayer

我很长时间以来一直面临这些问题,而且我对HLS的android支持感到非常失望,因为它的行为太随机了.

要求:

1)播放多个.m3u8视频流

2)应该在不同的设备和api级别上工作.

我所讨论的和各自的问题:

方法 - 1) 具有原生MediaPlayer的TextureView:

  • 播放的视频数量取决于设备,对于某些设备,它只播放一个视频(My Device - samsung galaxy grand quattro - api level 16),对于某些设备,它可以播放所有四个视频流.

  • 取决于api级别,一些.m3u8网址正在使用软糖而不是kitkat.

方法 - 2) ExoPlayer:

  • 方法-1的相同问题

方法 - 3) Vitamio:

  • 成功播放每个.m3u8网址

  • 没有多视频视频的支持

方法 - 4) grafika:

  • 它还不稳定(正如他们提到的那样).

我正在寻找的解决方案:

1)应该播放多个视频流,就像上述任何一种方法一样,我的设备可以播放单个视频,但似乎Milestone Mobile能够在我的设备中播放8个视频流(How?:O).

2)如果本机MediaPlayer无法播放某些.m3u8网址,那么如何调试确切的问题就像aac编解码器,解码器,段,.ts文件等有什么问题?

3)如果本机MediaPlayer无法播放流媒体,那么我该如何制作支持大多数流媒体网址的自定义MediaPlayer?

4)是否有可能与Vitamio一起播放多个视频?

5)符合我要求的任何其他HLS客户的参考?

就个人而言,我想选择Method-1,那么有什么我可以做的吗?