Saturday 21 November 2015

New version 0.9.4. Internet Radios lovers, this version goes for you.

Hi guys,
There's a new cool feature. You can now add Internet Radios to your current playlist in foobar2000 right form your phone.
It's fairly easy. Select the internet radio from your web browser and click to download it. You'll be prompted to select with which application you want to open the link. Select foobar2000 and it'll be directly added to your playlist.


Btw, this feature was suggested by a user, so feel free to suggest new cool features like this one. I'll do my best to include all your requests.

There are a couple of more things added in this version.

Release notes

New features:
  • Add Internet Radios to your foobar2000 directly browsing from your device web browser. Supported formats: .m3u and .pls.
  • Added sort by Disc Number in playlist.

Solved issues:
  • Added a setting to disable muting of volume keys for those devices where the whole device sound gets muted (i.e. Nexus 7 2012).

Saturday 10 October 2015

New version 0.9.3.8. Get playing song info from your app!

Hi guys,
I've added a new feature especially useful for advanced users.
There's a new available Intent action.
"com.cav.foobar2000controller.GET_PLAYING_SONG"

It will allow you to get the current song info via Intent without havng to care about http requests or foobar2000 HTTP Control API.

Unlike previous Intent actions, this one is a bit more complicated to work with, but it's actually fairly easy.

You'll need to send a broadcast specifying a callback Intent action string for me to send you back the information in form of JSON-like string.
Here's an example:

Sending the Broadcast
// Create a Bundle with the action you want to be called from foobar2000 controller
Bundle extras = new Bundle();

// This is mandatory! The key MUST BE "callbackAction". The action "com.mybroadcast.song_info" can be any of your choice
extras.putString("callbackAction", "com.mybroadcast.song_info");

// Create a new Intent. Set the new action and add the extras.
Intent intent = new Intent();
intent.setAction("com.cav.foobar2000controller.GET_PLAYING_SONG");
intent.putExtras(extras);

// Send the Broadcast. foobar2000 controller will receive it and send you back a Broadcast with the song information
sendBroadcast(intent);
 Receiving the information
// You need to have a BroadcastReceiver. It can be a custom class of yours.
BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override public void onReceive(Context context, Intent intent) {
Bundle extras = intent.getExtras();
if (extras != null) {
// This is where the song info is stored.
// It will be like: {"title":"Song title", "artist":"Song artist", "album":"Song album", "length": 123, "rating":5}
// You can convert it to JSONObject (or any other implementation)
String song = extras.getString("song");
// Do whatever you want with the retrieved song.
Toast.makeText(MainActivity.this, song, Toast.LENGTH_LONG).show();
}
}
};
// Register the receiver with the action you've provided before
registerReceiver(broadcastReceiver, new IntentFilter("com.mybroadcast.song_info"));
Here's a full Android studio project example using this new Intent action;
https://www.dropbox.com/s/vyuuiyjlgwkavcs/SendBroadcastTest.zip?dl=1

Enjoy!

Monday 17 November 2014

New version 0.9.3.5. Hey, automation lovers, wanna control foobar?

Hi guys,
it's been a very long time since last post. But don't worry because there is a new cool addition.
And.. don't tell anyone but there's something huge coming soon...

This time I've added to PRO version the ability to control foobar2000 using Intents from any other app like Tasker.

The supported actions are:
  • com.cav.foobar2000controller.PLAY_PAUSE
  • com.cav.foobar2000controller.STOP
  • com.cav.foobar2000controller.PREVIOUS
  • com.cav.foobar2000controller.NEXT
  • com.cav.foobar2000controller.TOGGLE_MUTE
  • com.cav.foobar2000controller.WAKE_SERVER
I think they are pretty much self-explaining :)

This is an example of how Tasker can be configured to send an Intent to foobar2000 controller.
0.9.3.5 must be installed before trying the following..

1. Create a new Task.



2. Select System.



 3. Select Send Intent.



4. Write the action you want to add (com.cav.foobar2000controller.PLAY_PAUSE in the example).
4.1 Leave BroadcastReceiver as Target.



5. Test the action is working by clicking on "Play" icon.



If everything is OK, the music in foobar should have been paused or resumed.

Thursday 19 December 2013

New version 0.9.3.4. It's time to reorder your playlist

Hey guys, here's another version for you all.
Consider this my Christmas present for you. It's not much but it's something :)

By the way, all of the new features added are suggestions from users, so you know... Keep on suggesting!!

Release notes

New features:
  • Added "Resume Playback" option to OnAnswered call actions.
  • Playlist items can now be re-ordered with Drag&Drop (like in the Queue).

Solved issues:
  • Menu in Landscape mode was missing some options

Friday 6 December 2013

New version 0.9.3.3. Timer sleep. No more waking up with your music still on.

Hi again everyone! There's a fresh new version available.

This new release is focused on the much anticipated Timer sleep feature.

There are also a couple of fixes and small additions.

As usual, enjoy it and let me know if you find any nasty bug!

Release notes

New features:
  • Added Timer with Playback and Power options configurable.
  • Added new setting to configure the name of the playlist where the files from Files tab are sent.


Solved issues:
  • Improved connection detection in Server Wizard.
  • Fixed "don't show again" behaviour in Play all folder action from Files tab.

Sunday 1 September 2013

New version 0.9.3.2. Cursor follows playback. Who follows cursor?

Hi everyone! I've just uploaded a new version to the Play Store.

There's a couple of additions and some fixes too.

Don't forget to check out release notes below.


Release notes

New features:

  • Added Cursor Follows Playback setting ('true' by default)
  • Updated translations (thanks to all collaborators)


Solved issues:

  • Don't scroll the playlist to now playing song after enqueueing a new song
  • Improved metadata info layout

Monday 26 August 2013

New translation platform

The old Gengo String platform is shutting down in a few days and I managed to find another nice (nicer) translation platform.
I've invited to the new platform to all those who already helped (21 users!!!) translating but all of you who want to do your bit, just access the new platform and translate like a maniac :D

The url can be found under Translate! section in this very same blog, but can be summarized with the following link:

http://fb2kcontroller.oneskyapp.com/