2 Punkte von GN⁺ 2024-09-25 | 2 Kommentare | Auf WhatsApp teilen

Winamp

Einführung

  • Winamp ist ein 1997 veröffentlichter Multimedia-Player, der für seine Kompatibilität mit verschiedenen Audioformaten und seine Flexibilität bekannt ist
  • Entwickelt wurde er von Nullsoft und erfreute sich bei Millionen von Nutzern großer Beliebtheit
  • Die Entwicklung war eine Zeit lang eingestellt, doch nun wurde der Quellcode veröffentlicht, sodass die Community den Player verbessern und modernisieren kann

Verwendung

  • Der Build des Winamp-Desktop-Clients basiert derzeit auf Visual Studio 2019 (VS2019) und der Intel-IPP-Bibliothek
  • Es gibt mehrere Möglichkeiten, Winamp zu bauen
    1. Mit der Skriptdatei build_winampAll_2019.cmd werden vier Versionen für x86/x64 (Debug und Release) gebaut. In diesem Fall wird die Visual-Studio-IDE nicht gestartet
    2. Mit der Datei winampAll_2019.sln kann in der Visual-Studio-IDE gebaut und debuggt werden

Abhängigkeiten

  • Mit der Skriptdatei build_winampAll_2019.cmd werden vier Versionen für x86/x64 (Debug und Release) gebaut. In diesem Fall wird die Visual-Studio-IDE nicht gestartet
  • Mit der Datei winampAll_2019.sln kann in der Visual-Studio-IDE gebaut und debuggt werden
libvpx
libmpg123
OpenSSL
  • Es muss openssl-1.0.1u verwendet werden
  • Zum Bauen der statischen Version der Bibliothek build_vs_2019_openssl_x86.cmd und build_vs_2019_openssl_64.cmd ausführen
  • Für den Build von OpenSSL müssen 7-Zip, NASM und Perl installiert sein
DirectX 9 SDK
  • Das DirectX 9 SDK (Juni 2010) wird von Microsoft bezogen, angepasst und als Archiv verpackt
  • Zum Entpacken unpack_microsoft_directx_sdk_2010.cmd ausführen
Anpassung der Microsoft-ATLMFC-Bibliothek
  • In der Datei C:\Program Files (x86)\Microsoft VisualStudio\2019\Community\VC\Tools\MSVC\14.24.28314\atlmfc\include\atltransactionmanager.h die Zeile 427 von return ::DeleteFile((LPTSTR)lpFileName); in return DeleteFile((LPTSTR)lpFileName); ändern
Intel IPP 6.1.1.035
  • Intel IPP 6.1.1.035 beziehen, anpassen und als Archiv verpacken
  • unpack_intel_ipp_6.1.1.035.cmd ausführen, um das Archiv zu entpacken

Zusammenfassung von GN⁺

  • Winamp wird wegen seiner Kompatibilität mit verschiedenen Audioformaten weiterhin von vielen Nutzern geschätzt
  • Die Veröffentlichung des Quellcodes gibt der Community die Möglichkeit, den Player zu verbessern und zu modernisieren
  • Der Build ist mit Visual Studio 2019 und verschiedenen Bibliotheken möglich, wobei mehrere Abhängigkeiten verarbeitet werden müssen
  • Andere Multimedia-Player mit ähnlichem Funktionsumfang wie Winamp sind VLC Media Player und foobar2000

2 Kommentare

 
wedding 2024-09-25

Wenn man sich das Thema ansieht, gibt es wohl viel Diskussion um die Lizenz.

 
GN⁺ 2024-09-25
Hacker-News-Kommentare
  • Es werden Fragen dazu aufgeworfen, wie man zu dem Projekt beitragen kann

    • Lizenzklausel 4 empfiehlt, Verbesserungen, Erweiterungen und Bugfixes zum Projekt beizusteuern
    • Klausel 5 verbietet jedoch Forks des Codes oder die Verbreitung modifizierter Versionen
    • Der übliche GitHub-Workflow würde damit gegen die Lizenz verstoßen
    • Derzeit ist es am besten, sich nicht an dem Projekt zu beteiligen
    • Bei einer Änderung der Lizenz will man erneut nachsehen
  • Erinnerungen an Justin Frankel in #mpeg3 auf EFNet

    • Es wurden Skins und ein Tray-Icon für die App erstellt
    • Der Name ist in den Credits enthalten
  • DMCA-Anfragen und Urheberrechtsprobleme

    • Es werden wohl viele DMCA-Anfragen an GitHub eingereicht werden müssen
    • Forks sind eine Grundfunktion von GitHub
    • Die Lizenz erlaubt keine Forks
    • Es besteht das Risiko, das Urheberrecht zu verlieren
    • Ein Gericht würde wohl auf einem starken Schutz der Rechte bestehen
    • Die GitHub-Nutzererfahrung würde sich verschlechtern
  • Persönliche Geschichte mit Winamp

    • Früher wurde ein beliebtes Plugin geschrieben
    • Der Quellcode von Winamp 3 wurde vollständig in C++ neu geschrieben
    • Der ursprüngliche Quellcode wurde von Justin Frankel in C geschrieben
  • MP3-Party im College 1999

    • Statt eines CD-Wechslers wurden MP3s verwendet
    • Mit Winamp wurde Musik zufällig abgespielt
    • Die Musik riss nicht ab und die Party konnte genossen werden
    • Danke an Winamp
  • Verwirrendes Open Sourcing

    • Das Open Sourcing der Software ist äußerst verwirrend
  • Einfacher Musik-Player

    • Er hat eine einfachere Oberfläche als die Konkurrenz
    • Er erfüllt seine Funktion ohne unnötige Grafik
  • Verzerrung des Begriffs „Open“

    • Die Lizenzbedingungen erlauben keine Weiterverbreitung oder den Weiterverkauf
    • Es ist richtiger, dies nicht „Open Source“, sondern „Source Available“ zu nennen
  • Illegale Weitergabe der SHOUTcast-Server-Software

    • Im Repository befindet sich rechtswidrig geteilter Code