현재 실시간 카메라 이미지의 스냅 샷을 찍으려고 시도한 임시 변경에서 ImageSnap의 일부 내부 부품을 조정 중입니다. 나는 이미지가 화면 비율에 관계없이 크기가 조정되었다 것으로 나타났습니다, 다음 줄에 문제를 추적 :CIImage에서 깨끗한 조리개 자르기를 피하십시오. imageWithCVImageBuffer
CVImageBufferRef frame;
// obtain frame
verbose("frame is %d x %d px\n", (int)CVPixelBufferGetWidth(frame),
(int)CVPixelBufferGetHeight(frame));
CIImage *ciimg = [CIImage imageWithCVImageBuffer:frame];
verbose("CIImage has %d x %d px\n", (int)[ciimg extent].size.width,
(int)[ciimg extent].size.height);
적어도 내가 사용 한 해당 장치에 대한,이 라인의 출력이
frame is 1920 x 1080 px
CIImage has 1888 x 1062 px
입니다
이미지의 크기가 조정 된 코드 부분은 보이지 않지만 이미지의 크기는 분명히 조정되었습니다. 그게 어디에서 왔으며, 더 중요한 것은 어떻게 그것을 막을 수 있습니까?
나는 다음과 같은 문서를 사용하고 있지만, 거기에 힌트를 찾을 수 없습니다 :
편집 :로 내가 말할 수있는 한, 스케일링은 없지만 대신 자르기가 실행됩니다. 깨끗한 구멍 설정 mentioned in the Core Video Programming Guide로 인해. 그래서 이제이 깨끗한 조리개를 전체 프레임 크기로 설정하는 방법이나이를 사용하지 못하도록하는 방법에 대해 의문이 생깁니다.
가까운 장래에 테스트 할 수 없지만 실제로 시도해 볼 수있을 때까지 작동한다고 가정합니다. 감사! – MvG