Winamp Goes Open-Source: Desktop Version’s Code Now Available
Llama Group has unveiled the source code of the multimedia player Winamp. Crafted in C++, this code leverages dependencies such as Qt, libvpx, libmpg123, OpenSSL, and the DirectX 9 SDK. The program’s compilation is supported exclusively for the Windows platform and necessitates the Visual Studio 2019 compiler, along with Intel IPP libraries version 6.1.1.035. The open-source code is distributed solely for the desktop version of the application, while versions for macOS, Android, and iOS remain proprietary.
Despite declarations of intent to transition the project to an open development model, the published code is disseminated under the proprietary WCL (Winamp Collaborative License). This license imposes constraints upon developers: they are obliged to submit any changes, enhancements, and fixes to the project’s official repository. Modifications without contributing to the main repository are permitted only for personal use. The creation of forks and distribution of modified versions of Winamp are prohibited, thereby limiting the possibilities for developers wishing to alter the program’s code.
The principal Winamp repository is hosted on GitHub; however, the restrictions delineated in the WCL license present a quandary, as the customary development process on this platform—involving the creation of forks with subsequent submission of changes via pull requests—formally contravenes the licensing prohibitions.
Winamp was conceived in 1997 by Justin Frankel and Dmitry Boldyrev. This media player remains popular, boasting approximately 83 million users. Owing to its flexibility and the ability to customize the interface through skins, Winamp inspired the creation of several Linux clones, such as XMMS, XMMS2, Beep Media Player, Audacious, and Qmmp.
Last year, Llama Group encountered financial difficulties, compelling it to dismiss the core team of developers of the classic Windows version of Winamp and to focus on developing the eponymous streaming service and mobile applications.
During the publication of the source code, the code of the SHOUTcast server—which no longer belongs to Llama Group and had been sold to another company—was mistakenly included in the repository. Additionally, proprietary code belonging to others and an expired certificate for generating digital signatures were inadvertently added to the repository.