是的。
使用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 Feed 部分
Feed 部分是 ffserver
的核心部分之一。由于一个 feed 可以提供多个流,因此首先建立 feed 可能会很有用。
注意: 只有当您想要
a) 实时流传输
b) 传输不存储在服务器上的文件
c) 在流传输之前对文件进行处理时,才需要 Feed。
5.4 Stream 部分
这里你可以实际构建自己的流。有很多可以改变的变量,我建议从添加/自定义选项开始慢慢入手。
从这一点上,文档做得很好。现在你知道了需要什么(我觉得可能性无限,但我还是个初学者^^),以及基础知识的位置。
你的ffserver.conf的结构可能(但不一定)看起来像这样:
HTTPPort 8090
<Feed feed1.ffm>
</Feed>
<Stream stream1.asf>
Feed feed1.ffm
Format asf
NoAudio
</Stream>
由于这是我的第一篇文章,我希望它不会太混乱:)