Re: DTMF again

On Thu, Dec 1, 2011 at 8:20 AM, Stefan HÃ¥kansson LK <> wrote:

> So, a concrete proposal:
> we define the operation "insertDTMF" that is available on
> AudioMediaStreamTrack's (or should that be named AudioStreamTrack?):
> insertDTMF("1")  // plays tone 1 for 50 ms
> insertDTMF("2", 200)  // plays tone 2 for 200 ms
> insertDTMF("123")  // plays tones 1, 2, 3 in succession, each for 50 ms
> insertDTMF("456", 200)  // plays tones 4, 5, 6 in succession, each for 200
> ms
> (I prefer "insert" over "send" as nothing is sent unless the MediaStream
> that the AudioStreamTrack belongs to is added to a PeerConnection)

I think the name "sendDTMF" is slightly more intuitive, but I can see your
point too. If others prefer sendDTMF I'm fine with that.

> "insertDTMF" leads to the insertion of the actual tones in the audio, so
> if the MediaStream in question is attached to an audio element, those tones
> would be played out. This has the advantage that it is much simpler to
> locally give audio feedback to the user that dtmf is sent - when I use DTMF
> on my phone I hear the tones.

Not sure what you mean here. Do you mean if the local media stream was
hooked up to an <audio/>, the tones would be played out? If so, wouldn't
that mean that your own voice is being fed back to the audio output (which
I'm sure we don't want)?

I agree we want to allow the tones to optionally be played out locally, but
I think we need a different mechanism to control this (possibly a flag on
the stream or API call).

> "insertDTMF" also, if the MediaStream in question is attached to an open
> PeerConnection, leads to RTP packets according to RFC4733 being inserted in
> the RTP stream corresponding to this AudioStreamTrack.
> (if reception of DTMF is also supported by the browser, I guess that in
> addition to inserting the tones in the AudioStreamTrack, events informing
> the application should be dispatched)

Received on Friday, 9 December 2011 19:00:08 UTC