Skip to content

PlayerVideoTranslation

xinbaicheng edited this page Oct 26, 2016 · 4 revisions

播放视频坐标平移

接口定义

/**
 * 设置视频的水平和垂直方向的平移量。以手机屏幕中心为原点建立坐标轴,横纵轴坐标各自平行于手机屏幕边缘。
 * 归一化处理后,手机屏幕的坐标取值范围为[-1.0, 1.0]
 * 仅在VIDEO_SCALING_MODE_SCALE_TO_FIT模式下本接口方可生效
 * 
 * @param horizontal 水平方向的平移量,范围为 -1.0至1.0,大于0表示水平向右移动,反之则水平向左移动
 * @param vertical 垂直方向的平移量,范围为 -1.0至1.0,大于0表示垂直向上移动,反之则垂直向下移动
 */
public void setVideoOffset(float horizontal, float vertical)

下图是视频渲染的坐标系示意图,水平和垂直方向各自做了相应处理。
图中坐标轴原点为手机屏幕中心,正方形的四个顶点对应手机屏幕的四个顶点,可认为是将手机屏幕抽象为一个正方形
本接口参数的取值范围为 [-1.0, 1.0], 即水平或垂直方向可移动的最大值为手机屏幕宽或高的50%
offset

注意事项

版本要求: v1.6.2及以上
视频伸缩模式: 仅在 VIDEO_SCALING_MODE_SCALE_TO_FIT模式下生效
软解: 可使用KSYMediaPlayer和KSYTextureView
硬解: 建议使用KSYTextureView

使用示例

以下示例表示视频向上平移距离为屏幕高的30%

// 使用KSYMediaPlayer
KSYMediaPlayer ksyMediaPlayer;
ksyMediaPlayer.setVideoOffset(0.0f, 0.6f);

// 使用KSYTextureView
KSYTextureView mVideoView;
mVideoView.setVideoOffset(0.0f, 0.6f);
Clone this wiki locally