>我正在使用QTKit编写视频捕获应用程序。它的设置使用户必须从使用 [QTCaptureDevice inputDevicesWithMediaType: QTMediaTypeVideo] 获取的列表中选择一个网络摄像头。 我希望用户能够选择一个摄像头,并自动选择相应的麦克风,但我看不到在 QTKit 中实现此目的的方法。
我的应用程序需要在 OSX 10.6 到 10.8 上运行,所以我无法使用 AVFoundation,它在 10.7 中到达。此时已弃用 QuickTime。
所以问题是:在Mac OS 10.6到10.8上,如何自动将网络摄像头与其嵌入式麦克风匹配。
谢谢
的方法可在 QTCaptureDevice Class Reference 中找到,使用方法属性ForKey和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。 此外,此Apple邮件列表存档表明它可能仅适用于Apple iSight设备:(。
最后,可以在这里找到一个额外的示例:Apple QTRecorder 示例