如何通过http协议流式传输ffmpeg

问题描述 投票:8回答:1

我正在做一个应该在Flowplayer中正确显示的流。首先,我通过RTP将其发送到另一台PC。在这里,我还检查了VLC,编解码器等正确到达,他们这样做。

现在我想将此流作为文件公开给Flowplayer,因此可以通过我在VLC中使用的东西显示它:例如http://localhost:8080/test.mp4

我得到的全线是:ffmpeg -i input -f mp4 http://localhost:8080/test.mp4

但是,无论我如何尝试这样做,我只会得到一个输入/输出错误。这只能用ffserver或其他东西吗?

我认为这不起作用,因为ffmpeg不能充当服务器;在VLC上,它可以工作。 (虽然VLC破坏了我设置的编解码器,但之后由于某种原因无法读取)

我可以使用的一种(某种)解决方法是将RTP流保存​​到文件中,然后让flowplayer加载它。但是,只有在不再访问文件时才能使用它;否则我会收到编解码器错误。

http ffmpeg flowplayer
1个回答
0
投票

你需要这个命令行

ffmpeg -f v4l2 -s 320x240 -r 25 -i /dev/video0 -f alsa -ac 1 -i hw:0 http://localhost:8090/feed1.ffm

确保您的Feed名称以“.ffm”结尾,如果不是这样,请在您的Feed网址前添加“-f ffm”,以手动指定输出格式(因为ffmpeg无法自动计算出来)更多),像这样的“-f ffm http://localhost:8090/blah.bleh”。

© www.soinside.com 2019 - 2024. All rights reserved.