Pages

Monday, March 15, 2010

Multiple phone application framework

Multiple phone application frameworks are: frameworks/solutions that allow developers to build applications to run on multi phone devices.

Recently, there' re some companies trying to build these solutions. This may make a new trend in developing application on mobile: build once, run every where (at least on most popular mobile platform) :)

Actually, this idea is good. However, it meets some troubles:
  • Mobile Platform + their SDKs are changes frequently. The multiple phones application frameworks cannot catch up with the speed of change of the platform + SDKs. Mobile developers prefer to have chance to use the latest APIs to make use of the strength of the newest platform.
  • On some popular mobile platforms (Apple, Android, BlackBerry), there' re always some private APIs - means some APIs are not official public. Developers must work on the real platform & SDK to use these APIs. The multiple phones application frameworks cannot wrap these APIs into their library because it needs to be more generic to be used in a common way.


Anyway, we should wait.

You can checkout a list of some open source multiple phone application frameworks here

Thursday, December 3, 2009

The Presentation Secrets of Steve Jobs

This is a book bought on Amazon. Below is a slide summary for content inside. It makes me very interesting.

Wednesday, December 2, 2009

iPhoneARKit and Point Of Interest apps on iPhone

A point of interest, or POI, is a specific point location that someone may find useful or interesting. An example is a point on the Earth representing the location of the Space Needle, or a point on Mars representing the location of the mountain, Olympus Mons.

The term is widely used in cartography, especially in electronic variants including GIS, and GPS navigation software. In this context the synonym waypoint is common.
(from wikipedia)

iPhoneARKit is a great tool for developing POI (Point Of Interest) apps on iPhone. We've just done the first demo based on this library. It's a simple application to detect POI locations in camera view and show related information (in the context of this demo - is shops with coupons)


Bee Buzz Finder from Vinh Nguyen on Vimeo.


Many business ideas comes from this, right?

Saturday, November 28, 2009

Convert MTS/M2TS(AVCHD) to AVI

Yesterday, I used a Sony camera to record  some our video demos.  Unfortunately, output videos are in AHCHD format. So, I have to find a way to export them to avi or other format before putting to our R&D press.
Actually, there are many commercial softwares to do this. However, I don't like them. He he, I love things  free and open source. FFMPEG is the best one in the open source world for conversion video/audio format. Anyway, I found some bad things with FFMPEG:
+ Difficult for compilation in Windows. It was developed for best use in Linux world. To compile it in Windows, we need Cygwin or MSYS.

+ Loss documentation in practice. It takes me more than 1 hour to find the best command to convert MTS file to avi.



Finally, I compile FFMPEG successfully in Windows and my Ubuntu. I also run it successfully for my conversion need. However, let me show you some shortest ways to work with FFMPEG for conversion from MTS to AVI.

Install FFMPEG

In Ubuntu, it's very easy. Just open Synaptic package manager to find and install ffmpeg.
In windows, you need to compile ffmpeg before using. However, there a site contains some distribution binary package. You can download the final package to use in http://ffmpeg.arrozcru.org/builds/

Command to convert your MTS file to avi



ffmpeg -i your-mts-file.MTS -vcodec libxvid -b 18000k -acodec libmp3lame -ac 2 -ab 320k -ar 44100 -deinterlace -s 1440x1080 your-output.avi


If you run this in Ubuntu and found the error: Unknown encoder 'libxvid', please install libavcodec-unstripped (you can find this in synaptic package manager).

To understand more about above command, you should read the ffmpeg documentation here

Wednesday, November 25, 2009

Playing augmented reality with my business card

Augmented Reality is one of topics that I am doing research. I choose a simple demo to make this topic more interesting: playing with business card.
The target of the demo is: playing a video after detecting the marker on the business card.

FlarManager is the library that I choose to work because it's very flexible and easy to use. It wraps FlarToolkit and make it works with many Flash 3D engines: Sandy, Papervision3D, Away3D,...
This is the result:






Below is list of step that I did to make this demo run:
Step 1: Download FlarManager. You can get its source code from SVN here.
Step 2: Configure FlexBuilder and setup the project to build the whole source code of FlarManager (just follow steps in this tutorial)
Step 3: Capture my business card and print out the logo of my company.
Step 4: Use this online tool to create marker from the printed logo. After finishing this step, we get the output is a pattern file using in recognizing the marker under camera. You should save the output file with .pat extension (example: mylogo.pat). You must remember the resolution of your pattern for using in configuration of next steps.

Step 5: Open the FlarManager project by FlexBuilder, the FLARManagerTutorial_Collada.as is the default running demo. So, I choose this file to customize the code. I am very lazy and don't want to do any complex thing. He he
Step 6: Configure the marker.
+ Copy our .pat file into resource folder (or any places in your project).
+ Go to \resources\flarConfig.xml, add your pattern file location in the patterns section.

Step 7: Go to the FLARManagerTutorial_Collada.as file and write code to load video and play it on a plane. This is a very simple task for any Flash developer.

Step 8: Play the video when the marker is detected. To do this, you just need to add the Plane as child of this.activeMarker. FlarManager did everything and return to us the activeMarker in correct position. So, we just add our game above the active marker and play.


Do you want to have a special an AR business card with your own logo? He he, try this.