【初心者歓迎】総合質問スレッド-85-【ダウソNG】 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
教えて君は初心者に非ず。既に同じ質問がないかgoogleやスレ内を検索するように。
よくある質問や該当ソフトのスレのテンプレを読んでから書き込もう
2ちゃんねるスレッド検索 http://find.2ch.net/
もっと優しく教えて欲しい人、教えたい人、テンプレを読むのが嫌な人は
教えて!goo http://oshiete.goo.ne.jp/
前スレ
【初心者歓迎】総合質問スレッド-83-【ダウソNG】
http://echo.2ch.net/test/read.cgi/avi/1454932012/
よくある質問・関連リンク等は、>>1-6を参照 >>338
Avisynthは本来8bitしかサポートしてないから16bitのピクセルを表現するときに8bitを2ピクセル並べて8+8=16みたいな感じにする
エンコーダーにデータを渡す時はそういう形式だと明示して渡さないとおかしくなるって話だと思う
High bit-depth Support with Avisynth - Avisynth wiki
http://avisynth.nl/index.php/High_bit-depth_Support_with_Avisynth >>338
●Avisynthで高深度(High Bit Depth)を扱う方式には以下の2つがある。
A.Stack16方式(stacked形式(縦2倍) / interleaved形式(横2倍))
B.Avisynth+ r2290以降の高深度色空間(YUV420P16等)
●x264のavs入力は、Bの一部の高深度色空間のみ対応している。
Aの高深度avsをx264で直接読むことはできない。
(tModではパッチによりAを扱えた気がするが、今のtModは非推奨なのでここでは無視する)
●A形式の高深度avsをx264でエンコードする方法は以下の2つ。
A1.avs2pipemod -rawvideoを使ってraw形式でパイプで渡す
A2.avs4x26xで--input-depthを指定して高深度avsを渡す
(A2の場合は--input-res/--fps/--frames/--input-cspを指定する必要が無いので、A2の方が楽。)
●B形式の高深度avsをx264でエンコードする方法は以下の2つ。
B1.x264が対応している高深度色空間(YUV420P16等)の場合はx264に高深度avsを直接渡せる
B2.avs2pipemodやffmpegを使って、高深度Y4M形式でパイプで渡す(rawでもいいがY4Mの方が楽) >>338
●>>338のavsは、AのStack16方式のinterleaved形式の16bit深度。
Avisynth+ r2290以降を使っているのであれば、f3kdbの行の後に
ConvertFromDoubleWidth(16)
をつければB形式のYUV420P16の高深度avsにすることができ、x264に直接渡せる。
(ただしYUV420P16はAvsPmodでそのままプレビューすることができない。
プレビューしたい時のみ
info().ConvertBits(16).ConvertToRGB48(matrix="Rec709").ConvertBits(8)
をつけるといった対応が必要。)
●avsをA形式のままにするならA2のavs4x26xを使うことを推奨。
avsをB形式のYUV420P16にするならB1でx264に直接avsを渡せばよい。
●--input-res/--fps/--frames/--input-cspはx264にraw形式で渡す場合のみ必要。
avsやY4Mで渡す場合にはこれらの情報が含まれてるので、指定する必要はない。 ■ このスレッドは過去ログ倉庫に格納されています