Получение QTKit - отключение аудио или видео при получении от мультиплексированного устройства
Q: Как я могу отключить аудиопоток или видеопоток при получении от мультиплексированного устройства?
A: Как я могу отключить аудиопоток или видеопоток при получении от мультиплексированного устройства?
Мультиплексированные устройства, такие как DV и Камеры HDV представлены в Получении QTKit типом среды QTMediaTypeMuxed.
Чтобы только получить единый поток от устройства (например, только видео) отключите аудиосоединения на вводе устройства для устройства захвата изображения при помощи QTCaptureConnection метод setEnabled: и передача в NO.
Перечисление 1 отключает аудиосоединения от мультиплексированного ввода устройства.
QTCaptureDevice *theDefaultMuxedDevice;
QTCaptureDeviceInput *theDeviceInput;
BOOL success;
NSError *error;
...
// get the default muxed device
theDefaultMuxedDevice = [QTCaptureDevice defaultInputDeviceWithMediaType:QTMediaTypeMuxed];
// open the device
success = [theDefaultMuxedDevice open:&error];
if (YES == success) {
// get the associated device input
theDeviceInput = [QTCaptureDeviceInput deviceInputWithDevice:theDefaultMuxedDevice];
// get the list of owned connections
NSArray *ownedConnections = [theDeviceInput connections];
// disable all the audio connections
for (QTCaptureConnection *connection in ownedConnections) {
if ( [[connection mediaType] isEqualToString:QTMediaTypeSound] ) {
[connection setEnabled:NO];
}
}
} else {
// do something with the error code
}
... |
Если Вы только хотите получить аудио, отключите QTMediaTypeVideo соединения.
Ссылки:
Введение в руководство по программированию получения QTKit
История версии документа
| Дата | Примечания |
|---|---|
| 19.05.2008 | Новый документ, описывающий использование setEnabled: метод для отключения аудио или видеосъемки от мультиплексированных устройств. |