MinAmp – Pandora Music Player

May 14, 2011 Reading time: 5 minutes See Comments

MinAmp for Pandora

Introducing MinAmp for Pandora (and desktop Linux), a minimal music player mainly designed for use as a car player. This is my first application for the Pandora. Actually it’s my first C++/SDL application. Feed free to provide feedback on this application, you can also suggest changes and features requests.

On first run MinAmp will look for the Music directory on your mounted SD cards (either “music” or “Music”). If running on desktop Linux it will look for music or Music in your home directory. If this fails to find your music for some reason you can manually edit the "minamp.conf" file but hopefully this won’t be necessary in most cases.

I have assumed that your music directory is organised so that each artist is in its own directory with each album below that in it’s own directory. In each Album directory you can have a "cover.jpg" with the album cover art. If this doesn’t suit you I’m sorry, I may entertain alternate layouts but may need some incentive ;)

At present I support the MP3, OGG & FLAC file formats, I tried WMA but track length and reliability issues made me take it out. Audio output can be sent to the default, digital (SPDIF) or Bluetooth outputs. Bluetooth on the Pandora may require modifying the .asoundrc file and has had limited testing (See the forums).

Controls:

  • The touchscreen is active, and hopefully fairly obvious in operation.
  • Click an Album cover to play that album.
  • Click on the progress bar to jump within the current track.
  • Shoulder buttons are Previous/Next track, very sensitive at the moment (probably not good for jogging but works for cycling).
  • Press a letter “a” to “z” to seek to the albums that start with that letter (ie “c” for Coldplay).
  • Left/Right Arrows (Nub) to move the album list left and right.
  • Up/Down Arrows (Nub) are Previous/Next track.
  • Enter plays the Album in the center of the list.
  • ESC exits the player (Also clicking on the X on the screen).
  • HOME (or “A” button on Pandora) goes to beginning of Album List.
  • END (or “B” button on Pandora) goes to end of Album List.
  • SPACE is used to pause or un-pause the current track.
  • BACKSPACE/PAGEUP (or “Y” button on Pandora) goes to previous track.
  • PAGEDOWN (or “X” button on Pandora) goes to next track

Numbers keys 0-9 will select tracks (eg Press 1 for track 1 and then again for track 11)

If you exit the player while it is playing a track, on next use it will try to start from the same track.

Possible Future Enhancements (Keeping in mind it is supposed to be a minimal player):

  • Random Play
  • Album Queue
  • Options to make Shoulder buttons less sensitive, (Maybe double click or hold for next Album)
  • Fix some issues with the resume track function.

I still consider this software to be an Alpha release, features and functionality may be changed, added or removed. Enjoy and don’t hesitate to provide feedback and comments below.

To download MinAmp for the Pandora please go to the Pandora Repo (and don’t forget to vote ;) )

For Linux desktop/netbooks you can download the 32 and 64 bit versions here (Sorry no Windows version yet, may or may not happen)…

MinAmp 0.31 for 32 Bit Linux (x86)

MinAmp 0.31 for 64 Bit Linux (x86_64)

MinAmp 0.31 for 32/64 Bit Linux (Manual Install)

MinAmp is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License.

See Comments

Setting up a C++ Development Environment on the Pandora

June 24, 2010 Reading time: 2 minutes See Comments

I wanted to set up the Pandora so I could develop C++ programs directly on the unit rather than using a cross compiler.  I am also installing the SDL & OpenGL ES libraries. Until a PND package is produced this is what I have done to install the development libraries. You need to use a terminal to issue the following commands and then either issue these commands prefixed by sudo or login as root using su.

# opkg update

Update is important to do first to make sure the package lists are up to date. Under no circumstances do a opkg upgrade, trust me on this. If you do be ready to do a firmware re-flash.

# opkg install gcc gcc-symlinks gcc-doc make make-dev binutils-dev
# opkg install cpp cpp-symlinks
# opkg install g++ g++-symlinks libstdc++-dev
# opkg install libgles-omap3-dev
# opkg install libsdl-1.2-dev libsdl-gfx-dev libsdl-image-1.2-dev libsdl-net-1.2-dev libsdl-ttf-2.0-dev

OK, this is the tricky one, OpenPandora have patched the libsdl-mixer library, so there is no equivalent -dev library, for the mean time I am forcing the installation of the Angstrom library, you will notice the nodeps flag. So far I haven't seen any problems with doing this, your mileage may vary. I will be coding an application that uses sound (portable music player) so we'll see how it goes.

opkg nodeps install libsdl-mixer-1.2-dev

You can write your code using nano or vi in the console or use the GUI application Mousepad. I suggest creating a directory for programming on your SD card. Then in a console you can compile and run your applications. In a follow up post I will show how to write a Hello World program on the Pandora using some SDL and C++.

Have Fun :)

See Comments