# Mediaplayer

Der Mediaplayer (englisch für Medienspieler oder Medienabspieler) ist ein Gattungsbegriff für eine Gruppe von Computerprogrammen. Mit derartigen Programmen können Medieninhalte – wie Video- und Audiodaten oder seltener auch einzelne Bilder oder Grafiken – mit einem Computer wiedergegeben werden.
Diese Programme lassen sich oft nicht eindeutig von ähnlichen Anwendungen – wie beispielsweise einem Audioplayer, Videoplayer, Streaming-Client oder einem Bildbetrachter – abgrenzen.

## Prinzip und Funktionsumfang

Mediaplayer sind Computerprogramme, die Daten von verschiedenen Quellen einlesen, dekodieren und dann als unkomprimierte digitale Daten an eine Ausgabeeinheit weiterleiten. Die Steuerung und Oberfläche bzw. Bedienung ist oft sehr verschieden; in vielen Produkten können auch diverse Filter zwischengeschaltet werden, die Zugriff auf das unkomprimierte Signal haben und darauf verschiedenste Operationen ausführen können. Viele Player bieten auch die Möglichkeit der Organisation von Multimedia-Inhalten.
Beispiele sind die Wiedergabe einer DVD und das Abspielen von MP3- oder CD-Audio.
Abgesehen von spezialisierten oder bewusst einfachen Playern bedienen sie sich oft einer modularen Plug-in-Architektur, um möglichst flexibel zu sein. Diese Plug-ins arbeiten in einer Kette, die aufgrund der Benutzereinstellungen programmintern zusammengebaut wird. Der Benutzer kann dabei stets auf die einzelnen Komponenten zugreifen und ihnen Befehle geben. Im Folgenden wird genauer auf die einzelnen Funktionalitäten eingegangen.

### Organisation

* Laden von Dateinamen und URLs in eine Wiedergabeliste: Das ist Standard; der Benutzer kann dabei Quellen angeben und diese eintragen lassen. Diese werden dann je nach Wunsch der Reihe nach oder zufällig abgespielt. Zum Starten der Wiedergabe kann man einfach einen Eintrag anklicken.
* Verwalten und Speicherung verschiedener Abspiellisten: Meist merken sich Mediaplayer die zuletzt in der Abspielliste befindlichen Quellen. Diese Listen können auch abgespeichert werden; beim Aufrufen dieser Listen in einem Dateibrowser wird der Medienplayer gestartet und die enthaltenen Einträge in die Abspielliste angefügt. Manche Player bieten auch die Möglichkeit, mehrere Abspiellisten getrennt zu verwalten.
* Verwaltung der gesamten Multimedia-Sammlung: Mediaplayer, die möglichst viele Funktionen unterstützen wollen, können auch angegebene Verzeichnisse nach Multimedia-Daten durchsuchen, die enthaltenen Metadaten auslesen und sie in eine eigene Multimedia-Sammlung einfügen. Diese Sammlung kann nach zahlreichen Kriterien durchsucht werden; man kann ausgewählte Quellen auch in die Abspielliste übertragen. Oft werden auch zahlreiche Zusatzdaten gespeichert, wie z. B. wie oft die Quelle schon gespielt wurde, wie sie beurteilt wurde und dergleichen. Im Hintergrund versucht der Player, diese Multimedia-Sammlung auf Stand zu halten, wenn neue Dateien hinzugefügt oder verändert werden.

### Einlesen

* Aus dem Dateisystem: Hier werden Dateien von Datenträgern, z. B. von einer Festplatte, Disketten aller Art, USB-Massenspeichern und dergleichen eingelesen. In Unix-ähnlichen Betriebssystemen können Dateien im virtuellen Dateisystem auch auf anderen Rechnern liegen; der Datentransport erfolgt hier transparent.
* Externe bzw. analoge Eingänge: Es können Daten vom Line-in- bzw. AUX-Eingang der lokalen Soundkarte eingelesen werden, also z. B. von angeschlossenen Mikrofonen oder MIDI-fähigen Instrumenten wie z. B. Keyboards.
* Von eingebauten Geräten: Übliche Quellen wären hier das im Rechner eingebaute CD- oder DVD-Laufwerk, das Daten vom eingelegten Datenträger liefert. Andere Fälle wären z. B. das Empfangen von Fernsehsendungen über eine TV-Karte oder die Live-Übertragung der Daten von einer über FireWire angeschlossenen digitalen Videokamera.
* Über Netzwerk von anderen Rechnern: Das ist als Streaming bekannt und bezeichnet zumeist die Live-Übertragung von Inhalten über spezialisierte Netzwerk-Protokolle wie SHOUTcast, Icecast, RTP/RTCP/RTSP, VideoLAN oder RealMedia. Es können jedoch auch nicht speziell für ausgelegte Dateien – wie bei einem normalen Download aus dem Internet – über die üblichen HTTP- oder FTP-Protokolle geladen und dann, so gut es geht, live abgespielt werden.

