Category Archives: Become Apps

Voxette nearly sings

Voxette256I’ve been transferring the code for Voxette from IOS to OS X. This has been very time consuming, but not unrewarding.

For the IOS app, all I had to do was form up the text, choose a voice, set the desired pitch, rate and volume of the speech, and tell it to go. This worked very well up to a point, but the only way to get more control over the  sound was to change the words into non-words which worked better. Also I couldn’t find a way to save the output to a file.

On OS X everything is different, and I have had to learn about everything I wish to assert control over. This starts with controlling the window system, which is not a concern on IOS as the app owns the whole screen whilst running. Every part of the creation and management of windows and views, and the controls they use is different and harder in OS X.

Having got a ramshackle outline working, I started with the speech synthesis libraries and functions, which are again different, much more sophisticated, but requiring a fairly comprehensive set of new things to be learned at least partly before getting it to do what I want.

What I am trying to produce is an OS X app that will speak text expressively, in a selection of voices, and allow the output to be recorded to file, so it can be added, say, to a presentation, which can then be sent as a movie file for someone else to run. There are, I suspect, many people like me who find listening to recordings of their own voice uncomfortable, which makes the performance at recording worse than it should be, and always leaves the recordings feeling unsatisfactory. To get the expression, I have had to learn about phonemes and prosody, and the way they can be affected, so that the user won’t have to but can make some selections or move some controls on screen which will give them what they want without having to learn a lot of esoteric terms and symbols just to get their task done.

I am using the built in Apple voices, (You can download quite a few of them above and beyond the standard installation), because they will almost certainly work best with the software I am writing. Some, but not all of the voices, allow you into a fine level of control of the phonemes used (The components of the sounds of each word, analogous to syllables but with an accent embedded) including providing the flow of pitch across the word or phrase. This means you can, to a certain extent, make the voice sing.

I have just got everything else working well enough to have arrived at the stage where I can work on the interface and mechanics to make this happen.

Let it go

I have been working on this for a while, using Sopranotron for the Backing vocals.

Sopranotron is an iPad app which simulates a Mellotron using tapes recorded by the soprano Caitlin Downie. It does a lovely job, I hope you agree, in providing Ooohs, Aaahs, Eeeh’s and Baas, but I wanted to add some spoken or sung parts without singing or speaking them myself.

I couldn’t find anything on-line to do the job, and tried Siri but it was cumbersome and limited. However I found that IOS app developers could use the text to speech capabilities of Siri from within their programs.

I have almost finished the development of an iPad app that accesses all the available voices used to drive Siri. The access given allows quite a bit of control including raising and lowering the pitch and rate of each section of speech. I found that by splitting sentences into words, and words into sub-words I could add a bit of tonality into the spoken text. This is especially effective in the female voices and those in romance languages. Of course not all words work in all languages and the speech processor resorts to spelling some words, but you can fiddle by changing the spelling to drive a particular language to sound as you wish. You can also get fascinating sounds that aren’t recognisable words, especially from the oriental languages.

Having got my phrases as good as I could, I imported them into Logic Pro X and used the Audio Processing tools there to fine tune them and give them a bit of gloss.

I haven’t got a name for the app yet but it’s on the website as Tune-O-Vox until I can think of a better name which, to be quite candid, shouldn’t take long.

Some things I’ve learned about iTunes Match … Part 1

I used to buy albums on vinyl, then on CD and still think about my music in terms of albums. Before mp3 players, most portable music was on cassette in cars or on Walkman devices. Most people shunned pre-recorded cassettes and bought albums and then recorded them onto cassettes to listen to when not at home. Once people were taking their music out an about, it became a much less immersive experience, instead of listening to an album, (all of it, in the order the artist had carefully arranged), people would assemble tapes of their favourite songs rather as a DJ would, to suit a specific purpose. People had mix tapes for car journeys, for exercising to, for giving to friends. As mp3 players became prevalent you could access your music by artist, album, song, or a playlist (A replica mix tape). Space being at a premium early on, many people loaded only the songs they liked best from an album and used playlists to access them. As digital download stores appeared, the focus was less on albums than on songs. You could replicate your favourite mix tape by just buying the songs you liked from each album and using a playlist to assemble them.

When iTunes came along, the pattern was established and so the key item of data in iTunes is the song. Each song is stored with some meta data (Data about data) such as its name, the performer, the composer, the album it “belongs” to, its track number on that album, the album cover and so on).

Two interesting things arise from this :-

