Requested buffer size not used on macOS
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- audio-video-rtc
Línea de trabajo
The report concerns output stream buffer sizing on macOS with CPAL 0.15.0. Start by reading the CoreAudio output stream configuration path and its tests; the payload does not name specific files or tests. Done means determining whether the requested size is supported, documenting the behavior, and exposing the chosen size before playback if the API can provide it.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hey there! I'm running into the following issue:
- I'm enumerating through all the
supported_output_configs()and finding one where my preferred buffer size fits within theSupportedBufferSizerange. - I call
SupportedStreamConfigRange::with_sample_rate().config()on this with a rate within the range - On the resulting
StreamConfig, I set the buffer size to my preferred one, knowing it's within range - Build an output stream
The requested buffer size isn't taken into account. When I request 128 I get a stream of 279. Other times I get 512.
Am I doing something wrong? Is this a bug? Or is this a limitation of the CoreAudio framework, and if so:
- How do other software packages work around this, where you can pick a precise buffer size in the preferences?
- Shouldn't CPAL document this, and call this variable
preferred_buffer_sizeor something? - Is there a way of knowing what max buffer size was decided on for the stream, before I call
play()it? I need that information to build my audio chain
This is on macOS Ventura 13.1, with CPAL 0.15.0.
- Lenguaje dominante
- Rust
- Estrellas
- 4k
- Forks
- 554
- Merge medio
- 3 d 3 h
- PR fusionados (30 d)
- 4
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de RustAudio/cpal
-
aaudio: dynamic buffer tuning never grows the buffer (set_buffer_size_in_frames reports Err on success)Posiblemente ocupada @dannyward630 la tomó hace 3 días. Abiertohost - aaudio platform - android
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
WebAudio wasm build fails with wasm-bindgen panic=unwind closuresPosiblemente ocupada @bogusyogi la tomó hace 11 días. Abiertohost - webaudio platform - web
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
RustAudio/cpal#1394 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
New WASAPI implementationAbiertocode quality dependencies host - wasapi platform - windows
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
RustAudio/cpal#1416 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
host - pipewire platform - linux
Dificultad 4/5 1-2 días Aptitud para principiantes 52/100
RustAudio/cpal#1405 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
WASAPI: default-device activation fails with RPC_E_CHANGED_MODE after endpoint-notification callbacks put thread-pool threads into an STAPosiblemente ocupada @dannyward630 la tomó hace 4 días. Abiertocorrectness host - wasapi platform - windows
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
RustAudio/cpal#1402 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de RustAudio/cpal
Issues similares
-
needs triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
mozilla-services/syncstorage-rs#2715 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
-
documentation
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
physicsdolphin/nv-uefi-unlocker#53 · 4 reacciones ·
Los mantenedores suelen responder en 1 día