欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

如何在 WebRTC 中实现视频镜像翻转?

最编程 2024-01-22 17:56:25
...

视频镜像

相机拍摄出的真实相片和镜像相片是不同的
iphone的系统相机的自拍结果通常会让人觉得别扭 因为拍摄出的真实相片
而几乎所有的自拍相机的自拍结果都是镜像的 通常用户觉得镜像的自拍图像更好看

iOS和Android平台的视频翻转

由于采集视频时并没有镜像图像 所以无论是local stream还是remote stream
视频图像看上去都是反向的(此时是真实镜像)
为了视觉上看上去自然 需要对视频进行水平翻转

iOS视频镜像翻转

WebRTC iOS提供RTCEAGLVideoView作为视频的渲染接口 RTCEAGLVideoView继承了UIView
镜像翻转的方法很简单 UIView即提供了镜像属性

self.LocalView.transform = CGAffineTransformMakeScale(-1.0, 1.0);

Android视频镜像翻转

WebRTC Android提供了VideoRenderGui作为视频渲染接口

VideoRenderGui的update接口提供了镜像参数 设置为true则渲染时镜像翻转
public static void update(Callbacks renderer, int x, int y, int width, int height, VideoRendererGui.ScalingType scalingType, boolean mirror)