如果我关闭前置摄像头上的镜像,一切都按预期工作。但是,如果我打开它,我最终导出的视频会出现重要的调整大小问题:
这就是我目前管理视频镜像的方式:
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
<meta itemprop="position" content="1" />
<div itemprop="item" itemscope itemtype="http://schema.org/Product">
<!-- your Product -->
</div>
</li>
这就是我导出视频的方式:
if currentDevice == frontCamera {
if let connection = output.connections.first {
if connection.isVideoMirroringSupported {
connection.automaticallyAdjustsVideoMirroring = false
connection.isVideoMirrored = true //if true, this bug occurs.
}
}
}else {
//disabling photo mirroring on backCamera
if let connection = output.connections.first {
if connection.isVideoMirroringSupported {
connection.automaticallyAdjustsVideoMirroring = false
connection.isVideoMirrored = false
}
}
}
我正在使用NextLevelSessionExporter导出视频。如果我使用默认导出器并不重要,则仍会出现调整大小问题。
答案 0 :(得分:2)
存在一个阻止您正确导出镜像视频的活动错误。您需要一些解决方法:
在需要时手动翻转视频:
if needsMirroring == true {
var transform:CGAffineTransform = CGAffineTransform(scaleX: -1.0, y: 1.0)
transform = transform.translatedBy(x: -naturalSize.width, y: 0.0)
transform = transform.rotated(by: CGFloat(Double.pi/2))
transform = transform.translatedBy(x: 0.0, y: -naturalSize.width)
videoTransform = transform
}
花了我几天的时间才想出来,希望它有所帮助。