### Dekodieren/Dekomprimieren

* Unterstützung verschiedener Container- und Audio/Video-Formate: Multimedia-Daten sind oft in spezielle Container eingepackt, die je nach Einsatzzweck und Verbreitung bzw. Zielpublikum gewählt werden. Ähnlich ist es bei den im Container enthaltenen Audio- und/oder Video-Daten.
    Container enthalten üblicherweise Metadaten über die enthaltenen Daten, wie z. B. Synchronisationsdaten (Timecodes) für die Audio/Video-Synchronisierung, welche Sprachen zum Videomaterial enthalten sind und die üblichen Daten über Interpret, Titel, Album usw. Moderne Container können Audio- und Videodaten in verschiedenster Kombination und Anzahl enthalten, sowie DVD-ähnliche Menüs, Untertitel und Kapitelinformationen; es ist auch möglich und Praxis, ganze Container samt Inhalt ineinander zu verpacken.
    Zu erwähnen sind hier die Standard-Containerformate: das veraltete, aber weit verbreitete AVI-Format, das derzeit modernste Matroska-Format, das gut für Streaming geeignete Ogg-Format und die Reihe von MPEG-Containern (MPEG-1, MPEG-2 und MP4). Daneben gibt es noch zahlreiche andere Containerformate.
    Die enthaltenen Daten werden meist komprimiert und das Übriggebliebene in einem speziellen Format kodiert, um möglichst viel Platz zu sparen und es für verschiedene Anwendungszwecke zu optimieren (z. B. für Streamingfähigkeit, Fehlerkorrektur, geringer Rechenaufwand beim Dekodieren). Um die Daten nun zu dekodieren und zu dekomprimieren, wird üblicherweise eine Programmbibliothek – auch oft Codec genannt – benötigt. Die Version zum Betrachten wird immer kostenlos zur Verfügung gestellt und ist leicht zu installieren. Manche Hersteller sind jedoch auch bewusst restriktiv gegenüber der Erweiterbarkeit ihrer Programme, beispielsweise um die eigenen Datenformate zu verbreiten.
    Wichtige Datenformate für Video sind z. B. DivX, Xvid, MPEG-1, MPEG-2, Windows Media, RealMedia, QuickTime, FLV, X264 und Ogg Theora. Im Audiobereich sind die wichtigsten Formate, die unterstützt werden sollten, folgende: MP3, Wave-Rohdaten, Ogg Vorbis, AAC und evtl. Windows Media Audio.
* Auslesen von Metadaten (Tags): Vielen Multimedia-Inhalten liegen Informationen über den Inhalt bei, wie z. B. Titel, Interpret/Künstler/Band, Album, Spurnummer, Sprache oder Komponist. Diese Informationen nennt man Metadaten (griech. meta über etwas, etwas beschreibend) bzw. nach dem englischen Begriff Tags (englisch für Etikett oder Beschriftung). Diese Tags werden, falls vorhanden, üblicherweise statt des Dateinamens oder der URL angezeigt. Jedes Format bzw. jedes Containerformat hat ein eigenes Tag-Format. Das wohl bekannteste Tag-Format ist ID3, das bei MP3-Dateien verwendet wird.
* Mehrkanal-Unterstützung: Unterstützung der wichtigsten Mehrkanal-Formate, z. B. Dolby, AC3, aber auch einfach mehrere parallele Audio-Kanäle innerhalb eines Audio-Containers, z. B. Ogg Vorbis. Die Weiterleitung an Filter- und Ausgabe-Plugins muss korrekt erfolgen und evtl. umgerechnet werden, wenn z. B. nur eine Stereo-Ausgabe zur Verfügung steht oder ein externer digitaler Verstärker (Endstufe) verwendet wird, die Daten in einem verständlichen Mehrkanalformat erwartet.
* Dekodieren in lokal nutzbares Format: Darunter fällt die Expansion von Daten, die in einer variablen Bitrate vorliegen, in ein unkomprimiertes Format mit konstanter Bitrate (RIFF WAVE). Andere Fälle sind die Umsetzung in eine unterschiedliche binäre Zahlenrepräsentation (Big endian, Little endian), eine unterschiedliche Absatzfrequenz oder Größe der Audio-Samples.

