Software

How to play interlaced video using Mplayer

If you have ever watched any interlaced video, you might found that watching interlaced video on LCD is not funny at all. There are too many lines periodically appearing on screen and you have to watch them line by line. So it would be better to deinterlace them to watch smooth frames. Since I usually play video files in Mplayer, I will show you how to deinterlace in Mplayer.

Profile for encoding 3GP

Many codecs require some specific parameters to make it usable in term of both acceptance and quality. 3GPP or 3GP is one of the container that tended to popular in mobile phone because of its size and quality. However, encoding 3GP on non-mobile phone is a kind of science. You need to set the appropriate profile to obtain acceptable quality. Below is what I found.

How to prevent duplicate entry error in MySQL

Sometimes, errors should be ignored because they are not necessary at all. In MySQL especially for replication, the general architecture is to have a host for write and other hosts for read. As a result, response time of the whole system should be more scalable. If something goes wrong at the master node where all write operations must be performed, the error may propagate to other replications. One of common error oftenly occurs during replication is duplicate entry. It is possible to prevent this error which may lead the replication to stop.

Looking for a generic report generator

ช่วงนี้งานยุ่งแบบแปลกๆ เหมือนว่าไม่ควรจะยุ่ง แต่ก็รู้สึกไปเองว่ายุ่ง และยังรู้สึกเหมือนเจอ dejavu ยิ่งขึ้นไปทุกวัน เรื่องของเรื่องก็เกิดจากงานที่พุ่งเข้ามาทุกวันๆ โดยเฉพาะสองเดือนนี้ เนื่องจากงานที่ทำเอียงไปทางด้านราชการ (มีหลายคนแยกว่าไม่ใช่ แต่ผมว่าใช่แน่ๆ) ทำให้ต้องมีเอกสารมากขึ้นเป็นเงาตามตัว เรื่องที่จะขาดไม่ได้ก็คืองบประมาณประจำปีซึ่งต้องวางแผนล่วงหน้ากันทุกปี ผมเองไม่ได้มีหน้าที่จัดทำงบประมาณ แต่ก็มีส่วนเกี่ยวข้องบ้างในฐานะของผู้ใช้งบ หน้าที่ของผู้ใช้งบที่ผมรู้ตอนเดือนที่แล้วก็คือ เขียนโครงการ ซึ่งประกอบด้วย

  1. บทคัดย่อ
  2. วัตถุประสงค์
  3. เป้าหมายและตัวชี้วัด
  4. รูปแบบและแผนการดำเนินงาน
  5. แผนปฏิบัติการ
  6. งบประมาณรายไตรมาส
  7. และอื่นๆ อีกเบ็ดเตล็ด

How to encode DVD to AVI using Mencoder

If you have a DVD image in ISO format or in directory structure (see below) and you would like to encode this image to AVI format for later watching in smaller size, Mencoder may help you automate this task by a single command as well as consuming the computer power of a cluster through batch scheduler. The DVD structure looks like below.

DVD/
|--- AUDIO_TS
`--- VIDEO_TS
     |--- VIDEO_TS.BUP
     |--- VIDEO_TS.IFO
     |--- VIDEO_TS.VOB
     |--- VTS_01_0.BUP
     |--- VTS_01_0.IFO
     |--- VTS_01_0.VOB
     |--- VTS_02_0.BUP
     |--- VTS_02_0.IFO
     |--- VTS_02_0.VOB
     |--- VTS_03_0.BUP
     |--- VTS_03_0.IFO
     |--- VTS_03_0.VOB
     |--- VTS_04_0.BUP
     |--- VTS_04_0.IFO
     `--- VTS_04_0.VOB

How to make Gaim more reliable

I used Gaim and I compiled it myself. The latest version, 2.0.0 beta 6, looks very promising in term of user interface improvement. However, I got some serious issue which Gaim will crash occasionally without reason. Actually, I didn't know the reason since it was likely to occur randomly. So I decided to trace this issue by forcing Gaim to inject a core dump whenever it crashed. As a result, I have found the source of this error.