如何将Rtp组播流从DVB-T转换为HLS?

时间:2016-02-01 16:01:52

标签: multicast rtp hls dvb-t

我使用Mumudvb从dvb-t和dvb-s获取信号到RTP Multicast流并成功执行此操作,结果流URL类似于rtp://239.1.2.1:60001。

现在我想知道如何将RTP(或UDP)流转换为Http Live Stream(HLS)?

修改

我可以使用ffmpeg转换实时流,但是它不稳定,当ffmpeg中发生错误时,会话停止并且无法找到失败,例如重新启动ffmpeg,我正在寻找转换操作的新方法。

非常感谢

1 个答案:

答案 0 :(得分:2)

VLC可能会这样做,类似于:

cvlc -vvv rtp://@239.1.2.1:60001
--sout '#std{access=livehttp{seglen=5,delsegs=true,numsegs=5,
index=/path/to/stream.m3u8,
index-url=http://example.org/stream-########.ts},
mux=ts{use-key-frames},
dst=/path/to/stream-########.ts}'

/path/to/stream*替换为您要为播放列表和段提供服务的路径,并将http://example.org替换为您计算机的域名或IP地址。

有关详细信息,请参阅这些command line examples

我不确定输入错误后VLC是否比ffmpeg更优雅地重试。在任何情况下,您都可以在失败行为后重试脚本here is one example