### Filter

* Visualisierungen: Das sind grafische Gebilde, die sich im Rhythmus zur Musik bewegen und sich ständig verändern. Oft wechseln auch die Farbe und die Visualisierung untereinander.
* Normalisierung: Das ist eine Anpassung der Lautstärke, so dass alle Lieder gleich laut wiedergegeben werden. Normalisierung kann auf einen bestimmten eingestellten Pegel oder nach enthaltenen Metadaten (z. B. Replay Gain) erfolgen.
* Digitale Signalverarbeitung (DSP): Dazu gehört das Hinzumischen von z. B. Moderator-Ansagen, Einfügen von Überblendungen zwischen Audio-Dateien und Anwenden div. Effekte, z. B. Stimmen entfernen (Karaoke-Modus), Tiefpass, Hochpass, Verzerrungen, dynamischer oder tiefer Bass.
* Vorverstärkung und Audio-Profile: Auch bekannt als Equalizer, kann man hier Audio-Signale je nach Frequenzbereich digital vorverstärken oder abschwächen; oft kann man hier auch verschiedene Audio-Profile auswählen, z. B. Rock, Klassik, Pop oder Techno.

### Ausgabe

* Auf lokale Ausgabegeräte: Der Normalfall ist sicher die lokale Ausgabe auf den Bildschirm und auf eine eingebaute Soundkarte über entsprechende Programmbibliotheken und Treiber, abhängig vom Betriebssystem. Wichtig sind hier die korrekte Nutzung der Fähigkeiten der Geräte und Gerätetreiber (insbesondere Hardwarebeschleunigungen) sowie eine gute Synchronisation zwischen Audio und Video – schließlich gehen Audio und Video über verschiedene Wege, sollen aber so ausgegeben werden, dass der Nutzer die Wiedergabe als gleichzeitig empfindet.
* Ausstrahlung an Streaming-Server: Manchmal auch als Filter-Plugins realisiert, ist es möglich, die Ausgabe auch in ein komprimiertes Format umzuwandeln (encoden) und diese Audio- und/oder Video-Daten an einen zentralen Streaming-Server zu schicken, von wo aus sich potentiell zahlreiche Zuhörer (oder Zuseher) diese Daten in Echtzeit abholen und anhören/ansehen können.
* In das Dateisystem: Diese Standard-Funktionalität erlaubt das Abspeichern der unkomprimierten Audio- und evtl. Video-Daten in das Dateisystem (z. B. auf Festplatte). Das nennt man auch Dumping (englisch abladen), diese Dateien Dumps. Sie dienen oft der Weiterverarbeitung oder Kompression.
* Neukompression: In manchen Fällen kann auch direkt eine Neukompression in ein anderes Format vorgenommen werden (englisch transcoding). Dabei muss der Rechner schnell genug sein, um zumindest in Echtzeit komprimieren zu können. Diese Funktion wird auch oft als Filter-Plug-in realisiert.

### Steuerung

