【问题标题】:Extended Camera control on Windows MobileWindows Mobile 上的扩展相机控制
【发布时间】:2008-10-31 13:41:45
【问题描述】:

我知道如何在 Windows Mobile 5.0/6 上使用 SHCameraCapture 捕捉相机快照。但是有没有更广泛的东西可以让我更好地控制?即获得可用的缩放级别并以编程方式设置缩放级别,例如不同的 ISO 模式/感光度和微距模式的设置(如果有)。 (即类似于JSR 234 提供的内容)。

我的项目可能会用 C++ 编写。

更新:它应该可以在所有可用的 WM 5.0 和 6 设备上运行。我正在寻找不特定于特定模型的通用解决方案。

【问题讨论】:

    标签: windows-mobile camera


    【解决方案1】:

    对于 ISO 模式、感光度和其他高级控制等。从我所见的一切来看,它通常是特定于设备的。我知道不同的制造商会通过他们的 SDK 公开他们的成像器库。您使用的是哪种移动设备?与制造商核实通过他们的 SDK 公开的 API。

    对于简单的东西,您可能已经看过以下类:

    CameraCaptureDialog Class

    对于像图像质量这样的事情:

    CameraCaptureStillQuality Enumeration

    ** 注意:这些适用于 Windows Mobile 6。

    【讨论】:

    • 这应该在所有可用的 WM 5.0 和 6 设备上运行。我正在寻找不特定于特定模型的通用解决方案。我查看了提供的链接,这些基本上是封装在 .NET 中的 SHCameraCapture 功能(无论如何我都不想使用)。
    【解决方案2】:

    通过 SO 上的其他一些问题,我找到了http://blogs.msdn.com/marcpe/archive/2006/03/03/542941.aspx,它提供了另一种(通用)访问相机的方式。我还没有弄清楚我可以设置什么以及如何设置缩放等选项,但我想这就是要走的路。

    【讨论】:

      【解决方案3】:

      我已经修改并使用了您链接到的示例中的代码(代码基本上包含 DirectShow)。它不会让您控制要控制的相机方面(变焦、感光度等)。如果相机甚至具有这些功能并且完全暴露了这些功能,那么它只是通过它们的 API 来实现的,因此是特定于设备的。

      您可以使用代码以编程方式设置分辨率(虽然这很棘手)并启动相机,并将图片作为位图获取,然后您可以做任何您想做的事情,这样您就可以实现自己的缩放功能,滤色器等。顺便说一句,如果你成功地做到了这一点,我认为你最终会得到一个商业上可行的产品,因为在 Windows Mobile 世界中绝对没有这样做(希望我被另一个答案证明是错误的)。

      我还从该代码中了解到为什么(便宜的)数码相机在将屏幕用作取景器时总是拍得很晚(这就是为什么你的照片永远不会像你想要的那样),以及为什么这是一个根本无法修复的问题问题(至少在便宜的数码相机中)。

      【讨论】:

        猜你喜欢
        • 2010-10-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-19
        • 2012-07-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多