Come riprodurre flussi rtsp in Ubuntu?


9

Più specificamente, la domanda è come riprodurre flussi rtsp da indirizzi che contengono un punto interrogativo.

IE: rtsp: //some.server.name: 554 / video_file.wmv? Authstring = sOm3StrIN2 == & param = 3

Ho provato vari lettori multimediali, ma non sono riuscito a trasmettere il file. So per certo che questo non è un problema del server perché potrei trasmettere in streaming un video di prova su quel server che non richiede un'autenticazione.
Sono rimasto sorpreso dal fatto che vlc non fosse in grado di gestire tali URL, quindi ho provato mplayer ma non è stato possibile riprodurre i flussi.
mpv è stato il primo giocatore in cui sono riuscito a riprodurre il video di prova che ho menzionato sopra, ma non sono riuscito a trasmettere in streaming gli URL del modulo che ho scritto sopra. Con mpv ho provato questa riga di comando:

mpv --http-header-fields='authstring:sOm3StrIN2==','param:3' \rtsp://some.server.name:554/video_file.wmv

e ho anche provato ad aggiungere l' --rtsp-transport=lavf|tcp|udp|httpopzione, ma non ha funzionato.

Sfortunatamente, so che tali collegamenti (come scritto sopra) funzionano con Windows Media Player, ma non voglio usare wine o passare a Windows (ho un duello) solo per guardare un flusso.

Risposte:


6

Hai provato a seguire queste istruzioni dalla documentazione di Videolan (scorri verso il basso fino alla sezione Video on demand )?

Sarebbe utile se si fornisce un URL rtsp di prova che si desidera trasmettere.

Modifica : le istruzioni dal link sopra sono:

Per prima cosa avvia il vlc:

vlc --ttl 12 -vvv --color -I telnet --telnet-password videolan --rtsp-host 0.0.0.0:5554

dove:

  • 12 è il valore del TTL (Time To Live) dei pacchetti IP (il che significa che il flusso sarà in grado di attraversare 11 router).

  • telnet avvia l'interfaccia telnet di vlc.

  • videolan è la password per connettersi all'interfaccia telnet.

  • 0.0.0.0 è l'indirizzo host.

  • 5554 è la porta su cui si esegue lo streaming.

Quindi connettersi all'interfaccia telnet vlc e creare l' oggetto vod :

new Test vod enabled

setup Test input my_video.mpg

Puoi accedere allo stream con:

vlc rtsp://server:5554/Test

dove server è l'indirizzo del server di streaming (IP o DNS)


1
Non sono sicuro di come dovrebbe funzionare. Mi sembra che questo mi trasformerà in un server rtsp, ma ho bisogno di trovare un client in grado di comunicare con un server che si aspetta alcuni parametri (per l'autenticazione)
yaron160

3

Puoi provare con mplayer.

sudo apt-get install mplayer

Passa l' rtsp://URL a mplayer sulla sua riga di comando. Ci sono server là fuori che servono file contenenti un rtsp://URL su HTTP, ma poi servono contenuti nel protocollo MMS. Questo è per compatibilità con alcuni vecchi lettori Microsoft (la mia memoria è confusa nei dettagli), ma rompe i client che credono che RTSP sia RTSP e MMS sia MMS. Se ottieni un rtsp://URL che non funziona affatto, prova a sostituire lo schema con mms://.


ho provato il tuo suggerimento ma non ha funzionato.
yaron160,

0

Per me il miglior giocatore è ffmpeg:

ffplay rtsp://username:password@server:554/path

Se non è necessaria l'autenticazione,

ffplay rtsp://server:554/path
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.