3

I read about both in kurento's java doc webrtcendpoint and rtpendpoint. But both of them indicate that they function in a very similar way. Both can be used as offerer and offeree to exchange media.

I also refered to a similar question where a use of the two is shown. But not able to get a distinct difference.

What is the need to create both explicitly? What is the typical use case scenario for the two. A couple of examples for both would be greatly appreciated.

Community
  • 1
  • 1
Akshay Kasar
  • 156
  • 12

1 Answers1

2

WebRtcEndpoint is the implementation of the WebRTC specification. From this draft

The RTP framework comprises the RTP data transfer protocol, the RTP control protocol, and numerous RTP payload formats, profiles, and extensions. This range of add-ons has allowed RTP to meet various needs that were not envisaged by the original protocol designers, and to support many new media encodings, but raises the question of what extensions are to be supported by new implementations. The development of the WebRTC framework provides an opportunity to review the available RTP features and extensions, and to define a common baseline RTP feature set for all WebRTC Endpoints. This builds on the past 20 years of RTP development to mandate the use of extensions that have shown widespread utility, while still remaining compatible with the wide installed base of RTP implementations where possible.

RTP and RTCP extensions that are not discussed in this document can be implemented by WebRTC Endpoints if they are beneficial for new use cases. However, they are not necessary to address the WebRTC use cases and requirements identified in [RFC7478].

Basically, WebRTC is RTP with other things built on top of it. It focus on real-time communications for the browser. Using one or the other depends on whether you need to have a browser client or not, for one thing.

Community
  • 1
  • 1
igracia
  • 3,543
  • 1
  • 18
  • 23
  • So if I want to connect to a SIP server I can use anyone of the rtpendpoint or webrtcendpoint? – Akshay Kasar Jun 15 '16 at 06:37
  • @AkshayKasar Yes. Signaling is totally independent of which endpoint you use. – igracia Jun 15 '16 at 06:45
  • So if I want to connect to a SIP server, I can use anyone of the rtpendpoint or webrtcendpoint to send sip requests/sdp offers etc ??? Example if we take the case of the [question](http://stackoverflow.com/questions/37078714/need-clarification-on-kurentos-api-to-connect-webrtcendpoint-to-rtpendpoint) I have linked above. In that example to connect to asterisk(which behaves as sip server as per my understanding) an rtpendpoint has been used, while to connect to a browser(webrtc client) webrtcendpoint has been used. Is it **must** to use rtpendpoint to connect to a sip server? – Akshay Kasar Jun 15 '16 at 06:47
  • @AkshayKasar SIP is a signaling protocol. You can use whatever is supported by your SIP server. Actually, you can use SIP for signaling and kurento for media. In that example, the user wanted to connect to an already existing asterisk server through RTP, but latest versions of Asterisk seem to support WebRTC. – igracia Jun 15 '16 at 13:56
  • But then will a call flow like the one that followed possible? [sip-phone] ------> [asterisk] ---(webrtc/sip)----> [kurento] -----> [client/browser]. If yes can you guide please. – Akshay Kasar Jun 17 '16 at 11:51
  • @igracia How Can I get streaming url form recorded video and play it in any player like exo player in android? – shahram_javadi Nov 22 '20 at 11:15