내 프로젝트에서 GPUImage
을 기반으로하는 불투명 필터 프레임 워크가 생깁니다. 응용 프로그램을 만들려면 FaceTime과 같은 비디오 호출을 할 수 있습니다. OpenGL ViewA
에서 제공된 필터 프레임 워크를 사용하여 카메라 이미지를 렌더링하고, 내 자신의 openGL을 사용하여 viewB
원격 비디오 스트림을 렌더링합니다. 이제 문제가 발생합니다. viewA
은 viewB
의 내용을 불규칙하게 보여줍니다. 특히 viewA의 프레임이 변경된 경우은 다음과 같습니다. 원격 비디오 픽셀 형식은 I420이고 로컬 비디오 픽셀 형식은 NV12입니다. 따라서 기술적으로
viewA
은 viewB
의 콘텐츠를 렌더링 할 수 없어야합니다. 보시다시피 viewA
은 viewB
의 회색 이미지를 표시합니다. 나는 어떻게 든 viewB
의 Y 평면 데이터를 얻으려고 viewA
라고 가정합니다. viewA가 회색 이미지를 표시하면 프레임 속도가 크게 느려집니다. viewA
이 불투명 한 프레임 워크에 속하기 때문에 자신 만의 OpenGL 렌더링 부분 인 viewB
만 제어 할 수 있습니다.이 버그를 해결하는 방법을 모르겠습니다. 두 EAGLContext가 충돌 할 가능성이 가장 높거나 viewA
및 viewB
이 렌더링/텍스처 버퍼를 어떻게 든 공유 했습니까? 누구든지, 제발 도와주세요. 나는 며칠 동안 고생하고 있습니다.다른 OpenGL 컨텍스트에서 GPUImage 작업이 실패했습니다
0
A
답변
0
OpenGL 컨텍스트가 관리를 혼란시키는 결과가 발생합니다.