| OLD | NEW | 
|---|
| 1 @chapter Protocols | 1 @chapter Protocols | 
| 2 @c man begin PROTOCOLS | 2 @c man begin PROTOCOLS | 
| 3 | 3 | 
| 4 Protocols are configured elements in FFmpeg which allow to access | 4 Protocols are configured elements in FFmpeg which allow to access | 
| 5 resources which require the use of a particular protocol. | 5 resources which require the use of a particular protocol. | 
| 6 | 6 | 
| 7 When you configure your FFmpeg build, all the supported protocols are | 7 When you configure your FFmpeg build, all the supported protocols are | 
| 8 enabled by default. You can list all available ones using the | 8 enabled by default. You can list all available ones using the | 
| 9 configure option "--list-protocols". | 9 configure option "--list-protocols". | 
| 10 | 10 | 
| (...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 283 | 283 | 
| 284 To send a stream in realtime to a RTSP server, for others to watch: | 284 To send a stream in realtime to a RTSP server, for others to watch: | 
| 285 | 285 | 
| 286 @example | 286 @example | 
| 287 ffmpeg -re -i @var{input} -f rtsp -muxdelay 0.1 rtsp://server/live.sdp | 287 ffmpeg -re -i @var{input} -f rtsp -muxdelay 0.1 rtsp://server/live.sdp | 
| 288 @end example | 288 @end example | 
| 289 | 289 | 
| 290 @section sap | 290 @section sap | 
| 291 | 291 | 
| 292 Session Announcement Protocol (RFC 2974). This is not technically a | 292 Session Announcement Protocol (RFC 2974). This is not technically a | 
| 293 protocol handler in libavformat, it is a muxer. | 293 protocol handler in libavformat, it is a muxer and demuxer. | 
| 294 It is used for signalling of RTP streams, by announcing the SDP for the | 294 It is used for signalling of RTP streams, by announcing the SDP for the | 
| 295 streams regularly on a separate port. | 295 streams regularly on a separate port. | 
| 296 | 296 | 
|  | 297 @subsection Muxer | 
|  | 298 | 
| 297 The syntax for a SAP url given to the muxer is: | 299 The syntax for a SAP url given to the muxer is: | 
| 298 @example | 300 @example | 
| 299 sap://@var{destination}[:@var{port}][?@var{options}] | 301 sap://@var{destination}[:@var{port}][?@var{options}] | 
| 300 @end example | 302 @end example | 
| 301 | 303 | 
| 302 The RTP packets are sent to @var{destination} on port @var{port}, | 304 The RTP packets are sent to @var{destination} on port @var{port}, | 
| 303 or to port 5004 if no port is specified. | 305 or to port 5004 if no port is specified. | 
| 304 @var{options} is a @code{&}-separated list. The following options | 306 @var{options} is a @code{&}-separated list. The following options | 
| 305 are supported: | 307 are supported: | 
| 306 | 308 | 
| (...skipping 11 matching lines...) Expand all  Loading... | 
| 318 | 320 | 
| 319 @item ttl=@var{ttl} | 321 @item ttl=@var{ttl} | 
| 320 Specify the time to live value for the announcements and RTP packets, | 322 Specify the time to live value for the announcements and RTP packets, | 
| 321 defaults to 255. | 323 defaults to 255. | 
| 322 | 324 | 
| 323 @item same_port=@var{0|1} | 325 @item same_port=@var{0|1} | 
| 324 If set to 1, send all RTP streams on the same port pair. If zero (the | 326 If set to 1, send all RTP streams on the same port pair. If zero (the | 
| 325 default), all streams are sent on unique ports, with each stream on a | 327 default), all streams are sent on unique ports, with each stream on a | 
| 326 port 2 numbers higher than the previous. | 328 port 2 numbers higher than the previous. | 
| 327 VLC/Live555 requires this to be set to 1, to be able to receive the stream. | 329 VLC/Live555 requires this to be set to 1, to be able to receive the stream. | 
|  | 330 The RTP stack in libavformat for receiving requires all streams to be sent | 
|  | 331 on unique ports. | 
| 328 @end table | 332 @end table | 
| 329 | 333 | 
| 330 Example command lines follow. | 334 Example command lines follow. | 
| 331 | 335 | 
| 332 To broadcast a stream on the local subnet, for watching in VLC: | 336 To broadcast a stream on the local subnet, for watching in VLC: | 
| 333 | 337 | 
| 334 @example | 338 @example | 
| 335 ffmpeg -re -i @var{input} -f sap sap://224.0.0.255?same_port=1 | 339 ffmpeg -re -i @var{input} -f sap sap://224.0.0.255?same_port=1 | 
| 336 @end example | 340 @end example | 
| 337 | 341 | 
|  | 342 Similarly, for watching in ffplay: | 
|  | 343 | 
|  | 344 @example | 
|  | 345 ffmpeg -re -i @var{input} -f sap sap://224.0.0.255 | 
|  | 346 @end example | 
|  | 347 | 
|  | 348 And for watching in ffplay, over IPv6: | 
|  | 349 | 
|  | 350 @example | 
|  | 351 ffmpeg -re -i @var{input} -f sap sap://[ff0e::1:2:3:4] | 
|  | 352 @end example | 
|  | 353 | 
|  | 354 @subsection Demuxer | 
|  | 355 | 
|  | 356 The syntax for a SAP url given to the demuxer is: | 
|  | 357 @example | 
|  | 358 sap://[@var{address}][:@var{port}] | 
|  | 359 @end example | 
|  | 360 | 
|  | 361 @var{address} is the multicast address to listen for announcements on, | 
|  | 362 if omitted, the default 224.2.127.254 (sap.mcast.net) is used. @var{port} | 
|  | 363 is the port that is listened on, 9875 if omitted. | 
|  | 364 | 
|  | 365 The demuxers listens for announcements on the given address and port. | 
|  | 366 Once an announcement is received, it tries to receive that particular stream. | 
|  | 367 | 
|  | 368 Example command lines follow. | 
|  | 369 | 
|  | 370 To play back the first stream announced on the normal SAP multicast address: | 
|  | 371 | 
|  | 372 @example | 
|  | 373 ffplay sap:// | 
|  | 374 @end example | 
|  | 375 | 
|  | 376 To play back the first stream announced on one the default IPv6 SAP multicast ad
     dress: | 
|  | 377 | 
|  | 378 @example | 
|  | 379 ffplay sap://[ff0e::2:7ffe] | 
|  | 380 @end example | 
|  | 381 | 
| 338 @section tcp | 382 @section tcp | 
| 339 | 383 | 
| 340 Trasmission Control Protocol. | 384 Trasmission Control Protocol. | 
| 341 | 385 | 
| 342 @section udp | 386 @section udp | 
| 343 | 387 | 
| 344 User Datagram Protocol. | 388 User Datagram Protocol. | 
| 345 | 389 | 
| 346 The required syntax for a UDP url is: | 390 The required syntax for a UDP url is: | 
| 347 @example | 391 @example | 
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 387 @example | 431 @example | 
| 388 ffmpeg -i @var{input} -f mpegts udp://@var{hostname}:@var{port}?pkt_size=188&buf
     fer_size=65535 | 432 ffmpeg -i @var{input} -f mpegts udp://@var{hostname}:@var{port}?pkt_size=188&buf
     fer_size=65535 | 
| 389 @end example | 433 @end example | 
| 390 | 434 | 
| 391 To receive over UDP from a remote endpoint: | 435 To receive over UDP from a remote endpoint: | 
| 392 @example | 436 @example | 
| 393 ffmpeg -i udp://[@var{multicast-address}]:@var{port} | 437 ffmpeg -i udp://[@var{multicast-address}]:@var{port} | 
| 394 @end example | 438 @end example | 
| 395 | 439 | 
| 396 @c man end PROTOCOLS | 440 @c man end PROTOCOLS | 
| OLD | NEW | 
|---|