Adding a third camera - windows-phone-7

As my company has a special need of installing a third camera on a Windows Phone Mango, do you think this is possible to access to the camera using Mango's Camera API?
As far as I can see the PhotoCamera only has two constructures: PhotoCamera() and PhotoCamera(CameraType type). The "type" here can only Primary or FrontFacing so I guess we cannot do anything else here.
We don't get this issue on Android, as they have the interface of Camera.open(int cameraId), and the cameraId can be any id between 0 and Camera.getNumberOfCameras() - 1.

I'm a bit confused, as there's no way to "install" another camera. There is no USB host port on the device, nor is there any other harcware interface, so how would you connect the camera physically?
Even if you could connect physically, there's no way for anyone other than a phone OEM to create and install the drivers for said camera, so how would the OS enumerate it to the platform?
If you're an OEM, you've undoubtedly got a support channel directly with Microsoft where you could ask this, as no one outside that channel is going to have any idea. If you're not an OEM, there's simply no way to add a camera or any other (non-bluetooth) peripheral to the phone.

Related

Activate the back camera on WP8 Device

I'm trying to do something very simple: implement a program that activates the back camera of my WP8 device. Could anyone help me do that?
If so you could try using the PhotoCamera class in order to capture images. I'm not pretty sure whether you'll be able to open the native Camera app of the device.
References:
How to access the camera from my Windows Phone 8 app (XAML and C#) and save the taken picture in a determined folder?
Sample from MSDN
Minimal Camera app in Windows Phone

Mac OS: get full control of web-camera (USB connected)

The task:
OS: Mac OS X 10.9 +
Description:
There is web-camera connected to a Mac via USB. I need to discover a way of getting access to its' brightness, pan, color temperature, focus, etc.
I also need a way to apply image filters against camera's video stream.
I need to be able to control the camera while it is being used by other programs like Skype, so I can transmit for example video stream with increased contrast at Skype video call.
Reference app: https://itunes.apple.com/app/webcam-settings/id533696630?mt=12
Solution:
This is the question.
As far as I understood I must to find custom kext (driver) in order to perform all this magic.
Could you please show me right direction, libraries, drivers, etc.
You can use opencv library to capture camera frames, apply filters, etc.
http://docs.opencv.org/2.4/doc/tutorials/introduction/display_image/display_image.html
Then you can feed a virtual cam that can feed into Skype, etc.
http://download.cnet.com/Virtual-Webcam/3000-2348_4-75754338.html
There also many open source virtual webcam available.
I hope this helps.

WP7 XNA without DX10

XNA game fails to deploy on the WP7 emulator, I suppose, it's because I have Intel GMA950 video adapter without DX10 support (it says that I have incompatible monitor adapter). Is it possible to use emulator & xna without changing PC configuration?
Check your Project properties and see if you have the Reach profile selected or HiDef. If you have HiDef, change it to Reach. I have a laptop with an Intel G945 video adapter and HiDef doesnt work, but Reach does.
EDIT
I have just seen your edit and unfortunately you won't be able to do anything unless you change the the graphics device.

How do I go about writing a windows driver for a bluetooth device?

I am looking for some advice/input on writing a device driver. I have never written one for windows before, let alone for bluetooth.
Can you recommend a book or website or something to get me started? I have the windows driver kit, and the examples therein but with out some place to start I am dead in the water.
The specifics: My friend gave me his mac Magic Mouse. I have a windows 7 machine. With the mouse set up as just a generic HID device it works ok as a two button mouse with no scroll, the motion is smooth and the acceleration what you expect in a windows mouse.
The mouse actually has a fairly good lpi resolution, making it pretty sensitive. There are mac drivers available, extracted from bootcamp. They kind of work. The cursor will randomly freeze or stop responding to the mouse's movement, which is buffered, and then leap once whatever has caused the stall stops. As an added touch the mac drivers make the cursor move like it would on a mac, with that logarithmic acceleration, that will completely throw off any windows user. With the driers you get vertical and horizontal scroll, but that's it. There is no multi touch functionality, and you can't change any of the behaviors, like acceleration. There isn't multiclutch for windows, or other 3rd party software for a multi touch mouse.
So I figured I would endeavor to make my own drivers and multi touch functionality in windows for this thing. I know mac will never support it properly under windows and windows won't write there own drivers until there is a reason.
Also if any one knows of any one else trying to do the same or similar things, point me to them.

How do I tell OS X to ignore the input from one of two connected USB mice?

I have two USB mice connected to my Mac, one of which I'm using as a scanner. I need access to the Generic X and Y data but I don't want that data to move the cursor. How, under either carbon or cocoa environments, do I tell the system to ignore the mouse as a pointing device?
Edit: after some digging I've found that I can turn off mouse position updating with the CGAssociateMouseAndMouseCursorPosition() function, but this does not allow me to specify a single mouse. Can anyone explain the OS X relationship between HID mouse devices and the cursor? There has to be a binding between the hardware and software on a device by device basis but I can't find it.
I would look into writing a basic user-space driver for the mouse.
This will allow you direct access to the mouse as a USB device. You can also take control of the device from the system for your exclusive use.
There is some documentation here:
Working With USB Device Interfaces
To get you started, the set up steps to connect to a USB device go like this (I think, my IOKit is rusty)
include < IOKit/IOKitLib.h > and < IOKit/usb/IOUSBLib.h >
find the device you are interested in using IOServiceMatching(). This lets you pick find the correct USB device based on its properties, including things like vendor ID, &c. (See the IORegistryExplorer tool screen shot below)
get a USB plugin instance (let's call it plugin) with IOCreatePlugInInterfaceForService()
use plugin from step 2 get a device interface (let's call it device) using (**plugin)->QueryInterface()
device represents a connection handle to your USB device--open it first using either (**device).USBDeviceOpen or (**device).USBDeviceOpenSeize(). from there you should be able to send/receive data.
Sounds like a lot I know.. and there might be an easier way, but this is what comes to my mind. There may be some benefits to having this level of control of the device, not sure. good luck.

Resources