Je travaille avec la fonctionnalité de zoom dans la caméra AVFoundation, j'ai mis en œuvre le zoom en mettant à l'échelle la vue qui a AVCaptureVideoPreviewLayer. Maintenant, je veux capturer l'image agrandie.Capture d'une vue d'aperçu agrandie dans AVFoundation
ici est mon code pour ajouter AVFoundationVideoPreviewLayer à la vue:
// create a uiview subclass for showing the camera feed
UIView *previewView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 430)];
[[self view] addSubview:previewView];
CGRect layerRect = CGRectMake(0, 0, 320, 430);
[[self avCaptureVideoPreviewLayer] setBounds:layerRect];
[[self previewLayer] setPosition:CGPointMake(CGRectGetMidX(layerRect), CGRectGetMidY(layerRect))];
// add the video previewview layer to the preview view
[[previewView layer] addSublayer:[self avCaptureVideoPreviewLayer]];
code pour zoomer vue aperçu
// zoom the preview view using core graphics
[previewView setTransform:CGAffineTransformMakeScale(2.0, 2.0)];
Maintenant, je veux saisir cette image zoomée de previewView
Merci à l'avance .
d'autres meilleures solutions? – kadungon
En ce qui concerne votre accident: Commencez simplement par recadrer que redimensionner pour résoudre votre problème de mémoire. Ne calculez pas une grande image si vous en laissez tomber la majeure partie plus tard. – CipherCom
J'ai essayé votre code mais je ne pouvais pas comprendre cameraZoom et le résultat final est toujours une image vide. Pouvez-vous partager plus? –