ffmpegvideo-conversion

Can I set rotation field for a video stream with FFmpeg?


I have a video file. I open it with MediaInfo utility and I can see a video stream in this file having attribute Rotation 90 (along with other attributes such as CodecID, bitrate etc).

Now I have another video file which does not have that attribute Rotation 90, it does not have the Rotation attribute at all.

Can I use ffmpeg.exe so that it produces output file with Rotation 90 attribute added and with no other changes? I don't really want to do any transform, just want to set the Rotation attribute.

I've tried the -metadata option to no avail.


Solution

  • Use the -display_rotation option to set the output display rotation:

    ffmpeg -display_rotation 90 -i input.mp4 -c copy output.mp4
    

    This will stream copy the bitstreams, so no encoding is performed. Only the stream metadata will be changed to indicate to the player that rotation is needed. For more information, check out the -display_rotation documentation.

    Additional notes: