Issue_181 and Issue_179
Compare changes
Files
2+ 5
− 13
@@ -312,23 +312,15 @@ int udpsocket_open_bind(const char *host, uint16_t port, const char *mciface)
When running the ristsender with different multicast addresses but the same destination port. The sockets opened for multicast bind to "0.0.0.0" which causes both sockets to receive all data being sent to the destination port.
Here is an example before the change where both urls bind to a socket that is using 0.0.0.0
strace -fD --trace=bind ./ristsender -i "udp://@224.0.0.1:6655?miface=eth0&stream-id=2&multiplex-mode=1,udp://@224.0.0.2:6655?miface=eth0&stream-id=4&multiplex-mode=1" -o rist://127.0.0.1:5566 -p 1 -v 0
# Output
1723840168.822456|0.0|[INFO] Starting ristsender version: v0.2.10 libRIST library: v0.2.10 API version: 4.4.0
1723840168.823438|0.0|[INFO] Starting in Main Profile Mode
bind(3, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 0
bind(4, {sa_family=AF_INET, sin_port=htons(6655), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
1723840168.830357|0.0|[INFO] Joining multicast address: 224.0.0.1 with eth0
1723840168.830750|0.0|[INFO] Starting in Main Profile Mode
bind(5, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 0
bind(6, {sa_family=AF_INET, sin_port=htons(6655), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
1723840168.836042|0.0|[INFO] Joining multicast address: 224.0.0.2 with eth0
Here is the same info after the change showing the socket is binding to the right address:
strace -fD --trace=bind ./ristsender -i "udp://@224.0.0.1:6655?miface=eth0&stream-id=2&multiplex-mode=1,udp://@224.0.0.2:6655?miface=eth0&stream-id=4&multiplex-mode=1" -o rist://127.0.0.1:5566 -p 1 -v 0
1723843631.939420|0.0|[INFO] Starting ristsender version: 9dbfe6e libRIST library: 9dbfe6e API version: 4.4.0
1723843631.939750|0.0|[INFO] Starting in Main Profile Mode
bind(3, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 0
bind(4, {sa_family=AF_INET, sin_port=htons(6655), sin_addr=inet_addr("224.0.0.1")}, 16) = 0
1723843631.945398|0.0|[INFO] Joining multicast address: 224.0.0.1 with eth0
1723843631.946046|0.0|[INFO] Starting in Main Profile Mode
bind(5, {sa_family=AF_NETLINK, nl_pid=0, nl_groups=00000000}, 12) = 0
bind(6, {sa_family=AF_INET, sin_port=htons(6655), sin_addr=inet_addr("224.0.0.2")}, 16) = 0
1723843631.951560|0.0|[INFO] Joining multicast address: 224.0.0.2 with eth0
verbose-level
is defined as RIST_URL_PARAM_VERBOSE_LEVEL
but isn't used anywhere. When used by the ristsender/ristreceiver it will log this error. Unknown or invalid parameter verbose-level
multiplex-mode
is suggested as a rist:// URL option in the help message but the usage of RIST_URL_PARAM_MULTIPLEX_MODE
in rist-common.c indicates it is actually an udp:// URL option.Closes #179 (closed)
Closes #181 (closed)
VideoLAN code repository instance