2 points par GN⁺ 2024-09-25 | 2 commentaires | Partager sur WhatsApp

Winamp

Présentation

  • Winamp est un lecteur multimédia lancé en 1997, réputé pour sa compatibilité avec de nombreux formats audio et sa flexibilité
  • Développé par Nullsoft, il a connu une grande popularité auprès de millions d'utilisateurs
  • Son développement avait été interrompu pendant un temps, mais le code source est désormais publié, permettant à la communauté d'améliorer et de moderniser le lecteur

Utilisation

  • La compilation du client desktop Winamp repose actuellement sur Visual Studio 2019 (VS2019) et les bibliothèques Intel IPP
  • Il existe plusieurs façons de compiler Winamp
    1. Utiliser le script build_winampAll_2019.cmd pour compiler 4 versions x86/x64 (debug et release). Dans ce cas, l'IDE Visual Studio ne se lance pas
    2. Utiliser le fichier winampAll_2019.sln pour effectuer la compilation et le débogage dans l'IDE Visual Studio

Dépendances

  • Utiliser le script build_winampAll_2019.cmd pour compiler 4 versions x86/x64 (debug et release). Dans ce cas, l'IDE Visual Studio ne se lance pas
  • Utiliser le fichier winampAll_2019.sln pour effectuer la compilation et le débogage dans l'IDE Visual Studio
libvpx
libmpg123
  • libmpg123 est récupéré depuis https://www.mpg123.de/download.shtml, puis modifié et empaqueté sous forme d'archive
  • Exécuter unpack_libmpg123.cmd pour traiter les fichiers dll
OpenSSL
  • Il faut utiliser openssl-1.0.1u
  • Exécuter build_vs_2019_openssl_x86.cmd et build_vs_2019_openssl_64.cmd pour compiler la version statique des bibliothèques
  • Pour compiler OpenSSL, il faut installer 7-Zip, NASM et Perl
DirectX 9 SDK
  • Le DirectX 9 SDK (juin 2010) est récupéré depuis Microsoft, puis modifié et empaqueté sous forme d'archive
  • Exécuter unpack_microsoft_directx_sdk_2010.cmd pour le décompresser
Correctif de la bibliothèque Microsoft ATLMFC
  • Dans le fichier C:\Program Files (x86)\Microsoft VisualStudio\2019\Community\VC\Tools\MSVC\14.24.28314\atlmfc\include\atltransactionmanager.h, modifier la ligne 427 de return ::DeleteFile((LPTSTR)lpFileName); en return DeleteFile((LPTSTR)lpFileName);
Intel IPP 6.1.1.035
  • Intel IPP 6.1.1.035 est récupéré, puis modifié et empaqueté sous forme d'archive
  • Exécuter unpack_intel_ipp_6.1.1.035.cmd pour le décompresser

Résumé de GN⁺

  • Winamp reste apprécié par de nombreux utilisateurs grâce à sa compatibilité avec divers formats audio
  • La publication du code source offre à la communauté l'occasion d'améliorer et de moderniser le lecteur
  • Il peut être compilé avec Visual Studio 2019 et plusieurs bibliothèques, en gérant diverses dépendances
  • Parmi les autres lecteurs multimédia offrant des fonctionnalités similaires à Winamp figurent VLC Media Player et foobar2000

2 commentaires

 
wedding 2024-09-25

À voir le problème, il semble y avoir beaucoup de discussions autour de la licence.

 
GN⁺ 2024-09-25
Avis Hacker News
  • Questions sur la manière de contribuer au projet

    • La clause 4 de la licence encourage à contribuer au projet avec des améliorations, des perfectionnements et des correctifs de bugs
    • Mais la clause 5 interdit les forks du code ou la distribution de versions modifiées
    • Le workflow GitHub standard enfreint donc la licence
    • Le mieux est de ne pas participer au projet pour le moment
    • Je vérifierai à nouveau si la licence change
  • Souvenirs de Justin Frankel sur #mpeg3 sur EFNet

    • J’ai créé des skins et une icône de zone de notification à utiliser dans l’application
    • Mon nom figure dans les crédits
  • Requête DMCA et problèmes de droits d’auteur

    • Il faudra probablement soumettre beaucoup de requêtes DMCA à GitHub
    • Les forks sont une fonctionnalité de base de GitHub
    • La licence n’autorise pas les forks
    • Il y a un risque de perdre les droits d’auteur
    • Le tribunal exigera probablement une protection stricte des droits
    • L’expérience utilisateur sur GitHub va se dégrader
  • Histoire personnelle avec Winamp

    • J’ai écrit par le passé un plugin populaire
    • Le code source de Winamp 3 a été entièrement réécrit en C++
    • Le code source d’origine avait été écrit en C par Justin Frankel
  • Soirée MP3 à l’université en 1999

    • Utilisation de MP3 au lieu d’un changeur de CD
    • Lecture aléatoire de la musique avec Winamp
    • La musique ne s’interrompait pas et la fête continuait
    • Merci à Winamp
  • Un open sourcing déroutant

    • L’open sourcing du logiciel est très déroutant
  • Un lecteur de musique simple

    • Il offre une interface plus simple que ses concurrents
    • Il fait le travail sans graphismes superflus
  • Détournement du terme « open »

    • Les conditions de licence n’autorisent ni la redistribution ni la revente
    • Il serait plus juste de parler de « source available » plutôt que d’« open source »
  • Partage illégal du logiciel serveur SHOUTcast

    • Le dépôt contient du code partagé illégalement