-
Red5: il server di streaming multimediale opensource
Red5 è un server multimediale open-source sviluppato in Java, stretto parente del prodotto closed-source Adobe Flash Media Server, che vi consente di implementare lo streaming dei video su internet. Ma Red5 non si ferma al mero streaming su internet, tramite questo potete strumento potete realizzare applicazioni quali videoconferenze, chats, lavagnette, webtv, multiplayer web games etc.
Come applicazione client si utilizzerà il famoso Adobe Flash Player.Che cos’è lo streaming in due parole
Con il termine streaming si intende un flusso di dati audio/video trasmessi da una sorgente a una o più destinazioni su Internet.
Perché usare lo streaming su Internet?
E’ noto che le informazioni audio e video richiedono per la trasmissione una
notevole quantità di banda, che cresce poi con l’aumentare della qualità richiesta.Questo si traduce in un non trascurabile tempo necessario a scaricare un file audio e/o video sul disco del proprio computer, prima di poterne iniziare l’ascolto e/o la visione.
Lo spazio disco richiesto può inoltre non essere così esiguo: un filmato audiovisivo
digitale di 10 minuti di qualità discreta impegnerebbe decine di megabyte.Le tecniche di “streaming” permettono di ridurre questo tempo ad un piccolo
ritardo iniziale, senza richiedere alcuno spazio sul disco locale: il file richiesto viene infatti visualizzato al momento, senza un preventivo download.Come è realizzato lo streaming
Lo streaming è realizzato da opportuni software client-server: in questo momento non esiste ancora uno standard, per cui per funzionare un dato client generalmente va abbinato al server dello stesso costruttore.
Nel nostro caso il client è Adobe Flash Player mentre il server è Red5.
Esempi di altri server/client:
- Windows Media Services – Windows Media Player
- Quicktime Streaming Server – Quicktime Player
- Java Media Framework – Java
- Adobe Flash Media Server – Adobe Flash Player
Esistono tanti formati Video(AVI, MPEG, MOV,GP3): quale usare?
Dipende dal contesto.
Nell’ambito web sicuramente la scelta migliore è il formato FLV (FLash Video).Le origini del formato FLV
È stato introdotto dalla versione Mx2004 di Adobe Flash, la quale ha dato vita a un nuovo formato video, l’FLV (Flash Video) particolarmente adatto al web dato il suo ottimo rapporto qualità/peso;
Creare un file FLV è semplice, basta utilizzare Adobe Flash Video Encoder, incluso nel pacchetto Adobe Flash oppure è possibile fruire di strumenti opensource come il software FFMPEG (http://sourceforge.net/projects/ffmpeg/)
Esempi FFMPEG
Esempi
Convertire da mpg a flv
ffmpeg -i nome_file.flv nome_file.mpgSe si vuole estrarre l’audio da un video
ffmpeg -i nomevideo -f mp3 nomefile.mp3Che cos’è Red5
Red5 è un potente server multimediale open source sviluppato in Java che supporta:
- Streaming Audio/video: è la trasmissione in modalità streaming di file Audio/Video in formato FLV e MP3 (Es. Player Mp3, Player Video)
- Recording Client Stream: consiste nella possibilità di salvare in formato FLV su una specifica cartella del server il contenuto audiovisivo trasmesso da una web cam o videocamera
- Real-time Multi-player gaming: realizzare giochi open source
- Broadcast di Live Streams: è il concetto base utilizzato nelle videoconferenze, cioè si trasmette in diretta dove c’è un unico relatore e n uditori.
- Mandare in streaming file in formato AVI, MOV, WAV etc E’ necessario convertire questi file in formato FLV
- Registrare video/audio in formato Mp3, AVI, MOV
- Chat
- Videoconferenza
- Lavagnetta Condivisa
- Player video
- Player Mp3
- Web TV
- Video Notizie live in streaming
- Sistemi di Collaborazione Online
- Realtime multiplayer Game
- Aule Web
- Video Blog
- Etc
Con Red5 non è possibile:
Red5: esempi di applicazioni
RTMP – Real Time Messaging Protocol
Red5 viene installato su una macchina come un WebServer ma funziona in maniera diversa. Mentre il WebServer si occupa di servire le richieste di connessione temporanee HTTP, Red5 stringe connessioni PERSISTENTI con i filmati flash in esecuzione sul Flash Player.
Il protocollo usato tra un filmato SWF e Red5 si chiama Real Time Messaging Protocol (RTMP). A differenza del protocollo HTTP, il protocollo RTMP stabilisce connessioni persistenti con il server.
Il protocollo RTMP consente di inviare audio codificato in formato mp3, video in formato Flash Video Format (FLV), e istruzioni ActionScript in formato Action Message Format (AMF).
Esso si appoggia sul TCP, per trasmettere i pacchetti dal client al server e viceversa.
In conclusione possiamo immaginare una connessione RTMP come un canale attraverso cui passa audio, video e ActionScript.Tunneling con RTMP
Red5 supporta il protocollo RTMPT = Real Time Messaging Protocol TunnelingArchitettura Red5 Scenario Tipico
Esempio: un utente visualizza sul proprio browser un filmato FLV
ricevuto in streaming dal server Red5

Red5 Server.it: Guide su Red5, Tutorials e molto altro ancora
Nel mese di ottobre 2010 ho avviato il blog www.red5server.it in cui pubblicherò articoli e guide sul server di streaming multimediale opensource.
Ecco uno screenshot che illustra come si presenta il blog:

Visitate il Blog www.red5server.it
9 Responses to “Red5: il server di streaming multimediale opensource”
Lascia un Commento
Link consigliati
Categorie
- Actionscript 3 – Trucchi e Segreti (9)
- Algoritmi e Programmazione Avanzata (3)
- Analisi di Basi di Dati (10)
- Assembler 8086 (2)
- Base di dati (1)
- Codifiche (1)
- Data Mining (4)
- E-learning (2)
- Flash (9)
- Grafica 3D (1)
- HTML5 (1)
- Intelligenza Artificiale (1)
- Lego Mindstorms NXT (6)
- Linguaggio C++ (1)
- Linux (8)
- Microsoft Office (7)
- news (1)
- Objective C (3)
- PHP (8)
- Progetti Politecnico (11)
- Programmazione ad Oggetti (Java) (1)
- Programmazione in C (16)
- Realtà Aumentata (1)
- Red5 (6)
- Seminari (3)
- SEO (3)
- Server (3)
- Sicurezza dei Sistemi Informatici (17)
- Siti Amici (1)
- Strategia e Innovazione (19)
- Tecnologie delle Basi di Dati (2)
- Utilità (11)
- web design (2)
Articoli Recenti
- Gli Active Record di Yii: un design pattern per rappresentare le tabelle del database in un modo orientato agli oggetti.
- Come creare un pulsante dinamicamente in Objective-c – Iphone SDK
- Actionscript 3 versus Objective-C: vediamo le principali differenze a livello di sintassi del codice
- Firewall: IP Tables un esempio su Linux
- Una piccola introduzione al framework php Yii (Yes It Is!) – installazione e creazione di una semplice applicazione web 2.0
- NetBeans IDE: JVM Creation Failed vediamo come risolverlo
- I sistemi esperti basati su regole
- I protocolli in Objective C sono molto simili alle interfacce di Java
- 19 – Strategia e Innovazione – Benefici della diversificazione: matrice BGC
- 18 – Strategia e Innovazione – Scelta del tempo di ingresso nel mercato – I FIRST MOVER
- 17 – Strategia e Innovazione – I mercati “WINNER TAKE ALL”
- 16 – Strategia e Innovazione – Standard e Disegno Dominante
- 15 – Strategia e Innovazione – Ciclo di vita dell’innovazione tecnologica e affermazione di un disegno dominante
- 14 – Strategia e Innovazione – Trend di diffusione di una nuova tecnologia
- 13 – Strategia e Innovazione – Sviluppo scientifico e paradigmi dominanti – Dinamiche dell’innovazione
Tags
Acrobat Writer Gratis
Actionscript 3
addEventListener
API disegno flash
appunti del corso di strategia e innovazione
AS3
Audio Streaming
Cancellare un'immagine da un PDF
cicli ed iterazioni in c
context free grammar
esercitazioni svolte in linguaggio c
esercitazioni svolte sui trigger oracle
esercizi svolti assembler 8086
eventi in actionscript 2
eventi in actionscript 3
file system linux
Formati Video HTML5
forward-chaining
gestione della memoria dinamica in c
gestione delle liste in c
getURL
Guida Visual Basic For Application - VBA
HTML5
indicizzare un sito sui motori
jflex
LEGO MINDSTORMS NXT 2.0 - BLUETOOTH - C#
linguaggi e traduttori
Modificare un file PDF
moveTo
navigateToURL
Oracle Database 10g Express Edition
Primo programma in c
programmare robot
root
scelte ed alternative in c
setChildIndex
streaming real time
swapDepths
TextField buttonMode
vettori in c
video in as2
video in as3
Video Streaming
XML
XMLList