-
Notifications
You must be signed in to change notification settings - Fork 246
RotateVideoPlay
wshichang edited this page Feb 20, 2017
·
4 revisions
##带转角度视频显示处理规则 ###此文档仅适用于1.7.0及1.7.1版本
对于某些带有旋转角度的视频,在播放开始前会触发onInfo
中的MEDIA_INFO_VIDEO_ROTATION_CHANGED
事件。对于采用不同的播放方式,处理方式略有不同,具体如下:
- KSYMediaPlayer + SurfaceView(软解),这种用法在收到
MEDIA_INFO_VIDEO_ROTATION_CHANGED
后需要用户主动设置播放旋转方向, 此方式只适用于1.7.0及1.7.1版本,从1.7.2及之后版本此逻辑进行了优化用户无需再处理MEDIA_INFO_VIDEO_ROTATION_CHANGED
事件,程序内部自动进行角度旋转
public IMediaPlayer.OnInfoListener mOnInfoListener = new IMediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(IMediaPlayer iMediaPlayer, int what, int param) {
switch (what) {
case KSYMediaPlayer.MEDIA_INFO_VIDEO_ROTATION_CHANGED:
if (ksyMediaPlayer != null){
ksyMediaPlayer.setRotateDegree(param);
}
break;
//其它事件处理
......
}
return false;
}
};
- KSYMediaPlayer + SurfaceView(硬解): 目前暂不支持旋转
- KSYTextureView: 如果使用此种方式用户无需处理
MEDIA_INFO_VIDEO_ROTATION_CHANGED
事件,内部会自动处理,但用户层仍可收到此事件。 - KSYVideoView(软解): 如果使用此种方式用户也无需处理
MEDIA_INFO_VIDEO_ROTATION_CHANGED
事件,内部会自动处理,但用户层仍可收到此事件。 - KSYVideoView(硬解): 目前暂不支持旋转