All Posts

ffmpegのオプション順序で処理速度が大幅に異なる

ffmpegで画像を切り出そうと思ってコマンドを叩いたところ、全然終わる気配がない…。 気になって調べてみたら、オプションの位置で処理速度が異なるとのこと。 具体的には、 -i オプションと -ss オプションの位置によって大きく処理速度が異なる。 # 完了する気配がしない ffmpeg -i bottle.mp4 -ss 445 -t 3 -vcodec mjpeg -r 10 01_%04d.jpg # すぐに処理が終わる ffmpeg -ss 445 -t 3 -i bottle.mp4 -vcodec mjpeg -r 10 01_%04d.jpg おまけ ボトルマンの必殺技の文字がぐちゃぐちゃで一瞬では読めない。 必殺技の名前を確認しようと思って、必殺技の出てくる箇所を下表にまとめた。 下表にまとめるついでに、必殺技付近の画像を秒間10枚出力するコマンドも載せておく。

iPhone動画をMacでmp4に変換する

iPhoneで撮った動画アップロードしたいんだけど、 QuickTime 形式 (mov) で認識されない。そこで、MPEG-4に変換したい。 単純に変換したいだけではなく、動画のメタ情報も一緒に持っていきたい。 そこで、 ffmpeg と exiftool を使っていい感じに動画形式を変換してくれるスクリプトを書いた。

graphvizで画像を扱ったらエラー発生

画像を含んだdotファイルをgraphvizで扱ったらエラーが発生。 2018-08-31 12:55:13.827 dot[2827:136681] +[__NSCFConstantString length]: unrecognized selector sent to class 0x7fff82c626e8 2018-08-31 12:55:13.828 dot[2827:136681] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘+[__NSCFConstantString length]: unrecognized selector sent to class 0x7fff82c626e8’ インストール時に--with-pangoオプションを指定することで解消した。 brew reinstall graphviz --with-pango 参考リンク Graphviz crashes on Mac during render using Quartz

Werckerでgit submoduleを使う

WerckerでGitHubのソースをgit submoduleで活用する場合には準備が必要。 このように単純にgit submoduleを実行するスクリプトを定義しても失敗する。 - script: name: git submodules code: git submodule update -i --recursive 必要な準備は次の2つ。 SSHキー使用の準備 GitHubをknown_hostsに登録する git submoduleを実行する際にそのサーバーが信頼できることと、パスワードを求められないようにするための施策である