spAudio APIリファレンス

入力プラグイン

入力プラグインのための関数です. 様々なファイル形式での読み込みやオーディオデバイスからの入力が可能となります.

spReadPlugin, spReadPluginInByte, spReadPluginDouble
目的
プラグインを用いてファイルからデータを読み込みます.
書式
#include <sp/spOutputPlugin.h>

long _spReadPlugin(spPlugin *plugin, char *data, long length);
#define spReadPlugin(plugin, data, length) _spReadPlugin(plugin, (char *)(data), length)

long spReadPluginInByte(spPlugin *plugin, char *data, long data_size);
long spReadPluginDouble(spPlugin *plugin, double *data, long length);
引数
plugin
spOpenFilePluginで得られたspPlugin型へのポインタを指定します.
data
読み込みデータを保持するバッファです.spReadPluginの場合はファイルの量子化ビット数に応じて型が変わります. 8・16ビットであればshort型,24・32ビットであればlong型,64ビットであればdouble型になります.
length
読み込むポイント数です(継続時間長をポイント単位にしたものではありません). 例えば,ステレオデータの場合であれば,読み込む継続時間長をポイント単位にしたものの2倍の値です.
data_size
読み込むバイト数です.
戻り値
読み込まれたポイント数・バイト数が返ります. 正常に読み込めた場合は引数のlengthもしくはdata_sizeと同じ値になります.
説明
spReadPluginspReadPluginInByteの違いはデータの長さの与え方が異なるだけです. spReadPluginDoubleの場合は,基本的に-1〜1の範囲の値になっています.
関連項目
spOpenFilePlugin, spWritePlugin
spSeekPlugin
目的
データの読み出し位置を移動します.
書式
#include <sp/spInputPlugin.h>

spBool spSeekPlugin(spPlugin *plugin, spLong pos);
引数
plugin
spOpenFilePluginで得られたspPlugin型へのポインタを指定します.
pos
時刻をポイント単位にしたものを指定します.
戻り値
正常に終了した場合はSP_TRUEが返り,そうでない場合はSP_FALSEが返ります.
説明
この関数が終了した後にspReadPlugin等の読み込み関数を呼び出すと,この関数で指定した時刻から読み込みがスタートします.
関連項目
spOpenFilePlugin, spReadPlugin
spGetPluginTotalLength
目的
信号の継続時間長を取得します.
書式
#include <sp/spInputPlugin.h>

spLong spGetPluginTotalLength(spPlugin *plugin);
引数
plugin
spOpenFilePluginで得られたspPlugin型へのポインタを指定します.
戻り値
信号の継続時間長がポイント単位で返ります.
説明
ファイル形式によっては常に0が返ることがあります.
関連項目
spOpenFilePlugin, spReadPlugin

Last modified: "2013-06-23 17:03:37 hideki"