Skip to content
Snippets Groups Projects
Commit 9cf3b811 authored by Simon Latapie's avatar Simon Latapie Committed by Simon Latapie
Browse files

advanced: stream over udp: add some tips about IPv6 (unicast and multicast)

parent 3720727c
Branches desktop_support
No related tags found
No related merge requests found
Pipeline #428438 passed with stage
in 36 seconds
......@@ -105,7 +105,7 @@ In unicast streaming over UDP, a simplified representation of the network would
"Streaming Device \n IP: 192.168.0.101" -> "Receiving Device \n IP: 192.168.0.102" [label="The server \"pushes\" the stream to\nthe client's IP at the specified port."]
"Streaming Device \n IP: 192.168.0.101":w -> "$ vlc sample.mp4 --sout=\"#std{access=udp,\nmux=ts, dst=192.168.0.102:8090}\"":w [style=invis]
"Streaming Device \n IP: 192.168.0.101" -> "$ vlc sample.mp4 --sout=\"#std{access=udp,\nmux=ts, dst=192.168.0.102:8090}\"":w [style=invis]
"Receiving Device \n IP: 192.168.0.102" -> "$ vlc udp://@:8090" [style=invis]
"Idle Device \n IP: 192.168.0.103" -> "Receiving Device \n IP: 192.168.0.102" [style=invis]
......@@ -233,4 +233,54 @@ is equivalent to:
.. code-block ::
$ vlc sample.mp4 --sout="#udp{mux=ts, dst=192.168.0.102:8090}"
\ No newline at end of file
$ vlc sample.mp4 --sout="#udp{mux=ts, dst=192.168.0.102:8090}"
****************************
Streaming in IPv6
****************************
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Streaming and Receiving in IPv6 in unicast and multicast
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
The syntax to stream and receive unicast or multicast UDP streams with VLC is almost the same as the IPv4 syntax. The only difference is that you have to wrap the IPv6 address with brackets.
Examples:
.. code-block ::
$ vlc sample.mp4 --sout="#udp{mux=ts, dst=[2a01:cb04:482:5242::42]:8090}"
Will send a UDP MPEG-TS stream to the device with the IPv6 ``2a01:cb04:482:5242::42`` on the port 8090.
.. code-block ::
$ vlc udp://@[ff13::42]:1234
Will join the ``FF13::42`` multicast group in IPv6 and capture any packet sent on the port 1234.
++++++++++++++++++++++++++++++++++++++++++++++++++++++
On IPv6 Multicast ranges and selection for streaming
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Multicast address is defined in IPv6 in the range ``FF00::/8``.
The full format description follows the scheme:
+--------+----+----+-----------------------------------------+
| 8 | 4 | 4 | 112 bits |
+--------+----+----+-----------------------------------------+
|11111111|flgs|scop| group ID |
+--------+----+----+-----------------------------------------+
- :dfn:`flgs` : defines special flags related to the multicast group. For streaming purpose, you should use the single 1 value (temporary multicast address). See `the related RFC4291 section <https://datatracker.ietf.org/doc/html/rfc4291#section-2.7>`_ for more details about multicast flags.
- :dfn:`scop` : defines the "scope" of the multicast group, which describes up to where the group should be spanned. Notable scopes that can be used for local streaming are:
- ``1`` for interface-local (restricted to the machine, for purely "localhost" streaming)
- ``2`` for link-local (related to the link-local addresses, so restricted to the closest peers)
- ``3,4,5,8`` for respectively ``realm-local``, ``admin-local``, ``site-local`` and ``organization-local`` which are different levels of span. For a complete list of scopes, see `The related RFC7346 section <https://datatracker.ietf.org/doc/html/rfc7346#section-2>`_.
.. note:: For a simple UDP multimedia stream over multicast IPv6 that will be spanned on a LAN, **good candidates** are the ranges ``FF13::/16``, ``FF14::/16``, ``FF15::/16`` or ``FF18::/16``.
For more information on multicast IPv6 address format, read `This section of RFC4291 <https://datatracker.ietf.org/doc/html/rfc4291#section-2.7>`_.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment