Gibson MaGIC

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
MaGIC
Manufacturer Info
Manufacturer Gibson Guitar Corporation
Development date 1999
Network Compatibility
Switchable No
Routable No
Ethernet data rates Fast Ethernet
Audio Specifications
Maximum sampling rate 192 kHz
Maximum bit depth 32 bits

Media-accelerated Global Information Carrier (MaGIC) is an Audio over Ethernet protocol developed by Gibson Guitar Corporation in partnership with 3COM. MaGIC allows bidirectional transmission of multichannel audio data, control data, and instrument power.

Revision 1.0 was introduced in 1999; the most current revision 3.0c was released in 2003.[1]

MaGIC is used in several guitar products such as Gibson Digital Guitar.

Capabilities

  • Uses Category 5 UTP cables up to 100 m long
  • Frame-compatible with Fast Ethernet
  • 32 channels, 192 kHz sampling rate
    • 32-bit integer audio
    • 32-bit floating point audio
    • 24-bit integer audio with 4-bit channel status and 4-bit channel command
    • 32-bit raw data
  • Supports line network topology, star topology, and a combination of the two

Network protocol

In terms of ISO OSI model, MaGIC can use physical and link layer (MAC/LLC) based on 100 Mbit Fast Ethernet signalling specified in IEEE 802.3/IEEE 802.3af and IEEE 802.2, however MaGIC implements proprietary network and application layers which can be used with different physical layers such as Gigabit Ethernet or optical media.

The frame consists of 1776 bytes. The network protocol encapsulates each frame application data (1506 bytes) into media payload (1024 bytes) and control payload (352 bytes) fields of the frame. The media payload is reserved for low-latency synchronous audio and video data, and control payload may encapsulate MaGIC control messages, MIDI data, and other protocols.

Media streams are transmitted synchronously without re-sampling or buffering, ensuring minimal latency; each stream has one source and one or more destinations. Control messages are generally broadcast to entire network - each device processes the destination address and forwards to all neighbors if necessary.

Application protocol

A MaGIC device consist of the following logical entities:

  • Unit - an access point that sends and receives control messages;
  • Components - access points for control applications such as power on/off switches, volume controls, control surfaces, or graphical user interfaces;
  • Ports - represent either physical connections or user applications which send media to the network;
  • Media Slot Routers - oute media data streams between through the network.

Individual control capabilities of the device are exposed through the MaGIC Control Protocol (MCP), which allow communication with Components in other devices (a maximum of 65535 per device).

The network elects a System Timing Master (STM) which is the source of synchronization on for all devices. Timecode formats includes MaGIC timecode and MIDI Time Code.

The control data in consist of 12-bit Control Message Code (CMC) 4-bit status field, 32-bit Source (Unit and Component, 16-bit each) and 32-bit Destination, and may contain up to 32 Kbytes of data in multiple frames.

The CMCs are defined into four classes:

  • Network Management Messages (0-127)
  • Well Known Application Protocols (128-511) - used for encapsulation of well-known high level protocols or for transporting messages with well-known format and structure (like MIDI).
  • User Control Messages (512-1023) - proprietary user messages
  • Reserved (1024-4095).

Control links are bi-directional communication pipes between several MaGIC devices, intended for control applications. For example, a control link allows the knob on one device to regulate the remotely located volume on another device through the MaGIC network. Control links allow remotele management from a computer with a sophisticated GUI which would act as a network supervisor that would manage other applications. Devices may also establish control links using proprietary mechanisms as long as they are compliant with this specification.

Network Management Messages

CMC Name Description
0x01 Operation Completion Status Used for error reporting
0x03 Change of STM Forces device resynchronization
0x05 Address Advertisement Used for device address auto-configuration. Tentative address broadcast
0x07 Address Conflict Reports an address conflict between two or more devices.
0x09 Neighbor Advertisement Reports device symbolic name to neighbor devices
0x11 Add/Remove Link Record Adds or removes a record to/from the control link table of a device component.
0x13 Establish/Drop Control Link Establishes or disconnects a control link between two remote components.
0x15 Read/Clear Link Table Reads or erases a control link table of a device component.
0x17 List of Linked Components Provides list of addresses for linked components.
0x19 Read Link Parameters Read parameters of a particular control link.
0x1B List of Link Parameters Provides information about a control link.
0x31 Set routing table Programs port routing table.
0x33 Read routing table Accesses port routing table data.
0x35 Routing table data Reports content of port routing table.
0x41 Mute Transmits a list of data slot enable/disable masks.
0x51 Read Attribute Requests an attribute value
0x53 Attribute Value Transmits the requested attribute value.

[2]

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.

See also

External links