#腾讯互动直播视频旋转方案 ##前言 本文用于介绍开发腾讯互动直播时可选用的三种视频旋转模式。开发前请参考ILiveSDKAndroidDemos或者ILiveSDKiosDemos,导入ILiveSDK。 ##方案详细介绍 ###方案一:智能旋转模式 ####简述 智能旋转方案保证显示的视频(包括观众端和主播端等任意角色)始终是正向画面(以主播眼睛看到的上下顺序为准)。视频会自适应到界面View中。 ####效果
主播(镜像) | 观众横屏 | 观众竖屏 |
---|
####Android实现方式
1.在工程中导入iLiveSDK
2.获取布局中的AVRootView
avRootView = (AVRootView) findViewById(R.id.av_root_view);
3.把AVRootView中指定的AVVideoView的旋转方案设置为ILiveConstants.ROTATION_AUTO,该设置可以随时修改,立即生效
avRootView.getViewByIndex(i).setRotationMode(ILiveConstants.ROTATION_AUTO);
####iOS实现方式:
glView.iLiveRotationType = ILiveRotation_Auto;
默认是ILiveRotation_Auto,可在任何时候设置,设置即生效,glView是AVGLCustomRenderView对象,即渲染视图 ###方案二:全屏模式 ####简述 全屏模式保证观众端始终看到全屏画面,并尽量保证观众看到更多的图像。 ####效果
主播(镜像) | 观众横屏 | 观众竖屏 |
---|---|---|
avRootView = (AVRootView) findViewById(R.id.av_root_view);
3.把AVRootView中指定的AVVideoView的旋转方案设置为ILiveConstants.ROTATION_FULL_SCREEN,该设置可以随时修改,立即生效
avRootView.getViewByIndex(i).setRotationMode(ILiveConstants.ROTATION_FULL_SCREEN);
####iOS实现方式
glView.iLiveRotationType = ILiveRotation_FullScreen;
可在任何时候设置,设置即生效,glView是AVGLCustomRenderView对象,即渲染视图
###方案三:裁剪模式
裁剪模式1:(Android和iOS都有)
画面源端的设备关闭系统的“竖排方向锁定”开关,即支持横竖屏自由旋转时,保证观众端始终看到全屏画面,并保证始终是正向画面(以主播眼睛看到的上下顺序为准),超出显示范围的图像会被裁剪。:
####效果
主播(镜像) | 观众横屏 | 观众竖屏 |
---|---|---|
裁剪模式2:(iOS独有)
画面源端的设备打开系统的:“竖排方向锁定”开关,即不支持横竖屏的自由旋转时,保证观众端始终看到全屏画面,但不保证看到的始终是正向画面,超出显示范围的图像会被裁剪:
####效果
主播(镜像) | 观众横屏 | 观众竖屏 |
---|---|---|
####Android实现方式 | ||
1.在工程中导入iLiveSDK | ||
2.获取布局中的AVRootView |
avRootView = (AVRootView) findViewById(R.id.av_root_view);
3.把AVRootView中指定的AVVideoView的旋转方案设置为ILiveConstants.ROTATION_CROP,该设置可以随时修改,立即生效
avRootView.getViewByIndex(i).setRotationMode(ILiveConstants.ROTATION_CROP);
####iOS实现方式
glView.iLiveRotationType = ILiveRotation_Crop;
可在任何时候设置,设置即生效,glView是AVGLCustomRenderView对象,即渲染视图