X

ffmpegならこちらへ 4

レス数が1000を超えています。これ以上書き込みはできません。
2020/05/17(日) 16:14:46.48ID:6pouxY/V0
>>750
>>733 も同じビルドからおかしくなってる。
ファイルパス絡みのオプションのパースがおかしくなってるのかな。
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
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.
2020/05/26(火) 11:31:07.92ID:kFexKKRq0
「FFmpeg」に致命的な脆弱性 〜修正版の「FFmpeg 4.2.3」が公開 - 窓の杜
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)
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
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
みたいのをイメージしています。
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
2020/06/04(木) 09:07:54.55ID:VbsWF3MI0
>>760
プログラムから制御するので
コマンドラインを使いたいです

>>761
ありがとうございます
画像系の拡張子なら
フォーマット変換なしで
バイナリ取り出せますね

「乱暴な」という意味分かりましたw
拡張子はフォーマット指定ではなく
単に画像出力指定の意味なんですね
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くらいならまぁいいかという感じになった。

インターレース解除、重複フレーム削除、逆テレシネしない場合
容量が大きくなる以外にデメリットってありますか?
2020/06/05(金) 10:03:28.31ID:XFbcJCus0
縦方向のリサイズができない
フィルタもインターレースに対応してないと悪影響がでることがある
ちゃんとインターレースフラグ立てないと再生時に解除されない
hevcなど、x264以外のコーデックはインターレースには対応してない

なのですべての問題を回避できるbob化(縞なし60fps化)を愛好する人も一定数いる

*x264でやるにしても、ちゃんとインターレースのフラグを立てるというのが大前提
2020/06/05(金) 10:54:47.32ID:+5TGGNS30
>>764
> hevcなど、x264以外のコーデックはインターレースには対応してない

ベタなツッコミだけど、x264はコーデックじゃなくエンコーダな。コーデックとして言うならH.264/AVC。

あとH.265/HEVCは仕様としては一応インターレースにも対応してるし、エンコーダのx265もインターレースに対応してるけど、
インターレースエンコードしたものをちゃんと再生できるデコーダが出回っていないというのが現状。
2020/06/05(金) 11:51:24.07ID:HXUWVyIW0
>インターレース解除、重複フレーム削除、逆テレシネなどを調べてる

テレビ録画したTSのエンコードで、こういう処理の失敗って結構あるの?
失敗を見つけるのってひたすら動画見るしか無いから、あとで気づくってのがありそう。
2020/06/05(金) 13:06:33.14ID:u6zccjlm0
>>765
コーデックはエンコーダーとデコーダー
x264はエンコーダーだからコーデック
H.264は規格だからコーデックではない
2020/06/05(金) 13:07:49.30ID:XFbcJCus0
>>766
テレシネ解除は、海外製のプラグインや手法は字幕の存在を想定してないから失敗しやすい
自分はffmpegでそういう処理はしないからffmpegの性能は把握してないけど
ffmpegも海外発だから期待はできなさそう

インタレ解除はyadifとか古いものを使わなければ
目立った劣化なく解除できる

>>765
最初はh.264って書いてたけど、x264の仕様しか把握してないから書き換えたのだ
2020/06/05(金) 14:57:36.68ID:SLNtFjjg0
avisynthでやってた頃はインタレ保持とか結構簡単にできてたような気がするが、
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フレーム中の奇数ラインと偶数ラインのことを、それぞれ「フィールド」と言う
それで、インターレース解除のさいに片方のフィールドを参照しないインタレ解除方法を「片フィールド補完」というのが一般的ではある
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
2020/06/06(土) 09:46:07.91ID:mJVOadiw0
Avisynth+はlinuxに対応したから動くとは思うけど
今のバージョンは互換性に難がでてるからハードルはちょっと高いかも
テレシネ解除の失敗が怖いならbob化(60fps化)が安牌っぽいよ
それか話に出てたインタレ維持か(オプションはよく調べること)

>>773
地デジの60iという放送規格自体が
奇数フィールドとと偶数フィールドで違う(フレームの)映像を送れる仕組みだから
そういうソースの場合はフィールド単位での補完が必要になることがある
(高度なフィルタになるとそのへんのごまかしや補完が上手くなる)
2020/06/07(日) 12:30:21.91ID:7Nfqiv1z0
>>759,762
丁寧な書き方
-an -i input -codec:v copy output
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を省略してるけど、変更を見越して省略しない方が良いかも
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分になるように
残りを無音で埋めるような指定はできますか?
2020/06/14(日) 22:24:58.01ID:8nwq8sHe0
>>779
そんな小難しい事やらなくても専用のフィルタあるよ
-i <input> -af apad=whole_dur=5:00 <output>
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
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>
2020/06/15(月) 21:11:11.12ID:hK9euIXv0
>>782
あー'5:00'って書かないとだね
5の後のコロンが引数の区切りに判定されて、whole〜に5、pad〜に0が指定された感じ
2020/06/15(月) 21:21:04.32ID:EQBwt7Pi0
ありがとうございます
シングルクォートを入れてもダメでした
その後色々と試してみて下記で上手くいきました
-i <input> -af apad=whole_dur=5\\:00 <output>

コロンの前にバックスラッシュを二つ入れてエスケープさせました
色々とヒントをいただきありがとうございます
2020/06/15(月) 22:05:25.87ID:hK9euIXv0
あららおめでとう
役に立たなかったか……エスケープ周りは環境にかなり依るから難しいね
2020/06/15(月) 22:43:21.61ID:EQBwt7Pi0
役に立たないなんて滅相もないです
環境を書かなかった私に非があります(Windows)
ここで訊かなければたどり着かなかったと思うので
本当にありがとうございます
2020/06/16(火) 01:27:31.52ID:1H0Ujvhz0
>>784
ffmpegからみると、durationは区切り文字なしかシングルクォートで囲う必要があるんだけど、
Windowsのコンソール上ではシングルクォートは完全無視されてしまうので、
結局コレ自体をエスケープするしか無いんだよね。

ffmpeg -i input.wav -af apad=whole_dur=\'5:00\' output.wav
ffmpeg -i input.wav -af apad=whole_dur=5\\:00 output.wav

一応、どちらもおなじパース結果になってるのは確認した
[Parsed_apad_0 @ 000001c34fa39f40] Setting 'whole_dur' to value '5:00'
2020/06/19(金) 21:35:21.36ID:wjif/wbO0
ffmpegがVulkan APIに対応したらしいけど
このスレ的にはなんか御利益あるの?
2020/06/19(金) 21:56:33.00ID:BJP5kTAQ0
linux使ってる人にはHWで使える選択肢が増えたらしい
2020/06/20(土) 00:18:46.06ID:oFBCQp8H0
AMD AMFがLinuxで使えるな
あとはvulkanでのスケーリングもある
2020/06/20(土) 00:21:48.23ID:bHRBXN9z0
>>790
使える?>スケーリング(リサイズ)
2020/06/20(土) 18:14:03.28ID:T2VIowv60
ffmpeg + nvenc で品質の指定方法(crfの代替)を調べていて、
大別すると以下の3タイプがありました。
AとCが多い感じがしますが、どれが良いのでしょうか?

(A)-rc constqpタイプ
@-rc constqp + 「-qp」
 A-rc constqp + 「-qmin -qmax」
 B-rc constqp + 「-cq」

(B)-rc vbr_hq (vbrも) タイプ
 C-rc vbr_hq + 「-b:v -maxrate:v (-bufsize:v) (-qmin -qmax)」
 D-rc vbr_hq + 「-cq -qmin -qmax -b:v 0」

(C)-cq タイプ
 E-cq のみ
2020/06/23(火) 02:28:39.11ID:IvqQxY3a0
>>792
個人的見解だけどqpの方々はアニメに寄ってるように思う。
2020/06/26(金) 12:39:24.47ID:FEeAf8v10
ゲーム録画したVFRをCFR変換(ともにnvenc,264,lossless,444)するときに60000/1001じゃなくて59.94って指定したら59940/1000になった上に、1クリップだけ再変換しようとしたら一部のフレームがエラーで読み込めなくなってて?変換失敗するようになってしまった

読み込みエラーの方は色々試したけど直せず、諦めて再録画したから過ぎたことではあるけど
MPCとかVLCとかのメディアプレーヤーでは異常なく再生できたからエラーフレームだけスキップしてエンコードできればいいと思うんだけど、そんなコマンドか方法あるか、どなたかご存知ですか


