Wednesday 22 January 2014

Webcam Settings 2.0 will support FaceTime HD Camera on MacBook Air 2013

FaceTime HD Camera on MacBook Air 2013

The FaceTime HD Camera on MacBook Air 2013 is very different from any previous iSight or FaceTime camera.

Except for the first FireWire iSight, every built-in camera Apple installed on their Mac is a USB camera. Most of the external USB camera we can find on the market follows UVC (USB Video Class) specification and can be used on the Mac without any extra driver. Before MacBook Air 2013, Apple also use UVC camera on MacBook Air, MacBook Pro, iMac and Cinema Display.

Use "System Information" we can find Apple's built-in camera on the USB Bus.
MacBook Air 2011, FaceTime Camera (Built-in) on USB Bus

But on MacBook Air 2013, the built-in camera is nowhere to be found on USB Device Tree.
MacBook Air 2013, no camera on USB Device Tree

Now there is a new hardware category - Camera.
MacBook Air 2013, FaceTime HD Camera in the new Camera hardware category

This new FaceTime HD Camera could be the start of a new generation of Apple's built-in camera. Its hardware is so different that Apple even published a warning that some apps may not work properly with it, for example Final Cut Pro X v10.0.8.
MacBook Air (Mid 2013): FaceTime HD Camera may not work with some applications

Webcam Settings 2.0 and FaceTime HD Camera on MacBook Air 2013

Due to this unexpected hardware change, Webcam Settings 1.5 and Sight Control 1.4 are unfortunately not compatible with the new camera. I had to order a new MacBook Air 2013 from Japan and have it shipped overseas to Taiwan so I can inspect the new hardware and try to find a solution.

Now I am pleased to announce - Webcam Settings 2.0 will officially support the new FaceTime HD Camera on MacBook Air 2013.

The new FaceTime HD Camera on MacBook Air 2013 has less hardware controls then previous models, which includes Exposure Time, Brightness, Contrast, Hue, Saturation and Sharpness.
Webcam Settings 2.0 basic settings for FaceTime HD Camera on MacBook Air 2013

There is a new control on this camera - Noise Reduction.
Webcam Settings 2.0 advanced settings for FaceTime HD Camera on MacBook Air 2013

Secrets of FaceTime HD Camera on MacBook Air 2013

The new camera can produce 720P (1280 x 720) video stream in uncompressed format (Y'CbCr 4:2:2 - uyvy) at 30 FPS. This represents a tremendous amount of data transmitting from the camera to host computer. It is beyond the bandwidth of a USB 2.0 Bus. Other webcam manufacturers overcome this issue by transmitting in a compressed format - usually Motion JPEG or H.264. A compressed format means reduced image quality, added cost to the compression hardware on the camera and added processing time and CPU power on both the camera and host computer.

Apple choose another way to overcome this issue, they connect the camera through a faster Bus. No, not USB 3.0, USB 3.0 webcams are rare and maybe not cost effective as of today. Instead, Apple connects the new camera through PCIe bus.

The funny thing is this camera declares itself as a Broadcom PCI device with PCI vendor ID 0x14E4 not with Apple PCI vendor ID 0x106B.
AppleCamIn on PCIe bus, vendor ID 0x14E4, product ID 0x1570

I spoke to a friend work at Broadcom, he couldn't figure this out either. I think need iFixit to teardown the display of their MacBook Air 2013 and examine the camera module to find out what's going on. Oh! My MBA 2013 needs to keep in good shape so I can add new features to Webcam Settings, no teardown on this one, sorry :)

No comments:

Post a Comment