Premessa
Premetto che questo tutorial, a differenza degli altri, contiene poco codice e spiega in dettaglio le motivazioni che mi hanno indotto a scegliere questa soluzione e descriveranno in dettaglio tutti i passaggi seguiti.
Scenario
Oggi giorno molti di voi sono abituati a navigare su internet con una connessione a banda lagra (Alice, FastWeb, ecc.), ma ci sono ancora realtà (tra cui la mia) in cui una connessione a banda larga ma un po’ più ristretta (anche un ADSL a 4Mb) è un miraggio!
Nella realtà che andrò a descrivere, la connettività è basata su HDSL con velocità di connessione pari a 128Kb.
Mi fu posto un problema diverse settimane fa: “bisogna fare in modo che sul nostro sito sia disponibile in tempo reale il video trasmesso dalla videocamera di cui disponiamo”.
Ho passato il più del tempo ad analizzare la fattibilità della richiesta e quello che avevo davanti era:
- HDSL con connettività a 128Kb
- Videocamera analogica
- Video Server per la commutazione del segnale analogico in uno stream
- Indirizzo IP Statico
- Sito internet del richiedente
Lo studio delle fattibilità
Avendo ben chiaro quali erano gli elementi a mia disposizione ho dovuto studiare cosa mi consentivano la Videocamera ed il Video server.
Accedendo al pannello di controllo web del video server, ho visto che metteva a disposizione una miriade di funzionalità: IP per lo streaming video, Risoluzione del video, modalità di accesso (con e senza password), frames per secondo, modalità di trasmissione (TCP, Stream) e tante altre caratteristiche.
Ho fatto delle prove modificando prima questo poi quel parametro ed il risultato era sempre (ed ovviamente) differente, e sempre più soddisfacente. Facendo però anche dei controlli sul traffico generato sono giunto alla conclusione che migliore era la qualità del video, maggiore era il traffico generato (considerate sempre che ho dovuto tener presente della tipologia di connettività di cui disponevo). Ma di certo questo potrebbe essere un risultato scontato!
Quindi ho provato a cercare un giusto compromesso tra traffico generato e qualità dello stream.
Risultati sempre scadenti per i limiti imposti dalla connessione. Considertate che sulla stessa linea altri 60 utenti si collegano ad internet (non di continuo ovvio) e scaricano la posta elettronica. Quindi le prestazioni della connessione degradano vistosamente. Se avessi piazzato anche uno stream video su questa banda il risultato sarebbe stato un collasso totale della rete e delle comunicazioni internet.