Die Anwendung des AES-24 ID Entwurfs auf Audiogeräte

Vortrag zur Tonmeistertagung 1994

Beschreibung der Geräte-Spezifikation

Die Schönheit dieses Protokolls liegt in seiner Simplizität, die mit nur wenigen Vorgaben auskommt. Die Schlüsselideen werden wir durch die Anwendung auf den o.g. Entzerrer erarbeiten. Lassen Sie uns nun zuerst die zu steuernden Parameter festlegen. Bei dem zu entwerfenden Gerät handelt es sich um einen 2-kanaligen graphischen Terzband-Entzerrer.

  • 28 Terzband ISO-Bandpassfilter, die jeweils um +/- 10dB in 0,5 dB-Schritten justierbar sind
  • Ein zwischen 1kHz und 20kHz frei einstellbares Tiefpassfilter mit Ein/Aus-Schalter
  • Ein zwischen 10 Hz und 200 Hz frei einstellbares Hochpassfilter mit Ein-/Aus-Schalter
  • Eingangspegel zwischen +12 dB und -12 dB in 1 dB Schritten einstellbar
  • Ausgangspegel zwischen +12 dB und -12 dB in 1 dB Schritten einstellbar
  • Eingangspegel Spitzenwertmesser mit einer Integrationszeit von 1 bzw. 10 ms
  • Ausgangspegel Spitzenwertmesser mit einer Integrationszeit von 1 bzw. 10 ms
  • Bypass-Schalter zur direkten Leitung des Eingangssignales auf den Ausgang
  • 2 unabhängige Kanäle mit jeweils den o.g. Ausstattungsmerkmalen
  • 16 Preset-Speicher mit STORE und RECALL. Jedes Preset enthält den Zustand jeder Kontrolle, wie oben beschrieben.
  • Taster/Schalter zur Rückführung aller Bänder eines Kanales in die „O dB-Position“.
  • Copy-Funkion, um die Einstellungen eines Kanals auf den anderen zu übertragen.
  • „Remote Switch Interface“ (RSI), das mit einem externen vierpoligen Schalter verbunden ist, um Speicherinhalte abzurufen.
  • Auswahlvorrichtung zur Festlegung, ob der RSI mit einem 4-Bit Binärschalter (z.B. einem Drehschalter mit 16 Positionen) oder vier Tastern verbunden ist.

Das Gerät wird mit den folgenden Arten von Befehlssätzen ferngesteuert bzw. überwacht:

  • Audio Parameter Access: Diese Befehle fragen nach dem Status eines bestimmten Audioparameters bzw. bestimmen dessen Änderung. Die Audioparameter dieses Gerätes lauten: EQ-Bänder, Hoch- und Tiefpassfilter, Verstärkung, Anzeigen und „Bypass“.
  • Non-Audio Parameter Access: Diese Befehle fragen das Gerät nach dem Status der anderen Parameter bzw. deren Änderung. Die „Non-Audio“ Parameter dieses Gerätes sind die RSI-Schalter bzw. deren Schaltzustände.
  • Group Access: Diese Befehle fordern das Gerät dazu auf, den Status einer Gruppe von Parametern zu melden bzw. diese zu ändern. Im allgemeinen erfolgt die Festlegung von Gruppen willkürlich und umfasst sowohl Audio wie auch „Non-Audio“-Parameter. Das besprochene Gerät enthält folgende Parametergruppen: Die Anzeigen der Kanäle 1 und 2 (sie wurden zusammengefasst, damit sie von einem externen Kontrollfeld aus periodisch als Datenblock abgefragt werden können, um den Datenaustausch des Netzwerkes nicht zu behindern); Entzerrung Kanal 1 und Entzerrung Kanal 2 (zur Gruppe zusammengefasst, um eine komplette Entzerrung als einzigen Datenblock senden zu können); Memory Presets.
  • Utility Functions: Diese Befehle führen die anwendungsspezifischen Funktionen des Gerätes aus (0 dB Stellung aller Regler und Copy).
  • Device Manager: Diese Befehle unterstützen die verschiedenen „Manager“ des AES-24 Device-Modells.

