Searchlight 1.1 released

Searchlight, my application for lighting up your world (or at least a few metres in front of you) using your Android device’s LED has been updated to 1.1.

This update brings better behaviour on HTC Sense devices, where the screen is kept on (as this is necessary to keep the device’s light switched on).  In addition, when the screen is switched off (manually) and switched on again, it can switch on the light again; previously it didn’t switch the light back on, yet still ran the service.  Oops.

Get the update through the Android Market, or download the APK right here.

Searchlight: An Android LED torch powered by the Search button

In case there aren’t enough of them out there, I’ve decided to chip in my own effort on the Android LED torch scene.

In a sort of sequel to my first Android app Torchure, I have just released Searchlight on to the Android Market.

The unique thing about this flashlight is that it’s activated by long-pressing the Search button.  Each time you do this, the LED will toggle on or off.  This means that (nearly) regardless of what app you’re in, you can toggle the LED.

You can even switch off the screen to save your battery for the LED.  Just note that on most devices the Search button will be disabled while the screen is off, so you’ll probably have to switch on the screen, unlock it, then hold the Search button.

When you long-press the Search button for the first time, you’ll probably get a selection of different apps for you to choose from.  Just select Searchlight off the list to toggle the LED.  Check the “Use by default for this action” checkbox to make sure that dialog doesn’t appear in future.

If you want that Search selection to appear again, go to Settings > Applications > Manage applications > Searchlight > “Clear defaults” button.  Then hold Search again and make a new selection.  It will also reappear when the list of actions changes, for example you install or uninstall an app that has global search functionality.

There are a couple of caveats.

  • It’ll only work on devices that implement the standard camera flash interface introduced by Froyo.  If it doesn’t work on yours, contact me and I’ll see if I can add support for your device or system software.
  • Don’t run Searchlight at the same time as another app using the camera, such as Camera, Barcode Scanner or Shopper.  Things will go badly, trust me.

It’s available on the Android Market for any Android device with a camera and flash running 2.2 (Froyo) and above.  This first version is only a smidge over 11KB and requires no outrageous permissions (just camera for obvious reasons, and wake lock to keep the LED on when the screen is off).

Alternatively, if you prefer not to use the Market, you can download it here.

Descent

Time for my obligatory seagull picture.

Here you can see a couple of seagulls going in for the kill — on some bread. Would they have it any other way?

I’ve increased the contrast and played around with saturation a bit. Call me crazy, but I decided not to crop the picture.

Finding Froggy

This is for all the people who wasted their lives on Sonic Adventure trying to find Big the Cat’s best friend, Froggy.  Here he is.

For the curious this is yet another of the amphibians to get themselves stuck in Huntersdale’s basement.  But instead of the legions of toads, we have a frog this time!  It was a fair bit larger than the toads, although the bubble wrap in the background of this photo gives you the sense that he wasn’t that large after all — and just how small the toads are!

I’ve decided to be a little bit creative for once, opting to make the image duotone, and fiddling with noise, contrast and vignetting a bit. No cropping, mind.

For the duotone part, I first made the photo black and white, then applied a slight yellow tint to the highlights and a slight blue/grey tint to the shadows.  I really like how those two colours blend together.

Hope you enjoy!

Bid for Freedom

Here’s just a couple of the many toads that have recently hatched near Huntersdale at Royal Holloway, rescued from a dark, dry basement down a set of stairs much too steep for them to climb back up!

I've Been Expecting You…

I’m finally getting around to sorting out many of the photos I’ve taken over the last year, partly thanks to getting a new laptop, but probably mostly because I’m motivating myself to do so!

This guy likes nothing more than a bit of bread on the Thames.  In fact, the expression tells me he almost expects it…

I’ve been trying out a few post-processing techniques, so there have been some tweaks to contrast, balance and saturation, plus a bit of noise reduction has been applied.

Making Ringtones Loop on Android

Update 2012-01-06: ICS appears to have a bug where the end of the file is chopped off, so ringtones do not loop properly. If I find or hear a solution I’ll update again!

