
Il protocollo di messaggistica in tempo reale (RTMP) è un formato di streaming ampiamente utilizzato. Esiste da molti anni ed è cresciuto fino a diventare uno strumento essenziale per emittenti, operatori di rete e molti altri settori. Tuttavia, alcuni malintesi su RTMP lo hanno reso meno popolare di quanto avrebbe potuto essere.
Ma cos’è esattamente l’RTMP? Come funziona? E dovresti usarlo per il tuo prossimo live streaming?
Scopri questo e altro ancora di seguito.
Che cos'è RTMP?
RTMP è un protocollo di rete o un sistema utilizzato per lo streaming di contenuti multimediali su Internet basato sulla tecnologia TCP (Transmission Control Protocol).
TCP è uno dei componenti che compongono la suite di protocolli Internet. L'altro componente importante è il protocollo Internet, chiamato anche IP.
RTMP è un protocollo di rete o un sistema utilizzato per lo streaming di contenuti multimediali su Internet.
Insieme, TCP e IP fungono da ponti di comunicazione tra l'applicazione e i livelli di rete. Pensatela in questo modo; il livello dell'applicazione comprende ciò con cui interagiresti normalmente, come il browser Mozilla Firefox o qualsiasi altra applicazione utente.
Affinché il tuo browser Firefox possa caricare una pagina web, deve inviare una richiesta al server del sito web. Dopo aver ricevuto la richiesta, il server invia la risorsa richiesta (ovvero uno streaming video, un video preregistrato su YouTube o un codice HTML per la pagina web).
Per mantenere una comunicazione efficace (ovvero evitare che la corrispondenza venga interrotta o ritardata), il messaggio deve essere smantellato in parti più piccole note come pacchetti. Questo viene fatto dal lato del mittente e, una volta ricevuto, il messaggio viene riassemblato per l'utente.
TCP è il componente che si occupa di suddividere il messaggio in pacchetti o pezzi più piccoli che possono essere trasmessi in modo efficace ed efficiente.
Il livello IP funge da agente di inoltro che determina i percorsi migliori per trasmettere i pacchetti su Internet.
Il protocollo RTMP è utilizzato da molti lettori multimediali popolari, tra cui Adobe Flash Player, VLC Media Player, QuickTime Player e Windows Media Player. RTMP è supportato anche da alcuni browser Web, inclusi Google Chrome e Mozilla Firefox.
La preoccupazione principale per la maggior parte degli utenti con una soluzione di streaming è il modo in cui fornisce il contenuto. Se la qualità della risoluzione dello streaming è bassa, sarà un problema per la maggior parte dei consumatori. Allo stesso modo, una soluzione di streaming con latenza elevata e buffer o carichi troppo lunghi prima della riproduzione dei contenuti non andrà bene.
È qui che RTMP brilla. Sin dal suo sviluppo, RTMP ha garantito bassa latenza, buffering minimo e una delle migliori qualità di risoluzione dello streaming a condizione che la connessione di rete sia sufficientemente forte e veloce.
Un altro vantaggio di RTMP è la sua capacità di supportare lo streaming di massa contemporaneamente e senza grossi problemi.
Tuttavia, nonostante sia in circolazione da molti anni, RTMP è stato recentemente oggetto di un attento esame perché il sistema non è sicuro per i suoi utenti.
Ecco come si verificano le vulnerabilità della sicurezza:
Innanzitutto, il protocollo RTMP non ha alcuna crittografia incorporata. Pertanto, qualsiasi comunicazione o trasferimento di pacchetti mentre viene utilizzato RTMP è esposto all'ascolto da parte di gruppi non autorizzati o attacchi di tipo man-in-the-middle.
Un altro fattore che ha contribuito alla vulnerabilità della sicurezza di RTMP è che il suo codice sorgente è rimasto proprietario per molto tempo. Il software proprietario (ovvero il software la cui proprietà e diritti di controllo sono limitati all'entità che lo ha sviluppato o acquistato) in genere riceve patch di sicurezza che vengono rilasciate regolarmente, ma non è sufficiente.
Nuove vulnerabilità emergono frequentemente e la comunità costruita attorno al software open source garantisce patch di sicurezza relativamente più frequenti e migliori. Questo è ciò che RTMP ha mancato per migliorare il proprio livello di sicurezza.
Variazioni RTMP
Le variazioni RTMP includono quanto segue:
- Server del protocollo di messaggistica in tempo reale (RTMPS) – è abbastanza simile a RTMP solo che ha la crittografia, ovvero Secure Sockets Layer (SSL) e Transport Layer Security (TLS) abilitati e supporta tutti i lettori con Flash Player abilitato. Viene utilizzato in scenari in cui è fondamentale prevenire la manomissione o l'accesso non autorizzato ai dati in transito.
- Protocollo di messaggistica in tempo reale crittografato (RTMPE) – è un protocollo di streaming molto versatile che utilizza sia il Transport Control Protocol (TCP) che l’User Datagram Protocol (UDP) per trasmettere i dati. RTMPE crittografa inoltre tutte le trasmissioni di dati utilizzando la crittografia proprietaria di Adobe per evitare accessi non autorizzati e manomissioni.
- Tunnel del protocollo di messaggistica in tempo reale (RTMPT) – RTMPT utilizza un meccanismo di tunneling per bypassare i firewall che in genere bloccano tutto il traffico RTMP. In pratica, RTMPT richiede che il client invii una richiesta HTTP modificata al server, che risponde con una trasmissione HTTP quasi simile. Il client e il server utilizzano un ID di sessione; una volta stabilita la connessione, la trasmissione dei dati può iniziare tra i due.
- Protocollo di flusso multimediale in tempo reale (RTMFP) – RTMFP è una versione potenziata di RTMP in quanto utilizza un diverso formato di codifica UDP per ottenere uno streaming multimediale ad alte prestazioni.
Storia dello streaming RTMP
Real-Time Messaging Protocol (RTMP) era inizialmente un protocollo proprietario sviluppato da Macromedia per lo streaming di audio, video e dati su Internet tra un lettore Flash e un server.
RTMP è ora utilizzato da numerosi servizi online popolari come Facebook, Twitch e Twitter per lo streaming video in diretta.
La prima versione pubblica di RTMP risale al 2002. Nel 2009, Adobe ha rilasciato una versione con specifiche aperte di RTMP nota come OpenRTMP. La differenza principale tra RTMP e OpenRTMP è che con OpenRTMP è possibile utilizzare qualsiasi server multimediale anziché solo Flash Media Server (FMS).
C'è anche maggiore flessibilità con le specifiche RTMP aperte riguardo al modo in cui gli sviluppatori possono proteggere o configurare la funzionalità peer-to-peer. Lo scopo è incoraggiare l'innovazione e la collaborazione attraverso la competizione e l'accesso aperto tra gli sviluppatori per sviluppare la soluzione RTMP ideale.
Il principio principale
RTMP utilizza una tecnica chiamata "streaming" per fornire contenuti. Ciò significa che i dati vengono trasferiti in piccole parti chiamate “chunk”. I pezzi vengono riassemblati dall'altra parte, in modo che l'utente possa guardare o ascoltare il contenuto senza aspettare di scaricarlo completamente.
Il funzionamento di RTMP è suddiviso in due parti:consegna nel primo e nell'ultimo miglio.
La consegna del primo miglio generalmente comporta la trasmissione di contenuti multimediali dal codificatore al server utilizzando RTMP. La consegna dell’ultimo miglio si riferisce alla trasmissione di contenuti multimediali dal server al dispositivo dell’utente. In questa seconda parte viene utilizzato un Flash player o uno strumento altrettanto capace. Ci sono rapporti secondo cui Adobe sta abbandonando tutto il supporto per Flash; di conseguenza, ciò significa la fine della consegna dell'ultimo miglio.
In risposta, il settore ha adottato l'Hypertext Transfer Protocol (HTTP), una soluzione di streaming più efficiente.
Le varianti RTMP come RTMPT attualmente utilizzano HTTP per incapsulare e trasmettere contenuti multimediali.
Come funziona l'acquisizione RTMP
Questa è probabilmente una delle grazie salvifiche di RTMP che lo ha fatto andare avanti così a lungo. Mentre il mondo si allontanava dalla visualizzazione dei contenuti multimediali sui computer verso la visualizzazione sui dispositivi mobili, RTMP si è trovata ad affrontare una sfida.
Innanzitutto, RTMP si è affidato ad Adobe Flash Player per offrire un'esperienza di streaming fluida, ma si è verificato un piccolo problema. I dispositivi mobili non supportavano Adobe Flash Player; in sostanza, RTMP è diventato inutile per gli utenti che desideravano gli stessi servizi di streaming sui propri dispositivi mobili.
In risposta, Apple ha sviluppato il protocollo HLS per supportare la funzionalità di streaming sui dispositivi mobili.
Era ragionevole aspettarsi che l’RTMP diventasse obsoleto. Fortunatamente, è sopravvissuto con l'acquisizione RTMP, creando la sua nicchia come protocollo ideale per trasportare contenuti multimediali dal codificatore al server.
L'acquisizione RTMP dà la priorità al funzionamento dei codificatori a basso costo e generalmente offre agli utenti streaming a bassa latenza.
Coinvolge tre componenti principali:
1. La stretta di mano
Quando un client desidera connettersi a un server RTMP, deve prima stabilire un handshake. Questo processo inizia con l'invio da parte del client di una richiesta di "connessione" al server, che include informazioni sul client e il tipo di connessione che sta tentando di stabilire.
Il server risponde quindi con un messaggio "connesso", che include informazioni sul server e il tipo di connessione che è stata stabilita.
Infine, il client e il server si scambiano messaggi per confermare che sono entrambi ancora connessi e per negoziare eventuali parametri necessari per la connessione.
2. La connessione
Lo scopo principale della connessione di acquisizione RTMP è fornire un mezzo per lo streaming di contenuti multimediali da un'origine a una destinazione.
La fonte multimediale potrebbe essere il feed di una telecamera in diretta, un video, un audio o un altro supporto preregistrato. La destinazione è solitamente un server multimediale in streaming, che distribuisce il contenuto agli spettatori.
Una connessione di acquisizione RTMP comprende tre componenti:
- Il codificatore converte il segnale video e audio in un formato digitale che può essere trasportato su Internet.
- Il trasporto:questo è il mezzo attraverso il quale il segnale codificato viene inviato dal codificatore al server; in genere, ciò avviene tramite UDP o TCP.
- Il server riceve il segnale codificato e lo rende disponibile agli spettatori (di solito impacchettandolo in un formato come Flash).
3. Lo streaming
Quando un utente trasmette contenuti in streaming a un server multimediale, il server deve prima codificare il feed video e audio in entrata prima di inviarlo a tutti i client connessi.
Il processo di codifica e riformattazione di video e audio in un formato di file standard è chiamato transcodifica. Si tratta di convertire il segnale in ingresso in un formato che può essere riprodotto su vari dispositivi.
Per saperne di più sullo streaming esistono due tipologie di streaming:live e on-demand. Lo streaming live si riferisce alla trasmissione in tempo reale, mentre lo streaming on demand consente agli utenti di guardare i contenuti comodamente.
Lo streaming live richiede una connessione costante tra client e server, mentre lo streaming on-demand no.
RTMP utilizza TCP per mantenere una connessione persistente tra client e server, consentendo lo streaming a bassa latenza. Tuttavia, RTMP non è adatto per lo streaming su richiesta.
Alternative RTMP per l'acquisizione
SRT e WebRTC sono i principali contendenti che possono eguagliare o superare le capacità RTMP. Ecco una breve anteprima delle due alternative:
Trasporto affidabile e sicuro (SRT)
SRT colma le lacune che RTMP non è riuscito a gestire, come il mantenimento dello streaming a bassa latenza anche quando l'utente è connesso a una rete relativamente inaffidabile. Questo lo presenta come una scelta eccellente sia per lo streaming live che su richiesta.
Poiché è open source, i limiti alle sue capacità sono infiniti e non c'è da preoccuparsi che il supporto allo sviluppo venga ritirato.
Comunicazioni Web in tempo reale (WebRTC)
WebRTC vince con la sua pubblicazione basata su browser. Anche WebRTC HTTP Ingest Protocol (WHIP) è in lavorazione e ciò significa per gli utenti che saranno in grado di eseguire lo streaming solo con un browser Web invece di preoccuparsi dei codificatori come con RTMP.
Alternative RTMP per l'uscita
In cima all'elenco delle alternative in uscita RTMP ci sono HTTP Live Streaming (HLS), MPEG-DASH e WebRTC.
Ecco una breve anteprima delle alternative:
HLS e MPEG-DASH
Questi due sono praticamente uguali, solo che HLS è proprietario mentre MPEG-DASH è open source.
L'aspetto migliore di questi due è che sono progettati per offrire una qualità multimediale ottimale e a bassa latenza e funzionano anche con connessioni di rete inaffidabili.
WebRTC è anche un'alternativa degna di nota alle soluzioni di uscita RTMP.
RTMP e Flash stanno morendo?
La risposta breve è:probabilmente no. La risposta lunga è un po' più complicata.
Un costante aumento della popolarità di HTML5 e la proliferazione di valide alternative a Flash potrebbero far sembrare che RTMP e Flash stiano morendo. Ma non è così.
Flash è in declino da un po' di tempo ormai, perdendo una quota di mercato significativa a favore di HTML5 negli ultimi anni, e la sua posizione, un tempo dominante nel mondo dei video, è ora costantemente minacciata.
Tuttavia, ha ancora una presenza significativa sul Web ed è utilizzato da molti siti popolari, tra cui YouTube e Facebook.
Per quanto riguarda RTMP, è ancora ampiamente utilizzato per lo streaming di contenuti audio e video. Tuttavia, il suo futuro è meno certo di quello di Flash.
Adobe ha annunciato che smetterà di supportare RTMP nel 2020, il che potrebbe segnare la fine di questo protocollo. Tuttavia, esistono numerose alternative basate su RTMP, quindi probabilmente continuerà a essere utilizzato in una forma o nell'altra negli anni a venire.
Quindi, dovresti eseguire lo streaming utilizzando RTMP?
Dipende. Dai un'occhiata ad alcuni vantaggi e svantaggi dell'utilizzo di RTMP.
Pro
- È molto stabile. Rispetto ad altre alternative sul mercato, è altamente improbabile che si verifichino interruzioni o tempi di inattività durante l'utilizzo di un servizio abilitato RTMP.
- Bassa latenza e buffering minimo. RTMP è unico in questo senso, il che significa che gli utenti possono guardare i video con una risoluzione migliore e ci vorrà molto meno tempo per caricare i contenuti multimediali.
- Compatibilità. La natura robusta e affidabile di RTMPS ha incoraggiato un numero maggiore di produttori a progettare i propri prodotti per integrarli facilmente con RTMP
Contro
- RTMP richiede una connessione persistente tra client e server, il che può essere problematico in caso di interruzioni della rete
- Essendo un software proprietario, c'è poca flessibilità per gli utenti esperti.
Domande frequenti
Come posso utilizzare Wave.video per lo streaming tramite RTMP?
Se stai cercando di eseguire lo streaming di video tramite RTMP, Wave.video è un'ottima opzione. Ecco come usarlo:
- Crea un account con Wave.video e accedi se non l'hai già fatto.
- Scegli il video che desideri trasmettere in streaming.
- Vai alla pagina "Destinazioni" su Wave.video e fai clic su "RTMP personalizzato"

- Successivamente, dovrai trovare l'URL del server e la chiave dello streaming per il contenuto che stai tentando di trasmettere in streaming. Per fare ciò, vai al sito web con lo streaming che desideri visualizzare.
- Puoi utilizzare un'app o un'estensione di terze parti per estrarre l'URL e la chiave se non sai come procedere.
- Copia l'URL del server e la chiave dello streaming.
- Incolla l'URL del server e la chiave dello streaming in Wave.video.

- Crea o pianifica il tuo streaming.
- Apri lo studio dal vivo e avvia lo streaming.
Questo è tutto, facile e veloce!
Quali codificatori supportano RTMP?
Esistono molti hardware e software di codifica che supportano RTMP. Alcuni di questi includono:
- Adobe Media Encoder
- OBS Studio
- Server Elementale
- TriCaster
- Trasmissione via cavo
- vMix
- TeraDek
- Motore di streaming Wowza
- Video del Niagara
RTMP e RTSP:qual è il migliore?
RTMP e RTSP sono protocolli per lo streaming di audio, video e dati su Internet. Sono simili sotto molti aspetti, ma alcune differenze fondamentali li rendono ideali per situazioni o preferenze diverse.
Ecco un breve riassunto delle principali differenze tra i due:
- RTMP è migliore per lo streaming live, mentre RTSP è migliore per lo streaming on-demand.
- RTMP ha una latenza inferiore, mentre RTSP può fornire video di qualità superiore.
- RTMP richiede un Flash Media Server, mentre RTSP può funzionare con qualsiasi media server.
Quindi, quale protocollo è migliore? Dipende tutto dalle tue esigenze specifiche.
RTMP è una buona scelta se hai bisogno di una bassa latenza e non ti dispiace usare Flash. RTSP potrebbe essere l'ideale se hai bisogno di un video di alta qualità o desideri utilizzare un server multimediale non Flash.
Che cos'è il formato del messaggio di azione (AMF)?
AMF è un formato binario per la codifica e la trasmissione di dati su Internet ed è spesso utilizzato insieme a RTMP.
AMF consente la trasmissione di dati incompatibili con RTMP, come oggetti ActionScript. Consente inoltre lo scambio efficiente di dati tra applicazioni Flash e server.
Che cos'è un URL RTMP e come ottenerlo da Facebook o YouTube?
Un URL RTMP è un identificatore univoco utilizzato per trasmettere contenuti video in diretta su varie piattaforme.
Solitamente contiene un indirizzo IP, un nome di dominio e un numero di porta.
Devi creare un evento in live streaming su entrambe le piattaforme per ottenerlo da YouTube o Facebook. Dopo averlo fatto, sarai in grado di trovare l'URL RTMP nelle impostazioni dell'evento.
Considerazioni finali
RTMP ha senza dubbio lasciato il segno nel mondo. Sta per uscire? Come soluzione di uscita, possibilmente, non ingerire affatto!
Anche se emergeranno altre alternative altrettanto o più capaci, RTMP rimarrà rilevante nella trasmissione e nello streaming dei media.
Iscriviti alla nostra newsletter:è gratis!
Pubblichiamo solo le cose buone