SDL steht für "Simple Directmedia Layer". Es handelt sich um eine Programm-Bibliothek zum erstellen von Multimedia-Software und Spielen.

Die SDL unterstützt Zugriff auf

Die libSDL ist in C geschrieben, aber es gibt auch Anbindungen für viele andere Sprachen.

Homepage: http://www.libsdl.org/

Wiki: http://www.libsdl.org/cgi/docwiki.cgi/ (Dokumentation)

Lizenz: LGPL

Tipps & Tricks

Wikibook (deutsch): http://de.wikibooks.org/wiki/SDL

MPEG/AVI-Support: http://svn.mplayerhq.hu/ffmpeg/trunk/ffplay.c?view=markup (FFMPEG-Libs)

als Anwender

Auch als einfacher Anwender ohne Programmiererfahrung kann man einiges bei SDL-Programmen ausrichten. Auf die SDL kann man über verschiedene Umgebungsvariablen Einfluss nehmen. Also bei allen Programmen (Spielen), die die SDL verwenden.

Normalerweise sucht sich die SDL selber das "beste" Ausgabegerät aus. Will man aber eine bestimmte Ausgabe mal ausprobieren, kann man die Ausgabemethode über die Umgebungsvariablen SDL_VIDEODRIVER bzw. SDL_AUDIODRIVER festlegen.

mögliche Werte:

SDL_VIDEODRIVER
SDL_AUDIODRIVER
  • alsa - ALSA

  • dsp - OSS (/dev/dsp)
  • dma - OSS mit DMA Zugriff
  • audio - /dev/audio
  • esd - ESound Audio Daemon
  • artsc - ARTS Audio Daemon
  • dummy - keine Sound-Ausgabe

Wird das gewählte Ausgabe-Gerät nicht unterstützt, bricht das Programm idR. mit einer Fehlermeldung ab.

Wenn das Programm in einem Fenster startet, kann man die Variable SDL_VIDEO_CENTERED setzen. Dann wird das Fenster zentriert.

Besipiel:

export SDL_VIDEO_CENTERED=ja

Es gibt noch viele weitere Umgebungsvariablen, die man verwenden kann.

Mini-Howto

Die SDL stellt nur sehr grundlegende Funktionen zur Verfügung; gerade genug, um die Besonderheiten der darunterliegenden System-Aufrufe zu abstrahieren. Wenn man seine Programme mit der SDL programmiert, sind sie dadurch aber sehr flexibel und portierbar. Die Grafik-Ausgabe funktioniert zB. nicht nur unter X11, sondern auch mit dem FrameBuffer oder der alten libSVGA, ja eventuell sogar als AsciiArt Ausgabe... und unter Windows und Macs...

Dadurch, dass nur die grundlegendsten Funktionen zur Verfügung gestellt werden, ist die Bibliothek auch relativ klein. Für zusätzliche Funktionalität gibt es viele einzelne Zusatz-Bibliotheken; zum Beispiel SDL_image um Bilder von verschiedenen Grafikformaten zu lesen, SDL_ttf um Text auszugeben, SDL_mixer um Töne zusammen zu mischen, und viele mehr...


KategorieLinuxMultimedia KategorieSpiele

SDL (zuletzt geändert am 2007-12-23 22:46:58 durch localhost)