Home > Android, Tune Announcer > Android Tune Announcer

Android Tune Announcer

Description

This is an Android application that announces the name and artist of the song currently being played. It’s useful if you have a large music collection and cannot see the screen to check the names, e.g whilst exercising. If you’ve only got that one Kylie album, then maybe this is not for you ;-D

It uses the native Text-to-Speech capabilities of the device to speak.
Example: The application will speak “Now playing ‘Firestarter’ by ‘The Prodigy’”

Tune Announcer also provides a visual indication of the track details via a customised toast that shows the track, artist and album names, along with an image of the album cover. For more details, see this announcement.

Tune Announcer relies on you having the correct artist and track details in the meta-data of your song files.

Pro Version

The ‘pro’ version is a paid for version that offers the same speaking functionality, but adds the following:

  • Notification icon. When enabled and music is playing, Tune Announcer will show an Icon in the notification section of the phone. If you select this, it will put you directly into the configuration screen.
  • Toggle widget. This is an on-screen widget that allows you to toggle the enabled status of Tune Announcer with a single touch. The widget indicates the status by showing the icon’s note as green for enabled and red for disabled. This is useful if you want a quick way of enabling or disabling Tune Announcer.
  • No adverts on the configuration screen
  • Toasts all the time
  • Editable list of characters that should not be spoken
  • A new ‘pro’ icon, woot!
  • Speaks the album name
  • Free format speech mode where you can place album, title and artist details into any phrase in any order
  • Tasker support, see this blog post for more details
  • Force the speech to be in English (American). You can test this with the free version. Note that you may need to download the English speech files for this to work.
  • Option to speak at the beginning or the end of the track
  • Limited support for Google Music

Since the speaking functionality is the same in both versions, try the lite version first to ensure that it works with your preferred music player. If it does, and you like it, then feel free to buy the ‘pro’ version.

Toasting

Displays the track details and album cover in a pop-up toast.

There are a number of settings that alter the behaviour of Toasting, these are:

  • Toast Large in Landscape Mode: Uses a larger layout if the device is horizontal. Great for reading in the car whilst using sat-nav and stops the missus asking ‘what did it say?’ ;-)
  • Two Rounds! Toasts the same information twice. The normal toast is a little too short, so this pops two of them. On some devices the gap between toasts may be large so you might, for aesthetic reasons, want to diable this. On a HTC Desire there is only a small flicker between toasts so it’s ideal.
  • Toast Vertical Location. You can set the toasts to appear at the top, center or bottom of the screen.

Toasting Large on the Market

Volumes

The application speaks the text using the system volume and optionally mutes the music whilst speaking.

The speech volume is now set relative to the current music volume. This can be adjusted using the slider from -50% (quieter than the music) to +50% (louder than the music).

Also, the music volume can be muted whilst speaking, again using a slider. The muted volume can go from -100% (no music) to 0% (no change in the music volume).

Hopefully these options now cover all the niggles that people were having and my pet bug-bear of forgetting to change the speech volume when wearing headphones and having Tune Announcer shout at me ;-)

Non-standard Media Players and Scrobbler Support

If you are using a non-standard media player i.e. not the Android or HTC players, then adding support is difficult. However, there is a simple workaround if *your* media player supports last.fm scrobbling as these must broadcast Intents to the main scrobblers. As of v0.5, Tune Announcer supports the Android Simple Last.fm Scrobbler and ScrobbleDroid. If you enable one of these in your media player, then Tune Announcer will work :)

Speech Pitch and Speed

v0.6 adds the ability to change the pitch and speed of speech using a couple of sliders on the configuration screen. The intent was to make the speech less, well, android like. Whilst this works well programatically, the results are less than impressive. Changing the pitch alters the voice from heavy smoker to hysterical. The speed changes from v.e.r.y.s.l.o.w to clipped. There doesn’t appear to be any way to change the apparent sex of the speaker, it’s female or nothing.

