Existing Formats

a survey of existing formats for storage and streaming of Ambisonics soundfields

Channel Formats:

  • B-Format

    ambisonic domain

  • UHJ-Format

    consumer format; stereo compatible

  • G-Format

    predecoding to speakers

File Formats

general purpose multichannel formats

  • WAV

    pros:

    • simple: existing applications can read/write multichannel files without modifications

    cons:

    • channels do not fall "into place": is it Ambisonics? which channel means what? normalization?
    • file-size limitation: 4GB
  • Wave Format Extensible
    • Microsoft scheme for extending WAV
    • channels-to-speaker concept! (18 speaker-positions predefined; optional)
    • nChannels-field has 16bit, but dwChannelMask has only 32bit:
            Having nChannels exceed the number of bits set in dwChannelMask can produce inconsistent results and should be avoided if possible.
      
  • Broadcast WAV (1997,2001)

    based on WAV-Extensible

    pros:

    • accepted format in production

    cons:

  • link junks (embedded XML):
           <LINK>
            <FILE type="other">
             <FILENUMBER>1</FILENUMBER>
             <FILENAME>Caruso_1.wav</FILENAME>
            </FILE>
            <FILE type="actual">
             <FILENUMBER>2</FILENUMBER>
             <FILENAME>Caruso_2.wav</FILENAME>
            </FILE>
            <FILE type="other">
             <FILENUMBER>3</FILENUMBER>
             <FILENAME>Caruso_3.wav</FILENAME>
            </FILE>
            <ID>73365869</ID>
           </LINK>
    

 

  • RF64

    based on BWF

    pros:

    • no 2GB limit
    • extension of Broadcast-WAV
    • on-the-fly-conversion path from BWF to RF64 (via junk chunks)

    cons

    • maximum number of channels: 18
  • SDIF
    • consists of sequence of frames
    • not strictly IFF (AIFF, RIFF) compatible

    pros

    • well known in computermusic community (CNMAT, IRCAM)
    • designed with performance in mind: e.g. 64bit alignment
    • datatypes: float32, int32, float64, int64,...
    • open standard
    • >4GB

    cons

    • (rel.) unknown outside computermusic community
  • Matroska

    pros

    • generic format
      • no filesize limitation (72000 terabytes)
      • no channel limitation (?)

    cons

    • not very widespread
      • not even libsnd supports it...

 

specialized formats

  • .amb (file format for B-format)

    pros:

    • based on WAV-Extensible
    • it is clear which channel in the file corresponds to which Ambisonics channel
    • no "channel-speaker" concept (true ambisonic channels)
    • 2d and 3d
    • rigid definitions
      • channel order
      • channel weights

    cons:

    • rigid definitions!
      • limited to 3rd order ambisonics (2d/3d)!
      • limited to 16 channels
    • 4GB soundfile limit (at least not explicitely solved in the specs)

Streaming Formats

  • no dedicated Ambisonics streaming format available yet
  • need for multichannel codecs
    • no way to maintain sample-sychronicity in separate streams

codecs:

  • Ogg Vorbis
    • up to 255 channels
    • lossy
  • AAC
    • up to 48 channels
    • proprietary
  • WavPack
    • up to 16 channels
    • lossy/lossless
  • FLAC
    • up to 8 channels
    • lossless
  • Real Audio
    • up to 6 channels
    • lossy/lossless
  • WMA
    • up to 8 (WMA professional) or 6 (WMA lossless) channels
    • lossy/lossless

containers:

  • M4A/MP4
  • Ogg
    • metadata: in codec
  • RealMedia / RealMedia Variable Bitrate
    • (metadata: .ram)
  • WMA
  • Quicktime
  • Matroska

dynamic control:

nature of ambisonics allows to reduce the number of transmission channels while maintaining core information

  1. g. in case of network shortages, it might be desireable to reduce the Ambisonics order rather than accept dropouts.

RTP/RTCP RFV3550

  • few servers implement RTCP (RealServer, HelixServer)