Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I need to produce timelapse video from a webcam that was mounted at a slightly off-vertical angle, and I need to rotate the image about 3 degrees counter-clockwise. (The webcam is in a virtually inaccessible location and due to weather may get kicked askew eventually even if we did fix the angle. So I need to fix it in software.)

I have had success using ImageMagick's convert tool with the command line option:

  convert infile.jpg -distort ScaleRotateTranslate 750,50,-3  outfile.jpg

but of course it is painfully slow to convert. I can do absolutely everything else I need to do (cropping and overlaying a logo on the image) using FFmpeg filters, but there doesn't seem to be a filter that allows rotating an image by an arbitrary angle, only by 90 or 180 degrees.

Perhaps there is some sort of generic linear transformation filter that can do this?

Thanks for any help.

share|improve this question

1 Answer 1

up vote 4 down vote accepted

A rotate filter was recently added to FFmpeg, which allows rotation by an arbitrary angle. To use it, you can build the lastest version from git or download a recent snapshot build.

The angle is specified in radians; positive is clockwise and negative is counterclockwise. If you have degrees, multiply by PI/180 to convert to radians. For example, to rotate 3° counterclockwise:

ffmpeg -i in.mp4 -vf "rotate=-3*PI/180" out.mp4

Check out the documentation for more details and additional examples.

share|improve this answer
    
This looks promising. Definitely the answer I was looking for. I do wish there was a way to specify the center of rotation. I'll figure out a workaround by doing some translational displacement of the image before and after rotation to achieve the same effect. I'll try to remember to post a followup on what I find. –  Tom Jul 6 '13 at 20:19
    
Irony is that the version of ffmpeg I was using, I built from sources on June 11, the same day the new rotate feature was added. If I had just waited a few hours I would have already had it! –  Tom Jul 6 '13 at 20:36

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.