ffmpegならこちらへ 7 (993レス)
上下前次1-新
78(1): 75 2022/12/03(土)16:48 ID:jcglrjSt0(2/3) AAS
>>76
要するに、他のメタデータを考えることなく、
チャプタの時間を指定するだけ(チャプタ名は数字順)で済むような方法という想定だったんだけど、
ググってみたら、pythonのヘルパースクリプトがあるみたいだね
pythonは使えるので、参考にして自分で書いちゃったほうが楽なのかな
mpvプレーヤーには、該当箇所でキーを押してmkvチャプタ(mkvmergeで使われるxml形式)を出力するというプラグインがあるんだけど、
同様にffmpeg用(FFMETADATA)ファイルを出力するようなものがあるといいと思った
やはり、映像や音声を確認しながらその場でチャプタを指定できると便利だ
79(1): 2022/12/03(土)17:14 ID:tD70AyOp0(2/2) AAS
普段は再生にmpc-hcを使ってて、
ctrl-Gが指定時間にジャンプする機能だけど、
その時に現在の時間が表示されてるので、編集するつもりでctrl-A ctrl-Cでコピーしてくると
04:03.891
こんなフォーマットでクリップボードに入る
大抵はこれで足りる
80: 2022/12/03(土)18:02 ID:jcglrjSt0(3/3) AAS
>>79
そのあたりは、mpvのプラグインスクリプトのほうが楽かな
copyTime.luaっていうのがあって、これだと "Ctrl + C" だけで同じhh:mm:ss.fff形式のものが拾える
音声で厳密に出したいときはAudacityで波形を見ながらやることもある
81(1): 2022/12/03(土)19:25 ID:qgv9YMGz0(1) AAS
>>74
ありがとう
82: 2022/12/04(日)19:12 ID:fIgRbBjn0(1) AAS
>>81
ごめん、いろいろ悪ふざけが過ぎた
ただ、一応俺の目であってるか確認したけど、このレス自体はChatGPTに答えさせたやつなんだ
83: 53 2022/12/05(月)12:19 ID:E/pfDvK+0(1) AAS
>>53
ブロックノイズまみれになる原因が分かりました。
CPUエンコードと異なり -maxrateが効かないのを知らずに -b:v 指定だけが有効になってしまい、品質が派手に落ちたのが原因でした。
-qmaxで適切な値、例えば『少しくらいの劣化許容』なら -qmax 25 などと指定すれば、おおむね期待通りの結果が得られました。
質問と罵倒だけで無価値なログが残るのを避けるため報告します。
参考:
外部リンク:nico-lab.net
84: 2022/12/05(月)12:51 ID:uQn9iJkq0(1) AAS
vspipe -c y4m "test7.vpy" - |\
ffmpeg -y -i - -pix_fmt nv12 -c:v h264_amf -quality quality -rc vbr_peak -qmin 20 -qmax 26 -g 120 -maxrate 8M -b:v 2.5M "x264.mkv"
これで使ってる、まあエンコードはしないけどね
-c:v hevc_amf -quality quality -min_qp_i 20 -max_qp_i 28 -min_qp_p 20 -max_qp_p 28 -header_insertion_mode idr -g 120 -rc vbr_peak -bf 1 -vbaq false -maxrate 8M -b:v 1.5M
85: 2023/01/03(火)04:54 ID:zIiXdB410(1/2) AAS
FFmpegで指定できる伝達特性をまとめていて気がついたのですが。
zscaleフィルターsmpte240mのガンマと逆ガンマ補正の計算式が逆に実装されているのではないでしょうか?
実際にFFmpegを使用して映像にフィルタを適用し、試したわけではありません。
86: 2023/01/03(火)05:18 ID:zIiXdB410(2/2) AAS
ソースコードで言えば、この部分がおそらく間違っているのだろうと思いました。プログラムが読めないので確信はないのですが。
外部リンク[cpp]:github.com
87(1): 2023/01/03(火)08:44 ID:Ttl3j4JF0(1/2) AAS
SMPTE_240M_ALPHA = 1.1115
SMPTE_240M_BETA = 0.0228
光(L)、信号(V)とすると、
smpte_240m_oetf(float V)はこんな処理
1. Vが0以下ならV = 0とみなしてL = 0 (終わり)
2. Vが0.0912 (※4xBETA) より小さいなら
L = V ÷ 4 (終わり)
3. Vがそれ以上なら
L = { ( V + 0.1115 ) ÷ 1.1115 } の (1 ÷ 0.45)乗
smpte_240m_inverse_oetf(float L)はこんな処理
省5
88: 2023/01/03(火)08:48 ID:Ttl3j4JF0(2/2) AAS
外部リンク:www.jstage.jst.go.jp
このPDF見ながらソース読んでみたけど、処理自体は正しく書かれてるように思える
あとはこれを使ってる場所が正しくLとVを使ってるかどうかじゃないかなあ
Lを使うべきところでVを使ってるとか、その逆とか
89(1): 2023/01/05(木)00:25 ID:7mKKIxKi0(1/8) AAS
返信ありがとうございます。私もそのPDFを読んでみました。
>このPDF見ながらソース読んでみたけど、処理自体は正しく書かれてるように思える
>あとはこれを使ってる場所が正しくLとVを使ってるかどうかじゃないかなあ
>Lを使うべきところでVを使ってるとか、その逆とか
はい、そう思います。
同じソースコードの330行目を見ると、OETFの引数にVを、EOTFの引数にLを入力していませんか。
もしそうなら、LとVを逆に扱っていないでしょうか?
90(2): 2023/01/05(木)00:46 ID:7mKKIxKi0(2/8) AAS
>>89は予想です。
func.to_linearやfunc.to_gammaって書いてあるのを見て思っただけで、全体の処理の流れを理解していません。
>>87のプログラムの説明助かりました!
91: 2023/01/05(木)10:37 ID:QEuK8P+m0(1) AAS
>>90
330付近は300から始まるブロックだけど、select_transfer_functionって名前の通りでその処理(リニア化、ガンマ化)をするためにどの計算方法を使うかを選んでいる
リニア化はシーン参照(入力参照)なら上カーブになる240m_inverse、そうじゃない(出力参照)なら下カーブになるRec.1886eotfで正解じゃない?
勘違いしてるかな
いや、出力参照でRec.1886を使ってるのが正しいのかと言われると断言できないけど
92(1): 2023/01/05(木)20:49 ID:7mKKIxKi0(3/8) AAS
リニア化は人間の視覚特性に合わせて暗部の圧縮をするので下カーブになると思います。
ただ、どうして出力参照でRec.1886 EOTFを適用するんでしょう。
PDFの記述と食い違いがあります。(今気づきましたが、1991年の記事なんですね)
Rec.1886はCRTの模倣なので、再生時の逆ガンマ補正がもしCRTだけ(パススルー)だったら理にかなっています。
ネットで調べてもよくわからないです。
とりあえずいまは式をMarkdownへ書き起こす作業をしています。
93(1): 2023/01/05(木)22:32 ID:7mKKIxKi0(4/8) AAS
外部リンク:www.desmos.com
smpte_240m_inverse_oetfとrec_1886_eotfをプロットしてみました。
外部リンク:imgur.com
この画像のようにシーン参照のTFと出力参照のTFを組み合わせるのが一般的?なんですかね。
zscaleのRec.709の実装が正しいとすると
シーン参照のTFと出力参照のTFはsmpte_240m_inverse_oetfとrec_1886_eotfだと思います。
うーん。
94: 2023/01/05(木)22:39 ID:7mKKIxKi0(5/8) AAS
書き起こした式です。
外部リンク:hackmd.io
95: 2023/01/05(木)23:36 ID:7mKKIxKi0(6/8) AAS
こちらの画像がより正確かもしれません。
外部リンク:imgur.com
Scene-referredについて追記した版です。
外部リンク:hackmd.io
Rec.709も加えました
外部リンク:www.geogebra.org
96(1): 2023/01/05(木)23:49 ID:7mKKIxKi0(7/8) AAS
BT470_MとREC_470_BGとLOG_100とLOG_316の式がH.273と違いますね
97: 2023/01/05(木)23:59 ID:7mKKIxKi0(8/8) AAS
すみません>>96解決しました。
BT470_MとREC_470_BGは、OETFとinverse OETF、func.to_linearとfunc.to_gammaがそれぞれ逆ですが、結果的に処理は正しく
LOG_100とLOG_316は、式の区間が調整されてますが、計算結果は変わらないようです。
上下前次1-新書関写板覧索設栞歴
あと 896 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.010s