I have added video calling functionality to my android app using sinch, I was wondering, what kind of technology-infrastructure is needed to do such a thing without using any 3rd party services? Assuming I have a server with a public IP which I can install any server software on, to provide signalling etc., whatever is required.
I have read up on webrtc, which sinch uses too. From what I vaguely understand, I need a signaling server, plus a TURN server, maybe plus a STUN server, plus client code which can talk to that servers. I guess these are the things provided by sinch out of the box.
If there are viable (easier) alternatives to webrtc for this job, or I will be happy to learn about them too. A better approach to the problem than mine is welcome too.