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.
Contents
Video tutorial
Prerequisites
Installation
Configuration
Properties
Usage
For developers
Video tutorial: Start stream recordings automatically
See how to use the LiveStreamRecordAutoRecord module to automatically record all or specific streams.
Prerequisites
Wowza Streaming Engine™ 4.0.0 or later is required.
Installation
- 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.
Configuration
To enable this module, add the following module definition to your application configuration. See Configure modules for details.
Name
|
Description
|
Fully Qualified Class Name
|
ModuleAutoRecord | Auto-record streams that are published to this application instance. | com.wowza.wms.plugin.ModuleAutoRecord |
Properties
After enabling the module, you can adjust the default settings by adding the following properties to your application. See Configure properties for details.
Path
|
Name
|
Type
|
Value
|
Notes
|
/Root/Application/StreamRecorder | streamRecorderRecordAllStreams | Boolean | true | Start a recorder for every stream that's published to the application instance. This property can be overridden by the streamRecorderRecordType property. (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: false) |
/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 - record streams that match something the names list
deny - record streams that don't match anything the names list
none - don't automatically record any streams
(default: all) |
/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)) |
Usage
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 using StreamRecorder properties. For more information, see Record live streams in Wowza Streaming Engine.
For developers
- Get the source code on GitHub