private void setupMatrix(int width, int height, int degree) {
Matrix matrix = new Matrix();
RectF src = new RectF(0, 0, width, height);
RectF dst = new RectF(0, 0, width, height);
RectF screen = new RectF(dst);
matrix.postRotate(degree, screen.centerX(), screen.centerY());
matrix.mapRect(dst);
matrix.setRectToRect(src, dst, Matrix.ScaleToFit.CENTER);
matrix.mapRect(src);
matrix.setRectToRect(screen, src, Matrix.ScaleToFit.CENTER);
matrix.postRotate(degree, screen.centerX(), screen.centerY());
mVideoPlayerView.setTransform(matrix);
}
這個(gè)旋轉(zhuǎn)視頻的方法,數(shù)學(xué)原理沒看懂阿
OpenGLES濾鏡開發(fā)匯總 —— 仿抖音九屏特效分屏特效中的九屏特效。紋理橫向和縱向縮成三分之一再填充,不需要做裁剪處理。shader如下: 效果如下: