-
-
Notifications
You must be signed in to change notification settings - Fork 792
Description
Hello, I just found an old draft for an Audio/Video support request I was planning to submit here. @jcbrand is this something you'd like to have in converse.js? I did a quick research on possible implementations. Pasting the contents below
A quick search for FOSS a/v web chat solutions returned https://www.jsxc.org/ (XMPP + voice/video) and https://github.com/Rantanen/mumble-web (mumble). I didn't find the sources for Firefox Hello (client and server), which works.
The go-to solution for audio/video over XMPP seems to be jingle. Much related to #161
Relevant links I found:
XEP-0166: Jingle - This specification defines an XMPP protocol extension for initiating and managing peer-to-peer media sessions between two XMPP entities in a way that is interoperable with existing Internet standards. The protocol provides a pluggable model that enables the core session management semantics (compatible with SIP) to be used for a wide variety of application types (e.g., voice chat, video chat, file transfer) and with a wide variety of transport methods (e.g., TCP, UDP, ICE, application-specific transports).
XEP-0266: Codecs for Jingle Audio - This document describes implementation considerations related to audio codecs for use in Jingle RTP sessions.
XMPP Technologies: Jingle – The XMPP Standards Foundation
XEP-0167: Jingle RTP Sessions - This specification defines a Jingle application type for negotiating one or more sessions that use the Real-time Transport Protocol (RTP) to exchange media such as voice or video. The application type includes a straightforward mapping to Session Description Protocol (SDP) for interworking with SIP media endpoints.
Combining SIP and XMPP | OnSIP -> sixpac Discussion Archive - Date Index
OTR does not seem to be able to encrypt audio/video streams, but there's ZRTP: XEP-0262: Use of ZRTP in Jingle RTP Sessions. Also:
[cryptography] Jingle and Otr - If you know the face of the person you are talking to, you can surely tell if the right person is speaking the right SAS, which makes the methods used by OTR overkill for video.