主にffmpegの設定の話です。
今回ミラーレス一眼買いました。α6400です。
レンズはキットレンズはお勧めしないと言われたのもあって、思い切ってとがった物を選びSiruiの50㎜ F1.8 Anamorphicにしました。
今回はHDRが撮影できると言う事もあってα6400にした経緯もあり、さっそく試し撮りしてYoutubeにアップするまでを試してみたので、その備忘録です。
有料版ダビンチやAdobe製品を持っている方には特に必要ない情報かと思います。
目的
α6400はHDR動画をHLGで撮影しmp4で保存します。これをまずは撮って出しでYoutubeに投稿するにはどうすればいいのかを試しました。
また、アナモルフィックレンズなので、撮影後横に伸ばす必要があるので、これも一緒にやってしまいます
PQで出す
アナモルフィックレンズでない場合は-aspect 24:10 -s 3840x1600の項は不要です。
ffmpeg -y -i C0001.MP4 -aspect 24:10 -s 3840x1600 -c:v libx265 -tag:v hvc1 -crf 22 -pix_fmt yuv420p10le -x265-params "colorprim=bt2020:transfer=smpte2084:colormatrix=bt2020nc" C0001out.mp4
上げた動画はこちら
https://youtu.be/uPuNuE5b0As
ゲームなどはこっちがHDR時に使う事が多い気がするので見慣れた感があります。Youtubeに投稿した所、HDRとして認識はされましたが、SDR環境で見る時に再生される、Youtube側で自動変換された動画のほうは色がつぶれて汚いですね。HDRモニタで見るとマシになりますが、潰れてる感じは少し残ります。
###HLGで出す
こちらもアナモルフィックレンズでない場合は-aspect 24:10 -s 3840x1600の項は不要です。
color_trc 18でHLGの指定となります。
ffmpeg -y -i C0001.MP4 -aspect 24:10 -s 3840x1600 -c:v libx265 -tag:v hvc1 -crf 22 -pix_fmt yuv420p10le -color_trc 18 -color_primaries 9 -colorspace 9 C0001out.mp4
上げた動画はこちら
https://youtu.be/N0Rkmyfb2Ho
こちらはSDRの方もHDRの方もPQに比べて潰れが少なく無難な形で見ることが出来ますが、悪く言えば少し眠い感じもします。グレーディングをしていない撮って出しの状態ですしこんなもんな気もします。
解像度について
アップロード要件に
720p、1080p、1440p、2160p
最適な品質で再生されるようにするため、DCI 規格ではなく UHD 規格を使用してください(例: 4096x1716 ではなく 3840x1600 のアスペクト比にする)。
とあったので3840*1600にしました。
アップロードされた動画が意図したものか確認するには
動画を右クリックして、詳細統計情報をクリックします
すると、画面右上にコーデックや色空間、色域など表示されます
注意点としてはHDR再生環境ではないモニタやブラウザで見る場合は自動変換された方の情報がでてしまうので、まずはちゃんとHDR有功になってるか確認した方がいいでしょう。
最後に
アップロード時にvp9に変換されてるみたいなので、最初からwebm/vp9で出した方が効率がいいかもしれません。
HDRに関してはまだまだ全然知識不足なので、突っ込みどころあれば教えて下さい。
余談ですが、以下の文言でYoutubeがこれらのアップロード時の変換にffmpegを使っていることを初めて知りました。
TRC が FFmpeg の色空間変換フィルタでサポートされていない場合、YouTube は BT.709 に設定し直します。
参考にあるエンコード設定の色空間の項より。
参考
オプションなど
https://developers.google.com/media/vp9/hdr-encoding
ハイ ダイナミック レンジ(HDR)動画をアップロードする
https://support.google.com/youtube/answer/7126552?hl=ja
エンコード設定
https://support.google.com/youtube/answer/1722171