Как управлять битрейтом MEDIASUBTYPE _H264 directshow?

У меня есть веб-камера logitech c920, которая представляет закодированныйh264 capture pin(подтип:MEDIASUBTYPE_H264).

Вывод h264 поддерживает следующие разрешения:

FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 640x480 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 160x90 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 160x120 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 176x144 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 320x180 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 320x240 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 352x288 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 432x240 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 640x360 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 800x448 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 800x600 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 864x480 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 960x720 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 1024x576 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 1280x720 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 1600x896 @ 30 fps  
FORMAT_VideoInfo - subtype: MEDIASUBTYPE_H264 1920x1080 @ 30 fps  

В моем тестировании он всегда использует 3 Мбит независимо от выбранного разрешения. Это многовато, особенно для низких разрешений.

Любая идея о том, как программно выбрать желаемый битрейт с помощью directshow? Или, может быть, другой API?

5
задан hims056 28 July 2012 в 08:30
поделиться