Domanda

Ho un flusso di audio PCM catturato da un telefono cellulare, e voglio giocare.

Sto cercando di trovare un metodo leggero di giocare questo audio in C ++.

posso già schiaffo su un colpo di testa onda e creare un file che milita in qualsiasi lettore multimediale, ma voglio per riprodurre il file in tempo reale, come torrenti. Vorrei evitare di scrivere il file su disco solo per leggere di nuovo, e anche io non voglio avere pause l'audio come mi fermo un file e avviare un altro.

Mi rendo conto che OpenAL fornisce la funzionalità di streaming audio, ma speravo in qualcosa di più semplice. Ho solo bisogno di giocare un unico flusso canale PCM.

Qualcuno sa di un peso leggero, gratuito (per uso commerciale) biblioteca o API di Windows che può fare questo?

È stato utile?

Soluzione

Utilizza il waveOut API di Windows

Altri suggerimenti

Sembra che il brevetto è scaduto , quindi non ci dovrebbero essere complicazioni legali. La bellezza di un brevetto è che rende il pubblico algoritmo.

Riproduzione di un unico flusso PCM non è così semplice, ahimè. La sua non è così difficile. Io non ho usato OpenAL ma sotto le finestre audio di serie, XAudio2 o DirectSound la sua facile da usare un doppio buffer. Gioca tampone 1 durante il riempimento del buffer 2 dal flusso. Poi giocare buffer2 durante il riempimento buffer1 e così via.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top