我有一组纯音频网址,我想将其放入ExoPlayer
- 有些需要HlsMediaSource
,有些需要ExtractorMediaSource
。
如果不提前知道哪个URL需要哪个MediaSource,有没有办法确定构建源的哪个?
答案 0 :(得分:0)
您可以创建自己的类来实现MediaSource
并提供HlsMediaSource
和ExtractorMediaSource
作为构造函数参数。
然后在MediaSource.open
方法中,您可以获取DataSpec
并检查URL(根据您的业务逻辑)并选择所需的数据源并委托open方法。您还应该实现read
和close
方法,因此您需要打开当前数据源的某个字段。