New Designs of the Glogger

June 8th, 2008

A few things that I must fix or improve for glogger after I have done some usability studies myself this week.

  1. Need a profile page that summarize person information, notification, and some basic features of the person. It should be highly customizable and also needs to be user friendly as facebook or other social networking website.
  2. A friends list, privacy levels, and other features must be also implemented. It should be simple for others to look up the others material or personal pages as soon as they
  3. Usability like forms, and flows are very important. Need a new layout for glogger as soon as possible.
  4. Need some sort of process bar or upload states for file uploading, the wordpress has done a great job there, and we should copy? / borrow? that piece of code.
  5. Use http get instead of post if possible. I notice post is much more annoying on client side.
  6. Need a search engine on user profiles. That seems to be useful in many different occasions.
  7. Need a grid like listing for photos. That is proved to be useful and user-friendly.

Note: One key thing about facebook is the notification system. That mini-feed and updates can really keep the user on the page all the time.

Memory Leak on HTTPGET

March 6th, 2008

Make sure we do iTransaction.Close() after each connection …

-ray

Image, Audio, Video supports on Glogger

February 6th, 2008

Working on the upload script such that we can now take almost all multimedia formats…

Got some sort of work queue working, but the problem is the engine that actually drives this…

A few more tricky stuffs there and there … It’s just too much work to document everything! :(

ffmpeg on Ubuntu

January 30th, 2008

./configure –enable-gpl –enable-pp –enable-swscaler –enable-pthreads –enable-libvorbis –enable-libtheora –enable-libogg –enable-libgsm –enable-dc1394 –disable-debug –enable-libmp3lame –enable-libfaad –enable-libfaac –enable-xvid –disable-vhook –enable-libfaad –enable-amr_nb –enable-shared –enable-x264 –prefix=/usr

apt-get lib*-dev for all packages related…

make

checkinstall

…if it doesn’t work… do –force-overwrite…

then…php-ffmpeg

Just follow the INSTALL instructions…

Then you will get…

FFmpeg version SVN-rUNKNOWN, Copyright (c) 2000-2007 Fabrice Bellard, et al.
configuration: –enable-gpl –enable-pp –enable-swscaler –enable-pthreads –enable-libvorbis –enable-libtheora –enable-libogg –enable-libgsm –enable-dc1394 –disable-debug –enable-libmp3lame –enable-libfaad –enable-libfaac –enable-xvid –disable-vhook –enable-libfaad –enable-amr_nb –enable-shared –enable-x264 –prefix=/usr

It now supports a crazy list of formats… :)

-ray

Apache2 Configuration Files

January 30th, 2008

/etc/php5/apache2/php.ini

1. Change the POST size limit to 2000M

/etc/apache2/sites-available/

1. move default to glogger

2. Modify the glogger file as follows.
…(note… the format is screwed up)

NameVirtualHost *

ServerAdmin webmaster@localhost

DocumentRoot /home/glogger/

Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2’s default start page
# in /apache2-default/, but still have / go to the right place
#RedirectMatch ^/$ /apache2-default/

ScriptAlias /cgi-bin/ /home/glogger/cgi-bin/

AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ “/usr/share/doc/”

Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128

3. Make a symbolic link to sites-enabled e.g. ln -s ../sites-available/glogger 000-glogger

Then, make sure you create the cgi-bin with permission g+rx for www-data group.

Now the apache should be ready! :)

Glogger Server Settings.

January 30th, 2008

Right now the server is running on Ubuntu 7.10 -Server Edition…
Somehow the desktop version won’t recognize the 4Gb of RAM…Most likely Ubuntu has twisted some of the server kernel on that machine….

The server edition actually preloaded the LAMP configuration for me… Nice and simple. The first step now is to setup the php/mysql properly and so we can have a login page ready…

Next = ffmpeg + phpffmpeg + a background job queue for encoding all videos…

Let’s start off with ffmpeg today.

-ray

Accelerometer on N95

