저는 gstreamer applemedia encoder plugins에서 작업 중이며 VideoToolbox 기반 비디오 인코딩을 개선했습니다.VideoToolbox의 VTCompressionSession은 언제 하드웨어 가속의 이점을 줍니까?
$ gst-launch-1.0 filesrc location=source.avi ! decodebin ! vtenc_h264 ! h264parse ! qtmux name=mux ! filesink location=sink.mp4
내가 맥 OS 시스템에서 VTCompressionSession
를 사용 H264 비디오를 인코딩 할 때 매우 낮은 CPU 사용량을보고 기다리고 있었다 : 같은 gstreamer를 파이프 라인을 실행합니다. 그러나 테스트 한 시스템에서 2009 년 중반 Macbook Pro GeForce 9600M 및 Mid 2011 Mac mini와 Radeon HD 6630M을 사용하면 인코딩 속도는 여전히 80 %에서 130 % 사이에서 이루어 지므로 하드웨어 가속화가되지 않음을 나타냅니다.
하드웨어 구성 또는 어떤 압축 매개 변수 (예 : kVTCompressionPropertyKey_ProfileLevel
)가 하드웨어 가속 인코딩을 사용합니까?
예, 좋은 답변입니다. 한편, 나는이 Handbrake 지점에서 API에 대한 문서화되지 않은 (?) 매개 변수에 대한 자세한 정보를 찾아 냈습니다. https://github.com/galad87/HandBrake-QuickSync-Mac/commit/2c1332958f7095c640cbcbcb45ffc955739d5945#diff-72d938f71df3506b8ad74530b39e7a0bR83 - 설명서에 대한 안내문이나 자세한 내용이 도움이 될 것입니다. – drott