5

logitech c920エンコードされたh264 capture pin(サブタイプ: ) を表示するWeb カメラがありますMEDIASUBTYPE_H264

h264 ピンは、次の解像度をサポートしています。

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

私のテストでは、選択した解像度に関係なく、常に 3 M ビットを使用します。特に解像度が低い場合は、少し多すぎます。

directshow を使用して目的のビットレートをプログラムで選択する方法についてのアイデアはありますか? それとも他のAPIですか?

4

2 に答える 2

2

IAMStreamConfig インターフェイスのピンを照会し、GetStreamCaps() を介してこのフォーマットのリストを取得し、必要なものを選択します。これには、dwBitRate フィールドを含む VIDEOINFO 構造へのポインター pFormat が含まれます。このフィールドを目的のビットレートに変更し、この新しいデータで IAMStreamConfig::SetFormat を呼び出します。

于 2012-07-31T11:31:57.757 に答える
1

Logitech サポートの回答から、エンコーディングは 80/20 HW/SW であり、ビットレート (および GOP) を制御できないことがわかります。ただし、バンドルされているソフトウェアは明らかにそれを行います。それ以外では、解像度と fps の組み合わせが非常に低い場合に発生しますが、ある程度の制限の後、ビット レートが低下します。

Required bandwidth for size:  ( 1920 , 1080 )  @ 30  is 2.81771 Mbit 
Required bandwidth for size:  ( 1920 , 1080 )  @ 25  is 2.81672 Mbit 
Required bandwidth for size:  ( 1920 , 1080 )  @ 20  is 2.82701 Mbit 
Required bandwidth for size:  ( 1920 , 1080 )  @ 15  is 2.83327 Mbit 
Required bandwidth for size:  ( 1920 , 1080 )  @ 10  is 2.83594 Mbit 
Required bandwidth for size:  ( 1920 , 1080 )  @ 5  is 2.8431 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 30  is 2.82013 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 25  is 2.82436 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 20  is 2.83217 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 15  is 2.83696 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 10  is 2.83721 Mbit 
Required bandwidth for size:  ( 1280 , 720 )  @ 5  is 2.45272 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 30  is 2.82089 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 25  is 2.82313 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 20  is 2.83131 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 15  is 2.83343 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 10  is 2.79526 Mbit 
Required bandwidth for size:  ( 864 , 480 )  @ 5  is 1.15564 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 30  is 1.90123 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 25  is 1.89367 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 20  is 1.26006 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 15  is 0.957935 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 10  is 0.637158 Mbit 
Required bandwidth for size:  ( 320 , 180 )  @ 5  is 0.328456 Mbit

解決策を思いついた場合は、共有してください。ありがとう!

于 2012-11-18T07:43:20.673 に答える