Multi-bitrate HLS playlist without SMIL files

Hi,

The institution I work for has a large library of .mp4 files going back to the early 2000s. There are thousands of these files, each one with multiple encodes at different bitrates. These mp4s follow this naming format: FILENAME_BITRATE-IN-KBPS.mp4. So, for example, one of our videos might have the following files:

  • classroom-video_150.mp4

  • classroom-video_400.mp4

  • classroom-video_650.mp4

  • classroom-video_1200.mp4

  • classroom-video_2000.mp4

    Going through and generating SMIL files for each of these videos is not realistic for us, both due to the sheer volume of videos and lack of proper permissions to do so. We have access to add new mp4 videos to the server, but we have no ability to alter the configuration of our Wowza install.

    Right now, my workaround is to build my own multi-bitrate playlist.m3u8 by approxmiating the file bitrate and linking directly to the chunklist.m3u8 generated by Wowza. The playlist.m3u8 files that I generate look like this:

    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=96000 
    http://server.url/app-name/_definst_/path/filename_32.mp4/chunklist.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=214000 
    http://server.url/app-name/_definst_/path/filename_150.mp4/chunklist.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=464000 
    http://server.url/app-name/_definst_/path/filename_400.mp4/chunklist.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=714000 
    http://server.url/app-name/_definst_/path/filename_650.mp4/chunklist.m3u8
    #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1264000 
    http://server.url/app-name/_definst_/path/filename_1200.mp4/chunklist.m3u8
    

    This works, but I worry that this workaround might cease to function with an update to Wowza.

    My question is: Is this workaround safe? If not, is there any way for me to pass a list of mp4 files to Wowza and have it spit out a multi-bitrate playlist.m3u8? Generating SMIL files for our entire archive and placing them in the appropriate folders on the Wowza server is unfortunately not an option for us.

    Thanks,

    Alex

Hello,

You can develop a custom Wowza module and generate the SMIL descriptor files on-the-fly.

Please take a look at the “How to use Java API calls to resolve SMIL file requests (AMLST)” forum article describing how to create such a module.

Zoran