Windows Mobile / Directdraw:旋转视频流

时间:2010-02-23 13:22:38

标签: windows-mobile rotation video-capture directdraw

跟进:Directdraw: Rotate video stream

我设法预览了相机的视频流,但图像旋转了90°到横向模式。我现在正在寻找一种方法将相机图像旋转回正常,但问题是我甚至不知道从哪里开始:这是在DDSURFACEDESC结构中的VideoCaptureFilter,VideoInfoHeader中完成的吗?只能通过使用额外的过滤器来完成旋转吗?它是过滤器设置吗?

1 个答案:

答案 0 :(得分:1)

我发现这通常是通过BI_SRCPREROTATE标志完成的:

  

开发了一个特殊的旗帜   (BI_SRCPREROTATE)告诉GDI和   视频渲染器那个   图像的方向来自   相机处于正确的方向   (渲染时不要旋转)。这个   是必要的,因为当你旋转   设备上的外壳你也是   物理旋转设备。当。。。的时候   显示驱动程序将位图旋转到   渲染它需要的shell和UI   知道这个特定的位图   不应该旋转。标志是or'd   进入biCompression字段   BITMAPINFO结构。

来自http://www.tech-archive.net/Archive/PocketPC/microsoft.public.pocketpc.developer/2005-12/msg00850.html

示例代码可能如下所示:

  pVih->bmiHeader.biCompression &= ~BI_SRCPREROTATE;

来自http://innovator.samsungmobile.com/bbs/discussion/view.do?parentCategoryId=4&messageId=45549&boardId=224&platformId=2

然而,这种方法不适用于我正在使用的HTC HD2,但它可能适用于其他设备,因此我决定将此添加到我的问题中。