In den nachfolgenden Abschitten werden die Ausstattungsmerkmale und Befehle den Objekten und Methoden des AES-24 ID Dokumentes zugeordnet. Leider bedingt die Kürze des Vortrages eine recht unvollständige Ausführung dieses Vorhabens. Wir hoffen jedoch, dem geneigten Leser einige Anhaltspunkte und Anregungen vermitteln zu können. An dieser Stelle machen wir noch einmal darauf aufmerksam, daß dieses Protokoll als Informationsdokument zu verstehen ist. Eine endgültige Version liegt leider noch nicht vor. Die AES SC-10-3 Arbeitsgruppe ist für Anregungen und Verbesserungsvorschläge jeder Art dankbar.

Das AES-24 Objektmodell

Dieser Abschnitt ordnet die Ausstattungsmerkmale, wie unter 2 beschrieben, dem jeweiligen Objektmodell der AES-24 zu. In diesem Modell wird jedes „Objekt“ des Equalizers durch seinen Namen, seine Klasse und die Objekt-ID (Identifikationsnummer) dargestellt. In unserem Beispiel wurden die Objekt IDs willkürlich gewählt und jedem Objekt zugeordnet:

Name Klasse Objekt ID
Chan 1, 31,5 Hz, EQ-Band KFO 1
Chan 1, 40 Hz, EQ-Band KFO 2
Chan 1, 50 Hz, EQ-Band KFO 3
Chan 1, 63 Hz, EQ-Band KFO 4
Chan 1, 80 Hz, EQ-Band KFO 5
Chan 1, 100 Hz, EQ-Band KFO 6
Chan 1, 125 Hz, EQ-Band KFO 7
Chan 1, 160 Hz, EQ-Band KFO 8
Chan 1, 200 Hz, EQ-Band KFO 9
Chan 1, 250 Hz, EQ-Band KFO 10
Chan 1, 315 Hz, EQ-Band KFO 11
Chan 1, 400 Hz, EQ-Band KFO 12
Chan 1, 500 Hz, EQ-Band KFO 13
Chan 1, 630 Hz, EQ-Band KFO 14
Chan 1, 800 Hz, EQ-Band KFO 15
Chan 1, 1 kHz, EQ-Band KFO 16
Chan 1, 1,25 kHz, EQ-Band KFO 17
Chan 1, 1,6 kHz, EQ-Band KFO 18
Chan 1, 2 kHz, EQ-Band KFO 19
Chan 1, 2,5 kHz, EQ-Band KFO 20
Chan 1, 3,15 kHz, EQ-Band KFO 21
Chan 1, 4 kHz, EQ-Band KFO 22
Chan 1, 5 kHz, EQ-Band KFO 23
Chan 1, 6,3 kHz, EQ-Band KFO 24
Chan 1, 8 kHz, EQ-Band KFO 25
Chan 1, 10 kHz, EQ-Band KFO 26
Chan 1, 12,5 kHz, EQ-Band KFO 27
Chan 1, 16 kHz, EQ-Band KFO 28
Chan 1, LPF KFO 29
Chan 1, HPF KFO 30
Chan 1, Input Level Gain 31
Chan 1, Output Level Gain 32
Chan 1, Input Meter Sensor 33
Chan 1, Output Meter Sensor 34
Chan 1, Bypass Schalter 35
Chan 1, Meter Cont. Container 36
Chan 1, Container Container 37
Chan 1, RSI frei wählbar 38
Group BDM 508
Device Manager 510
Name Klasse Objekt ID
Chan 2, 31,5 Hz, EQ-Band KFO 43
Chan 2, 40 Hz, EQ-Band KFO 44
Chan 2, 50 Hz, EQ-Band KFO 45
Chan 2, 63 Hz, EQ-Band KFO 46
Chan 2, 80 Hz, EQ-Band KFO 47
Chan 2, 100 Hz, EQ-Band KFO 48
Chan 2, 125 Hz, EQ-Band KFO 49
Chan 2, 160 Hz, EQ-Band KFO 50
Chan 2, 200 Hz, EQ-Band KFO 51
Chan 2, 250 Hz, EQ-Band KFO 52
Chan 2, 315 Hz, EQ-Band KFO 53
Chan 2, 400 Hz, EQ-Band KFO 54
Chan 2, 500 Hz, EQ-Band KFO 55
Chan 2, 630 Hz, EQ-Band KFO 56
Chan 2, 800 Hz, EQ-Band KFO 57
Chan 2, 1 kHz, EQ-Band KFO 58
Chan 2, 1,25 kHz, EQ-Band KFO 59
Chan 2, 1,6 kHz, EQ-Band KFO 60
Chan 2, 2 kHz, EQ-Band KFO 61
Chan 2, 2,5 kHz, EQ-Band KFO 62
Chan 2, 3,15 kHz, EQ-Band KFO 63
Chan 2, 4 kHz, EQ-Band KFO 64
Chan 2, 5 kHz, EQ-Band KFO 65
Chan 2, 6,3 kHz, EQ-Band KFO 66
Chan 2, 8 kHz, EQ-Band KFO 67
Chan 2, 10 kHz, EQ-Band KFO 68
Chan 2, 12,5 kHz, EQ-Band KFO 69
Chan 2, 16 kHz, EQ-Band KFO 70
Chan 2, LPF KFO 71
Chan 2, HPF KFO 72
Chan 2, Input Level Gain 73
Chan 2, Output Level Gain 74
Chan 2, Input Meter Sensor 75
Chan 2, Output Meter Sensor 76
Chan 2, Bypass Schalter 77
Chan 2, Meter Cont. Container 78
Chan 2, Container Container 79
Speicher Manager 507
Signalfluß Manager 509
Device Container 511