エラーの記録は残ってなくてアバウトですみません
2020/06/26(金) 19:55:43.80ID:Giy0G+ib0
馬鹿にはvfrは無理
バカ用のaviutlとlsmashでも使っとけ
2020/06/27(土) 09:19:21.99ID:+jaggmdS0
いや、VFR→CFR変換自体はできたんだよ
1クリップだけ壊れてたの
他のクリップは壊れてなくて59940/1000から60000/1001に戻せた
ちなみにaviutl-lsmashで読み込めたからデリバーもしてみたけど無理だっ他のNLEでは/1000にしちゃったせいで読み込めなかったし
2020/06/27(土) 10:10:58.27ID:bxqb0uu60
> 1クリップだけ再変換しようとした
・「クリップ」という単位を具体的に

> 一部のフレームがエラーで読み込めなくなってて?
・疑問を呈されてもここの誰にも分からない

> MPCとかVLCとかのメディアプレーヤーでは異常なく再生できた
・異常が無かったという根拠は

> エラーフレームだけスキップしてエンコードできればいいと思う
・なぜ「フレーム単位」だと思うのか
・エラーが起こる箇所が把握できているならその前後の時間で切り出しすれば良いだけでは
2020/06/27(土) 11:34:02.59ID:4gzwt/Jq0
>>797
言葉足らずですみません

・「クリップ」という単位を具体的に

時間を分けてキャプチャした複数の動画ファイルをエンコードしたということです
そのうち1個だけエラーになってffmpegでも他のエンコーダNLEで再エンコードできなくなってしまいました

・疑問を呈されてもここの誰にも分からない

そこは承知していますので、答えを頂けないのは当然でダメ元で最後のスキップだけでもヒントがあればと思って聞いてみました

・異常が無かったという根拠は
正確には最後まで再生可能で視覚的に認識できる異常はなかったということです

・なぜ「フレーム単位」だと思うのか
特定のエンコード時間/フレームあたりで何度かInvalid NAL unit sizeというエラーが出たのでフレームかGOP単位かなと
詳しくないので全然違うかもしれませんが

・エラーが起こる箇所が把握できているならその前後の時間で切り出しすれば良いだけでは
それは検討してみましたが、あくまでエンコード中のエラー出たときの時間を目視しただけなのでフレーム単位では把握してないので、アバウトに切り出すとカット部分が視覚的に認識できるレベルになってしまうかなと思い、自動でエラー箇所のみカットできる機能があればなぁ、と。
2020/06/27(土) 11:34:33.59ID:4gzwt/Jq0
>>798
○他のエンコーダやNLEでも
2020/06/28(日) 01:57:58.71ID:k12uv22y0
800
2020/06/28(日) 02:26:18.22ID:gfS2e6EN0
>>794
60000/1001を指定したらいいんじゃないの?
それともフレームレートはそれでうまくいったけど1つだけ"Invalid NAL unit size"が出て変換失敗するクリップがあって困ってるってこと?
2020/06/28(日) 10:20:42.37ID:n/wM5H3B0
>>801
そのとおりです
他は60000/1001に指定し直して変換できました
1個だけエラーが出ます
2020/06/29(月) 06:00:07.94ID:elEEwsC20
GOPの仕組み理解してるなら「フレーム単位で切り出そう」とか「エラーフレームだけ自動でスキップ」とか普通は考えないでしょ
2020/06/29(月) 09:10:18.40ID:fGn/XM0m0
フレーム単位というか、正確にはGOP単位ですかね
すみません
2020/06/29(月) 21:24:52.87ID:Iw5RDQFE0
エラーあれば飛ばす……とかそれこそffmpeg単体じゃなくffmpegのAPI使って外部プログラムで制御するものだと思うけどなぁ
2020/06/29(月) 23:01:45.77ID:PNIbrnA30
-fflags +discardcorrupt
のことかな
https://ffmpeg.org/ffmpeg-formats.html#Format-Options
807名無しさん@お腹いっぱい。
垢版 |
2020/06/30(火) 13:31:46.32ID:5gSeSplB0
>>794
>59.94って指定したら59940/1000になった上に
そら、そうなるわ
初めからやり直したほうがいい
2020/06/30(火) 17:39:30.96ID:9nGQcFeN0
>>806
多分そんな感じのです!
今度起きたらやってみます、ありがとうございます

>>807
結局撮り直しました
NLEだと設定で59.94選ぶだけで理由までわかってなかったんで、一つ賢くなりました

みなさん、ありがとうございました
2020/06/30(火) 18:43:51.90ID:8OHHAFLK0
ゲームガイジが去ったか
みなご苦労
2020/06/30(火) 19:20:43.32ID:Q5hwQduM0
別のがまだ残ってるな
2020/06/30(火) 22:34:03.49ID:GcJpEbP30
ん、もしかして似非の分数フレームレートに間違えて変換したものを真の分数フレームレートに再変換しようとしてたのか
余計に歪になるだろうに再変換する理由が分からないけど解決したらしいし良いのか
2020/07/01(水) 16:13:42.08ID:fJSebLhl0
PC環境変えたせいかどうかは知らんが、Win10 x64 2004でmedia-autobuild_suite使うと以下のエラー(一部修正あり)でビルドできないんだけど・・・
バグ?

Likely error (tail of the failed operation logfile):
| SRTO_SENDER
src/libavformat/libsrt.c: In function 'libsrt_setup':
src/libavformat/libsrt.c:409:5: warning: 'srt_socket' is deprecated [-Wdeprecated-declarations]
409 | fd = srt_socket(cur_ai->ai_family, cur_ai->ai_socktype, 0);
| ^~
In file included from src/libavformat/libsrt.c:24:
"srt.h":735:41: note: declared here
735 | SRT_ATR_DEPRECATED_PX SRT_API SRTSOCKET srt_socket(int, int, int) SRT_ATR_DEPRECATED;
| ^~~~~~~~~~
make: *** [/build/ffmpeg-git/ffbuild/common.mak:59: libavformat/libsrt.o] Error 1
make failed. Check "ab-suite.make.log"
This is required for other packages, so this script will exit.
16:07:02 Creating diagnostics file...

Attach "logs.zip" to the GitHub issue.
Make sure the suite is up-to-date before reporting an issue. It might've been fixed already.
Try running the build again at a later time.
2020/07/01(水) 16:41:05.52ID:fJSebLhl0
そういえばこんなメッセージが出てたな
mkdir: cannot change permissions of '/dev/shm': Permission denied
mkdir: cannot change permissions of '/dev/mqueue': Permission denied
2020/07/01(水) 19:47:36.94ID:y0ro8GMj0
tracに報告が上がってる
https://trac.ffmpeg.org/ticket/8760
https://github.com/m-ab-s/media-autobuild_suite/issues/1725
https://github.com/Haivision/srt/issues/1382
815名無しさん@お腹いっぱい。
垢版 |
2020/07/04(土) 16:36:16.66ID:this51Mw0
コア数10のCPUを使っているのですが
エンコード中に全スレッドを使用してはいるのですが
CPU使用率が65%くらいになってしまいます。
100%使用したいのですが
どのようにすれば良いですか?
2020/07/04(土) 16:40:39.56ID:nIJNKBme0
来世に期待
2020/07/04(土) 19:11:13.96ID:0ANLy8wN0
デコード、エンコード、フィルタのどれかが
ボトルネックになっている可能性があるのでコマンドを書いてくれれば
818名無しさん@お腹いっぱい。
垢版 |
2020/07/06(月) 01:29:26.90ID:jA46r/RV0
media-autobuild_suite
未だに>>812のエラーが直ってないんだけど・・・
2020/07/06(月) 03:08:25.26ID:W0nv545K0
ここに報告すれば直るとでも思ってるのか?
2020/07/06(月) 08:02:52.03ID:C68/7q6X0
いくら要るんだ?
2020/07/06(月) 16:29:48.05ID:YAxkMqsH0
いくらよりオクラのが好きです
822名無しさん@お腹いっぱい。
垢版 |
2020/07/07(火) 22:04:53.40ID:Q8huhYjd0
ffmpegって複数起動して同時にエンコードして問題ありませんか?
見たところ、問題なさそうなのですが、
たまにファイルがバグったりしませんか?
2020/07/07(火) 22:09:27.98ID:KNbfqKim0
お前が言ってるのは、
メモ帳を2つ起動して2つのファイルを編集して問題ありませんか?
っていうレベルでくだらない。
エンコードの前にプロセスやファイルについて調べてから出直せ
824名無しさん@お腹いっぱい。
垢版 |
2020/07/07(火) 22:12:02.83ID:Q8huhYjd0
メモ帳などGUIソフトですが
ffmpegはCUIソフトなので
同時起動を想定して作られていないのではないかと思いました
2020/07/07(火) 22:19:06.46ID:wp/aeHA80
GUIもCUIも関係ないよ
2020/07/07(火) 22:24:35.73ID:Qh1mTp5C0
問題ないよ
827名無しさん@お腹いっぱい。
垢版 |
2020/07/07(火) 22:34:14.76ID:Q8huhYjd0
まじすかああああ
信じていいんですかああああ?
引っかけとかじゃないですよねええ
2020/07/07(火) 22:35:45.84ID:Sicj1tEn0
>>823
そんな意地悪な言い方しなくてもよくない?
2020/07/07(火) 22:44:42.64ID:LcKLhtXN0
>>822
作成されるファイル名次第かな
830名無しさん@お腹いっぱい。
垢版 |
2020/07/07(火) 22:48:17.09ID:Q8huhYjd0
特に数に制限もありませんか?
10個でも100個でも複数立ち上げても問題ありませんか?
2020/07/07(火) 22:52:58.63ID:LjxZ6/520
信じられないなら適当に数分の動画複数同時にエンコードしてみりゃいいじゃん
百聞は一見になんちゃらって言うだろ
2020/07/07(火) 23:15:08.15ID:LcKLhtXN0
>>830
メモリとかリソース次第かな、winならsharedSectionとか
833名無しさん@お腹いっぱい。
垢版 |
2020/07/07(火) 23:24:52.88ID:Q8huhYjd0
sharedSectionって何ですか?
 
