2012-10-03 6 views
5

estoy tratando de establecer la resolución de la cámara para la sesión de captura utilizando la siguiente: No pareceMAC OS X: Configure la resolución de la cámara USB externo con sessionPreset de AVCaptureSession no funciona

[session setSessionPreset:AVCaptureSessionPresetLow]; // or any others resolutions 

hacer ninguna diferencia . Siempre usa la resolución más alta que la cámara puede ofrecer. Esta es una cámara USB compatible con UVC y no fue fabricada por Apple.

Pregunta: ¿Puede setSessionPreset aplicarse a una cámara USB externa que no sea de Apple? O mi problema es otra cosa?

Editar: que también trató esta prueba:

if ([session canSetSessionPreset:AVCaptureSessionPresetLow]) 
{ 
    NSLog(@"can presetlow"); // this part got called. 
    [session beginConfiguration]; 
    session.sessionPreset = AVCaptureSessionPresetLow; 
    [session commitConfiguration]; 
} 
else 
{ 
    NSLog(@"no, can't presetlow"); 
} 

pregunta Recompensa: Cómo establecer la resolución de la cámara en este caso?

+0

¿Qué cámara está utilizando específicamente? –

+0

Sin nombre de marca ... Uno de los de eBay. – user523234

+0

mi recomendación: comience con una cámara que se sabe que hace lo que quiere, si tiene los medios –

Respuesta

2

Es posible que no sea posible, dependiendo de la cámara. Compatible con UVC no significa que todas las funciones son compatibles.

http://www.mac-compatible-web-cam.com/?ID=McRmr2

Una solución alternativa, dependiendo de su aplicación, podría ser la de tomar la imagen de alta resolución y convertirlo en res más bajos en el código.

+0

he estado haciendo la captura y convirtiéndola a una resolución más baja. Pero debido a la naturaleza de la aplicación, traté de evitar ese proceso tanto como sea posible. – user523234