BCM = BroadCast Manager
RSI = Remote Switch Interface
LPF = Low Pass Filter
HPF = High Pass Filter
KFO = Klassisches Filter Objekt

Das Device-Modell

Das vorgeschlagene AES-24 Device-Modell wird in der folgenden Abbildung weitgehend graphisch veranschaulicht.

Das AES-24 Device-Modell
Das AES-24 Device-Modell

Auszug aus dem AES-24 ID Dokument:

Ein Device (Gerät) soll durch einen Container dargestellt werden, welcher die folgenden vier Hauptkomponenten enthält:

a) Einen Device Manager, der eine Anzahl von Object Creators enthält. Ein Object Creator erzeugt Objekte wie z.B. Verstärkung, Schalter, Filter, etc. Einmal erzeugt, erscheinen diese Objekte auch innerhalb des Devices.

b) Einen Signalfluß Manager, der bei Abfrage Informationen über die Verbindung von Objekten innerhalb eines Devices zurücksendet. Diesem Objekt kann auch die Möglichkeit gegeben werden, nach Anweisung neue Verbindungen zwischen softwaregestützten Objekten, also z. B. DSP-Algorithmen herzustellen.

c) Einen Group Broadcast Manager, der einem Container entspricht, der mit Group Broadcast Trancseivern ausgestattet ist. Jeder Group Broadcast Nummer ist genau ein Transceiver zugeordnet. In jedem Device soll mindestens ein Objekt einem Transceiver zugeordnet sein. Jeder Transceiver soll die Liste von Objekten enthalten, die Nachrichten empfangen, welche an ihre Group Broadcast Nummer gesandt wurden.

d) Keine oder mehrere Audio und „Non-Audio“ Objekte, die Verstärker, Schalter, Filter, etc. enthalten. „Non-Audio“ Objekte sollen Speicher, Zeitcode. etc. enthalten.

Graphische Darstellung des strukturellen Aufbaus der Objektklassen

Der strukturelle Aufbau der Objektklassen mit seiner streng hierarchischen Ordnung ist von erheblicher Bedeutung für das Verständnis des Steuerungskonzeptes. Leider ist auch hier eine ausführliche Behandlung nicht möglich. Daher sei noch einmal auf das jederzeit verfügbare Informationsdokument AES-24 ID verwiesen.

Die graphische Darstellung soll einen Einblick in den Aufbau vermitteln. Wichtig zu wissen ist, daß das Objekt von oben nach unten hierarchisch gegliedert ist und alle nachfolgenden Klassen alles von der vorhergehenden „erben“. Hinweis: Dieser Aufbau ist nur durch den Einsatz verteilter Intelligenz möglich, da das Objekt selbst nicht nur Informationen weitergeben, sondern auch Aktionen bei untergeordneten Klassen starten und anweisen kann.