2020/07/07(火) 23:35:01.52ID:wp/aeHA80
一般のPCで気にする必要のないものだよ
「ありがとう」と一言言って自分で実験するよろし
2020/07/08(水) 01:01:18.47ID:95Dn7/L80
vid.stabの公式ビデオって盛りすぎじゃない?
こんなにうまく作れないや
https://youtu.be/HYE3KAl8RAQ

それとも補正したいのは車の振れだから、細かな振動は検知しきれないのだろうか
2020/07/08(水) 13:36:04.17ID:sPjhTk8n0
>>828
何がどう「意地悪」なんだ?
「プロセスやファイルについて調べろ」と答えは書いてるだろ
ffmpeg以前の問題なんだよこんなこと
2020/07/08(水) 13:55:30.51ID:ZJhqS45Q0
電算機は層が多階層すぎて全ての知識持ってる事までは不要だけど
1つ下の層の知識は無いと話にならないよね
2020/07/08(水) 14:20:01.21ID:fm79ErM30
>>836
「意地悪」で通じなければ「高圧的」と言い換える
2020/07/08(水) 14:27:13.14ID:sPjhTk8n0
どこの誰か分かりもしないやつが書いてる「ただの文章」から勝手に「態度」を読み取ったつもりで文句つけてるのかw
やはりくだらんな
掲示場見るのやめろw
2020/07/08(水) 14:55:15.80ID:N0cOqy8E0
ヒントもらって偉そうに言うな
少しは調べろ
2020/07/08(水) 15:33:07.47ID:yNr26WwS0
コマンドラインで音声ファイルを変換(例えばwav→ogg)すると
先頭に無音で0.1秒くらい挿入されてしまうのですが、
オプションで挿入されないようにすることは可能ですか?
2020/07/08(水) 15:48:09.14ID:u+0gaQmn0
ほおー ffmpegのgitもコレに対応すんのかな
ストリーミングの転送量を半減する新エンコード「H.266/VVC」発表 - Engadget 日本版 https://japanese.engadget.com/h266-vvc-fraunhofer-215010995.html
2020/07/08(水) 17:13:31.61ID:ZJhqS45Q0
来てもまだ保管用に使う段階だな
標準で対応してる再生機器無いから
844名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 17:36:20.65ID:kw2j9lWV0
https://gigazine.net/news/20200416-wd-red-hdd-smr/
845名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 19:34:00.02ID:AzpV7qyU0
FFmpegでエンコードがどこまで進んだか
コマンドプロンプト画面上に表示する方法ってありますか?
2020/07/08(水) 20:12:16.69ID:BwUSrHEx0
デフォルトで出てなかったっけ
847名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 20:14:49.25ID:AzpV7qyU0
>>846
動画時間は表示されるのですが、
トータルの動画時間をいちいち調べないといけないので
不便です。
2020/07/08(水) 20:31:07.55ID:FTRC+udn0
つまり何がほしいの
849名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 20:39:39.60ID:AzpV7qyU0
何パーセントまで終了したか知りたいのですが
欲を言えばメーターを表示するとか、
数値でも良いのでパーセント表示できませんか?
2020/07/08(水) 21:05:37.38ID:ZJhqS45Q0
>>849
https://webnetforce.net/progress-of-ffmpeg/
2020/07/08(水) 21:12:24.48ID:BwUSrHEx0
大変すぎ
852名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 21:51:26.95ID:AzpV7qyU0
ちょっと私には敷居が高すぎます
もっと簡単な方法がありましたらお教えくださいませ
2020/07/08(水) 22:12:47.57ID:sPjhTk8n0
ここまでカッチリとコードがあるのにこれ以上簡単とかどんだけだよ
もう進捗がGUIで表示されるソフト使えよw
2020/07/08(水) 22:25:47.44ID:BwUSrHEx0
知りたいのはパーセンテージでもなくて、ETAなんだよな
現在のtimeもトータルの長さも判ってて、あとは簡単な四則演算だけなのに、
何故一番知りたい部分を書かない
855名無しさん@お腹いっぱい。
垢版 |
2020/07/08(水) 22:32:01.64ID:AzpV7qyU0
VB.NETなら使い方を知っているのですが
エンコード中にFFmpegから、進捗に関する情報を取得するにはどうすれば良いですか?
2020/07/09(木) 00:19:11.97ID:UL/sc7i90
標準出力あたりに出てくるんじゃ
2020/07/09(木) 00:26:12.58ID:uvtzAyTH0
シェルスクリプトくらい読みなよ……
2020/07/09(木) 07:20:02.12ID:Pd5+XJsW0
Linux標準だから使われてるけど、速度出ない割に扱いにくいから無理ない部分もあるかもね
せめて実行ファイルの呼び出され方と標準出入力の理解は欲しい
2020/07/09(木) 08:47:42.67ID:DeHSL7E90
動画の時間わかっててリアルタイムにどこをエンコードしてるのが表示されてるんだから
見たまんまでわかれって話だよな
2020/07/09(木) 09:33:26.72ID:Pd5+XJsW0
まぁでも
demux → (seek →) decode (→ seek) → filter → encode → decode → demux
ってあって、表示される時間ってencodeの部分でしょ
予想は厳しいし表示される時間から実際の全体の時間を計ることもできなそう
2020/07/09(木) 10:32:30.03ID:r06qXH/T0
これまでの平均のエンコード速度、みたいなのは持ってないんだよな
最初予測が荒くて、だんだん正確になっていく、みたいなことが期待できない

そこから計算するんじゃなくて、開始時刻と現在時刻と、現在地点と全体の長さだけから
計算してしまえば、簡単に正確に計算できる筈だけど、
エンコーダーは知らない情報なので出力されない
一段上の奴なら知ってるけど、そんな機能は無い
2020/07/09(木) 10:50:27.93ID:81i3pLbk0
やりたいことは人それぞれだし
数こなして自分でノウハウを貯めるしかないんじゃないの?
2020/07/09(木) 12:30:27.56ID:rUG0Qktd0
>>835
その動画はdeshakeも併用してるよ
stabだけだと絶対に無理なのさ
2020/07/11(土) 20:38:07.16ID:1Gt3CyBH0
なんかRTXなのにcudaが効かないと思ってググったらnvdecってh264の444はサポートしてないのね
nvencは対応してるのになんでや
まぁデコードはCPUでもそこまで重くないからなんとかなるとはいえ
2020/07/18(土) 15:15:13.57ID:L8pmTivA0
mpeg-dashの映像とaac音声の無劣化マージいけたっけ?
2020/07/18(土) 15:22:14.81ID:G71RLvl10
いけたっけの前にできない理由がわからない
2020/07/18(土) 16:09:52.34ID:xYEpPon50
何らかのコンテナが対応してない可能性を考えたんじゃ
どうしてそうなるかは分からないけど
868名無しさん@お腹いっぱい。
垢版 |
2020/07/18(土) 19:01:14.28ID:DlfL7cYS0
ffmpegだけで逆位相ってできる?
通常の曲にカラオケ版の曲の逆位相を当ててボーカルの声だけ抽出したい
2020/07/18(土) 19:10:05.21ID:xYEpPon50
af "aeval=-val(ch)"
けサンプルの時間的な狂いなく合わせるのきつくて成功しないと思うね
2020/07/18(土) 20:01:17.77ID:gzxKUrGK0
AIでもまだ無理な分野だな
871名無しさん@お腹いっぱい。
垢版 |
2020/07/18(土) 20:10:37.82ID:DlfL7cYS0
早速ありがとう
完全でなくてもある程度抽出できれば大丈夫

それで

