pub struct CpalMicBackend { /* private fields */ }Expand description
cpal によるマイク入力キャプチャバックエンド。
既定入力デバイス(device_id = None)か、デバイス名で選んだ入力デバイス
(device_id = Some(id))から生 interleaved f32 フレームを取り RawSink へ
流す。詳細はモジュールドキュメント参照。
Send。持つのは停止フラグ・JoinHandle・キャッシュ済みフォーマット・
device_id だけで、!Send な cpal::Stream は所有スレッド内に閉じ込める。
Implementations§
Source§impl CpalMicBackend
impl CpalMicBackend
Sourcepub fn new(device_id: Option<String>) -> Self
pub fn new(device_id: Option<String>) -> Self
マイクバックエンドを構築する。
device_id:
None→ 既定入力デバイス(host.default_input_device())。Some(id)→host.input_devices()を走査しdevice.name()? == idの最初の デバイス(id はlist_devicesが返すデバイス名)。
選んだデバイスのネイティブフォーマットを問い合わせてキャッシュする。デバイスが
無い/一致しない/問い合わせ失敗なら FALLBACK_FORMAT((48000, 1))を
キャッシュする。new 自体は panic もエラーもせず必ず成功し、device_id が一致
しなければ start で Error::DeviceNotFound になる。
Trait Implementations§
Source§impl CaptureBackend for CpalMicBackend
impl CaptureBackend for CpalMicBackend
Source§impl Default for CpalMicBackend
impl Default for CpalMicBackend
Source§impl Drop for CpalMicBackend
impl Drop for CpalMicBackend
Auto Trait Implementations§
impl !RefUnwindSafe for CpalMicBackend
impl !UnwindSafe for CpalMicBackend
impl Freeze for CpalMicBackend
impl Send for CpalMicBackend
impl Sync for CpalMicBackend
impl Unpin for CpalMicBackend
impl UnsafeUnpin for CpalMicBackend
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more