* Verschiedene Benutzeroberflächen: Je nach Einsatzzweck, Zielpublikum und Betriebssystem sind verschiedene Oberflächen verfügbar. Diese reichen von textbasierten über Widget-basierte bis hin zu vollgrafischen oder sogar dreidimensionalen Oberflächen. Oft ist auch eine Ausblendung diverser Elemente möglich, z. B. der Abspielliste, der Visualisierung oder sogar eine Möglichkeit der Größenänderung, wobei dann verschiedene Mengen an Informationen angezeigt werden, z. B. ein Voll-Modus und ein verkleinerter Kompakt-Modus.
* Anpassbares Aussehen (Skins): Bei vollgrafischen Mediaplayern ist ein beliebtes Feature die Unterstützung von Skins. Hier wird das Aussehen (Schriften, Farben, Knöpfe) und evtl. sogar Verhalten der gesamten Oberfläche verändert. Heute gibt es für beinahe jeden Geschmack Skins.
* Alternative Steuerungsmethoden: Zusätzlich zur Bedienung über Tastatur und/oder Maus unterstützen manche Player auch alternative Steuerungsmethoden wie z. B. über Infrarot-Fernbedienungen oder konfigurierbare Tastenkombinationen. Die Nutzung von Multimediatasten auf Internet- bzw. Multimedia-Tastaturen ist mittlerweile weit verbreitet. Oft wird auch die Steuerung über ein Symbol in der Taskleiste angeboten.
* Navigation zwischen und innerhalb von Tonspuren: Wichtig ist natürlich das Springen zwischen verschiedenen Multimedia-Quellen (z. B. zwischen Dateien), aber auch zwischen Kapiteln und zwischen den einzelnen enthaltenen Tonspuren (z. B. zwischen deutsch und englisch).

## Software

