www.wikidata.de-de.nina.az
mpg123 ist ein freier Audioplayer an der Kommandozeile fur MPEG 1 Audio Die unterstutzten Formate sind die MPEG 1 Layer 1 2 und 3 letzteres ist bekannt als MP3 Sein Name begrundet sich in der Unterstutzung dieser drei Formate Er gehort zu den verbreitetsten MP3 Playern und viele weitere Projekte nutzen dessen Code mpg123Konsolenausgabe von mpg123 beim Abspielen einer mp3 Datei BasisdatenEntwickler Michael Hipp Thomas Orgis Oliver Fromme Nicholas HumfreyErscheinungsjahr 1999Aktuelle Version 1 32 3 1 2 Oktober 2023 Betriebssystem Unixoides System Windows macOSProgrammiersprache C AssemblerspracheKategorie DecoderLizenz LGPLdeutschsprachig neinmpg123 de Inhaltsverzeichnis 1 Funktion und Eigenschaften 1 1 Benotigte Rechenleistung 1 2 Technische Eigenschaften 1 3 Weitere Eigenschaften 2 Geschichte 3 Lizenz und Patente 4 Verbreitung und Varianten 5 Weblinks 6 EinzelnachweiseFunktion und Eigenschaften Bearbeitenmpg123 dient dazu im MPEG 1 Audio Format vorliegende Daten zu dekomprimieren und gegebenenfalls auszugeben Dies bedeutet dass das Programm als kommandozeilenbasierter Abspieler fur Musik dienen kann Durch seine Optionen kann es jedoch auch als Dekomprimierstufe fur andere Programme genutzt werden Benotigte Rechenleistung Bearbeiten mpg123 hat das Ziel die Daten in Echtzeit zu dekodieren und abzuspielen Das heisst das Programm soll schneller dekodieren als der Ton ausgegeben wird Das ermoglicht einen Musiktitel wahrend des Abspielens zu dekodieren Laut Homepage ist dies beispielsweise schon mit einem auf 120 MHz getakteten 80486 Prozessor moglich Auf vielen moderneren Rechnern erzeugt mpg123 eine sehr geringe Systembelastung deshalb kann man mehrere Instanzen von mpg123 gleichzeitig ausfuhren um beispielsweise verschiedene Raume zu beschallen Mixerprogramme wie dermixd nutzen mehrere Instanzen von mpg123 um eine sanfte Uberblendung sogenanntes Crossfading zwischen zwei Musiktiteln zu implementieren Daruber hinaus hat mpg123 speziell optimierten Code fur 80386 80486 Pentium AltiVec MMX und 3DNow Auf Systemen mit solchen Architekturen kann daher ein Geschwindigkeitsgewinn erreicht werden Sollte die Rechenleistung fur eine bestimmte Nutzung nicht genugen kann man das eingebaute 2 1 und 4 1 Downsampling nutzen welches die Samplingrate der Ausgabe auf die Halfte oder ein Viertel reduziert um eine hohere Geschwindigkeit zu erzielen Technische Eigenschaften Bearbeiten Das Programm lauft auf diversen Unix Betriebssystemen Offiziell unterstutzt werden Linux FreeBSD SunOS 4 1 3 Solaris 2 5 HP UX 9 x IRIX und seit neuerem auch macOS und Cygwin Unix Schicht fur Windows Weitere Portierungen auf Windows 2 und Mac OS X 3 existieren Ebenso werden viele verschiedene Gerate zur Ausgabe des Tons unterstutzt Ausserdem beherrscht aber mpg123 auch die Variante die dekodierten Daten an der Standardausgabe auszugeben So konnen die Daten von einem anderen Programm weiterverarbeitet werden Die Daten konnen auch als WAV in eine Datei oder roh auf die Standardausgabe geschrieben werden mpg123 nutzt normalerweise Gleitkommaarithmetik fur die mathematischen Berechnungen kann jedoch auch fur die Nutzung von Festkommaarithmetik kompiliert werden Dies unterscheidet mpg123 beispielsweise von MAD welches immer Festkommaarithmetik nutzt In vielen modernen Desktopprozessoren ist Gleitkommaarithmetik fest eingebaut und kann damit schnell verarbeitet werden Auf Prozessoren fur PDAs kann jedoch mit Festkommaarithmetik eine hohere Ausfuhrungsgeschwindigkeit erreicht werden Weitere Eigenschaften Bearbeiten Die MPEG Spezifikation legt Bedingungen fest unter denen die Wiedergabe eines Dekoders als korrekt bezeichnet werden kann Dazu wird die Abweichung der dekodierten Ausgabe zur Referenz gemessen Diese Abweichungen durfen einen bestimmten Wert nicht uberschreiten um die Bedingungen fur die korrekte Wiedergabe nicht zu verletzen Durch Tests 4 wurde gezeigt dass mpg123 diese Anforderungen erfullt Pausenfreie Wiedergabe sogenanntes Gapless Playback bedeutet dass zwischen abgespielten Titeln keine Pause horbar ist Das MP3 Format speichert die Daten jedoch in Abschnitten Frames so dass die Titellange des Musikstucks nicht unbedingt der Summe der Lange der einzelnen Frames entsprechen muss Zudem benotigt der zugrundeliegende Algorithmus zusatzliche Lange zur korrekten Wiedergabe Daher werden zusatzliche Informationen zum korrekten Beginn und Ende des Musikstucks benotigt um Gapless Playback zu realisieren mpg123 wertet dafur Informationen von LAME aus Auch wertet es die ID3 Tags aus und gibt die so gewonnenen Informationen auf der Konsole aus Replay Gain wird ebenfalls unterstutzt mpg123 nimmt auch wahrend des Dekodierens Tastaturbefehle an Es gibt aber auch eine weitere Steuerungs Schnittstelle uber Standardein und ausgabe mit welcher die Musikausgabe gesteuert werden kann Einige Bedienoberflachen nutzen diese Funktionalitat Geschichte Bearbeitenmpg123 wurde von Michael Hipp 1995 als Weiterentwicklung des mpegaudio Pakets begonnen Mit der Zeit kamen Beitrage weiterer Programmierer hinzu hauptsachlich optimierte Dekodierroutinen fur verschiedene Prozessorarchitekturen Beginnend 2001 reduzierte sich die Aktivitat der Weiterentwicklung an mpg123 nachdem zuvor mehrere Versionen in der 0 59 Reihe herausgebracht worden waren Da mit der Zeit mehrere schwere Sicherheitslucken bekannt wurden 5 entwickelten die Linux Distributionen Debian ausgehend von mpg123 0 59r und Gentoo ausgehend von mpg123 0 59s Patches zur Behebung dieser Sicherheitslucken Michael Hipp wies Anfang 2005 auf diese Probleme hin und riet von der Nutzung der offiziellen aber ungepflegten Version ab Neben diesen Varianten wurden von diversen Autoren Weiterentwicklungen als Patches angeboten Im April 2005 startete Nicholas Humfrey ein Projekt auf SourceForge Er veroffentlichte eine Version namens mpg123 gpl basierend auf der Version 0 59 und den Debian Patches Als Weiterentwicklung implementierte er die Nutzung von GNU Autoconf und portierte das Projekt auf Mac OS X Unabhangig davon entwickelte Thomas Orgis 2005 mehrere Versionen von mpg123 thor die basierend auf Version 0 59r einige frei verfugbare Patches einarbeitete darunter die Debian Sicherheitspatches Daruber hinaus wurde die Kontrollschnittstelle fur Frontends uberarbeitet 6 Diese beiden Projekte begannen Ende 2005 zusammenzuarbeiten Mit der Zustimmung von Michael Hipp entwickelten sie die neue offizielle Version von mpg123 Nach mehreren Beta Versionen erschien so am 29 August 2006 die Version 0 60 von mpg123 Das Datum wurde symbolisch gewahlt eines der MP3 betreffenden Patente lief an dem Tag in Deutschland aus 7 Lizenz und Patente BearbeitenAb der Version 0 60 ist mpg123 unter der LGPL lizenziert und erfullt so die Bedingungen fur freie Software und Open Source Zu Beginn seiner Entwicklung wurde mpg123 jedoch noch unter der folgenden Bedingung veroffentlicht free for private use ask me when you want to do something commercial Die Einschrankungen fur die kommerzielle Nutzung vertragen sich jedoch nicht mit den Grundgedanken fur freie Software Viele Linux Distributionen setzten mpg123 daher in eine non free Sektion oder verzichteten ganz auf diese Software Aufgrund dieser Situation entwickelte Joe Drew 1999 ein Skript um mpg123 fur die Nutzung in FreeAmp zu ersetzen Er entschied sich 2001 daraus einen kompletten Ersatz namens mpg321 zu entwickeln der sowohl vollkommen kompatibel zu mpg123 als auch freie Software sein sollte 8 Michael Hipp anderte bei spateren Veroffentlichungen von mpg123 die Lizenz auf GPL und die Lizenz der mpglib auf LGPL Damit wurde das Programm freie Software der Bedarf fur eine freie Alternative entfiel Mit dem Release der Version 0 60 anderten die neuen Projektleiter die Lizenz fur das gesamte Paket auf LGPL Die Fraunhofer Gesellschaft und Thomson halten eine ganze Reihe von Softwarepatenten rund um Techniken zur Nutzung des MP3 Formats 7 Laut eigener Aussage verlangen sie jedoch keine Lizenzgebuhren von kostenlosen Decodern Zudem ist ein Teil dieser Patente bereits abgelaufen 9 Verbreitung und Varianten BearbeitenSeit der Veroffentlichung der Version 0 60 wird mpg123 taglich rund hundert Mal von Sourceforge heruntergeladen 10 Hinzu kommen die Moglichkeit das Programm direkt von der Projektseite herunterzuladen Auch ist es in den wichtigsten Linux Distributionen enthalten Michael Hipp erstellte 1998 eine Java Variante unter dem Namen jmpg123 Diese Variante kam jedoch nie uber die Version 0 1 hinaus Von dem Programm gibt es eine Windows Portierung 2 mpg123 oder Codebestandteile davon wurden in vielen weiteren Projekten als Decoder fur MP3 eingesetzt beispielsweise XMMS MPlayer LAME Xine und als Plugin fur Winamp Weblinks BearbeitenOffizielle Homepage des Projekts englisch Projektseite auf SourceForge net englisch Projektseite bei Freshmeat englisch Einzelnachweise Bearbeiten Releasing mpg123 version 1 32 3 a b Windows Variante von mpg123 Memento vom 15 Marz 2007 im Internet Archive japanisch abgerufen am 18 November 2011 Variante von mpg123 fur Mac OS X underbit com CVE 2004 0991 Buffer Overflow CVE 2006 1655 Webseite von mpg123 thor Memento des Originals vom 13 Oktober 2006 im Internet Archive nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot thomas orgis org a b Liste der MP3 betreffenden Patente Projektseite von mpg321 Aussage vom Projektleiter zu den Patenten Downloadstatistik von mpg123 bei Sourceforge Abgerufen von https de wikipedia org w index php title Mpg123 amp oldid 217234179