PUCLIB 1.6.2.0
PHOTRON USB Control Library
読み取り中…
検索中…
一致する文字列を見つけられません
pucutil 名前空間

関数

DLL_EXPORT PUCRESULT WINAPI ExtractSequenceNo (const PUCHAR pData, UINT32 nWidth, UINT32 nHeight, PUSHORT pSeqNo)
 圧縮画像データからシーケンス番号を抽出します。
DLL_EXPORT PUCRESULT WINAPI DecodeData (PUINT8 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals)
 圧縮画像データを輝度値データに展開します。
DLL_EXPORT PUCRESULT WINAPI DecodeDataMultiThread (PUINT8 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals, UINT32 nThreadCount)
 圧縮画像データを輝度値データに展開します。このデコード処理はマルチスレッドで行われます。
DLL_EXPORT PUCRESULT WINAPI DecodeDCTData (PINT16 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals)
 圧縮画像データをDCT係数に展開します。
DLL_EXPORT PUCRESULT WINAPI DecodeDCData (PUINT8 pDst, UINT32 nBlockX, UINT32 nBlockY, UINT32 nBlockCountX, UINT32 nBlockCountY, const PUINT8 pSrc)
 圧縮画像データのDC成分を展開します。
DLL_EXPORT PUCRESULT WINAPI GetAvailableGPUProcess ()
 PCがGPU処理可能かを取得します。
DLL_EXPORT PUCRESULT WINAPI SetupGPUDecode (PUC_GPU_SETUP_PARAM param)
 GPU処理で使用するメモリを確保します。
DLL_EXPORT PUCRESULT WINAPI TeardownGPUDecode ()
 GPU処理で使用したメモリを解放します。
DLL_EXPORT PUCRESULT WINAPI DecodeGPU (bool download, unsigned char *pSrc, unsigned char **pDst, UINT32 lineBytes)
 圧縮画像データを輝度値データに展開します。(GPU使用)
DLL_EXPORT PUCRESULT WINAPI GetGPULastError (int &errorCode)
 最後に発生したGPU処理でのエラーコードを取得します。
DLL_EXPORT PUCRESULT WINAPI IsSetupGPUDecode (bool &status)
 GPUデコードのメモリが確保がされているかを取得します。

関数詳解

◆ DecodeData()

DLL_EXPORT PUCRESULT WINAPI DecodeData ( PUINT8 pDst,
UINT32 nX,
UINT32 nY,
UINT32 nWidth,
UINT32 nHeight,
UINT32 nLineBytes,
const PUINT8 pSrc,
const PUSHORT pQVals )

圧縮画像データを輝度値データに展開します。

引数
[out]pDst展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり)
[in]nX展開開始する左上座標X。0もしくは8の倍数である必要があります。
[in]nY展開開始する左上座標Y。0もしくは8の倍数である必要があります。
[in]nWidth展開する横幅
[in]nHeight展開する高さ
[in]nLineBytes展開先バッファの横幅のバイト数
[in]pSrc圧縮画像データ
[in]pQVals量子化テーブル
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
本関数はスレッドセーフです。本関数は並列実行が可能です。
参照
PUC_GetXferDataSize
PUC_GetMaxXferDataSize

◆ DecodeDataMultiThread()

DLL_EXPORT PUCRESULT WINAPI DecodeDataMultiThread ( PUINT8 pDst,
UINT32 nX,
UINT32 nY,
UINT32 nWidth,
UINT32 nHeight,
UINT32 nLineBytes,
const PUINT8 pSrc,
const PUSHORT pQVals,
UINT32 nThreadCount )

圧縮画像データを輝度値データに展開します。このデコード処理はマルチスレッドで行われます。

引数
[out]pDst展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり)
[in]nX展開開始する左上座標X。0もしくは8の倍数である必要があります。
[in]nY展開開始する左上座標Y。0もしくは8の倍数である必要があります。
[in]nWidth展開する横幅
[in]nHeight展開する高さ
[in]nLineBytes展開先バッファの横幅のバイト数
[in]pSrc圧縮画像データ
[in]pQVals量子化テーブル
[in]nThreadCountマルチスレッドで処理するスレッド数
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
本関数はスレッドセーフです。本関数は並列実行が可能です。
参照
PUC_GetXferDataSize
PUC_GetMaxXferDataSize
PUC_DecodeData

◆ DecodeDCData()

DLL_EXPORT PUCRESULT WINAPI DecodeDCData ( PUINT8 pDst,
UINT32 nBlockX,
UINT32 nBlockY,
UINT32 nBlockCountX,
UINT32 nBlockCountY,
const PUINT8 pSrc )

