use*_*482 11 java video android video-processing android-mediaplayer
我有关于如何实现PlaybackParams来设置视频速度的问题:
public PlaybackParams getPlaybackParams ()
在API级别23
中添加使用PlaybackParams获取播放速率.
PlaybackParams setSpeed (float speed) //Sets the speed factor.
Run Code Online (Sandbox Code Playgroud)
返回:
正在使用的播放速率.
引发IllegalStateException:
如果内部同步引擎或音频轨道尚未初始化.
这是我的代码:
mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
{
@Override
public void onPrepared(MediaPlayer mp)
{
mp.setPlaybackParams(new PlaybackParams().setSpeed(1.f));
if (mPlaybackState == PlaybackState.PLAYING) { mVideoView.start();}
}
});
Run Code Online (Sandbox Code Playgroud)
您在调用“setPlayParams”方法时收到 IllegalStateException,因为您没有执行 PlaybackParams params = mp.getPlaybackParams(),设置速度然后将其传递给 mp.setPlaybackParams()!调用 mp.getPlayParams() 时直接设置速度!
MediaPlayer mp = ...;
float speed = 0.55f;
mp.setPlaybackParams(mp.getPlaybackParams().setSpeed(speed));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1647 次 |
最近记录: |