Experiences producing SVG animations

As Adobe Flash Lite is not yet common in mobile devices and animated GIF screen-saver supports maximum 30 seconds of animation, the SVG technology was chosen to animate some of my stories for mobile devices. I didn’t have any budget to build my own J2ME application, which was my original business plan over two years ago, I hoped to complete those on very low budget and tight time-frame.

My stories where written in Brighton between 2005-2006 using characters Tracy (teenage girl), her two boyfriends Baz (beer and heavy rock lover), Nigel (computer nerd) and Doggy and the objective was to get at least three pilots to the market.

There were two products in the market: from Beatware  and Ikivo. I first started the project using Beatware, but within a week realised that this product doesn’t much work as promised. I wanted my characters walk and talk. Beatware had nice opportunity to ungroup character objects inside their application, so that’s a way I was trying to use it. However, it did not group them back properly. Suddenly, my character legs started to move faster and different path than my character body. I also expected, than once the character walking style is created I can use it from animation library. However, this was impossible using Beatware. So, after a week work I abandoned the product and switched to Ikivo Animator.

Later, I found out, that Beatware code does not support AnimateMotion tag and animates each object separately. That’s why there were synchronisation problems.

There was much more work to do using Ikivo Animator. First, I had need cut my characters to the objects, which I wanted to animate. Like legs, mouth, head, etc. Then I grouped them back in Ikivo Animator and started to animate.

I was able to animate my characters only once and after the animation was saved, I wasn’t able to animate objects inside group anymore. Some of my characters movements where done moving objects, some movements where rotating objects. Like Tracy walking was moving her boots up and down within 0.4 second interval and rotating her hands. Doggy walking was only rotations, rotating his legs, hands, tale and ears.

Producing Tracy or Doggy animations though the full clip was around 20H process and usually Ikivo Animator crashed before I was able to complete the animation. With the frustration I started again and prayed the God, that maybe this time I’m able to complete the animation. At least, I got those products finished using Ikivo Animator.

I even lost my work with first episode “The Skirt”, where I really wanted to produce expensive animations. When this file size was around 13MB, Ikivo Animator crashed during save process (it took hours to save anyway) and afterwards the file size was 0.

So, I understood then the limits and cut down the objects and animations.

My second problem was to use Corel instead Adobe. So, I had to find a way to get Corel files to Ikivo Animator as Corel SVG wasn’t compatible with Ikivo Animator.

Meanwhile I used SVG Factory, but this product made me unsupported and invalid rectangles. Later I found out, that replacing Corel SVG file CSS definitions to actual object colours and line widths will help and I wrote a small program to do it.

Anyway, I got my stories animated within my small budget and those are ready to the market. Those are two minute clips with the actual file size around 2MB (around 300Kb, when delivered in SVGZ format). There is no soundtrack as my characters are talking in bubbles.

Following are my recommendations for Ikivo to improve their product:


  1. There should be possibility to continue group subobjects animations after reopening the file.
  2. When dragging an object to animation in 59 second for example, why I need to go back to 0 seconds, make the object invisible there and go back to 59 seconds to make it again visible there. It could save me lot of time, if the object will appear exactly in the time-line where I want it to appear.
  3. Instead removing unsupported metatags manually later from file, maybe removing those during the process to drag the object to the animation could be better idea?
  4. Grouping and Ungrouping objects inside the Animator could be nice feature to add.

Even SVG should be mature standard delivered over 300M handsets; I found a problem testing my creation against different vendors:

  1. After removing the unnecessary META’s, I got it working using Adobe SVG viewer and Opera browser;
  2. It should work with Ikivo drivers, however those are used as screen-saver in my mobile and the mobile switches off after few seconds. I tried Ikivo’s recently published Media Player, however we didn’t get it work using my friend’s Nokia 6630. My investors was trying it using other Nokia models with no success. I got an e-mail from Ikivo to test it in particular Nokia models. I can’t tell somebody interested to view my clips to purchase new mobile phone?
  3. Tinyline had a bug in their program code, which shows my character objects in wrong places and sizes. Andrew has been promised to fix the bug since January always asking another few weeks to do it. Andrew’s J2ME and JAVA code playing those inside browser could be the best solution to distribute my content. But as first step, Andrew should increase his buffer size, which is now limited to 1MB.
  4. I abandoned to support open source SVG viewers from Mozilla or Bitflash. Those do not support AnimateMotion tag. The Renesis  seems to be even much worse, than Mozilla and Bitflash as I didn’t it to show my content at all. It just crashing, when opening the file.