ExoPlayer 2.11.0:ExtractorMediaSource 替代方案及示例
在 ExoPlayer 2.11.0 版本中,'ExtractorMediaSource' 已被废弃,建议使用 'ProgressiveMediaSource' 或者 'HLSMediaSource' 来代替。
如果需要支持多种媒体格式,可以使用 'ConcatenatingMediaSource' 或者 'ClippingMediaSource' 来组合多个 'MediaSource'。
示例代码:
// 创建一个 'ProgressiveMediaSource' MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(Uri.parse('http://example.com/video.mp4'));
// 创建一个 'HLSMediaSource' MediaSource mediaSource = new HlsMediaSource.Factory(dataSourceFactory) .createMediaSource(Uri.parse('http://example.com/video.m3u8'));
// 创建一个 'ConcatenatingMediaSource' ConcatenatingMediaSource concatenatedSource = new ConcatenatingMediaSource( new ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(Uri.parse('http://example.com/video1.mp4')), new ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(Uri.parse('http://example.com/video2.mp4')) );
// 创建一个 'ClippingMediaSource' MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory) .createMediaSource(Uri.parse('http://example.com/video.mp4'));
ClippingMediaSource clippingSource = new ClippingMediaSource( mediaSource, /* startPositionUs= / 10_000, / endPositionUs= */ 20_000 );
原文地址: https://www.cveoy.top/t/topic/jBjH 著作权归作者所有。请勿转载和采集!