<Return[A]><Top>

AVIStreamRead

Declare Sub Api_AVIStreamOpenFromFile Lib "avifil32" Alias "AVIStreamOpenFromFile" (ByVal ppavi&, ByVal szFile$, ByVal fccType&, ByVal lParam&, ByVal mode&, ByRef pclsidHandler&)

Declare Sub AVIStreamOpenFromFile Lib "avifil32" Alias "AVIStreamOpenFromFile" (ByVal ppavi As Long, ByVal szFile As String, ByVal fccType As Long, ByVal lParam As Long, ByVal mode As Long, ByRef pclsidHandler As Long)

ストリームタイプに従って、ストリームからオーディオ、ビデオまたはその他のデータを読み取る。

パラメータ
pavi
    開いているストリームのハンドルを指定する。
lStart
    最初に読み取るサンプルを指定する。
lSamples
    読み取るサンプルの数を指定する。AVISTREAMREAD_CONVENIENT の値を指定すると、読み取るサンプルの数を調べるようストリー

    ムハンドラに指示することもできる。
lpBuffer
    データを受け取るバッファのアドレスを指定する。
cbBuffer
    lpBuffer パラメータで指定したバッファのサイズをバイト単位で指定する。
plBytes
    lpBuffer パラメータで指定したバッファに書き込まれるデータのバイト数を受け取るアドレスを指定する。ここの値には、NULL を指定すること

    ができる。
plSamples
    lpBuffer パラメータで指定したバッファに書き込まれるサンプルの数が受け取るアドレスを指定する。ここの値には、NULL を指定することが

    できる。

戻り値
    関数が成功すると 0 が返る。関数が失敗するとエラーが返る。返されるエラー値は次のとおりである。

    値                                               

説明                                                                                                                           

    AVIERR_BUFFERTOOSMALL

cbBuffer パラメータに、データの 1 つのサンプルよりも小さいバッファサイズが指定されている。

    AVIERR_MEMORY

メモリが不足しているため、読み取り操作を完了できなかった。

    AVIERR_FILEREAD

ファイルの読み取り中にディスク エラーが発生した。


解説
    lpBuffer パラメータに NULL を指定すると、この関数はデータを読み取らずに、そのデータのサイズに関する情報が返る。