• How to filter audio-only rendition in Apple HLS auto-generated multi-bitrate playlist (CupertinoAutoMultibitrateFilter)

    The ModuleCupertinoAutoMultibitrateFilter module for Wowza Streaming Engine™ media server software allows you to filter the audio-only bitrate rendition of the playlist of a live application prepared for the Apple App Store.

    Apple requires that streams that for the App Store include an audio-only rendition for delivery to Apple iOS devices. However, the multi-bitrate playlist that includes the audio-only rendition may cause problems with other players that support Apple HLS playback. This module can filter player connections based on a player's User-Agent string to turn off the audio-only rendition for players that have trouble playing the stream correctly.


    For developers


    Wowza Streaming Engine 4.2.0 or later is required.


    1. Download wse-plugin-cupertinoautomultibitratefilter.zip.

    2. Extract the contents from the downloaded (zipped) package, and then copy the lib/wse-plugin-cupertinoautomultibitratefilter.jar file from the package to the lib folder in your Wowza Streaming Engine installation ([install-dir]/lib).

    3. Restart Wowza Streaming Engine.


    To enable this module, add the following module definition to your application configuration. See Configure modules for details.

    Fully Qualified Class Name
    ModuleCupertinoAutoMultibitrateFilter Filter player connections for Apple App Store-compliant streams. com.wowza.wms.plugin.CupertinoAutoMultibitrateFilter


    After enabling the module, you can adjust the default settings by adding the following properties to your application. See Configure properties for details.

    /Root/Application cupertinoAutoMultibitrateFilterUserAgents String Macintosh;|iPhone;|iPad;|iPod;|AppleTV A pipe-delineated list of User-Agent strings. Set this property only if you need to change the default values. (default: Macintosh;|iPhone;|iPad;|iPod;|AppleTV)
    /Root/Application cupertinoAutoMultibitrateFilterDebugLog Boolean true Enables logging of the filter setting and User-Agent string for each connection. (default: false)


    Use this module to filter connections based on a player's User-Agent string to turn off the audio-only rendition for players that have trouble playing the stream correctly.

    For Developers

    Source code is available on GitHub.

    Wowza Media Systems™ provides developers with a platform to create streaming applications and solutions. See Wowza Developer Tools to learn more about our APIs and SDK.
    Wowza media server software and all components, including modules, source code, and other related items offered on this page, are copyrighted (c) 2006-2016 by Wowza Media Systems, LLC, all rights reserved, and are licensed pursuant to the Wowza Media Software End User License Agreement.
    Originally Published: 02-26-2014.
    Updated: 09-28-2016.

    If you're having problems or want to discuss this article, post in our forum.