Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

gavinstubbs09

macrumors 65816
Original poster
Feb 17, 2013
1,386
256
NorCal boonies ~~~by Reno sorta
This one I am excited for, as it works pretty well. The same guy who brought us TSclientX worked on making PianoBar work under PowerPC. Huge thanks to Daniel!!

Sign in with your email and password, then select the Pandora station you want. This will tell you the track currently playing, and if you liked it, it'll have a <3 next to the title, as well as showing the duration of the song.

You can skip a song by pressing "n" on the keyboard. See the list below for various commands (below the image).

But this is awesome and I am stoked to have it, no more dealing with s**tty Safari to play Pandora music any longer.

If someone could try this under Tiger, and then using a G3 with Tiger and respond back here that would be appreciated :) Works excellent with my G5 using Leopard.

OTHER REALLY COOL THING: Unlimited skips and NO ads!!

PianoPPC Download (Ver 1.0.1 10/4/2016)

Revision Updates:

1.0 (10/3/16)
- Initial release.
1.0.1 (10/4/16)
- Patched configuration parser - now it's working.
- Should now run on G3 Macs

PianoPPC.png


Code:
act_help = ?
Show keybindings.

act_songlove = +
Love currently played song.

act_songban = -
Ban current track. It will not be played again and can only removed using the pandora.com web interface.

act_stationaddmusic = a
Add more music to current station. You will be asked for a search string. Just follow the instructions. If you're clueless try '?' (without quotes).

act_bookmark = b
Bookmark current song or artist.

act_stationcreate = c
Create new station. You have to enter a search string and select the song or artist of your choice.

act_stationdelete = d
Delete current station.

act_songexplain = e
Explain why this song is played.

act_stationaddbygenre = g
Add genre station provided by pandora.

act_history = h
Show history.

act_songinfo = i
Print information about currently played song/station.

act_addshared = j
Add shared station by id. id is a very long integer without "sh" at the beginning.

act_managestation = =
Delete artist/song seeds or feedback.

act_songmove = m
Move current song to another station

act_songnext = n
Skip current song.

act_songpause = p
Pause/Continue

act_quit = q
Quit pianobar.

act_stationrename = r
Rename currently played station.

act_stationchange = s
Select another station. The station list can be filtered like most lists by entering a search string instead of a station number.

act_songtired = t
Ban song for one month.

act_upcoming = u
Show next songs in playlist.

act_stationselectquickmix = x
Select quickmix stations. You can toggle the selection with 't', select all with 'a' or select none with 'n'.

act_voldown = (
Decrease volume.

act_volup = )
Increase volume.

at_icon = @
Replacement for %@ in station format string. It's " @ " by default.
audio_format = {aacplus,mp3,mp3-hifi}
Select audio format. aacplus is default if both libraries (faad, mad) are available. mp3-hifi is available for Pandora One customers only.

autoselect = {1,0}
Auto-select last remaining item of filtered list. Currently enabled for station selection only.

autostart_station = stationid
Play this station when starting up. You can get the stationid by pressing i or the key you defined in act_songinfo.

ban_icon = </3
Icon for banned songs.

control_proxy = http://user:password@host:port/
Non-american users need a proxy to use pandora.com. Only the xmlrpc interface will use this proxy. The music is streamed directly.

event_command = path
File that is executed when event occurs. See section EVENTCMD
fifo = /home/user/.config/pianobar/ctl
Location of control fifo. Defaults to $XDG_CONFIG_HOME/pianobar/ctl (which is usually the value above). See section REMOTE CONTROL

force_tls = {0,1}
Use TLS for all actions (not just sending login credentials). Use if you are on an untrusted network or to get around GeoIP restrictions.

format_list_song = %i) %a - %t%r

Available format characters:
%i Song number

%a Song artist

%t Song title

%r Rating icon

format_msg_none = %s
format_msg_info = (i) %s
format_msg_nowplaying = |> %s
format_msg_time = # %s
format_msg_err = /!\ %s
format_msg_question = [?] %s
format_msg_list =
%s

Message format strings. %s is replaced with the actual message.

format_nowplaying_song = "%t" by "%a" on "%l"%r%@%s
Now playing song message format.

Available format characters are:

%t Song title

%a Song artist

%l Album name

%r Rating icon (only love icon)

%@ at_icon if station is quickmix, empty otherwise.

%s Real station name if quickmix

%u Song detail url

format_nowplaying_station = Station "%n" (%i)

Now playing station format.

Available format characters are:

%n Station name

%i Station id

history = 5
Keep a history of the last n songs (5, by default). You can rate these songs.

love_icon = <3
Icon for loved songs.

password = plaintext_password
Your pandora.com password. Plain-text.

