Vortrag - Linux und Multimedia
Inhalt
1. Begriffsklärung -
Multimedia
2. Hardware, Geräteunterstützung
2.1 Sound mit OSS/free
2.2 Video4Linux
2.3 verschiedenes
3. Anwendungen
3.1 Audio
-
CD-Player
-
Wave & Co.
-
komprimierte Audiofiles
-
Streaming Audio (Video)
-
MIDI
3.2 Grafik
Bildbearbeitung
Nutzung eines Scanner
3D - Ray Tracer, Renderer
3.3 Video
3.4 Nachlese
-
LIRC - Linux Infrared Remote Control
-
Voodoo-Hardware
4. Ausblicke und Trends
1. Begriffsklärung -
Multimedia
Multimedia
-
lat. multi: viele
-
Medien ... Träger von Informationen
|
Zeitungen, Zeitschriften, Bücher |
Töne
Videos
|
Radio, Fernsehen, Rechner |
-
in einem PC werden die verschiedenen Medien vereint (Texte, Grafiken, Animationen,
Musik, Video), diese lassen sich einerseits anschauen aber auch bearbeiten
und Verbreiten
-
eine wichtige Rolle spielt an dieser Stelle der Zugang zu Informationsquellen
(Bsp.: Internet)
-
Ziel: Betrachtung eines PC mit Betriebssystem
LINUX für multimediale Anwendung
2. Hardware, Geräteunterstützung
Um einen PC für Multimedia-Anwendungen nutzen zu könne
ist neben einer Grafikkarte oft noch spezielle Hardware wie Sound- u. Videokarten,
Kameras, Scanner, CD-Brenner, ... erforderlich.
Dabei stellt sich die Frage nach geeigneten Gerätetreibern. Deshalb
sollte bereits vor dem Kauf multimedialer Hardware auf die Unterstützung
unter Linux geachtet werden. Leider gibt es auf der Verpackung keinen Hinweis
in der Art "100% Pinguin kompatibel". Oft kann auch das Verkaufspersonal
dazu keine Angaben machen.
Woher bekommt man nun Informationen ?
2.1 Sound mit OSS/free
-
Konfiguration des Treibers kann entweder bei der Kernelkonfiguration fest
eingetragen werden oder modular erfolgen
Bsp.: Distribution RedHat liefert modulare Soundtreiber + Werkzeug
sndconfig
/etc/conf.modules
...
alias sound sb
options opl3 io=0x388
alias midi awe_wave
post-install awe_wave /etc/midi/sfxload /etc/midi/GU11-ROM.SF2
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 |
/etc/rc.d/rc.sysinit
...
# load sound modules
if ! grep -i nomodules /proc/cmdline >/dev/null ; then
if [ -n "$USEMODULES" ]; then
if grep -s "alias sound"
/etc/conf.modules > /dev/null ; then
modprobe
sound
if grep -s "alias midi" /etc/conf.modules > /dev/null ; then
modprobe midi
fi
fi
fi
fi
... |
/sbin/lsmod
...
awe_wave
11 1
sb
6 1
uart401
2 [sb] 1
sound
15 [awe_wave sb uart401] 0
soundlow
1 [sound] 0
soundcore
1 [sb sound] 7 |
cat /dev/sndstat
OSS/Free:3.8s2++-971130
Load type: Driver loaded as a module
Kernel: Linux hawk.csn.tu-chemnitz.de 2.0.36 #1 Tue Oct 13 22:17:11
EDT 1998 i586
Config options: 0
Installed drivers:
Card config:
Audio devices:
0: Sound Blaster 16 (4.13)
Synth devices:
0: AWE32-0.4.2c (RAM2048k)
Midi devices:
0: Sound Blaster 16
Timers:
0: System clock
Mixers:
0: Sound Blaster
1: AWE32 Equalizer |
Was gibt es neben OSS/free ?
-
4Front Technologies kommerzielles Soundsystem für Linux, Solaris,
HP, BSD ....
-
ALSA Advanced Linux Sound Architecture
-
Turtle Beach Linux Drivers
-
...
2.2 Video4Linux
-
Projekt soll eine gemeinsame Schnittstelle für Video-Anwendungen bereitstellen
-
erste Anwendungen für Radio- und Fernsehtuner für TV-Karten sowie
ein WebCam-Projekt sind verfügbar
-
unterstützte Hardware:
-
bttv für Framegrabberkarten auf der Basis Bt 848 (Hauppauge,
miro, ....)
-
QuickCam
-
...
2.3 verschiedenes
SANE - Scanner Access Now Easy
-
Unterstützung für Scanner, Digitalkameras, QuickCam
-
als standalone Software oder Plugin zu gimp
LIRC - LINUX Infrared Remote Control
-
bisher nur mit Eigenbauempfänger nutzbar, kommerzielle IR-Schnittstellen
geplant
-
modularer Aufbau
3. Anwendungen
3.1 Audio
CD-Player
-
vom einfachen Kommandozeilenplayer bis zur grafischen X-Oberfläche
mit Verbindung zu CD-Datenbanken
-
CDDB Audio-CD-Datenbank im Netz
Anwendungen |
-
xmcd ... Audio-CD-Player mit Zugriff auf cddb-Datenbank
-
xcthugha und glcthugha ... Scopes bzw. Oszilloskop, glcthugha
unterstützt 3Dfx-Karten (Showeffekt)
glcthugha
|
-
CD-Ripper zum Auslesen von Audio-CD´s
Anwendungen |
-
cdda2wav ... Digitales Auslesen von Audio-CD´s -> *.wav oder
*.riff (44.1 kHz, Stereo, 16Bit)
-
cdda2mp3 ... FrontEnd zu cdda2wav und l3enc -> *.mp3
|
Wave & Co.
-
wav entsteht durch Digitalisieren von elektromagnetischen Schwingungen
(Schall)
-
zur Bearbeitung von wav oder typverwandten Files stehen Tools zu Verfügung
Anwendungen |
-
sox ... Kommandozeilenkonverter für verschiedene Soundformate,
dabei ist es auch möglich, Effekte wie echo, vibro ... einzubringen
und die Samplingbedingungen zu ändern
-
xsox ... grafisches Frontend zu sox
xsox
-
xwave ... grafisches Tool mit ähnlichen Eigenschaften wie sox
xwave
|
komprimierte Audiofiles
Anwendungen |
-
amp ... Kommandozeilen mp3-Player / Dekoder
-
mpg123
-
splay
-
x11amp ... grafischer mp3-Player ähnlich w*namp, unterstützt
Playlisten, mp3_Infos, Skins ....
x11amp
|
Streaming Audio (Video)
-
die Audio- / Videodaten werden als fließender Strom über das
Netz geleitet
-
lokal wenig Ressourcen erforderlich (außer Puffer)
-
zeitsparend, da nicht das komplette Download abgewartet werden muß
-
Datenfiles enthalten oft nur eine WebAdresse, wo sich das Real-File befindet
Anwendungen |
-
rvplayer ... Real-Player oft als Netscape-Plugin genutzt
|
MIDI
-
(Musical Instrument Digital Interface) entstand 1982 als Ergebnis einer
Kooperation großer Musikinstrumentenhersteller
-
vorerst als Kommunikationssystem zwischen verschiedenen elektronischen
Musikinstrumenten
-
erweitert: 1987 Midi Time Code, 1988 Midifiles
-
prinzipiell besteht Midi-Code aus Statusbytes und Databytes, mit dem Statusbyte
wird eine Aktion angekündigt (Note ein/aus, Anschlagdynamik, Instrument
...) während das/die Databyt(s) den erforderlichen Wert übergeben
-
General Midi beinhaltet eine Reihe von vordefinierten Instrumenten
-
für Soundkarten ohne MIDI existieren Emulatoren, welche MIDI-Files
in WAV umwandeln (TiMidity)
Anwendungen |
-
vkeybd ... einfaches Midi-Keybord für X11
vkeybd
-
playmidi
-
xplaymidi ... sogenannte Sequenzer zum Abspielen von Midi-Files
-
sfxload ... laden von Soundfonts (Instrumentendefinitionen)
-
rosegarden ... Midisequenzer mit Notenblatt
rosegarden
|
3.2 Grafik
Bildbearbeitung
-
einfache Software zum Anzeigen von Bildern ganz verschiedener Formate bis
zur professionellen Bildbearbeitung
-
Formatkonvertierung gif -> jpg, Aufhellen, Gammakorrektur, Ausschneiden,
Einfügen
Anwendungen |
-
convert ... kommandozeilenorientierter Konverter incl. Abschneiden,
Ausschneiden, Farbkorrekturen, animated Gif, ...
-
xv ... o.g. Funktionen mit grafischer Oberfläche
-
gimp ... professionelles Bildbearbeitungssystem
gimp-art-gallery
|
Nutzung eines Scanner
-
mit dem Paket SANE ist die Installation und Nutzung eines Scanner "kinderleicht"
(Voraussetzung: das Modell wird von SANE
unterstützt)
-
Hinweis: zu preiswerten Scannermodellen werden
oft SCSI-Adapter ohne Interrupt geliefert. Der Zugriff erfolgt dann via
Polling was paralleles Arbeiten fast unmöglich macht.
-
SANE bringt Anwendungen als Standalone oder Plugin zu Gimp mit
Anwendungen |
-
xscanimage ... grafisches Frontend zum SANE-Paket
|
3D - Renderer
-
für die Erstellung "virtueller Welten" stehen mehrere Werkzeuge zur
Verfügung
Anwendungen |
-
povray ... ist ein Ray Tracer
-
xfpovray ... grafisches Frontend zu povray
-
blender ... Renderingsoftware mit Bewegungsmöglichkeiten und
gut zu bedienenden grafischen Frontend
BlenderTutorial
|
3.3 Video
-
von animated Gif bis MPEG/4 läßt sich fast alles abspielen
-
Abspielen von Videofiles in verschiedenen Formaten
Hinweis: xanim unterstützt keine
Video Codec Radius Cinepak (*.mov) Lizenzrechtlicher Grund !
-
spezielle Software und Kernelünterstützung für die Wiedergabe
von Video-CD's und CDI's erforderlich, da Sektorengröße nicht
der einer CD-ROM (2048) entspricht
Anwendungen |
-
xanim ... Player für verschiedene animierte Grafikformate
Nachteil: mpeg werden nicht vollständig
Wiedergegeben, Frames werden ausgelassen
-
mpeg_play ... Player für mpeg´s
-
mtv, mtvp ... Player für mpeg´s, Videostreams und Video-CD´s
und (CD-I´s)
-
xreadvcd, xreadcdi ... lesen Video-CD's und liefern einen mpg-Stream
|
3.4 Nachlese
LIRC - Linux Infrared Remote Control
-
auf der Basis weniger Bauelemente läßt sich ein sehr einfacher
Infrarotempfänger basteln
-
Kern der Schaltung ist ein IR-Empfänger welcher eingehende IR-Signale
demoduliert und in Rechteckform bereitstellt
-
Anschluß erfolgt an den serielle Port eines PC
-
Treibersoftware wertet die eingehenden Signale (Interrupts) aus und analysiert
anhand der Zeitdifferenzen den Fernbedienungscode
-
Empfängerschaltung
-
Datenblatt SFH 506
-
Senderschaltung
Voodoo-Hardware
-
das ältere PHIGS (Programmers Hierarchical Interactive Graphics System)
konnte den aktuellen Anforderungen nicht mehr standhalten, als neuer de
facto Standart trat OpenGL an dessen Stellen
-
OpenGL gibt es zwar schon ein paar Jahre für Linux, aber die Geschwindigkeit
war bisher nicht überzeugend
-
mit Mesa wird eine freie 3D-Bibliothek verfügbar, welche fast alle
OpenGL-Funktionen implementiert, vollständige Implementationen sind
kommerziell
-
Testergebnisse aus iX12/98
-
OpenGL-Test viewperf liefert auf 300er AMD-K6 2 mit Voodoo2 schlechtere
Ergebnisse als reiner X-Server
-
Voodoo1 war um 2-3x schneller
-
gltest von Mesa zeigte bei Linien und Dreiecken Steigerungen bis 1000fach
-
Resultat
-
Wunder sind nicht zu erwarten
-
Hersteller von 3Dfx-Karten haben bereits Unterstützung für Linux
angekündigt
-
Anwendungen für OpenGL
-
VRML - Viewer
-
Spiele (Quake)
4. Ausblicke und Trends
-
die Anzahl von Softwareprojekten und Anwendungen nimmt ständig zu
(Sound- und
Midiarchiv)
-
Ausgewählte (einige) Softwarepakete sind mit kommerziellen Produkten
vergleichbar
-
Hardwareunterstützung für exotische bzw. sehr teure Hardware
ist noch nicht gegeben
Quellen
Andreas Heik
TU-Chemnitz
Universitätsrechenzentrum
Gruppe Anwendungen
22.02.98