Showing posts with label christmas. Show all posts
Showing posts with label christmas. Show all posts

Monday, December 14, 2009

IEC Christmas 2009 / Projector Calibration

We just finished with our church Christmas Celebration, it was tiring, but it was worth it. We had wonderful team working together to serve God in this event. Great job guys and gals!


GII Christmas 2009 Crew

I would like to share one challenge we encounter in the visual presentation team. The challenge actually starts last December, but I just write about it now. Last December, we are asked to utilize projector for helping audience to virtualize settings in the drama, since we do not have any physical stage decorations. So far so good, we just create the contents and display them using appropriate program. Ideally, we will have something like the following.


Ideal Projector Placement (credit to Martin for the illustration)

However, we could not implement the ideal projector placement. We have problem hanging the projector, as we do not have skill to build custom mounting bracket that could be hang on the curtain's rod (i.e. we rent the building, so we could not mount anything on the wall). Ehm...trouble, fortunately, I found an idea that we could use. If I could put the projector on the side and adjust the perspective, I could achieve larger projection size without obstructing drama/choir people and I do not have to hang the projector at the top center. In short, the program development is started right away and the first version is used last December, unfortunately, with a lot of bugs :(


Implemented Projector Placement (credit to Martin for the illustration)

In the initial release, the ideal perspective could not be achieved, because I only consider translation, scaling, and skewing. I miss rotation. Hence, on last December event, half of the projection image looks ok, the other half looks stretched :( Moreover, there are heavy memory leak on the program at that time as well, so video playing is pretty bad.


Image on the left side is ok, but it is stretched on the right side

Time passed, the program is still used on Easter, but this time we avoid placing projector at extreme angle to avoid rotation problem I mentioned above. We are ok this time since the building we rent has enough space that allow us to do rear projection, and we also put another projector on the balcony. In total, we used three projectors: two projectors for rear projection to form 2048x768 resolution, and one projector on the balcony, mainly used for subtitle and video (i.e. projector calibration is disabled on this projector).


GII Easter 2009 Celebration

This year, we are renting the same building as last year. Ehm...I am pretty scared when hearing about this. I suggest to the stage coordinator (ko Hendri) to find a way to mount the projector on top at the center of the stage.

In the mean time, I try to go through my program's code to perform various improvements, I also added rotation as one of the variable when adjusting the perspective. I fix most of memory leak, but I am sure there are still some that still exist. I do not have enough time to dig into this. However, we are able to handle video playing at 1024x768 without any problems.

So I notify ko Hendry and do demo to show that the program could be used again this time. He agreed and then we proceed with it. We do however need to rent a projector with 4000 ANSI Lumens, since our projector could not handle it (ie. 2500 ANSI Lumes).


2009 GII Christmas Celebration (Image Courtesy of pak Felix Teja)

That's it, I forgot to mention that everything is done in Flash, which could easily top up CPU usage. Machine on the left (gray machine) is used as controller for both audio and video. Machine on the right is running the projector calibration program only. It is being controlled via socket by the gray machine. I used my Android G1 to remote control the audio and WiiMote to remote control the projector calibration program. It is possible to control everything just with mouse and keyboard, but I am more comfortable with this setup.


The Machines

For the next version, I am planning to bring everthing to OPENGL, GPU could give better horse power especially when we want to play HD video.

That's it for now.

Saturday, December 20, 2008

The Best Gift of All - Natal GII 2008

Gereja Injili Indonesia baru saja melewati perayaan Natal tahun ini. Dalam natal ini tema kita adalah The Best Gift of All. Dalam acaranya kita lebih konsentrasi ke arah praise and worship. Jadi hanyalah ada drama singkat yang diselipkan sepanjang berlangsungnya acara.

Kita membuat dua video klip sebagai video latar belakang pada saat penyanyi menyanyikan lagu duet.

Yang pertama adalah lagu We Are the Reason, dinyanyikan oleh Mega dan Jason.

Jason

Mega



We Are the Reason

Yang kedua adalah lagu The Best Gift of All, dinyanyikan oleh Liong dan Adit.

Adit dan Liong



The Best Gift of All

Berikut ini adalah foto bersama di akhir acara.





Inilah laporan singkat dari acara Natal GII 2008.

Thursday, December 20, 2007

GII Christmas 2007 - Breakthrough

Another Christmas celebration just passed. I am experimenting with new field of ministry again this time :) I am responsible for handling multimedia related to task during the show, not making the slideshow or taking photos like I normally did before.

What I meant by multimedia related is task like playing music/sound effect as well as changing projector background and subtitle for Indonesian to English translation. The task itself is pretty straight forward, however, I took another step forward by developing my own application for helping me to execute this task. I have a team that supported me: Ko Handjar and Daniel helped me in controlling the volume and gain of the audio, Lukas is helping to operate the subtitle.

The interesting part of this task is that it is my first experiment working with AIR using AS 3.0. It is very cool, it's a lot of changes from AS 2.0, but it surely worth to learn. I created a client server multimedia presenter.

Following are some reasons why I initiate this project:
  1. We are running two projectors, one for Subtitle and one for showing background. We then will have two computer sitting at the front for handling this task. Instead of having two persons sitting at the front and running two different PowerPoint Slides, I thought why didn't we create a presenter that will allow its user to control it remotely, xml-driven, and without need of running PowerPoint.
  2. I am planning to replace the use of PowerPoint at Church with something that is more easy to obtain and free (not literally free because one needs to buy the software for development). I choose Flash on AIR, because of its built-in multimedia capability, displaying video background is just so easy and you can do it on the fly :) Moreover, it is easier to integrate it with our "Warta Generator" system, because they speak the same languange: XML
  3. I guess the other reason is because I am a geek.
Ok, here is how it works:
  • Presenter Client, it's the application that run on computer that is connected directly to LCD projector. It has 3 features: displaying background (both video and image) and subtitle as well as playing music/sound effect. In current case, we have two Presenter Client running: one with subtitle and sound option turned off and another one with only sound option turned off.
  • Presenter Manager, it's application running on operator's computer. It gave operator option to control background, audio, and subtitle shown/played in Presenter Client. I am running Manager to control both audio and background, while Lukas is running Manager to control the subtitle.
  • On start, Client and Manager will establish connection to server I called Mediator. As it name implies, it just passing data received from Manager to all connected Client.
One main obstacle we encountered during the event is that something wrong with our WAMP server: some image/audio files were not streamed properly. Initially, it seems that the files are corrupted; however, they are fine when run locally, not through HTTP.

Several possible features that I will consider adding:
  1. Manager can communicate with the other Manager to tell about its current task
  2. Manager can choose Client that it want to broadcast to, instead of broadcasting to all Client.
Anyway, I have been talking too much on the technical side of my task. The event went pretty good except where I lost the cue from Irwan to play some sound effect because I tried to find out why the audio streaming suddenly failed in the middle of the event. It's totally my mistakes :(. All in all, the choir was good and the drama was good.

Celebrate Medley, last song by Senior, Adult and Youth Groups

The Christmas 2007 Team

Merry Christmas all! Thanks for the good work!