Show HN: iPod.js – An online iPod that connects to Spotify and Apple Music
tannerv.com
tannerv.com
I'd rather just reach into my pocket and press buttons.
1) the Watch works great for every single one of my smartphone needs, but you are required to pair it with an iPhone that has a phone plan…even if you keep the iPhone turned off 95% of the time.
2) the AirPods fall out of my head when I smile. I’ve tried the different sizings. For such an expensive gadget, I expect to be able to make them stay in my head without fear of losing them simply because I’m having a nice time.
3) people sometimes report that they can’t hear me very well through the AirPods even if I’m sitting still in a quiet room with no obstructions. This happens regardless of whether the pods are tethered to the Watch, computer, or iPhone.
https://en.wikipedia.org/wiki/IPod_Shuffle#/media/File:Apple...
I think I've got one somewhere. Weirdest thing about it was the cable, it used a USB 2 (4 pins) to TRRS cable for syncing with the computer.
For the player I wonder whether I can trust it fir the access to my iphone account. Or Spotify.
[1] https://www.ifixit.com/News/16768/apple-taptic-engine-haptic...
[1] https://developer.mozilla.org/en-US/docs/Web/API/Navigator/v... or https://googlechrome.github.io/samples/vibration/
I felt the same way! It was 2003 again. Cool stuff. Thanks to the OP!
Looks like the spec is getting updated with more modern security and privacy practices.
Lack of browser support in a Spotify Web API providing free advertising for Apple Music. The irony!
It did have haptic feedback on the wheel which was cool, although I think this web implementation actually does a better job of nailing the motion and feel of the click wheel itself.
looks like you could maybe use the Vibrate API for some andriod browsers…
The much harder part when designing the iPods themselves was to build a robust touch sensor given the hardware of the day, and actually come up with pleasing dimensions and quantization parameters as a designer!
Code for this implementation: https://github.com/tvillarete/ipod-classic-js/blob/master/sr...
> ... you just need to quantize the angle ... look at the event stream ... and take the sign of the pairwise difference
This is harder than I thought
Round the angle quite severely. E.g. if using 10 degree steps you'd round anything below 5 degrees to 0 degrees, and anything above to 10 degrees. Anything above 15 would get rounded to 20, and so on.
> look at the event stream
Look at the last two directions the above procedure generated.
> and take the sign of the pairwise difference
If the new angle is higher it's a counterclockwise motion. If the new angle is lower it's a clockwise motion. Do some special handling if the angle wraps around from 350 to 0 degrees or vice versa.
Nominally:
- The default title when adding to the Home Screen is “React App”.
- The icon could be better by choosing something in 1:1 aspect ratio. Maybe just the click wheel?
- When opened from the home screen it correctly loads without displaying the browsers nav bar, but the dimensions are slightly skewed so it doesn’t fill the screen.
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/v...
Anyways great execution and loved how seamless it works really cool project
It’s not active live streaming, just downloading your playlists.
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://apresolve.spotify.com/?type=dealer&type=spclient. (Reason: CORS request did not succeed).
> Cannot register to Track Playback with non-premium user.
However, the "iPod" just keeps telling the user to sign in. It might be good to have some indicator that you need a paid account to use Spotify on this iPod.
Can I get my money back please?
The docs [1] say "It’s the same technology we use to power our Web Player experience", which seems to work fine on my mobile browsers. However, mobile browsers are explicitly listed as unsupported.
The docs also clarify it's powered by Encrypted Media Extensions, which is supported natively back to iOS11 and Chrome 42 [2]. There's also an actively maintained polyfill [3].
[1]: https://developer.spotify.com/documentation/web-playback-sdk...
[3]: https://github.com/google/eme-encryption-scheme-polyfill
The reason is because of a protocol called Oath2.
Amazing work.
That's what I miss.
Some bugs I've noticed(Chrome 90 on Android):
* When looking at a list of albums, using the clickwheel to scroll won't actually scroll the list
* With Spotify, only my public playlists are shown
Thanks!
With music downloads peaking in 2012, I'm still clinging to audio files myself and will still buy albums on Bandcamp.
So if your token gets hijacked then the bad actor would probably be able to view your playlists and listen to your music.
Settings -> About -> Github Repo
I don't understand google's approach to youtube music. Maybe they secretly want it to fail.