Sowohl an proprietärer als auch an freier Software gibt es eine große Auswahl.
| Bezeichnung | Audio | Video | Betriebssystem | Lizenz | Bibliotheks- funktion | Bewertungs- funktion |
| 1by1 | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| AlbumPlayer | Ja | Nein | Windows | proprietär | ? | ? |
| AIMP | Ja | Nein | Windows, Android | proprietär (Freeware) | ? | ? |
| Amarok | Ja | Nein | Linux, Windows (Betaversion), macOS (Betaversion) | GPL | Ja | Ja |
| Aqualung | Ja | Nein | Linux | GPL | ? | ? |
| aTunes | Ja | Nein | macOS, Windows, Linux, Solaris | GPL | ? | ? |
| AVS Media Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| Banshee | Ja | Ja | Linux, macOS, Windows | MIT | Ja | Ja (nur in Bibliothek) |
| BearShare | Ja | Nein | Windows | proprietär | ? | ? |
| Beep Media Player | Ja | Nein | POSIX-kompatible | GPL | ? | ? |
| BS.Player | Ja | Ja | Windows | proprietär | ? | ? |
| Clementine | Ja | Nein | Linux, macOS, Windows | GPL | ? | ? |
| cmus | Ja | Nein | POSIX-kompatible | GPL | Ja | Nein |
| Core Media Player | Ja | Ja | Windows | proprietär (Shareware) | ? | ? |
| DSPlayer | Ja | Ja | Windows | GPL | ? | ? |
| Emat | Ja | Nein | Windows | GPL | ? | ? |
| Evil Player | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| Exaile | Ja | Nein | Linux | GPL | Ja | ? |
| FLV-Media Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| foobar2000 | Ja | Nein | Windows, Android | proprietär (Freeware) | ? | ? |
| GOM Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| GreenForce-Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| HDngn | Nein | Ja | Windows | GPL | ? | ? |
| iMesh | Ja | Ja | macOS, Windows | proprietär | ? | ? |
| IrfanView | Ja | Ja | Windows | proprietär (Freeware für Privatnutzer) | ? | ? |
| IVIVO | Ja | Ja | Linux, Windows, macOS, Palm OS, Symbian OS, Windows Mobile | proprietär (Freeware) | ? | ? |
| iTunes | Ja | Ja | macOS, Windows | proprietär (Freeware) | ? | ? |
| J. River Media Center | Ja | Ja | Windows | proprietär (Shareware) | ? | ? |
| J. River Media Jukebox | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| Jajuk | Ja | Nein | Windows, macOS, Linux | GPL | Ja | Ja |
| jetAudio | Ja | Ja | Windows | proprietär | ? | ? |
| Kaffeine | Ja | Ja | POSIX-kompatible | GPL | Nein | Nein |
| Kantaris Media Player | Ja | Ja | Windows | offener Quellcode (basiert auf VLC) | ? | ? |
| KMPlayer | Ja | Ja | Windows, Linux (Plugin), Android | proprietär (Freeware) | ? | ? |
| Kodi | Ja | Ja | Xbox, Windows, macOS, Linux, FreeBSD, Apple TV, Android | GPL / LGPL | Ja | Nein |
| Liconcomp | Ja | Ja | Windows ab XP | Apache-Lizenz 2.0 | ? | ? |
| LoomTV Player | Ja | Ja | Windows ab XP, macOS | proprietär (Freeware) | ? | ? |
| MediaMonkey | Ja | Ja | Windows, Android | proprietär (Freeware) | Ja | Ja |
| Media Player Classic | Ja | Ja | Windows | GPL | ? | ? |
| Metro | Ja | Nein | Android (über F-Droid) | GPLv3.0 | Ja | Ja |
| Miro Media Player | Ja | Ja | Windows, macOS, Linux, FreeBSD | GPL | Ja | Nein |
| mufin player | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| Music Player Daemon | Ja | Nein | Linux | GPL | ? | ? |
| MPlayer | Ja | Ja | POSIX-kompatible, macOS, Windows | GPL | Nein | Nein |
| Mpxplay | Ja | Nein | DOS, Windows | GPL | ? | ? |
| MusikCube | Ja | Nein | Windows | GPL | ? | ? |
| MX Player | Ja | Ja | Android | proprietär (freeware) | Ja | Nein |
| Napster | Ja | Nein | Windows | proprietär | ? | ? |
| Nero ShowTime | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| Ogle | Nein | Ja | POSIX-kompatible | GPL | ? | ? |
| Phonograph plus | Ja | Nein | Android (über F-Droid) | GPLv3.0 | Ja | Ja |
| PotPlayer | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| PowerDVD | Ja | Ja | Windows | proprietär | ? | ? |
| QuickTime Player | Ja | Ja | macOS, Windows | proprietär (Freeware) | ? | ? |
| Quintessential Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |
| RealPlayer | Ja | Ja | Linux, Windows, macOS, Palm OS, Symbian OS, Windows Mobile, Android | proprietär (Freeware) | ? | ? |
| Rhythmbox | Ja | Nein | POSIX-kompatible | GPL | Ja | Nein |
| Silverjuke | Ja | Nein | macOS, Windows, Linux | GPL | Ja | Ja |
| SMPlayer | Ja | Ja | Linux, macOS, Windows | GPL | Nein | Nein |
| Songbird | Ja | Ja | Linux (nicht mehr unterstützt), macOS, Windows | GPL | ? | ? |
| Spider Player | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| SPMediaPlayer | Ja | Ja | Linux, macOS, Windows | proprietär (Freeware) | ? | ? |
| SysTrayPlay | Ja | Nein | Windows | GPL | ? | ? |
| Teen Spirit | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| Tomahawk | Ja | Nein | Linux, macOS, Windows | GPL | Ja | Ja |
| Gnome Videos | Ja | Ja | POSIX-kompatible | GPL | Ja | Nein |
| Tray Player | Ja | Nein | Windows | proprietär | ? | ? |
| Veron | Ja | Ja | Windows | Freeware | ? | ? |
| Vinyl Music Player | Ja | Nein | Android (über F-Droid) | GPLv3.0 | Ja | Ja |
| VISh4 media player | Ja | Ja | Linux, Windows, | proprietär (Freeware) | ? | ? |
| VLC media player | Ja | Ja | Linux, Unix, Windows, macOS, BeOS, BSD | GPL | Ja | Nein |
| Winamp | Ja | Ja | Windows, AmigaOS (dort Amiamp), MacOS (dort Macamp) | proprietär | Ja | ? |
| Windows Media Player | Ja | Ja | Windows, macOS, Windows Mobile | proprietär (Freeware) | Ja | Ja |
| WinDVD | Nein | Ja | Windows | proprietär | ? | ? |
| Xine | Ja | Ja | Linux, FreeBSD, Solaris, IRIX, macOS | GPL | Nein | Nein |
| Xion Audio Player | Ja | Ja (Skinbedingt) | Windows | GPL | Ja | Nein |
| XMMS | Ja | Nein | POSIX-kompatible | GPL | ? | ? |
| XMPlay | Ja | Nein | Windows | proprietär (Freeware) | ? | ? |
| XULPlayer | Ja | Ja | Windows | offener Quellcode | ? | ? |
| Yahoo! Music Jukebox (früher MusicMatch Jukebox) | Ja | Nein | Windows | proprietär | ? | ? |
| Zero MusicPlayer | Ja | Nein | Windows | proprietär | ? | ? |
| Zinf | Ja | Nein | Linux, Windows | GPL | ? | ? |
| Zoom Player | Ja | Ja | Windows | proprietär (Freeware) | ? | ? |