from typing import Callable, Mapping, Optional, Sequence, Tuple, Union from typing_extensions import Final paFloat32: Final[int] = ... paInt32: Final[int] = ... paInt24: Final[int] = ... paInt16: Final[int] = ... paInt8: Final[int] = ... paUInt8: Final[int] = ... paCustomFormat: Final[int] = ... paInDevelopment: Final[int] = ... paDirectSound: Final[int] = ... paMME: Final[int] = ... paASIO: Final[int] = ... paSoundManager: Final[int] = ... paCoreAudio: Final[int] = ... paOSS: Final[int] = ... paALSA: Final[int] = ... paAL: Final[int] = ... paBeOS: Final[int] = ... paWDMKS: Final[int] = ... paJACK: Final[int] = ... paWASAPI: Final[int] = ... paNoDevice: Final[int] = ... paNoError: Final[int] = ... paNotInitialized: Final[int] = ... paUnanticipatedHostError: Final[int] = ... paInvalidChannelCount: Final[int] = ... paInvalidSampleRate: Final[int] = ... paInvalidDevice: Final[int] = ... paInvalidFlag: Final[int] = ... paSampleFormatNotSupported: Final[int] = ... paBadIODeviceCombination: Final[int] = ... paInsufficientMemory: Final[int] = ... paBufferTooBig: Final[int] = ... paBufferTooSmall: Final[int] = ... paNullCallback: Final[int] = ... paBadStreamPtr: Final[int] = ... paTimedOut: Final[int] = ... paInternalError: Final[int] = ... paDeviceUnavailable: Final[int] = ... paIncompatibleHostApiSpecificStreamInfo: Final[int] = ... paStreamIsStopped: Final[int] = ... paStreamIsNotStopped: Final[int] = ... paInputOverflowed: Final[int] = ... paOutputUnderflowed: Final[int] = ... paHostApiNotFound: Final[int] = ... paInvalidHostApi: Final[int] = ... paCanNotReadFromACallbackStream: Final[int] = ... paCanNotWriteToACallbackStream: Final[int] = ... paCanNotReadFromAnOutputOnlyStream: Final[int] = ... paCanNotWriteToAnInputOnlyStream: Final[int] = ... paIncompatibleStreamHostApi: Final[int] = ... paContinue: Final[int] = ... paComplete: Final[int] = ... paAbort: Final[int] = ... paInputUnderflow: Final[int] = ... paInputOverflow: Final[int] = ... paOutputUnderflow: Final[int] = ... paOutputOverflow: Final[int] = ... paPrimingOutput: Final[int] = ... paMacCoreStreamInfo: PaMacCoreStreamInfo # Auxiliary types _ChannelMap = Sequence[int] _PaHostApiInfo = Mapping[str, Union[str, int]] _PaDeviceInfo = Mapping[str, Union[str, int, float]] _StreamCallback = Callable[[Optional[bytes], int, Mapping[str, float], int], Tuple[Optional[bytes], int]] def get_format_from_width(width: int, unsigned: bool = ...) -> int: ... def get_portaudio_version() -> int: ... def get_portaudio_version_text() -> str: ... def get_sample_size(format: int) -> int: ... class Stream: def __init__( self, PA_manager: PyAudio, rate: int, channels: int, format: int, input: bool = ..., output: bool = ..., input_device_index: int | None = ..., output_device_index: int | None = ..., frames_per_buffer: int = ..., start: bool = ..., input_host_api_specific_stream_info: PaMacCoreStreamInfo | None = ..., output_host_api_specific_stream_info: PaMacCoreStreamInfo | None = ..., stream_callback: _StreamCallback | None = ..., ) -> None: ... def close(self) -> None: ... def get_cpu_load(self) -> float: ... def get_input_latency(self) -> float: ... def get_output_latency(self) -> float: ... def get_read_available(self) -> int: ... def get_time(self) -> float: ... def get_write_available(self) -> int: ... def is_active(self) -> bool: ... def is_stopped(self) -> bool: ... def read(self, num_frames: int, exception_on_overflow: bool = ...) -> bytes: ... def start_stream(self) -> None: ... def stop_stream(self) -> None: ... def write(self, frames: bytes, num_frames: int | None = ..., exception_on_underflow: bool = ...) -> None: ... class PyAudio: def __init__(self) -> None: ... def close(self, stream: Stream) -> None: ... def get_default_host_api_info(self) -> _PaHostApiInfo: ... def get_default_input_device_info(self) -> _PaDeviceInfo: ... def get_default_output_device_info(self) -> _PaDeviceInfo: ... def get_device_count(self) -> int: ... def get_device_info_by_host_api_device_index(self, host_api_index: int, host_api_device_index: int) -> _PaDeviceInfo: ... def get_device_info_by_index(self, device_index: int) -> _PaDeviceInfo: ... def get_format_from_width(self, width: int, unsigned: bool = ...) -> int: ... def get_host_api_count(self) -> int: ... def get_host_api_info_by_index(self, host_api_index: int) -> _PaHostApiInfo: ... def get_host_api_info_by_type(self, host_api_type: int) -> _PaHostApiInfo: ... def get_sample_size(self, format: int) -> int: ... def is_format_supported( self, rate: int, input_device: int | None = ..., input_channels: int | None = ..., input_format: int | None = ..., output_device: int | None = ..., output_channels: int | None = ..., output_format: int | None = ..., ) -> bool: ... def open( self, rate: int, channels: int, format: int, input: bool = ..., output: bool = ..., input_device_index: int | None = ..., output_device_index: int | None = ..., frames_per_buffer: int = ..., start: bool = ..., input_host_api_specific_stream_info: PaMacCoreStreamInfo | None = ..., output_host_api_specific_stream_info: PaMacCoreStreamInfo | None = ..., stream_callback: _StreamCallback | None = ..., ) -> Stream: ... def terminate(self) -> None: ... class PaMacCoreStreamInfo: paMacCoreChangeDeviceParameters: Final[int] = ... paMacCoreFailIfConversionRequired: Final[int] = ... paMacCoreConversionQualityMin: Final[int] = ... paMacCoreConversionQualityMedium: Final[int] = ... paMacCoreConversionQualityLow: Final[int] = ... paMacCoreConversionQualityHigh: Final[int] = ... paMacCoreConversionQualityMax: Final[int] = ... paMacCorePlayNice: Final[int] = ... paMacCorePro: Final[int] = ... paMacCoreMinimizeCPUButPlayNice: Final[int] = ... paMacCoreMinimizeCPU: Final[int] = ... def __init__(self, flags: int | None = ..., channel_map: _ChannelMap | None = ...) -> None: ... def get_flags(self) -> int: ... def get_channel_map(self) -> _ChannelMap | None: ...