我正在使用Wowza Media Server来启用MP4文件的流媒体,而我使用Flowplayer作为视频播放器.
为了获得我的内容的一些结构,我在StorageDir我的Wowza应用程序的配置中使用子目录.
我遇到的问题是,无论我使用什么URL格式,Wowza都会继续在根存储目录中查找该文件.
我已经使用Wowza指定的URL格式试图在这里,但没有运气:
rtmp://[wowza-ip-address]/myapp/_definst_/mp4:mysubdirectory/sample.mp4
Run Code Online (Sandbox Code Playgroud)
我还尝试了Wowza论坛帖子中建议的所有内容:
但是Wowza一直在寻找根存储目录,抛出这样的异常:
404 b0c9be70-a33c-41ce-9692-199e3a1caccf.mp4
open: java.io.FileNotFoundException:
C:\Program Files (x86)\Wowza Media Systems\Wowza Media Server 3.6.2\content\b0c9be70-a33c-41ce-9692-199e3a1caccf.mp4.flv
(The system cannot find the file specified)
Run Code Online (Sandbox Code Playgroud)
不知何故,Wowza认为它应该在根存储目录中查找FLV文件,即使URL指定它是子目录中的MP4文件.这是为什么?
在花了好几个小时研究之后,我终于在Wowza论坛上找到了这篇文章.
问题:
显然,某些基于闪存的视频播放器(如我使用的Flowplayer)存在问题,它接受RTMP连接和流名称的单个字符串.使用子目录时,其中一些播放器不会正确分隔RTMP连接和流名称.
将此URL分开时:
rtmp://[wowza-address]:1935/vod/_definst_/mp4:subfolder/sample.mp4
Run Code Online (Sandbox Code Playgroud)
播放器将此作为RTMP连接:
rtmp://[wowza-address]:1935/vod/_definst_/mp4:subfolder
Run Code Online (Sandbox Code Playgroud)
然后玩家将尝试玩sample.mp4而不是subfolder/sample.mp4失败.
解决方案:
为了解决这个问题,Wowza有一个修复URL的插件,可在此处下载:
解压缩包并将JAR文件复制到Wowza /libs目录中,然后将其添加到/conf/[app-name]/Application.xml配置文件中:
<Module>
<Name>ModuleFixStreamPath</Name>
<Description>ModuleFixStreamPath</Description>
<Class>com.wowza.wms.plugin.collection.module.ModuleFixStreamPath</Class>
</Module>
Run Code Online (Sandbox Code Playgroud)
这样做让我一切顺利!
| 归档时间: |
|
| 查看次数: |
9432 次 |
| 最近记录: |