2014-09-17 12 views
0

내 앱에는 정말 많은 카메라 논리 기능이 있습니다.GPUImage 개별 카메라 로직

AVCaptureOutput에서 CoreImage 필터를 사용하고 지금까지 CIImage를 GLKView에 표시했습니다.

이제 CIImage를 CIFilter와 혼합하려고합니다. 그러나 "AVCaptureOutput-Loop"에서 CoreImage 필터 체인은 끝나지 않습니다.

그래서 CoreImage 기능을 대체하기 위해 GPUImage를 사용하고 싶습니다. 난 내 자신의 AVCaptureOutput을 가질 수 있도록

GPUImageVideoCamera 또는 GPUImageStillCamera없이 어떤 방법이 있나요, 그리고 예를 들면 :

PS

CMSampleBufferRef or CVPixelBufferRef > GPUImage > filter and store the image for the next AVCaptureOutput call > Display in my GLKView 

감사 : 내 나쁜 영어 죄송합니다)

답변

0

설명하는대로 GPUImageVideoCamera 또는 GPUImageStillCamera를 사용할 수 있습니다. GPUImageBuffer는 처리 된 이미지를 한 번에 필터 체인 (버퍼까지)에서 캐싱하고 한 프레임 씩 해제합니다. 나는 low-pass filtering을 위해 이것을 사용한다.

그런 다음 작업 결과를 GPUImageView 또는 GLKView 내에서 사용할 수있는 텍스처로 공급할 수 있습니다.

+0

그러나 다른 로직에 따라 특정 프레임에서만 선택적으로 GPUImage 필터를 사용하고 싶다면 어떻게해야할까요? 그래서 OP 질문에, 거기에 GPamplemuff 필터에 CMSampleBufferRef를 전달하는 방법은 무엇입니까? 내 가정 UIImage로 버퍼 변환 및 다음 필터에 전달 불필요한 성능이 있지만 어쩌면 내가 틀렸어? – Danny

+0

알아 냈어 : GPUImageRawDataInput 사용 – Danny