Audio Crackling and Default Config unchangable on Windows(Main Branch)

Ouverte
#900 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
22/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
audio-video-rtc, rust
Domaine
audio-video-rtc

Piste de recherche

The report points at the Windows output path reached through SpeakersBuilder, default_device and default_config, and at try_buffer_duration and try_sample_rate in the main branch. Start by reproducing the crackling with the git revision a359d2a versus the crates.io release, then compare how the two handle buffer size and sample rate on Windows. Done means the default config plays cleanly on Windows again and the 1 ms buffer and 44100 Hz settings no longer panic with an unsupported device error.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Using the Crates.io Version of Rodio the audio plays perfectly fine on Windows with

SpeakersBuilder::new()
            .default_device()
            .unwrap()
            .default_config()
            .unwrap();

however when using the Git repo version the audio is just pure crackling and popping noises.

https://github.com/user-attachments/assets/8506f55f-4de5-4bbd-96cb-cb0d4530cf5c

the above example is using git = "https://github.com/RustAudio/rodio", rev = "a359d2a"

the is the working Example using the Crates.io Version

https://github.com/user-attachments/assets/6f38ae6c-753f-43c8-a531-8359b308f642

Also I noticed in the Crates Version I can do

.try_buffer_duration(Duration::from_millis(1))
            .unwrap()
            .try_sample_rate(SampleRate::new(44100).expect("should never fail..."))
            .unwrap()

but if i try this in the main branch it panics saying unsupported device even though it worked before....

Please let me know if you have any questions.

Langage dominant
Rust
Étoiles
2.5k
Forks
338
Merge moyen
1 j 3 h
PR mergées (30 j)
1

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de RustAudio/rodio

Toutes les issues de RustAudio/rodio

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.