ffmpegならこちらへ 3 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
公式サイト
http://ffmpeg.org/
エンコード、ストリーミング配信を高画質高音質で行えるffmprg。
OSに拘らず対応コーデックが多い。
対応コーデックが多く、多彩なオプションを使用可能。
コマンドラインから使用することができる。
ffmpegならこちらへ 2
http://potato.2ch.net/test/read.cgi/software/1420916868/ libopusやlibvorbisで音声をダウンミックスせずにマルチチャンネル(5.1ch)のままエンコードするには
どうしたら良いのでしょうか? -ac 6にしたら5.1chでエンコードできました。自己レスですみません。
ところで、-acを明示せずに変換元の音声に応じて自動的に2chエンコや6chエンコ
するようにしたいのですが、ffmpegは-ac未指定だと2chにダウンミックスしてしまうよう
なんですが、なにかいいお知恵があれば拝借したいのですが。 >>524
ffprobeを使えばchannelsとかchannel_layoutが取れるから、
それを取得してffmpegの引数に利用するバッチを書くといいのでは。 >>522
MPEG-4 ALS まだ生きてたんだな FLACもALACもあるのにローヤリティ払ってまでALS使う意味がわからない 公式ビルドのffmpeg3.4.2でlibx264でエンコードするとなぜか画質がとんでもなく悪くなる。ブロックノイズどころか、ブロックの塊みたいになってマトモに視聴できないレベル
ビットレートを上げていって、10000でもかなり悪く、30000とかいうアホみたいな数値にするととかなり良くなった。HWエンコード(AMF)を使うとノイズはやはり多いけどブロック状にはならない
気になるのがHandBrakeでx264を使うとfpsが20弱で画質は綺麗なのに、ffmpegでx264を使うとfpsがなぜか60くらいまで上がること。原因がわかる人いない?前までこんなことはなかった すまない。自己解決した。コマンドを書き込もうとしたらビットレートにkを付けるのを忘れてたことに気付いただけだった。本当に申し訳ない >>525
レスありがとうございます。その方法でやってみます。 直ってよかったな。
あと30kでまあまあの画質に見えたなら眼科行こう。
libvmafのやばすぎたメモリリークが修正されて、問題なく使えるようになった。
#6967 (Memory leak in Win64 ffmpeg with vmaf) - FFmpeg
https://trac.ffmpeg.org/ticket/6967
vf_libvmaf: Fix memory leak
https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/be502ec6cde004e1fa05643282939bf3a1507922 arib-ts2assを使ってmkvファイルに字幕をつけると字幕のフォントや大きさが
tsファイルのarib字幕と異なてしまうのですが、仕方がないのでしょうか?
arib-ts2assで生成されるassファイルを見るとMS UI Gothicを指定しているのですが、
当方の環境はLinuxでサブ機のWin7から一時的にMS UI Gothicを借りてきて/usr/local/fonts
以下に放り込んだのですが、mkvのass字幕のフォントや大きさは変わりませんでした。
tsのarib字幕ってどんなフォントを使ってるんですか?
https://github.com/johnoneil/arib
arib-ts2ass 大事なこと書き忘れました。再生ソフトはvlc 3.0.1です。 どうもtsファイルのarib字幕はvlcのsubtitleの設定に従ってくれるようです。
assだとvlcの設定を無視するみたいです。 assから変換したsrtファイルを埋め込んだmkvでもvlcの字幕の設定は反映されませんでした。
srtファイルにフォントや大きさなどがしてされているからのようですが。 ffmpegニキヘルプミー
EPGstationというTV予約・録画ソフトにライブ配信機能があってffmpegが使われてるんだが、
PCが非力すぎてデフォルトのエンコードオプションでFPS14程度しか出ない。
それでQSVを使いたいけどもうまくいかない。
デフォルトのオプション
%FFMPEG% -re -dual_mono_mode main -i pipe:0 -c:a aac -ar 48000 -ab 192k -ac 2 -c:v libx264 -s 1280x720 -vf yadif -preset veryfast -aspect 16:9 -vb 3000k -f mpegts pipe:1
考えたオプション
%FFMPEG% -init_hw_device qsv:hw -re -dual_mono_mode main -i pipe:0 -global_quality 30 -c:a aac -ar 48000 -ab 192k -ac 2 -c:v h264_qsv -preset veryfast -vcm 1 -look_ahead 0 -vf yadif -f mpegts pipe:1
これをvlcで再生しようとするとエラーでうまくいかない。
何が間違ってるのか、どうしたらいいのかわかる人教えてください。 >>543
ffmpeg全く関係ないじゃん。なんでここで質問しようと思ったんだ。
DTV板のTS初心者スレにでも行きなよ。 >>547
使ってるffmpegのバージョンとか、VLCのバージョンとか、エラーの内容とか書きなよ。 >>549
ごめんなさい
ffmpegはhttps://ffmpeg.zeranoe.com/builds/の
ffmpeg-3.4.2-win64-shared
VLCは3.0.1 Vetinari
エラーは
入力を開くことができません:
VLCはMRL 'http://192.168.12.60:8887/api/streams/live/3185757352/mpegts?mode=2'を開けません。詳細はログを確認してください。
ってなる。
VLCのログは見てみたけど、長すぎてここに貼ってもいいものやら… >>550
EPGstationがどこかにffmpegのログを吐いてるんじゃないか?
それ探してみれば何らかの情報が得られると思うけど。
EPGstation側で残してないなら-reportつければログとれると思う。 >>551
ありがとう。-reportやってみた
ログの最後にこんなエラーがあった。
[AVHWDeviceContext @ 000002002f1f7b20] Failed to create Direct3D device
Device creation failed: -1313558101.
Failed to set value 'qsv:hw' for option 'init_hw_device': Unknown error occurred
Error parsing global options: Unknown error occurred
ググったらこんなページがあった
https://trac.ffmpeg.org/ticket/6827
解決不能なんかなorz >>552
-init_hw_deviceを外したらどうなるんだ?
それでもダメなら単にQSVが使えない状況なだけじゃないの。
rigaya氏のサイトからQSVEncを落とすと、「QSVが利用可能か確認 [ダブルクリック].bat」ってのがあるから
それを実行して、QSVが使える状況になってるのか確認してみるといいのでは。
OSやdGPUの有無にもよるけど、モニタつないでないとダメとか仮想画面割り当てとかないとダメとかあったろ、たしか。
そのあたりの環境情報も出したほうがいいかもね。 vlc3は、まだ全く安定してないので議論するだけ時間の無駄 >>553
お世話になります。
QSVencの「QSVが利用可能か確認.bat」やってみました。
QSVが使用できます。
使用可能なMediaSDK: Hardware API v1.19
だそうです。
環境は
MB: ASRock N3700-ITX(CPU onboard)
OS: Windows10 home 64bit
チューナー: PT-3
グラボはつけてなくてモニタはあり、仮想画面は使ったことないです。
言われた通り-init_hw_device qsv:hw を抜いてみたら動いた!
これって必須じゃなかったの?!
しばらく動かしてるけど大丈夫そうです。
すごい!いろいろ考えてくれてありがとう(人''▽`)☆ >>546
assのまま、Aegisubのような字幕エディタで調整すればいいよ。
普通のエディタでも最初の方にフォントの指定があるから、できないことはないけど、
知識がないとちょっと難しいかな。 そういえば>>541のAV1エンコード速度の件ですが、現在のffmpegのlibaom-av1エンコーダは
-tile-columnsをサポートしてないようで、マルチスレッドが効かないようです。
マルチスレッドありでの速度計測はaomenc.exeで試すかffmpegの更新を待つしかない模様。
後日aomenc.exeで再計測してみる予定です。 AV1系のハードウェア実装は2020年頃になるらしいけど、CUDAやらハイブリッドやらで
早めに実装してきたりする可能性もあったりするんだろうか。よくわからないけど。 linuxのintel CPU(Kaby lakeのpentium)のVAAPIでthreads指定して意味あるんでしょうか? 音声多重放送に対応するにはどうすればよいのでしょうか?
多重放送じゃないときも同じスクリプトファイルを使いたいので、できれば両対応の-mapが書ければ良いのですが、
どうすればよいのかいまいちわかりません。 音声全部取りたいなら -map a または -map 0:a で取れるはず >>563
それじゃ主音声しかとれなくないですか?
webを参考にして次のパイプでいけました。
numberofmap=$(ffmpeg -i temp.ts 2>&1 | grep Audio | grep -o -e 0:[0-9] | sed -e "s/0:/-map 0:/" | sed -z 's/\n/ /g')
#numberofmapをffmpegの-map 0:1の位置におく。 >>564
2つのaacストリームが入ってるtsファイルから、>>563の方法で普通に2つのストリームが取れたけど。 >>565
-map 0:aだと当方の環境(debian stretch ffmpeg 昨日のsnapshot)だと主ストリームしかとれませんでした。
あと、#numberofmapは$numberofmapの間違いです。(bashのシェルスクリプトで利用) ts 結合するだけなら ffmpeg 使わなくても単純バイナリ結合で何も問題なかった >>541ですが、1920x1080、10フレームのAV1エンコード速度(-cpu-used毎)を測りなおしました。
●aomenc.exe で --tile-columns=3 をつけてタイル分割エンコードした場合
エンコーダ: aomenc.exe-20180401-0.1.0-9011-g0ec805145 (>>515のMABSで自ビルド)
結果: 0.0054〜0.1046fps
http://2sen.dip.jp/cgi-bin/upgun/up2/source/up3488.jpg
●自ビルドしたffmpegでエンコードした場合 (現時点では-tile-columns指定不可)
エンコーダ: ffmpeg x64 20180403-N-90590-g197a4e8fee (libaom 0.1.0-9028-geeda6d2de)
結果: 0.0029〜0.0597fps
http://2sen.dip.jp/cgi-bin/upgun/up2/source/up3487.jpg
●Zeranoe ffmpegでエンコードした場合 (現時点では-tile-columns指定不可)
エンコーダ: ffmpeg x64 20180402-N-90578-g02ae52db87 (libaom 0.1.0-9012-ge83c6624f)
結果: 0.0004〜0.0275fps
http://2sen.dip.jp/cgi-bin/upgun/up2/source/up3486.jpg
まとめ
●--tile-columns=3をつけることでエンコード速度は2倍くらいになる。
ただ、無しの場合に12%程度だったCPU使用率が100%くらいになるのに2倍程度にしかならないとも言える。
●Zeranoe版ffmpegのエンコード速度がやけに遅い。MABSで57.5分だったのがZeranoeだと378.2分。
libaomのビルドをミスってる可能性があるので連絡済み。反応待ち。 VP9もそうなんだけどav1は普通のPCじゃ実用的には扱えないか
fps恐ろしく低いね >>568で書いた、「Zeranoe版のAV1エンコードが遅い」という件ですが、次のビルドで修正されるそうです。
今はまだffmpeg-20180404-53688b6になってるので、その次ですね。 Zeranoe版ffmpeg-20180405-e54679b-win64-static.zipでlibaom問題の修正確認。
テスト
ffmpeg.exe -f lavfi -i testsrc2=duration=10:size=1920x1080:rate=1/1 -an -strict -2 -c:v libaom-av1 -b:v 0 -crf 30 -cpu-used 4 -threads 8 -f matroska testsrc2.mkv"
●MABS-20180403-N-90590-g197a4e8fee (libaom 0.1.0-9028-geeda6d2de)
EncodeTime (sec): 00:01:48.24 (108.24sec)
Result: 10frames, 354.3kbps, 0.1fps (10/108.24=0.0924fps)
●MABS-20180405-N-90627-ge54679b6c1 (libaom 0.1.0-9082-gab1e1db19)
●Zeranoe-20180405-N-90627-ge54679b6c1 (libaom 0.1.0-9080-g55c95f8c1)
修正されたので両方ともだいたい同じくらい。
EncodeTime (sec): 00:02:52.43 (172.43sec)
Result: 10frames, 331.2kbps, 0.1fps (10/172.43=0.058fps)
同じ設定でも0403版だと108秒だったのが、0405版で172秒になってるので、
おそらくこの間にlibaom側で速度に影響のある変更があったと思われ。
しばらくは色々な修正が続きそう。 Zeranoe版の 20180406-9703b7d ビルドからVP9の10bitが追加された。
---
10-bit VP9 support added - FFmpeg
https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=2&t=5620
10-bit VP9 support has been added with the 20180406-9703b7d build.
To use 10-bit mode set the appropriate pixel format, for example:
ffmpeg -f lavfi -i testsrc2=duration=10 -c:v libvpx-vp9 -pix_fmt yuv420p10le o.mkv ffmpegでaribB24字幕やデータ放送を保存したまま映像だけエンコードする(h.264のtsファイルにしたいのです)にはどうすればいいんでしょうか?
-,ap0v -map:0aのような-map0:dというパラメータがあることまでは調べがついたのですが、使い方がイマイチわかりません。
dtv版のlinuxテレビスレに投稿しましたが、こちらのほうが詳しい方が多いと思い再投稿します。 失礼、
>-,ap0v -map:0aのような
-map 0:v -map0:aの間違いです・ 自分で実験してみたのですが、一応-c:d copy -map 0:dでData binのコピーはできるようです。
ただ、vlcでオリジナルのtsにはあったaribB24字幕の選択肢がなくなってますし(字幕として認識されない)、
あまり意味のあることではないようです。
そう簡単にaribB24字幕がコピーできたらarib-ts2assのようなツールも必要ないんでしょうけど・・・ ffmpegでtsのaac 5.1chからlibopus 5.1chに変換すると
This stream seems to incorrectly report its last channel as LFE[5], mapping to LFE[0]
ってメッセージが出るんですが、まずいですか?
検索しても10件ぐらいしか引っかからないんですが。
番組はNHKクラシック音楽館と名曲アルバム+です。 libfdk_aacを使っても同様のメッセージがでました。
問題なければ良いのですが。
それはそうと、5.1chの場合、AAC(放送波やlibfdk_aac)が5.1ch side speakerを想定するのに対し、
opusはrear speakerを想定するようですが、5.1chaacなtsをopus 5.1chに変換する時に特段問題などはないの
でしょうか? 今の所2chバーチャルサラウンドしかやっていないので、実際の5.1chスピーカーの場合が
わからんのですよ。今年中に7.1ch揃えようと思って入るのですが。 質問させてください。
複数枚JPEG画像を連結しMPEGに変換していますが、入力JPEG画像の色合いと違った結果になってしまいます。
白っちゃけるというか、明るく滲みボヤけるような…。
入力JPEG: https://i.imgur.com/4jLjVQP.jpg
変換後キャプチャ: https://i.imgur.com/LMlS3ZL.png
コマンドラインは下記の通りです。
ffmpeg.exe -r 30.00 -i US_%d.jpg -vb 16000k -c:v:1 libx264 -s 800x600 -r 30 test.mpg
↓下記の2オプションにて明度彩度を調整しても、滲みボヤけたあとに適用されるようで、効果が感じられません。
-vf eq=brightness=-0.02:saturation=2
入力JPEGの画質を劣化させず、または劣化を最小限に抑えてMPEG変換する方法、ありますでしょうか、
どなたかお分かりになりましたらご教授願います、よろしくお願いいたします。 JPEGはフルレンジで記録されてるけどMPEGはリミテッドレンジか基本だからリミテッドレンジでエンコードしないと色がおかしくなるのは分かる
でもffmpegでフルレンジ→リミテッドレンジ変換するコマンドは知らない あんまり自信ないけどこうかな
-vf scale="in_range=full:in_color_matrix=bt601:out_range=limited:out_color_matrix=auto" 実際にエンコードしてみたらvf scale付けたほうがおかしくなった
無指定で正しいレンジに変換してくれたけどもしかして再生環境の問題? >>581
ありがとうございます、試したところ残念ながら効果的ではなかったようです。
>>582-584
ありがとうございます、ちょうどご提示いただいたオプションを試していたところですが、
Unable to parse option value "limited" と表示され、つまづいていました。
再生環境はWindows7WindowsMediaPlayer12です。
他のプレイヤーでしたら変わるでしょうか? >>585
使っているffmpegのバージョンが古いということはない?
新しいの入れてもう一度>>580のコマンドを入力して >>586
たびたびご対応いただき、本当にありがとうございます。
現在使用中のffmpegは、windows32bit版で、引数なし実行で
ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7.3.0 (GCC)
と表示します。
ダウンロードサイトがよくなかったでしょうか…他のバイナリダウンロードを探してみます。 >>580
> ffmpeg.exe -r 30.00 -i US_%d.jpg -vb 16000k -c:v:1 libx264 -s 800x600 -r 30 test.mpg
●800x600の30fpsで16Mbpsはいくらなんでも盛りすぎだと思う。
●-c:v:1としてるからlibx264の指定は無視され、mpeg1videoでエンコードされてしまっている。
(ただ、この場合自動でyuvj420p→yuv420p変換が行われるので
>>580のようなレンジ異常は起きないはずなんだが・・・)
●mp4じゃなくmpgにしたいの?libx264でエンコするならmp4の方がいいと思うよ。
●jpgソースをそのままlibx264に渡すと自動的にフルレンジにされてしまう。
再生環境(EVRなど)によってはフルレンジフラグが反映されずレンジ異常に見えるので
明示的にリミテッドレンジに変換したほうが良い。
●HD(BT.709)とSD(BT.601)の境界判定はモノによって異なるが
縦>=578をHDとみなすことが多い(EVR/madVR等)ので、800x600ならHD(BT.709)として再生されることが多い。
BT.601のフラグをつけてもいいんだけど、BT.709に変換してBT.709のフラグをつけたほうがより良い。
●-rは最初のだけでいいと思うよ。
ということで、以下のようにすればよさげかな。
フレームレートはとりあえず30.00のままにしてあるけど、30000/1001じゃなくていいのかな?
ビットレートもとりあえず4Mbpsにしといたけど、調整するなり-crf 20とかにするなりしてくれ。
ffmpeg.exe -r 30.00 -i US_%d.jpg -vf scale=out_color_matrix=bt709:out_range=tv:flags=+accurate_rnd -c:v libx264 -b:v 4000k -pix_fmt yuv420p -colorspace bt709 -s 800x600 test.mp4 >>588を試してて気づいたけど、-vf scale で
flags=+accurate_rndなしの場合: (235, 235, 235) → (232, 235, 232) ★RとBが下がる
flags=+accurate_rndありの場合: (235, 235, 235) → (236, 233, 236) ★Gが下がりRとBは微妙に上がる
という結果になった。
まあ目視で気づくことはまずないだろうけど、もうちょい正確に変換する方法ってないんだろうか? ああ、ごめん。bitexactもつければいいのか・・・。
ということで>>588のコマンドを更新。
ffmpeg.exe -r 30.00 -i US_%d.jpg -vf scale=out_color_matrix=bt709:out_range=tv:flags=+accurate_rnd+bitexact -c:v libx264 -b:v 4000k -pix_fmt yuv420p -colorspace bt709 -s 800x600 test.mp4 >>558-590
詳しくご解説いただきまして、本当にありがとうございます。
最終的にご提示いただいたコマンドを試してみたのですが、
残念ながら大きな変化は起きておらず、白く滲んだような状況は変わらずです、申し訳ありません。
https://i.imgur.com/OffRcQT.png
↑この部分差画像を作っていてわかったのですが、全体が白く滲んでいるわけではなく、
暗いけどなんとか見えていた部分が逆に見えなくなる程に暗くなっていたりと、
素人ながら勝手にコントラスト調整されている?ような感じにも見受けられます…。
ご解説いただいた部分、まだ理解が及んでおりませんで、調べながら調整してみます、ありがとうございます。 >>591
なら多分再生側の問題だね。変な補正が入ってるんだと思う。
1.WMPじゃなく、他の再生ソフトで試してみる。
2.他の再生ソフトでもおかしくなる場合は、グラボ側の画質補正機能が働いてる可能性もあるので
グラボ側の設定を見て画質補正を切ってみる。
また、再生ソフトに内臓デコーダがある場合は、一応DXVAもオフにしてみる。
これらを試してみればいいと思う。 >>592
おはようございます、度々ご対応いただきまして、本当にありがとうございます。
再生環境ということで、早速確認してみます。 質問させていただいたFFMPEGの変換品質の件ですが、解決いたしました。
グラフィックボードドライバのビデオ補正が原因でした。
ffplay.exeで表示確認してみたところ入力JPEGとほぼ同品質、RalPlayerで確認したところWMP12と同様と、
差が出ました。
そのため、アドバイスいただきましたグラフィックボードの補正かと、OFFにしてみたところ、これが的中、
WMP12でもffplay.exeや入力JPEGと見た目には変化を感じられない品質になりました。
別のPC(デスクトップPCのインテルHDオンボードグラフィック)でも確認したところ、そちらはもっとヒドイ補正に
なっており、これもOFFにしたところ入力JPEGにかなり近づいた品質になりました(まだOFFにしきれていない?)
再生環境に違いがあるということは見識不足で途中まで考えもしませんでした、変換品質の問題と思い込んで
見当違いな質問になってしまい、トライしていただいた皆様に余計な作業をさせてしまいました、
申し訳ございませんでした。
とりいそぎ、社内より先に、コチラに報告させていただきました。
最後になりましたが、
いち早く反応してくださいました、ID:dhAIViWL0 様、
詳しい解説とコマンド引数をご提示くださいました、ID:3ylU2AP70 様、
解決に至るための確認方法とご提示くださいました、ID:cDZZ+EwU0 様、
もしかしたらレスをいただくまで至らなくてもトライしてくださったかもしれない住人の皆様、
本当にありがとうございました。
またお世話になることがあるかもしれませんが、そのときも何卒よろしくお願いいたします。 見た感じ医療関係の画像っぽいけどこの手の画像はアーティファクトとか混ざってしまうと医療ミスに繋がりかねないらしいから正確な表示が出来てなかったのはちょっと不安になる
社内に画像、映像関係に詳しい人はいないのかな
あとJPEGだと不可逆圧縮になっててノイズが混じるから他の形式にしたほうがいいのでは? さすがに医療現場で診断に使うためのデータ作りではないと思うが、社内云々と言ってるのは確かに気になるな。
まあ解像度も低いし、ただのサンプル作成だとは思うけど・・・。
医療現場のことは知らんけど、診断に使うようなものなら多分4:4:4とか10/12bit深度とかにするよな・・・? >>595
>>596
ご心配いただいており、恐縮です。
現場端末ではJPEGに変換する前の、画像検査装置から出力された無劣化データを表現していますが、
医師の学会発表用などの資料作りや、専用ビューアが無くても参照できる患者様にサービスとして渡すデータとして、
MPEGを活用しています(医療機関同士のやりとりでは無劣化データが活用されます)。
社内に映像関連に詳しい人間がいないのは痛いところです、ご指導ご鞭撻、ありがとうございます。 音声のリサンプル・フィルタには
libavresample を使った resample
libswresample を使った aresample
の2種類があるけど、前者は切られるみたいだな。
4.0 リリース キタ━(゚∀゚)━! ffmpeg 4.0 リリース | ニコラボ
http://nico-lab.net/ffmpeg_4_0_released/
>>598
libavresample自体が結構前からdeprecatedになってて、
configure時に明示的に--enable-avresampleを指定しないとビルドされなくなってるからね。 >>599
いままでも deprecated になっていたことはもちろんだけど、
4.0 で完全に切られているみたいだよ(詳しくは未確認)。
公式のライブラリ一覧から libavresample が抜けているんだよね。
Libav 由来のライブラリを吸収統合していくという方針があったから、
これもその一つだと思う。
https://www.ffmpeg.org/download.html#release_4.0 >>599
> AMD AMF H.264 and HEVC encoders。NVENC よりも品質はよくないらしい(未確認)
これでAMDのSDKをダウンロードしてきてインストールする手間が省けるようになるのかな? >>600
おや、ほんとだ。
L-SMASH Worksがまだlibavresample依存になってるので、早めに対応しないとまずそうだね。 特定のHEVC 29.97fpsの動画をx264でAVCに変換するとfps指定してもVFRになっちゃう 何気にAV1も追加されたのか、死ぬほど遅いらしいけど、帰ったら興味本位で一回試してみるか 動画時間考えないでエンコード始めたら1日じゃ終わらない可能性 4.0のバイナリがまだどこにもおいてない件に関して バン
バン (∩`・ω・) バン
/ ミつ/ ̄ ̄ ̄/
 ̄ ̄\/___/ ffmpegでarib-ts2assというtsのCCからassファイルを作成してくれるソフトで作ったassファイルを
