MMN Tutorials 2006/2007

Specification for MMN Streaming Clients


08.01.07 Initial Draft

16.01.07 Audio Extension + Header Definition

18.01.07 Protocol update

19.01.07 Protocol update removed for now -- RaphaelWimmer - 18 Jan 2007


Applications must be able to send and receive arbitrary data via UDP.

Where do UDP packets go/come from? Port 7321

Maximum length of data per packet? 65507 bytes (maximum length of UDP data: 65507 bytes)

How/when ist data transferred?
  • For Text mode: bytewise, immediately
  • For Uncompressed Audio mode: to be determined
  • For Compressed Audio mode: to be determined

Only one (incoming or outgoing) session at a time!

What happens if a second session shall be established to an application? TCP connection is not accepted.

If a client does not want to accept an incoming session it closes the TCP connection instantly.

What happens when Ctrl-C is pressed? TCP connection is closed.

What happens if TCP connection is closed/lost? session is closed.

Which port numbers should be used by default? Port 7321 for TCP, UDP

No packets may be dropped by an application while a session is established.

Header for each UDP Package: first Byte
  • 0x00 for text package
  • 0x01 for uncompressed audio package
  • 0x02 for compressed audio package

second to fifth byte: 32 bit sequential number as unsigned long

Audio Extension

maximum buffered audio: 200 ms maximum audio per packet: 50 ms

Uncompressed Audio:

22.050 Hz Sampling Rate, Mono, 16 bit, analog to RIFF WAV format A sender should always put (one or more) whole audio frames into one UDP package.

-- RaphaelWimmer - 08 Jan 2007
Topic revision: r5 - 18 Jan 2007, RaphaelWimmer
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Medieninformatik-Wiki? Send feedback