2.2gif (graphics interchange format) 2.2.1charakteristik gif ist ein rastergrafik-format, das eine...
TRANSCRIPT
2.2 GIF (Graphics Interchange Format)2.2.1 Charakteristik• GIF ist ein Rastergrafik-Format, das eine Farbtiefe von bis zu 8 Bit
haben kann (also max. 256 Farben). • Das GIF-Format liegt in zwei Spezifikationen vor:
– GIF-87a ist die 1987 entwickelte Standardversion. – GIF-89a erlaubt zusätzlich zu GIF-87a Transparenz.
• Auch GIF-Dateien werden mit dem LZW-Verfahren komprimiert. • GIF-Dateien können im Interlacing-Verfahren gespeichert werden. • GIF ist potentiell ein „Auslaufformat“:
Das GIF-Format wurde von der Firma Compuserve entwickelt und frei zugänglich gemacht, das LZW-Verfahren wurde allerdings von Unisys patentiert.
BILD II (Fortsetzung)
2.2.2 Interlacing-Verfahren• die Formate GIF, JPEG und PNG kennen das Interlacing-Verfahren als
Alternative zum konventionellen zeilenweisen Aufbau der Grafik (non-interlaced) durch einen Browser.
• Das Bild wird dabei unmittelbar in voller Größe, allerdings nur zunächst schemenhaft, in geringer Auflösung, aufgebaut. Fortlaufend werden immer mehr Daten nachgeladen (interlace = „einflechten“), wodurch die Grafik sich sukzessive der Originalqualität nähert.
• Technik: In mehreren Schritten werden die Zeilen einer Grafik übermittelt (zunächst jede achte, …); die fehlenden Zeile werden jeweils kopiert. höherer Speicherbedarf
2.2.3 Transparente GIFs• Mit GIF können Daten auch transparent übermittelt werden; D.h.:
Bestimmte Farben der Grafik können ausgespart werden.• Technik: diverse Anwendungsprogramme (z.B. Photoshop) erlauben
die Selektion von Farbwerten aus der GIF-Farbtabelle der Grafik; diese werden dann nicht angezeigt.
2.3 PNG (Portable Network Graphics)
2.3.1 Charakteristik• PNG wurde als Antwort auf das proprietäre GIF entwickelt• PNG ist ein Rastergrafik-Format, das eine Farbtiefe von 48 Bit bei
RGB-Bildern und 16 Bit bei Graustufenbildern haben kann. • PNG-Dateien lassen sich ebenfalls interlaced (Adam 7, nach Adam
M. Costello) speichern: Das Verfahren teilt die Daten in 8x8 Pixel große Blöcke; in 7 Durchläufen werden daraus nach einem Schema bestimmte Bildpunkte übertragen; Grundprinzip: Abwechselnde Verdopplung der horizontalen und vertikalen Auflösung.
• PNG unterstützt u.a. Huffman-Kodierung.
2.3.2 Aufbau einer PNG-File• Eine PNG-Datei hat einen blockweisen Aufbau, der aus sogenannten
chunks (Blöcke) besteht. • Jeder chunk enthält Informationen über einen bestimmten Aspekt der
Grafik, also z.B. Farbpalette, zusätzliche textuelle Informationen, Zeitangaben,…
PNG Signatur
IHDR chunk
PLTE chunk
Optionaler chunk
IDAT chunk 2
IDAT chunk 1
• Chunk werden über verschiedene Quellen definiert:
- PNG Standard - Liste der registrierten chunks (PNG Development Group)- Anwendungsprogramme
…
IEND chunk
Optionaler chunk
…
2.3.3 Chunk-Nomenklatur• Jeder chunk-Name besteht aus 4 ASCII-kodierten Buchstaben, wobei der
erste, zweite und letzte in Großschreibung vorliegen kann (der dritte muß).• Der Decoder kann anhand der Buchstaben Informationen über den chunk
ermitteln.
critical? Public? Reserved? Safe to copy?
I H D RP L T E = critical, public, unsafe to
copyt E X t = non-critical, public, safe to
copy A 1 PX = ungültig
Critical: der Dekoder muß den chunk verarbeitenPublic: alle chunks des PNG Standards und alle registrierten chunks Reserved: reservierte Bits (z.Z. immer große Buchstaben (=ja))Safe to copy: garantiert das Kopieren des chunks fehlerfreie Prozessierbarkeit? (groß=nein)
2.3.4 Struktur von chunks
2.3.5 Essentielle Chunks: Header-chunk (IHDR)• Der Header-chunk muss neben dem/den Daten-chunk(s) (IDAT)
und dem End-Chunk (IEND) in jeder PNG-Datei vorhanden sein;wird zur Farbdarstellung eine Farbpalette verwendet, so muss der PLTE-chunk ebenfalls lesbar vorhanden sein.
• Der Header-chunk enthält Informationen über die Daten, die in der PNG-Datei gespeichert werden.
• Der Header-chunk muss sofort nach den 8 Byte der Signatur auftreten.
Feld Größe Beschreibung
Länge 4 Byte Länge des Datenfelds
Typ 4 Byte Chunk-Name
Daten n Byte Datenbereich
CRC 4 Byte Cyclic redundancy check (Kontrollwert)
Header-Chunk (IHDR)
2.3.6 Optionale chunks: Textual Data-chunk (tEXt)
• Der Textual Data-chunk erlaubt es, lesbare Texte in einer PNG-Datei mit abzulegen.
• Zur Zeit sind folgende Begriffe definiert: Title, Author, Description, Copyright, Creation Time, Software, Disclaimer, Warning, Source, Comment.
• Als Signatur wird der Name tEXt benutzt.
2.4 JPEG (Joint Photographics Expert Group)
2.4.1 Charakteristik• Mit JPEG lassen sich Bilder sehr stark komprimieren: Um
Kompressionsraten von bis zu 90% bei akzeptabler Bildqualität zu erreichen, werden verschiedene Methoden kombiniert eingesetzt, darunter auch Huffman, RLE oder DCT.
• JPEG-Dateien beschreiben Bilder als Rastergrafik, das eine Farbtiefe von 24 Bit haben kann.
• Dem Interlacing-Verfahren beim GIF entspricht das progressive JPEG.
• JPEG ist in ISO DIS 10918-1 definiert. • Die Definition von JPEG erlaubt allerdings viele Freiheiten, so dass
der Austausch von JPEG-Bilddaten zwischen verschiedenen Anwendungen und Plattformen relativ problematisch ist.
• Als minimaler Standard für den Austausch wurde das JFIF (JPEG File Interchange-Format) -Format definiert.
2.4.2 JPEG-Farbmodell• JPEG-Grafiken werden im YCbCr-Farbmodell gespeichert. • Y ist ein Luminaz-Wert und gibt die Helligkeit eines Punktes an, Cb
und Cr sind Crominanz-Werte, welche die Farben charakterisieren. • RGB- und YCbCr-Farbmodelle lassen sich linear ineinander
überführen: die Berechnung der YCbCr-Farbe geschieht gemäß der folgenden Werte:
• Dieses Farbmodell empfiehlt sich aufgrund der Tatsache, dass der Mensch Helligkeitsunterschiede stärker wahrnimmt als Farbunterschiede.
2.4.4 Downsampling• Downsampling bezeichnet den Vorgang, aus den originalen Pixeln
neue Pixel zu berechnen, die eine geringere Auflösung haben. • Das Reduktionsverhältnis beträgt entweder
– 4:1:1, d.h. im Verhältnis 2:1 sowohl horizontal als auch vertikal, oder
– 4:2:2, d.h. im Verhältnis 2:1 horizontal und 1:1 vertikal. • Graustufenbilder werden nicht auf diese Weise reduziert.
Ton I
Physikalische GrundlagenDigital AudioGrundlagen AudiodatenkompressionMIDI
1. Physikalische Grundlagen• Schallwellen haben wie jede andere Welle drei Eigenschaften:
– Geschwindigkeit – Amplitude (Schwingungsweite) – Länge
Geschwindigkeit von Schallwellen• Die Geschwindigkeit von Schallwellen ist im Wesentlichen abhängig
von dem Medium, durch welche sie sich verbreiten. • In Luft, auf Meereshöhe (=1 Atmosphäre Druck) und bei 20 °C beträgt
die Geschwindigeit 343,8 Meter pro Sekunde.
Wellenlänge• =der kleinste Abstand zweier Punkte gleicher Phase einer Welle
(z.B. Abstand zweier Wellenberge).
• wobei c=Ausbreitungsgeschwindigkeit und f=Frequenz.
• Bei 22.000 Hz ist die Welle 1,56 cm lang, bei 20 Hz 17,19 m!
Amplituden von Schallwellen• Die Schwingungsweite einer Schallwelle (= die Höhe des
Wellenberges) wird als Lautstärke wahrgenommen. • In Bewegung befindliche Moleküle der Luft treffen auf das
Trommelfell und geben Druck an dieses weiter. • Einzelne Atome bewegen sich normalerweise nur um Millionstel
Zentimeter. Bei sehr lauten Tönen können es aber auch nur zehntausendstel Zentimeter sein.
Frequenzen• Die Frequenz einer Welle ist dagegen abhängig von der Anzahl von
Bewegungen in einem Zeitraum. • Die Messeinheit der Frequenz ist Hertz (Hz). Sie misst Ereignis/
Zeitraum.• 1 Hz entspricht einer Schwingung (= einem Wellenberg und einem
Wellental) pro Sekunde: 1Hz=1/s.• Das menschliche Ohr ist empfindlich genug, um in Abhängigkeit
vom Alter und Gesundheit Töne zwischen 20 Hz und 22.000 Hz zu unterscheiden.
• Eine Verkleinerung der Wellenlänge (= Vergrößerung der Frequenz) empfindet das menschliche Ohr als ein Steigen der Tonhöhe.
•
Lautstärke• die Schallintensität wird als
Leistung pro Fläche definiert (W/m2)
• Bei der Messung von Lautstärke wird der Druck der Schallwelle gemessen und in elektrische Spannung umgewandelt, welche durch einen Zahlenwert dargestellt werden kann.
• Das menschliche Ohr ist sehr sensibel für Unterschiede in der Lautstärke. Das Lautstärkeempfinden wird dabei nicht linear sondern logarithmisch wahrgenommen
• Angaben über die Lautstärke werden auf einer logarithmischen Skala (zur Basis 10) wiedergegeben.
• Die Einheit auf dieser Skala heißt Dezibel (dB) und gibt das Verhältnis zweier Schallintensitäten an (Schalldruckpegel in dB):dB=Logarithmus des Quotienten aus Intensität der Schallwelle und Intensität an der Hörschwelle:
W/m2 dB Beispiel
10-12 0 Hörschwelle
10-10 20 Ruhige Wohnung
10-6 60 Unterhaltung
10-2 100 Laute Musik
100 120 Donner, Flugzeug, Rennwagen- Cockpit
102 140 Absolute Schmerzgrenze
2. Digital Audio
2.1 Sampling• Spielt man Töne in ein Mikrophon, wird der Schalldruck in
elektrische Spannung verwandelt, die kontinuierlich in der Zeit variiert.
• Diese Repräsentation von Schall durch elektrische Spannung heißt analog.
• Zur Digitalisierung von Ton müssen die kontinuierlichen Angaben diskretisiert werden, d.h. es werden elektrische Spannungswerte an vielen Zeitpunkten gemessen. Dieser Prozess heißt Sampling (ein Messpunkt= 1 Sample)
2.1.1 Sampling Raten (Abtastraten)• Je häufiger die Schallwelle auf ihren Druck abgetastet wird, desto besser
wird der originale Ton digital repräsentiert. • Zu wenige Abtastpunkte führen zu geraden Linien, zu langen Wellen oder
zu gezackten Kurven.
• Um ungenaues Abtasten der Schallwellen zu vermeiden, ist es notwendig, die Töne mit etwas mehr als der Nyquist-Rate abzutasten, die dem Doppelten der maximalen enthaltenen Frequenz entspricht.
• Da menschliche Ohren Schallwellen von maximal 22.000 Hz (= 22 kHz) wahrnehmen können, liegt die erforderliche Nyquist-Rate bei 44.000 Hz.
• Qualitativ hochwertige Audio-Digitalisate haben deswegen eine Abtastrate von 44.100 Hz.
• Beispiele:- Analoge Telefone samplen Schallwellen mit 8.000 Hz. - MW Radioqualität entspricht einer Abtastrate von 11.025 Hz. - UKW Radioqualität wird mit einer Abtastrate von 22.050 Hz erzielt. - DAT (Digital Audio Tape) hat eine Abtastrate von 48 kHz. - Professionelle Audiogeräte samplen mit einer Rate von 96 kHz
2.2 DigitalisierungsschritteDie Digitalisierung von analogen Audio-Signalen läuft grob in drei Schritten ab:
2.2.1 Abtastung• Um digitale Signale aufzuzeichnen gibt es verschiedene Verfahren.
Das bekannteste (und einfachste) ist Pulse Code Modulation (PCM).
• Dabei wird für jeden Abtastzeitpunkt ein Signalwert gemessen. • Bekannte Audio-Formate die PCM verwenden sind WAV und AIFF
Files.• Neben anderen verlustfreien Verfahren (z.B. PAM, PWM) wird beim
verlustbehafteten DPCM (Differential Pulse Code Modulation) -Verfahren, nur die Differenz zweier benachbarter Werte gespeichert. Somit lassen sich die Daten komprimieren.
2.2.2 Quantisierung• Bei der Quantisierung wird für die einzelnen abgetasteten Signale
ein Zahlenwerte ermittelt.• Für die Genauigkeit des Wertes spielt dabei die Abtasttiefe eine
Rolle. • Quantisierungsfehler: Da ein analoges Signal nicht mit absoluter
Genauigkeit gemessen werden kann, treten Rundungsfehler auf.• Diese Rundungsfehler können für Störgeräusche bei der
Wiedergabe einer digitalen Aufnahme sorgen, dem Quantisierungsrauschen.
Abtasttiefe (Sample size)
• Angenommen, die elektrische Spannung, die einen digitalisierten Ton repräsentieren kann, beträgt 1 Volt, dann können mit 8 Bit 1/256 Volt (ca. 0,004 Volt) unterschieden werden.
• Diejenigen Töne, die weniger als 2 mv an Spannung erzeugen, würden als Null gesampelt und als Stille wiedergegeben.
• Ein 16-Bit-Sample könnte Töne bis 1/65.535 (ca. 15 μv) unterscheiden.
2.2.2 Quantisierung• Bei der Quantisierung wird für die einzelnen abgetasteten Signale
ein Zahlenwerte ermittelt.• Für die Genauigkeit des Wertes spielt dabei die Abtasttiefe eine
Rolle. • Quantisierungsfehler: Da ein analoges Signal nicht mit absoluter
Genauigkeit gemessen werden kann, treten Rundungsfehler auf.• Diese Rundungsfehler können für Störgeräusche bei der
Wiedergabe einer digitalen Aufnahme sorgen, dem Quantisierungsrauschen.
2.2.3 Kodierung• Die quantisierten Signale werden zuletzt in ein einer Bitfolge kodiert.• Analog-Digital-Wandler (Analog-Digital-Converter) heißen die Geräte, die
die Kodierung (und Quantisierung) übernehmen.• Die Umwandlung der digitalen Daten zurück in elektrische Spannungen
übernimmt der Digital-Analog-Wandler.
2.2.3 Kodierung• Die quantisierten Signale werden zuletzt in ein einer Bitfolge kodiert.• Analog-Digital-Wandler (Analog-to-Digital-Converter) heißen die Geräte,
die die Kodierung (und Quantisierung) übernehmen.• Die Umwandlung der digitalen Daten zurück in elektrische Spannungen
übernimmt der Digital-Analog-Wandler.
2.3 Datenmengen bei der AudiodigitalisierungWie groß ist der Speicherplatzbedarf einer klassischen Aufnahme in CD-Qualität (Stereo) mit 60-minütiger Laufzeit?
2.2.3 Kodierung• Die quantisierten Signale werden zuletzt in ein einer Bitfolge kodiert.• Analog-Digital-Wandler (Analog-to-Digital-Converter) heißen die Geräte,
die die Kodierung (und Quantisierung) übernehmen.• Die Umwandlung der digitalen Daten zurück in elektrische Spannungen
übernimmt der Digital-Analog-Wandler.
2.3 Datenmengen bei der AudiodigitalisierungWie groß ist der Speicherplatzbedarf einer klassischen Aufnahme in CD-Qualität (Stereo) mit 60-minütiger Laufzeit?
Das Audiosignal wird standardmäßig mit 44,1 KHz pro Kanal abgetastet. Die Abtasttiefe liegt bei 16 bit.
2.2.3 Kodierung• Die quantisierten Signale werden zuletzt in ein einer Bitfolge kodiert.• Analog-Digital-Wandler (Analog-to-Digital-Converter) heißen die Geräte,
die die Kodierung (und Quantisierung) übernehmen.• Die Umwandlung der digitalen Daten zurück in elektrische Spannungen
übernimmt der Digital-Analog-Wandler.
2.3 Datenmengen bei der AudiodigitalisierungWie groß ist der Speicherplatzbedarf einer klassischen Aufnahme in CD-Qualität (Stereo) mit 60-minütiger Laufzeit?
Das Audiosignal wird standardmäßig mit 44,1 KHz abgetastet. Die Abtasttiefe liegt bei 16 bit.
Daraus folgt: 44,1kHz * 2 * 16bit * 60 * 60 s = 635 Megabyte
3. Audiodatenkompression 3.1 Einflüße des menschlichen Hörvermögens: Hörschwelle• Das menschliche Ohr ist zwar in der Lage, Tonhöhen von 20 Hz bis
22 kHz wahrzunehmen, doch diese Fähigkeit ist nicht gleichmäßig ausgeprägt.
• Die Empfindlichkeit des Ohres ist im Bereich von 2 kHz bis 4 kHz am größten.
• Das Vorhandensein dieser Hörschwellen ist ein Ansatzpunkt für die Datenkompression.
3.2 Frequenz-Maskierung• Gemeinsam erklingende Töne ähnlicher Frequenz beeinflussen die
Hörschwelle des jeweils anderen Tons. • Der lautere Ton maskiert den leiseren Ton, indem die Hörschwelle
für den leiseren Ton erhöht wird. • Selbst wenn der leisere Ton ein so starkes Signal erzeugt, dass er
normalerweise über der Hörschwelle liegen würde, kann dieser (maskierte) Ton eventuell doch nicht gehört werden.
• Gute Kompressionsmethoden sollten diese Fälle erkennen und das Signal löschen.
Frequenzbänder• Die Frequenz-Maskierung ist frequenzabhängig. • Die "Reichweite" des Einflusses von Tönen auf andere erstreckt
sich in niedrigeren Frequenzbereichen nur auf 100 Hz, in höheren Bereichen bis zu 4 kHz weit.
• Man kann deshalb die hörbaren Frequenzen in "Bänder" einteilen, welche die (nachlassende) Empfindlichkeit des Gehörs in Richtung höhere Frequenzen anzeigen.
• Das Ohr-Gehirn-System kann als ein Filter verstanden werden, der Töne nur zwischen 20 Hz und 22 KHz durchläßt. Man kann dies über die Bildung von Teilfiltern als Bandweiten visualisieren. Die Weite der Bänder wäre ihre Größe, ihr Maß das Bark (H.G. Barkhausen) .
• 1 Bark ist gleich – f / 100 für Frequenzen f < 500 Hz. – 9 + 4 log (f / 1000) für Frequenzen f ≥ 500 Hz.
3.1.3 Temporäre Maskierung• Auch zeitliche Abstände zwischen Tönen haben einen Einfluß auf
die Hörbarkeit. • Geht einem starken Ton A ein schwächerer Ton B in ähnlicher oder
gleicher Frequenz voraus oder folgt ihm, so gibt es zeitliche Abstände von bestimmter Dauer, in denen Ton B nicht zu hören ist.
4. MIDI
• MIDI (Musical Instrument Digital Interface) ist der Standard für die Kommunikation zwischen elektronischen Musikinstrumenten.
• MIDI wurde 1983 auf Initiative der damals bedeutensten Synthesizer-Hersteller Sequential Circuits und Roland in der Version 1.0 spezifiziert.
• MIDI besteht aus drei wesentlichen Komponenten: – MIDI-Protokoll – MIDI-Schnittstelle – Standard MIDI-Files
4.1 MIDI vs. digital Audio• Eine MIDI-Datei enthält keinerlei gesamplete Audio-Daten, sondern
lediglich Anweisungen an ein elektronisches Musikinstrument, bestimmte Töne zu produzieren bzw. abzuspielen.
• MIDI-Dateien sind daher extrem klein im Vergleich zu "eigentlichen" Audio-Dateien.
• MIDI kann einerseits Instrumente ansprechen, die Töne tatsächlich zeitgleich hervorbringen, andererseits können auch sog. Expander angesprochen werden, die Soundbibliotheken mit gesampelten Sounds verwalten und aus dieser Bibliothek Töne abspielen.
• Sender einer MIDI-Nachricht ist normalerweise ein MIDI-Controler (z.B. Keyboard) oder ein MIDI-Sequenzer.
• Empfänger einer MIDI-Nachricht ist normalerweise ein Sound-Generator oder Sound-Modul, welches die geforderten Töne erzeugt bzw. abspielt.
4.2 MIDI-Schnittstelle • Um MIDI-Geräte miteinander zu verbinden, werden 5-polige DIN-
Stecker verwendet. • An jedem Gerät sollte es drei Anschlussmöglichkeiten geben:
– MIDI-In – MIDI-Out – MIDI-Thru
• Die MIDI-In-Buchse wird für ankommende Informationen von anderen Geräten benutzt.
• Die MIDI-Out-Buchse wird für abgehende Informationen an andere Geräten benutzt.
• Über die MIDI-Thru-Buchse können Informationen ohne merklichen Zeitverlust und ohne Datenveränderung von Geräten an andere weitergeleitet werden.
• Mittels dieser drei Buchsen kann man Geräte in verschiedenen Topologien miteinander verbinden. (Z.B. Stern, Kette, etc.)
MIDI-Schnittstelle (II)• Da Computer meist keine 5-poligen Buchsen haben, werden MIDI-
Geräte über die serielle Schnittstelle (oder über den Joystick-Port) an den Computer angeschlossen.
• Die MIDI-Schnittstelle ist eine serielle Schnittstelle, d.h. Datenbits werden nacheinander übertragen.
• Die serielle Schnittstelle arbeitet im asynchronen Modus, d.h. der Datenaustausch wird nicht durch eine Zeitgebereinheit synchronisiert.
• Der Datenstrom wird mit einer Geschwindigkeit von 31.250 bps übertragen, wobei eine Informationseinheit 10 Bit groß ist. (1 Startbit, 8 Datenbits, 1 Stopbit)
4.3 MIDI-Protokoll• Im MIDI-Protokoll ist festgelegt, wie Geräte miteinander
kommunizieren, wie MIDI-Befehle aufgebaut sind etc.
4.4 MIDI-Befehle• MIDI-Befehle bestehen aus 1-3 Bytes. • Das erste Byte ist immer ein Status-Byte, welches bestimmte
Aktionen und ggfs. Kanalnummern anzeigt. • Byte 2 und 3 sind optionale Daten-Bytes, die Werte enthalten, wie
z.B. die zu spielende Lautstärke etc. • Beim Status-Byte ist das 8. Bit immer gesetzt, d.h. der Wert ist
immer größer als 127. • Beim Daten-Byte ist das 8. Bit niemals gesetzt, d.h. der Wert ist
immer kleiner als 127.
4.4.1 Arten von MIDI-Befehlen
• Auf höchster Ebene sind MIDI-Befehle – Kanal-Mitteilungen oder – System-Mitteilungen.
System-Mitteilungen richten sich an keinen speziellen Kanal,sondern an das ganze System.
• MIDI-Kanal-Nachrichten lassen sich weiter klassifizieren als – Channel Voice Messages: Trägt die eigentlichen Musik-
Performanz-Daten– Mode Messages: Bestimmt, wie auf die Musik-Performanz-
Daten reagiert wird.• MIDI-System-Nachrichten lassen sich weiter klassifizieren als
– System Common Messages– Real Time Information: Befehle, die beim Programmablauf
sofort wirken.– System Exclusive Information: Befehle ausserhalb der Norm,
instrumentenspezifisch.
4.5 MIDI-Kanäle
• Alle MIDI-Geräte, die zu einem System zusammengeschlossen sind, erhalten dieselben Informationen, d.h. der Datenstrom wird an allen Geräten vorbeigeleitet.
• Um MIDI-Informationen an die richtige Stelle weiterzuleiten, verwendet MIDI sog. Kanäle (engl. channels) .
• Jeder MIDI-Sender (= Master) kann auf einen bestimmten Sendekanal eingestellt werden und jeder Empfänger (= Slave) auf einen Empfangskanal.
• Der Sender schickt die Sendekanalnummer mit den eigentlichen Daten an alle angeschlossenen Geräte, ausgeführt werden die geforderten Aktionen nur von den Empfängern, deren Empfangskanal denselben Wert hat wie der Sendekanal des Senders.
4.6.1 MIDI-Kanalnummern• MIDI-Kanalnummern werden im Status-Byte übermittelt. • Die Kanalnummer wird im unteren Nibble (engl. to nibble =
anknabbern) kodiert. • Dadurch lassen sich 16 verschiedene Kanäle ansprechen.
4.6.2 Channel Voice Messages• Kanaldaten werden durch sieben verschiedene Statusbytes
repräsentiert, die von 80H bis 7fH gehen. – 8n kk vv = Ton Aus, kk = Tonhöhe, vv = Dynamik (velocity) – 9n kk vv = Ton An, kk = Tonhöhe, vv = Dynamik (velocity) – An kk vv = Polyphone Anschlagsempfindlichkeit – ...
4.6.3 Channel Mode Messages• Hiermit werden bestimmte Spielmöglichkeiten der Tastatur ein- oder
ausgeschaltet. Man kann z.B. das Keyboard von der Klangerzeugung trennen.
– Bn 7A ss = Keyboard an? (local keyboard control) – Bn 7B 00 = alle Töne aus Falls eine Note Off Nachricht nicht
angekommen ist.– Bn 7C 00 = Omni-Mode aus Im Omni-Modus wird jede Nachricht
ausgeführt ohne Rücksicht auf die Kanalnummern.– Bn 7D 00 = Omni-Mode an – Bn 7E 00 = Mono an / Poly aus Es wird nur ein Ton auf der
Tastatur gespielt, egal wieviele gegriffen werden.– ...
4.7 Standard MIDI-Files• Das Standard MIDI-File besteht aus verschiedenen Blöcken, die
CHUNKS genannt werden. • Es gibt einen Header-CHUNK, gefolgt von Track-CHUNKS.
4.7.1 Header-CHUNK• Der Header-CHUNK besitzt einen festen Aufbau:
4.7.2 Der Track-CHUNK
• Der Track-CHUNK besitzt einen festen Aufbau:
Ton II
Überblick: MPEGmp3
1. Allgemeines zu MPEG
• MPEG (Moving Picture Experts Group) ist eine Arbeitsgruppe von ISO (International Standards Organization) und IEC (International Electro-Technical Commission) .
• Die Arbeitsgruppe wurde 1988 in Ottawa, CA gegründet. • Ihre Aufgabe ist die Entwicklung von internationalen Standards zur
Komprimierung, Dekomprimierung, Verarbeitung, Kodierung und Dekodierung von bewegten Bildern und assoziiertem Audio. Der offizielle Titel lautet: „Coding of moving pictures and audio“.
• Die Expertengruppe trifft sich in unregelmäßigen Abständen, um Arbeitsergebnisse zu diskutieren und neue Arbeitsbereiche abzustecken. Das Ergebnis sind verschiedene Standards.
1.1 MPEG-1
• MPEG-1 ist seit 10/92 als Standard ISO/IEC 11172 definiert. • Praktisch bedeutete dies, einen Standard für die effiziente
Speicherung und Wiedergabe von audio-visuellen Daten auf CDs zu erarbeiten, der eine max. Datenübertragungsrate von 1,5 Mbit/s unterstützt.„Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s“
1.1.2 MPEG-1 Definitionen
• MPEG-1 besteht aus 5 Teilen: – Systems – Video – Audio – Conformance testing – Software simulation
Normativ vs. Informativ• in den ISO/IEC-Dokumenten gibt es sowohl normative als auch
informative Bestandteile. • Normativ bedeutet, dass die entsprechenden Abschnitte Teile der
Standard-Spezifikation sind. Sie sind präzise definiert, für Implementierungen gedacht und sollten bei der Implementation strikt befolgt werden.
• Informativ bedeutet, dass die entsprechenden Abschnitte einzelne Konzepte, die an anderer Stelle definiert worden sind, illustrieren, bestimmte Entscheidungen näher erläutern und Beispiele zur Implementierung liefern.
• Die Teile 1-3 von MPEG-1 sind weitgehend normativ, die Teile 4/5 sind informativ.
SystemsDer "Systems"-Teil beschreibt die zeitliche Synchronisation und das Multiplexen von Video- und Audio-Datenströmen.(Multiplexen = gleichzeitiges Übertragen von mehreren Informationen über einen Kanal); Zweck: Aufbereitung der Daten zur Speicherung und effizienteren Übertragung
VideoDer "Video"-Teil beschreibt die Kodierung von Videosignalen. Dabei werden verschiedene Bildtypen definiert, die verschiedene Funktionalität unterstützen.
Audio
• Der "Audio"-Teil beschreibt die Kodierung von Audiodaten (Mono/Stereo).
• In diesem Teil des Standards werden drei verschiedene Methoden (layer) der Datenkompression definiert.
• Die drei Methoden werden mit I, II und III bezeichnet und zeichnen sich durch steigende Komplexität und Leistungsfähigkeit aus. Die Layer sind hierarchisch kompatibel, d.h. die Funktionen der "niedrigeren" Methoden sind den "höheren" bekannt, die höheren Layer verfügen allerdings über zusätzliche Eigenschaften, die in besserer Kompression resultieren.
– Layer I: ermöglicht eine Datenreduktion von 1:4. Dies entspricht 384 kBit/s für ein Stereosignal.
– Layer II: ermöglicht eine Datenreduktion von 1:6...1:8. Dies entspricht 256...192 kBit/s für ein Stereosignal.
– Layer III: ermöglicht eine Datenreduktion von 1:10...1:12. Dies entspricht 128...112 kBit/s für ein Stereosignal.
Conformance testing• Der "Conformance testing"-Teil spezifiziert Testdesigns um zu
verifizieren, ob die Bitströme und Dekoder den spezifizierten Anforderungen aus Teil I,II,III entsprechen.
Software simulation• Der "Software simulation"-Teil liefert eine Beispiel-Implementation
(in C-Code) für die ersten drei Teile (als technical report).
1.1.3 Anwendungen von MPEG-1
• VCD (Video CD) , Digital Compact Cassette (DCC)• MPEG-1, Teil 3, Layer III wird populär als mp3 bezeichnet. • Zum Erzeugen/Abspielen/Darstellen von MPEG-Dateien braucht
man sogenannte Codecs. • Codec ist die Abkürzung für Coder/Decoder, also die Soft- oder
Hardwarebestandteile, die die Video- und Audiodaten im entsprechenden Format kodieren oder dekodieren.
1.2 MPEG-2• Die nächste Entwicklung der Arbeitsgruppe war MPEG-2. Der offizielle
Titel lautet: „Generic Coding of Moving Pictures and Associated Audio“. • MPEG-2 ist als Standard ISO/IEC 13818 definiert.• Wurde überwiegend für die Speicherung und Übertragung von
Videosignalen vorgesehen (digitales Fernsehen). Übertragungsraten: 1,5 -15 Mbit/s.
1.2.1 MPEG-2 Teilbereiche• MPEG-2 besteht aus (8)9 Teilen:
– Systems – Video – Audio – Conformance testing – Software simulation – System extension - DSM-CC (Digital Storage Media Command and
Control) – Audio extension - AAC (Advanced Audio Coding) – System extension - RTI (Real Time Interface) – Conformance extension - DSM-CC – [IPMP (Intellectual Property Management and Protection) on
MPEG-2 Systems]
Systems• Der "Systems"-Teil ist in zwei Teile gegliedert:
– Der "Program Stream" ist analog zu MPEG-1, Teil 1 ähnlich definiert und unterstützt die Speicherung auf digitalen Medien.
– Darüber hinaus gibt es den "Transport Stream", der die Datenübertragung über fehleranfällige Systeme regelt.
Video• Der "Video"-Teil beschreibt die Kodierung von Bilder, die zusätzlich zu
MPEG-1 im Interlacing-Verfahren aufgebaut sind. • MPEG-2 realisiert außerdem Verbesserungen in der Bildqualität.• Unterstützt drei Auflösungsstufen: low-main-high (letzteres für HDTV
vorgesehen)
Advanced Audio Coding• Der "AAC"-Teil definiert eine neue mehrkanalige Audio-Kodierung, die nicht
rückwärtskompatibel ist zu MPEG-1 Audio.
1.2.2 Anwendungen von MPEG-2• Video-Teil DVD • AAC ist von Japan für einen Standard für nationales digitales Fernsehen
gewählt worden. • Digitale Fernsehübertragungen
1.3 MPEG-4
• Eine weitere Entwicklung der Arbeitsgruppe ist MPEG-4. Der offizielle Titel lautet: „Coding of audio-visual objects“.
• MPEG-4 ist als Standard ISO/IEC 14496 definiert. Die Version 1 wurde 10/98 verabschiedet, Version 2 12/99.
• Während MPEG-1 und -2 vor allem für Audio- und Video-Kompression benutzt werden, ist das Ziel von MPEG-4 eine Universalsprache zwischen Broadcasting, Filmen (Audio und Video) und Multimedia Anwendungen.
• Mit MPEG-4 soll ein Standard geschaffen werden zur Repräsentation von sog. "Medien-Objekten", d.h. Audio-, visuelle oder audiovisuelle Inhalte natürlicher (= digitalisierter) oder künstlicher (= im Computer erschaffen) Herkunft.
1.3.1 MPEG-4 Teilbereiche
• MPEG-4 besteht aus 16 Teilen: – Systems – Visual – Audio – Conformance testing – Software simulation – Delivery Multimedia Integration Framework – Optimized Software for MPEG-4 tools – 4 on IP framework – Reference Hardware Description – Advanced Video Coding – Scene Description and Application Engine – ISO Base Media File Format – IPMP Extenions – MP4 File Format – AVC (Audio-Visual Content) File Format – AFX (Animation Framework eXtension)
• Die ersten sechs Teile des MPEG-4-Standards korrespondieren grob mit denen von MPEG-2.
• Die ersten fünf tragen dieselben Namen, dennoch gibt es einige signifikante inhaltliche Unterschiede:
– MPEG-4 erlaubt die Kodierung individueller Objekte. – Im Bereich von Video bedeutet dies, dass die Information nicht in
rechteckigem Format gespeichert zu werden braucht wie es MPEG-1 und -2 voraussetzen.
– Im Bereich von Audio bedeutet dies, dass z.B. Sprache in anderer Bitrate und mit anderen Funktionalitäten kodiert werden kann als sonstige Audio-Information.
– Für den "Systems"-Teil bedeutet dies, dass eine "composition function" zu den herkömmlichen Spezifikationen hinzutritt.
– Wie oben erwähnt, können die "Medienobjekte" synthetischer Natur, also vollständig im Computer hergestellt sein. Dies schließt z.B. 3D-Modelle als Gegenstand der Kodierung ein.
– Es wurde ein File Format standardisiert. – Die Software-Implementation für Kodierer und Dekodierer hat
normativen Status.
2. mp3
• mp3 ist die populäre Bezeichnung für Layer III von Teil 3 (Audio) von MPEG-1 files.
• Layer III und der dafür verwendete Kodierer (encoder) sind extrem komplex, dafür aber extrem leistungsfähig in Bezug auf die Kompressionsraten.
• Der Dekodierer dagegen ist viel einfacher aufgebaut.
2.1 mp3: Kompressionstechniken• mp3 verwendet eine Kombination der folgenden
Kompressionstechniken: – perceptual coding
• minimal audition threshold • masking effects
– andere Kodierungsmethoden • Bytes reservoir • Joint Stereo coding • Huffman coding
2.2 Perceptual coding• Das perceptual coding beruht auf einem psycho-akustischen
Modell. Darunter versteht man ein mathematisches Modell, welches das Maskierverhalten des menschlichen Hörsystems zur Grundlage hat.
2.3 Bytes Reservoir• Oft können Audiopassagen nicht exakt in bestimmter Bitrate kodiert
werden, so dass dies einer bestimmten Frequenz entsprechen würde.
• Anstatt die Kodierung aber an die vorgesehene Länge der Daten anzupassen und damit die Datenqualität zu verändern, werden solche "Lücken" bei mp3 verwendet, um dort Daten aus anderen Bereichen unterzubringen.
2.4 Joint Stereo coding• Joint Stereo coding bezeichnet verschiedene Tools, die die
Datenmenge weiter reduzieren: – Intensity Stereo – Mid/Side (M/S) stereo
Intensity Stereo• Hier wird die Schwäche des menschlichen Ohrs ausgenutzt, bei
besonders hohen und tiefen Tönen keine genaue Lokalisierung mehr vornehmen zu können.
• Die Daten werden in diesen Fällen nicht als zwei Signale (stereo) abgelegt, sondern als ein Signal (mono) mit ein paar Zusatzinformationen, um ein Minimum an "räumlicher" Information zu rekonstruieren.
Mid/Side (M/S) stereo• Wenn die Stereo-Informationen auf beiden Kanälen einander sehr
ähnlich sind, werden die Informationen nicht als zwei getrennte Signale gespeichert, sondern als "Mitte" und "Seite".
• Mitte bedeutet, dass die Kanalinformationen addiert werden (L+R), Seite nimmt die Differenz der Informationen (L-R) auf.
2.7 MPEG-Audio-Frame• Die MPEG-Audio-Sequenz besteht aus Audio-Frames. • Jedes Frame nimmt Daten von 1152 Samples auf. • Ein Audio-Frame wiederum ist aufgebaut aus
– header – error_check – audio_data – ancillary_data
Aufgaben
1) Wiederholen Sie den Stoff dieser Sitzung bis zur nächsten Sitzung (siehe dazu den Link zur Sitzung auf der HKI-Homepage).
Informieren Sie sich zusätzlich durch eigene Literaturrecherche!
2) Beantworten Sie die Fragen aus der Sammlung „beispielhafte Klausurfragen“ zum Bereich Ton (soweit in dieser Sitzung behandelt).