Sto cercando di sviluppare un'applicazione che richiede streaming audio live. Preferirei utilizzare una libreria open source cross-platform (windows/linux/BSD) scritta in C o C++ anche se la scrittura tramite le API Sound dei rispettivi SO è ancora un'opzione.API cross platform audio
Ho letto un po 'di varie librerie di suoni, inclusi SFML, SDL e PortAudio. Certo, non ho ancora studiato abbastanza Sound di FreeBSD e Linux (come simile è fra questi 2?)
I principali requisiti saranno
- ottenere audio da un microfono prescelto/i microfoni di inviare oltre la rete,
- invia dati a una selezione di dispositivi di output,
- elabora il suono (filtraggio, pulizia del rumore, flussi di multiplexing ecc.) ma questo può essere fatto una volta che ho i dati audio, la libreria stessa NON ha bisogno essere in grado di fare tutto ciò.
- hanno ragionevolmente bassa latenza
La mia preoccupazione principale è che queste API menzionati sembrano essere mirati principalmente per i giochi (dove il suono è di solito caricato da disco e non c'è molto, se del caso, registrazione del suono coinvolti piuttosto che in streaming sulla rete con uguale importanza tra registrazione e riproduzione
Qualcuno ha qualche suggerimento/avvertimento/suggerimento riguardo a queste o altre API audio o sui vantaggi/svantaggi di percorrere la lunga strada e implementarlo nei rispettivi sistemi operativi " API
NOTA: mentre questo: "Le domande che ci chiedono di consigliare o trovare un libro, uno strumento, una libreria di software, un'esercitazione o altre risorse fuori sede sono off-topic per Stack Overflow" DOES rende la questione off-topic, quando si considera anche " dal momento che tendono ad attirare risposte e spam contestati ", quindi non credo che questa domanda debba essere chiusa. Qualcuno che cerca una libreria come quella descritta avrà difficoltà a trovare qualsiasi cosa e le risposte a questa domanda riassumono praticamente tutte le opzioni disponibili. Questo è quindi nella "copertura generale ... strumenti software comunemente usati dai programmatori"; categoria di risposte accettate.
Hai dato un'occhiata a Pulseaudio? –
Scrivere per PulseAudio sembra ragionevole solo se si scrive specificamente per le distribuzioni LINUX che lo hanno già impostato – msam