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

后端 未结 1 1326
夕颜
夕颜 2020-12-07 16:07

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, bi

相关标签:
1条回答
  • 2020-12-07 16:32

    This works with recent FFmpeg:

    ffmpeg -i input.mp4 -c copy -metadata:s:v:0 rotate=90 output.mp4
    

    This will stream copy the bitstreams, so no encoding is performed. Only the metadata of the first video stream (v:0) is changed here and the player will show the video in a rotated way. (Not all players will support this.)

    Additional notes:

    • If you want to "physically" rotate the video, you have to use the transpose filter. Filtering will require re-encoding, so you will have to remove -c copy.

    • If you omit -c copy, and want to encode instead of only re-muxing, then ffmpeg will automatically rotate the video if there is any existing rotate metadata. You can disable this behavior with -noautorotate.

    0 讨论(0)
提交回复
热议问题