是mp4流可以与ffserver



我尝试用ffserver流式传输mp4文件的日子
我读过很多这样的问题:
https://superuser.com/questions/563591/streaming-mp4-with-ffmpeg
使用ffserver开始流式传输简单mp4
http://ffmpeg.gusari.org/viewtopic.php?f=12&t=1190
http://ffmpeg.org/pipermail/ffserver-user/2012-July/000204.html
HTML5-如何流式传输大型.mp4文件?

最后我不明白mp4流能不能
这是用ffserver实现这一点的一种方法吗
有样品吗?我阅读帮助,但他们最喜欢直播,但我只想流式传输一个简单的mp4文件。

是。

使用ffserver流式传输mp4文件是非常可能的。然而,它可能需要阅读一些文档:

https://ffmpeg.org/ffmpeg.html

https://ffmpeg.org/ffserver.html

关键部分是ffserver(ffserver.conf)配置文件的编写。据我所知,ffmpeg提供了一个示例配置列表:

虽然它们可能有点过时,但如果你尝试运行它们,ffserver会告诉你是否有什么不对劲:)

编辑

(由于我只有1个代表,我不能发布超过2个链接。我删除了样本,并在下面显示了一个相当简单的链接)

要流式传输mp4文件,您可能需要考虑ffserver在以mp4格式进行流式传输时可能存在问题。您仍然可以流式传输mp4文件,但格式不同。

非常简单的方法如下:

<Stream streamTest.asf>    #ASF as the streaming Format
File "/tmp/video1.mp4"     #or wherever you store your Videos
</Stream>

服务器自己转换文件,但如果你真的想在mp4中进行流式传输,你可能需要仔细研究"碎片化的mp4"。

要观看流,请使用可以处理asf(我使用的是VLC)的播放器,并从URL:观看

ip-address:port/streamTest.asf

摘要

应该说,我还在学习ffserver的方法,所以可能会有一些错误:)

这是对ffserver文档中的章节的简短总结。

5.2全局选项

本章中的选项指定您的服务器设置。例如,应该处理多少个同时请求。你想在哪个端口上进行流式传输等等……对于完全不熟悉ffserver的人来说,大多数默认值应该足够了。

5.3进料段

进料部分是ffserver的核心部件之一。由于一个提要可以服务于多个流,因此首先构建它可能很有用
注意:只有当您想
a)实时流式传输
b)流式传输未存储在服务器上的文件时,才需要Feed
c) 在流式传输之前处理文件

5.4河流断面

在这里,您实际上可以构建自己的流。有很多变量可以更改,我建议慢慢开始添加/自定义选项。从这一点来看,文档做得不错。所以现在你知道了,你需要什么(再说一遍,我觉得可能性是无数的,但我仍然是一个初学者^^),以及在哪里可以找到基本的东西。

ffserver.conf的结构可能(但并非必须)如下:

#Options from 5.2
HTTPPort 8090
#...
#Feed (Options from 5.3)
<Feed feed1.ffm>
#...
</Feed>
#
#Stream (Options from 5.4)
<Stream stream1.asf>
Feed feed1.ffm
Format asf
NoAudio
#...
</Stream>

由于这是我的第一篇文章,我希望它不要太混乱:)

ffserver.conf:

HTTPPort 8090
HTTPBindAddress 0.0.0.0
RTSPPort 8091
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
<Stream 1.mp4>
File "/path/1.mp4"
Format rtp
</Stream>

开始:

ffserver -f ffserver.conf

播放:

ffplay rtsp://localhost:8091/1.mp4

最新更新