Vorrei utilizzare un Teradek Cube collegato a una telecamera di trasmissione per eseguire il push su un server che esegue ffmpeg con una porta RTMP aperta e avere ffmpeg re-stream che alimenta un decoder usando RTMP o RTSP.

Monaserver lo fa, ma ho bisogno di duplicare questa funzionalità usando ffmpeg. Userei il cubo come server, tranne che potrebbe trasmettere ovunque, quindi lapertura delle porte in ogni posizione in cui va la fotocamera non è unopzione. Il nostro decoder è un Teradek Slice. Qualsiasi altro suggerimento su come farlo sarebbe molto apprezzato.

Grazie!

Risposta

Puoi utilizzare FFmpeg come server RTMP come segue ffmpeg -f flv -listen 1 -i rtmp://localhost:1935/live/app -c copy rtsp://YOUR_RTSP_HOST

Note:

  • -listen 1 fa in modo che FFmpeg agisca come un server RTMP quando viene utilizzato con il protocollo RTMP
  • Usa rtmp://localhost:1935/live/app come URL del server RTMP sulla sorgente
  • Puoi impostare qualsiasi percorso di riproduzione rtmp://localhost:1935/any/thing e qualsiasi porta
  • Il vantaggio principale di questo metodo è la semplicità, lo svantaggio è che il server si arresta se lorigine si è arrestata o ha avuto errori di codifica
  • Laltra opzione è usare nginx con nginx-rtmp-module

Commenti

  • Perfetto, grazie mille. Se ' desidero utilizzare unapplicazione come VLC per ricevere il flusso dal server, può ffmpeg ascoltare una connessione e loutput anche sulla porta locale 1935?
  • Sì, ffmpeg -f flv -listen 1 -i rtmp://localhost:8889/live/app -c copy -f flv -listen 1 rtmp://localhost:1935/live/app, imposta solo porte diverse per input e output
  • Grazie ancora, questo è esattamente ciò di cui ho bisogno. Durante il test ho ' ho provato quasi tutte le combinazioni di / live / app sul Teradek Cube e varie app per video in streaming RTMP iOS per testarlo, e ffmpeg non risponde mentre monaserver funziona. È ' app ' la chiave e deve essere inclusa nel client ' s url?
  • Descriveresti come imposti gli URL RTMP in Cube, app iOS e Monaserver? apri le porte richieste? Puoi impostare qualsiasi percorso di riproduzione / qualsiasi cosa
  • Inoltre il server di input FFmpeg si avvia quando riceve il flusso e loutput inizia quando riceve una richiesta

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *