- From: Peter Thatcher <pthatcher@google.com>
- Date: Thu, 13 Feb 2014 11:23:56 -0800
- To: "public-orca@w3.org" <public-orca@w3.org>
- Message-ID: <CAJrXDUFEEaMbSA+hu3ahR1OhcsBqw+Sqgx=Kq3XtBF6afXV=9A@mail.gmail.com>
With the move to RtpSender/RtpReceiver, we have one thing we're missing
from RTP that can't be put in either of them: an event for unsignalled
ssrcs. We want such an event, but right now we don't have a clear place to
put it. I propose we add a class called RtpListener which, like
RtpReceiver, wraps a DtlsTransport, and fires events for RTP received.
Unlike RtpReceiver, which handles the RTP for a given set of ssrcs, the
RtpListener can listen to all RTP and fire an event if a packet is already
process by an existing RtpReceiver. Here's how I propose RtpListener
should look:
[Constructor(RTCDtlsTransport)]
interface RTCRtpListener {
readonly attribute RTCDtlsTransport transport;
// fires RTCRtpUnhandledRtpEvent;
attribute EventHandler? onunhandledrtp;
}
interface RTCRtpUnhandledRtpEvent : Event {
readonly attribute unsigned int ssrc;
readonly attribute unsigned byte payloadType;
// AKA "AppID" header extension
readonly attribute DOMString? receiverId;
}
That's it :). It's simple, but it grants a lot more flexibility to the
application to signal things (or not signal things) how it wants.
Received on Thursday, 13 February 2014 19:25:05 UTC