我正在开发一个在DataSource
中使用的自定义ExoPlayer
对象。
我在理解如何将其连接到Samplesource
个对象时遇到问题,以便来自基础Exoplayer
组件的数据请求通过我的DataSource
对象发生。
有人有这个工作吗?
感谢任何评论。
感谢。
答案 0 :(得分:3)
SampleSource(或ChunkSource)在其构造函数中获取上游DataSource对象 - 即将DataSource连接到SampleSource(或ChunkSource)的方式
让我举一个HLS的例子来说明如何将自定义DataSource注入SampleSource。
中现有代码
DataSource dataSource = new UriDataSource(userAgent, bandwidthMeter);
HlsChunkSource chunkSource = new HlsChunkSource(dataSource, url, manifest, bandwidthMeter, null,
HlsChunkSource.ADAPTIVE_MODE_SPLICE);
HlsSampleSource sampleSource = new HlsSampleSource(chunkSource, true, 3);
假设您实现了一个CustomDataSource类。新代码将如下所示
CustomDataSource dataSource = new CustomDataSource(<your arguments here>);
HlsChunkSource chunkSource = new HlsChunkSource(dataSource, url, manifest, bandwidthMeter, null,
HlsChunkSource.ADAPTIVE_MODE_SPLICE);
HlsSampleSource sampleSource = new HlsSampleSource(chunkSource, true, 3);