proxy = http://user:password@host:port/
Use a http proxy. Note that this setting overrides the http_proxy environment variable. Only "Basic" http authentication is supported.

sort = {name_az, name_za, quickmix_01_name_az, quickmix_01_name_za, quickmix_10_name_az, quickmix_10_name_za}
Sort station list by name or type (is quickmix) and name. name_az for example sorts by name from a to z, quickmix_01_name_za by type (quickmix at the bottom) and name from z to a.
tls_fingerprint = D9980BA2CC0F97BB03822C6211EAEA4A06EEF427
Hex-encoded SHA1 fingerprint of Pandora's TLS certificate.
user = your@user.name
Your pandora.com username.
volume = 0
Initial volume correction in dB. Usually between -30 and +5.

Credit for info above. pianobar(1) - Linux man page
 
Last edited:
  • Like
Reactions: Traace
Tried it on my Graphite 466MHz iBook Clamshell, which runs OS X 10.4.11. Sadly, it does not work.
This is what I got:
Code:
Last login: Thu Jan  1 01:00:48 on console
Welcome to Darwin!
/Applications/PianoPPC.app/dist/bin/PianoPPC; exit
iBook-Clamshell-Graphite:~ mettatonex$ /Applications/PianoPPC.app/dist/bin/PianoPPC; exit
dyld: Library not loaded: /Applications/PianoPPC.app/dist/lib/libavcodec.57.dylib
  Referenced from: /Applications/PianoPPC.app/dist/bin/pianobar
  Reason: no suitable image found.  Did find:
        /Applications/PianoPPC.app/dist/lib/libavcodec.57.dylib: incompatible cpu-subtype
/Applications/PianoPPC.app/dist/bin/PianoPPC: line 14:   259 Trace/BPT trap          /Applications/PianoPPC.app/dist/bin/pianobar
logout

The "incompatible cpu-subtype" seems to indicate that whatever library it is using for audio, isn't available for G3 machines.
 
On an iBook G4 1.33GHz PianoBar burns about 6% to 7% CPU.
I'd love to find out if the updates I made allow it to run on a G3!
 
1.0.1 does successfully launch on my iBook Clamshell now, but I can't test playback yet because I can't find a good, free, USA proxy that works. Still, it now managed to get to the login, so that's progress.
 
1.0.1 does successfully launch on my iBook Clamshell now, but I can't test playback yet because I can't find a good, free, USA proxy that works. Still, it now managed to get to the login, so that's progress.

Hi Daniël - I can send you credentials for a PPTP VPN that you can use to test out PianoPPC, you ok with that?

Thanks,
D.
 
Sure, I'll check it out ASAP.
[doublepost=1475625468][/doublepost]Can confirm it plays on G3 machines now. Since I don't have much time now, I only played a bit of audio, but it sounded fine as is. I'll do some more testing later, such as looking at how much CPU % it uses, and if it stays nice and stable throughout playing, although I doubt it wouldn't.
 
Alright, after some testing, I do have to conclude that it works fine, as long as you don't do anything else but play Pandora. It sits around at 18% CPU usage during playback if you leave it alone, or only use the Pandora controls. I did notice a bit of a skip every now and then, but that might've been the Activity Manager taking too much CPU cycles away from Pianobar. The problem is when you start doing other stuff. Moving around stuff or using other apps chokes playback. Moving around on the Dock left and right pretty much stops playback completely, with the CPU usage spiking to around 40%. This was on a 466MHz G3, I can imagine older G3 machines will not play nicely.

can't wait to hear the results what os u running on the g3

PianoPPC does not work on 10.3 or below (just for fun, I tried on another Clamshell which runs 10.3.9, and PianoPPC does not start at all), and 10.5 doesn't run on G3 machines. Guess that leaves little else than 10.4.11 ;)
 
Haha, wow; I've never used Pandora or even knew what it did before viewing this thread, but I just decided to look it up. Lo and behold, 30 minutes later, I decided to make an account for my own, and I am loving it right now, especially liking how it recommends songs much better than Spotify did for me.
 
One little quirk that I noticed is that the Terminal can't be open when launching the app. The app will quit without loading Pandora. Quitting out of Terminal and relaunching PianoPPC fixes the quirk.

I discovered this after running PPCMC and leaving Terminal open...
 
Haha, wow; I've never used Pandora or even knew what it did before viewing this thread, but I just decided to look it up. Lo and behold, 30 minutes later, I decided to make an account for my own, and I am loving it right now, especially liking how it recommends songs much better than Spotify did for me.
Oh, got a question; any way I can change the config file so I can use a proxy? Right now I'm using the Location feature from the Network prefpane, and just switching there (one has my normal DNS settings, one has U.S DNS settings but slows down my internet speed).
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.