ffmpeg -i "対象ファイルのパス" -af "aeval=-val(ch)" "任意のファイル名.mp3"

とかでやってみたけどやり方が悪いのか元々ステレオだったのがモノラルになって出力しまう
できればステレオでやりたいんだけどどこを直せばいい?
2020/07/18(土) 20:20:29.56ID:G71RLvl10
そう言う目的なら波形編集ソフトがいいのかなあ
2020/07/18(土) 20:22:29.80ID:xYEpPon50
>>871
aeval=expr=-val(ch):channel_layout=same でやってみて

aevalは既定で、expr引数の縦棒「|」で区切ってサンプル毎に指定した式の数が出力チャンネル数になっちゃう
channel_layout引数に'same'を指定するとフィルタの入力と同じチャンネルになる
2020/07/18(土) 20:26:05.04ID:xYEpPon50
抽出(or 背景除去)は機械学習とかでそれなりにできるようにはなってるけど
学習からの予想でできたものって素材本来の味じゃないからなぁ
2020/07/18(土) 20:38:45.69ID:gzxKUrGK0
普通に画像を認識するのと同じように、時間とスペクトルの二次元データがあれば、
機械学習できる筈

問題は、スペクトルに変換するのに時間がかかりすぎること
生物は蝸牛管と脳で超並列で分析してるから簡単にやれてる
2020/07/18(土) 20:51:44.48ID:xYEpPon50
>>875
もちろん伴奏か歌唱の単体の素材もあったら今でもかなりの精度でできそう
けど素材がmix後のしか無い場合、本来の素材からは少なからずぼやけるはず
2020/07/18(土) 20:54:38.66ID:gzxKUrGK0
ぼやけるなら、変換の精度が低いんだろう
AIの出力って要は、脳内で鳴らした音を録音するようなものだから
878名無しさん@お腹いっぱい。
垢版 |
2020/07/18(土) 21:15:00.54ID:DlfL7cYS0
>>873
おお!
目的のものができた
丁寧にありがとう
2020/07/18(土) 21:15:44.13ID:xYEpPon50
精度はどこまで行っても"推測"の域を出られないからね

元の2つの波形から重ね合わせた波形は一意に決まるけど、逆に重ね合わせた波形から元の波形はほぼ無限に有り得ちゃう
学習による傾向から範囲を限定してもはっきりしたのにはできない
2020/07/18(土) 21:22:37.73ID:xYEpPon50
>>878
どうもー
タイミング調整で詰んだけど、前に位相反転でキャンセリング調整したことあったからね
素材の品位に差が無かったら上手くいったのかも知れないけど
2020/07/19(日) 09:15:04.76ID:sdyIHVp+0
hevc_nvecのb_ref_modeをeachに指定すると
Each B frame as reference is not supported
ってメッセージが出て出力できないんだけど、eachって使えないのかな
NVEncCだと--bref-mode eachが使えるから、hevc_nvecでも使えておかしくないと思うんだけど
なにか他に指定しなきゃいけないオプションでもあります?

投げたコマンドは↓で、FFMpegのバージョンは4.3
FFMPEG -y -i input.mp4 -c:v hevc_nvenc -bf 3 -b_ref_mode each -an output.mp4
2020/07/19(日) 16:49:37.72ID:rq6kjMIQ0
Zeranoe版のサイト、ずいぶん様変わりしたんだな。
2020/07/19(日) 17:41:24.03ID:rq6kjMIQ0
>>881
GPUとドライババージョンは?
2020/07/19(日) 17:45:07.44ID:rq6kjMIQ0
>>881
あと -b_ref_mode middle だとどうなる?
2020/07/19(日) 19:34:15.12ID:rq6kjMIQ0
>>881
一応調べたとこまで。

●3月時点: RTX 2080 SUPER + Game Ready Driver 442.59でも、HEVCで b_ref_mode each がサポートされてないって言われる
https://forums.developer.nvidia.com/t/details-about-nvenc-in-turing/64148/102

●ffmpegの該当エラー処理部
https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/nvenc.c#L425

 → NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODE を調べて、GPUでEACHがサポートされているかを調べている。
   ここで 「EACHはサポートしとらんで」 という結果が返っているためエラーとなっている。
   (-b_ref_mode middle が通るなら、「MIDDLEのみサポートしとるで」 という結果が返っているのだと思う)

 →参考:NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODEの定義
   https://github.com/FFmpeg/nv-codec-headers/blob/master/include/ffnvcodec/nvEncodeAPI.h#L1089

●rigaya氏のNVEncCの場合
https://github.com/rigaya/NVEnc/blob/master/NVEncCore/NVEncCore.cpp#L1567

 →NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODEは調べているが、DISABLEDかどうかを見ているだけ。
   「EACHをサポートしているかどうか」はチェックしていない。

ということで、どうも each については、そもそも現時点で本当に使えるのかどうかよくわからんことになってる。
NVEncCで使えてるように見えても、実はちゃんと使われていない可能性もあるかも?

NVEncC.exe --check-features だと、B ref mode のサポート状況はyes/no表示になってるから、
yesだとしても、eachをサポートしてるのか、middleだけなのかはわからないんだよね。

とりあえず上で聞いた質問の答えを返してもらえるとありがたい。
2020/07/19(日) 20:35:00.25ID:sdyIHVp+0
1660superで、ドライバは446.14(リリース日:2020.5.27)
middleだと普通に行ける
ネット漁って使用例見てもみんなmiddleかdisableなんだよね
その可能性は考えたけど、やっぱNVEncCでもちゃんと使えてるかは不明か〜
2020/07/19(日) 22:50:44.40ID:rq6kjMIQ0
>>886
とりあえずrigaya氏のNVEnc5.11の記事にコメントしといた。

あと、NVEncC.exeで
 --bref-mode each
 --bref-mode middle
 --bref-mode disabled
をやってみて、結果に違いが出るのかどうかを確認してみてもらえるとありがたいかな。
eachでmiddleやdisableと異なる結果が出るなら、とりあえずeachでなにかやってるってことになるだろうし。
2020/07/20(月) 00:44:39.43ID:5oMYCxdy0
middleとeachで結果変わった…
rigaya氏のNVEncだと有効なのかな、それも不思議な話だ

◆投げたコマンド
NVEncC --avhw -i INPUT -c hevc -u quality --vbrhq 0 --vbr-quality 18 -b 3 --bref-mode disable/middle/each -o OUTPUT
2020/07/20(月) 00:59:34.27ID:u+vC8HPJ0
ごめん規制に巻き込まれて結果書き込みづらいが
とにかく若干eachの方が容量増えた
I,P,Bのフレーム数は変わらず
2020/07/20(月) 01:05:25.63ID:sMBTWBL30
>>888
・ffmpegのチェック処理にバグがある
・ドライバのバグで NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODE に戻すべき値を間違っている
 (バグってるのはそこだけで、実パラメータとしてEACHを設定してやればちゃんとEACHとして動く)

といったことが考えられるけど、どうなんだろね。

ffmpegのソースの部分修正と自ビルドができるなら、>>885のエラー処理部のとこで
 ・NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODE の戻り値をログ出力して確認
 ・該当エラー処理をうまいことコメントアウト
してみて、-b_ref_mode each/middle/disabled を比較してみるという手もある。
2020/07/20(月) 03:07:01.44ID:5oMYCxdy0
ごめんその手のスキルは持ち合わせてない

結果のログ載せようとすると弾かれるのか…
何が引っかかるのやら
2020/07/20(月) 06:23:21.56ID:ZdhxNz7z0
>>891
https://hastebin.com/
https://hardbin.com/ipfs/QmWD2J7oRBQaHSa3d4poZAcXcrUxw9LUQ78Ft9n6Gv5ksi/

ログとかはこういうので公開するといい
2020/07/20(月) 06:50:44.74ID:5oMYCxdy0
はえーいろんなサービスがあるもんだねー
貼り付けてみた
https://hardbin.com/ipfs/QmdMVabgY7pwii9v3y3ER33EzD2GdXZiiPb42WvNTYHd3b/#5axpY7gh6yoFbebjd55pYzuj1M6Z7jdpj5Zd2nLjPC9P
といっても分かるのは前述通り各フレームのサイズが微妙に変わったことくらいだけれど
2020/07/21(火) 00:52:07.66ID:UW4DncKk0
>>881の -b_ref_mode each の件、たぶん原因判明。ffmpegのバグ。
詳細はrigaya氏のブログのNVEnc 5.11の記事のコメント欄を参照。

NV_ENC_CAPS_SUPPORT_BFRAME_REF_MODE は each と middle の両方が
サポートされている場合、1(each) と 2(middle) の論理和をとって 3 を返す模様。

