ブログランキング・にほんブログ村へ


iPhone/iPad用潜水艦ゲームアプリ ソナーエコー iTunesにて公開中

2015年04月17日

[iOS]iTunes connect app ビデオプレビューの各サイズをimovie + ffmpegで作る

iPhone6が出たあたりから、iTune connectでアプリのスクショ以外にプレビュームービーを登録できるようになった。
一回だましだましで上げたことはあったのだけど、各サイズ用は用意できなかったので今回はそのあたりまでやってみたいなと。

まずiOS8 + Yosemite + QuickTimePlayerの録画で実際の動作画面をとる。
これをiMovieで適当に編集する。iMoiveの使い方がよくわからないで毎回適当にいじってるのだけど、「共有」で出すときに 1920x1080が選べないときがある。よくみると作った動画自体 1080HD となってないと(720HDってなってる)選べないらしい。
どうしてだかよくわかんないのだけど(撮った元動画はiPhone6なんで1334x750)ぐりぐりやってると1920x1080のmp4が出る。
これが15秒〜30秒に収まっていれば、4 inch用と 5.5inch用にはそのままアップできる。
問題は4.7とiPad。3.5はアップ自体できないみたい。

そこでffmpeg。OSXバイナリをどっかからダウンしてきてターミナルで使う。

まず4.7inch。
ffmpeg -i input.mp4 -strict -2 -r 30 -s 1334x750 -aspect 1.779 output.mp4
これで変換したものはアップできた。
ググってみるとこれの -aspect指定がないものが見つかったりするけど、それだとダメだった。サイズが違うってエラーがでた。

次にiPad。
ffmpeg -i input.mp4 -strict -2 -r 30 -s 1600x900 -vf crop=1200:900 -aspect 4:3 output.mp4
一応これでなんとかアップロードできるものが作れた。
ただし、なんか真ん中のあたりをくり抜いたみたいになってしまったけど。

まぁおいおいわかってくるでしょう。

とりあえずアップできてめでたし。

追記 2015.6.9
iPad用に変換。上下に黒い帯を入れる。

ffmpeg -i input.mp4 -strict -2 -r 30 -vf "scale=1200:675,pad=1200:900:0:112:black" -aspect 4:3 output.mp4

追記・修正 2015.10.9
ソースによるのかiMovieの更新で何か変わったのかフレームレート指定を入れないとうまくいかないことがあったので -r 30を追加。

あと、5.5/4inch用の1920x1080がそもそもiMovieでうまく出せなくて、それも変換したので念のため記録。
ffmpeg -i input.mp4 -r 30 -strict -2 -s 1920x1080 output_55.mp4

不思議なことに -aspect 1.779をつけると微妙に大きさがずれて 1921 x 1080になってアップロードできないという問題が発生。計算誤差か。-aspectを取り除いたら1920x1080で出た。

追記 2017.9.26
縦構図の動画を作りたいとき。
iMovieのほうで、左に90度回った動画を作って上記の処理を行った後、

ffmpeg -i input.mp4 -strict -2 -vf transpose=1 -metadata:s:v:0 rotate=0 output.mp4

で回転させて縦の動画を作った。
回転処理は結構重い感じ。
posted by みこあいさ at 11:16| iOS開発