Skip to content

Latest commit

 

History

History
32 lines (24 loc) · 1.44 KB

README.md

File metadata and controls

32 lines (24 loc) · 1.44 KB

CI Help making this possible Become a patron

This is a simple educational example of a multicast client and server, running under UNIX and Win32.

Building

To compile, use

mkdir build
cd build
cmake ..
cmake --build .

Crosscompiling from Unix to Android

See https://developer.android.com/ndk/guides/cmake.html as a reference, but basically it boils down to adding -DANDROID_NDK=<path> -DCMAKE_TOOLCHAIN_FILE=<path> -DANDROID_NATIVE_API_LEVEL=<API level you want> to the cmake .. step above.

Troubleshooting

If there is no data coming through when client and server are on different machines, the reason can be that IP routing is configured in a way that routes multicast traffic to or expects multicast traffic from an interface the other machine is not connected to (the sample programs in this repo do not use the IP_MULTICAST_IF setsockopt() call yet as it's not cross-platform). In this case, you have to add a static route to the client and/or server machine's routing table indicating the interface for multicast traffic. The internet has lots of examples.