70
Read Apple HTTP Live Streaming compliant segmented stream as
71
a uniform one. The M3U8 playlists describing the segments can be
72
remote HTTP resources or local files, accessed using the standard
74
The nested protocol is declared by specifying
75
"+@var{proto}" after the hls URI scheme name, where @var{proto}
76
is either "file" or "http".
79
hls+http://host/path/to/remote/resource.m3u8
80
hls+file://path/to/local/resource.m3u8
83
Using this protocol is discouraged - the hls demuxer should work
84
just as well (if not, please report the issues) and is more complete.
85
To use the hls demuxer instead, simply use the direct URLs to the
86
90
HTTP (Hyper Text Transfer Protocol).
176
180
It is the name of the application to access. It usually corresponds to
177
181
the path where the application is installed on the RTMP server
178
(e.g. @file{/ondemand/}, @file{/flash/live/}, etc.).
182
(e.g. @file{/ondemand/}, @file{/flash/live/}, etc.). You can override
183
the value parsed from the URI through the @code{rtmp_app} option, too.
181
186
It is the path or name of the resource to play with reference to the
182
application specified in @var{app}, may be prefixed by "mp4:".
186
For example to read with @file{avplay} a multimedia resource named
187
application specified in @var{app}, may be prefixed by "mp4:". You
188
can override the value parsed from the URI through the @code{rtmp_playpath}
192
Act as a server, listening for an incoming connection.
195
Maximum time to wait for the incoming connection. Implies listen.
198
Additionally, the following parameters can be set via command line options
199
(or in code via @code{AVOption}s):
203
Name of application to connect on the RTMP server. This option
204
overrides the parameter specified in the URI.
207
Set the client buffer time in milliseconds. The default is 3000.
210
Extra arbitrary AMF connection parameters, parsed from a string,
211
e.g. like @code{B:1 S:authMe O:1 NN:code:1.23 NS:flag:ok O:0}.
212
Each value is prefixed by a single character denoting the type,
213
B for Boolean, N for number, S for string, O for object, or Z for null,
214
followed by a colon. For Booleans the data must be either 0 or 1 for
215
FALSE or TRUE, respectively. Likewise for Objects the data must be 0 or
216
1 to end or begin an object, respectively. Data items in subobjects may
217
be named, by prefixing the type with 'N' and specifying the name before
218
the value (i.e. @code{NB:myFlag:1}). This option may be used multiple
219
times to construct arbitrary AMF sequences.
222
Version of the Flash plugin used to run the SWF player. The default
225
@item rtmp_flush_interval
226
Number of packets flushed in the same request (RTMPT only). The default
230
Specify that the media is a live stream. No resuming or seeking in
231
live streams is possible. The default value is @code{any}, which means the
232
subscriber first tries to play the live stream specified in the
233
playpath. If a live stream of that name is not found, it plays the
234
recorded stream. The other possible values are @code{live} and
238
URL of the web page in which the media was embedded. By default no
242
Stream identifier to play or to publish. This option overrides the
243
parameter specified in the URI.
246
Name of live stream to subscribe to. By default no value will be sent.
247
It is only sent if the option is specified or if rtmp_live
251
SHA256 hash of the decompressed SWF file (32 bytes).
254
Size of the decompressed SWF file, required for SWFVerification.
257
URL of the SWF player for the media. By default no value will be sent.
260
URL to player swf file, compute hash/size automatically.
263
URL of the target stream. Defaults to proto://host[:port]/app.
267
For example to read with @command{avplay} a multimedia resource named
187
268
"sample" from the application "vod" from an RTMP server "myserver":
189
270
avplay rtmp://myserver/vod/sample
275
Encrypted Real-Time Messaging Protocol.
277
The Encrypted Real-Time Messaging Protocol (RTMPE) is used for
278
streaming multimedia content within standard cryptographic primitives,
279
consisting of Diffie-Hellman key exchange and HMACSHA256, generating
284
Real-Time Messaging Protocol over a secure SSL connection.
286
The Real-Time Messaging Protocol (RTMPS) is used for streaming
287
multimedia content across an encrypted connection.
291
Real-Time Messaging Protocol tunneled through HTTP.
293
The Real-Time Messaging Protocol tunneled through HTTP (RTMPT) is used
294
for streaming multimedia content within HTTP requests to traverse
299
Encrypted Real-Time Messaging Protocol tunneled through HTTP.
301
The Encrypted Real-Time Messaging Protocol tunneled through HTTP (RTMPTE)
302
is used for streaming multimedia content within HTTP requests to traverse
307
Real-Time Messaging Protocol tunneled through HTTPS.
309
The Real-Time Messaging Protocol tunneled through HTTPS (RTMPTS) is used
310
for streaming multimedia content within HTTPS requests to traverse
192
313
@section rtmp, rtmpe, rtmps, rtmpt, rtmpte
194
315
Real-Time Messaging Protocol and its variants supported through
283
404
Accept packets only from negotiated peer address and port.
406
Act as a server, listening for an incoming connection.
286
409
When receiving data over UDP, the demuxer tries to reorder received packets
287
(since they may arrive out of order, or packets may get lost totally). In
288
order for this to be enabled, a maximum delay must be specified in the
289
@code{max_delay} field of AVFormatContext.
410
(since they may arrive out of order, or packets may get lost totally). This
411
can be disabled by setting the maximum demuxing delay to zero (via
412
the @code{max_delay} field of AVFormatContext).
291
When watching multi-bitrate Real-RTSP streams with @file{avplay}, the
414
When watching multi-bitrate Real-RTSP streams with @command{avplay}, the
292
415
streams to display can be chosen with @code{-vst} @var{n} and
293
416
@code{-ast} @var{n} for video and audio respectively, and can be switched
294
417
on the fly by pressing @code{v} and @code{a}.