Consuming RTSP video in a pod using TCP works as expected.
ffmpeg -hide_banner -rtsp_transport tcp -i rtsp://10.10.10.44:554/media output.mp4
However, when trying to consume via udp,
I can see that the initial TCP signalling connection to port 554 works.
ffmpeg -hide_banner -loglevel trace -rtsp_transport udp -i rtsp://10.10.10.44:554/media output.mp4
The expected RTSP dialogue happens without error and then ffmpeg hangs waiting for video.
The same ffmpeg with udp command works without issue from the same host as the k8s cluster. So, k8s must be blocking the UDP traffic inbound to the cluster.
I have tried using a nodePort service however it does not seem to scale well when scaling up pods.
Why is k8s blocking UDP traffic and not TCP ? Is there any way to allow all the UDP traffic into the cluster to reach the pods? Any other suggestions to explore ?
Thanks