CRIWARE for C#
Search Results for

    Show / Hide Table of Contents

    Class CriAtomAuxIn

    AuxInハンドル

    Inheritance
    object
    CriAtomAuxIn
    Implements
    IDisposable
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: CriWare
    Assembly: CriWare.CriAtom.dll
    Syntax
    public class CriAtomAuxIn : IDisposable
    Remarks

    説明: CriAtomAuxIn は、外部のリアルタイム音声を再生するための AuxInを操作するためのオブジェクトです。 CriAtomAuxIn 関数でAuxInを作成すると、関数はこの"AuxInオブジェクト"を返します。 AuxInは、マイクの音声やボイスチャットの音声、合成音声といった外部のリアルタイム音声を 入力しバスやサウンド出力に流すことができます。 入力する音声は SetInputReadStream(delegate* unmanaged[Cdecl]<IntPtr, float**, uint, uint>, IntPtr) に指定するコールバック関数を 経由してAuxInに渡します。

    Constructors

    CriAtomAuxIn()

    デフォルト設定でのインスタンス作成

    Declaration
    public CriAtomAuxIn()

    CriAtomAuxIn(in Config)

    AuxInの作成

    Declaration
    • C#
    • C
    public CriAtomAuxIn(in CriAtomAuxIn.Config config)
    CriAtomAuxInHn CRIAPI criAtomAuxIn_Create(const CriAtomAuxInConfig *config, void *work, CriSint32 work_size)
    Parameters
    Type Name Description
    CriAtomAuxIn.Config config

    AuxIn作成用コンフィグ構造体

    Remarks

    説明: 音声入力用のAuxInを作成します。 CriAtomAuxIn(in Config) 関数を実行すると、AtomAuxInが作成され、 AuxInを制御するためのオブジェクト( CriAtomAuxIn )が返されます。 音声再生の開始、ステータスの取得等、AtomAuxInに対して 行う操作は、全てオブジェクトに対して行います。 実際に音声再生を開始するにはStart() 関数を実行します。 入力する音声は SetInputReadStream(delegate* unmanaged[Cdecl]<IntPtr, float**, uint, uint>, IntPtr) に指定するコールバック関数を 経由してAuxInに渡します。 AuxInを作成する際には、ライブラリが内部で利用するためのメモリ領域(ワーク領域) を確保する必要があります。 ワーク領域を確保する方法には、以下の2通りの方法があります。 (a) User Allocator方式:メモリの確保/解放に、ユーザが用意した関数を使用する方法。 (b) Fixed Memory方式:必要なメモリ領域を直接ライブラリに渡す方法。

    注意: 本関数は完了復帰型の関数です。実行にかかる時間は、プラットフォームによって異なります。 ゲームループ等の画面更新が必要なタイミングで本関数を実行するとミリ秒単位で 処理がブロックされ、フレーム落ちが発生する恐れがあります。 マイクの作成/破棄は、シーンの切り替わり等、負荷変動を許容できる タイミングで行うようお願いいたします。

    See Also
    Dispose()

    Properties

    NativeHandle

    ネイティブハンドル

    Declaration
    public NativeHandleIntPtr NativeHandle { get; }
    Property Value
    Type Description
    NativeHandleIntPtr

    Methods

    CalculateWorkSize(in Config)

    Pro

    AuxInのワーク領域サイズ計算

    Declaration
    • C#
    • C
    public static int CalculateWorkSize(in CriAtomAuxIn.Config config)
    CriSint32 CRIAPI criAtomAuxIn_CalculateWorkSize(const CriAtomAuxInConfig *config)
    Parameters
    Type Name Description
    CriAtomAuxIn.Config config

    AuxIn作成用コンフィグ構造体

    Returns
    Type Description
    int
    Remarks

    説明: AuxInの作成に必要なワーク領域のサイズを計算します。 SetUserAllocator(delegate* unmanaged[Cdecl]<IntPtr, uint, IntPtr>, delegate* unmanaged[Cdecl]<IntPtr, IntPtr, void>, IntPtr) メソッドによるアロケータ登録を行わずに CriAtomAuxIn(in Config) 関数でAuxInを作成する場合、 本関数で計算したサイズ分のメモリをワーク領域として渡す必要があります。 ワーク領域サイズの計算に失敗すると、本関数は -1 を返します。 ワーク領域サイズの計算に失敗した理由については、エラーコールバックのメッセージで確認可能です。

    備考: 引数 config の情報は、関数内でのみ参照されます。 関数を抜けた後は参照されませんので、関数実行後に config の領域を解放しても 問題ありません。

    See Also
    CriAtomAuxIn(in Config)

    Dispose()

    Pro

    AuxInの破棄

    Declaration
    • C#
    • C
    public void Dispose()
    void CRIAPI criAtomAuxIn_Destroy(CriAtomAuxInHn aux_in)
    Remarks

    説明: AuxInを破棄します。

    注意: 本関数は完了復帰型の関数です。実行にかかる時間は、プラットフォームによって異なります。 ゲームループ等の画面更新が必要なタイミングで本関数を実行するとミリ秒単位で 処理がブロックされ、フレーム落ちが発生する恐れがあります。 マイクの作成/破棄は、シーンの切り替わり等、負荷変動を許容できる タイミングで行うようお願いいたします。

    See Also
    CriAtomMic(in Config)

    GetFormat(out int, out int)

    Pro

    フォーマットの取得

    Declaration
    • C#
    • C
    public void GetFormat(out int numChannels, out int samplingRate)
    void CRIAPI criAtomAuxIn_GetFormat(CriAtomAuxInHn aux_in, CriSint32 *num_channels, CriSint32 *sampling_rate)
    Parameters
    Type Name Description
    int numChannels

    チャンネル数

    int samplingRate

    サンプリング周波数

    Remarks

    説明: SetFormat(int, int) で設定したフォーマット情報を取得します。

    See Also
    SetFormat(int, int)

    SetBusSendLevelByName(ArgString, float)

    Pro

    バスセンドレベル設定

    Declaration
    • C#
    • C
    public void SetBusSendLevelByName(ArgString busName, float level)
    void CRIAPI criAtomAuxIn_SetBusSendLevelByName(CriAtomAuxInHn aux_in, const CriChar8 *bus_name, CriFloat32 level)
    Parameters
    Type Name Description
    ArgString busName

    バス名

    float level

    レベル値(0.0f?1.0f)

    Remarks

    説明: AuxInの音声のバスセンドレベルを設定します。 バスセンドレベルは、音声をどのバスにどれだけ流すかを指定するための仕組みです。 第2引数にはDSPバス設定内のバス名を指定します。 第3引数では送信時のレベル(ボリューム)を指定します。 第2引数のバス名で指定したバスが適用中のDSPバス設定に存在しない場合、設定値は無効値として処理されます。 センドレベル値の範囲や扱いは、ボリュームと同等です。SetVolume(float) 関数を参照してください。

    See Also
    CriAtomMic(in Config)

    SetFormat(int, int)

    Pro

    フォーマットの設定

    Declaration
    • C#
    • C
    public void SetFormat(int numChannels, int samplingRate)
    void CRIAPI criAtomAuxIn_SetFormat(CriAtomAuxInHn aux_in, CriSint32 num_channels, CriSint32 sampling_rate)
    Parameters
    Type Name Description
    int numChannels

    チャンネル数

    int samplingRate

    サンプリング周波数

    Remarks

    説明: 再生を行う音声のフォーマットを設定します。 Start() を呼ぶ前に設定する必要があります。

    See Also
    GetFormat(out int, out int)

    SetFrequencyRatio(float)

    Pro

    周波数調整比の設定

    Declaration
    • C#
    • C
    public void SetFrequencyRatio(float ratio)
    void CRIAPI criAtomAuxIn_SetFrequencyRatio(CriAtomAuxInHn aux_in, CriFloat32 ratio)
    Parameters
    Type Name Description
    float ratio

    周波数調整比(0.25f~4.0f)

    Remarks

    説明: AuxInの音声の周波数調整比を設定します。 周波数調整比は、音声データの周波数と再生周波数の比率で、再生速度の倍率と等価です。 周波数比が1.0fを超える場合、音声データは原音より高速に再生され、 1.0f未満の場合は、音声データは原音より低速で再生されます。 周波数比は、音声のピッチにも影響します。 例えば、周波数比を1.0fで再生した場合、音声データは原音通りのピッチで再生されますが、 周波数比を2.0fに変更した場合、ピッチは1オクターブ上がます。 (再生速度が2倍になるため。)

    注意: 周波数比に1.0fを超える値を設定した場合、再生する音声のデータが通常より 速く消費されるため、音声データの供給をより早く行う必要があります。 周波数比に1.0fを超える値を設定する場合には、AuxIn作成時に指定する 最大サンプリングレートの値を、周波数比を考慮した値に設定してください。 (AuxIn作成時に指定する CriAtomAuxIn.Config 構造体 の max_sampling_rate の値に、「原音のサンプリングレート×周波数比」で 計算される値を指定する必要があります。)

    See Also
    CriAtomMic(in Config)

    SetInputReadStream(delegate* unmanaged[Cdecl]<IntPtr, float**, uint, uint>, IntPtr)

    Pro

    リードストリームの設定

    Declaration
    • C#
    • C
    public void SetInputReadStream(delegate* unmanaged[Cdecl]<IntPtr, float**, uint, uint> streamCbfunc, IntPtr streamPtr)
    void CRIAPI criAtomAuxIn_SetInputReadStream(CriAtomAuxInHn aux_in, CriAtomAuxReadStreamCbFunc stream_cbfunc, void *stream_ptr)
    Parameters
    Type Name Description
    delegate* unmanaged[Cdecl]<IntPtr, float**, uint, uint> streamCbfunc

    リードストリームのコールバック関数

    IntPtr streamPtr

    リードストリームのコールバック関数に渡されるポインタ

    Remarks

    説明: AuxInの入力方向のリードストリームを設定します。 コールバック関数は大抵のプラットフォームで別スレッドから呼ばれるため、 呼ばれる側はスレッドセーフ実装する必要があります。

    SetVolume(float)

    Pro

    ボリューム設定

    Declaration
    • C#
    • C
    public void SetVolume(float volume)
    void CRIAPI criAtomAuxIn_SetVolume(CriAtomAuxInHn aux_in, CriFloat32 volume)
    Parameters
    Type Name Description
    float volume

    ボリューム値

    Remarks

    説明: AuxInの音声のボリュームを設定をします。 ボリューム値は音声データの振幅に対する倍率です(単位はデシベルではありません)。 例えば、1.0fを指定した場合、原音はそのままのボリュームで出力されます。 0.5fを指定した場合、原音波形の振幅を半分にしたデータと同じ音量(-6dB)で 音声が出力されます。 0.0fを指定した場合、音声はミュートされます(無音になります)。

    See Also
    CriAtomMic(in Config)

    Start()

    Pro

    AuxInの再生開始

    Declaration
    • C#
    • C
    public void Start()
    void CRIAPI criAtomAuxIn_Start(CriAtomAuxInHn aux_in)
    Remarks

    説明: AuxInの再生を開始します。

    See Also
    Stop()

    Stop()

    Pro

    AuxInの再生停止

    Declaration
    • C#
    • C
    public void Stop()
    void CRIAPI criAtomAuxIn_Stop(CriAtomAuxInHn aux_in)
    Remarks

    説明: AuxInの再生を停止します。

    See Also
    Start()

    Implements

    IDisposable

    See Also

    CriAtomAuxIn(in Config)
    In this article
    Back to top Generated by DocFX