WinAMP
2024-10-09 17:00:18 阿炯

Winamp是一个由Nullsoft公司开发的Windows与Android下的媒体播放器软件,曾被售予美国在线,现为Radionomy旗下产品之一。其首发于1997年4月,支持多种媒体格式,支持皮肤更换,支持通过各种插件扩展,同时也具有最基本的播放列表和媒体库功能。Winamp以其声音效果、播放列表和媒体库功能而出名。随着MP3的共享,其知名度迅速增长,Winamp的作者是Justin Frankel、Dmitry Boldyrev和Shiva Ayyadurai。同时播放器包含免费版和共享版等版本,由C/C++编写开发,并于后期开放源代码。AMP是“高级多媒体产品”(Advanced Multimedia Products)的缩写,不过这个简写会有变化,且看下文。


AOL于2013年11月20日宣布将于当年12月20日起关闭Winamp的网站,并不再维护暨提供下载服务。2014年1月14日,Radionomy自AOL手中收购Winamp与网站SHOUTcast。2024年5月16日,Radionomy旗下的Llama Group宣布Winamp将于同年9月24日起开放源代码,以让更多志愿者参与开发维护。


特性

支持格式:Winamp支持多种音频格式的播放,包括MP3、MP2、MIDI、MOD、AAC、FLAC、Ogg、WAV、WMA等,并且是Windows平台下首款可以默认支持Ogg的播放软件。另外Winamp还支持MP3和AAC的无缝播放(即音乐文件之间无空隙播放),支持回放增益,支持音乐光盘,支持从光盘翻录音乐和音乐刻录到光盘。不过标准版对刻录速度有限制,专业版则无。除音频格式外,它还支持播放WMV和Nullsoft Streaming Video视频格式。对于MPEG、AVI等其它默认不支持的格式,Winamp则调用微软的DirectShow应用程序接口进行播放。

媒体库:用户安装Winamp软件时,软件会检索用户系统中的媒体文件,并自动添加到媒体库当中,支持Unicode文件名和Unicode元数据[7]。而在媒体库中如采用长方块界面,还可以更进一步的显示媒体文件的详细信息。

增加专辑封面和音轨标签:允许用户取用专辑封面,并且在添加至媒体数据库之前会通知用户进行确认操作,自动音轨标签功能可自动分析音频信息,和获取其ID2和ID3元数据。

播客功能支持:还可被用作RSS媒体聚合器,并提供播客功能支持。

便携式媒体播放器支持:对一些便携式媒体播放器提供扩展支持,并且包括USB存储设备。比如同步iPod中不受保护的音乐文件。

媒体监视:内置媒体监视功能,方便用户浏览和标签音乐博客,并自动提供从彼处流和下载MP3文件的功能。

远程控制:内置远程控制功能,方便用户对互联网上其它电脑内不受保护的音乐文件进行远程回放,可根据带宽调整比特率,并且可由Wii、PS3、Xbox或手机进行控制。

插件
1998年2月,Winamp程序被重写为“通用音频播放器”(general purpose audio player),并采取插件支持构造,评论反馈良好。此后经过快速和多元化的开发,当年11月已经开发出66个插件,另外Winamp SDK可方便开发人员开发出七种不同类型的插件。包括:
输入:解码特殊格式;
输出:将数据发送至特殊文件或设备;
音乐可视化:提供声效图形;
音效:控制音频来产生特殊音效;
通用插件:使操作简便和产生界面特效;
媒体库插件:为媒体库提供额外功能;
便携式媒体插件。

大量插件的开发也因此增强Winamp的可定制性。

皮肤:Winamp的皮肤实际上是位图文件,用以更换程序的GUI并可添加额外功能。早在1998年Winamp 2问世时,开发人员就发布一份关于皮肤设计的文档,邀请用户将设计好的皮肤提交给官方网站。截至2002年7月为止已有约3000款皮肤诞生。这种皮肤设计反过来也加大Winamp本身的流行度,并且这还影响同时期的其它播放软件,比如XMMS,它可以使用Winamp 2的皮肤。

Winamp 5带有两种类型的皮肤:Winamp 2的经典皮肤和Winamp3的现代皮肤,前者只是位图的静态集合,后者灵活性更高,并且带有阿尔法通道的透明特效,脚本控制,固定位置工具栏等其它改进。


早期版本

1997年4月21日,Winamp的首个版本“WinAMP 0.20a”问世。这个免费版本只有一个菜单栏界面,包含播放文件的一些基本控制按钮。播放文件可通过命令行指派或文件拖曳至Winamp图标进行,MP3的解码由免费的、非商业化的AMP解码引擎负责完成。同年5月,0.92版本发布,这个版本同样是免费的;加入Windows窗口界面,同时也是经典Winamp皮肤界面的开端:暗灰色的矩形界面,配上3D特效的银色按钮,红绿相间的音量调节器,绿色LED的时间显示,绿色的音轨名、比特率和采样率。但没有播放进度条,并且未来将要添加波形显示功能的位置(即时间显示的下方)是一大片空白。在这个版本中,拖曳多个文件将把文件添加至播放列表。

