我正在使用QTKit编写视频捕获应用程序。它的设置使用户必须从[QTCaptureDevice inputDevicesWithMediaType:QTMediaTypeVideo]获得的列表中选择一个网络摄像头。我希望用户能够选择一个摄像头,并自动选择相应的麦克风,但我没有看到在QTKit中完成此任务的方法。
我的应用程序需要在OSX 10.6到10.8上运行,所以我不能使用AVFoundation,它在10.7中到达。此时不推荐使用QuickTime。
所以问题是:在Mac OS 10.6到10.8上,如何自动将网络摄像头相机与其嵌入式麦克风相匹配。
由于
答案 0 :(得分:0)
在QTCaptureDevice Class Reference中可以找到记录在案的方法, 使用方法attributeForKey和QTCaptureDeviceLinkeDevicesAttribute的键,可以像这样调用。
QTCaptureDevice* device = [QTCaptureDevice deviceWithUniqueID:deviceUniqueID];
QTCaptureDevice* sibling = Nil;
NSArray* linkedDevices = [device attributeForKey: QTCaptureDeviceLinkeDevicesAttribute
NSUInteger linkedCount = [linkedDevices count];
for (NSUInteger i = 0; i < linkedCount; i++)
{
sibling = [linkedDevicesobjectAtIndex: i];
.
.
.
}
但是,我还没有看到这个工作,返回的数组总是为Nil。此外This Apple Mailing List Archive表明它可能仅适用于Apple iSight设备:(。
最后,可以在此处找到其他示例:Apple QTRecorder Sample