目前,在使用Media capture using capture device sample测试时,我意识到相机不是我想要的。 我希望它处于镜像模式。目前,它不是。
要使相机预览处于镜像模式,我可能知道它是依赖于硬件还是与硬件无关。可能如果我使用不同的硬件运行相同的代码,相机预览将处于镜像模式?如果它取决于硬件,如何检查我的相机预览是否处于镜像/非镜像模式?
要使其处于镜像模式,我会尝试关注this thread。我试试MediaCapture.SetPreviewMirroring(true)
。没有任何影响。相机预览仍处于非镜像模式。
我尝试captureElement.RenderTransform = new ScaleTransform() { ScaleX = -1 };
。整个相机预览变为纯灰色。
我想尝试的最后一种方法是尝试通过MediaCapture.AddEffectAsync()
执行C ++代码翻转。但是,需要回到我的第一个问题。我可以简单地执行翻转,还是首先需要检查传入缓冲区是否处于镜像/非镜像模式?如果是,我该如何检查?
答案 0 :(得分:0)
使用
<CaptureElement x:Name="previewElement" Margin="0" Stretch="UniformToFill" RenderTransformOrigin="0.5,0.5">
<CaptureElement.RenderTransform>
<CompositeTransform ScaleX="-1"/>
</CaptureElement.RenderTransform>
</CaptureElement>
密钥在RenderTransformOrigin="0.5,0.5"
上撒谎。我们需要从预览中心翻转。