gugoXX
15-02-2008, 12:43
Ciao a tutti.
Ho bisogno di qualche consiglio di implementazione per un problema che sto affrontando.
Da una parte ho un server, il cui cuore principale e' una FPGA, che produce/riceve in qualche modo un flusso dati audio.
Si vuole che questo flusso dati audio possa essere ascoltato da zero o piu' PC sparsi nella rete locale, in modo quanto piu' real time possibile.
Il modulo client sara' integrato dentro un'applicazione piu' complessa
E' gia' stato scelto UDP come protocollo di livello 4, nella sua forma di broadcast.
Abbiamo gia' implementato un UDP server sulla FPGA, e sui client, in C#, e' abbastanza banale (Esiste gia' la classe UDPClient...)
Stiamo ora studiando il protocollo di livello 5.
Abbiamo trovato RTSP, ma e' in realta' troppo complesso per quello che dobbiamo fare, soprattutto e' troppo complesso implementare RTSP sulla PLA.
Il flusso che verra' spedito e' abbastanza regolare, la frequenza di campionamento sara' uguale dall'inzio alla fine.
Non si vuole spedire nulla se nessuno ascolta, e non si vorrebbe spedire nulla se il livello segnale/rumore e' troppo basso.
Buffer lato client possono essere grandi quanto si vuole, ma lato server meno si occupa meglio e' per il resto della FPGA. Soprattutto buffer troppo grandi sono indice di "non real time", che e' contro la specifica.
Qualcuno ha gia' avuto esperienze in merito? Altri protocolli "open" a livello di applicazione che possono essere usati?
Non ci dispiacerebbe riuscire ad applicare un qualche standard, per poter dichiarare una qualche "compatibilita'" commerciale con tool di terze parti.
Ho bisogno di qualche consiglio di implementazione per un problema che sto affrontando.
Da una parte ho un server, il cui cuore principale e' una FPGA, che produce/riceve in qualche modo un flusso dati audio.
Si vuole che questo flusso dati audio possa essere ascoltato da zero o piu' PC sparsi nella rete locale, in modo quanto piu' real time possibile.
Il modulo client sara' integrato dentro un'applicazione piu' complessa
E' gia' stato scelto UDP come protocollo di livello 4, nella sua forma di broadcast.
Abbiamo gia' implementato un UDP server sulla FPGA, e sui client, in C#, e' abbastanza banale (Esiste gia' la classe UDPClient...)
Stiamo ora studiando il protocollo di livello 5.
Abbiamo trovato RTSP, ma e' in realta' troppo complesso per quello che dobbiamo fare, soprattutto e' troppo complesso implementare RTSP sulla PLA.
Il flusso che verra' spedito e' abbastanza regolare, la frequenza di campionamento sara' uguale dall'inzio alla fine.
Non si vuole spedire nulla se nessuno ascolta, e non si vorrebbe spedire nulla se il livello segnale/rumore e' troppo basso.
Buffer lato client possono essere grandi quanto si vuole, ma lato server meno si occupa meglio e' per il resto della FPGA. Soprattutto buffer troppo grandi sono indice di "non real time", che e' contro la specifica.
Qualcuno ha gia' avuto esperienze in merito? Altri protocolli "open" a livello di applicazione che possono essere usati?
Non ci dispiacerebbe riuscire ad applicare un qualche standard, per poter dichiarare una qualche "compatibilita'" commerciale con tool di terze parti.