>>885にあるように、今のffmpegの処理は「eachをサポートしてるなら1を返すはずや!」という
チェックになっているので、それを修正する必要がある。

・・・報告ってどうやるんだっけな・・・。
2020/07/21(火) 01:16:58.75ID:75/FE8z20
>>894
みんな詳しいな、尊敬するわ
バグ報告はここっぽい
https://trac.ffmpeg.org/query?status=new&;status=open&status=reopened&col=id&col=summary&col=status&col=type&col=component&col=version&col=time&col=changetime&order=priority&report=1
2020/07/21(火) 01:36:43.18ID:V6VjZJnu0
I find bag.
This is middle and each bag.
1 + 2 is 3.
It is bag, all right?
You fix please.
2020/07/21(火) 02:00:21.01ID:oYJjamTG0
私はカバンを見つけました
2020/07/21(火) 02:20:57.74ID:UW4DncKk0
>>895
サンキュー。とりあえずチケット登録しといた。
コード修正は誰かにまかせるぜスタイルなので、フォローできる人はよろしく頼む。

  #8809 (hevc_nvenc / b_ref_mode each is not working) ? FFmpeg
  https://trac.ffmpeg.org/ticket/8809

早く直してもらえるといいな。まあ俺Turing持ってないんだけど・・・w
2020/07/21(火) 09:15:14.38ID:yhRpHULW0
bref-modeって何するもん?
2020/07/21(火) 14:03:26.48ID:xY8VAVEM0
900
2020/07/21(火) 14:35:33.57ID:y8zEtScE0
>>899
x264/x265で言うところの --b-pyramid みたいなもんじゃないかな?
Bフレームを参照するBフレームを作ることで圧縮効率を上げるみたいな。
(自分の理解が間違ってたら指摘よろ)

NVIDIAのSDKドキュメントの説明だと、
  「パフォーマンスへの影響なしに画質を改善できるので、有効にすることを強く推奨」
とされている。

 https://docs.nvidia.com/video-technologies/video-codec-sdk/nvenc-video-encoder-api-prog-guide/index.html#b-frames-as-reference

h264_nvenc で使えるのは、-b_ref_mode middle だけ。

hevc_nvenc だと middle だけではなく、(上記バグが修正されれば) each も使えるけど、
そもそもHEVCのBフレームがサポートされたのはTuringからなので、TuringのGPU(無印1650を除く)が必要。
2020/07/21(火) 15:00:23.20ID:yhRpHULW0
うちのは1660なので試してみよう
903名無しさん@お腹いっぱい。
垢版 |
2020/07/21(火) 22:57:12.57ID:hbGpSwkL0
一つの動画ファイルの中で
明るくなったり暗くなったりする動画ファイルがあるのですが
明るさの平均値が一定になるように
ホワイトバランスを設定するような機能ってffmpegにありますか?
 
2020/07/21(火) 23:06:40.06ID:oYJjamTG0
あります
2020/07/21(火) 23:37:44.96ID:yhRpHULW0
こういうのってなんで生きてるんだろうな
2020/07/22(水) 00:07:31.50ID:PnRxCa4D0
立場の低い人を困らせるのが生きがいだからだろ
言わせんな(そいつが)恥ずかしい
907903
垢版 |
2020/07/22(水) 18:45:22.19ID:Fy+7VVut0
>>904
どのコードを使えば良いかお教え願えないでしょうか?
2020/07/22(水) 18:58:42.21ID:JHY9D4oh0
知ってる訳がない
2020/07/24(金) 07:00:47.78ID:oM8O6VkH0
何がやりたいのかもう少し詳しく
とりあえずhisteqが近そうだけども
2020/07/26(日) 15:51:21.21ID:gfh2Twnh0
ffmpegOutで、2passってできる?
具体的にはvidstabを使いたいんだが、1passすら始まらずtransformでtrfファイルが見つからないとログがでる

-c:a copy
-c:v libx264
-crf 30
-vf vidstabdetect -an -f null -
-c:a copy
-c:v libx264
-crf 18
-vf vidstabtransform -y

vidstab自体はビルドできてる
detectとtransformでそれぞれプロフィールを分ければエンコできるんだが、できれば一気にやりたい
911名無しさん@お腹いっぱい。
垢版 |
2020/07/26(日) 16:07:12.41ID:gfh2Twnh0
ごめん、スレ間違えた
取り消します
912名無しさん@お腹いっぱい。
垢版 |
2020/07/26(日) 17:20:12.55ID:fCzyjOBH0
Hqdn3dでスムージングをかけながら、
動画を静止画として出力したいのですが、
なぜか反映されません。
それ以外の設定は反映されるのですが、
Hqdn3dだけは、画像出力の場合にだけ無効化される仕様なのでしょうか?
2020/07/29(水) 08:45:48.87ID:ErdE8Any0
>901
https://github.com/FFmpeg/FFmpeg/commit/466c14d10728cd315c60e602ffe3797e7dd0c3d3
なおったっぽい
2020/07/29(水) 18:53:12.25ID:oNkDnRhB0
>>913
ffmpeg-20200729-cbb6ba2-win64-staticで反映されてるね。
915912
垢版 |
2020/07/29(水) 19:11:01.67ID:+QEfK52S0
どなたかよろしくお願いいたします。

 
2020/07/29(水) 22:16:00.97ID:dqFr7O270
>>896のおかげか
2020/07/30(木) 00:34:19.53ID:1zwRp07c0
カバンが見つかってよかったね
918881
垢版 |
2020/07/30(木) 03:31:42.41ID:rv6AnFpc0
each使えるようになったけど新たな問題が…
FFMPEG -y -i input.mp4 -c:v hevc_nvenc -refs 5 -bf 3 -b_ref_mode each -an output.mp4
↑なら成功するけど
FFMPEG -y -i input.mp4 -c:v hevc_nvenc -refs <6-16> -bf 3 -b_ref_mode each -an output.mp4
のように、refsが6以上になるとエラーが出てエンコードできない
[hevc_nvenc @ 0000029fd8825340] EncodePicture failed!: generic error (20):
Video encoding failed
Conversion failed!

middleだと-refs 16でも行ける
NVEncCだとeach指定でも--refは16まで行ける
2020/07/30(木) 14:27:15.12ID:I+v0iwdb0
>>918

・意味ないかもだけど -refs のかわりに -dpb_size を使ってみた場合はどうなるかな?
  FFMPEG -y -i input.mp4 -c:v hevc_nvenc -dpb_size <6-16> -bf 3 -b_ref_mode each -an output.mp4

・何もわからない可能性もあるけど、差し支えなければ -loglevel debug をつけたログを
 テキストファイルかpastebinあたりで出してみてもらえるとありがたいかな・・・
2020/07/30(木) 14:47:32.07ID:rv6AnFpc0
NVEncCでeach使うとref 5と16の結果が一緒だった。middleは5と16の結果が違った
どうもeachだと上限5なのかな
2020/07/30(木) 21:16:14.68ID:3SzyDS+U0
>912
入力コマンドを書き込んでほしいのと
>画像出力の場合にだけ無効化
の無効化とはどのように確認しましたか。
2020/07/31(金) 02:23:31.32ID:RujOhmlm0
X265のオプションの解説にHEVCの規格上、ferは最大8まで、bフレーム有効で7、b-pyramid有効(NVENCにあるかは知らん)で6になる。エンコードするにはLevel無しのエンコードを許可するオプションが必要
とか何とかあるし、その辺でハードウェア的に対応してないとかそんなんなんじゃない?(適当)
じゃあなんでmiddleはエンコードできんねんって話だけど…
923名無しさん@お腹いっぱい。
垢版 |
2020/07/31(金) 20:38:20.66ID:H2q7LLT50
>>921
コマンドは
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "hqdn3d=500.00,format=yuv420p" -vframes 1 -qscale:v 1 -an -vsync 0 "D:\test2.png"
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "hqdn3d=500.00:500.00:0.00:0.00,format=yuv420p" -vframes 1 -qscale:v 1 -an -vsync 0 "D:\test2.png"


こんな感じです。

無効なのは、単に画像がスムージング前と変化無しだからです
2020/07/31(金) 23:02:00.79ID:oJrRErp50
hqdn3dは3次元デノイズなので最初の1フレームだけだとフィルタが効いてない。
よって2フレーム以降ならフィルタの効果がある。
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "hqdn3d=500.00,format=yuv420p" -vframes 2 -qscale:v 1 -an -vsync 0 "D:\test2%d.png"
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "hqdn3d=500.00:500.00:0.00:0.00,format=yuv420p" -vframes 2 -qscale:v 1 -an -vsync 0 "D:\test2%d.png"
2020/08/01(土) 02:23:34.70ID:3os4bqIM0
複数音声(英日)、複数字幕(英日)、チャプター情報が入ったmp4のdemuxがうまくいかずに詰んでる

