DOMANDA cerco librerie per audio conference

BigIssue

Utente Attivo
221
18
CPU
intel dual core n3050
Scheda Madre
asus x540s
RAM
4gb
GPU
intel HD
OS
Windows 10
Ciao
Mi suggerite, sulla base anche della vostra esperienza, delle librerie per la programmazione audio conference, che risolvono anche i problemi di rumore (dotati per esempio di filtro passa basso).
Non mi interessa in che linguaggio di programmazione, l'importante che siano per piattaforma Windows o Linux.
Finora ho sperimentato Naudio di .Net e QAudio di Qt(C++) ma senza successo.
Il primo non si sente bene, il secondo si sente bene ma con disturbi e rumori.

Grazie ;-)
 
Ultima modifica:

Andretti60

Utente Èlite
6,440
5,091
se il rumore e' originariamente presente nel segnale, si può fare ben poco per eliminarlo. Ecco perché buoni headset e simili dispositivi hanno anche cinque microfoni, proprio per captare il suono da più punti diversi ed eliminare quello che proviene solo dalla propria voce, oppure microfoni altamente direzionali a bassissima sensibilità che si mettono praticamente a contatto con la bocca.
 
  • Mi piace
Reazioni: BigIssue

BigIssue

Utente Attivo
221
18
CPU
intel dual core n3050
Scheda Madre
asus x540s
RAM
4gb
GPU
intel HD
OS
Windows 10
Sono riuscito a creare il programmino che cattura video da webcam e audio da microfono. Good!
Ma ora il mio problema è diventato come trasferire su un unico canale socket client to client il video con l'audio. Non posso aprire due canali socket, rispettivamente uno per audio e l'altro per video. Le alternative sono:
- unisco video con audio, spezzo in chunk e invio su socket però se mi arrivano nuovi dati? Avrò delle pause di silenzio tra una chunk e l'altra che non voglio.
- Utilizzare RTP che mi pare abbia audio e video separato e ci pensa lui a sincronizzarli.

L'ultima mi sembra la migliore ma non so come si fa e che librerie usare in C#.net.

Mi potreste aiutare.
 

Andretti60

Utente Èlite
6,440
5,091
Bella domandona.
La risposta semplice è che devi usare una libreria RTSP (real time streaming protocol), una delle tante che trovi su NuGet. Non le ho mai usate personalmente, quindi non so quale consigliarti, ne escono sempre di nuove. Gestiscono tutto loro, la compressione ed espansione dei dati usando codec opportuni (senza codec non fai nulla) e lo streaming di comunicazione (alternando TCP e UDP) adattandosi alla velocità della rete locale (che cambia ogni momento a seconda del traffico). Essendo librerie NuGet che scarichi da devstudio sono già pronte per essere usate in C#. Puoi provare a scrivertene una propria, ma è un lavoraccio immane (being there, done it).
 

BigIssue

Utente Attivo
221
18
CPU
intel dual core n3050
Scheda Madre
asus x540s
RAM
4gb
GPU
intel HD
OS
Windows 10
Ok da una prima analisi ho trovato che la migliore è net7mma:


Posso provare.

Altrimenti stavo guardando in modo grezzo come poter combinare due MemoryStream in C# per avere in sincronizzato video stream e audio stream in un unico MemoryStream ma come...?
Ma ho trovato poco sui motori di ricerca (Bing per esempio).

Di certo mettermi da subito a capire rtsp e impementare le rfc non è una buona soluzione vorrei testare qualcosa di funzionante prima di tutto poi non è detto ci riesco. Non si tratta del sitarello o dell'applicazione a riga di comando mi scontro con problemi che non conosco bene appunto come l'invio video con audio

Adesso vedo.
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!