我尝试使用exoPlayer的ClippingMediaSource播放一小段mp3音频(44100采样率),但它的开始时间缩短了250毫秒左右,太多了,是否有可能使它更精确?>
我这样启动exoplayer:
dataSourceFactory = new DefaultDataSourceFactory(context, Util.getUserAgent(context, "com.example.player"));
Uri uri = Uri.fromFile(new File(path));
MediaSource audioSource = new ExtractorMediaSource.Factory(dataSourceFactory).createMediaSource(uri);
ExoPlayer exoPlayer = ExoPlayerFactory.newSimpleInstance(context, new DefaultTrackSelector());
exoPlayer.setPlayWhenReady(true);
ClippingMediaSource clip = new ClippingMediaSource(audioSource, 7_225_000, 8_175_000);
exoPlayer.prepare(clip);
答案 0 :(得分:2)
根据exoplayer文档,有两种方法
创建一个新的裁剪源,该裁剪源包装指定的源并在指定的开始和结束位置之间提供样本。
使用false尝试第二种方法,或者调整startPosition和endPosition。 要进行更多检查,请使用此clipping documentation的ExoPlayer。希望这能解决您的问题。