キーワードから探す

※スペースで区切って複数検索が可能です。

カテゴリで絞り込む

よく検索されるキーワード

ID:356
作成日: 2022/11/29

AcapSetBufferAddress関数に登録するバッファのサイズに制約はありますか?

カテゴリ SDK-AcapLib2 
対象製品 全てのカメラリンク対応ボード


AcapLib2の仕様上、バッファ1面あたり約4GB未満(※1、※2)という制約があります。
そのため、バッファ1面あたり4GBを超えないように各サイズ設定を行ってください。


※1 環境によって多少前後するため、AcapSetBufferAddress関数でバッファの登録ができない場合は、バッファサイズを小さくしてから再設定してください。

※2 AcapLib2以外にも開発言語によっては、使用可能なバッファの最大値が約2GBまでという制約が存在します。具体的にはC#のBitmapクラスやByte配列などが該当しますので、使用される開発言語にはご注意ください。



なお、バッファサイズは
「ACL_X_SIZE(X Size) x ACL_Y_SIZE(Y Size) x ACL_BOARD_BIT / 8 / 1024 / 1024 / 1024」で求めることが可能です。
[計算例]
ACL_X_SIZE =16384
ACL_Y_SIZE =40000
ACL_BOARD_BIT  = 32bit(4Byte)
上記の設定値の場合、
(16384 × 40000  × 32 ) / 8 / 1024 / 1024 /1024= 2.44GBとなります。(※3)

※3 バッファサイズを計算する際にintで計算すると2GBを超えた時点で計算結果が負数になります。
バッファサイズを計算する場合は、unsigned intで計算するなど計算結果が負数とならないようご注意ください。

なお、4GBを超えるサイズ設定を行っていないにも関わらず問題が発生する場合は、
Xサイズ、Yサイズに制限はありますか?を参考に、ボードのサイズ制限に抵触していないかご確認ください。
この内容は参考になりましたか?
ご回答いただきまして、ありがとうございます。
今後の参考にさせていただきます。
ご意見・ご感想、ありがとうございます。

関連するご質問

Now Loading...

Now Loading...