公式サイト
http://ffmpeg.org/
エンコード、ストリーミング配信を高画質高音質で行えるffmpeg。
OSに拘らず対応コーデックが多い。
対応コーデックが多く、多彩なオプションを使用可能。
コマンドラインから使用することができる。
ffmpegならこちらへ 3
https://egg.5ch.net/test/read.cgi/software/1487682297/
探検
ffmpegならこちらへ 4
■ このスレッドは過去ログ倉庫に格納されています
2019/04/21(日) 01:11:29.44ID:TpNEqVMQ0
683680
2020/04/24(金) 14:51:18.50ID:Mhu397KQ0 本当は、zeranoe版にfdk-aacを加えた奴をビルドしたいんだよな
でも、build hepler系には頼りたくない・・・
でも、build hepler系には頼りたくない・・・
2020/04/24(金) 20:29:45.24ID:F+lIQEBG0
>>683
fdk-aacだけのビルドで音声だけ、zeranoe版で映像だけエンコしたら解決。
fdk-aacだけのビルドで音声だけ、zeranoe版で映像だけエンコしたら解決。
2020/04/25(土) 00:01:47.13ID:QdPLqBLr0
ffmpegでwav出力 → qaacでエンコ
それをffmpegで出力した映像とmuxしたら最高
配信で使いたいなら自分で試行錯誤して頑張れとしか・・
それをffmpegで出力した映像とmuxしたら最高
配信で使いたいなら自分で試行錯誤して頑張れとしか・・
2020/04/25(土) 00:40:42.41ID:E0JZMnsV0
2020/04/25(土) 16:20:27.37ID:UxPVGd9s0
asfにopus入れてkagamin2で配信する方法もある
WMPしか再生できないけど
WMPしか再生できないけど
2020/04/30(木) 02:05:18.92ID:wLgwFJe80
media-autobuild_suiteで、zeranoe版に近い設定でビルドするにはどうしたらいいの?
設定が多すぎてどうすれば良いか困ってる・・・
https://github.com/m-ab-s/media-autobuild_suite
設定が多すぎてどうすれば良いか困ってる・・・
https://github.com/m-ab-s/media-autobuild_suite
689名無しさん@お腹いっぱい。
2020/04/30(木) 02:06:43.14ID:wLgwFJe80 全部入りにすると容量バカ食いするし
2020/04/30(木) 05:19:01.92ID:0B0W4hTj0
使うのだけ有効化すればよくね?
691名無しさん@お腹いっぱい。
2020/04/30(木) 09:51:40.78ID:NjYP8KdH0 >>690
zeranoe版で使っているもの+fdkaacを有効にすればいいんだけど、どれを有効にしたらいいかわからなくて・・・
zeranoe版で使っているもの+fdkaacを有効にすればいいんだけど、どれを有効にしたらいいかわからなくて・・・
2020/04/30(木) 10:09:09.30ID:93DNHdju0
Readme読んだら何のライブラリ使ってるか書いてるじゃんと思って読んでたけど今のzeranoe版ってlibvmafも有効になってるんだな
2020/04/30(木) 10:19:30.85ID:D/a/7i8l0
>>691
ffmpeg.exeを実行したらビルドオプションが書いてあるだろ--enableっての
ffmpeg.exeを実行したらビルドオプションが書いてあるだろ--enableっての
2020/04/30(木) 11:02:16.90ID:jXBODyYU0
>>692
うお、マジだ。気づいてなかったんで教えてくれて助かった。ありがとう。
調べてみたら
> Rather late, but VMAF has been added to the builds with 20200328-3362330.
VMAF Filter - Page 2 - FFmpeg
https://ffmpeg.zeranoe.com/forum/viewtopic.php?p=16845#p16845
ってことで3月末から追加されてたらしい。
うお、マジだ。気づいてなかったんで教えてくれて助かった。ありがとう。
調べてみたら
> Rather late, but VMAF has been added to the builds with 20200328-3362330.
VMAF Filter - Page 2 - FFmpeg
https://ffmpeg.zeranoe.com/forum/viewtopic.php?p=16845#p16845
ってことで3月末から追加されてたらしい。
695名無しさん@お腹いっぱい。
2020/04/30(木) 18:25:05.46ID:wLgwFJe80 とりあえず、必要な物だけ選んでビルドしようとしたら、vidstab云々でエラー出て終了・・・
なんてこったい
2時間が無駄になった・・・
なんてこったい
2時間が無駄になった・・・
2020/04/30(木) 19:23:49.52ID:Vg21wd8Z0
mkvに入ってる字幕を消したくて、vもaもcopyでmp4に変換すると字幕がなくなるなるので、まとめて変換しようかと思うんですが。
これって拡張子変えただけで中身は変わらないので劣化は起きてないですよね?
mkvでもいいんですが、なんでmp4にするかは、汎用性と、ビットレートが出てなかったり実際とは違う小さい値が表示されてるのが気持ち悪いというだけです。
これって拡張子変えただけで中身は変わらないので劣化は起きてないですよね?
mkvでもいいんですが、なんでmp4にするかは、汎用性と、ビットレートが出てなかったり実際とは違う小さい値が表示されてるのが気持ち悪いというだけです。
2020/04/30(木) 19:32:27.55ID:5JALOfei0
字幕を消したいはどこに行った
2020/04/30(木) 19:55:03.80ID:buoK1ERT0
俺もそこが気になって数回読みなおしちまったw
2020/04/30(木) 19:58:03.69ID:Wcmw7TEl0
拡張子でもいじって、まぁ、がんばれ!
2020/04/30(木) 22:14:46.48ID:3iZ5MTR00
字幕無視の入力オプション-sn
真偽オプションだから引数は要らない
真偽オプションだから引数は要らない
701名無しさん@お腹いっぱい。
2020/04/30(木) 23:09:47.99ID:wLgwFJe80 ここ見て思いついたことなんだけど、fdk-aacライブラリで、aacをwavにデコードってできないの?
https://nw-electric.way-nifty.com/blog/2018/02/aacmpd-fdk-aac-.html
https://nw-electric.way-nifty.com/blog/2018/02/aacmpd-fdk-aac-.html
2020/04/30(木) 23:29:47.28ID:0i84pJ4z0
fdkエンコーダーとaacデコードは別物
703名無しさん@お腹いっぱい。
2020/05/01(金) 00:52:53.67ID:WmalfjuP0 もしかして、fdk-aacでaacをwavに変換できない?
ソース見たらデコードという言葉があったので、できると思ったんだけどなあ
ソース見たらデコードという言葉があったので、できると思ったんだけどなあ
2020/05/01(金) 05:40:01.42ID:+CuZZEYi0
どういうことだ?
FDK-AACはwavを出力するソフトウェアではないぞ
FDK-AACはwavを出力するソフトウェアではないぞ
2020/05/01(金) 06:30:26.64ID:7BjXl0h20
コーデックなんだからできるでしょ
2020/05/01(金) 10:07:10.51ID:R0iHuhWA0
草
2020/05/01(金) 10:45:09.27ID:HRN4fo5Q0
新説:デコードに品質がある
2020/05/01(金) 10:47:38.52ID:BvtTjGxW0
なんか無茶苦茶だな…
2020/05/01(金) 10:53:10.33ID:7BjXl0h20
電源で音が変わるんだからコーデックが変われば当然変わる
2020/05/01(金) 11:05:40.16ID:HRN4fo5Q0
新語:デコーデック
2020/05/01(金) 12:37:41.25ID:R0iHuhWA0
凸凸凸凛!
712名無しさん@お腹いっぱい。
2020/05/03(日) 23:21:13.08ID:0ns1VXJr0 drawtextを使って、動画の右端に動画時間を表示させたいのですが、
どのようにすれば良いですか?
xやyで文字列の左上の座標を指定できますが、
文字列全体の幅が予め分からないと左上の座標を求めることができません。
あるいは、文字列の右端の座標を指定するようなコマンドはございますでしょうか?
検索して調べてみましたが、
情報は見つかりませんでしたのでどなたか教えてくださいませ
どのようにすれば良いですか?
xやyで文字列の左上の座標を指定できますが、
文字列全体の幅が予め分からないと左上の座標を求めることができません。
あるいは、文字列の右端の座標を指定するようなコマンドはございますでしょうか?
検索して調べてみましたが、
情報は見つかりませんでしたのでどなたか教えてくださいませ
713712
2020/05/03(日) 23:30:06.59ID:0ns1VXJr0 すいません
text_wでうまくいきました。
あと、
秒数を小数部位を表示したいのですが
text='%{{eif\:t\:d}}\.%{{eif\:mod(t*10\,10)\:d}}
のようにして、10倍してから一桁目をとるようなことをする必要がありますか?
もっと簡単にできる方法があればお教えください
text_wでうまくいきました。
あと、
秒数を小数部位を表示したいのですが
text='%{{eif\:t\:d}}\.%{{eif\:mod(t*10\,10)\:d}}
のようにして、10倍してから一桁目をとるようなことをする必要がありますか?
もっと簡単にできる方法があればお教えください
714名無しさん@お腹いっぱい。
2020/05/09(土) 18:12:07.05ID:j9KY0Gpt0 データ速度、総ビットレート、フレーム率、ビットレートなどはそのままで、
フレーム高とフレーム幅だけ変更する方法はありますでしょうか?
フレーム高とフレーム幅だけ変更する方法はありますでしょうか?
2020/05/09(土) 19:56:44.60ID:vFZgniSj0
あるわけねーだろ
2020/05/09(土) 20:16:25.52ID:AriwjvGx0
そもそもデータ速度、総ビットレート、ビットレートの違いって何?w
フレーム率とは?w
フレーム率とは?w
2020/05/09(土) 20:25:16.11ID:kUF02N5O0
一人ではしゃぐなよ
キチガイ
キチガイ
2020/05/09(土) 20:52:01.84ID:Jj+aGJiY0
エクスプローラーのカラムはフレームレートのことを「フレーム率」と訳してる
2020/05/09(土) 20:54:05.82ID:6J8tYZTG0
要はビットレートとfpsをそのままで
解像度を変更したいってか?
解像度の縮小なら出来なくはないが若干画質下がるよな
解像度の拡大なら内容によってはかなり画質下がるよな
一体どっちをしたいんだ?
どちらにしろ元の画質よりは下がるが気になるかどうかは個人差だけど・・・?
トランスコード後のファイル容量は内容次第なんで判らん
解像度を変更したいってか?
解像度の縮小なら出来なくはないが若干画質下がるよな
解像度の拡大なら内容によってはかなり画質下がるよな
一体どっちをしたいんだ?
どちらにしろ元の画質よりは下がるが気になるかどうかは個人差だけど・・・?
トランスコード後のファイル容量は内容次第なんで判らん
2020/05/09(土) 22:35:55.86ID:CGPDm9wo0
>>714
なぜ変換する必要があるの?
なぜ変換する必要があるの?
721名無しさん@お腹いっぱい。
2020/05/10(日) 00:15:46.32ID:K7/9Ub/00 いくつかあるmp4をフレーム高や幅を1080X1920から720X1280に全部揃えたいので
元の画質のまま縮小出来ないかと思いました。
元の画質のまま縮小出来ないかと思いました。
2020/05/10(日) 00:33:34.46ID:Z5wZ7UCa0
かなりのバカみたいだから画質とかわからなそう
2020/05/10(日) 00:40:38.12ID:8gYxD07w0
サイズ変えると同じ(同じってわけじゃないけども)品質の画質を維持するのに必要なビットレートは変わるよ
細かいこと抜かして感覚的な話で行けば1080pの解像度で5Mbps辺りなら720pで2.5Mbpsくらい
いくつか一部分だけ仮エンコードしてみて納得できるビットレート探ってみたら?
細かいこと抜かして感覚的な話で行けば1080pの解像度で5Mbps辺りなら720pで2.5Mbpsくらい
いくつか一部分だけ仮エンコードしてみて納得できるビットレート探ってみたら?
2020/05/10(日) 01:18:11.88ID:egxzFZV90
>>721
プレイヤー側で720X1280にするとか?
プレイヤー側で720X1280にするとか?
2020/05/10(日) 02:31:44.61ID:DPG+qu930
縮小したらディテールは失われYUV再劣化とかするけど再生環境を限定するって前提なら別にいい・・・のかな?
縮小の都合でノイズは減るかもしれないけどビットレート足りなくて余計きちゃない()になる可能性もあるし
ついでにインターレースバリバリだとオワタ/(^o^)\画質になるし
縮小の都合でノイズは減るかもしれないけどビットレート足りなくて余計きちゃない()になる可能性もあるし
ついでにインターレースバリバリだとオワタ/(^o^)\画質になるし
2020/05/10(日) 03:14:10.51ID:ZyMknyki0
727713
2020/05/10(日) 13:25:31.92ID:emY54I1E0 どなたか、私にもご回答いただけないでしょうか?
例えば、
動画時間を
4.43 sec
のようなかたちで表示したいのですが、
text='%{{eif\:t\:d}}\.%{{eif\:mod(t*10\,10)\:d}}
のようにするしかないですか?
C#みたいに、.ToString("0.00")みたいな表記はできませんか?
例えば、
動画時間を
4.43 sec
のようなかたちで表示したいのですが、
text='%{{eif\:t\:d}}\.%{{eif\:mod(t*10\,10)\:d}}
のようにするしかないですか?
C#みたいに、.ToString("0.00")みたいな表記はできませんか?
728名無しさん@お腹いっぱい。
2020/05/10(日) 17:29:44.60ID:SjCQ5fqs0 ffmpegのビルド練習がてらでopenh264ビルドしたんだけど、
x86_64-w64-mingw32-gcc-ar.exe -> x86_64-w64-mingw32-ar.exe
x86_64-w64-mingw32-gcc-nm.exe -> x86_64-w64-mingw32-nm.exe
にリネームしないとエラー出てビルドできなかったんだけど、回避方法ある?
x86_64-w64-mingw32-gcc-ar.exe -> x86_64-w64-mingw32-ar.exe
x86_64-w64-mingw32-gcc-nm.exe -> x86_64-w64-mingw32-nm.exe
にリネームしないとエラー出てビルドできなかったんだけど、回避方法ある?
2020/05/10(日) 18:01:13.61ID:Z5wZ7UCa0
回避してんじゃん
730名無しさん@お腹いっぱい。
2020/05/10(日) 18:49:24.68ID:SjCQ5fqs0 ごめん言葉足らずだった
リネーム以外に回避方法あるのっと言いたかった
リネーム以外に回避方法あるのっと言いたかった
2020/05/10(日) 20:04:06.20ID:btwDrftv0
>727
単体の設定で小数点以下の桁数指定の秒指定が無いから
eif 内で演算するしか方法がないと思う
単体の設定で小数点以下の桁数指定の秒指定が無いから
eif 内で演算するしか方法がないと思う
2020/05/12(火) 12:29:09.89ID:C+gLB/tr0
zeranoe.comにある最新ビルド、ffmpeg-20200510-fc99a24
HLSのキーを取得できなくなっているな。
抽出したURI文字列の頭にゴミが残って、パスが別物になるので、
キーファイルが見つからない、となる。
ffmpegを取り込んでいるMPVの最新ビルド20200510-git-4e94b21でも同じエラーが生じる。
ffmpeg、mpvともに一つ前のビルドはこの点においては問題なし。
HLSを扱う人は、アップデートは待ったほうがいいよ。
HLSのキーを取得できなくなっているな。
抽出したURI文字列の頭にゴミが残って、パスが別物になるので、
キーファイルが見つからない、となる。
ffmpegを取り込んでいるMPVの最新ビルド20200510-git-4e94b21でも同じエラーが生じる。
ffmpeg、mpvともに一つ前のビルドはこの点においては問題なし。
HLSを扱う人は、アップデートは待ったほうがいいよ。
2020/05/13(水) 01:31:54.87ID:OxnAAaO00
TSをmp4(h264)にエンコードして、画質をssimで調べてるんだけどssim値が予想と違う。
以下のようにエンコード。<CRF>は0,10,20,30と変えた。
$ ffmpeg -fflags +discardcorrupt -i input.ts \
-c:v libx264 -crf <CRF> -preset:v medium \
-c:a copy -bsf:a aac_adtstoasc \
output-<CRF>.mp4
input.ts と output-<CRF>.mp4 から、以下の方法でssimを算出。
$ ffmpeg -i input.ts -i output-<CRF> \
-lavfi "[0:v]settb=AVTB,setpts=PTS-STARTPTS[main];[1:v]settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]ssim" \
-f null -
結果は、以下の通り。
CRF=0: SSIM Y:0.746490 (5.960043) U:0.926544 (11.339744) V:0.922453 (11.104362) All:0.805826 (7.118090)
CRF=10: SSIM Y:0.746283 (5.956513) U:0.927030 (11.368544) V:0.922895 (11.129157) All:0.805843 (7.118472)
CRF=20: SSIM Y:0.748135 (5.988323) U:0.930105 (11.555517) V:0.925694 (11.289748) All:0.808056 (7.168266)
CRF=30: SSIM Y:0.751866 (6.053139) U:0.932173 (11.685966) V:0.927576 (11.401202) All:0.811202 (7.240033)
CRFが小さくなるほどSSIMが良くなる、CRF=0のときはSSIM=1になると予想していましたが、ほぼ変化なしです。
エンコード時のオプション、ssim測定時のオプションなど間違っているのでしょうか?
以下のようにエンコード。<CRF>は0,10,20,30と変えた。
$ ffmpeg -fflags +discardcorrupt -i input.ts \
-c:v libx264 -crf <CRF> -preset:v medium \
-c:a copy -bsf:a aac_adtstoasc \
output-<CRF>.mp4
input.ts と output-<CRF>.mp4 から、以下の方法でssimを算出。
$ ffmpeg -i input.ts -i output-<CRF> \
-lavfi "[0:v]settb=AVTB,setpts=PTS-STARTPTS[main];[1:v]settb=AVTB,setpts=PTS-STARTPTS[ref];[main][ref]ssim" \
-f null -
結果は、以下の通り。
CRF=0: SSIM Y:0.746490 (5.960043) U:0.926544 (11.339744) V:0.922453 (11.104362) All:0.805826 (7.118090)
CRF=10: SSIM Y:0.746283 (5.956513) U:0.927030 (11.368544) V:0.922895 (11.129157) All:0.805843 (7.118472)
CRF=20: SSIM Y:0.748135 (5.988323) U:0.930105 (11.555517) V:0.925694 (11.289748) All:0.808056 (7.168266)
CRF=30: SSIM Y:0.751866 (6.053139) U:0.932173 (11.685966) V:0.927576 (11.401202) All:0.811202 (7.240033)
CRFが小さくなるほどSSIMが良くなる、CRF=0のときはSSIM=1になると予想していましたが、ほぼ変化なしです。
エンコード時のオプション、ssim測定時のオプションなど間違っているのでしょうか?
735734
2020/05/13(水) 01:35:46.08ID:OxnAAaO00 誤: $ ffmpeg -i input.ts -i output-<CRF> \
正: $ ffmpeg -i input.ts -i output-<CRF>.mp4 \
正: $ ffmpeg -i input.ts -i output-<CRF>.mp4 \
2020/05/13(水) 04:35:48.51ID:Z3WTVEyB0
SSIMは映像の品質を評価するのに向いていないのであまり信頼しないほうがいい
2020/05/13(水) 09:23:45.37ID:Z6fAK/CR0
最後は目視
2020/05/13(水) 10:32:25.69ID:Iek5ichG0
色々試してみてその時は気になりつつも妥協したのにそのプロファイル固定でやるようになると見る時に何も気にならない不思議
2020/05/13(水) 10:40:56.89ID:lrDXybw30
比較すれば違いがあるのは判るけど、
それが問題となるかは全然別の話
それが問題となるかは全然別の話
2020/05/13(水) 13:58:41.13ID:Yp8vBFeK0
skipping ** segments ahead, expired from playlists
↑これが表示されたら自動で終了させたいんですが、方法はありますか?
↑これが表示されたら自動で終了させたいんですが、方法はありますか?
2020/05/13(水) 14:08:19.66ID:BRdMc3QQ0
あります
2020/05/13(水) 16:37:42.16ID:4v3JYXTT0
覚え書き:一行コマンドで複数入力・複数出力
[グローバルオプション]
[入力1オプション] -i <入力1>
[ [入力2オプション] -i <入力2> ……]
<出力1オプション> <出力1>
[ [出力2オプション] <出力2> ……]
[グローバルオプション]
[入力1オプション] -i <入力1>
[ [入力2オプション] -i <入力2> ……]
<出力1オプション> <出力1>
[ [出力2オプション] <出力2> ……]
2020/05/13(水) 18:31:35.03ID:gexdbhqu0
2020/05/13(水) 19:12:30.43ID:BRdMc3QQ0
アホは黙ってろ
2020/05/13(水) 20:26:52.14ID:4v3JYXTT0
2020/05/13(水) 21:15:52.53ID:Un3dDNFS0
テスト
747734
2020/05/13(水) 21:16:41.42ID:Un3dDNFS0 >736 >737 ありがとうございます。
今はx264(ソフト)ですがそのうちNVEncも試したいので、分かりやすい比較指標が欲しいなと思いSSIMを使っています。
今はx264(ソフト)ですがそのうちNVEncも試したいので、分かりやすい比較指標が欲しいなと思いSSIMを使っています。
748743
2020/05/13(水) 21:18:08.38ID:Un3dDNFS0 試しに、ffmpegと(ほぼ)同じ引数を使いHandBrakeCLIを実行してみたら、以下のように予想通りの結果になりました。
生成されるファイルサイズはほぼ同じです。
ffmpegの引数に大きな間違いは無いと思うんですが、何がいけないんだろう。
$ HandBrakeCLI \
--format av_mp4 --encoder x264 --quality <CRF> --x264-preset medium \
--aencoder copy \
--input input.ts --output output-<CRF>.mp4
CRF=0: SSIM All:0.999995 (53.123003)
CRF=10: SSIM All:0.995995 (23.974347)
CRF=20: SSIM All:0.989202 (19.666615)
CRF=30: SSIM All:0.975771 (16.156570)
生成されるファイルサイズはほぼ同じです。
ffmpegの引数に大きな間違いは無いと思うんですが、何がいけないんだろう。
$ HandBrakeCLI \
--format av_mp4 --encoder x264 --quality <CRF> --x264-preset medium \
--aencoder copy \
--input input.ts --output output-<CRF>.mp4
CRF=0: SSIM All:0.999995 (53.123003)
CRF=10: SSIM All:0.995995 (23.974347)
CRF=20: SSIM All:0.989202 (19.666615)
CRF=30: SSIM All:0.975771 (16.156570)
2020/05/13(水) 23:01:55.36ID:Rirjujk50
>>748
俺も理由はよくわからないんだけど、音声なしでMP4にエンコードしてSSIMを計測するとうまくいったりしない?
俺も理由はよくわからないんだけど、音声なしでMP4にエンコードしてSSIMを計測するとうまくいったりしない?
2020/05/17(日) 15:23:58.70ID:sJVMCeq30
5/10以降のWindowsビルドで、
ffmpeg -safe 0 -f concat -i index.txt -c copy output.mp4
ってやるとImpossible何たらでエラー吐くんだけど
5/4以前なら問題なし
ffmpeg -safe 0 -f concat -i index.txt -c copy output.mp4
ってやるとImpossible何たらでエラー吐くんだけど
5/4以前なら問題なし
2020/05/17(日) 15:40:47.56ID:wyyabrLb0
へえ
2020/05/17(日) 16:14:46.48ID:6pouxY/V0
2020/05/21(木) 11:06:59.95ID:FbBId9sI0
>>733
20200519-74dfc88で直ってた
やはりファイルパスの取り扱い(親ディレクトリパスの取得)がおかしくなっていた模様
https://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=b707abf0911b1cb997bf8b1912c970e1e15996cf
https://trac.ffmpeg.org/ticket/8674
https://trac.ffmpeg.org/ticket/8675
20200519-74dfc88で直ってた
やはりファイルパスの取り扱い(親ディレクトリパスの取得)がおかしくなっていた模様
https://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=b707abf0911b1cb997bf8b1912c970e1e15996cf
https://trac.ffmpeg.org/ticket/8674
https://trac.ffmpeg.org/ticket/8675
2020/05/21(木) 11:40:46.45ID:yX0Ss53O0
>>732
超亀レスだけどカンマで分ける件教えてくれてありがとう
超亀レスだけどカンマで分ける件教えてくれてありがとう
2020/05/22(金) 23:53:26.20ID:orP4Qvwa0
FFmpeg 4.2.3 "Ada"
4.2.3 was released on 2020-05-21.
4.2.3 was released on 2020-05-21.
2020/05/26(火) 11:31:07.92ID:kFexKKRq0
「FFmpeg」に致命的な脆弱性 〜修正版の「FFmpeg 4.2.3」が公開 - 窓の杜
https://forest.watch.impress.co.jp/docs/news/1254535.html
https://forest.watch.impress.co.jp/docs/news/1254535.html
2020/06/01(月) 02:22:43.53ID:LXV95fQ60
覚え書き:フレームレート周りの用語
fractional frame rate(分数フレームレート):30000/1001 ≒ 29.97fpsとか60000/1001 ≒ 59.96fpsとか
integer frame rate(整数フレームレート):30fpsとか60fpsとか
ドロップフレーム:(主に分数フレームレートの素材について)1/1001の割合で飛ばしてタイムコードを紐付ける方式、またそのタイムコード
(分数フレームレートの事を指す為に使うのはいい加減な表現のはず)
ノンドロップフレーム:切れ目なくタイムコードを紐付ける方式、まやそのタイムコード
(整数フレームレートの事w(ry)
fractional frame rate(分数フレームレート):30000/1001 ≒ 29.97fpsとか60000/1001 ≒ 59.96fpsとか
integer frame rate(整数フレームレート):30fpsとか60fpsとか
ドロップフレーム:(主に分数フレームレートの素材について)1/1001の割合で飛ばしてタイムコードを紐付ける方式、またそのタイムコード
(分数フレームレートの事を指す為に使うのはいい加減な表現のはず)
ノンドロップフレーム:切れ目なくタイムコードを紐付ける方式、まやそのタイムコード
(整数フレームレートの事w(ry)
2020/06/01(月) 20:17:28.53ID:LXV95fQ60
ICE 1931 色空間の各規格の RGB 色空間について、各設定値と XYZ 色空間への変換式
ITU-R Recommendation BT.709(旧称:CCIR 709)
┣ 白色点:D65
┗ 原色の色度座標:xr=0.64, yr=0.33, xg=0.30, yg=0.60, zr=0.15, zg=0.06
ITU-R BT.470(旧称:EBU Tech. 3213) System B, G
┣ 白色点:D65
┗ 原色の色度座標:xr=0.64, yr=0.33, xg=0.29, yg=0.60, zr=0.15, zg=0.06
ITU-R Recommendation BT.709(旧称:CCIR 709)
┣ 白色点:D65
┗ 原色の色度座標:xr=0.64, yr=0.33, xg=0.30, yg=0.60, zr=0.15, zg=0.06
ITU-R BT.470(旧称:EBU Tech. 3213) System B, G
┣ 白色点:D65
┗ 原色の色度座標:xr=0.64, yr=0.33, xg=0.29, yg=0.60, zr=0.15, zg=0.06
2020/06/03(水) 23:10:09.64ID:NMWKQnDS0
mp3 や m4a などからフォーマット変換なしに
アートワークを出力するオプションはありますか?
ffmpeg -i input.m4a cover.jpg
ffmpeg -i input.mp3 cover.png
などのようにやると埋め込み画像とフォーマットが異なる場合に
変換されてしまうので、これを避けたい
ちなみに出力時に拡張子は要りません
埋め込み画像データがバイナリファイルとして書き出せれば良いです
想像のコマンドオプションですが
ffmpeg -i input.mp3 -f ffimage cover.bin
みたいのをイメージしています。
アートワークを出力するオプションはありますか?
ffmpeg -i input.m4a cover.jpg
ffmpeg -i input.mp3 cover.png
などのようにやると埋め込み画像とフォーマットが異なる場合に
変換されてしまうので、これを避けたい
ちなみに出力時に拡張子は要りません
埋め込み画像データがバイナリファイルとして書き出せれば良いです
想像のコマンドオプションですが
ffmpeg -i input.mp3 -f ffimage cover.bin
みたいのをイメージしています。
2020/06/03(水) 23:53:31.46ID:s7lI5dZf0
mp3tagでも使えばいいのでは
2020/06/04(木) 00:51:45.05ID:WG4cHAEV0
シンプルだけど乱暴なやりかた
ffmpeg -i input.mp3 -c copy output.jpg
ffmpeg -i input.mp3 -c copy output.jpg
2020/06/04(木) 09:07:54.55ID:VbsWF3MI0
2020/06/05(金) 00:18:11.33ID:i9SBpUlA0
インターレース解除、重複フレーム削除、逆テレシネなどを調べてるけど
こだわり始めると難しいんだな。
こういうの↓とかも面白かった。
https://stackoverflow.com/questions/37088517/remove-sequentially-duplicate-frames-when-using-ffmpeg
で、インターレース解除とかって容量削減が大きな理由だから
容量削減に重きを置いていない場合、やらなくていいじゃね?と思っていたら
>>485 みたいな書き込みがあって安心した。
試しに、4100MBのm2tsファイルをエンコしてみたら、
・-c:v libx264 -crf 20 -preset:v medium -c:a copy -bsf:a aac_adtstoasc
→1600MB
・-vf bwdif=0:-1:1,decimate -c:v libx264 -crf 20 -preset:v medium -c:a copy -bsf:a aac_adtstoasc
→1200MB
っていう25%の差だったけど、400MBくらいならまぁいいかという感じになった。
インターレース解除、重複フレーム削除、逆テレシネしない場合
容量が大きくなる以外にデメリットってありますか?
こだわり始めると難しいんだな。
こういうの↓とかも面白かった。
https://stackoverflow.com/questions/37088517/remove-sequentially-duplicate-frames-when-using-ffmpeg
で、インターレース解除とかって容量削減が大きな理由だから
容量削減に重きを置いていない場合、やらなくていいじゃね?と思っていたら
>>485 みたいな書き込みがあって安心した。
試しに、4100MBのm2tsファイルをエンコしてみたら、
・-c:v libx264 -crf 20 -preset:v medium -c:a copy -bsf:a aac_adtstoasc
→1600MB
・-vf bwdif=0:-1:1,decimate -c:v libx264 -crf 20 -preset:v medium -c:a copy -bsf:a aac_adtstoasc
→1200MB
っていう25%の差だったけど、400MBくらいならまぁいいかという感じになった。
インターレース解除、重複フレーム削除、逆テレシネしない場合
容量が大きくなる以外にデメリットってありますか?
2020/06/05(金) 10:03:28.31ID:XFbcJCus0
縦方向のリサイズができない
フィルタもインターレースに対応してないと悪影響がでることがある
ちゃんとインターレースフラグ立てないと再生時に解除されない
hevcなど、x264以外のコーデックはインターレースには対応してない
なのですべての問題を回避できるbob化(縞なし60fps化)を愛好する人も一定数いる
*x264でやるにしても、ちゃんとインターレースのフラグを立てるというのが大前提
フィルタもインターレースに対応してないと悪影響がでることがある
ちゃんとインターレースフラグ立てないと再生時に解除されない
hevcなど、x264以外のコーデックはインターレースには対応してない
なのですべての問題を回避できるbob化(縞なし60fps化)を愛好する人も一定数いる
*x264でやるにしても、ちゃんとインターレースのフラグを立てるというのが大前提
2020/06/05(金) 10:54:47.32ID:+5TGGNS30
>>764
> hevcなど、x264以外のコーデックはインターレースには対応してない
ベタなツッコミだけど、x264はコーデックじゃなくエンコーダな。コーデックとして言うならH.264/AVC。
あとH.265/HEVCは仕様としては一応インターレースにも対応してるし、エンコーダのx265もインターレースに対応してるけど、
インターレースエンコードしたものをちゃんと再生できるデコーダが出回っていないというのが現状。
> hevcなど、x264以外のコーデックはインターレースには対応してない
ベタなツッコミだけど、x264はコーデックじゃなくエンコーダな。コーデックとして言うならH.264/AVC。
あとH.265/HEVCは仕様としては一応インターレースにも対応してるし、エンコーダのx265もインターレースに対応してるけど、
インターレースエンコードしたものをちゃんと再生できるデコーダが出回っていないというのが現状。
2020/06/05(金) 11:51:24.07ID:HXUWVyIW0
>インターレース解除、重複フレーム削除、逆テレシネなどを調べてる
テレビ録画したTSのエンコードで、こういう処理の失敗って結構あるの?
失敗を見つけるのってひたすら動画見るしか無いから、あとで気づくってのがありそう。
テレビ録画したTSのエンコードで、こういう処理の失敗って結構あるの?
失敗を見つけるのってひたすら動画見るしか無いから、あとで気づくってのがありそう。
2020/06/05(金) 13:07:49.30ID:XFbcJCus0
2020/06/05(金) 14:57:36.68ID:SLNtFjjg0
avisynthでやってた頃はインタレ保持とか結構簡単にできてたような気がするが、
ffmpeg使うようになってからは、めんどくさくてやらなくなっちゃった。
ffmpeg使うようになってからは、めんどくさくてやらなくなっちゃった。
2020/06/05(金) 18:21:09.02ID:HXUWVyIW0
ニコラボさんのインターレース解除の説明を読んでいると
「片フィールド補完」という単語が出てくるのですが、これはどういう意味ですか。
探しても解説が見つかりません。
「片フィールド補完」という単語が出てくるのですが、これはどういう意味ですか。
探しても解説が見つかりません。
2020/06/05(金) 20:05:36.09ID:oE7SoXyh0
通常はトップフィールドとボトムフィールドをあわせて完全なフレームにするが
完全なフレームにするのに片方のフィールドしかない映像に
補完を行いもう片方のフィールドを合わせてフレームにする。
スクロールするテロップなんかで見られる。
完全なフレームにするのに片方のフィールドしかない映像に
補完を行いもう片方のフィールドを合わせてフレームにする。
スクロールするテロップなんかで見られる。
2020/06/05(金) 22:12:14.73ID:XFbcJCus0
>>770
一枚の映像が「フレーム」
1フレーム中の奇数ラインと偶数ラインのことを、それぞれ「フィールド」と言う
それで、インターレース解除のさいに片方のフィールドを参照しないインタレ解除方法を「片フィールド補完」というのが一般的ではある
一枚の映像が「フレーム」
1フレーム中の奇数ラインと偶数ラインのことを、それぞれ「フィールド」と言う
それで、インターレース解除のさいに片方のフィールドを参照しないインタレ解除方法を「片フィールド補完」というのが一般的ではある
773766,770
2020/06/06(土) 00:54:39.41ID:lQMWa1rL0 >>768
ありがとうございます。
エンコ環境がwindowsならAmatsukazeみたいな日本人が開発しているものが使えるのですが
Linuxなのでffmpegかhandbrakeで頑張るしかないです。。。
(AviSynthをLinuxで動かせるかも?)
>>771, >>772
ありがとうございます。
お二方の説明と以下のサイトで理解できました。
http://sasuraiukyo.blog.fc2.com/blog-entry-10.html
最初片方のフィールドしか見ないなんてありえないだろと思ったのですが
走査線間の隙間が小さいから補間してもそれなりに見える画像になるんですね。
なぜ片方だけにしなきゃいけないのかは分かりませんでしたが。
テロップの話はこれですか?
http://sasuraiukyo.blog.fc2.com/blog-entry-10.html
ありがとうございます。
エンコ環境がwindowsならAmatsukazeみたいな日本人が開発しているものが使えるのですが
Linuxなのでffmpegかhandbrakeで頑張るしかないです。。。
(AviSynthをLinuxで動かせるかも?)
>>771, >>772
ありがとうございます。
お二方の説明と以下のサイトで理解できました。
http://sasuraiukyo.blog.fc2.com/blog-entry-10.html
最初片方のフィールドしか見ないなんてありえないだろと思ったのですが
走査線間の隙間が小さいから補間してもそれなりに見える画像になるんですね。
なぜ片方だけにしなきゃいけないのかは分かりませんでしたが。
テロップの話はこれですか?
http://sasuraiukyo.blog.fc2.com/blog-entry-10.html
2020/06/06(土) 09:46:07.91ID:mJVOadiw0
Avisynth+はlinuxに対応したから動くとは思うけど
今のバージョンは互換性に難がでてるからハードルはちょっと高いかも
テレシネ解除の失敗が怖いならbob化(60fps化)が安牌っぽいよ
それか話に出てたインタレ維持か(オプションはよく調べること)
>>773
地デジの60iという放送規格自体が
奇数フィールドとと偶数フィールドで違う(フレームの)映像を送れる仕組みだから
そういうソースの場合はフィールド単位での補完が必要になることがある
(高度なフィルタになるとそのへんのごまかしや補完が上手くなる)
今のバージョンは互換性に難がでてるからハードルはちょっと高いかも
テレシネ解除の失敗が怖いならbob化(60fps化)が安牌っぽいよ
それか話に出てたインタレ維持か(オプションはよく調べること)
>>773
地デジの60iという放送規格自体が
奇数フィールドとと偶数フィールドで違う(フレームの)映像を送れる仕組みだから
そういうソースの場合はフィールド単位での補完が必要になることがある
(高度なフィルタになるとそのへんのごまかしや補完が上手くなる)
2020/06/07(日) 12:30:21.91ID:7Nfqiv1z0
2020/06/11(木) 17:18:48.67ID:/cIcGjlE0
覚え置き:音声の重ね合わせ(2ch → 1ch)3手法
3つともaresampleフィルタで入力を浮動小数点表現にすると同じ出力結果になるけど、規定のままだとamixは整数表現を、自動的にaresampleを挿入して変換する
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp" -sample_fmt <標本化形式> -ac 1 <1ch出力>
┗ -ac 1によって出力をモノラルに指定するので自動でステレオをモノラルにdown mixされる
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp,pan=mono|c0<FR+FL" -sample_fmt <標本化形式> <1ch出力>
┗ panフィルタでモノラルにする
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp,channelsplit=channel_layout=stereo:channels=all,amix=duration=shortest:dropout_transition=0" -ac 1 <1ch出力>
┗ channelsplitで入力1ストリーム2chを2ストリームに分けてamixフィルタで合成。amixは入力の形式を見るっぽいので-sample_fmtを省略してるけど、変更を見越して省略しない方が良いかも
3つともaresampleフィルタで入力を浮動小数点表現にすると同じ出力結果になるけど、規定のままだとamixは整数表現を、自動的にaresampleを挿入して変換する
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp" -sample_fmt <標本化形式> -ac 1 <1ch出力>
┗ -ac 1によって出力をモノラルに指定するので自動でステレオをモノラルにdown mixされる
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp,pan=mono|c0<FR+FL" -sample_fmt <標本化形式> <1ch出力>
┗ panフィルタでモノラルにする
-i <2ch入力> -af "aresample=internal_sample_fmt=fltp,channelsplit=channel_layout=stereo:channels=all,amix=duration=shortest:dropout_transition=0" -ac 1 <1ch出力>
┗ channelsplitで入力1ストリーム2chを2ストリームに分けてamixフィルタで合成。amixは入力の形式を見るっぽいので-sample_fmtを省略してるけど、変更を見越して省略しない方が良いかも
2020/06/12(金) 01:24:41.91ID:dfoNH8zL0
7777777
2020/06/13(土) 03:18:07.37ID:yJv1zpns0
MTRのピンポンやな。
2020/06/14(日) 21:17:41.14ID:83IQvDJ90
無音データのWAV結合で教えてください
ffmpeg -i input.wav -f lavfi -t 5 -i anullsrc -filter_complex "concat=n=2:v=0:a=1" output.wav
こんな感じで既存WAVファイルに無音を結合できるまでは分かったのですが
例えば1分のinput.wavを5分になるように
残りを無音で埋めるような指定はできますか?
ffmpeg -i input.wav -f lavfi -t 5 -i anullsrc -filter_complex "concat=n=2:v=0:a=1" output.wav
こんな感じで既存WAVファイルに無音を結合できるまでは分かったのですが
例えば1分のinput.wavを5分になるように
残りを無音で埋めるような指定はできますか?
2020/06/14(日) 22:24:58.01ID:8nwq8sHe0
2020/06/15(月) 20:12:27.92ID:EQBwt7Pi0
ありがとうございます
コマンドを実行してみましたが
Both whole and pad length are set, this is not possible
私の環境ではエラーが出て使えないみたいです
なにがいけないのか心当たりがあればご教示ください
ffmpeg version 4.2.3
built with gcc 9.3.1
コマンドを実行してみましたが
Both whole and pad length are set, this is not possible
私の環境ではエラーが出て使えないみたいです
なにがいけないのか心当たりがあればご教示ください
ffmpeg version 4.2.3
built with gcc 9.3.1
2020/06/15(月) 20:26:32.22ID:EQBwt7Pi0
5:00 ではなく 300 と指定すると上手く行きました
なぜ 5:00 が認識しないのかはわかりません
00:05:00 でも 00:05:00.00 でもダメでした
-i <input> -af apad=whole_dur=300 <output>
なぜ 5:00 が認識しないのかはわかりません
00:05:00 でも 00:05:00.00 でもダメでした
-i <input> -af apad=whole_dur=300 <output>
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★6 [樽悶★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★7 [樽悶★]
- 【速報】公然わいせつの疑いで逮捕・送検・略式起訴のAぇ! group 草間リチャード敬太メンバー 脱退を発表 「心の病の療養」に専念 [Ailuropoda melanoleuca★]
- 小野田紀美 経済安保相「悪いことをする外国人、日本にいない状況つくる」 [Hitzeschleier★]
- 中国国際航空が日本便を減便へ、春節休みも SNSでは投稿相次ぐ [七波羅探題★]
- 【🐼🇨🇳】「高市総理VS中国」で日本からパンダはゼロに? 上野動物園「パンダ返還期限」まであと4カ月…★2 [BFU★]
- 【実況】博衣こよりのえちえち声遊楽プロジェクト 共同研究第三弾🧪
- 恐ろしい😈のちゅちょちゅちょ・ちぇびるのお🏡
- 高市早苗が恐ろしいのは「起こらなくて良かったはずの事態を引き起こしてる」ってところだよな? [592058334]
- 【悲報】立憲岡田「間違った答弁をした高市総理に問題がある」→愛国者ブチギレ炎上 [834922174]
- 【高市悲報】中国の日本料理店「いつもは満席ですがガラガラです。あとどれだけ待てばいいのかな…😢」 [931948549]
- 珍🏡珍
