Winamp2-Js: A Reimplementation of Winamp 2.9 in HTML5 and JavaScript
jordaneldredge.com
jordaneldredge.com
I guess there is uncanny valley in UX too.
I learned JavaScript by implementing a similar project which gets this detail correct: http://freecog.net/2005/jsamp/demo/MainWindow.xhtml
(It is quite amusing to read the release notes: "SVG features (the equalizer display) requires Deer Park Alpha 1 or later (Deer Park is the codename for Firefox 1.1, to be released in September).")
This being 2005, the code is pretty much what you see there -- no minification or anything. The source archive contains the template files (this project was done as a skin for BrowseAmp, a plugin which added a web server to Winamp to allow remote control of it).
Anyone remember Phoenix 0.1.0? Phoenix became Firebird became Firefox.
It feels very wrong but after 20 years and 100 GB of pop3 email, it's hard to switch I suppose.
I think it is fair to say that not forcing people to have a web authoring tool that reminds them they are the author contributed greatly to the new web of walled gardens.
* After scrolling the song title a few times, when I hold down LMB, wait a moment and scroll once again, title jumps ~20px left or right.
* In original winamp mouse wheel changes volume whenever cursor is over main window. In JS version wheel only works after I click the volume bar and hover over it.
* Move equalizer window down 100px or so. Try to move it left or right. It snaps to main window. In original, horizontal snapping works only if windows are touching each other.
* In original, holding down LMB on a control button and moving it to other buttons causes those buttons to appear pressed in (and register as a click when releasing LMB). In JS buttons act independently.
* Activating double-size mode doesn't move equalizer window if it's snapped to main window. In original it does.
* In original seek bar updates every second or so. In JS it updates continously.
Now we have iTunes.
though its 70k points/year makes it the most expensive reward.
There is a glaring downside to that service though. I can't open the website to stream the music from ubuntu. The website just doesn't load.
Android does support unofficial app distribution as well though. If someone gives you a .apk of their app you can just copy it to the phone and select it from the file browser to install it. You can update apps installed from the Play Store in this way as well, just the first install needs to be done the official way to get the license loaded.
Music is just files, you can copy them on and off the device in basically the same way as an old MP3 player unless you bought from a DRM-based provider in which case they'll be "protected" somewhere else.
There's no real need for an iTunes-like setup with Android. Your PC has no need to be involved in the app installation process and everything else is just normal files you can manage with the file manager you already have.
Now i'm afraid of touching the media control keys of my keyboard and risk launching it.
It eventually got some bloat with new features but the features they added were pretty nice, like ability to burn discs.
I do miss that app. I could possibly get it going in WINE, I guess.
I also believe that WinAmp just sounds better. Even after playing with the EQ on iTunes, I can't get it to sound as good as WinAmp.
I really dislike iTunes, but I find this claim hard to believe. In the audiophile community, we usually test such claims with double blind tests. Interestingly enough, a metal wire coat hanger held up just as well against $100 premium Monster audio cables.
I'm pretty sure you're thinking about Winamp 3 or 5. Winamp 2, upon release (in 1998!) had no such feature IIRC. It didn't even have a "Library view" of all your MP3s, it only had a very rudimentary playlist.
The main thing about Winamp 2 was that it was fast. For example, the skins were just bitmaps (none of the crazy theming that Winamp3 enabled). The visualizations were delivered by a set of plugins -- all of which you could get rid of.
- http://mp3decoders.mp3-tech.org/decoders_winamp2_62.html
- https://www.mars.org/home/rob/proj/mpeg/mad-plugin/
Most versions of Winamp 2.x had their own Nitrane decoder which is "inaccurate", some versions had Fraunhoffer decoder which is ok. However, I'm not sure if differences in sound are noticeable on non-high-end hardware, some people say that very noticeable.
Also, UI was super-cool and iconic but usability was not the first concern (back then, software had to be cool and spectacular, everyone used screensavers and players had to include visualizations). It was very small (I used 800x600 resolution but it looked too small), it relied on Windows file select dialog to add tracks and file select dialog is one of the slowest and most frustrating UIs in most OSes.
plus soundcloud, youtube, bandcamp, mixcloud, etc, of course. but for stuff in my collection, it's usually winamp, the ipod, or vlc.
The fact that foobar2000 wasn't open source eventually drove me away.
What more do you want?
The inspiration for that catchphrase was none other than Wesley Willis.
Unfortunately, there doesn't seem to be a way around the fact that web apps have no persistent access to the local filesystem, and thus would have to duplicate any locally stored music in browser-based storage in order to maintain its own fully synchronized library.
I can understand why this restriction is in place as a security measure, but it significantly limits the appeal of any web app that performs any kind of synchronization of files. I sometimes wonder if persistent filesystem access is really such a huge security risk for web apps that even asking for explicit permission grants from the user and limiting access to user-specified directories is not enough to make it an acceptably secure capability for inclusion in web browsers?
A local webserver and a little scripts for writing files. Plus symbolic links to your music folders maybe? I never tried the symbolic links part, but surely there is a way to make that work.
Access to a persons files destroys all security.
Is the issue just that it would widen the attack surface too much in the event of a potential bug that could compromise the browser sandbox and/or the same origin policy? Or is there more nuance that I'm missing?
For one it has to be clear to the user. Is he granting one time access or repeated access? Which sites are getting the access? Is it actually the exact page I see or some code loaded from elsewhere? etc.
The other part is the sandboxing part. Sandboxing access to file systems is hard. How do you deal with symlinks, hard links, ... (maybe there is a different vulnerability allowing to create those and both techniques together lead to an dangerous exploit?) what amount of the path name etc. are available to the application (this might i.e. link the username, which might be derived from a full name, think about /home, /Users, C:\Documents and Settings\ but might be useful to show) and then, again, the related real-life user issue: not all users have all their music in a distinct folder structure, but probably mixed with other files, and oh, they want to play the files freshly put into "Downloads", too ...
Granting such access is a can of worms ...
All of that is very achievable, except the "web app" part. I think it might be about time for me to just give up on that pipe dream and start building an Electron and/or React Native app instead.
I use to rip torrent websites by de-paginating their browsable tables of things to hold 2000 entries each and saving it as .html. The search engine got with some dumb ajax thingy that would just perform a full text search on the link.textContent.
small print: The browser would still "download" the files before you could open them in other applications.
But I'm not sure if this local file access "security hazard" got patched.
I'm guessing the idea is make an exact 1:1 pixel recreation of the original, but it's _really_ small, any chance we can get a "zoom" function or a @2x version?
Thanks for the nostalgia trip!
Bonus Despacito mod version: https://youtu.be/lf4ofV0T-Uw?t=1m15s
lags on my x200 but anyway, it was cool. And btw, drag and dock works people.
ps: I use foobar2000 which is a mad gem of software, but Winamp 2.9/5 is still my sweet spot for music playing.
Plasmation - http://volv.org/plasmation-1.zip
Brings back tons of memories :)
edit: and it says it lets you use winamp classic skins, which is a nice nostalgic touch.
https://www.youtube.com/watch?v=QFZBTYFTeto
I'll think about adding some kind of message to make this more obvious.
https://butterchurnviz.com/ is one of the better ones i've seen but it doesn't appear to be open source