ffmpeg.exe -i video.mp4 -map 0:0 -c copy video1.mp4
ffmpeg.exe -i video.mp4 -map 0:2 -c copy video2en.aac
ffmpeg.exe -i video.mp4 -map 0:3 -c copy video3jp.aac
ffmpeg.exe -i video.mp4 -map 0:5 -c copy video.csv
ffmpeg.exe -i video.mp4 -map 0:6 -c copy videoen.srt
ffmpeg.exe -i video.mp4 -map 0:7 -c copy videojp.srt
2020/08/01(土) 02:34:07.45ID:DvoqeN4P0
[srt @ 044e8ca0] SRT supports only a single subtitles stream.

Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

Stream map '0:7' matches no streams.


ダメなのは字幕とチャプター
http://imgur.com/SQ6Wo2X.jpg
map番号は合ってると思うのだが..
2020/08/01(土) 03:28:19.87ID:nFuHjL8R0
画像見る限り5までしかないようだが
2020/08/01(土) 07:28:29.29ID:u8/you4D0
5もエラーで出力されない
2020/08/01(土) 08:49:04.46ID:H+Ki5q+80
あってないじゃん
930名無しさん@お腹いっぱい。
垢版 |
2020/08/01(土) 13:14:24.77ID:0bF8Zvaj0
>>924

確かに、一フレームだけ出力しようとするとスムージングはかからないのですが
連番ファイルとして出力するとかかるようです。
hqdn3dは3次元フィルターですが、4つあるパラメータのうち、後ろの二つは時間方向に対するサイズで
前の二つが空間方向に対するサイズなので、前の二つだけは機能してくれても良いと思うのですが・

今やりたいことは、スムージングのパラメータを変えながら、スムージングのかかり具合を調べるために
ピンポイントであるフレームだけを画像として保存したいのですが、
どうすれば良いですか?

最初からスムージングだけ処理していって、
あるフレームだけ保存するようなことはできないでしょうか?
2020/08/01(土) 17:16:47.64ID:UaBdjEjs0
いっぱい出力して、いるやつだけ残して消せばどうだろうか
2020/08/01(土) 20:47:14.65ID:oHwVoXgP0
trimフィルタを使ってピンポイントであるフレームだけフィルタを当てる。
同じフレームをコピーしてhqdn3dを使う。2番目の出力にhqdn3dの効果がある。
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "trim=start_frame=300:end_frame=301,loop=1:32767:0,hqdn3d=500.00,format=yuv420p" -vframes 2 -qscale:v 1 -an -vsync 0 "D:\test2%d.png"
前後フレームでhqdn3dを使う。2番目の出力にhqdn3dの効果がある。
"D:\fmpeg.exe" -ss 0 -y -i "D:\test.mkv" -vf "trim=start_frame=300:end_frame=302,hqdn3d=500.00,format=yuv420p" -vframes 2 -qscale:v 1 -an -vsync 0 "D:\test2%d.png"
2020/08/01(土) 22:33:22.89ID:PeoZKIHv0
>>925
mp4のチャプタをxmlファイルなんかにエクスポートするにはどうしたらいいんだ?
メタデータから読み出さないとダメみたいだけど、
チャプタを付加する方法は見つかるのに、抽出する方法が見つからない。
2020/08/01(土) 22:40:54.23ID:oHwVoXgP0
ffprobe -i "video.mp4" -show_chapters -of xml > ch.xml
2020/08/01(土) 23:31:14.63ID:PeoZKIHv0
>>934
レスありがと
でも、この形式だと、そのままでは他で流用できないねぇ
汎用性のあるチャプターファイルの形式ってなんだろう?

Neroチャプター形式(TXT)
Appleチャプター形式(TXT)
BIFS/OD形式(よくわからん)
ffmpegMetadata形式(INI)
matroskachapters形式(XML)

とりあえず、mpvのスクリプト(createchapter.lua)で簡単に作成できるmatroskachapters(xml)がmkvtoolnixに対応してるので、
これを使ってチャプタ付きmkvを作成、ffmpegでmp4に変換、という手順でやってる。
2020/08/02(日) 00:37:04.10ID:2PvHZjFV0
あー。xmlならmp4boxでdemuxした時に確かに生成されるな
937名無しさん@お腹いっぱい。
垢版 |
2020/08/10(月) 01:37:04.74ID:OljsJD7n0
監視カメラのmp4データ(7000kbps、30フレーム)を、HLS形式(m3u8形式)にffmegで変換できましたが、
その際、ultrafast でも変換するのに再生時間と同じ程度の時間がかかります。

変換後のサイズは気にしないので圧縮に時間かかるのだったら圧縮したくないんですが、
時短のためのなにか良いオプションあるでしょうか。

現在は次のコマンドラインで変換しています。

ffmpeg -i 変換前.mp4 -vcodec libx264 -preset ultrafast -start_number 0 -hls_time 2 -hls_list_size 0 -f hls 変換後.m3u8

使用しているCPUは2GHzくらいのもの2コアです。
変換中は100%使用率になります。
2020/08/10(月) 06:44:01.75ID:mT2JHhD20
サイズ縮小する時に、CPUが律速してGPUは遊んでるんだよな
もっとGPUに仕事を回せないものか
2020/08/10(月) 07:11:54.94ID:L4lGNE3u0
どうせ自分でCPUでエンコードする設定にしておいて
何言ってんだ?ってところだろ…
2020/08/10(月) 08:16:05.83ID:Dt5KRjf/0
監視カメラの映像で7000kbpsもいるのかどうか知らんけど単純にビットレートを落とせばいんじゃね
7000kbpsじゃ時間かかって当たり前なんだから使用上問題が出ないレベルまで落とすしか無いでしょ
2020/08/10(月) 09:20:35.59ID:jNB6Q27b0
2GHzの2コアなら時間がかかって当たり前
それとエンコード後の拡張子m3u8は違うと思う
942名無しさん@お腹いっぱい。
垢版 |
2020/08/10(月) 09:59:47.38ID:OljsJD7n0
>>940
レスありがとうございます。
元データの品質を落とすことも考慮したいと思います。

>>941
m3u8とは別に、たくさんのファイルができました。
これらのファイルが細切れになった実際の映像データです。


元データの品質のまま、たんに細切れにするだけなら、
処理に時間がかからなさそうに思うんですが、
そのようなオプションはあるでしょうか。

現在使用しているのは、>>937のとおりです。

もしなければ、元データの品質を予め落とすようにするしかありません。
2020/08/10(月) 10:13:43.43ID:mT2JHhD20
配信するの?
2020/08/10(月) 10:14:18.74ID:6lndBV1F0
>>942
変換前も普通にH.264なら
-vcodec libx264 -preset ultrafast
の代わりに
-c:v copy
で行けると思うけど。
2020/08/10(月) 10:45:57.31ID:moAiggyZ0
サイズ気にしないなら-c copyが一番速い、はず
2020/08/10(月) 12:41:15.76ID:cI/ydpko0
2GHz2コアだったら4Ghz10コアにするだけでめっちゃ早くなって解決って気がするけど
18とか32コアからアップグレードとかだとコスパ悪くなるけど
2020/08/10(月) 13:01:37.36ID:mT2JHhD20
CPUそのままでGPUで加速するから面白いのに
2020/08/10(月) 22:56:09.51ID:OljsJD7n0
>>944 >>945
レスありがとうございました!!

いけました。高速で変換できました!
こうしたかったんです。


>>946 >>947
2コアは心もとないので、Raspberry pi 4 8GB(4コア) を使うことにしました。
上の変換は、copyだけど、スーッといけました。
外部HDDディスクをusb3.0で接続、マウントしています。

>>943
nginxとイントラネットで、自分用に監視カメラの映像をHLS配信します。


皆様、どうもありがとうございました。
がんばります。
2020/08/13(木) 21:47:25.31ID:CFOAI0KV0
テストで組んだリストリーミング環境で、ffmpegがどうしても数10分後に停止してしまいます。(1)
あと、視聴ソフトウェアで確認できる映像ではリアルタイムとの遅延が10秒程度ありいつまでもその差が埋まりません。(2)

[camera]→rtsp→[PC1 / ffmpeg]→rtmp→[PC2 / nginx]→視聴ソフトウェア

PC1のffmpegは次のようにしています。
上流のcameraからrtspでストリームを掴んで、変換後に、下流のnginxにrtmpで流しています。
ffmpeg -i rtsp://user:pass@192.168.1.2:554/h264/stream -c h264 -an -r 15 -s 720x406 -b:v 512k -f flv rtmp://192.168.12.15/live/cam1

PC2のnginxのrtmp設定は次のようにしています。