Struktur der Objektklassen
Struktur der Objektklassen

Objekte und Befehle (Objects & Methods)

In den folgenden Sektionen werden die Befehlsnummern der Objekte tabellisiert. Den Befehls-IDs wurden willkürliche Nummern zugeordnet, um die Erstellung eines Prototypen zu ermöglichen. Da die ersten vier Befehls-ID-Nummern in einem 1-Byte ASN.1 Datenwort untergebracht werden können, wurden sie den gebräuchlichsten Befehlen zugeordnet, um die Bandbreite des Netzwerkes so wenig wie möglich einzuschränken (diese Befehlsnummern wurden schraffiert dargestellt).

Hinweis: Die Ordnung der nachfolgenden Tabellen ist hierarchisch von oben nach unten gegliedert.

Konventionelles Filter Objekt (Objekt IDs: 1 – 30, 43 – 72)

Die Anweisungen (Befehle), die von der Eltern-Klasse (Actuator) „geerbt“ werden, lauten:

Befehl Befehls-ID Notizen
GetClasslD 32 Request
SetClasslD 31 Antwort
GetPanelName 30 z. B. Schalter
GetRole 29 Funktion in einem System
SetRole 28 Funktion in einem System
GetLock 27 Kann ich dich kontrollieren?
SetLock 26 Ja/Nein

Ein KFO (Konventionelles Filter Objekt) kennt 16 weitere Befehle:

Befehl Befehls-ID Notizen
GetType 16 Die Befehlssequenzen können sowohl an konventionelle, analoge wie auch an digitale Filter gesandt werden.
SetType 15
GetOrder 14
SetOrder 13
GetShape 12
SetShape 11
GetShapeParam 10
SetShapeParam 9
GetQ 8
SetQ 3
GetDesignFreq 7
SetDesignFreq 2
GetRefGain 6
SetRefGain 5
GetRelGain 4
SetRelGain 1

Gain (Objekt IDs: 31, 32, 73, 74)

Befehl Befehls-ID Notizen
GetClasslD 32 Request
SetClasslD 31 Antwort
GetPanelName 30 z. B. Eingangspegel
Get Role 29 Funktion in einem System
SetRole 28 Funktion in einem System
GetLock 27 Kann ich dich kontrollieren?
SetLock 26 Ja/Nein

Gain kennt 6 weitere Befehle:

Befehl Befehls-ID Notizen
GetRefGain 4
SetRefGain 3
GetRelGain 2
SetRelGain 1
GetResolution 5
SetResolution 6

Pegelanzeige (Objekt IDs: 33, 34, 75, 76)

Befehl Befehls-ID Notizen
GetClasslD 32 Request
SetClasslD 31 Antwort
GetPanelName 30 z. B. Eingangspegelanzeige
Get Role 29 Funktion in einem System
SetRole 28 Funktion in einem System
GetLock 27 Kann ich dich kontrollieren?
SetLock 26 Ja/Nein

Pegelanzeige kennt 19 weitere Befehle:

Befehl Befehls-ID Notizen
GetType 5 Was bist Du?
SetType 6 Du wirst zu…
GetDetValue 1 Nenne Deinen Wert!
GetDetMethod 7 Wie lautet Dein Befehlssatz?
SetDetMethod 8 Dein neuer Befehlssatz lautet…
GetDetParam 9
SetDetParam 10
GetUpThresh 11
SetUpThresh 3
GetLowThresh 12
SetLowTresh 4
GetRiseHyst 13
SetRiseHyst 14
GetFallHyst 15
SetFallHyst 16
GetReportRate 17 Messungen/Nachrichten pro Sekunde
SetReportRate 2 Messungen/Nachrichten pro Sekunde
GetRptMsgCnt 18 Get Report Message Count
SetRptMsgCnt 19 Set Report Message Count

Schalter, Meter Container, RSIs, Memory Manager, Group Broadcast Manager, Signalfluß Manager und Device Manager

Die Tabellen für o. g. Befehlssätze sind entsprechend den bereits gelisteten strukturiert. Da es sich bei diesem Ansatz um willkürlich festgelegte Befehls-IDs handelt, ersparen wir uns, den noch verbleibenden Rest hier aufzulisten.

Unterlagen