5.3 Computer
Entwicklung:
- Einleitung
- Direct Sound (Windows)
- Aureal 3D (für einige Systeme)
- Enviromental Audio (für einige Systeme)
- SoundSprocket (Mac)
- QSound und Co.
- VRML
- Prozessoren (DSPs)
- Einleitung
- Nachteile (unter bestimmter Sichtweise, Grob skizziert):
- Multitaskingsysteme (Unix, Windows 9x etc.)
- erlauben nur teilweise exklusiven Zugriff
auf die Hardware
- Folge nicht die erwünschte Geschwindigkeit
für rechenintensive (viele Ressourcen) Anwendungen (Spiele)
- Singletasksysteme (DOS)
- zu der Zeit gab es eher keine Standards
- Folge jede Soundkarte musste vom Anwendungsentwickler
mitbedacht werden
- System hatte nicht mehr Rechte als Anwendung
Ausschnitt aus einem PC-Spielebuch von 1989
- Vorteile (Grob skizziert):
- Multitaskingsysteme:
- kümmern sich zum grössten Teil um die Hardware
(Treiber), da der Anwendung nicht erlaubt werden sollte “direkte
Zugriffe” zu machen
- System hat mehr Rechte als Anwendung
- Singletasksysteme:
- erlauben höchste Geschwindigkeit beim Zugriff
auf die Hardware
- Daraus folgt:
- will man rechenintensive Anwendungen entwickeln,
braucht man schnellen Zugriff auf die Hardware (möglichst direkt)
- dies widerspricht den Multitaskingkonventionen,
denn dann würden bestimmte Anwendungen Exklusivrechte haben
- diese Probleme versucht DirectX (Windows 9x) zu
lösen
- DirectX
- behält die Regelung bei, daß das System die meisten
Rechte hat
- arbeitet mit dem Schichtenmodell
- besteht aus geschwindigkeitsoptimierten Bibliotheken
auf niedriger Ebene
- Treiber werden von Herstellern geliefert
- Möglichkeit des Taskwechsels bleibt (keine Anwendung
mehr Rechte als das System (Es gibt Ausnahmen, deswegen Umstritten))
- durch recht einfachen und abstrakten Aufbau, haben
sich Möglichkeiten ergeben, für viele Menschen/Firmen komplexe Spiele
zu entwerfen ohne sich tiefgehend mit der Hardware auseinanderzusetzen
- Man kann sich mehr mit der tatsächlichen Anwendungsentwicklung
als mit der Hardware befassen
HAL (Hardware Abstraction Layer)
HEL (Harware Emulation Layer)
- Hauptkomponenten von DirectX:
- Direct Draw
- Direct Sound
- Direct Play
- Direct3D
- Direct Input
- Leider nur kurz:
- Möglichkeiten zur Raumbeschreibung am Computer:
- SoundSprocket (Mac)
- VRML-2 (professionelle Sprache)
- Direct Sound
- zur Zeit findet (eigentlich immer) eine starke
Konkurrenz zwischen den verschiedenen Prozessorherstellern statt
- jeder fügt neue Effekte und Möglichkeiten zur
Verbesserung des Klangs ein
- Direct Sound
- sollte eigentlich nur dann eingesetzt werden, wenn
es auf Geschwindigkeit ankommt, sonst Win-API
- automatische Umrechnung von PCM-Soundformaten
- eigentlich kümmert sich der Programmierer nur um
die Sekundärpuffer
- statische Sounds - Streaming
- Puffer sind ringförmig aufgebaut
- property sets (Eigenschaftsgruppen) erlauben Kartenherstellern
zusätzliche Methoden hinzuzufügen, ohne an der API von Direct Sound etwas
zu ändern
- im 3D-Raum:
- 3DBuffer, 3DListener
- arbeitet mit Lautstärkeveränderung, Dämpfung
und Verzögerung
- HRTF (“head related transfer function“
~ Außenohrübertragungsfunktion) nicht in HEL realisiert, wird Hardwareherstellern
überlassen
- arbeitet mit linkshändigen Koordinatensystem:
- Bsp.: (X,Y,Z) z.B. (0.0, 0.0, 10.0) entspricht
einem 10m entfernten Klang
- Dopplereffekt (gerne benutzt): bewegt sich eine
Schallquelle auf den Zuhörer zu klingt sie höher als normal, entfernt
sie sich klingt sie tiefer
aus DirectX - Buch
- Aureal 3D, Enviromental Audio EAX
- Aureal3D
- EAX
- entwickelt von Creative
Labs
- ist eine API für verschiedene Systeme (mitunter
Linux), unter Windows eine Erweiterung für DirectSound
- ähnlich Aureal3D, bietet ebenfalls HRTF
- bis zu vier Lautsprechern
- umfangreiche Zusatzfunktionen
- VRML, SoundSprocket, QSound und Co.
- VRML-2
- erlaubt die Beschreibung von virtueller Umgebung
und Klang
- könnte mal zum übergreifenden 3D-Sound-Standard
(zur Zeit eher für Profis gedacht) werden
- Problem: akustische Eigenschaften von Formen
und Materialien wurden nicht in der virtuellen Umgebung mitbedacht
(Bsp. Metall klingt anders als Holz etc.)
- SoundSprocket
- ähnlich wie DirectSound nur für Mac
- Stereobasisverbreiterung
- QSound
- liefert eigenen Standard, eigene Chips und auch
Algorithmen
- besonders bekannt geworden durch QXpander
- Q1(Lautsprecher) und Q2(Kopfhörer) sind Stereobasiserweiterungen
- die beiden Algorithmen bekommen eine Mono Schallquelle
und eine Position im Raum
- durch Verzögerung, Phasenverschiebung und Amplitudenmodulation
wird Raumtiefe erzeugt
- SRS (Sound Retrieval System)
- Sony und SGS Thomson (Crystal-Chip CS4237)
- mit Mono-, Stereo-, Sourroundkodierten Signalen
- weder Verzögerung noch Phasendrehung
- bildet Summen- Differenzsignal
- RSX (Real Sound Experience 3D):
- von Intel entwickelt
- nutzt die Leistung des MMX-Prozessors