Winamp 1
1997年6月7日,Winamp 1发布,AMP已经改为小写。这个版本新增频谱显示器(在时间显示器的下方,不过没有波形)、音量调节器颜色渐变。在帮助菜单里新增AMP的非商业化文档。

1998年3月31日,1.90版本发布,这个版本开始被设计为通用音频播放器,并且官方网站声明该软件支持插件。1.90版包括MP3和MOD音频输入插件和一个可视化插件,18天后发布的1.91版又新增WAV、CDDA音频插件和系统托盘区操作插件,另外,1.91版还内置一个音频样本,内容为“Winamp,它的确敲打着骆马的屁股。”(Winamp, it really whips the llama's ass.)这一样本也成为Winamp几年内的标志性声音。当年7月,Winamp各种版本的下载次数已经超过300万次。

Winamp 2
1998年9月8日,Winamp 2正式发布。这个版本得到广泛的使用,并且让Winamp成为下载次数最多的Windows软件之一。这个新版本增加播放列表的可用性,改进均衡器的精确度,增添更多的插件,并且播放列表和均衡器亦可以使用各种皮肤皮肤。1999年3月,Winamp开始改用弗劳恩霍夫的MP3解码引擎。同月24日发布的2.10版没有作太多更新,只是给原来的那个音频样本添加打击乐和羊叫声效。

1999年6月,美国在线以8000万美元收购Nullsoft。同年12月,Nullsoft重新发布官方网页,以方便用户访问各个技术板块。次年6月22日,Winamp的注册人数超过2500万。

Winamp 3
Winamp 2的下一个版本名叫Winamp 3,如此命名表示其已经完全从Winamp 2的代码库分离出来,并且把MP3和Winamp两个单词集成到一起。2002年8月9日,Winamp3问世。该版本完全重写以前的版本,基于“Wasabi”的应用程序框架,以提高其灵活性和提供额外功能。在当时,Winamp3和Winamp 2两个系列是平行发展。

不过,不少用户反馈,Winamp3资源占用率高,稳定性不佳,并且缺乏有价值的新功能,比如播放列表中曲目时间总长度计算,另外还无法向下兼容Winamp 2的皮肤和插件,也没有提供SHOUTcast支持。许多用户回退到Winamp 2,因此Nullsoft继续开发2系列,并于2003年发布2.9版、2.91版和2.95版,其中2.95版已经附带一些即将发布的Winamp 5的新功能。在此期间,Wasabi框架和皮肤开发工具从Winamp3的代码库中分离出来。

Winamp 5
Winamp 2系列和Winamp3系列于2003年12月合并,成为Winamp 5。Winamp 5.0基于Winamp 2的代码库,并且集成Winamp3的许多新特性,比如现代皮肤。Winamp 5直接跳过版本4,Nullsoft开玩笑说:“Nobody wants to see a Winamp 4 Skin”,“4 skin”和“foreskin”(包皮)是谐音词。不过也有人取笑说:“Winamp 5太棒了,以至于连升两级。”

Winamp支持同步便携式媒体播放器,比如iPod,不过这一功能到5.2版本后才被加入。v5.5于2007年10月10日,Winamp的十周年纪念版——5.5版发布。该版本新增专辑封面支持、大力改进的本地化支持、统一的播放器和媒体库界面皮肤,并且停止对Windows 9x的支持。v5.9于2022年7月26日,Winamp 发布 5.9 Build 9999 正式版。该版本的开发环境从 Visual Studio 2008 迁移到了 Visual Studio 2019,并且成功完成重构。该版本优化了 HTTPS 协议传输的流媒体,支持了 VP8 解码和 Windows 11。最低操作系统要求提高到了 Windows 7 SP1。

如果说上面的介绍过于官方化的话,那我们以原作者的视角来简单地聊一下Winamp成长心路历程。

1997年,19岁的美国大学生Justin Frankel开发了一个音乐播放器,这是个共享软件,费用是10美元。一般来说,共享软件要么有免费的试用期(如一个月),或者功能受限,你付了钱才能解锁。


但是Justin的播放器非常奇葩:不付钱也能一直用,付了钱也得不到任何额外的功能!

说白了,软件就是免费的,用户喜欢了,就可以付费支持一下,就像现在的打赏一样。那个时候电子支付还很少,你要想“打赏”,只能邮寄纸质的支票。让人吃惊的是,全世界的网民太喜欢这个软件了,抢着给他送钱,Justin每个月都能收到10万美元的纸质支票!

这个软件就是掀起MP3革命的Winamp,70后和80后应该对它极其熟悉,在90年代末和21世纪初,Winamp是装机必备软件之一,几乎每一台PC上都能看到它。

在90年代,想在互联网上听音乐是一件很难的事情。         音乐文件很大,动辄50Mb以上(.WAV格式),但是Modem的网速每秒只有可怜巴巴的28.8K,还是bit。

后来德国的一个研究所发现,有些声音成分超出了大多数人的听觉能力,于是他们就想办法降低这些声音成分的准确度,采用近似值或者丢弃一些数据。这个叫做MP3技术压缩效果极为惊人,可以把光盘中的音乐缩小12倍,而不会造成明显的音质损失。50Mb的音乐,经过压缩后,4Mb就能就保存了。MP3技术迅速普及,网上下载音乐变得方便而快捷。当年百度推出的MP3搜索就是一个杀手锏应用,给百度带来了巨大的流量(也被无数人尤其是音乐界诟病)。

音乐内容解决以后,就是播放器的问题了。克罗地亚人Tomislav Uzelac在读研期间,一直在研究MP3编码,他实现了世界上第一个MP3软件播放器:AMP(Audio Mpeg Player)。

但是AMP只能在Unix上运行,1997年4月21日,犹他大学的Justin Frankel和Dmitry Boldyrev把AMP移植到了Windows上,开发了一个非常简单的MP3播放器:WinAMP 0.20a


WinAMP就是Windows + AMP的组合,虽然它只有简单的播放、暂停、停止等功能,但是有了核心的功能,Justin Frankel和Dmitry Boldyrev可以开始疯狂地迭代开发了。一个月后,WinAMP 0.92版发布。


再过一个月,1997年6月,经典的Winamp1.0横空出世。


当时也有其他播放器,但是都做得很差,甚至无法实现播放列表等基本功能。相比之下,Winamp不但支持播放列表,还支持音乐可视化。


不但支持可视化,还支持自定义皮肤!你可以选择自己喜欢的任意风格的皮肤。


1998年2月,Justin Frankel和Dmitry Boldyrev重构了Winamp的架构,把它变成了像后来的Eclipse那样的插件架构。

Winamp开放了输入、输出、可视化、DSP、语言包等各种接口,让其他程序员可以任意扩展,实现自己的创意。这些新颖的、领先的功能很快让Winamp风靡世界。

1997年,Winamp下载量迅速突破300万。

1999年,突破1500万。

2000年,超过2500万。

2001年,达到6000万。

Winamp下载量仅次于ICQ,位列第二。

1998年1月,Justin Frankel在自己的家乡成立了Nullsoft公司(据说Nullsoft是为了模仿Microsoft)


公司Logo是一只羊驼,Winamp启动时也增加了一句英文和羊叫声:“Winamp,Winamp, it really whips the llama's ass!” “咩~”

非常有个性,非常有辨识度。

Justin就在自己的卧室里办公,把自己的老爸拉来当公司律师和CFO,他把Winamp从免费软件改为10美元的共享软件,但是即使你不付钱,一切功能都照旧。

既然没有限制,为什么还要花钱注册?谁会花钱注册?

实际上,网民太喜欢这个软件了,抢着给他送钱,那段时间,Justin每个月都能收到10万美元的纸质支票!

广泛的用户群,不菲的收入,Winamp很快就引起了当时互联网巨头AOL的注意。AOL刚刚收购了ICQ和Netscape等著名互联网产品,准备建立互联网的帝国。


整个帝国中不能没有音乐,1999年6月,AOL花了8000万美元把Winamp也收购了。Justin本人获得了价值6000万美元的AOL股票,他的老爸获得了价值1500万美元的股票。这一年,Justin 21岁。


照理说,有了巨头的支持,Winamp应该发展得更好吧?

AOL拥有排名第一的播放软件Winamp,它拥有时代华纳的内容库,这些宝贵的资源,独特的领先优势,完全可以成为流媒体的先驱。但AOL总是陷入内部政治斗争而无法做成任何创新性的事情,真正的好想法都会在内部夭折。

早在2000年,AOL就计划推出音乐订阅服务,但是由于在计费系统上的问题,这个叫做MusicNet的服务迟迟不能发布。在文化上,Winamp的核心用户是音乐爱好者、极客和关心MP3编码比特率的人,这些人对AOL公司很反感。

AOL还采用了捆绑式的办法,让人们在安装Winamp时也安装ICQ、Netscape或者其他软件,更是让人想逃离。Winamp创始人Justin和公司的关系日益紧张,当该公司坚持要求在安装 Winamp 时,AOL 图标应该立刻出现在用户桌面上,Justin勃然大怒:我们的用户不想用AOL,他们认为AOL很烂!

历史不会再给AOL第二次机会了,2001年,苹果的乔布斯推出了iPod,并且推出了iTunes音乐商店。iPod像野火般迅速燎原,苹果彻底主宰了数字音乐领域。


2003年,Justin从AOL离职,创立了一家叫做Cockos的公司,开发了REAPER这个数字音频和视频编辑软件。离开前他留下了一句名言:对我来说,编程是一种自我表达。公司控制着我最有效的自我表达方式。这对我个人来说是不可接受的,所以我必须离开。


2013年12月20日,AOL宣布关闭Winamp.com,该软件不再提供下载,公司也不再支持。2014年,比利时布鲁塞尔的在线电台聚合服务Radionomy从AOL手中收购了Winamp,但是在5年后,才推出新版本,此时Winamp已经从人们的视野中消失了。2024年9月24日,Winamp在GitHub上正式开源。