rtmp {
server {
listen 1935;
access_log /var/log/nginx/rtmp_access.log;

application live {

live on;

}
2020/08/13(木) 21:47:44.30ID:CFOAI0KV0
最下流の視聴ソフトウェアVLCでrtmpでnginxに接続して、cameraの映像と音声を数10分間は受信できました。
ところが、しばらくすると、映像が止まってしまいます。音声のみ聞こえます。再接続しようとしても駄目です。

このとき、ffmpegの最初にある項目のframeカウントが停止してしまっています。
frame=10396 fps= 14 q=31.0 size= 43611kB time=00:11:31.26 bitrate= 516.8kbits/s dup=0 drop=10392 speed=
それ以外の、最後の項目のspeedの数値は動いているのでffmpegがフリーズしているわけではないと思います。


ffmpegを再起動してから、視聴ソフトでnginxに再接続すると再生できますが、また同じように映像は停止します。

(1)(2)について何か設定を工夫する必要があると思うのですが、
どのように設定すればよいのでしょうか。
2020/08/13(木) 21:52:39.23ID:CFOAI0KV0
>>949
すみません、ffmpegのコマンドはこっちでした。

ffmpeg -i rtsp://user:pass@192.168.1.2:554/h264/stream -vcodec copy -c:a aac -f flv rtmp://192.168.12.15/live/cam1
2020/08/13(木) 21:53:53.12ID:CFOAI0KV0
>>951
訂正
映像だけでなく音声も停止しました。
2020/08/14(金) 11:14:42.41ID:VrGtMuee0
>>949
自己解決しました。

(1)
-rtsp_transport tcp -stimeout 10000000 をつけるとffmpegが止まらなくなりました。
安定して動作しています。
tcpが有効に作用したと思います。

(2)
ライブ映像の遅れは、早送りすると追いつくことができました。
2020/08/14(金) 11:24:31.45ID:jiTbT3oz0
解決して良かったね
特殊な理由なければFlashのRTMPじゃなくてHLSストリーミングお勧めしたい
2020/08/14(金) 12:26:19.15ID:CTsuUgIZ0
すぐ上の人とは別人なのか
2020/08/14(金) 22:48:56.90ID:VrGtMuee0
>>955
>>937はわたしです。その節はお世話になりありがとうございます。

>>954
レスありがとうございます。

rtmpではなく、今HLSライブストリーミングテストしています、
video.jsの最新のものでは、HLSライブのものでも巻き戻しもできるので便利です。
2020/08/14(金) 22:54:45.10ID:VrGtMuee0
>>956
このvideojsのライブ巻き戻し再生に関して、
何か設定が悪いのか、巻き戻し、早送りの反応がとても悪い。
30秒以上待たされることもあります。
なにが悪いんだろう。tsファイルを検索するnginx側だろうか?

カウント0から再生とライブ再生に戻すのは早いんですけどね。

もうしばらくググりながら悩む必要がありそう。
2020/08/14(金) 23:20:05.03ID:3DNoaat90
>>956
もうHLSの試行したの!?驚き
動きも適応も早くて尊敬します

ライブラリvideo.jsには詳しくなくて力になれない……惜しい
2020/08/15(土) 13:43:44.65ID:lFRQ78oW0
地デジtsから副音声を抽出したい
しかし

Program 1040
Stream #0:2[0x112]: Audio: aac

Program 1041
Stream #0:2[0x112]: Audio: aac

と、まるで同じ
どうやって副音声側1041の0:2を指定する記述をすればよろしいのでしょうか。。。

-map 0:2
では当然のごとく1040側の主音声が抽出できるだけ。。。
2020/08/15(土) 13:53:33.97ID:dyy4f/UD0
クレヨンしんちゃん予約しといた
2020/08/15(土) 14:10:03.23ID:sRgeJH1o0
検索すると-dual_mono_modeで指定するみたいな記事があるけどドキュメントにそんなオプションないよね…
2020/08/15(土) 15:08:57.70ID:lFRQ78oW0
>>961
どうもです
mapをそれに置き換えて記述しても主音声が抽出されるだけでした
2020/08/15(土) 15:34:58.69ID:sRgeJH1o0
本当にここで聞きたいならffprobeの結果とか実際に使ったコマンドとか書いたほうがいいよ
964名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 19:54:33.34ID:nNgrTpHl0
FFmpegを使って、輝度値の倍率って設定できますか?
例えば、赤色の輝度値が1.2倍、青色が0.8倍、緑も0.8倍みたいな設定をしたいのですが、
brightnessで輝度値は設定できるのですが、
これは倍率ではなく、オフセットのため、使うことができません。

C#とかだと、輝度値の倍率とオフセットを別で設定できるのですが
FFmpegでもできないでしょうか?
2020/08/16(日) 20:41:57.08ID:SDeDnwOS0
Program 3104
Metadata:
service_name : ?|?A?
service_provider:
Stream #0:1[0x111]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, top first), 1440x1080 [SAR4:3 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Side data:
cpb: bitrate max/min/avg: 20000000/0/0 buffer size: 9781248 vbv_delay: N/A
Stream #0:2[0x112]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 186 kb/s
Stream #0:3[0x113]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 190 kb/s
Stream #0:4[0x116]: Subtitle: arib_caption (Profile A) ([6][0][0][0] / 0x0006)
Stream #0:5[0x117]: Data: bin_data ([6][0][0][0] / 0x0006)
Program 3105
Metadata:
service_name : ?|?A?
service_provider:
Program 3106
Metadata:
service_name : ?|?A?
service_provider:
Program 3488
Metadata:
service_name : ?|?A?
service_provider:
Program 3108
Metadata:
service_name : ?|?A?NW;~
service_provider:
No Program
Stream #0:0[0x12]: Data: epg
Unsupported codec with id 98306 for input stream 0
Unsupported codec with id 96272 for input stream 4
Unsupported codec with id 100359 for input stream 5
2020/08/16(日) 20:48:14.61ID:Uqhv11Pq0
>>964
lut〜ってフィルタなんかでいけるはず
967名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 21:03:35.40ID:Tx8kWVMc0
3、4年前にコンパイルしたffmpeg(3.4)使ってたけど、そろそろAV1に対応させようかと思って
久しぶりにコンパイルに挑戦したらつまずいた。ちなMac(10.14)。
3.4の./configureオプションはこんな感じ↓

./configure --pkg-config-flags=--static --enable-gpl --enable-nonfree --enable-libx264 --enable-libx265 --enable-libvpx --enable-libfdk-aac --enable-libvorbis --enable-libopus --enable-libmp3lame --disable-ffplay --disable-ffprobe --disable-ffserver --enable-small

『pkg-config』オプション
./configure --prefix=/usr --with-pc-path=/usr/local/lib/pkgconfig --with-internal-glib

『libx264』オプション
./configure --prefix=/usr/local --enable-static

『libx265』オプション
cd x265path/build/linux
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -DENABLE_SHARED=NO ../../source/

『libvpx』オプション
./configure --prefix=/usr/local --disable-shared --enable-static --disable-unit-tests

『libvorbis』オプション
./configure --prefix=/usr/local --with-ogg-libraries=/usr/local/lib --with-ogg-includes=/usr/local/include --disable-shared

『上記以外のコーデックとyasm-1.3.0、nasm-2.15.03』オプション
./configure --prefix=/usr/local --disable-shared
968名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 21:09:59.58ID:Tx8kWVMc0
>>967
まずlibaomとlibrav1eがコンパイルできん。仕方がわからん。
oggをコンパイルして次にvorbisコンパイルしたらエラーが出よる。
libaomとlibrav1eは諦めて本体コンパイルしたらコーデック無いって出よる。
それから--disable-ffserverってオプション無いって。これは外せばいいんだろうけど。
969名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 21:13:28.29ID:Tx8kWVMc0
>>968
libx265は

cd x265path/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local/share/cmake-3.18 -DENABLE_SHARED=off -DENABLE_NASM=on ../aom

ってすればできた。あとはわからん。エロい人教えて。
970名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 21:22:28.89ID:Tx8kWVMc0
>>969
下の間違い。

cd x265path/build/linux
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local/share/cmake-3.18 -DENABLE_SHARED=NO ../../source/

cmake-3.18もコンパイルしてインストールした。
2020/08/16(日) 22:17:12.12ID:VkSMfHJN0
https://trac.ffmpeg.org/wiki/CompilationGuide/macOS
詳しくは知らない

https://ffmpeg.zeranoe.com/builds/
でmacOSのバイナリ配布している
972名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 22:18:49.54ID:sG1wc5El0
なんでコンパイル方法をテンプレにまとめてないわけ?
試行錯誤しなくても説明どおりにすればサルでもできるような。
まず本家からソースコードしか配布されてないってとこがffmpegの敷居を高くしてるんだよ。
5ch・2chにまとめられてればありがたい。ググって出てくるのはわかりにくいんだよ。
初心者はパスの入力なんかでもつまずく。AVファンがパソコンに詳しいとは限らないから。
WinとMac、それぞれのビルド方法をだれかテンプレ化してくれ。サルでもできるようなやつな。
2020/08/16(日) 22:27:02.61ID:ZVmM0seZ0
ffmpegのフルコンパイルは熟練者でも厳しいからなあ
974名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 22:30:21.98ID:sG1wc5El0
>>971
その公式のコンパイルガイド見ただけでできるような初心者は
一人もいない。何日も試行錯誤しないといけない。
よそがビルドしたバイナリ版はいらんのがいっぱい入ってるし
必要なlibfdk-aacが入ってない。第一怪しい←ここ重要
よそが配布したhand brakeにマルウェア仕込まれてたことあっただろ。
やはり自分でソースコードからコンパイルしたい。
975名無しさん@お腹いっぱい。
垢版 |
2020/08/16(日) 22:33:38.18ID:nNgrTpHl0
>>966
LUTフィルターを調べてみましたが
1Dとか3Dとかあっていまいちよく分かりませんでした
コードを見せていただけないでしょうか?
2020/08/16(日) 22:34:34.36ID:SDeDnwOS0
みんなもビルドして使ってね
という趣旨じゃないからな
ソースコード開示義務があるから自力でビルドすることも可能というだけで
レシピすら無い夕食材料セットみたいなもん
2020/08/16(日) 22:44:17.55ID:xu73v8LW0
ネタにマジレスするけどコンパイルするならDockerとか使ったほうが楽だぞ
Linux以外のバイナリについては知らん
978名無しさん@お腹いっぱい。
垢版 |
2020/08/17(月) 00:19:16.63ID:XeOA6k6+0
ネタではない。見ればだいたいわかるだろ。
MacにはHomebrewあるけど使いたくない。
コンパイルすりゃしまいじゃん。

>ソースコード開示義務があるから
>>976
そんな義務あるんか。知らんかったわ。
ソースコード開示されてなかったらvlcとかChromeとかに組み込めないけど
そんな義務あったんか。

>>973
だからやり方さえ詳しく書いてあればあとはコピペするだけだからサルでもできるやん。
2020/08/17(月) 00:32:11.62ID:FEiKD+L30
ffmpegのバージョン、ライブラリのバージョンでやり方が変わるからだめなんだよ
すぐ使えなくなる
980名無しさん@お腹いっぱい。
垢版 |
2020/08/17(月) 00:41:16.89ID:XeOA6k6+0
>>979
そうみたいね。わいも前は試行錯誤の末にできた方法でやったら
今回はダメだった。
だから5ch・2chのこのスレだったらタイムリーに更新できるじゃん。
このスレに来れば常に確実な方法がわかる、って感じにしようず。
2020/08/17(月) 06:29:43.99ID:4Dns2W820
>>980
お前がすればええやん
2020/08/17(月) 18:19:46.95ID:7juacBpw0
ffmpegならこちらへ 5
https://egg.5ch.net/test/read.cgi/software/1597315425/
2020/08/17(月) 20:56:00.97ID:ccgVI60I0
https://github.com/markus-perl/ffmpeg-build-script
ビルドスクリプト使っては
984名無しさん@お腹いっぱい。
垢版 |
2020/08/17(月) 21:11:14.94ID:tUgUnE3P0
Winだけど、ffmpegのビルド方法まとめてほしいよね
ビルドスクリプト使ったらエラーでビルドできなかった(>>983とは別物)
2020/08/17(月) 21:22:41.28ID:iNbka2BJ0
>>983
スクリプトは便利なんだけどね
fdk-aacやopusといったライブラリを追加で入れようとすると途端に融通が利かなくなって・・・
2020/08/17(月) 22:07:26.54ID:0vhyggWz0
というかビルド作業って中途半端に抽象化・カプセル化されてて、皆何となく使えちゃってる気がする
その弊害として実際に踏まれてる手順が分からないし、他の環境・対象向けに応用するやり方も分からなくなってる
2020/08/17(月) 22:07:52.73ID:0vhyggWz0
パッケージ管理ツールに頼らず自前でビルドするこの際、gitとかGNU makeみたいな役割が単純明快な基本的ツールでのビルドの汎用手法纏めなきゃなのか……
2020/08/17(月) 22:08:58.29ID:NxZrMJBD0
ビルドしたことないけど、makeじゃないの?
2020/08/17(月) 23:23:37.29ID:0vhyggWz0
>>988
多分何も言わなかったらmakeと言えばGNU makeだと思う
あんま詳しくないから拾ってきたもの

・GNU make (UNIX系、Windows)
・BSD make (UNIX系)
・Schily make
・nmake / Microsoft Program Maintenance Utility (Windows)
・Borland make (Windows)
・Solaris make (Solaris)
2020/08/17(月) 23:30:25.63ID:mCXiLXWV0
./configure
make
make install
2020/08/17(月) 23:53:16.00ID:OTuExVUg0
ArchlinuxのAURにあるffmpeg-fullのPKGBUILDとか見たらいいよ
AV1はパッチ当ててる
992980
垢版 |
2020/08/17(月) 23:55:07.81ID:3LjqniNC0
>>981
一応ffmpeg-4.3.1でコンパイルできた。libaomとlibrav1eは諦めた。
libaomは実時間の100倍かかるなんて記述もあるし、まだいいかなと。

ちなみにワイの環境ではvp9は実時間の15倍くらい。最初は実時間の8倍くらいの
速度でエンコードするんだけど、ものの数分でサーマルスロットリンクが発生して
速度が落ちる。iMacの性能は本当に低い。今3年前のiMac使ってるけど、9年前の
iMacと比べて速度はほぼいっしょ。変わったのは古いのは本体の一部が火傷する
くらいに熱くなってたけど今のはほんのり温かくなる程度なとこぐらい。
古いのでエンコしまくってたらすぐつぶれた。新しいのはそういうのはないだろう。
たぶんcpuが速度落とすより前にMacがリミッターかけてるんだと思う。
つぶれないように。でも最近はワイほとんどエンコしてない。それはさておき。

libaomとlibrav1e以外は、前と同じだけ全部入れてコンパイルできた。
これで前と同じ環境、プラスAV1でエンコはできないけれどAV1の「認識」はできる
ffmpegバイナリを手に入れることができた。おおむね満足してる。

Mac使ってる人でサルでもわかるように今回のビルド方法まとめてほしい人いる?
ただしx265とliboggとlibvorbisは最新のではなく以前ビルドしたときと同じ
古いバージョンを使ってる。それだとうまくいった。
またx264も古いバージョンのを使ってる。以前ビルドした時、当時の最新
バージョンは設定どおりのビットレートでエンコできないバグがあったから
バグのない古いバージョンでビルドしたんだけど、今回もそれを使ってビルドした。
最新のはそのバグは解消されてると思うけど、検証すんのめんどくさい、
てかできない。まあこれで問題なく使えるんならいいでしょってことで。
以上を了解できるならまとめてもいいよ。
2020/08/18(火) 06:23:46.44ID:mHCFhUSS0
方法そのまま教えるのは魚をあげるのと同じだからなあ
そもそもmakeとは、から始まって、
素直にビルドできない原因と解決方法を個別に説明してくれる方が有り難い
994名無しさん@お腹いっぱい。
垢版 |
2020/08/18(火) 07:57:59.50ID:AM/qOxOj0
>>978
やり方書いてあっても難しい
ライブラリ群の依存関係とか、ライブラリのバージョンが変わったらビルドエラー出たりとかで
それを一つ一つ潰していってやっとビルドできる。 それで安心してたら次のリビジョンアップで
またビルドできなくなったりと苦難の連続だよ
2020/08/18(火) 08:10:28.22ID:mHCFhUSS0
全部最新だと通らなくて、わざと古いままにする必要があるとかそういう系?
2020/08/18(火) 08:29:58.58ID:yR2+k7Pc0
前にビルドしたけどx265とx264がマルチコアに対応させれられなくて諦めたんだけど
そのへんうまくいってる?
997名無しさん@お腹いっぱい。
垢版 |
2020/08/18(火) 11:34:26.70ID:Z3eCd2WC0
./configure
make all
make install
make clean
2020/08/18(火) 12:25:26.70ID:V/x7qTSR0
全部最新で通らなかったなんてこと起きたことないなあ
2020/08/18(火) 13:06:54.95ID:9hQsNyMT0
505
1000名無しさん@お腹いっぱい。
垢版 |
2020/08/18(火) 13:09:15.39ID:b+U/zleH0
O2
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 485日 11時間 57分 46秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況