レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
Amatsukaze その1
AmatsukazeはTSファイルをエンコしてmp4やmkvにするソフトです。
https://github.com/nekopanda/Amatsukaze/blob/master/README.md
どうぞ
あれ、なぜかsandy bridge(G620T)だとavx用もダメだった。無印ならOKだった
ありがとうございます、一応avxで動きましたが
BlackmanResize、Spline36Resizeを入れると
一時ディレクトリ削除にして止まったり
リサイズ無しで完了まで行きましたが
実用的ではない速度でしたのでインタレ解除は諦める事にしました
>>23
一時ディレクトリ削除に失敗して、でした
Amatsukazeで採取したロゴの精度が低いのですが、こちら外部で生成したロゴデータを取り込む方法はないでしょうか
>>25
ない。そもそも*.lgdファイルへの変換さえまともにできてないから逆変換も作る気ない
ロゴ精度低いとカット位置ミスる事あるし困るね
どれ使うか自動判別しなくていいからロゴファイル直接指定できるようにして欲しい
こっちは設定分ければいいだけだし
さっき放送された地上波のCCさくらが
AMT [info] [フォーマット切り替え解析]
AMT [info] 0.00 -> 0
を最後にコード0xc0000005で落ちてしまう
TsSplitterでPMT分割したらエラー出なかったけど
>>28
分からん。落ちるサンプルが手に入ればいいけど、難しいな・・・
精度の高いロゴ作ろうと思ってBS11のCMカットした番組5個を結合して
それを読ませて解析させたんだけど、放送局不明なロゴ扱いになってしまった、
内部の情報消えてたからかな
何か良い解決方法ご存知な人教えてください
NHKとか音声多重なTSファイルはTsSplitterかけないとうまくいかないんじゃない?
>>31
ありがとう試してみます
>>29
落ちるサンプルとログを用意しました
ttps://www.axfc.net/u/3920776?key=I5FYIm7s
(後で消します。解凍パスはamatsukaze)
よろしくお願いします
>>33
ありがとうございます!落ちるのが再現しました!
直しますね
join_logo_scpのCMカットに関して、別途用意した.lgdファイルの指定ができるようにしていただけないでしょうか。
ロゴ解析の精度が悪いのはロゴの精度が悪いんじゃなくて、amatsukaze側実装の問題
今精度上げてるから待って
>>36
ありがとうございます!期待して待ってます!
https://github.com/nekopanda/Amatsukaze/wiki/%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89%E8%A8%AD%E5%AE%9A%E4%BE%8B
ここにあるやつ以外で、自分が設定していて気に入っているオプション設定とかあったら、教えて欲しい。
出来ればどうしてそのオプションにしているのか?の解説があると最高。
nvenc使った時の設定例とか特に知りたい。
メイン_インタレ解除KFM-VFR(CPU).avs
ポスト_(インタレ解除前提)デバンド+エッジ強調(CPU)
上記でx265エンコをよく使います。容量小さく収まるし綺麗だしで良い。
ただグラボが積めないPCで速度が遅いからCPU処理で最適化して貰えると有り難い。
いつも便利に使わせていただいています。
私の使用オプションは以下のとおりです。
ドラマなど
x265
-P main10 --preset fast --crf 24
メイン_インタレ解除KFM-SVP-60p(CUDA)
ポスト_(インタレ解除前提)デバンド(CUDA)
映画など
x265
-P main10 --preset fast --crf 22
メイン_インタレ解除KFM-24p-UCF-NR(CUDA)
ポスト_(インタレ解除前提)デバンド(CUDA)
海外ドラマは、24FPSなようなので、上記の映画設定を使うか、速度の関係で以下のオプションにしています。
x265
-P main --preset veryfast --crf 24
メイン_インタレ解除KFM-SVP-60p(CUDA)
ポスト_(インタレ解除前提)デバンド(CUDA)
VFRは、我が家のTV(Bravia)ではカクついてしまうようなので、使用をやめています。HandBrakeのVFRは大丈夫だったので、相性でしょうか。
本当は、VFRをメインにしたいのですが。
でも、SVPを使うと、なめらかな映像が出来上がって、感動しました。ただ、海外ドラマのような24FPSのソースのものの変換速度がやたらと落ちるので、軽めのオプションに変更しています。
それでは、今後も便利な機能をよろしくお願いいたします。
Ryzen 2200Gで0.4.xを使っていたとき
エンコーダ:x264
Ryzen定番の --asm=AVX あと--crf=23
メイン :D3DVPのGPU指定なし(Radeonでは認識してくれないので)
ポスト:CPUだけ使って1280x720にリサイズ
オプション設定理由はスマホで見る、2200Gでもそこそこ速い
すみません、要望なのですが
メイン_インタレ解除KFM-SVP-60p(CUDA)のCPU処理版は作成可能でしょうか。
もし可能であれば実装を希望いたします。
あれポストフィルタの中って14bitなのかな
リサイズはメインでやった方が速い?
基本的な質問ですいませんが自動ビットレートをオンにしないとどういうレートの扱いになるのでしょうか?
またcrfオプションで画質基準にしたい場合自動レートはオフにした方が良いですか?
>>43
ポストフィルタも何もしなければ8bitだよ。同梱されてるポストフィルタはConvertBitsで14bitに変換して処理してる
>>44
エンコーダ追加オプションで設定しないとビットレートは設定されない
多分エンコーダのデフォルト動作になる
crfにしたいときはビットレート設定しちゃダメだからオフ
EDCB用録画後実行パッチについて気がついた点です。
出力先フォルダがルートディレクトリだと、実行時にエラーになるようです。
おそらく、\が一つ多いためと思われます。V:\ではなく、V:と指定すれば問題ないようです。
また、これは要望なのですが、TSSplitterにあるような、番組情報やPMTで分割するといった処理を加えていただけませんか。
勝手を言いますが、どうかよろしくお願いいたします。
>>45
なるほど
了解です
>>45
わかりました。
それと2パスって指定したビットレートにするための割り振りを決める物だと思ってましたが
crfの場合は必要ですか?
>>48
それで合ってる。必要ない
>>37
ロゴ解析の精度上げた。うまくいかないところとかあったら教えて
>>50
迅速な修正ありがとうございます!早速試してみます。
>>34
0.6.0.0で問題のtsファイル全体でエンコード完了まで動作確認出来ました
修正ありがとうございます
FFMPEG [info] Stream #0:0: Video: wrapped_avframe, yuv420p10le(bt709, top first), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn
FFMPEG [warn] Warning: generating non standard YUV stream. Mjpegtools will not work.
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:219
Message: failed to write to stdin pipe
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:219
Message: failed to write to stdin pipe
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:784
Message: failed to input frame due to encoder error ...
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:87
Message: DataPumpThread error
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:805
Message: encode failed (encoder exit code: -1073741819)
このエラーの原因を教えてください
>>53
エンコーダが0xC0000005(アクセス違反)で終了した
>>54
どうしたらよいのでしょうか?
>>55
エンコーダに何使ったのかもオプションが何だったのかも
どういう状況で発生したのかもバージョンが何なのかも
一切情報出してないから、知らん
>>56
バージョンは最新でnvencも最新です。
プロファイルはサンプル NvEncどちらもです。
nvencのパス以外何も変えておりません。
>>57
グラボのドライバが古いかおかしくなってるんじゃない?
>>58
ドライバも最新にしてます…
割と新しめですが非対応とかあるのでしょうか?
exeだけ入れ替えてその他のavcodec-58.dll等を入れてないとか
>>59
ドライバやBIOSの設定がおかしいとnvencが動かなくなったりするから、
nvencが動くように頑張ってくれ
>>60
すべていれてます。
>>61
他のアプリケーションでは動きます。
>>57
NVEncCじゃなくNVEncが最新てVolta持ってるのか、すげぇな
ソース映像の素性とエンコードの設定は?
YUVストリームが標準的じゃ無いのが生成されて扱えんのじゃゴルァ!と最初の方に怒られていて
処理継続しようとしても後段でエラー出まくって、やっぱりダメって言うのが見て取れるけど
そのログを見て、何を確認して何を試したんだい?
Nvencの場合はグラボのGPUとNvenccのオプションも添えてくれ
この組み合わせなら落ちないがこれならいける、というふうに条件を詰められると追跡しやすいかも
>>63
すみません NVEncCです。
>>64
ソース映像は地デジやBSの録画ファイルtsです。
エンコードの設定はプロファイルのNVenc使うやつのデフォルトのままです。
>>65
GTX 1080です。
CPU-Zみたいに、エンコード設定がテキスト出力してもらえるとありがたいです。
設定が同じか違うのか?とか、つまらないケアレスミスを無くしたいので。(読み取って設定出来るよう
になっていなくていいので。出力だけでも。)
エンコーダをx265
極力エンコード時間を減らしたいので、メインフィルタを『メイン_インタレ解除KFM-VFR(CUDA).avs』
だけポストフィルタ無しにしてエンコードしているのですが。
>AMT [info] 時間: 30分20.619秒
>AMT [info] Total: 8504.82s, FilterWait: 6287.55s, EncoderWait: 2075.17s
どうもフィルタの時間が遅いようです。
フィルタを指定しないと
>Message: HEVCのインターレース出力には対応していません
のエラーが発生するため、フィルタなしには出来ないようです。H.265はサイズが小さくなってありがたい
のですが。どうにかならないもんでしょうか?多少の動画のクォリティダウンは目をつぶります。
>>67
> AMT [info] Total: 8504.82s, FilterWait: 6287.55s, EncoderWait: 2075.17s
これ分かりにくいけど、
FilterWaitは、フィルタ側がフィルタ処理が終わって待っている時間で、
EncoderWaitは、エンコーダ側が入力(=フィルタ出力)が来なくて待っている時間なんだよね
だから、少ない方が遅い方。この場合、EncoderWaitの方が小さいから遅いのはエンコーダの方
> >Message: HEVCのインターレース出力には対応していません
> H.265はサイズが小さくなってありがたいのですが。どうにかならないもんでしょうか?
H.265はインタレに対応してないから、フィルタなしにできないのはどうにもならんよ
>>66
うちのGTX1060+Amatsukaze0.6.0.0+Nvencc4.09
では問題出なかったわ
>>67
画質低下に目をつぶるならメインフィルタをD3DVPの30pにしてやればかなり速くなるよ
Windows7だと使えないけど...
うちで実験したら1920x1080(120秒)のソースでこんな感じ
エンコーダ:NVEnc (hevc)
メインフィルタ
KFM-VFR:85秒
D3DVP-60p:81秒
D3DVP-30p:41秒
NVEncは「エンコード最大並列数」は2までです。
3以上を指定するとそうなります。
NVEncCのソースを見ると英語及び日本語で書いてあります。
x265エンコードを試しているのですがCPUのみのフィルタで
AMT [info] フィルタパス1 予定フレーム数: 10835
この処理が12fps程度しか速度がでず、続けてのフィルタパスの処理でも同じ程度しか速度がでませんでした。
設定はx265で --crf 22 を入れて、CM解析を有効にして他はデフォルトです。
環境はwindows10、core i7 8700 メモリ16GBです。グラボは積んでいません。
エンコード開始までに物凄く時間がかかるのですが、改善方法はありますでしょうか。
追記で失礼します。
フィルタの処理中にリソースモニターを確認したところ、AmatsukazeのCPU使用率が10%程しか使用されておりませんでした。
こちらはデフォルトからどこか設定を変える必要などありますでしょうか。
>>72
D3DVPでintelかGPU指定なし試したら
使用率10%なのはエンコーダがインタレ解除なんかの処理待ちになるせいでエラーじゃないよ
>>73
確かにフィルタパス2があまりCPU使えてないね
情報不足で申し訳ありません。CPUのみのフィルタは
メイン_インタレ解除KFM-VFR(CPU)
ポスト_(インタレ解除前提)デバンド+エッジ強調(CPU)
こちらの二つを設定しました。
また、別途質問なのですが、メイン_インタレ解除KFM-VFR-NR(CUDA)をCPUだけで処理することは可能でしょうか。
>>53
https://mevius.5ch.net/test/read.cgi/avi/1485415675/785
"Geforceでは、NVIDIAのドライバの制限により3ストリーム以上の同時エンコードが行えません。"
>>76
もうここまで来たらGPU買っちゃいなよ
>>78
すみません、akatsukazeでエンコードするコンパクトなPCが欲しくてベアボーンのdeskmini310で組んでしまいました
グラボを積んでいるのは古いcorei7 2600kのマシンだけなので、出来れば新しいマシンを活用したいところです
>>72
更新した
フィルタパス2がちゃんと並列化できてなかったのを直した
GPUの10分の1くらいの速度は出るようになった
>>76
遅すぎて使えないから入れてないけど、
「メイン_インタレ解除KFM-VFR(CPU).avs」のnr=falseをnr=trueにすればKFM-VFR-NR(CPU)になるよ
>>79
その環境でx265使いたいなら、CPUでインタレ解除するavs書いたほうがいいかも
D3DVP().SelectEven()かTFM+TDecimateかYadifmo2+TDecimateあたり?
画質は低下するけど多分画質厨じゃなければ違いは分からないよ(適当w)
>>80
迅速なご対応ありがとうございます。速度を確認してみます
あと教えて頂いた記述も試してみますね、本当に感謝です
早速試してみました
フィルタパス1:12fps → 16fps
フィルタパス2:50fps → 140fps
速度が大分改善されておりました。
報告になります
以前実装していただいた【メイン_インタレ解除KFM-SVP-60p(CPU).avs】を使用したところ、字幕ファイルの処理後に下記のエラーが発生いたしました
AMT [info] [字幕ファイル生成]
AMT [info] 字幕ファイル生成完了: 0.00秒
AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\FilteredSource.hpp:247
Message: System exception - Illegal Instruction
(D:/Amatsukaze/exe_files/plugins64/QTGMC.avsi, line 862)
(D:/Amatsukaze/exe_files/plugins64/QTGMC.avsi, line 620)
(D:/Amatsukaze/exe_files/plugins64/KFMDeint.avsi, line 69)
(D:/Amatsukaze/exe_files/plugins64/KFMDeint.avsi, line 76)
(D:/Amatsukaze/exe_files/plugins64/KFMDeint.avsi, line 83)
(D:\Amatsukaze\avs\メイン_インタレ解除KFM-SVP-60p(CPU).avs, line 3)
別のPCでも試してみましたが、同じくline 3の部分でエラーが表示されて止まりました。
設定は
x265
メイン_インタレ解除KFM-SVP-60p(CPU).avs
ポスト_(インタレ解除前提)デバンド+エッジ強調(CPU)
他はデフォルトになります。
クライアントログの内容は以下になります。
2018/07/18 07:48:47 [0] Args: D:\Amatsukaze\exe_files\AmatsukazeCLI.exe -i "D:\succeeded\failed\failed\test.ts" -s 1 --drcs "D:\Amatsukaze\drcs\drcs_map.txt" -w "F:\TMP" --chapter-exe "D:\Amatsukaze\exe_files\chapter_exe.exe" --jls "D:\Amatsukaze\exe_files\join_logo_scp.exe" --cmoutmask 2 -o "D:\succeeded\failed\encoded\test.mp4" -et x265 -e "D:\Amatsukaze\exe_files\x265_2.8+19_x64.exe" -j "D:\succeeded\failed\encoded\test-enc.json" --mp4box "D:\Amatsukaze\exe_files\mp4box.exe" -t "D:\Amatsukaze\exe_files\timelineeditor.exe" -fmt mp4 -m "D:\Amatsukaze\exe_files\muxer.exe" -bcm 0.5 -f "D:\Amatsukaze\avs\メイン_インタレ解除KFM-SVP-60p(CPU).avs" -pf "D:\Amatsukaze\avs\ポスト_(インタレ解除前提)デバンド+エッジ強調(CUDA).avs" --jls-cmd "D:\Amatsukaze\JL\JL_標準.txt" --ignore-no-logo
こちらは使用する前になにか別途用意など必要でしょうか。
yadifmod2使ったCPUでのインタレ解除環境の作り方をぶっちろぐって人がブログに書いてるよ
ここは凄く参考になります。答えて下さる方いつもありがとうございます。
NVEncをエンコーダーに選択し、
エンコーダーオプションとして
-output-depth 10 --vpp-afs 24fps=true,timecode=true -c hevc
を指定しても、最終的な出力動画のフレームレートが24pにならないのはどうして
でしょうか?
VLCのコーデック情報によるとフレームレート59.94と表示され、出力された
ファイルサイズも大きめです。
>>84
情報ありがとうございます
ttps://bucci.bp7.org/archives/40997
こちらのサイトを参考に【Amatsukaze\exe_files\plugins64】の中へTIVTC.dll(TIVTC1.0.10)とyadifmod2.dll/yadifmod2_avx2.dll(yadifmod2 0.0.4)をコピーしたのですが、処理結果の内容は全く同じでした
他に前準備で足りないものがあるのでしょうか
もし参照しているページが間違えている場合、正しいページを教えていただけないでしょうか。
>>86
ややこしくしてすいません
84のぶっちろぐの記事はyadifmod2方式のインタレ解除の手順で、KFMとは関係ない別の話題です
yadifmod2インタレ解除を試すには
1.記事にある二つのdllはx64のを使う
2.記事にあるスクリプトを
メイン_ぶっち24p.avsとかにしてavsフォルダに入れて、これを使うプロファイルを作る
です
0.5で使うときにスクリプトに手を入れたかもしれないので
帰宅後に確認します
>>87
ご確認ありがとうございます
こちらこそ良くわかっていなくてすみません
dllはx64の物をコピーしました
また、使用したいのはメイン_インタレ解除KFM-SVP-60p(CPU)なのですが、こちらの参考サイトのスクリプトで同じ内容が再現できるということでしょうか
>>88
違いますよ
>>80 の
>その環境でx265使いたいなら、CPUでインタレ解除するavs書いたほうがいいかも
>D3DVP().SelectEven()かTFM+TDecimateかYadifmo2+TDecimateあたり?
を受けてのレスなんで
>>89
失礼しました。誤解をしていました
こちらの環境がおかしくなっている可能性もあるので、amatsukaze関連を一旦全て消して最初からやり直してみます。
お手数おかけして申し訳ありませんでした
>>90 ご期待に沿えなくてすいません
yadifmod2インタレ解除手順書きかけてたんでまとめときます
https://bucci.bp7.org/archives/40997 を参考にしました
https://github.com/pinterf/TIVTC/releases のTIVTC-v1.0.10.7zをダウンロード
TIVTC-v1.0.10\x64\TIVTC.dll をexe_files\plugins64にコピー
https://github.com/chikuzen/yadifmod2/releases のyadifmod2-0.0.4.zipをダウンロード
yadifmod2-0.0.4\x64\のyadifmod2.dllかyadifmod2_avx2.dllをexe_files\plugins64にコピー
メイン_Yadifmod2_24FPS化(CPU).avsを以下の内容で作成
src=AMT_SOURCE
src.AssumeTFF()
Yadifmod2(mode=0, order=-1, field=-1).TDecimate(mode=1, hybrid=0)
AssumeBFF()
メイン_Yadifmod2_30FPS化(CPU).avsを以下の内容で作成
src=AMT_SOURCE
src.AssumeTFF()
Yadifmod2(mode=0, order=-1, field=-1)
AssumeBFF()
リサイズをする場合は、AssumeBFF()の前の行に
BlackmanResize(1280,720)
などを入れるか
ポスト_リサイズ1280(CPU).avsを以下のように作成
Import("SamplePostFilter.avs")
src=AMT_SOURCE
BlackmanResize(1280,720).Prefetch(4)
IsProcess("AvsPmod.exe") ? ConvertBits(8, dither=0) : last
>>85
そのオプションだと
> Message: vpp-afsオプションに誤りがあります。24fps化する場合は間引き(drop)もonにする必要があります
ってエラーになるけど、どうやってエンコードしたの?
>>83
>>20 と同じではなくて?
それともcore i7 8700でそのエラーが出る?
>>※**(重要)x265でエンコードする場合、インタレ解除が必須なので、GTX1060以上のNVIDIA GPU搭載PC推奨です。CUDAが使えないと残念な速度になります!**
GTX960なんだけど1060のCUDAとそんなに違うの?
というか960だとCUDAのインタレ解除できないの?
>>94
できるよ。1060は快適にできる目安
>>92
自分の環境だとなぜかエラーが出ません。でも、dropがないせいで
正しく出力されないのですから、さっそく試してみたいと思います。
念のため、エンコード時の最初のログをはります。
>C:\Amatsukaze\exe_files\AmatsukazeCLI.exe -i "douga.ts" -s 1048 --drcs
>"C:\Amatsukaze\drcs\drcs_map.txt" -w "C:\Users\foo\AppData\Local\Temp"
> --chapter-exe "C:\Amatsukaze\exe_files\chapter_exe.exe" --jls
>"C:\Amatsukaze\exe_files\join_logo_scp.exe" --cmoutmask 1
>-o "douga.mkv" -et NVEnc -e "C:\NVEnc\NVEncC\x64\NVEncC64.exe"
>-j "douga-enc.json" -eo "-c hevc" -fmt mkv -m "C:\Amatsukaze\exe_files\mkvmerge.exe"
>-bcm 0.5 -f "C:\Amatsukaze\avs\メイン_インタレ解除D3DVP(NVIDIA GPU)(Win8以降).avs"
>--subtitles --jls-cmd "C:\Amatsukaze\JL\JL_標準.txt" --ignore-no-logo --ignore-no-drcsmap
> --no-delogo
>>96
> -eo "-c hevc"
エンコーダオプションが "-c hevc" しか入ってないよ
>>97
確かに渡ってませんね
ありがとうございます。オプション見直してみます。
そう言えばうちの環境ではAmatsukaze0.6.0.0+1060+NvEnc_4.09でサンプルNvenc自動フィールドシフト24fpsが音ズレするようです
0.4.0.1ではtimelineeditorを呼んでいますが
0.6.0.0では呼んでません
出力フォーマットをmp4,字幕はoff,tempにファイルを残す設定にして出力したmp4に
timelineeditorでtempに残したtimecode.txtを適用するとズレは直りました
エンコードの設定はプロファイルのサンプルにある NVEnc 自動 フィールドシフト 24p
ですが、エンコードの途中で失敗します。
プロファイルを選択するとエンコーダの追加オプションに以下が入ります。
--vpp-afs preset=anime,24fps=true,timecode=true -c hevc --profile main10
これがログです
>AMT [info] [エンコーダ起動]
>AMT [info] "C:\NVEnc\NVEncC\x64\NVEncC64.exe" --colorprim bt709 --transfer bt709 --colormatrix bt709 --vpp-afs preset=anime,24fps=true,timecode=true -c hevc --profile main10 -o "C:\Users\syo\AppData\Local\Temp\amt5230083/v0-0.raw" --format raw --y4m -i -
>FFMPEG [info] Output #0, yuv4mpegpipe, to '-':
>FFMPEG [info] Stream #0:0: Video: wrapped_avframe, yuv420p(bt709, progressive), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 200 kb/s, 59.94 fps, 59.94 tbn
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:219
>Message: failed to write to stdin pipe
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:784
>Message: failed to input frame due to encoder error ...
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:87
>Message: DataPumpThread error
>Please set input interlace field order (--interlace tff/bff) for vpp-afs.
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:805
>Message: encode failed (encoder exit code: 1)
パイプの書き込みに失敗していると書かれていますが、どういうことでしょうか?
>>99
おっと、それはまずい
>>100
>FFMPEG [info] Stream #0:0: Video: wrapped_avframe, yuv420p(bt709, progressive), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 200 kb/s, 59.94 fps, 59.94 tbn
>Please set input interlace field order (--interlace tff/bff) for vpp-afs.
afsはインタレ前提だからインタレ解除しちゃダメ
>>99
直した
>>100
前のバージョンだと音ズレするから最新の使ってくれ
>>102
お世話になっております。
0.6.1.0のファイルで上書きして、「サンプルNVEnc 自動フィールドシフト 24p」
を選択し、適用ボタンを押して実行してみました。
メインフィルタもフィルタなしになっています
エンコーダ追加オプションも以下の通りです。
--vpp-afs preset=anime,24fps=true,timecode=true -c hevc
こちらの環境の問題かもしれません。上書きではなく一度全フォルダ削除
してから入れなおしてみる必要があるかもしれません。
エラーメッセージにある"--interlace tff"を追加オプションに入れても動作しませんでした。
ちょっといろいろ試してみます。
>AMT [info] [エンコーダ起動]
>AMT [info] "C:\NVEnc\NVEncC\x64\NVEncC64.exe" --colorprim bt709 --transfer bt709 --colormatrix bt709 --vpp-afs preset=anime,24fps=true,timecode=true -c hevc --profile main10 -o "C:\Users\syo\AppData\Local\Temp\amt5240133/v0-0.raw" --format raw --y4m -i -
>FFMPEG [info] Output #0, yuv4mpegpipe, to '-':
>FFMPEG [info] Stream #0:0: Video: wrapped_avframe, yuv420p(bt709, progressive), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 200 kb/s, 59.94 fps, 59.94 tbn
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:219
>Message: failed to write to stdin pipe
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:784
>Message: failed to input frame due to encoder error ...
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ProcessThread.hpp:87
>Message: DataPumpThread error
>Please set input interlace field order (--interlace tff/bff) for vpp-afs.
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\ReaderWriterFFmpeg.hpp:805
>Message: encode failed (encoder exit code: 1)
根本的な所から判らなくなってきましたが(笑)。Amatsukaze.vbsを起動し。
0.6.1.0 で、エンコード設定タブを選び、一番上の項目プロファィル
「サンプルNVEnc 自動フィールドシフト 24p」を選んだ時、適用ボタンを
押すとプロファイルで表示された名前で、設定が保存されるだけだと
思っていたのだけれど、違うのか?
エンコード時に使用されるのは、プロファイルより下の設定項目だと
思っていたのだけれど。
この状態でエンコードすると
>C:\Amatsukaze\exe_files\AmatsukazeCLI.exe -i "D:\test.ts" -s 23610 --drcs "C:\Amatsukaze\drcs\drcs_map.txt" -w "C:\Users\foo\AppData\Local\Temp" --chapter-exe "C:\Amatsukaze\exe_files\chapter_exe.exe" --jls "C:\Amatsukaze\exe_files\join_logo_scp.exe" --cmoutmask 1 -o "D:\encoded\test-マルチ1.mp4" -et x264 -e "C:\Amatsukaze\exe_files\x264_2851_x64.exe" -j "D:\encoded\test-マルチ1-enc.json" --mp4box "C:\Amatsukaze\exe_files\mp4box.exe" -t "C:\Amatsukaze\exe_files\timelineeditor.exe" -fmt mp4 -m "C:\Amatsukaze\exe_files\muxer.exe" -bcm 0.5 --jls-cmd "C:\Amatsukaze\JL\JL_標準.txt" --ignore-no-logo
>AMT [info] [エンコーダ起動]
>AMT [info] "C:\Amatsukaze\exe_files\x264_2851_x64.exe" --colorprim bt709 --transfer bt709 --colormatrix bt709 --tff --frames 44810 -o "C:\Users\foo\AppData\Local\Temp\amt5242230/v0-0.raw" --stitchable --demuxer y4m -
>FFMPEG [info] Output #0, yuv4mpegpipe, to '-':
>FFMPEG [info] Stream #0:0: Video: wrapped_avframe, yuv420p(bt709, top first), 1440x1080 [SAR 4:3 DAR 16:9], q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn
>y4m [info]: 1440x1080i 4:3 @ 30000/1001 fps (cfr)
>x264 [warning]: interlace + weightp is not implemented
>x264 [info]: using SAR=4/3
>x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
>x264 [info]: profile High, level 4.0
x264を使ったデフォルトの設定が使用されているような気がする。
デフォルトを更新してあげる必要があるのかな?
>>104
エンコ時キューのタブでTSをドロップしてるんだよね?
そのときの設定ダイアログのプロファイルがデフォルトのままなんじゃないの?
そこをサンプルNvenc��に切り替える必要あり
>>105
その通りでした。エンコードしたいファイルをドロップした時に
プロファイルを指定するという事が理解できていませんでした。
助かりました。ありがとうございます。
NVEncはGPU世代で機能は同じ、性能は動作クロック
モデル差は同時エンコードの制限数
世代差は処理速度の違い(Pascal除く)
基本的にGEFORCEとNVS、下位Quadroは並行処理数は2まで、Quadroの中堅以上とかTITANは無制限になってる
あとNVDec/NVEncのエンジンの搭載数も違っていて、GP104以上は2基搭載されている
お陰でGTX1080以上だと2本並行処理しても速度が落ちない
※以前はGP104でも1070Ti以外で2エンジン有効になっていなかった
細かいネタだとPascal世代でマクロブロック捜査が強化されていて、HEVCで相変わらずBフレームは使えないが画質が僅かに改善してるのと、
H264比でHEVC処理時の速度低下が大幅に少なくなってる
お陰で再生環境的にHEVCでも全然OKなら、PascalのHEVCで処理した方が、QSVのH264 LA-ICQで処理するより、速くて画質容量比が良くなる
安価にNVEnc環境得たいならGTX1050/1050Ti
予算が有ればGTX1070〜
GT1030はNVDecしか積んでいない(CUDAは可
すま、TITANじゃなくてTESLAの間違い
TITANはコンシューマ扱いで同時並行数2
速度の目安(1920x1080)
Pascal
H264 630〜650fps
HEVC 420〜440fps(H264の概ね2/3、前世代のH264並の速度
Maxwell第2世代
H264 440〜460fps
HEVC 220〜230fps(H264の概ね半分
※NVEncC単独でブン回したorデコーダが十分高速な場合(動作クロックの差込み
製品毎のエンジンの動作クロック差で前後する
Maxwell第1世代のGTX750/750TiだとH264のみ(速度は第2世代比でほぼクロック差通り
Kepler世代(第1代NVEnc)だとクロック差込みで2/3ぐらいの速度
NVEncはHEVCで爆速ってのが旨味なんで、導入するならPascal世代推奨
Maxwell第2世代なら、HEVC使ってQSVのH264に速度対抗という感じ
小ネタで、僅かに出回ったGP104版GTX1060 3Gについても、エンジン数制限解除後のSDKとドライバだとエンジン2基使えるそうな
EDCB用のバッチ生成に関してなのですが、実行時にamatsukazeが既に起動してエンコード中の場合、順番待ちに追加されるという認識であっていますか
実行時にamatsukazeの多重起動エラーが複数回表示され止まってしましました。
録画とエンコードは同じPCで処理しており、NASも通していない状態です。
アプデてフィルタ使えるようになったわ、サンクス
>>110
スタンドアロン版でエンコードしているとそうなるようです。あらかじめサーバー版を起動して、クライアント版でエンコードしていれば、リストに追加されます。私も最初悩みました。
プロファイル サンプル_NVEnc 24p 自動フィールドシフトを使用しています。
ログに情報がないですね。何かの例外が出て落ちたのは判るのですが。何か必要な情報はありますか?
>C:\Amatsukaze\exe_files\AmatsukazeCLI.exe -i "dummy.ts" -s 211 --drcs "C:\Amatsukaze\drcs\drcs_map.txt" --resource-manager 3204:3528 -w "C:\Users\dummy\AppData\Local\Temp" --chapter-exe "C:\Amatsukaze\exe_files\chapter_exe.exe" --jls "C:\Amatsukaze\exe_files\join_logo_scp.exe" --cmoutmask 1 -o "D:\encoded\20171111-233000-アイドルマスター SideM 第6話「二人が選ぶVictory」.mkv" -et NVEnc -e "C:\NVEnc\NVEncC\x64\NVEncC64.exe" -j "D:\encoded\20171111-233000-アイドルマスター SideM 第6話「二人が選ぶVictory」-enc.json" -eo "--vpp-afs preset=anime,24fps=true,timecode=true -c hevc" -fmt mkv -m "C:\Amatsukaze\exe_files\mkvmerge.exe" -bcm 0.5 --subtitles --jls-cmd "C:\Amatsukaze\JL\JL_標準.txt" --ignore-no-logo --ignore-no-drcsmap --no-delogo
>Amatsukaze - Automated MPEG2-TS Transcoder
>Built on Jul 19 2018 08:44:06
>Copyright (c) 2017-2018 Nekopanda
>AMT [info] [設定]
>AMT [info] 入力: dummy.ts
>AMT [info] 出力: D:/encoded/dummy
>AMT [info] 一時フォルダ: C:\Users\dummy\AppData\Local\Temp\amt5325660
>AMT [info] 出力フォーマット: Matroska
>AMT [info] エンコーダ: C:\NVEnc\NVEncC\x64\NVEncC64.exe (NVEnc)
>AMT [info] エンコーダオプション: --vpp-afs preset=anime,24fps=true,timecode=true -c hevc
>AMT [info] 自動ビットレート: 無効
>AMT [info] エンコード/出力: 1パス/通常
>AMT [info] チャプター解析: 無効(ロゴ必須)
>AMT [info] 字幕: 有効
>AMT [info] DRCSマッピング: C:\Amatsukaze\drcs\drcs_map.txt
>AMT [info] サービスID: 211
>AMT [info] デコーダ: MPEG2:default H264:default
>AMT [info] エンコーダでのインタレ解除: VFR化
>AMT [info] [PAT更新]
>AMT [info] サービス 211 を選択
>AMT [info] [PMT更新]
>AMT [info] PID: 0x0140 TYPE: MPEG2-VIDEO
>AMT [info] PID: 0x0141 TYPE: ADTS AAC
>AMT [info] PID: 0x0138 TYPE: 字幕
>AMT [debug] 必要な情報は取得したのでTSを最初から読み直します
>AMT [info] 開始Clock: 34056309513
>AMT [info] 音声パーサ 0 を追加
>AMT [info] [音声0フォーマット変更]
>AMT [info] チャンネル: ステレオ サンプルレート: 48000
>AMT [info] [映像フォーマット変更]
>AMT [info] サイズ: 1920x1080 (16:9) FPS: 30000/1001
>AMT [info] [PMT更新] ストリーム時刻: 0分12.69秒
>AMT [info] PID: 0x0140 TYPE: MPEG2-VIDEO
>AMT [info] PID: 0x0141 TYPE: ADTS AAC
>AMT [info] PID: 0x0138 TYPE: 字幕
>AMT [info] [PMT更新] ストリーム時刻: 27分12.65秒
>AMT [info] PID: 0x0140 TYPE: MPEG2-VIDEO
>AMT [info] PID: 0x0141 TYPE: ADTS AAC
>AMT [info] PID: 0x0138 TYPE: 字幕
>AMT [error] Exception thrown at x:\switch\visual studio 2015\projects\amatsukaze\amatsukaze\CoreUtils.hpp:370
>Message: failed to read from file
SideM…(笑)
エンコーダ追加オプションに
--vpp-afs preset=cinema,coeff_shift=192,timecode=true -c hevc --vbrhq 2000 --qp-init 23:25:27 --preset quality --aq
これを指定してやっていますが無駄な所ありますでしょうか?
もっと高速化出来るはずだと思うんですが無知なのでわからないのです・・・
>>113
報告ありがとう
ちょっと原因分からないけど、それっぽいところ直した
新しいバージョン(0.6.3.0)試してみて
>>116
ありがとうございます。
とりあえず落ちたデータの3つをエンコードしてみましたが、エラーで落ちなく
なっていました。
出来上がったデータもパッと見はおかしくないみたいです。助かりました。
>>115
nvencが幾ら爆速でも、パイプで渡されるペース以上の速度は出せない
0.6.4.0でエラーになりました。
0.6.3.0と同じ設定、同じファイルを使いました。
0.6.3.0ログの一部
AMT [info] [映像フレーム統計情報]
AMT [info] 時間: 60分2.299秒
AMT [info] FRAME=0 DBL=0 TLP=0 TFF=107904 BFF=15 TFF_RFF=15 BFF_RFF=15
AMT [info] (PTS_Diff,Cnt)=(3003,107918)
AMT [info] (PTS_Diff,Cnt)=(4503,15)
AMT [info] (PTS_Diff,Cnt)=(4506,15)
AMT [info] TS解析完了: 50.90秒
AMT [info] [フォーマット切り替え解析]
AMT [info] 0.00 -> 0
AMT [info] [CM判定用音声構築]
AMT [debug] 音声-1-0は26フレーム目から開始
AMT [info] [ロゴ解析]
FFMPEG [warn] Multiple frames in a packet.
FFMPEG [warn] Invalid pkt_timebase, passing timestamps as-is.
FFMPEG [warn] Invalid pkt_timebase, passing timestamps as-is.
AMT [info] 0/107962
AMT [info] 5000/107962
0.6.4.0ログの一部
AMT [info] [映像フレーム統計情報]
AMT [info] 時間: 60分2.299秒
AMT [info] FRAME=0 DBL=0 TLP=0 TFF=107904 BFF=15 TFF_RFF=15 BFF_RFF=15
AMT [info] (PTS_Diff,Cnt)=(3003,107918)
AMT [info] (PTS_Diff,Cnt)=(4503,15)
AMT [info] (PTS_Diff,Cnt)=(4506,15)
AMT [info] TS解析完了: 182.00秒
AMT [info] [フォーマット切り替え解析]
AMT [info] 0.00 -> 0
AMT [info] [CM判定用音声構築]
AMT [debug] 音声-1-0は26フレーム目から開始
AMT [info] [ロゴ解析]
FFMPEG [warn] Multiple frames in a packet.
FFMPEG [warn] Invalid pkt_timebase, passing timestamps as-is.
FFMPEG [error] ctx->cvdl->cuvidCreateDecoder(&ctx->cudecoder, &cuinfo) failed -> CUDA_ERROR_OUT_OF_MEMORY: out of memory
FFMPEG [error] cuvid decode callback error
AMT [warn] avcodec_send_packet failed
FFMPEG [error] ctx->cvdl->cuvidDecodePicture(ctx->cudecoder, picparams) failed -> CUDA_ERROR_INVALID_HANDLE: invalid resource handle
以下、エラーが続く。
なお、処理したファイルは字幕が取り出せないファイルです。
>>119
今回変更したとこと違うし、cuda out of memoryって出てるから環境的な問題な気がする
他にGPUのメモリ使ってるプログラムがいるのかな
字幕が取り出せないのは気になる
>>120
0.6.3.0を使っていましたが、0.6.4.0を上書き。
0.6.4.0のログ状態。
エラーになったので0.6.3.0を上書き。
0.6.3.0のログ状態。
この間、何も変えていません。
動いているアプリはありません。
字幕が取り出せないのは気になります。
AMT [info] [PMT更新]
AMT [info] PID: 0x0140 TYPE: MPEG2-VIDEO
AMT [info] PID: 0x0141 TYPE: ADTS AAC
AMT [info] PID: 0x0146 TYPE: 字幕
AMT [debug] 必要な情報は取得したのでTSを最初から読み直します
AMT [info] 開始Clock: 97199314034
AMT [info] 音声パーサ 0 を追加
AMT [info] [音声0フォーマット変更]
AMT [info] チャンネル: ステレオ サンプルレート: 48000
AMT [info] [映像フォーマット変更]
AMT [info] サイズ: 1440x1080 (16:9) FPS: 30000/1001
AMT [info] [PMT更新] ストリーム時刻: 0分5.66秒
AMT [info] PID: 0x0140 TYPE: MPEG2-VIDEO
AMT [info] PID: 0x0141 TYPE: ADTS AAC
AMT [info] PID: 0x0145 TYPE: 字幕
AMT [info] PID: 0x0146 TYPE: 字幕
字幕が取り出せる場合は、最初の PID: 0x0146 TYPE: 字幕 の前にも
PID: 0x0145 TYPE: 字幕 があります。
ログの詳細は追っかけてありません。
どこかにファイルをアップした方が良いですか、短期なら怒られないかな?!
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板