So Long, and Thanks for All the Fish

Over the last month and half i have released / submitted 4 apps CVC words, Wordastic, CineWorld and NatureSounds4Me

NatureSounds4Me is still in marketplace. Others are available for downloads. Cool Camera WP app has been updated so that

1) There is unlimited trial – its now ad supported

2) No trial restrictions like before

3) Background processing of photos so burst mode can capture more pictures.

4) Improved album view

Now for few weeks i am doing Windows8 Dev

Cool Camera #WP #WindowsPhone @CoolCameraWP

Cool Camera has been udpated to 1.9. I just finished uploading the new XAP to marketplace. So whats changed ?
Well not much :) I have been busy with DIY at home so this is a bug fix / UX enhancement release

1) Portrait pictures with zoom were not correctly cropped. Fixed
2) Reduce album view so show only 8 but larger thumbnails
3) Metro UX enhancement in Media viewer based on Dave Crawford’s suggestions. Hide instead of disabling controls and ensure fonts are readable :)

I’ve also been testing my Alarm Clock app (supporting multiple alarms)

Lighten Darken Skin tone in C# and Silverlight for #windowsphone #wpdev

I started Cool Camera as a stop gap application trying to figure my way around SatNav app (which started while i was answering some posts on AppHub forums). Current availble version stands at 1.6 and 1.7 is with Microsoft.

It has come a long way since 1.0 – which only supported: Taking pictures and a camera style HUD. The picture viewer was very basic. Just display the image in Image control. Since then i have * added support for filters, added video recording and playback, added album viewer. I have worked a bit more on image processing and i am a bit better at image processing.

The first set of filters were added to app thanks to René Schulte – http://kodierer.blogspot.co.uk/. I remember coming across http://picfx.codeplex.com a while back and it provided very handy way to creating and applying effects to WriteableBitmaps. I used the few supplied to get stared however before long i was asked if i could provide a way of making images darker. The most common scenario is when you use flash and the images are too white – especially faces. As i started, i remembered face detection post by Rene. http://channel9.msdn.com/coding4fun/articles/FaceLight–Silverlight-4-Real-Time-Face-Detection.

I started with Rene’s YCbCr code and the first pass to detect whether color falls into skin tone range. The first pass for skin tone detection worked just fine, how search began on how to increase or decrease luminance of image. I came across HSLColor which had an ligthen / darken method but that did’t work so eventually, i used Lerp

public int[] Process(int[] inputPixels, int width, int height)
      {
          var resultPixels = new int[inputPixels.Length];

          // Threshold every pixel
          for (int i = 0; i < inputPixels.Length; i++)
          {
              int c = inputPixels[i];

              var ycbcr = YCbCrColor.FromArgbColori(c);
              if (ycbcr.Y >= LowerThreshold.Y && ycbcr.Y <= UpperThreshold.Y
               && ycbcr.Cb >= LowerThreshold.Cb && ycbcr.Cb <= UpperThreshold.Cb
               && ycbcr.Cr >= LowerThreshold.Cr && ycbcr.Cr <= UpperThreshold.Cr)
              {
                  // skin tone match 
                  System.Windows.Media.Color sc = System.Windows.Media.Color.FromArgb((byte)(c >> 24), (byte)(c >> 16), (byte)(c >> 8), (byte)c);

                  Microsoft.Xna.Framework.Color xc = new Microsoft.Xna.Framework.Color(sc.R, sc.G, sc.B, sc.A);
                  xc = Color.Lerp(xc, Color, Amout);

                  c = (255 << 24) | ((byte)(xc.R > 255 ? 255 : xc.R) << 16) | ((byte)(xc.G > 255 ? 255 : xc.G) << 8) | (byte)(xc.B > 255 ? 255 : xc.B);
              }
              
              resultPixels[i] = c;
          }

          return resultPixels;
      }

Now all you need to do is pass the amount to Lerp and the color. To Darken you pass Black, to lighten, you pass White.

Cool Camera 1.6 for #windowsphone #wp7 #wpdev #wp7dev

Cool Camera version 1.6 has been submitted to AppHub.
What are the changes ?

  1. Two dynamic filters with live preview. The filters are HSL and YCbCr filters (Hue, Saturation &Luminance and Luma & Chroma components – blue & red).
  2. Additional single color filter (Red only, Green only, Blue only and Yellow only). This keeps the single color and changes rest of image to grayscale.
  3. Upload of videos and pictures to SkyDrive
  4. Single album and media viewer for both Videos and Pictures.

Anyone interested in Upload to SkyDrive or filter codes ?

Been keeping busy with #windowsphone #wp7dev

Go a2b still in beta at version 0.5
I have been spending a bit of time on Cool Camera. Version 1.5 is going to be out soon. Version 1.6 is almost ready. I have to start localisation soon.
So far new features in 1.6 include
* HSL (Hue, Saturation and luminance) Dynamic filter
* YUV (Actually YCbCr) – Brightness, Blue and Red chroma dynamic filter
* Corrected preview of Pixelate & Hexagoneal pixelate
* Upload of photos and videos to SkyDrive
* Since album for both photos and videos.

I will post some code on SkyDrive soon

Cool Camera 1.4 ex-dev #WP7 #windowsphone

I have finished coding / testing Cool Camera 1.4. I have uploaded it to Microsoft servers for certification.

Version 1.4 includes

1) Video Recording

2) Album view for browsing pictures & videos

3) Video player

4) Reworked Picture Viewer – pinch zoom and flick re-written for better feel.

I have also created a facebook page for the app

http://www.facebook.com/pages/Cool-Camera-for-Windows-Phone/213336252098201

Thank you WP Rewards Programme

I found out about Microsoft UK’s Developer incentive program about 3 weeks back. It closed this sunday and in that duration i only managed to push out Cool Camera. So i got 1 reward point – its shame.. if i had been keeping up-to-date, i could have done something over the last 3 months… oh well..

So i spent the sole point on a RC Helicopter :) I was tempted by the Tea for Two but then i could have to go far and find childcare for my daughter… not worth it. Can’t wait for it :)

Yesterday WordMaster and WordMaster Free became available on marketplace. I have been spending some time on the free version and its not too bad.. its not really a game and i already found a bug :) but i might develop it into a game – as if there aren’t enough word games out there.

I also pushed out Updated to Cool Camera. Now stands are 1.2 ? I modified it a bit based on user request – reduce the volume between 20:00 and 8:00, consume SoundEffect instead of MediaPlayer class to reduce lag (especially the shutter sound) and finally added Lighten / Darken filters.

Lighten / Darken filters use a combination of techniques – like the first pass of face dectection code here
http://channel9.msdn.com/coding4fun/articles/FaceLight–Silverlight-4-Real-Time-Face-Detection
and finally using HSL to lighten darken the matched pixels.
http://www.silverlightshow.net/items/HSL-Colors-in-Silverlight.aspx
While i was at it, i also realised that the effects preview was rendering all the images and was for that reason slow, i have correct that behaviour and now the effects rendering is a breeze :)