PCMバッファのWriter実装
More...
#include <PcmBufferWriter.hpp>
PCMバッファのWriter実装
- Note
- 本バッファにはチャネル数という概念が存在しない。 よって容量や有効要素数は全チャンネル合計分のサンプル数になる。
◆ PcmBufferWriter() [1/3]
zao::endpoint::audio::PcmBufferWriter::PcmBufferWriter |
( |
| ) |
|
|
inlinenoexcept |
◆ PcmBufferWriter() [2/3]
zao::endpoint::audio::PcmBufferWriter::PcmBufferWriter |
( |
std::weak_ptr< PcmBufferPoolInterface > |
pool_weak, |
|
|
std::int16_t * |
pointer, |
|
|
std::size_t |
writable_samples |
|
) |
| |
|
inlinenoexcept |
PcmBufferWriter オブジェクトを構築する。
- Parameters
-
pool_weak | 所有しているプール |
pointer | 管理対象バッファ |
writable_samples | 書き込み可能なサンプル数 |
◆ PcmBufferWriter() [3/3]
zao::endpoint::audio::PcmBufferWriter::PcmBufferWriter |
( |
PcmBufferWriter && |
other | ) |
|
|
inlinenoexcept |
◆ Cancel()
void zao::endpoint::audio::PcmBufferWriter::Cancel |
( |
| ) |
|
|
inlinenoexcept |
バッファへのデータ書き込みキャンセルを通知する。
- Note
- この関数を呼んだ後は、GetPointer()の返すポインタへ アクセスしてはならない。
- Postcondition
- IsValid() == false
◆ Finalize()
void zao::endpoint::audio::PcmBufferWriter::Finalize |
( |
std::size_t |
written_samples, |
|
|
TimestampInterface::Rep |
head_timestamp |
|
) |
| |
|
inlinenoexcept |
バッファへのデータ書き込み完了を通知する。
- Note
- この関数を呼んだ後は、 GetPointer()の返すポインタへアクセスしてはならない。
- Postcondition
- IsValid() == false
- Parameters
-
written_samples | 書き込まれた有効サンプル数 (0の場合、キャンセルと見なす) |
head_timestamp | 先頭サンプルのタイムスタンプ値 |
- Note
- タイムスタンプの進みが蓄積中のバッファと連続しない場合、 または、書き込まれたサンプル数がチャネル数の倍数では無い場合、 データの破棄や0埋めなどの調整処理が行われる可能性がある。
◆ GetPointer()
std::int16_t * zao::endpoint::audio::PcmBufferWriter::GetPointer |
( |
| ) |
const |
|
inlinenoexcept |
管理対象バッファの先頭ポインタを取得する
- Return values
-
nullptr | 管理対象バッファが無い |
not-nullptr | 管理対象バッファの先頭ポインタ |
◆ GetWritableSamples()
std::size_t zao::endpoint::audio::PcmBufferWriter::GetWritableSamples |
( |
| ) |
const |
|
inlinenoexcept |
書き込める最大サンプル数を取得する。
- Note
- チャネル毎ではなく、全チャネル合計のサンプル数となる。
-
単位はサンプル数であり、バイト数ではない。
- Return values
-
0 | 書き込める要素がない (有効なバッファを保持していない場合も含む) |
◆ IsValid()
bool zao::endpoint::audio::PcmBufferWriter::IsValid |
( |
| ) |
const |
|
inlinenoexcept |
有効なバッファを保持しているか否かを取得する。
- Return values
-
true | 有効なバッファを保持している |
false | 有効なバッファを保持していない |
◆ operator bool()
zao::endpoint::audio::PcmBufferWriter::operator bool |
( |
| ) |
const |
|
inlineexplicitnoexcept |
有効なバッファを保持しているか否かを取得する。
- See also
- IsValid()
- Return values
-
true | 有効なバッファを保持している |
false | 有効なバッファを保持していない |
◆ operator=()
The documentation for this class was generated from the following file:
- /home/jenkins/workspace/J2412.zao_sdk_jetson.build/zep_sdk/libzao-endpoint/include/zao/endpoint/audio/PcmBufferWriter.hpp