When using recordmydesktop-0.3.7.3 and specifying the x,y,w,h options from the command line the program adjusts the recording Window. For example:
/usr/src/recordmydesktop-0.3.7.3/src/recordmydesktop -x 1512 -y 53 -width 1024 -height 768 -fps 7.5 -device plughw:0,2 -channels 1 --overwrite -o XandY
Initial recording window is set to:
X:1512 Y:53 Width:1024 Height:768
Specs: H:1024 W:2560
Adjusted recording window is set to:
X:1512 Y:52 Width:1024 Height:768
Why does recordmydesktop think it's smarter than me? I'd like it to do what I say!
I tried hacking around in setbrwindow.c around line 177 but I'll I could make (so far) was seg-faults :(
Figured out my issue!
When the Window I wanted to record was this one, (from xwininfo)
0x2a00216 (has no name): () 1024x768+2+2 +1531+53
RMD would adjust my settings by 1 pixel in some direction, (see SizePack2_8_16 in setbrwindow.c)
And of course, like many FOSS packages the code was well written and internally well documented. While I don't understand the authors logic in SizePack2_8_16 I was able to determine that I should simply adjust my target window as follows
0x2a00216 (has no name): () 1024x768+2+2 +1526+54
What an awesome product!
I need it to record EXACTLY in 640:360, but 360 is not divisible by 16. Offset pixels should be removed from video