January 30th, 2008

Today I implemented the anti-shake version of glogger. That is we will detect the shake and the application will take a photo iff the camera is hold still.

Of course, user can still take a ’shaky’ photo with the override mode.

Using the accelerometer on the N95 is pretty simple, here is the part of the code that does the magic :)

Also, here a useful String usage example: Using TDes16

You can download the application here: http://m.eyetap.org

Setting up Glogger Server

January 30th, 2008

Here is the spec of the new PC…
Seagate 750G (ST3750330AS) Barracuda 7200.11 SATA NCQ 3.0Gb/s 32M
Cache (OEM)
$189×2 = 378

Asus P5K-E WiFi-AP Socket 775 Intel P35 ICH9R Chipset Dual-Channel
DDR2 1066/800/667Mhz GigaLAN 2x PCIe x16 eSATA/SATA 3.0Gb/s Firewire
10x USB 2.0
$156
Cooler Master RC-1000-KSN1-GP (after $20 MIR Dec.01 - Dec.31)Cosmos 1000 24″ ATX/Extended ATX Full Tower Case  $171

Intel Core 2 Quad Q6600(BX80562Q6600SLACR)Socket 775 Quad-Core 2.40Ghz
2×4MB Smart Cache 1066FSB (Retail Box)
$279.99

OCZ (OCZ2RPX10004GK) PC2-8000 Reaper X4GB Dual Channel Kit
$169

D-Link DGS-1005D 5-port 10/100/1000Mbps Gigabit Switch
$43.99*3
=132

Cooler Master RS-850-EMBA Real Power Pro 850W Quard SLI Power Supply

$169

Asus DRW-1814BLT Black SATA DVD-Writer LightScribe 18x DVD+R/-R
8xDVD+RW/6xDVD-RW 14xDVD-RAM 8xDVD+/-R9 DL 48xCD-R 32xCD-RW Retail
$34.99

Symbian AutoFocus -Implementation + Tricks

December 29th, 2007

Today I got the autofocus implemented on GloggerVS2 as well.

The implementation is pretty straight forward…

We need to use the auto focus library from Nokia. You can get it from here by the way.

There are a few things that we need to watch for. First, the auto focus will lock up the exposure settings. Therefore, you should call the ResetToIdleL() right after the capture or right after user let go of the shutter button.

                     iAutoFocus->Cancel();
iAutoFocus->ResetToIdleL(); //important or else the exposure
//will screw up.
iCamera->SetExposureL();

To interface with the shutter key, we need to implement the following functions.

TKeyResponse CGloggerVS2AppUi::HandleKeyEventL(
const TKeyEvent& aKeyEvent,TEventCode aType)

// try to capture events from the camera shutter key
// (SwEvent capability required)
iCameraKeyHandle = iCoeEnv->RootWin().CaptureKey( EKeyCameraShutter, 0, 0 );

Hints:

8. How to avoid repetitive key events when pressing a key?

> Use TEventCode to only capture EEventKeyDown:

>TKeyResponse CAppUi::HandleKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType)
> {
> if((aKeyEvent.iScanCode == ‘*’)&& aType == EEventKeyDown)
> {
> iMenuView->HandleCommandL(ECommand);
> return EKeyWasConsumed;
> }
> else
> return EKeyWasNotConsumed;
> }

Other than that, :) the application just works like a charm! :)

-ray

Stablized the Glogger VS2

November 9th, 2007

I cannot believe that I have injected so many bugs into the symbian code before… :( That’s why an inexperience programmer can spend 15x more time than an experience one… :(

The key problems are.

1. ReleaseData() - For some reasons the delete iPostData, and iPostData=NULL can crash the program? BUT WHY?

2. The feedbacks to iClient - obviously there is a problem with the two new functions. I think I need to learn how to use the HBufC more carefully…

Here is another tutorial everybody should read? Stupid string manipulation in Symbian is just a headache…

Can you give an example of how to use RBuf?