forked from platypush/platypush
42 lines
737 B
Python
42 lines
737 B
Python
from dataclasses import dataclass
|
|
from enum import Enum
|
|
from typing import Union
|
|
|
|
DeviceType = Union[int, str]
|
|
|
|
|
|
@dataclass
|
|
class AudioDevice:
|
|
"""
|
|
Maps the properties of an audio device.
|
|
"""
|
|
|
|
index: int
|
|
name: str
|
|
hostapi: int
|
|
max_input_channels: int
|
|
max_output_channels: int
|
|
default_samplerate: int
|
|
default_low_input_latency: float = 0
|
|
default_low_output_latency: float = 0
|
|
default_high_input_latency: float = 0
|
|
default_high_output_latency: float = 0
|
|
|
|
|
|
class AudioState(Enum):
|
|
"""
|
|
Audio states.
|
|
"""
|
|
|
|
STOPPED = 'STOPPED'
|
|
RUNNING = 'RUNNING'
|
|
PAUSED = 'PAUSED'
|
|
|
|
|
|
class StreamType(Enum):
|
|
"""
|
|
Stream types.
|
|
"""
|
|
|
|
INPUT = 'input'
|
|
OUTPUT = 'output'
|