動画を回転して保存する方法。HandBrakeでエンコード時に回転しよう!
2018/04/07
この記事はこんな人を助けます。
- 再生時の回転ではなく、動画自体を回転したい
- 動画をHandBrakeでエンコードしたら、回転してしまった
昔のケータイなんかで撮影した動画だと、縦長の場合って多いですよね。スマートフォンも基本的には縦持ちするものなので、そのまま動画を撮影すれば縦長の動画になります。
スマートフォンで撮影した動画は正しい向きで再生できますが、エンコードする場合には横長になってしまうことも多いです。(iPhone+HandBrakeで実際に試しました)
HandBrakeというエンコードソフトを使って、好きな方向に回転する方法を紹介します。HandBrakeはMac用もあるので、Macでも使える方法です。
動画の向きは再生時に補正している
スマートフォンで縦長で撮った動画は、PCで再生してもちゃんと縦長になってくれます。横長で撮影するときも、どっちを上にしても(右にホームボタンでも左にホームボタンでも)撮った向きで再生できます。
これは実際に縦長で記録されているわけではありません。動画そのものはある決まった向きで常に記録されています。例えばiPhoneの場合は、常にホームボタンが右側にくる向きで記録されています。
でも再生したときにいつも向きが正しくなるのは、動画に「こっち向きで撮影した」という情報が埋め込まれているからです。動画プレイヤーはこの情報に従って回転して再生しています。
エンコードする場合は回転してくれないことも
動画そのものを回転したい場合には、エンコードソフトを使ってエンコードし直せばいいんですが、回転情報を正しく反映してくれるかはエンコーダーによります。残念ながらHandBrakeでは回転情報が欠落して横長固定になってしまいました(私の調査不足だったらスミマセン)。
HandBrakeで回転する方法
HandBrakeで動画を回転します。HandBrakeの使い方はここでは紹介しませんので、別途調べてください。
HandBrakeはGUIで簡単にエンコードの設定を変更できますが、残念ながら回転を設定する項目はありません。そこで適切なコマンドを入力します。
回転するコマンドを入れる
HandBrakeで元となる動画を開いたら、「Video」タブを開きます。ここで、「Video Codec」は「H.264 (x264)」か「H.265 (x265)」である必要があります。
Video Codecを選んだらExtra Optionsにコマンド「, --rotate=[数字]」を入力します。コンマと半角スペースも必要です。数字は下で説明します。
回転方向
回転方向を表す数字は1~7です。
分かりやすい解説が見当たらなかったので、全通り試してみました。まとめるとこんな感じです。
反転系はあまり使わないでしょうから、以下の3つで十分だと思います。
Extra Options | 回転方向 |
---|---|
, --rotate=4 | 右90°回転 |
, --rotate=7 | 左90°回転 |
, --rotate=3 | 180°回転 |
ちなみに
数字がバラバラに見えますが、一応一貫性がある仕組みになっています。まず、基本は以下の3通り。
- 1:上下反転
- 2:左右反転
- 4:右90°回転
あとはすべてこの合計になっていて、反転と回転では反転を先にかけるようになっています。例えば「5」であれば、5=1+4なので、[上下に反転してから右90°回転をする]という処理をすることになります。
まとめ
これでどんな向きの動画も好きな向きに変えられますね!