Update 2010-11-09: Added clarification on why I suggest having a short (sub-10 second) ringtone. You want it to loop, right? =P

Following on from my previous articles on ringtones, I’ve finally worked out how to make ringtones loop seamlessly in Android.

My problem before was that, despite the fact I made an OGG that should loop properly, when played back on Android, it didn’t.  Turns out, there’s a little piece of metadata you need to add to the tags in the ringtone to make it loop properly.

Using your favourite tag editor (I used foobar2000 on Windows), add a tag/field called “ANDROID_LOOP”, and set it to “true”.

Please note that the file itself will also need to loop properly for things to work out.  That means that if you’re basing your ringtone on a longer piece of music, it needs to be trimmed down to 10 or fewer seconds and trimmed in such a way that the audio sounds like it goes on forever when played from beginning to end repeatedly.

The file doesn’t have to be less than 10 seconds, but I figure you’re reading this because you want to make a file that loops!  Most carriers will stop ringing your phone after 15 to 30 seconds and pass the call to voicemail.  This depends on the carrier, your preferences (if you can change how long voicemail waits at all), and whether or not you have voicemail enabled!

Also, you need to use a format that doesn’t add silence to the end of the track. OGG (which I recommend), FLAC and AAC should all work fine. I do not know if Android reads LAME’s metadata with allows MP3s encoded by it to loop. MP3s encoded with other encoders will probably add silence and as such will not loop perfectly.

Have fun with this!

Team orders in F1? They're here to stay–get over it!

Just wanted to quickly chime in on the whole Ferrari one-two fiasco.

I basically agree with what David Coulthard kept saying on the BBC’s extended coverage–no matter what fans or press may shout, you can’t take the teams out of Formula 1.

They spend millions of pounds on research, design, manufacture, promotion and, of course, the drivers: so is it so bad when sometimes the drivers have to follow “team orders” to make their team happy?  It is their job to work to their team’s satisfaction after all.

Further, the now famous again rule 39.1, stating that any orders that affect the outcome of the race are prohibited, seems almost impossible to police.

Look at what’s happened so far: Alonso is saying that Massa happened to be slow and passed him.  Massa claims that it was his decision, not the team’s.  Smeadley (Massa’s race engineer), who apologised during the race to his driver after being passed by his team mate, suggests he did so because things hadn’t gone Massa’s way, rather than the conclusion many jumped to: that he had given a team order he wasn’t happy with.

Whilst the way it has all been handled seems to make the situation a painfully obvious case of team orders, there’s very little the stewards can actually do.  Like it was suggested in the extended coverage, they can’t just reject what they get told because they “don’t believe it”.  The evidence has to be more concrete than that.

Even Massa blatantly slowing down to let Alonso through doesn’t prove there were team orders–Massa said he made that decision, after all.

Although I do find something a bit unsettling about the whole scenario–not that this one has happened, but that it could happen a whole lot more in the future.

A sport where the results are largely governed by politics would probably be a heck of a lot less interesting than one where every point is fought for tooth and nail.

I hope things stay unknown.  The last few seasons have been great to watch, since the performance gap between teams–the top teams at least–is so small!

Torchure 1.1.1 Released

I’ve uploaded a minor bugfix release for Torchure to the Android Market, which fixes the buggy systems preference not taking effect.

Don’t remind me of the irony…

Torchure 1.1 Released

My first Android Market update!  Hope this goes well.

This update includes:

  • A new colour! You can change the screen to red, to help preserve night vision. This makes the torch less effective, mind.
    • To switch colour, either swipe sideways on the screen or use the new menu option!
  • New preferences have been added to let you choose what colour you want on starting Torchure: white, red, or whatever you last used.
  • The Lock Brightness preference has been fixed, and now actually works.  (Locking via pressing the trackball or the menu option worked fine)
  • Added a new Hints & Tips screen, to highlight the little things I can’t fit anywhere else!