くっつけると、動画の長さが10時間とか異常に長い不正なファイルが生成されてしまうのですが、
同様の症状の方いらっしゃいます?
ffmpeg -i /nas/videos/temp.webm -i /nas/videos/temp.ts.ass -c copy -c:s copy -map 0:v -map 0:a -map 1:0 -metadata:s:s:0 language=jpn test.mkv
https://github.com/johnoneil/arib
arib-ts2ass コーデックを
-c:v copy -c:a copy -c:s ass
にしてみても変わりませんでした。不思議なのは動画によってはちゃんと長さが狂わずに字幕がつけられる場合
もあることです。既知の不具合だったらお教え願いたいのですが、おま環でしょうか?
また字幕をつける前のtemp.webmなどを再生してみても長さは狂っていないので、やはりass字幕をつける時に狂う
ようなのですが、よくわかりません。 h264のcrfが使えなくて2passでエンコするのめんどい。 >>609
元のタイムスタンプのせいでは?
>>611
「使えない」の意味がわからない
"ffmpeg"で"x264"のエンコ時にcrfを使うことならできる >>613
タイムスタンプは録画開始からの相対時間で狂っているようにも思えないのですが(実際に正常な
ファイルができる場合もある)、当面は字幕無しで行ったほうが良さそうですね。
スレ汚しすみません。 >>614
ass字幕ファイルを、字幕エディタ(Aegisubなど)で見たらどういう感じ?
そこのタイムラインがおかしいのかもしれないよ。 長さが異常なmkvファイルからMKVtoolNiXなどでmksを作ってassファイルを抜き出してみても
特に異常な点は見当たらず・・・
ffmpegで字幕をつけず、mkvmergeを使っても狂う場合(ちゃんとできる場合もある)があるので、
ffmpegの問題ではないかもしれません。当面は字幕なしでいきます。
お付き合いくださってありがとうございました。 バージョンを重ねるごとにnvenc速くなるけど4.0だとどんくらいになるかな 保存用ならハードウェア支援は使うべきではない
質かサイズのどちらかが犠牲になってもいい、ad hoc用 結局h265とvp9、av1はエンコード速度が遅くて難儀する
見れればいいってだけならハードウェア支援 常に我慢できるギリギリまでエンコードの負荷は上がり続けるからな
数年後にもやっぱり長時間CPU回してると思う ストレージなんて今はゴミみたいに安くなってるんだから
設定高めのハードウェアエンコでさくっとエンコしちゃうのが今の流行 ■ このスレッドは過去ログ倉庫に格納されています