[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[AVT] Re: draft-ietf-avt-rtp-midi-08.txt: Issues with multiplexing different MIDI spaces



Hi John,

I agree with the below interpretation regarding what PT is intended to be used. However I would suggest that one requires the use of different SSRCs for different midi spaces but have the PT to indicate which space it uses. This should resolve all your concerns below regarding packet losses as each SSRC has its own RTP sequence number space.

This I think is to correct trade off for using RTP functions. One uses different RTP sessions when the intended usage of the MIDI is different. For example separating light control and instruments. Which to me if I interpret your language right would be different classes of renderers.

The SSRC is used to indicate different sources/receivers being connected to the virtual "midi cable". Which midi cable it is, is indicated through the Payload type together with all the other parameters around this cable.

The alternative I see is to move the also the "cable" specification to RTP session level as you suggest. However I don't see a real gain in this. It cost RTP sessions, which people often complain are expensive in ports etc, it doesn't really have that much clearer multiplexing. The existing midi spaces are clearly signaled upfront through the RTP payload types that may occur in the RTP session. Thus a participants now what renders etc that are needed.

Others input on this would be appreciated.

Cheers

Magnus

lazzaro wrote:
On May 23, 2005, at 7:53 AM, Magnus Westerlund wrote:

I reread section C.4. I don't find the section particular clear. Especially I reacted to this first normative statement:

"If any payload types on an RTP MIDI media line define a musicport
parameter, all payload types on the media line MUST define a musicport
parameter that is assigned the same value."

This requires that different midi spaces use separate RTP session. Was that really intended?


One addendum to my earlier posting (which as you
recall, answered this question "yes" -- this answer
is unchanged, below provides addition info on it ...).

---

 From RFC 3550:

Synchronization source (SSRC):

[... start of definition deleted ...]

All packets from a synchronization source form part of the same
timing and sequence number space, so a receiver groups packets by
synchronization source for playback.

[...]

A synchronization source may change its data format,
e.g., audio encoding, over time.

---


I don't think switching between PTs that specify different MIDI name spaces during a session is in the spirit of the final line of text from the definition above.

Two MIDI name spaces are not different "audio encodings" of the
same  "microphone".  Instead, channels 0-15 might be the output of
a MIDI keyboard controller player by musician A, channels
16-31 might be the output of a MIDI drum pad played by
musician B, were A and B are two players in a network musical
performance who happen to both be located in the same physical
place sharing the same computer for session management.

Using PT values to switch back and forth between musician A
and musician B isn't "changing the audio encoding" of a single source --
it's using PTs to multiplex two sources into one RTP session.

In addition, the recovery journal was not designed to support
this mode of operation -- any sequence number break triggers
recovery journal actions to mend the command stream, but
using PTs in this way creates lots of innocuous sequence
breaks.

The sensible way to use PTs here is to select different
"audio encodings" of the same MIDI performance.  For example,
different renderers mapped to different PTs (although there is an
alternative way to choose different renderers within a single PT,
using the RTP MIDI multimode parameter, which is more flexible;
most apps will use that instead of PTs).

---
John Lazzaro
http://www.cs.berkeley.edu/~lazzaro
lazzaro [at] cs [dot] berkeley [dot] edu
---





--

Magnus Westerlund

Multimedia Technologies, Ericsson Research EAB/TVA/A
----------------------------------------------------------------------
Ericsson AB                | Phone +46 8 4048287
Torshamsgatan 23           | Fax   +46 8 7575550
S-164 80 Stockholm, Sweden | mailto: magnus.westerlund at ericsson.com

_______________________________________________
Audio/Video Transport Working Group
avt at ietf.org
https://www1.ietf.org/mailman/listinfo/avt