If the speed slider isn’t working for you, then make sure you have not overridden the settings in the main Text-To-Speech configuration screen in your Android settings.

Voice and Pronunciation

Tune Announcer can only use what is installed on the device. Generally, this is the Pico Text-To-Speech library, which whilst adequate, does struggle with some English names. There are now many alternative TTS providers on the market, I’d suggest you try a few and see which work for you. Feel free to leave comments here recommending the better ones.

The latest SVOX TTS engines allow you to tailor the pronunciation of words to, so ‘Blancmange’ can be correctly spoken instead of the humorous ‘Blank Mange’. The voices are not free though.

Things to do:

  • Shake to speak. This would only be really useful if it works with the device sleeping
  • User selectable MP3 tag elements to speak, such as album, track length, etc
  • Announce the song just played when a new one starts(Done in Pro v1.18)
  • Announce the song details after a specified % of the song has been played
  • Specify the speech volume as a percentage of the current media volume. This is useful if you change the media volume for different environments and don’t want to keep changing the speech volume in Tune Announcer too. (Done in v1.1)
  • A widget to toggle the enabled status of this app. Useful if you don’t want it announcing all the time (I only need it when cycling) (Done in the ‘pro’ version)
  • See if I can link in with last.fm scrobble data, so that this works with any music app that supports last.fm (Done in v0.5)
  • Pause the track (or adjust the volume) when speaking (Done in v0.3)
  • Allow the user to change the text for “Now playing” and “by”. Simple localisation :) (Done in v0.3)
  • Allow the user to select the pitch and speed of speech (Done in v0.6)
  • Option to change the system volume from the configuration screen (Done in v0.7)

FAQs

Q. Why does it sound so bad?
A1. Sounds OK to me, but the Text-to-Speech library is provided by Google and not me. I can’t change how it sounds :-) Try it in French, that language always sounds good.
A2. The PRO version has a ‘Speak in English’ option that may be better if your default locale is not English and you play mainly English music. Press ‘Test’ in the free version to see if this works for you.

