I also changed my test app. Run it with "test layer video_file1 [video_file2]". Instead of layer you must put crtc1 or crtc2. Be sure that there isn't primary-layer=X in /etc/directfbrc. video_file2 is file the will be played in a small window (picture in picture). Test app creates three windows. One is fullscreen video_file1, one is for PIP and third for osd. Osd is transparent (ARGB surface). CPU usage is small, I got 35% for playing two mpeg2 videos and around 65% for playing two xvid videos on PIII 800.
Exit from app with ESC or Q.
mplayer_PIP_customOSD.tar.bz2
Description: Binary data