いつもサポートありがとうございます
0.9.4.2ですが、ロゴ解析→エンコードの後、
AMT [error] Exception thrown at CoreUtils.hpp:263
とエラーが表示されファイルが開けませんとなり止まってしまいます
0.9.4.1のファイル一式に戻すと問題なく完了しております
おまかんの可能性はありますが、念のためご確認いただけますでしょうか
ご連絡ありがとうございます。
テスト不足の設定で問題が発生しておりました。
ご指摘いただいた問題について、0.9.4.3で解消できていると思います。
https://rigaya34589.blog.fc2.com/blog-entry-1679.html
rigayaさん早速のご対応ありがとうございます!
無事エンコード完了できるようになりました。
いつもありがとうございます!
初めまして。
サイトを参考にAmastukazeを使用しCMカットやエンコードをしたく、
・Amastukaze 改造版 0.9.4.3
・Aviutl_QSVEnc_7.42.zip
をサイトよりダウンロードさせていただきましたが、エンコード開始後にエンコードが失敗し「失敗 Amatsukaze.exeはコード1で終了しました」との事で上手くいきません。
ファイルダウンロード後にやったことは、
・Amatsukaze内>基本設定>QSVEncCパス欄に64bitのQSVEncC64.exeのパスを指定
・プロファイル(デフォルト)>エンコードをQSVEencに変更
・出力選択を「CMをカット」に変更
・「チャプター・CM解析を無効にする」のチェックを外す
を変更し、tsファイルをドラッグ&ドロップで追加し、右クリック「ロゴ生成」でロゴを生成し、エンコード開始した後10秒ほどで失敗となってしまいます。
他に何か設定等が必要でしょうか?
また、Aviutl_QSVEnc_7.42.zipを解凍後はAmatsukaze内に移動していますが、これが問題でしょうか?
特に設定方法に問題はないように思います。
また、Aviutl_QSVEnc_7.42.zipのzipファイルに関しては、解凍後はzipファイル自体は必要ありません(どこでもよいです)。
開始した後10秒ほどで失敗となると、そもそもエンコード開始前のフレーム解析の前で終了していそうです。右側の「コンソール」にエラーの詳細が記載されているかもしれませんので、参考としてみてください。
お返事ありがとうございます。
その後も再ダウンロード等色々試していますが、どうも上手くいきません・・・
とりあえず最低限のことをしてみようと思い、CMカットはせずにまずはQSVEncCでのエンコードを目指し、再ダウンロード後に下記の手順のみを行いました。
・Aviutl_QSVEnc_7.42.zipを解凍し、フォルダごとAmatsukaze内に配置
・Amatsukaze内>基本設定>QSVEncCパス欄に64bitのQSVEncC64.exeのパスを指定>適用
・プロファイル(デフォルト)>エンコードをQSVEencに変更>適用
・tsファイルをドラッグ&ドロップで追加し、通常モード選択
・エンコード開始後数秒でエラーになります
右側の「コンソール」にエラーの詳細をコピペいたしますが、何か原因が分かりますでしょうか?
─────以下コピペ─────
InitSession(d3d11): undeveloped feature..
InitSession(d3d9): undeveloped feature..
Failed to init session: undeveloped feature..
QSVDevice::init: failed to initialize session: undeveloped feature..
QSVEncC.exe finished with error!
AMT [error] Exception thrown at ProcessThread.hpp:233
Message: failed to write to stdin pipe
AMT [error] Exception thrown at ProcessThread.hpp:93
Message: DataPumpThread error
AMT [error] ↓↓↓↓↓↓エンコーダ最後の出力↓↓↓↓↓↓
AMT [error] InitSession(d3d9): undeveloped feature..
AMT [error] Failed to init session: undeveloped feature..
AMT [error] QSVDevice::init: failed to initialize session: undeveloped feature..
AMT [error]
AMT [error]
AMT [error] QSVEncC.exe finished with error!
AMT [error] ↑↑↑↑↑↑エンコーダ最後の出力↑↑↑↑↑↑
AMT [error] Exception thrown at Encoder.hpp:134
Message: エンコーダ終了コード: 0xffffffc9
─────以上─────
補足になりますが、その後も色々調べており、CPU自体がQSVに対応していない可能性もあると見かけましたが、Core i5-13500でQSV対応しているCPUでした。
またWindows11にグラボを載せていますが、グラボを載せていると内蔵GPUが無効化されQSVを使えないという記事も見かけました。
実際はどうなっているのか分かりませんが、グラボを載せているときはQSVは使用不可なんでしょうか?
もしそうであれば有効化する方法があるのか、もしくはNVEncを使うのが一般的でしょうか?
質問ばかりで申し訳ありませんが、もしご存じであればご教授いただければ幸いです。
なんらかの理由でQSVの初期化に失敗しているようです。Intelの内蔵GPUが有効になっているか、すなわちタスクマネージャに表示されているかを確認の上、Intelのグラフィックドライバを再インストールすると治る可能性があります。
dGPU付きでQSVを使用する場合には、BIOSでiGPU Multi Monitorを有効にし、Intel 内蔵GPUを強制的に有効にする必要があります。
dGPUがGeforceなら、NVEncを使用するのももちろん可能なはずです。
いつもサポートありがとうございます。
0.9.4.3ですが、複数のファイルを並列でエンコードすると、一部の結果が失敗と表示されます。また、失敗した結果はmp4ファイルは問題なく生成されていますが、関連ファイルがコピー/移動されていません。
ログを比較したところエンコード最後の
---成功ログ↓---
AMT [info] Mux完了: 7.38秒
AMT [info] [出力ファイル]
AMT [info] 0: (出力mp4ファイル)
AMT [info] [入力->出力マッピング]
AMT [info] 0分0.000秒 - 30分30.962秒 -> 0
1 個のファイルを移動しました。
1 個のファイルを移動しました。
1 個のファイルを移動しました。
(終了)
-------------
---失敗ログ↓---
AMT [info] Mux完了: 13.12秒
AMT [info] [出力ファイル]
AMT [info] 0: (出力mp4ファイル)
AMT [info] [入力->出力マッピング]
AMT [info] 0分0.000秒 - 30分30.962秒 -> 0
(終了)
-------------
部分以外に変化はありませんでした。
該当の結果をリトライすることで、成功するのですが、改善方法がわかりません。
解決方法などございましたら、教えていただければ幸いです。
おそらく設定や使用方法等によるのかもしれませんが、「関連ファイル」というは具体的にどういったファイルのことをおっしゃっていますでしょうか。
私自身もAmatsukazeの仕様を把握しきれていないので、ぜひご教示いただければと思います。
最終的な出力mp4ファイルが出力されていれば、それ以外のファイルは(設定次第かもしれませんが)不要と思いますが…
私自身のログについてx264、svt-av1、QSVEnc、NVEncでエンコードしたログをそれぞれ確認しましたが、
AMT [info] 0分0.000秒 - 30分30.962秒 -> 0
の部分までで正常終了していて、「1 個のファイルを移動しました。」のようなログは(正常終了時も)いずれのエンコーダでも確認できませんでした。
すみません
おさおらく、実行後batでのエラーのように感じます。
amatsukazeの問題ではなさそうです。申し訳ございません。
個人的に、tsファイル、エンコード済みファイルの両方を保存したいため、実行後に以下のbatを処理しています。
------
@echo off
for /f "delims=" %%i in ("%IN_PATH%") do set IN_DIR=%%~dpi
move "%IN_PATH%" "%IN_DIR%.."
move "%IN_PATH%.err" "%IN_DIR%.."
move "%IN_PATH%.program.txt" "%IN_DIR%.."
------
tsukijima様が制作しているTVRPを使用する際に、番組情報ファイルがない場合はエンコード時刻による、ソートを行っているため、".ts.program.txt"のコピーも行っていました。
SCRenameでファイル名の変換も行っているため、".ts.program.txt"を見つけることができずエラーとなってしまうものかと思います。
ご迷惑をおかけしました。
実行後batでのエラーの可能性が高いこと承知しました。
たしかに、「1 個のファイルを移動しました。」はmoveコマンドの出力として出そうです。
ご連絡ありがとうございました。
先ほどのものです。
機能のリクエストなのですが、「EDCB用録画後実行bat」にテストモードでの追加を選べたらと思います。
先述通り、入力ファイルの移動がないようにしたいためです。
個人的な要望で申し訳ないです。
検討していただければ幸いです。
ごめんなさい、「EDCB用録画後実行bat」についてですが、そういったものはAmatsukazeそのものでは配布していなかったと思います。Amatsukazeには、「実行後バッチ」「実行前バッチ」「追加時バッチ」というものがあるという認識です。
また、テストモードで追加してしまうと、実際の処理はされなくなってしまうのではないかと思います…。
もしかするとあまりよく理解できていないのですが、下記サイトを見ると入力ファイル移動を無効化するのであれば、実行後バッチで対応できるようです。
https://enctools.com/amatsukaze-no-move/
初めまして。
AmatsukazeとQSVEncを使わせて頂いております。
今回はエンコードエラーが発生しましたため、お問い合わせさせていただきました。
症状としましては、ニコニコ実況コメントを動画に焼き込む機能を使用した際、QSVEncで2時間近くの番組をエンコードをしますとエラーが発生いたします。
私も原因を探そうといろいろな検証を行いましたが、特定はできませんでした。
また別のPCでエンコードした場合、成功する場合もございます。
私の録画PCの環境の問題かもしれませんが、一度ご確認ただけませんでしょうか。
以下環境になります。
PC環境
OS : Windows 11 Pro 22H2
CPU:Intel(R) Celeron(R) N5105
RAM:16.0 GB
ソフトウェア
Amatukaze 改造版 0.9.4.3
QSVEnc 7.46
エンコーダ追加オプション
--vpp-subburn @AMT_TEMP_ASS_NICOJK_720S@
エラーが起きる条件
2時間以上の番組をニコニコ実況コメントを焼きこみながらエンコード
(1時間30分の番組ではエラーが発生しないようです)
以下エンコードログ
-------------------------------------------------------
Failed to allocate memory: out of hots memory.
AMT [error] Exception thrown at ProcessThread.hpp:233
Message: failed to write to stdin pipe
AMT [error] Exception thrown at ProcessThread.hpp:93
Message: DataPumpThread error
AMT [error] ↓↓↓↓↓↓エンコーダ最後の出力↓↓↓↓↓↓
AMT [error] Ext. Features RepeatPPS
Failed to allocate memory: out of hots memory.
AMT [error]
AMT [error]
AMT [error] ↑↑↑↑↑↑エンコーダ最後の出力↑↑↑↑↑↑
AMT [error] Exception thrown at Encoder.hpp:134
Message: エンコーダ終了コード: 0xc0000005
ご指摘ありがとうございます。
調べてみましたが、QSVEncで--vpp-subburnでlibassを使って字幕描画を行うところでメモリリークが発生していて、多くの字幕を描画しようとするとメモリ不足になってしまう、という問題とわかってきました。
今のところうまい解決策が見つかっていないのですが、もう少し調べて対策したいと思います。
さらに調べたのですが、残念ながら原因や問題の解消方法、回避策が見つからない状態です。申し訳ありません。
--vpp-subburnはOpenCLという仕組みでGPUで字幕を焼き込むのですが、このOpenCLを使用するとメモリ使用量が継続的に増加しているという問題があるようです。
ただ、環境によって違いがあるようで、問題が発生したりしなかったりで謎が深いです…。
問題あり
Win11 i9 12900K
Win11 Arc A380
問題なし
Win11 i5 10357G7
Win10 i7 7500
Ubuntu 22.04 i3 N305
すぐに修正できそうになく、申し訳ありません。
ご返信、ご確認ありがとうございます。
コメントが多すぎてメモリ不足になっていた事、承知いたしました。
また、多くの環境での調査もしていただきまして、ありがとうごさます。
個人的な特殊な使い方にも関わらず誠に恐縮ではございますが、引き続きよろしくお願いします。
ver0.9.4.3にてエンコ後のmp4が
解析チェック入れててもチャプター情報が入らない現象が起きてます
エンコードには同梱のx264を使用
中間生成物のt10-0-0-main.mp4にはチャプターがきちんとMuxされてますが
その後字幕をMuxする際にチャプターが何故か消えてしまうという流れです
MediaInfoでもチャプター情報は消失してるようで見られませんでした
時間がなくきちんと検証できてませんが字幕のある元のファイルを解析ありのcmカットで処理すると発生するものがあるようです
当方では実写のファイルで現象がみられます
0.9.3系で発生することはありませんでしたので、
おそらく0.9.4系での仕様変更で発生しているのではないかと思われます
旧版仕様でエンコできるようになれば対症療法になりそうです
ご指摘と情報ありがとうございます。
mp4出力で、CFR、チャプターあり、字幕ありの場合にチャプターが落ちてしまう問題がありました。(自分自身はKFMかafsで処理するため、VFRになってしまうので気づきませんでした…。)
0.9.4.4で修正を試みましたのでお試しください。
https://rigaya34589.blog.fc2.com/blog-entry-1716.html
Amatsukaze_0.9.4.3でコード1で終了しましたと出てエンコードできないものがあります。ログを見てみるとAMT [info] ロゴ・CM解析完了: 125.34秒
AMT [info] [字幕構築]
AMT [debug] 音声0-0は31フレーム目から開始
AMT [info] 出力音声フレーム: 85753(うち水増しフレーム0)
AMT [info] 未出力フレーム: 31(0.036%)
AMT [info] 音ズレ: 平均 4.50ms 最大 4.50ms
AMT [info] [チャプター生成]
AMT [info] ファイル: 0-0-0 本編
AMT [info] 0: A
AMT [info] 2608: A90Sec
AMT [info] 5306: A10Sec
AMT [info] 5605: B
AMT [info] 20440: C
AMT [info] 40010: C90Sec
AMT [info] 42708: D5Sec
AMT [info] 42858: D10Sec
AMT [info] [字幕ファイル生成]
AMT [info] 字幕ファイル生成完了: 0.01秒
AMT [info] フィルタ入力: 43158フレーム 30000/1001fps (インターレース)
AMT [info] フィルタ出力: 34526フレーム 24000/1001fps (プログレッシブ)
AMT [info] [エンコード開始] 1/1 本編
AMT [info] 入力映像ビットレート: 17990 kbps
AMT [info] バッファリングフレーム数: 16
AMT [info] 1/1パス エンコード開始 予定フレーム数: 34526
AMT [info] [エンコーダ起動]
AMT [info] "D:/PRAM/USE/Amatsukaze_0.9.4.3/exe_files/x264_3106_x64.exe" --colorprim bt709 --transfer bt709 --colormatrix bt709 --crf 16 --no-deblock --frames 34526 -o "D:/PRAM/USE/AmatsukazeTemp/amt15487717/v0-0-0-main.raw" --stitchable --demuxer y4m -
AMT [info] y4m format: YUV420p10 progressive 1280x720 SAR 1:1 24000/1001fps
AMT [error] Exception thrown at ProcessThread.hpp:233
Message: failed to write to stdin pipe
y4m [info]: 1280x720p 1:1 @ 24000/1001 fps (cfr)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x264 [info]: profile High, level 3.1, 4:2:0, 8-bit
x264 [error]: malloc of size 3325760 failed
x264 [error]: x264_encoder_encode failed
aborted at input frame 45, output frame 0
AMT [error] Exception thrown at ProcessThread.hpp:93
Message: DataPumpThread error
AMT [error] ↓↓↓↓↓↓エンコーダ最後の出力↓↓↓↓↓↓
AMT [error] x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
AMT [error] x264 [info]: profile High, level 3.1, 4:2:0, 8-bit
AMT [error] x264 [error]: malloc of size 3325760 failed
AMT [error] x264 [error]: x264_encoder_encode failed
AMT [error]
AMT [error] aborted at input frame 45, output frame 0
AMT [error] ↑↑↑↑↑↑エンコーダ最後の出力↑↑↑↑↑↑
AMT [error] Exception thrown at Encoder.hpp:134
Message: エンコーダ終了コード: 0xffffffff
Amatsukaze側でなく、x264でエラーが発生しています。下記のようにあるので、メモリ不足の可能性があると思います。
x264 [error]: malloc of size 3325760 failed
x264 [error]: x264_encoder_encode failed
よろしくお願いいたします。
再度コード1で終了したファイルのみエンコードしたら無事完了できました。ありがとうございます。
最近、Amatsukazeデビューをして、非常に便利に使わせていただいております。
一つ機能要望をしてもよろしいでしょうか?
Exploereから複数ファイルを選択してキューにドラック&ドロップを行うと、必ずと言って良いほど、順番が崩れてしまいます。
具体的にはファイル順でソートされている場合、一番最後のファイルが先頭にきて、続いて一番最初のファイルから順番にキューイングされます。
こちらだけの環境の問題ないのか、実は最新版では解消されているのか確認していないのですが(現在ver.0.9.4.3を使っています)、もし正しく選択したファイル順(Explorerのソートで表示されいる状態にて上から選択している順)にキューイングできると幸いです。(既に実装されていたら申し訳ございません)
エクスプローラーからのドラッグ&ドロップですが、基本的には「ドラッグ & ドロップをするときに(最後に)選択されていたファイル」が先頭に来るはずです。これはAmatsukazeだけでなく、複数選択時のエクスプローラーからのドラッグ & ドロップ動作の基本的な仕様だと思います。
なので、例えば複数選択時に ファイル1 → 2 → 3の順に選択して、そのままAmatsukazeのウィンドウにドラッグ & ドロップすると、(最後に3を選んだ状態なので、)3→1→2の順の登録になります。
エクスプローラーの順、すなわち1→2→3の順にしたい場合は、ファイル1,2,3を選択したのち、一度クリックを離して、(複数選択のまま)改めてファイル1をクリックしてからドラッグ & ドロップしていただけると、所望の順序になると思います。(伝わるでしょうか…)
ひと手間かかりますが、さほど面倒ではないと思うのでまずはお試しいただきたく思います。
rigaya さま
迅速なご回答ありがとうございます!
仕様伝わりました。可能であればプログラム側でドラッグ&ドロップイベント時にファイルリストが取れて、その配列をソートしたものをキューのリストに登録していただけると非常に嬉しいのですが、まずは仕様が分かったので、今後はそれで運用してみます。
それでは今後も便利に使わせていただきます。
個人的には、「最後に選択したファイルが最初に登録される」仕様を意図的に使うこともあるので、自動ソートにはしたくないというのがあります。
操作で解決できる問題と思いますので、すみませんがまずは現状でご利用ください。
よろしくお願いいたします。
amatsukazeのサポートありがとうございます。
バッチファイル用変数の
SERVICE_IDやSERVICE_NAMEを
エンコーダー追加オプションで参照する方法はないでしょうか?
事前にts.trim.avsを作成して解析なしで--vpp-delogoを
チャンネル毎にプロファイルを変更して利用してるのですが
ロゴパックを用意して
--vpp-delogo-select SERVICE_ID
などと出来ればプロファイルをチャンネル毎に作成する必要がないので
あれば助かる機能だと思います。
ざっと確認してみました。
Amatsukazeのログにある
サービスID: 23608
の値でしたら置き換え可能にできるように思います。
具体的には上記例だと
"@SERVICE_ID@" → "23608"
のように置き換えることはできそうです。
時間を見つけて実装したいと思います。
サービスIDの置き換えですが、Amastukaze 改造版 0.9.5.0で対応してみましたので、お試しください。
https://rigaya34589.blog.fc2.com/blog-entry-1736.html
反映を確認いたしました。
無事、用意したロゴパックファイルから--vpp-delogo-select "@SERVICE_ID@"でロゴを指定してロゴ削除する事が出来ました。
今までチャンネル毎にプロファイル作成して更に解像度や音声エンコード等で個別に作成してたのが嘘のように楽になりました。
本当に感謝しております。
ありがとうございました。
確認してありがとうございます。無事動作し、有効に活用できそうとのことでよかったです。