元スレ
1 :名無しさん@お腹いっぱい。:2020/08/13(木) 19:43:45 ID:j48XP1pP0.net
公式サイト
http://ffmpeg.org/
エンコード、ストリーミング配信を高画質高音質で行えるffmpeg。
OSに拘らず対応コーデックが多い。
対応コーデックが多く、多彩なオプションを使用可能。
コマンドラインから使用することができる。
ffmpegならこちらへ 4
https://egg.5ch.net/test/read.cgi/software/1555776689/
51 :名無しさん@お腹いっぱい。:2020/08/21(金) 16:51:43.17 ID:czuGiC700.net
ついでにCPUのグリスも塗り直すとまだまだ使えるよ
2 :名無しさん@お腹いっぱい。:2020/08/13(木) 19:45:25 ID:j48XP1pP0.net
27 :名無しさん@お腹いっぱい。:2020/08/19(水) 21:24:24.47 ID:gHnC66hr0.net
こちらにはどうしたら良いか検討もつかないのですが
必要な情報があれば、いくらでも提供しますので、
できれば、そちらで確かめていただけないでしょうか?
41 :名無しさん@お腹いっぱい。:2020/08/20(木) 14:27:13 ID:GAPJtLxP0.net
>>40
処理時間って相対的なものだからな。なにと比較するの?
vp9はh264より当然時間かかるし(設定にもよるが)、比較対象にはならんわな。
37 :名無しさん@お腹いっぱい。:2020/08/20(木) 12:02:13 ID:h1jP+ec20.net
5 :名無しさん@お腹いっぱい。:2020/08/18(火) 22:11:24 ID:BrccbIBr0.net
FFmpegを使って、動画上に帯や文字列を描画したいのですが、
1024×576以下の解像度だと正常な色を再現できるのですが、
それを超える解像度だと、緑色が薄くなってしまう現象が起きてしまいます。
例えば、
-vf “drawbox=x=iw-262:y=ih-44:w=226:h=26:color=Lime@1.0:t=fill”
のようなコードで帯を描画してみると分かりますが、
1024×576以下の解像度だと帯の色は00FF00になるのに
それ以上の解像度だと、00D700の色になってしまいます。
これってどうすれば大きな解像度でも原色を再現することができますか?
34 :名無しさん@お腹いっぱい。:2020/08/20(木) 00:33:53 ID:IhrQ3E4c0.net
>>32
普通はプルリク時に、そなへんの承諾を事前にもらっておく
33 :名無しさん@お腹いっぱい。:2020/08/19(水) 23:54:25.71 ID:TH0iE1Ol0.net
うーん元々1本にエンコードされてるものを、再エンコードせず一部1枚画のフレームに変える方法なんて聞いたことないしできないんじゃないかな
10 :名無しさん@お腹いっぱい。:2020/08/19(水) 10:32:15.09 ID:xtrvNOjO0.net
パスワード無しでダウンロード出来て
パスワード無しで開けた
39 :名無しさん@お腹いっぱい。:2020/08/20(木) 14:09:22 ID:GAPJtLxP0.net
https://egg.5ch.net/test/read.cgi/software/1555776689/996
h265は使ったことないから知らんけどh264は当然マルチスレッドになってるもんと思ってた。
こういうのって一度ベストな設定を見つけたらあとは毎回コピペするだけだから詳細忘れ
ちゃうんだよねw 前のがマルチコア使ってたら今回のもx264のバージョン同じだから
マルチコア使ってると思うよ。
[h264 2パスエンコード]
ffmpeg -y -i 入力ファイル -c:v libx264 -b:v 1180k -preset placebo -tune film -pass 1 -c:a copy -f mp4 /dev/null &&
ffmpeg -i 入力ファイル -c:v libx264 -b:v 1180k -preset placebo -tune film -pass 2 -c:a copy 出力ファイル
[vp9 2パスエンコード]
ffmpeg -y -i 入力ファイル -c:v libvpx-vp9 -threads 4 -tile-columns 2 -frame-parallel 1 -quality good -speed 1 -b:v 2460k -vf yadif=1:-1:0,fps=29.97 -pass 1 -c:a copy -f webm /dev/null &&
ffmpeg -i 入力ファイル -c:v libvpx-vp9 -threads 4 -tile-columns 2 -frame-parallel 1 -quality good -speed 0 -b:v 2460k -vf yadif=1:-1:0,fps=29.97 -pass 2 -c:a copy 出力ファイル
逆に聞きたいんだけど-tune filmや-tile-columnsや-frame-parallelってなんなん? 忘れたわw
yadif=1:-1:0,fps=29.97ってのはIP変換ね。必要ないなら外して。
vp9はスレッド数指定してるね。
44 :名無しさん@お腹いっぱい。:2020/08/20(木) 15:14:08 ID:pJQn2KkM0.net
43 :名無しさん@お腹いっぱい。:2020/08/20(木) 14:53:12 ID:GAPJtLxP0.net
>高速化もいろいろ試さないかなと・・・
>>42
いろいろ試すところなんてない。品質と速度はトレードオフ。
違いがでるのはおまいが言うようにマルチスレッド処理するかしないかぐらいだろ。
品質を一定に保って速度上げたきゃマシンのスペックを上げるしかない。
まあ、VP9よりh264のがかなり早いからマルチコア使ってんじゃねーかな。
47 :名無しさん@お腹いっぱい。:2020/08/21(金) 15:17:13 ID:NYBmefEV0.net
>>45
ソフトの前にハードウェアの点検と見直しを推奨します
CPUクーラーがちゃんと付いていない(物理的に)
CPUクーラーやケースファンが機能していない(埃とかで)
CPUのオーバークロック等の設定が無理過ぎる(BIOS)
35 :名無しさん@お腹いっぱい。:2020/08/20(木) 00:47:02.00 ID:IEw+2rgI0.net
ありがとうございます。
私が勘違いしていて、結局ファイルが破損?インデックスが破損?していたみたいで、以下のコマンドでシークできるようになりました。
コマンドの内容は分かってないですが、再エンコード無しで上手くいっているようです。
ご迷惑をお掛けしました。
— repair.bat —
ffmpeg -i %1 -c copy -f hls -hls_time 2 -hls_playlist_type vod -hls_segment_filename “video%%5d.ts” video.m3u8
ffmpeg -i video.m3u8 -movflags faststart -c copy -bsf:a aac_adtstoasc “S:¥STREAM¥%‾n1.mp4”
21 :名無しさん@お腹いっぱい。:2020/08/19(水) 20:06:01.03 ID:gHnC66hr0.net
なぜかコードが貼り付けられませんでした
“D:¥ffmpeg.exe” -y -i “D:¥test.mov”
-vf “format=gbrp,drawbox=x=iw-262:y=ih-44:w=226:h=26:color=#00FF00@1.0:t=fill” -vcodec libx264rgb -preset ultrafast
-crf 20 -acodec copy -pix_fmt bgr24 “D:¥test2.mkv”
53 :名無しさん@お腹いっぱい。:2020/08/22(土) 15:17:58.51 ID:DKOD3noF0.net
25 :名無しさん@お腹いっぱい。:2020/08/19(水) 21:04:27.75 ID:gHnC66hr0.net
もう少し詳しく書くと
赤 (255,0,0) → (255,25,0) +25
緑 (0,255,0) → (0,216,0) -39
青 (0,0,255) → (0,15,255) +15
となります。
56 :名無しさん@お腹いっぱい。:2020/08/23(日) 13:53:10.25 ID:L9sDQ9qK0.net
問題ないのですね!失敗しているものと思いやり直しを繰り返していました。
仰る通りアーカイブなしの一発勝負なので再トライしてみます。
ちなみにtsで一先ず保存しておく場合は末尾を.tsにすれば大丈夫でしょうか?
(tsでの保存を考えていなかったのでこれから自分でも調べてみます)
18 :名無しさん@お腹いっぱい。:2020/08/19(水) 18:29:43.52 ID:TH0iE1Ol0.net
50 :名無しさん@お腹いっぱい。:2020/08/21(金) 16:50:34.62 ID:czuGiC700.net
古いノートPCならなおさら一度開けて埃を取ったほうが良いよ
通気性が悪くなって熱が逃げなくなってるから
26 :名無しさん@お腹いっぱい。:2020/08/19(水) 21:13:08.27 ID:TH0iE1Ol0.net
うんだから他の可能性って言ってたやつ
に色々あるの弄ってみないと何とも
4 :名無しさん@お腹いっぱい。:2020/08/18(火) 21:05:33 ID:IGfzcdOm0.net
すみませんよろしくお願いします。
ストリーミングの動画を保存したのですが、先頭からは問題なく再生できるのですが、
途中から再生することができません。
ffmpegで再エンコードをするとシークできる動画ができますが、
再エンコードのため、サイズが大きくなったり、画質が劣化したりします。
なので、再エンコードをせずに、シークができるファイルにするにはどのようにしたらよいですか?
IフレームとPフレームの動画があったとして、
IPPPPPPPPPPPPPPPPPPPPPPP…………………
の動画を
IP……P IP……P IP……P IP……P IP……P IP……P IP……P
みたいに、途中のPフレームの30フレーム目だけをにIフレームにエンコードするような方法ってありませんかね?
48 :名無しさん@お腹いっぱい。:2020/08/21(金) 16:43:14.79 ID:Rp+VGTe40.net
なんやこいつら
ケチつけるだけの無能かよ
せっかく自慢してるんだから、おべっか使ってソフトをアップさせたらええのに
31 :名無しさん@お腹いっぱい。:2020/08/19(水) 23:18:52.76 ID:RHE7FKSY0.net
ありがとうございます。
そのオプションは結局全体を再エンコードするみたいですね
出来れば別のやり方がないでしょうか?
38 :前スレへのレス:2020/08/20(木) 14:07:22 ID:GAPJtLxP0.net
15 :名無しさん@お腹いっぱい。:2020/08/19(水) 16:55:34 ID:Teah6dvI0.net
ログ見たら、cargo-cがLikely errorコケやがってる・・・
— stderr
fatal: not a git repository (or any of the parent directories): .git
12 :名無しさん@お腹いっぱい。:2020/08/19(水) 11:53:16.44 ID:gHnC66hr0.net
全背景の右端に余計な緑の線が出てるのと全体的に色がにじんでる
ってこちらで見えているのとは見え方が違うのですが
できればスクリーンショットをアップしていただけないでしょうか?
あと、何の条件が違うか分かりますか?
その異常なファイルを正常なファイルにするにはどの設定を変えれば良いですか?
55 :名無しさん@お腹いっぱい。:2020/08/23(日) 10:43:06.65 ID:TDo0OPBk0.net
そういうエラーはあんまり気にしなくていい
表示が固まらない限りだいたい上手くいってる
アーカイブなしの一発勝負なら気にしてもしょうがない
ちなみに最初はtsで保存して、終わってからmp4に-c copyで変換してる
23 :名無しさん@お腹いっぱい。:2020/08/19(水) 20:54:44.02 ID:TH0iE1Ol0.net
それは画素形式(pixel format、データの表現・格納の型)であって当然色の表現の差異は埋められない
元の値・意味が違うのに格納の仕方ではどうにもならない
22 :名無しさん@お腹いっぱい。:2020/08/19(水) 20:49:04.28 ID:TH0iE1Ol0.net
結論だけ先に書くと、まずは素材とフィルタで色がずれないように試行錯誤
次に再生機が受け取る色情報の指定だけを変えてみて色が正しくなるか見て、駄目なら上流に向かって揃えてく
これまでの放送電波〜デジタルの動画の表現の変遷によって、既定では多くのソフトは動画のサイズで色の表現とその情報の扱いを分けてる
これはcolor rangeに限らなくて原色の関係もそう
大抵はBT.601(NTSCアナログ放送とかで使われてた)=NTSC(日本・米国)の場合SMPTE 170MとBT.709(HDTV、ここ最近までの標準)とBT.2020(新しくて4KとかHDRの動画向け)で切り替わる
最初は帯の成分が緑しか無かったから、RGB全体的に明度落ちてると判断してcolor rangeの齟齬だけかと思ったけど、レス反応見たところ赤や青の変化は無いか気にならない程度らしくて
他の原色・color transfer characteristics・色空間も怪しい
3 :名無しさん@お腹いっぱい。:2020/08/13(木) 19:46:49 ID:j48XP1pP0.net
9 :名無しさん@お腹いっぱい。:2020/08/19(水) 07:59:11.82 ID:gHnC66hr0.net
いろいろと解像度を変えて出力したファイルをアップしました。
https://24.gigafile.nu/0826-da342c7d1f5626f80ffc90dfb031e97d5
パスワード:1234
MOVファイルがAfter Effectsを使って、書き出したファイルで
MKVファイルがそれをFFmpegを使って再エンコードしたファイルとなっています。
01-正常な色の動画(838×576).mov
04-正常な色の動画(1148×580).mov
を見てもらうと分かりますが、綺麗な緑色が再現できています。
一方で、
02-異常な色の動画(840×576).mov
03-異常な色の動画(1026×576).mov
だと緑色がくすんで見えます。
更に、右下の帯を見ますと、
01-正常な色の動画(838×576)
02-異常な色の動画(840×576)
は綺麗な緑色がでていますが、
03-異常な色の動画(1026×576).mkv
04-正常な色の動画(1148×580).mkv
だとくすんでしまっていることが分かります。
特に、
04-正常な色の動画(1148×580).mkv
だと、AEで出力した緑は綺麗なのに、FFmpegで出力した緑は汚くなっています。
これは一体何が原因で起こるのでしょうか?
14 :名無しさん@お腹いっぱい。:2020/08/19(水) 16:40:55 ID:Teah6dvI0.net
久々にmedia-autobuild_suite-masterを使ったら、またエラーがっ!
このツール糞すぎだろ・・・
29 :名無しさん@お腹いっぱい。:2020/08/19(水) 22:09:01.60 ID:Teah6dvI0.net
30 :名無しさん@お腹いっぱい。:2020/08/19(水) 22:23:58.60 ID:17sfGOz30.net
28 :名無しさん@お腹いっぱい。:2020/08/19(水) 21:41:15.48 ID:TH0iE1Ol0.net
おー言うねぇ
ただ今はちゃんとした環境なくて、ffmpegもAndroidで疑似Linux動作させてその中で動かしてる感じなんだよね
ffplayが使えれば良いんだけどグラフィックの表示させるとこで詰まってて……
しつこいようだけど のを入力オプションと出力オプションに指定して試行錯誤するって方法しか確かなこと言えない、ごめんね
40 :名無しさん@お腹いっぱい。:2020/08/20(木) 14:21:13 ID:jP20gblw0.net
13 :名無しさん@お腹いっぱい。:2020/08/19(水) 16:26:01 ID:TH0iE1Ol0.net
>>4
例えば入力1番目のファイルの1番目の映像なら
-force_key_frames:0:v:0 expr:”gte(n,n_forced*30)”
11 :名無しさん@お腹いっぱい。:2020/08/19(水) 10:36:38.63 ID:xtrvNOjO0.net
02 の二つ(mov mkv)
と
04 の二つ(mov mkv)
がどれも綺麗に見えた
01 の二つ(mov mkv)
03 の二つ(mov mkv)
は失敗している様に見えた(全背景の右端に余計な緑の線が出てるのと全体的に色がにじんでる)
57 :名無しさん@お腹いっぱい。:2020/08/23(日) 20:41:01 ID:STt1LZlY0.net
42 :名無しさん@お腹いっぱい。:2020/08/20(木) 14:36:33 ID:jP20gblw0.net
>>41 いやパラメーターをいじくって高品位化と同時に高速化もいろいろ試さないかなと・・・
手持ちのソース量によるとは思うけどバッチで処理するときに1割でも早くなればかなり差がつくだろ?
52 :名無しさん@お腹いっぱい。:2020/08/21(金) 19:32:58.96 ID:3M8eoSkD0.net
45 :名無しさん@お腹いっぱい。:2020/08/21(金) 14:46:51 ID:pEVeU9Ae0.net
動画エンコしてると熱で強制シャットダウンが多発。
暇を見つけて、CPUの温度を見ながら最大処理能力を変更するプログラム作ったんだけど、
使ってみたい人いるかな?
スレチだったらすまん。
19 :名無しさん@お腹いっぱい。:2020/08/19(水) 19:10:20.94 ID:gHnC66hr0.net
color rangeが原因ではないということですか?
どういう手順で調べていけば良いかだけでも
教えていただけないでしょうか?
16 :名無しさん@お腹いっぱい。:2020/08/19(水) 17:05:08.69 ID:TH0iE1Ol0.net
After Effectの解像度別の挙動に整合性が見られない(大きさ順に採番したとき1,4と2.3で分かれた)からそのmovコンテナに入ってる情報は信用できなそう
推測だけど動画に色の情報、特にcolor rangeが入ってない(ffmpegで入力の情報 → color rangeがunknown)か間違ってると思う
で、ffmpegはデコードは問題ない(color rangeに依存しないから)し、フィルタなんかの効果もこれに準ずるけど書き込み時は解像度で判別されて大きい画像数だとfull range / pcになる
ここが大事で、limited rangeの値そのままfull rangeの値とされると各チャンネルの明度は落ちる
例えば04はlimited / tvとしてデコード(ただし値は超過)してffmpegのフィルタではlimitedな値を出し、出力はfull range / pcとして出力
素材の値はfullだけどフィルタの分はlimitedなのをfull / pcで出力するから色に違いが出る
02, 03はAfter Effectの時点でlimited / tvの値
01, 04はAfter Effectの時点でfull / pcの値
01, 02は、解像度の小ささによってffmpegは既定では自動でlimited / tvで出力するから再生時は超過値は全部切り捨てられて問題なし
03, 04は、解像度の大きさによってffmpegは既定では自動でfull / pcで出力するから、再生時は、素材にfullの値が含まれない03はどちらもlimitedの値、素材にfullの値が含まれる04は素材の分だけfullの明るい値に
46 :名無しさん@お腹いっぱい。:2020/08/21(金) 15:15:21 ID:Bzc0M5J10.net
私の個人的な意見だけど
最大処理能力でも排熱が上手くいくようにファンを増設したり、配置換えをしたりするのが筋で
ソフトウェアで解決っていうのはそれこそCPUパワーの無駄だし
ソフトウェアが上手く動かなかったときにハードウェアが壊れる危険性があるからやめた方がいいと思う
同じソフトウェアでもファン制御とは訳が違うと思う
46 :名無しさん@お腹いっぱい。:2020/08/21(金) 15:15:21 ID:Bzc0M5J10.net
私の個人的な意見だけど
最大処理能力でも排熱が上手くいくようにファンを増設したり、配置換えをしたりするのが筋で
ソフトウェアで解決っていうのはそれこそCPUパワーの無駄だし
ソフトウェアが上手く動かなかったときにハードウェアが壊れる危険性があるからやめた方がいいと思う
同じソフトウェアでもファン制御とは訳が違うと思う
20 :名無しさん@お腹いっぱい。:2020/08/19(水) 20:05:28.58 ID:gHnC66hr0.net
こうすれば、RGB形式で読み込んでRGB形式で出力することになるので
色空間の問題はなくなるかと思ったのですが、
これでもやはりffmpeg上で出力した帯の色が薄くなってしまいます。
となると、color rangeが原因ではないということでしょうか?
全く、原因が分からないのですが、何か分かりますでしょうか?
49 :名無しさん@お腹いっぱい。:2020/08/21(金) 16:44:08.45 ID:sQP6nbJB0.net
,47
アドバイスありがと。
ここの住人はデスクトップPCでハイエンドなエンコードマシンを作る人たちがターゲットかな。
エンコ中に余計なソフトは入れたくないわね。
自分のは古いノートPCなので、今更ハードに手を入れたくないのでソフトを作って延命処置です。
対策ソフト走らせてからは90度は超えなくなり、エンコ中にシャットダウンもなくなったので若干遅くなっても
快適です。
お邪魔しました
17 :名無しさん@お腹いっぱい。:2020/08/19(水) 17:21:30 ID:gHnC66hr0.net
>>16
ありがとうございます。
color rangeのことは調べてみて、理解できました。
しかし、この原理に基づくと緑だけでなく赤や青も薄くなるものではないのでしょうか??
あと、
04の動画に正常な色の帯を描画しながら
再エンコードしたい場合にはどのようにすれば良いのですか?
“scale=in_range=full:out_range=tv”
を入れてみたのですが、
結果は変わりませんでした。
“scale=in_range=tv:out_range=tv”
なども試してみましたが、やはり駄目でした。
帯の前と後、両方試してみましたが、どちらも駄目でした。
どういうコードならうまくいきますか?
レスを投稿する(名前省略可)