I am using Wowza Media Server to enable streaming of MP4 files and as video player I use Flowplayer.
To get some structure for my content I use sub directories within the configured StorageDir
for my Wowza application.
The problem I have is that no matter what URL-format I use, Wowza keep looking for the file in the root storage directory.
I've tried using the URL format specified by Wowza here, but with no luck:
rtmp://[wowza-ip-address]/myapp/_definst_/mp4:mysubdirectory/sample.mp4
I also tried everything suggested in posts on the Wowza forum:
But Wowza keeps looking in the root storage directory, throwing exceptions like these:
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)
Somehow Wowza thinks it should look for an FLV file in the root storage directory, even though the URL specify that it is an MP4 file in a subdirectory. Why is that?
After spending hours looking into this, I finally found this post on the Wowza forum.
The problem:
Apparently there is an issue with some flash-based video players (like Flowplayer that I use), that accept a single string for the RTMP connection and stream name. Some of these players do not separate the RTMP connection and stream name properly when using sub directories.
When breaking this URL apart:
rtmp://[wowza-address]:1935/vod/_definst_/mp4:subfolder/sample.mp4
The player will use this as the RTMP connection:
rtmp://[wowza-address]:1935/vod/_definst_/mp4:subfolder
The player will then try to play sample.mp4
instead of subfolder/sample.mp4
which will fail.
The solution:
To remedy this problem, there is a plugin for Wowza that fixes the URL, available for download here:
Unzip the package and copy the JAR file into your Wowza /libs
directory, then add this to your /conf/[app-name]/Application.xml
configuration file:
<Module>
<Name>ModuleFixStreamPath</Name>
<Description>ModuleFixStreamPath</Description>
<Class>com.wowza.wms.plugin.collection.module.ModuleFixStreamPath</Class>
</Module>
Doing so got it all working for me!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With