tizonia / tizonia-openmax-il

Command-line cloud music player for Linux with support for Spotify, Google Play Music, YouTube, SoundCloud, TuneIn, iHeartRadio, Plex servers and Chromecast devices.
https://tizonia.org
GNU Lesser General Public License v3.0
1.69k stars 87 forks source link

Add support for Pandora #340

Open juanrubio opened 7 years ago

juanrubio commented 7 years ago

There seems to be good Python support for Pandora's API

https://pypi.python.org/pypi/pydora/1.9.0

tcaddy commented 4 years ago

You might get somewhere by checking out PianoBar, which is an existing CLI Pandora client: https://github.com/PromyLOPh/pianobar

tizonia commented 4 years ago

@tcaddy

Thanks, I believe pianobar uses its own internal library: https://github.com/PromyLOPh/pianobar/tree/master/src/libpiano https://packages.debian.org/jessie/libpiano-dev

but the last time I checked, it looked quite cumbersome to use. I think Pydora looked much more straightforward.

The problem with Pandora's support in Tizonia is actually none of this. I've got a proof of concept implementation based on pydora that works. But the problem for Tizonia is the implementation of a mp4 demuxer OpenMAX IL component (Pandora delivers 'aacplus' in Mp4 containers).

That mp4 demuxer component needs to implement two roles:

The only standalone library that I could find that can do mp4 demuxing is MP4v2. But this is semi-abandoned. And it has no API for demuxing from a buffer (i.e. from stream). Only to demux from a file. So the Tizonia mp4 demuxer component would have to buffer the data into a temporary file or some sort of hack like that. Which seems to much hassle.

Unless I can find another solution to solves this problem (maybe libpiano! :-) )

SolarAquarion commented 4 years ago

https://github.com/lieff/minimp4 how about this muxer/demuxer

juanrubio commented 4 years ago

@SolarAquarion

I think minimp4 looks interesting. I would need some time to test it. I can't really give an estimate of when I would get around to doing it, but it has piqued my interest!

Thanks for bringing it to my attention