Sound Lib: SoundLib::AudioHandler< T > クラステンプレート

Sound Lib

Sound Lib
C/C++Windowsゲーム用音声再生ライブラリ
SoundLib::AudioHandler< T > クラステンプレート

オーディオデータ操作クラス [詳解]

#include <AudioHandler.h>

SoundLib::AudioHandler< T > の継承関係図
SoundLib::AudioHandler< T > 連携図

公開メンバ関数

 AudioHandler (std::basic_string< T > name, Audio::IAudio *pAudio)
 コンストラクタ [詳解]
 
 AudioHandler (AudioHandler< T > &&obj)=default
 ムーブコンストラクタ [詳解]
 
 ~AudioHandler ()
 デストラクタ [詳解]
 
PlayingStatus GetStatus () const
 再生状況を示すステータスを取得する。 [詳解]
 
float GetVolume () const
 ボリュームを取得する。 [詳解]
 
bool SetVolume (float volume)
 ボリュームを設定する。 [詳解]
 
float GetFrequencyRatio () const
 再生速度とピッチの変化率を取得する。 [詳解]
 
bool SetFrequencyRatio (float ratio)
 再生速度とピッチの変化率を設定する。 [詳解]
 
AudioHandler< T > & operator= (AudioHandler< T > &&obj)=default
 ムーブ代入演算子のオーバーロード [詳解]
 
bool Prepare (IXAudio2 &rXAudio2)
 XAudio2のソースボイスを生成する。 [詳解]
 
void Start (bool isLoopPlayback)
 ファイルの先頭から再生を行う。 [詳解]
 
void Start (IAudioHandlerDelegate< T > *pDelegate)
 ファイルの先頭から再生を行う。 [詳解]
 
void Start (void(*onPlayedToEndCallback)(const T *pName))
 ファイルの先頭から再生を行う。 [詳解]
 
void Stop ()
 再生を停止する。 [詳解]
 
void Pause ()
 再生を一時停止する。 [詳解]
 
void Resume ()
 一時停止中の音声を続きから再生する。 [詳解]
 
void BufferEndCallback ()
 XAusio2再生用バッファが空になったタイミングで呼び出されるコールバック関数。 [詳解]
 
- 基底クラス SoundLib::IVoiceCallbackDelegate に属する継承公開メンバ関数
virtual ~IVoiceCallbackDelegate ()=default
 デストラクタ [詳解]
 

静的公開変数類

static const int MAX_FREQENCY_RATIO = 4
 /// [詳解]
 

詳解

template<typename T>
class SoundLib::AudioHandler< T >

オーディオデータ操作クラス

構築子と解体子

◆ AudioHandler() [1/2]

template<typename T >
SoundLib::AudioHandler< T >::AudioHandler ( std::basic_string< T >  name,
Audio::IAudio pAudio 
)

コンストラクタ

引数
name音声データの識別に使用する名前
pAudioオーディオファイルデコードクラスのインスタンス

◆ AudioHandler() [2/2]

template<typename T >
SoundLib::AudioHandler< T >::AudioHandler ( AudioHandler< T > &&  obj)
default

ムーブコンストラクタ

引数
objムーブ対象オブジェクト

◆ ~AudioHandler()

template<typename T >
SoundLib::AudioHandler< T >::~AudioHandler ( )

デストラクタ

関数詳解

◆ BufferEndCallback()

template<typename T >
void SoundLib::AudioHandler< T >::BufferEndCallback ( )
virtual

XAusio2再生用バッファが空になったタイミングで呼び出されるコールバック関数。

SoundLib::IVoiceCallbackDelegateを実装しています。

◆ GetFrequencyRatio()

template<typename T >
float SoundLib::AudioHandler< T >::GetFrequencyRatio ( ) const

再生速度とピッチの変化率を取得する。

戻り値
音源からの変化率

1.0の場合、音源から変化なし。 2.0の場合、再生速度2倍で1オクターブ高音。 0.5の場合、再生速度1/2で1オクターブ低音。

参照
IXAudio2SourceVoice::GetFrequencyRatio()

◆ GetStatus()

template<typename T >
PlayingStatus SoundLib::AudioHandler< T >::GetStatus ( ) const

再生状況を示すステータスを取得する。

戻り値
再生ステータス

◆ GetVolume()

template<typename T >
float SoundLib::AudioHandler< T >::GetVolume ( ) const

ボリュームを取得する。

戻り値
ボリューム(XAudio2の定義に従う)

◆ operator=()

template<typename T >
AudioHandler<T>& SoundLib::AudioHandler< T >::operator= ( AudioHandler< T > &&  obj)
default

ムーブ代入演算子のオーバーロード

引数
objムーブ対象オブジェクト
戻り値
ムーブ後のオブジェクト

◆ Pause()

template<typename T >
void SoundLib::AudioHandler< T >::Pause ( )

再生を一時停止する。

◆ Prepare()

template<typename T >
bool SoundLib::AudioHandler< T >::Prepare ( IXAudio2 &  rXAudio2)

XAudio2のソースボイスを生成する。

引数
rXAudio2XAudio2オブジェクト
戻り値
成否

◆ Resume()

template<typename T >
void SoundLib::AudioHandler< T >::Resume ( )

一時停止中の音声を続きから再生する。

◆ SetFrequencyRatio()

template<typename T >
bool SoundLib::AudioHandler< T >::SetFrequencyRatio ( float  ratio)

再生速度とピッチの変化率を設定する。

引数
ratio音源からの変化率
戻り値
成否

1.0の場合、音源から変化なし。 2.0の場合、再生速度2倍で1オクターブ高音。 0.5の場合、再生速度1/2で1オクターブ低音。

設定可能最大値はMAX_FREQENCY_RATIO

参照
IXAudio2SourceVoice::SetFrequencyRatio(float, UINT32)

◆ SetVolume()

template<typename T >
bool SoundLib::AudioHandler< T >::SetVolume ( float  volume)

ボリュームを設定する。

引数
volumeボリューム(XAudio2の定義に従う)
戻り値
成否

◆ Start() [1/3]

template<typename T >
void SoundLib::AudioHandler< T >::Start ( bool  isLoopPlayback)

ファイルの先頭から再生を行う。

引数
isLoopPlaybackループ再生を行うかどうか

◆ Start() [2/3]

template<typename T >
void SoundLib::AudioHandler< T >::Start ( IAudioHandlerDelegate< T > *  pDelegate)

ファイルの先頭から再生を行う。

引数
pDelegate最後まで再生完了後に呼び出すコールバック関数を定義したオブジェクト

C++から設定する場合用

◆ Start() [3/3]

template<typename T >
void SoundLib::AudioHandler< T >::Start ( void(*)(const T *pName)  onPlayedToEndCallback)

ファイルの先頭から再生を行う。

引数
onPlayedToEndCallback最後まで再生完了後に呼び出すコールバック関数

C言語から設定する場合用

◆ Stop()

template<typename T >
void SoundLib::AudioHandler< T >::Stop ( )

再生を停止する。

メンバ詳解

◆ MAX_FREQENCY_RATIO

template<typename T >
const int SoundLib::AudioHandler< T >::MAX_FREQENCY_RATIO = 4
static

///

SetFrequencyRatio(float)で設定可能な最大比率


このクラス詳解は次のファイルから抽出されました:
構築:   doxygen 1.8.14