The LiveStreamRecordAutoRecord module for Wowza Streaming Engine media server software is an alternative to the Record all incoming streams option in Wowza streaming Engine Manager. It enables you to record either all or selected incoming live streams on an application automatically using the default StreamRecorder parameters configured for the application. The recordings are accessible via the Wowza Streaming Engine Manager user interface, the Wowza Streaming Engine REST service, and the LiveStreamRecord HTTP provider.
- Download wse-plugin-autorecord.zip.
- Extract the contents from the downloaded (zipped) package, and then copy the lib/wse-plugin-autorecord.jar file from the package to the lib folder in your Wowza Streaming Engine installation ([install-dir]/lib).
- 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
|ModuleAutoRecord||Auto-record streams that are published to this application instance.||com.wowza.wms.plugin.ModuleAutoRecord|
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/StreamRecorder||streamRecorderRecordAllStreams||Boolean||true||Start a recorder for every stream that's published to the application instance. (default: true)|
|/Root/Application/StreamRecorder||streamRecorderAutoRecordDebugLog||Boolean||true||Enable debug logging for the module. Debug logging is also enabled for the main StreamRecorder debug logging (streamRecorderDebugEnable) or if logger debugging is enabled. (default: true)|
|/Root/Application/StreamRecorder||streamRecorderRecordType||String||allow||Type of streams to record or how to interpret the streamRecorderStreamNames list. Valid values are:|
all - record all streams. Same as streamRecorderRecordAllStreams
source - record all source streams
transcoder - record all transcoder output streams
allow, whitelist - record streams that match something the names list
deny, blacklist - record streams that don't match anything the names list
none - don't automatically record any streams(default: not set)
|/Root/Application/StreamRecorder||streamRecorderStreamNames||String||myStream|myOtherStream||Pipe (|) or comma separated list of names to match. Can be a single wild card (*), complete names, regex match, wildcard prefix or wildcard suffix. (default: not set)|
|/Root/Application/StreamRecorder||streamRecorderStreamNamesDelimiter||String||~||Delimiter chars used to separate the values in streamRecorderStreamNames property. (default: (\\||,) (regex for pipe or comma))|
When the application is started, the module checks to see if the streamRecorderRecordAllStreams property is set to true (default) or if the streamRecorderRecordType property is set to all, and if so, it sets the Stream Recorder Manager to record all of the streams that are published to the application. Alternatively, streams are recorded based on the streamRecorderRecordType setting and if a match is found in the streamRecorderStreamNames list.
Each recorder that's started uses the default StreamRecorder parameters that are configured for the application. These can be set via the StreamRecorder properties. For more information, see How to record live streams (Wowza Streaming Engine)
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: For Wowza Streaming Engine on 12-28-2016.
If you're having problems or want to discuss this article, post in our forum.