Albums don’t exist in their own right, they are called into existence by being mentioned in a song’s metadata.

Although songs know which album they belong to, they know nothing about which playlists they are referenced in.

Understanding these two things is a prerequisite to understanding iTunes match. It is a source of puzzlement to many that most of an album you have ripped from CD will match, but one or two songs may not. “Can’t it see ?”, we ask ourselves, “They’re on the same album, of course they should match” but it doesn’t see because it doesn’t look, because it doesn’t care.

Downloading all your favourite tracks from iCloud will not make your playlist appear, and similarly just copying a playlist to your iPhone or iPod does not ensure (Or didn’t when last I tried it) that all the tracks on it are transferred.

Album art in iTunes exists in many places, but the most important place is in the song, more specifically the copy of the song held on the PC/Mac holding the library. This may not be the same digital entity on your iPhone if your old mp3 file was matched in the iTunes store. You may hold an mp3 file with embedded art, but your iPhone/iPod has an m4a file from the store but not the album art from the store. Your preference for album art is given preference, so your old artwork is uploaded and attached to the new m4a download, in my case this is often not what I want.

Then begins the descent into the murky world of trying to outsmart the iTunes art mechanism and the near madness it engenders when it lets you change the artwork, and before you have had time to get it updated on your iPhone/iPod, changes it back to the crappy stuff you just spent ages updating.

I think I’ve got to the bottom of most of this mechanism, mostly by following guidance from those much cleverer and more persistent than I, but only via glimpses rather than a comprehensive understanding. Part of this is due to my failing to understand everything that’s going on and where, but much also is because the iTunes match / iCloud process is a complex one, which isn’t all necessarily working properly at the time you are using it, and things can only be detected from fragments of knowledge and inference.

For instance, I use iTunes match on my iPhone and as I’m writing new pieces of music I make changes, delete the old version from my iTunes library, insert the new one and update iTunes match. Usually the new file uploads and within seconds the phone updates the status of that song as needing download. Once in a while though, nothing happens after the upload and nothing I have tried can provoke the iPhone to check and update. This last happened to me about two weeks ago, so I went to the message boards to see what was up.

I read through a huge number of posts from people having trouble with iTunes match not making files available for download, interleaved with others asserting that they were having no problems so it must be something the original poster was doing wrong. This went nowhere for several pages until a grown-up entered the discussion and suggested that maybe Apple used different servers for iTunes matched content and user uploaded (Non-Matched) content and that maybe there was just a problem with this second group of servers. This seemed to fit all the facts and indeed fixed itself, (Apple fixed it) fairly soon. Nothing to do with the users or what they were doing, but a formerly hidden level of complexity revealed.

I shall write Part 2 “A definitive guide to sometimes fixing some of your iTunes artwork” presently.


somnus iconI have just uploaded my most recent app to the iTunes app store for approval and sale. The app combines two pieces of music I wrote specifically for it, drifting away and falling upwards with some simple visual prompts which guide the user through a series of muscle activities which promote relaxation.

I’ve been using the procedure myself since I heard it described on the radio many, many years ago as “Saying goodnight to my toes …” or similar.

Except at times of extreme duress, exams I’ve not properly prepared for, family illnesses and such, it’s always worked for me.

You can read about it here should you wish.

Head Spinning

Image from

Being a child of the TV age, I often find it difficult to just listen to music without closing my eyes. It sometimes seems necessary for sounds to have an accompanying visual element, anything will do and I get distracted and realise I’ve not been listening. This happens more often on more familiar music so perhaps I’m just getting bored with listening to some things too often … or so I thought.

I bought some new earbuds on eBay, and trying them out I found that things were different somehow. There was nothing wrong with the sound quality, far from it, but there was something new and fresh about what I was listening to. Then I realised that the earbuds were mis-wired left to right. As they were of this new anatomically correct type that engages right into the ear canal, it is not possible to merely put them in the wrong ears. I shall keep them as they are, however, rather than sending them back or attempting to re-wire them as they make a diverting change. For those of you with swappable earpieces, I suggest trying it.

I had a quick search on the iTunes app store to see if there were any apps that let you swap stereo channels and couldn’t find any, so I have been playing with the IOS audio playing interface to see if I can produce an app which allows you to swap channels whilst playing your iTunes music. Whilst fiddling about I’ve managed once not only to get the channels swapped but also to get the impression of flying over the music, turning and coming back again from the other side. I’m now working on a suitable interface, preferably one that doesn’t involve rotating a cube on screen as those make my head swim.