Q. It seems a little slow to speak, why is that?
A1. On my HTC Desire, it can take a second or two to initialise the Text-to-Speech library. On a device with little free memory, or a slower processor, then it may take longer. The next time it speaks it should be quicker, unless the OS has swapped out the Text-to-Speech libraries again :(
A2. When using scrobble support to initiate the speech, Tune Announcer has to wait for the event to be sent from the music player. Some players, such as MixZing, send a delayed scrobble event. If you suspect that this is the problem, then perhaps you can kindly request the developer to initiate scrobble events earlier. (You can test this theory by pressing pause/play after speaking, if the speech is delayed then it’s most likely due to a slow scrobble event).

Contact

If you have any questions about Tune Announcer, or suggestions for additional functionality, then please contact me, either by this blog or via email to Tune.Announcer at softwyer.com

Donating

PayPal doesn’t really support solicited donations for products, unless you have charitable status, so if you like it then buy the ‘pro’ version.

Changelog

The change log is no longer being updated in this post. Changes are now detailed on the SoftWyer Google+ site.

  • v1.14 2011-08-09 Setting to choose channel.
  • v1.13 2011-08-06 Toasts can appear at the top, center or bottom of the screen.
  • v1.12 2011-07-?? Don’t repeat scrobbles for the same song.
  • v1.11 2011-07-?? Tweaked the ad settings.
  • v1.10 2011-07-?? Speech channel changed to DTMF to avoid low volume issues when using headphones on HTC devices running OS2.3.
  • v1.9 2011-06-04 Force the speech to be in English (PRO only)
  • v1.8.0 2011-02-28 Tasker support for enabling and disabling toasts and announcements (PRO only)
  • v1.7.0 2011-02-15 Enable or disable scrobbling by provider
  • v1.5.3 2011-01-29 Larger toast in Landscape, ability to choose whether to toast twice for a longer toast (was a default option before)
  • v1.5.2 2011-01-27 Fixed a few bugs, OS2.3 compatibility
  • v1.5 2011-01-25 Toast the track details when speaking for a visual notification
  • v1.4 2011-01-20 Add characters to be omitted from speaking, such as ‘[‘ which is spoken literally as ‘open left square bracket’
  • v1.2 2010-12-16 Support for Winamp music player
  • v1.1 2010-11-12 Changes to the way volumes are set, see above
  • v1.0 2010-11-11 Release of pro-version. Some bug fixes and code realignment to support this.
  • v0.7.2 2010-11-03 Bug fix: Speaks unknown when the artist or title not defined.
  • v0.7 2010-09-13 Enable user to configure the spoken volume.
  • v0.6 2010-09-09 Enable user to configure the speed and pitch of speech
  • v0.5 2010-09-08 Add support for ScrobbleDroid
  • v0.4.6 2010-09-08
    • Fixed regression with enable/disable in preferences
    • The service now exits after speaking rather than running all the time
    • Fixed problem when speaking for the first time when the Text-To-Speech engine had not initialised
  • v0.4 2010-09-07 Added support for the Android Simple Last.fm Scrobbler.
  • v0.3.1 2010-09-06 Fix some issues around saving preferences. The soft keys don’t generate key-down events like they do in the emulator *#?#. Use the view onPause method to save all preferences to avoid this.
  • v0.3 2010-09-06
    • Mute the audio sound when speaking – note that this doesn’t stop playback.
    • Can now change the spoken prefix.
    • Can selectively disable speaking the artist and track.
  • v0.2 Changed icons and added ads (sorry ;-)
  • v0.1 Initial version
About these ads
  1. marc
    March 28, 2011 at 12:36

    great functionality: good combo of voice and the popup. However, the sound is not adjustable on my phone, regardless of which setting I use in the program. Even when a manually put the system setting of the phone at zero, it has no effect on the voice-level (and the standard setting is way too loud i’m afraid) If you could make some adjustment on the sound level, much appreciated,

    Cheers
    Samsung Galaxy S (I9000)

  2. June 3, 2011 at 14:24

    Hi, it’s a very nice app, but I have one little localizeation problem (preventing me from buying the pro version). I have set the default TTS language to German – which is my native language. You app no tries to read all the tunes and artists in german, which sounds totally ugly and uncomprehensible. Please ad an option to choose the language or make english the default language. I think about > 90 % of all song titles are english anyways… Thanks!

    • June 4, 2011 at 10:18

      Thanks for the suggestion.

      The PRO version now has a ‘Speak in English’ option that forces the speech to be in English, albeit with an American accent ;-)

      You can test this in the free version using the ‘Test’ button.

  3. Trevor Alsop
    July 19, 2011 at 17:45

    Any recent issues with Droid2/Android 2.2? TA use to work and lately hasn’t. Version 1.11

    • July 19, 2011 at 20:20

      Possibly related to audio stream change. Have emailed you. Hope you used a real email address when commenting ;-)

  4. Me
    October 17, 2011 at 04:20

    I haven’t been able to get it to announce my songs yet. I’m using the default player on my samsung fascinate, which is “music player”. The TTS works fine when I press the button to hear an example, both through the app and in my TTS settings on the phone. Is there something I’m missing? Do you need to have last.fm for this to work?

    • October 17, 2011 at 06:46

      Hi, Tune Announcer should work if your music player supports scrobbling. You may have to enable this in your players settings.

      Whilst you should not need the last.fm application, some players may check for its presence before scrobbling. So just installing this app may start your player scrobbling.

      Alternatively, you may need to use a player that does scrobble. Songbird is a reasonable player.

  5. Jhonathan
    November 29, 2011 at 09:51

    it announces when it shouldn’t, whenever i engage a new call and when the player widget is loading, i think that it happens some other times but i didn’t get the pattern yet…

    is there a way to make it interact with both winamp and poweramp (both are with scrobbeling on), it works on poweramp only.

    • November 29, 2011 at 13:21

      We’ve noticed that Google music may broadcast scrobbles at inappropriate moments. To avoid these make sure that support for Google music is not enabled.

      Winamp, I think, only scrobbles if Last.FM is installed.

  6. Facts
    December 31, 2011 at 02:38

    I have CM6, Simple Last.fm, and Tune Announcer 1.15, and it doesn’t toast or speak, it only pops up “stop request” debug toasts. In Simple Last.fm, I see the “Last scrobble submitted” and “Last now playing notification submitted” statuses updating, but Tune Announcer just shows the debug “stop request” toasts and does nothing else. I’ve tried all settings and rebooted, and googled everywhere. Any clues?

    (Editor – I’ve merged some of the later comments into this one)

    … also, I’m using both the stock Music Player and Winamp, and neither work. Again, I’ve tried all settings.

    … hey, good news. I replaced Simple Last.fm with Scrobble Droid, and now it works with the stock Music Player (but not Winamp).

    … but the Music Player has to be open/displayed for it to work.

    … correction: the Music Player has to be open/displayed for the “now playing” to be spoken, but the scrobbling works elsewhere also.

  7. December 31, 2011 at 10:06

    Hi,

    I think WinAmp checks for the installation of Last.FM before it scrobbles. You will need to install this, though I don’t believe you need to configure an account with Last.FM. Other music players may also make these checks before scrobbling.

    The Simple Last.FM ‘Last Scrobble’ and Tune Announcer’s ‘Stop Requested’ messages are equivalent, so I think that is working OK but the music player is not sending a ‘start’ event.

    Which default music player are you using? If it’s the new’ish Google Music player then it doesn’t scrobble correctly.

    You can send bug reports to TuneAnnouncer at softwyer.com if it’s easier ;-)

    • Facts
      December 31, 2011 at 10:12

      I will try the (bloated) Last.fm app later, but at least I got one configuration working (Scrobble Droid + stock Music Player, either open/displayed or on the lock screen). But Tune Announcer does have explicit support for Simple Last.fm …

  8. Facts
    December 31, 2011 at 10:13

    … but this app is just what I need, to keep from having to dig my phone out of my pocket to see what the name of the song is.

  9. Facts
    December 31, 2011 at 21:30

    ok one last update: I got Tune Announcer working with Last.fm (official version) + Winamp, and ScrobbleDroid + stock Music Player, but not Simple Last.fm with either Winamp or the stock Music Plaer. cheers.

  10. Dick lewis
    April 23, 2012 at 14:12

    Great app but on my Droid Bionic the Pro feature only announces now and then. The free announces every time. I love it anyway. I am using Rocket music player because it syncs perfectly with my iTunes library – both ways. Should I have uninstalled the free before installing the Pro?

    • April 23, 2012 at 18:43

      Hi,

      Tune Announcer Free and Pro are totally independent, so you can have both installed. However, we wouldn’t recommend having both listening for scrobbles and trying to announce them. You should either uninstall the free version, or disable it via it’s preference settings.

      Hopefully this should sort out the problem, if it doesn’t, drop us an email to TuneAnnouncer at softwyer.com

  11. Claw
    August 29, 2012 at 08:18

    Any chance this will work with spotify? It has built in scrobbler

    • August 29, 2012 at 19:29

      Unfortunately, Spotify uses an internal Scrobble client and doesn’t broadcast the Scrobbles, so Tune Announcer cannot pick them up.

      It might be worth you contacting Spotify and requesting that they broadcast scrobbles so that other applications can ‘do stuff’ with them. You could also leave a feature request on their forum -> http://community.spotify.com/t5/forums/searchpage/tab/message?q=scrobbling

  12. September 27, 2012 at 12:30

    Hello,

    I just bought the pro version and like it. However I have around 20% of my songs which are in french and I was wondering if it will be possible to detect the language of a song (if tagged correctly in field comment by example [french/english]) and to switch accordingly the text to speech settings. BTW do you thing it is feasible with tasker? Thanks

    • September 27, 2012 at 17:23

      If it’s tagged correctly, i.e. as TLAN in ID2.3 tag format then it could be read. Android doesn’t handle this particular metadata field, so we’d have to read it directly from the file.

      It’s something for us to consider doing, so we’ll stick on the list of things to do. Might be a while before we get around to it though.

  13. Brian Gollmer
    June 17, 2013 at 01:39

    Android 4.2.2 device. Set to DTMF in app since SYSTEM doesn’t work.
    Using Ivona TTS
    Announcement is much quieter than when I go into TTS voice settings and click the test button.
    I have the slider set to mute music while announcing, but I need the voice louder.

    • June 17, 2013 at 20:10

      The voice volume is a function of the music volume. We assume that whilst you have muted the music volume, you have also boosted the speech volume up to it’s 50% maximum?

      Other than that, there’s not much more we can do as it appears to be a feature with the TTS libraries. We have the same problem with the Navigation voice volume too (https://code.google.com/p/android/issues/detail?id=34592)

    • June 17, 2013 at 21:36

      We’ve just downloaded the Ivona voice, since it’s free (https://play.google.com/store/apps/details?id=com.ivona.tts) and tried this. It seems to play OK on our Nexus 4 and is louder than the default TTS. What device are you using (Samsung, HTC, etc)?

      • Brian
        June 17, 2013 at 22:07

        Samsung Galaxy S4
        The TTS voice is quieter during tuneannouncer than she is when you are in TTS settings and do the play sample. The 2 volume sliders in tuneannouncer are set like this:
        speech -50% to +50%. the slider is dead center as defaulted
        music -100% to 0%. the slider is what I think is -75%. It’s halfway between -100 and dead center.
        music is mostly inaudible while she’s talking, but she’s not as loud as the the music was.
        I tried with the speech slider at +50% but that doesn’t seem to have effect when set to DTMF.

      • Brian Gollmer
        June 18, 2013 at 01:54

        I’ve somehow gotten the volume back to normal.
        Tried a bunch of things so not sure what actually improved it.
        Deleted cache and settings for ivona
        Deleted cache and settings for tuneannouncer
        Uninstalled ivona. Rebooted.
        Reinstalled ivona. Rebooted.
        Launched tuneannouncer, prompted on which TTS to use, set ivona to always.
        Toggled tuneannouncer between DTMF and SYSTEM a few times.
        Ran the voice volume slider up and down the range, leaving it at +50.
        Volume is back to acceptable level now both via speaker and via bluetooth headset.
        Is it possible DTMF volume was somehow set lower and there’s no volume slider that we can see/change? Or is it tied to the System volume completely?

  14. June 18, 2013 at 18:28

    Glad it’s working.

    We tried ours on bluetooth and the volume is still significantly quieter than the music, for both the standard and Ivona TTS. This is an OS issue, as there is no difference between speakers, headphones or bluetooth as far as Tune Announcer is concerned.

    The volumes in Tune Announcer are all relative and it works the following way:

    1) Before speaking, work out the current music volume as a percentage of the overall range.
    2) Mute the music volume by the Tune Announcer music setting.
    3) Change to the selected audio channel for speaking (System/DTMF/Music, etc)
    4) Set the speaking volume to the same % of the range as the music volume. Note that each audio channel can have a different maximum volume number, but the actual volume should be the same at the maximum figure.
    5) Now apply the voice boost value as specified in the Tune Announcer settings.
    6) Speak.
    7) Reset volumes.

    Because we use percentages, the ‘loudness’ should be the same. However we have noticed that with Android 4, the TTS volumes have been far lower when using headphones or bluetooth.

  15. Rich
    August 17, 2013 at 02:07

    My speech goes to silent during announcements. My sound profile switches to silent at the announcement for some reason

  1. August 1, 2013 at 07:44

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: