우리는 GigE YUV 비디오 스트림을 읽고 그것을 화면에 표시하는 응용 프로그램을 가지고 있습니다. 프로파일 링을 통해 우리는 YUV (UYVY)에서 RGB24로 각 프레임을 변환하는 기능이 카메라 - 스크린 (camera-to-screen) 파이프 라인의 다른 어떤 부분보다 적어도 시간과 CPU가 더 오래 걸리는 것을 알게되었습니다.YUV -> RGB 변환을 하드웨어 가속화 할 수 있습니까?
우리가 사용하는 변환 함수의 GigE 소프트웨어 벤더 (Pleora)가 제공하고 자신의 '순'(비 최적화)보다 약간 빠른 구현이다. 우리는 나머지 파이프 라인에 대해 DirectShow를 사용하고 있습니다. '작업 관리자 벤치마킹'은 전환 기능을 호출 할 때 전환을 건너 뛸 때 4-5 %의 CPU 사용량과 CPU 사용량이 15-19 % 인 1080p 30fps 스트림을 보여줍니다.
질문은 우리는 한 :
- 우리를 위해이 변환을 수행하는 DirectShow 필터가 아니라 제 3 자 SDK 또는 우리 자신의 (CPU-에 의존하지 않고, 잘하면 더 성능이 좋은 방법으로, 거기에 기반, 직렬) 변환 기능?
- 이 변환을 CPU에서 수행해야합니까? 아니면 병렬 처리를 위해 GPU로 어떻게로드 오프 할 수 있습니까?
고마워요! 에릭.
비용은 이미지의 모든 바이트를 읽고 쓰므로 메모리 대역폭을 포화 시키므로 발생합니다. GPU 프로세싱은 낮은 대역폭 비율에 대한 높은 계산 오버 헤드에 대해서만 유익합니다. 이것은 YUV 오버레이를 사용하는 비디오 카드의 장점 중 하나입니다. –