Configure audio streaming parameters. Call this before serve(). This stores audio configuration. The actual audio track is created per-WebRTC connection when serve() is called. Args: device: Audio device identifier (default: None for syn
(
self,
device: Optional[str] = None,
format: Optional[str] = None,
sample_rate: Optional[int] = None,
stereo: bool = False,
)
| 2558 | self._log(f"[CONFIG] Video configured: {size} @ {fps}fps (device={device}, stereo={stereo})") |
| 2559 | |
| 2560 | def configure_audio( |
| 2561 | self, |
| 2562 | device: Optional[str] = None, |
| 2563 | format: Optional[str] = None, |
| 2564 | sample_rate: Optional[int] = None, |
| 2565 | stereo: bool = False, |
| 2566 | ): |
| 2567 | """ |
| 2568 | Configure audio streaming parameters. Call this before serve(). |
| 2569 | |
| 2570 | This stores audio configuration. The actual audio track is created |
| 2571 | per-WebRTC connection when serve() is called. |
| 2572 | |
| 2573 | Args: |
| 2574 | device: Audio device identifier (default: None for synthetic audio). |
| 2575 | Use ":0" for default microphone on macOS via avfoundation. |
| 2576 | format: Audio input format (default: "avfoundation" for macOS). |
| 2577 | sample_rate: Sample rate in Hz (default: 48000) |
| 2578 | stereo: If True, stream stereo audio (2 channels), otherwise mono (default: False) |
| 2579 | |
| 2580 | Example:: |
| 2581 | |
| 2582 | streamer.configure_video(device=None, size="1280x720") |
| 2583 | streamer.configure_audio(stereo=True) # synthetic stereo audio |
| 2584 | streamer.start_webrtc() |
| 2585 | """ |
| 2586 | effective_sample_rate = sample_rate or 48000 |
| 2587 | |
| 2588 | # Store configuration |
| 2589 | self._audio_config = { |
| 2590 | "device": device, |
| 2591 | "format": format, |
| 2592 | "sample_rate": effective_sample_rate, |
| 2593 | "stereo": stereo, |
| 2594 | } |
| 2595 | |
| 2596 | self._log(f"[CONFIG] Audio configured: {effective_sample_rate}Hz (device={device}, stereo={stereo})") |
| 2597 | |
| 2598 | def configure_mujoco( |
| 2599 | self, |
no test coverage detected