圧縮画像データのDC成分を展開します。

引数
[out]pDst展開先バッファ。デコード範囲に含まれるブロックの総数だけ確保する必要があります。
[in]nBlockX展開開始するブロック座標X。
[in]nBlockY展開開始するブロック座標Y。
[in]nBlockCountX展開するX方向のブロック数
[in]nBlockCountY展開するY方向のブロック数
[in]pSrc圧縮画像データ
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
本関数はスレッドセーフです。本関数は並列実行が可能です。
参照
PUC_GetXferDataSize
PUC_GetMaxXferDataSize

◆ DecodeDCTData()

DLL_EXPORT PUCRESULT WINAPI DecodeDCTData ( PINT16 pDst,
UINT32 nX,
UINT32 nY,
UINT32 nWidth,
UINT32 nHeight,
UINT32 nLineBytes,
const PUINT8 pSrc,
const PUSHORT pQVals )

圧縮画像データをDCT係数に展開します。

引数
[out]pDst展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり)
[in]nX展開開始する左上座標X。0もしくは8の倍数である必要があります。
[in]nY展開開始する左上座標Y。0もしくは8の倍数である必要があります。
[in]nWidth展開する横幅
[in]nHeight展開する高さ
[in]nLineBytes展開先バッファの横幅のバイト数
[in]pSrc圧縮画像データ
[in]pQVals量子化テーブル
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
本関数はスレッドセーフです。本関数は並列実行が可能です。
参照
PUC_GetXferDataSize
PUC_GetMaxXferDataSize

◆ DecodeGPU()

DLL_EXPORT PUCRESULT WINAPI DecodeGPU ( bool download,
unsigned char * pSrc,
unsigned char ** pDst,
UINT32 lineBytes )

圧縮画像データを輝度値データに展開します。(GPU使用)

引数
[in]downloadfalseを指定した場合デコードされたデータはデバイス(GPU)メモリに保存され、trueの場合はホスト(CPU)メモリに保存されます。
[in]pSrcデコード対象のエンコードされた元のフレームデータです。
[out]pDstデコードされた処理結果のフレームデータです。download引数の設定によってデバイスメモリまたはホストメモリに出力されます。
[in]lineBytes展開先バッファの横幅のバイト数
download引数がtrueの場合、GPUでデコードされたデータをこの引数で指定されたアドレスにコピーします。そのため事前にホストメモリのバッファの確保が必要です。
横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり)
download引数がfalseの場合、GPUでデコードされたデータのデバイスメモリのアドレスを取得します。ホストメモリの確保は不要です。
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。

◆ ExtractSequenceNo()

DLL_EXPORT PUCRESULT WINAPI ExtractSequenceNo ( const PUCHAR pData,
UINT32 nWidth,
UINT32 nHeight,
PUSHORT pSeqNo )

圧縮画像データからシーケンス番号を抽出します。

引数
[in]pData圧縮画像データ
[in]nWidth画像の横幅
[in]nHeight画像の高さ
[out]pSeqNo抽出したシーケンス番号の格納先
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
本関数はスレッドセーフです。本関数は並列実行が可能です。

◆ GetAvailableGPUProcess()

DLL_EXPORT PUCRESULT WINAPI GetAvailableGPUProcess ( )

PCがGPU処理可能かを取得します。

戻り値
GPU処理可能であればPUC_SUCEEDED, 不可能であればPUC_ERROR_NOTSUPPORTが返ります。

◆ GetGPULastError()

DLL_EXPORT PUCRESULT WINAPI GetGPULastError ( int & errorCode)

最後に発生したGPU処理でのエラーコードを取得します。

引数
[out]errorCodeエラーコードです。
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。

◆ IsSetupGPUDecode()

DLL_EXPORT PUCRESULT WINAPI IsSetupGPUDecode ( bool & status)

GPUデコードのメモリが確保がされているかを取得します。

引数
[out]statustrue:確保済み、false:確保されていない
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。

◆ SetupGPUDecode()

DLL_EXPORT PUCRESULT WINAPI SetupGPUDecode ( PUC_GPU_SETUP_PARAM param)

GPU処理で使用するメモリを確保します。

引数
[in]param設定パラメータです。
戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。

◆ TeardownGPUDecode()

DLL_EXPORT PUCRESULT WINAPI TeardownGPUDecode ( )

GPU処理で使用したメモリを解放します。

戻り値
成功時はPUC_SUCCEEDED、失敗時はそれ以外が返ります。
覚え書き
PUC_DecodeGPUに使用したバッファを解放後に実行しても問題ありません。