Stream (.stream) files enable you to specify streams and the behavior of streams that are ingested by a Wowza Streaming Engine™ media server from sources such as MPEG-TS encoders and IP cameras (RTSP/RTP streams), SHOUTcast/Icecast streams, native RTP encoders, Secure Reliable Transport (SRT) streams, and HLS streams. For example, if your complex stream name on the server is udp://0.0.0.0:10000, you can create a stream file named mycoolevent.stream and assign the contents to the complex stream name. Players can then use mycoolevent.stream in playback URLs in place of the more complex stream name.
The properties you specify for live streaming applications that host a .stream file apply to all streams delivered by the application. This article describes how to specify per-stream settings in .stream files to override those in the application configuration for the stream. These settings apply only to the types of streams identified by the application configuration.
Before you start
You should complete the following tasks:
- Create a stream file according to Create and use .stream files in Wowza Streaming Engine.
Configure per-stream settings
After you create the stream file, do the following to configure per-stream settings for the stream in Wowza Streaming Engine Manager:
- Click the name of the stream file you want to configure in the Stream Files list.
- Click the Properties tab. (Access to the Properties tab is limited to administrators with advanced permissions. For more information about how to configure access, see Manage credentials.) On the Properties tab, there are two sets of properties: Common properties (can be configured for any stream type) and stream URI-specific properties, which are unique for the source stream URI that's specified in the stream file. The following figure shows the properties that are available for a stream file that references a SHOUTcast-Icecast stream (https:// URI type):
- To enable a property, click Edit and then select the Enabled check box for the property. The property will be enabled with a default value that you can change in the Value box. After you're done, click Save.
- Refer to the following sections in this article for details about the common and URI-specific properties that you can configure:
- Common settings
- MPEG-TS stream (udp://) settings
- MPEG-TS (TCP/IP) stream (http://) settings
- RTSP stream (rtsp://) settings
- Live Stream Repeater stream (rtmp://, rtmps://, wowz://, or wowzs://) settings
- SHOUTcast/Icecast stream (https://) settings
- Apple HLS M3U8 manifest stream (http://) settings
- SRT stream (srt://) settings
Per-stream settings reference
The settings described in this section are optional and can be omitted to allow for broader definitions set in other configuration files to remain in effect. All settings are case-sensitive.
When you configure per-stream settings in Wowza Streaming Engine Manager, they are entered into the stream (.stream) file using JavaScript Object Notation (JSON) to enable configuration of stream-specific settings.
You can also open the .stream files in a text editor and add the per-stream settings in JSON. The following examples show the syntax for JSON settings.
- Strings use quoted values:
stringSetting: "aValue"
- Integers are unquoted values that can be represented as decimal or hexadecimal. Hexadecimal settings must start with 0x or x (enclosed in quotation marks):
decimalSetting: 3hexSetting1: "0x3"hexSetting2: "x3"
- Boolean values are the unquoted strings true or false:
booleanSetting: truebooleanSetting: false
Common settings
The following common parameters can be set in .stream files for all stream types.JSON
{ uri:"udp://192.168.1.100:10000", streamTimeout:5000, reconnectWaitTime:3000, igmpV3IPV4SourceAddress:"192.168.1.6" }
Setting descriptions
- uri: String
Specified in .stream files without JSON.
- streamTimeout: Integer
If non-zero, Wowza Streaming Engine monitors the stream. If a break occurs in the stream that's longer than the streamTimeout value, in milliseconds, it resets the connection to the camera.
- reconnectWaitTime: Integer
The minimum time between reconnection attempts, in milliseconds.
- igmpV3IPV4SourceAddress: String
Specifies the IP address to use when filtering multicast streams by their source address with IGMPv3 (Wowza Streaming Engine 4.7.7.01 and later). This applies to MPEG-TS and native RTP-based UDP streams only.
Note: We recommend specifying longer streamTimeout and reconnectWaitTime values if your sources are having intermittent connectivity issues.
MPEG-TS stream (udp://) settings
The following settings are supported for MPEG Transport Streams (MPEG-TS).
JSON
{ uri:"udp://192.168.1.100:10000", streamTimeout:5000, reconnectWaitTime:3000, mpegtsAudioPID:15, mpegtsVideoPID:16, mpegtsProgramID:2, mpegtsDVBTeletextMagazineNumber:08, mpegtsDVBTeletextPageNumber:88, mpegtsAudioLanguage:"spa", mpegtsAudioBitrate:50000, mpegtsVideoBitrate:750000, mpegtsAudioIsAligned:false, mpegtsVideoIsAligned:false, mpegtsAdjustBFrameTimecodes:false, mpegtsDropIncompleteVideoFrames:true, mpegtsLogIncompleteVideoFrames:true, mpegtsMapTimeToSystemTime:false, mpegtsMapTimeToSystemTimeWindow:2000, mpegtsImportAC3:false }
Setting descriptions
- mpegtsAudioPID: Integer
Packet ID (PID) of the audio elementary stream that you want to use.
Default: The first audio stream found in the Program Map Table (PMT) for the program is used. - mpegtsVideoPID: Integer
PID of the video elementary stream that you want to use.
Default: The first video stream found in the PMT for the program is used. - mpegtsProgramID: Integer
Program ID of the service that you want to use.
Default: The first program in the list of programs in the PMT is used. - mpegtsDVBTeletextMagazineNumber: Integer
Specifies the Magazine number where the subtitles are embedded. This information is in the teletext descriptor in the Program Map Table (PMT).
Default: The default value is 08. - mpegtsDVBTeletextPageNumber: Integer
Specifies the Page number where the subtitles are embedded. This information is in the teletext descriptor in the Program Map Table (PMT).
Default: The default value is 88. - mpegtsAudioLanguage: Three letter string.
String that represents the ISO 639-2 language code used to select the desired audio elementary stream.
Default: The first audio stream in the PMT for the program is used. - mpegtsAudioBitrate: Integer
Used to specify the audio bitrate, in bits per second, for use with Transcoder.
Default: -1 - mpegtsVideoBitrate: Integer
Used to specify the video bitrate, in bits per second, for use with Transcoder.
Default: -1 - mpegtsAudioIsAligned: Boolean
Some MPEG-TS based encoders and cameras send unaligned audio packets. This setting enables Wowza Streaming Engine to manage them correctly. For more details, see the references to the audioIsAligned property in Properties to fix audio and video alignment.
Default: false - mpegtsVideoIsAligned: Boolean
Some MPEG-TS based encoders and cameras send unaligned video packets. This setting enables Wowza Streaming Engine to manage them correctly. For more details, see the references to the videoIsAligned property in Properties to fix audio and video alignment.
Default: false - mpegtsAdjustBFrameTimecodes: Boolean
Enables the feature to manufacture decode/presentation time stamps (DTS/PTS) for B-frames when an encoder can't generate them or generates them incorrectly.
Default: false - mpegtsDropIncompleteVideoFrames: Boolean
Enables frames to be dropped when packet loss occurs.
Default: false - mpegtsLogIncompleteVideoFrames: Boolean
Enables information about dropped frames to be logged when packet loss occurs (see mpegtsDropIncompleteVideoFrames:).
Default: false - mpegtsMapTimeToSystemTime: Boolean
Enables mapping of DTS/PTS values to the system clock. This is generally used in a parallel origin configuration and ensures that a smoother transition occurs during failover because all of the origin servers generate similar PTS/DTS values based on matched system clocks.
Default: false - mpegtsMapTimeToSystemTimeWindow: Integer
Controls the rollover window duration, in milliseconds, around system/PTS/DTS clocks. This is generally used in a parallel origin configuration and ensures that clock rollover is handled identically on all origin servers.
Default: 2000 - mpegtsImportAC3: Boolean
Enables AC-3 elementary streams to be imported. It allows Dolby Digital (AC-3) and Dolby Digital Plus (Enhanced AC-3) audio from MPEG-TS encoders to pass through unaltered for delivery using Apple HTTP Live Streaming (Apple HLS/Cupertino) and MPEG-DASH streaming. This allows your customers to experience immersive surround-sound audio when streaming on media devices such as Apple TV, Sony PlayStation 3 (PS3), hybrid set-top boxes, and smart TVs.
Default: false - multicastInterfaceAddress: String
(Wowza Streaming Engine 4.8.0 and later) Specifies the IP address of the network interface that Wowza Streaming Engine should listen to for multicast traffic. This must be specified if your media server has more than one network interface.
Default: no default valueNote: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported.
MPEG-TS (TCP/IP) stream (http://) settings
In Wowza Streaming Engine 4.5.0.02 and later, the following setting is supported for MPEG Transport Streams (MPEG-TS) over TCP.JSON
{ uri:"http://192.168.1.100:10000", streamTimeout:5000, reconnectWaitTime:3000, mpegtstcpSourceHostName:true }
Setting descriptions
- mpegtstcpSourceHostName: Boolean
When set to true, Wowza Streaming Engine sets the Host: header in the initial request to that of the hostname used in the connection URI. This is required to connect to some MPEG-TS over TCP/IP streams correctly.
Default: false
RTSP stream (rtsp://) settings
The following settings are supported for Real Time Streaming Protocol (RTSP) streams.JSON
{ uri:"rtsp://192.168.1.100:10000", streamTimeout:5000, reconnectWaitTime:3000, rtpTransportMode:"udp", rtspValidationFrequency:15000, rtspFilterUnknownTracks:true, rtspStreamAudioTrack:false, rtspStreamVideoTrack:true, rtspDebugSession:true, rtpIgnoreProfileLevelId:true, rtpIgnoreSPropParameterSets:true, rtspBindIpAddress:"192.168.1.1", rtspRemoveUserInfo:true, rtspSessionTimeout:8000, rtspConnectionTimeout:8000, rtspUserHeaders:null, rtspMulticastServerPortAudio:0, rtspMulticastServerPortVideo:0, rtspMulticastServerDestinationInSetup:true }
Setting descriptions
- rtpTransportMode: String "udp", "interleave" or "tcp", "tunnel" or "https"
This setting controls how the RTSP protocol is used when pulling an RTSP/RTP stream from an IP camera. For more details, see Change the RTP transport mode.
Default: "interleave" - rtspValidationFrequency: Integer
Specifies, in milliseconds, how often Wowza Streaming Engine validates an RTSP/RTP connection. For more details, see Turn off RTSP validation.
Default: 15000 - rtspFilterUnknownTracks: Boolean
Filters out tracks sent from IP cameras that Wowza Streaming Engine doesn't understand. For more details, see Filter unknown tracks.
Default: false - rtspStreamAudioTrack: Boolean
Enables audio tracks from IP cameras to be turned on (true) or off (false). For more details, see Turn audio or video tracks off.
Default: true - rtspStreamVideoTrack: Boolean
Enables video tracks from IP cameras to be turned on (true) or off (false). For more details, see Turn audio or video tracks off.
Default: true. - rtspDebugSession: Boolean
Enables extra debug information in the log file about the RTSP handshake between Wowza Streaming Engine and the IP camera (RTSP/RTP source). Due to the large volume of data that's logged, this setting shouldn't be enabled in production environments unless there is a problem that must be investigated. For more details, see Add RTSP debugging to the log.
Default: false - rtpIgnoreProfileLevelId: Boolean
Disables profile-level-id parsing (profile level ID extracted from SPS/PPS NAL units). For more details, see Problematic SDP files.
Default: false - rtpIgnoreSPropParameterSets: Boolean
If true, Wowza Streaming Engine ignores the sprop-parameter-sets data in an Session Description Protocol (SDP) file and relies on the data reported in the SPS and PPS packets of the stream (if they exist). This setting is generally used when a camera/encoder sends or encodes the parameter sets incorrectly.
Default: false - rtspBindIpAddress: String
Specifies the IP address that Wowza Streaming Engine binds to when streaming RTP packets over UDP. For details, see Set up an application for RTSP/RTP streaming with Wowza Streaming Engine.
Default: Binds to the default interface(s) - rtspRemoveUserInfo: Boolean
If true, the username and password information are removed from RTSP/RTP URLs before streams are requested from an IP camera.
Default: true - rtspSessionTimeout: Integer
Specifies, in milliseconds, how often Wowza Streaming Engine validates the connection to the camera by sending GET_PARAMETER messages. For more details, see RTP Session Properties Description.
Default: 8000 - rtspConnectionTimeout: Integer
Specifies, in milliseconds, the TCP connection timeout for making the initial TCP connection to an IP camera. For more details, see RTP Session Properties Description.
Default: 8000 - rtspUserHeaders: String
(Wowza Streaming Engine 4.0.6 and later) Enables custom RTSP headers for MediaCaster RTSP connections. This setting can contain multiple values separated by the pipe ("|") character (for example, key1:value1|key2:value2).
Default: nullNote: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported. - rtspMulticastServerPortAudio: Integer
(Wowza Streaming Engine 4.5.0 and later) Some RTSP sources (IP cameras and encoders) support dynamic client side port allocation for multicast streaming and require you to set a port number. This value specifies the audio UDP port the RTSP source should use when the source doesn't specify the port.
Default: 0Note: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported. - rtspMulticastServerPortVideo: Integer
(Wowza Streaming Engine 4.5.0 and later) Some RTSP sources (IP cameras and encoders) support dynamic client side port allocation for multicast streaming and require you to set a port number. This value specifies the video UDP port the RTSP source should use when the source doesn't specify the port.
Default: 0Note: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported. - rtspMulticastServerDestinationInSetup: Boolean
(Wowza Streaming Engine 4.6.0.01 and later) Some multicast-enabled IP cameras don't work if the SETUP command includes the destination=[multicast-ip-address] parameter. This value can be set to false to suppress this parameter from RTSP SETUP commands for multicast connections.
Default: trueNote: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported. - multicastInterfaceAddress: String
(Wowza Streaming Engine 4.8.0 and later) Specifies the IP address of the network interface that Wowza Streaming Engine should listen to for multicast traffic. This must be specified if your media server has more than one network interface.
Default: no default valueNote: You can only add this setting to the JSON notation for your .stream file via text editor. Wowza Streaming Engine Manager configuration isn't supported.
Note: For information, see Set up live streaming using an RTSP/RTP based encoder in Wowza Streaming Engine.
Live Stream Repeater stream (rtmp://, rtmps://, wowz://, or wowzs://) settings
The following settings are supported for Live Stream Repeater streams.JSON
{ lsrSecureTokenOriginSharedSecret:"monkeySeeMonkeyDo", lsrCallFCSubscribe: true, lsrRemoveDefaultAppInstance: true, lsrResetOnStreamNotFound: false }
Setting descriptions
- lsrSecureTokenOriginSharedSecret: String
Specifies the security token to be exchanged between either edge/origin servers or server/client players in a secured environment. If null, it's not used.
Default: null - lsrCallFCSubscribe: Boolean
If true, Wowza Streaming Engine will "subscribe" to the stream. This setting is needed for RTMP live streams from CDNs that require the RTMP FCSubscribe command. For details, see Re-stream an unprotected stream from Adobe Media Server or a CDN with Wowza Streaming Engine.
Default: false - lsrRemoveDefaultAppInstance: Boolean
If true, Wowza Streaming Engine won't send the default application instance name to the origin server when making a live repeater connection. This property needs to be true for successful RTMP and WOWZ connections.
Default: false - lsrResetOnStreamNotFound: Boolean
If true, an edge server that receives a NetStream.Play.StreamNotFound error from an origin server will reset the stream.
Default: false
SHOUTcast/Icecast stream (https://) settings
The following settings are supported for SHOUTcast/Icecast streams.JSON
{ uri:"https://192.168.1.100:80", streamTimeout:5000, reconnectWaitTime:3000, shoutcastCharacterEncoding:"8859_1", shoutcastMP3GroupCount: 4, shoutcastSetTimecodesBasedOnSystemClock: true, shoutcastSourceHostName: false }
Setting descriptions
- shoutcastCharacterEncoding: String
The metadata character encoding.
Default: "8859_1" - shoutcastMP3GroupCount: Integer
Specifies the number of frames-per-packet.
Default: 4 - shoutcastSetTimecodesBasedOnSystemClock: Boolean
When set to true, Wowza Streaming Engine sets the SHOUTcast timebase to be based on the system clock.
Default: false - shoutcastSourceHostName: Boolean
When set to true, Wowza Streaming Engine sets the Host: header in the initial request to that of the hostname used in the connection URI. This is required to connect to some SHOUTcast server farms correctly.
Default: false
Apple HLS M3U8 manifest stream (http://) settings
In Wowza Streaming Engine 4.5.0.01 and later, the following settings are supported for Apple HLS streams.JSON
{ uri:"http://192.168.1.100:1935/live/myStream/playlist.m3u8", streamTimeout:5000, reconnectWaitTime:3000, cupertinoManifestLimit:-1, cupertinoManifestIndex: "", cupertinoRestGroupOnSingleFailure: true, cupertinoAutoSegmentBuffer: false, cupertinoManifestBufferBlockCount: 2, cupertinoManifestMaxBufferBlockCount: 15, cupertinoAutoSegmentBufferTime: 30000, cupertinoChunkMaxDurationAllowed: 30000, cupertinoPacketDeliveryTime: 200 }
Setting descriptions
- cupertinoManifestLimit: Integer
Specifies the maximum number of streams to pull in from an adaptive bitrate manifest. The default value (-1) pulls in all streams found.
Default: -1 - cupertinoManifestIndex: String
Specifies, as a comma-separated list with numbering starting at 0, an index to pull in from an adaptive bitrate manifest. If no value is specified, all indexes are pulled in.
Default: <no value set> - cupertinoRestGroupOnSingleFailure: Boolean
If true, all streams found in a manifest are reset if an error is detected on any of them.
Default: true - cupertinoAutoSegmentBuffer: Boolean
If true, the cupertinoManifestBufferBlockCount is calculated based on the cupertinoAutoSegmentBufferTime.
Default: true - cupertinoManifestBufferBlockCount: Integer
Specifies the number of blocks pulled in prior to publishing the stream. By default, this is calculated based on the duration of the first block in the manifest and the cupertinoAutoSegmentBufferTime. To use the cupertinoManifestBufferBlockCount property, the cupertinoAutoSegmentBuffer property must be set to false.
Default: 2 - cupertinoManifestMaxBufferBlockCount: Integer
Specifies the maximum number of blocks allowed in the buffer. This is used to ensure that the input is being processed effectively. To use the cupertinoManifestMaxBufferBlockCount property, the cupertinoAutoSegmentBuffer property must be set to false.
Default: 15 - cupertinoAutoSegmentBufferTime: Integer
Specifies, in milliseconds, the buffer time required when pulling in Apple HLS (cupertino) blocks.
Default: 30000 - cupertinoChunkMaxDurationAllowed: Integer
Specifies, in milliseconds, the maximum block duration. Any block exceeding the maximum duration is dropped.
Default: 30000 - cupertinoPacketDeliveryTime: Long
Specifies the time interval, in milliseconds, when processing MPEG-TS packets from the Apple HLS (cupertino) block buffer. Some variable bitrate streams may require this value to be increased, but the value should not exceed 2000.
Default: 200
SRT stream (srt://) settings
In Wowza Streaming Engine 4.8.25 and later, the following settings are supported for Secure Reliable Transport (SRT) streams.
Notes:
- When configured, Wowza Streaming Engine listens for an SRT connection on the IP address and port specified in the URI. Only one SRT stream can be sent per port. You must create a separate .stream file, each with a unique port, for each SRT stream.
- For Wowza Streaming Engine to receive an encrypted SRT stream, you must configure srtPassPhrase. If you set a value for srtPassPhrase but no value for srtKeyLength, then srtKeyLength defaults to 16 (AES-128 encryption). For encryption types, set the srtKeyLength value appropriately.
- See the The SRT Deployment Guide from the SRT alliance for additional information about SRT properties.
- To learn more about adding MPEG-TS filters over SRT, see the SRT workflow tab in the Create .stream and SMIL files for startup and playback section.
JSON
{ uri:"srt://0.0.0.0:10000", srtKeyLength: 16, srtPassPhrase: "", srtLatency: 400, srtTooLatePacketDrop: true, srtTimestampBasedDeliveryMode: true, srtMaximumSegmentSize: 1500, srtFlightFlagSize: 25600, srtMaximumBandwidth: -1, srtInputBandwidth: 0, srtOverheadBandwidth: 25, srtSendNakReports: true, srtPacketLossTolerance: 0, srtKeyRefreshRate: "0x1000000", srtKeyAnnounce: "0x1000", srtReconnectWaitTime: 3000, srtReceiveBufferSize: "12058624", srtReceiveBufferSizeUDP: "12288000", srtTimesToPrintStats: 0, srtDebug: false, mpegTSFilters : [ { name : "main", mpegtsProgramID : "1", mpegtsVideoPID : "283", mpegtsAudioPID : "0x101" }, { name : "main1", mpegtsProgramID : "1", mpegtsVideoPID : "283", mpegtsAudioPID : "0x102" } ] }
Setting descriptions
- srtKeyLength: Integer
Specifies the key length used for encryption. If set to 0 and if srtPassPhrase isn't set, no encryption is used. Valid values are 0, 16 (128-bit AES encryption), 24 (192-bit AES encryption), and 32 (256-bit AES encryption).
Default: 0 - srtPassPhrase: String
Specifies the passphrase used for encryption. If not specified, no encryption is used. The passphrase must be between 10 and 79 characters in length. There is no default value.
- srtKeyRefreshRate: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the number of packets to be transmitted with an encryption key before switching to a new key.
Default:0x1000000 - srtKeyAnnounce: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the interval between when a new encryption key is sent and when switchover occurs. This value also applies to the subsequent interval between when switchover occurs and when the old encryption key is decommissioned.
Default: 0x1000 - srtTrafficType: String
(Deprecated in Wowza Streaming Engine 4.8.5) Specifies the type of traffic within the SRT stream. Currently, the only valid value if MPEGTS.
Default: MPEGTS - srtLatency: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the latency, in milliseconds. This is the time it takes for a UDP packet to be sent and delivered, including the time required to account for sending and retransmitting lost packets. The srtLatency value should be 2.5 * the round trip time (RTT). When peers set different latency values, the maximum of the two values applies to both peers. The minimum supported value is 120.
Default: 400 - srtTooLatePacketDrop: Boolean
If true, all packets that are received late are dropped.
Default: true - srtTimestampBasedDeliveryMode: Boolean
(Wowza Streaming Engine 4.8.5 and later) If true, SRT uses the timestamp-based packet delivery mode.
Default: true - srtMaximumSegmentSize: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the maximum size for a unit of transfer data (MTU), in bytes. For MPEG-TS streams, use the default.
Default: 1500 - srtDataTimeout: Integer
(Deprecated in Wowza Streaming Engine 4.8.5. Use the streamTimeout common parameter instead.) Specifies, in milliseconds, how long Wowza Streaming Engine waits after data flow stops before closing a connection. The minimum supported value is 100.
Default: 5000 - srtMaximumTransferUnit: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies, in bytes, the maximum size for a unit of transfer data. Only increase this value greater than the default if using a controlled network that supports jumbo frames. For MPEG-TS streams, use the default, 1500, which is the size of the UDP packet used for SRT.
Default: 1500 - srtFlightFlagSize: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the maximum number of bytes that can be sent without being acknowledged.
Default: 25600 - srtMaximumBandwidth: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the maximum bandwidth, in bytes per second, that the connection can use. Valid values are -1 (infinite), 0 (calculated from srtInputBandwidth and srtOverheadBandwidth), and integers greater than 0 for an absolute limit in bytes per second.
Default: -1 - srtInputBandwidth: Integer
(Wowza Streaming Engine 4.8.5 and later) If srtMaximumBandwidth is set to 0, specifies the maximum bandwidth along with the srtOverheadBandwidth value using this formula: max bandwidth = input bandwidth * (100 + overhead bandwidth)/100. If set to 0, then input bandwidth is estimated from the rate of input during transmission.
Default: 0 - srtOverheadBandwidth: Integer
(Wowza Streaming Engine 4.8.5 and later) If srtMaximumBandwidth is set to 0, specifies the maximum bandwidth along with the srtInputBandwidth value using this formula: max bandwidth = input bandwidth * (100 + overhead bandwidth)/100.
Default: 25 - srtSendNakReports: Boolean
(Wowza Streaming Engine 4.8.5 and later) If true, enables the receiver to send periodic NAK (Negative Acknowledgment) packet reports.
Default: true - srtPacketLossTolerance: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies the maximum packet reorder tolerance, which is the number of packets to receive after loss before sending a loss report. When set to 0, the loss report is sent immediately when there is a gap in a sequence.
Default: 0 - srtReconnectWaitTime: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies, in milliseconds, how often the listener looks for an incoming stream. If a source drops and the immediate reconnection attempt fails, the system waits this amount of time before looking for an incoming stream again.
Default: 3000 - sendBufferSize: Integer
(Deprecated in Wowza Streaming Engine 4.8.5) Specifies, in bytes, the send buffer size.
Default: -1 - sendUDPBufferSize: Integer
(Deprecated in Wowza Streaming Engine 4.8.5) Specifies, in bytes, the send buffer size for UDP connections.
Default: -1 - srtReceiveBufferSize: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies, in bytes, the receive buffer size. The default value is calculated from the formula
8192 * (srtMaximumSegmentSize - 28),
where srtMaxmimumSegmentSize is 1500 by default and 28 bytes is the IP and UDP header size.
Default: 12058624 - srtReceiveBufferSizeUDP: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies, in bytes, the receive buffer size for UDP connections. The default value is calculated from the formula
8192 * srtMaximumSegmentSize, where srtMaxmimumSegmentSize is 1500 by default.
Default: 12288000 - srtTimesToPrintStats: Integer
(Wowza Streaming Engine 4.8.5 and later) Specifies how many times stream statistics are written into the log after the stream starts. Statistics are logged each second. Set to -1 to log statistics indefinitely.
Default: 0 - srtDebug: Boolean
(Wowza Streaming Engine 4.8.5 and later) If true, it enables writing additional details to log files for SRT workflow debugging. For details on the debug parameters, see the Haivision SRT documentation.
Default: false - mpegTSFilters: Array
(Wowza Streaming Engine 4.8.25 and later) This property is optional. If present, it configures MPEG-TS filters over SRT using the following properties for each filter object:
- name: (String) Filter name.
- mpegtsProgramID: (Integer) Program ID of the service you want to use.
- mpegtsVideoPID: (Integer) PID of the video elementary stream you want to use. By default, the first audio stream found in the Program Map Table (PMT) for the program is used.
- mpegtsAudioPID: (Integer) Packed ID of the audio elementary stream that you want to use. By default, the first video stream fund in the PMT for the program is used.
Note: If you're using the Wowza Streaming Engine REST API to create an SRT stream, see these Add a stream file and Update a stream file: SRT example for more information.
PTZ settings
The following common parameters can be set in .stream files for all stream types to cameras with Pan/Tilt/Zoom controls.JSON
{ uri:"udp://192.168.1.100:10000", sourceControlConnectionTimeout:1000, sourceControlReadWriteTimeout:3000, sourceControlSessionTimeout:10000, sourceControlImageRefreshRate:2000, sourceControlImageRefreshMinimumRate:1000, }
Setting descriptions
- sourceControlConnectionTimeout: Integer
Specifies, in milliseconds, how long to wait for a connection with the camera to be established.
Default: 1000 - sourceControlReadWriteTimeout: Integer
Specifies, in milliseconds, how long to wait for a response from the camera.
Default: 3000 - sourceControlSessionTimeout: Integer
Specifies, in milliseconds, how long to keep a session with an inactive camera open. A camera is considered inactive if it's not sending a stream and not being viewed by clients. (The Pan/Tilt/Zoom Controller dialog box is a client.)
Default: 10000 - sourceControlImageRefreshRate: Integer
Specifies, in milliseconds, how often to refresh the video preview window in the Pan/Tilt/Zoom Controller dialog box.
Default: 2000 - sourceControlImageRefreshMinimumRate: Integer
(Wowza Streaming Engine 4.6.0.04 and later) Specifies, in milliseconds, a lower limit to the sourceControlImageRefreshRate property value. Use this property to prevent refreshes of the video preview window in the Pan/Tilt/Zoom Controller dialog box from occurring too frequently, which can affect web browser performance.
Default: 1000