NVEncについてをクリックするとQSVEncのblog-category-10に飛ばされてしまいます
3.0を導入済みのフォルダにauoフォルダの中身を直接上書きで大丈夫でしょうか?
>NVEncについて
次回更新時には修正します。
>auoフォルダの中身を直接上書き
問題ありません。
今まではNvencで普通にエンコード出来ていたのですが、最近あるフレームになると必ず「メモリが足りません」のダイアログが出てきました。
x264や通常のAVI出力では問題なく出力できます。これはNvenc側の問題なのでしょうか?それともAviUtlの問題でしょうか?
スペックはi76700K、GTX10606G、メモリは16GBです
NVEncで出力するとメモリを結構使うのでそれが原因のひとつかもしれません。(Aviutlは32bitなので…)
もしAviutlの設定で、「LargeAddressAware」をオンにしていない場合には、オンにすると改善するかも知れません。
NVENC3.01+自動フィールドシフト 高速化版 +19
Win8.1 Intel Core i7 3770K GTX1060 memory 16G
aviutil LargeAddressAwareはオン
以上の環境でmpgなファイルをエンコードしますと
ファイルの出力に失敗いたします。
一度失敗すると、別のファイルもエンコード失敗し続けます。
たまに成功すると、しばらくは成功し続けます。
x264gui では同じ条件で失敗したことはありませんし、NVENCでも
自動フィールドシフトをつかわなければ失敗はありません。
どのような理由が考えられるでしょうか?
nvenc [info]: NVEnc 3.01 (x86), using NVENC API v7.0
nvenc [info]: OS Version Windows 8.1 (x64)
nvenc [info]: CPU Intel Core i7-3770K @ 3.50GHz [TB: 4.20GHz] (4C/8T)
nvenc [info]: GPU #0: GeForce GTX 1060 6GB (10 EU) @ 1771 MHz (375.70)
nvenc [info]: Input Buffers CUDA, 32 frames
nvenc [info]: Input Info auo(yuy2)->nv12 [AVX], 848x480, 30000/1001 fps
nvenc [info]: Vpp Filters copyHtoD
nvenc [info]: Output Info H.264/AVC high @ Level auto
nvenc [info]: 848x480p 1:1 29.970fps (30000/1001fps)
nvenc [info]: Rate Control VBR
nvenc [info]: Bitrate 1000 kbps (Max: 17500 kbps)
nvenc [info]: Initial QP I:20 P:23 B:25
nvenc [info]: VBV buf size auto
nvenc [info]: Lookahead off
nvenc [info]: GOP length 300 frames
nvenc [info]: B frames 3 frames
nvenc [info]: Ref frames 3 frames, LTR: off
nvenc [info]: AQ off
nvenc [info]: MV Quality Q-pel
nvenc [info]: CABAC/deblock cabac / on
auo [info]: 自動フィールドシフト on
nvenc [info]:
nvenc [info]:
nvenc [info]: encoded 155474 frames, 371.72 fps, 777.33 kbps, 600.89 MB
nvenc [info]: encode time 0:08:42 / CPU Usage: 38.35%
nvenc [info]: frame type IDR 519
nvenc [info]: frame type I 519, avgQP 16.50, total size 19.48 MB
nvenc [info]: frame type P 38869, avgQP 18.27, total size 392.84 MB
nvenc [info]: frame type B 116086, avgQP 24.14, total size 188.57 MB
auo [info]: NVEnc エンコード : 0時間 8分43.3秒
auo [info]: drop 38869 / 194342 frames
auo [info]: NeroAacEnc で音声エンコードを行います。 AAC-LC ビットレート指定, 128kbps
auo [info]: L-SMASH muxer (r1413)でmuxを行います。映像: on, 音声:off, tc:off, chap:off, 拡張モード:なし
auo [info]: timeline editor (r1413)でmuxを行います。映像: on, 音声:off, tc: on, chap:off, 拡張モード:なし
auo [error]: mux後ファイルが小さすぎます。muxに失敗したものと思われます。
auo [error]: 推定ファイルサイズ 616726 KB, 出力ファイルサイズ 0 KB
auo [error]: timeline editor でのmuxに失敗しました。
auo [error]: muxのコマンドラインは…
auo [error]: ".\exe_files\timelineeditor_r1413.exe" --timecode "D:\mpg\pp.timecode.txt" --media-timescale 120000 --media-timebase 1001 "D:\mpg\pp.mp4" "D:\mpg\pp_muxout.mp4"
timeline editor [error]: Error: Lack number of timecodes.
timeline editor [error]: Error: Failed to parse timecode file.
timeline editor [error]: Error: Failed to edit timeline.
auo [info]: 総エンコード時間 : 0時間10分43.5秒
追加ですが、エラーが出るのは、
自動フィールドシフトにおいて、24fp固定や映画アニメ設定などの
間引きにチェックが入っている状況です。
何度も失礼いたします。
元ファイルによって成功する場合と失敗するものがあります)
remixできないエラーファイルは24fps化したにも関わらず、
フレーム29.970のままで、本来の再生時間よりも20分ほど
短いもの(約110分→90分)となってしまいます。
Nvencは非常に便利なので、このまま使わせていただきたいと思います。
remixできないエラーファイルができてしまう原因は、自動フィールドシフト使用時に必要になるタイムコードファイルが正常に出力されていないことにあると思います。
ただ、なぜおかしなタイムコードファイルが出力されるのか、原因がよくわかりません。
成功したり、失敗したりということで、非常に難しいです。
Nvenc+自動フィールドシフトで生成されたtimecode.txtは
自動シフトフィールドをかけないで生成された正常のものと
一致していますので問題ないと考えられます。
エンコードされた動画のみのファイルの再生時間が元よりも
短く変なのです。
成功する元ファイルはl-smas
(普段はmpg file readerを使っているのですが)
で読み込むと、きちんと29.97fpsとなっており、
エラーとなるものは29.97fspとなっておりませんでした。
そこら辺に原因があるかもしれません。
私のPC環境のせいかもしれませんが、もしも対応してくださるのであれば、気長に待ちたいと思います。
>> エンコードされた動画のみのファイルの再生時間が元よりも短く
というのは正常な動作です。
ご存知かもしれませんが、通常、自動フィールドシフト使用時は、以下のような動作になります。
例えば、元の動画が30秒, 29.97fps, 900フレームなら、
1. とりあえず29.97fpsで動画のみのファイルを出力。ただ、dropのあるぶん、フレーム数が減っているので、元の動画よりは短い動画になります。(24秒, 29.97fps, 720フレーム)
2. timelineeditorでtimecode.txtを反映。ここで、23.976fpsに修正するので、30秒, 23.976fps, 720フレームとなり、もとの時間に戻ります。
3. 音声とmux。
短い動画となってしまい、エラー終了してしまうのは、2.のtimecode.txtの反映がうまくいかないから、だと思われます。
>> エラーとなるものは29.97fspとなっておりませんでした。
情報ありがとうございます。これが原因の可能性があるのではないかと思います。
対象のファイルについて、Aviutlに読み込んだあと、[編集]>[再生速度の情報を変更]で、フレームレートを「30000/1001」fpsに変更してから試していただけないでしょうか?
お手数ですが、よろしくお願いいたします。
横からすみません。自分はpppさんとは別人ですが、こちらのプラグインを重宝させてもらっています。
自分も特定の番組(BS世界のドキュメンタリー)のTSファイルでpppさんと同じようなエラーが出ています。他の番組ではエラーは出ません。
「mux後ファイルが見つかりませんでした。」とmuxに失敗します。
途中で音声が変わるからかと思い、途中から途中までの短いファイルにしても失敗します。お忙しいと思いますのでお手すきの時で結構ですので、何か試してみることがあったら教えていただきたいです。ありがとうございます。
nvenc [info]: GPU #0: GeForce GTX 1080 (20 EU) @ 1835 MHz (375.70)
nvenc [info]: Input Buffers CUDA, 32 frames
nvenc [info]: Input Info auo(yuy2)->nv12 [AVX], 1280x720, 24000/1001 fps
nvenc [info]: Vpp Filters copyHtoD
nvenc [info]: Output Info H.265/HEVC main @ Level auto
nvenc [info]: 1280x720p 1:1 23.976fps (24000/1001fps)
nvenc [info]: Rate Control VBR2
nvenc [info]: Bitrate 1800 kbps (Max: 2100 kbps)
nvenc [info]: Initial QP I:20 P:23 B:25
nvenc [info]: VBV buf size auto
nvenc [info]: Lookahead off
nvenc [info]: GOP length 300 frames
nvenc [info]: B frames 0 frames
nvenc [info]: Ref frames 6 frames, LTR: off
nvenc [info]: AQ off
nvenc [info]: MV Quality Q-pel
nvenc [info]: CU max / min 64 / 32
nvenc [info]:
nvenc [info]:
nvenc [info]: encoded 719 frames, 53.63 fps, 1899.52 kbps, 6.79 MB
nvenc [info]: encode time 0:00:13 / CPU Usage: 46.51%
nvenc [info]: frame type IDR 3
nvenc [info]: frame type I 3, avgQP 27.67, total size 0.16 MB
nvenc [info]: frame type P 716, avgQP 26.18, total size 6.63 MB
auo [info]: NVEnc エンコード : 0時間 0分14.4秒
auo [info]: faw2aac で音声エンコードを行います。
auo [info]: L-SMASH muxer (r1412)でmuxを行います。映像: on, 音声: on, tc:off, chap:off, 拡張モード:なし
auo [error]: mux後ファイルが見つかりませんでした。
auo [error]: L-SMASH muxer でのmuxに失敗しました。
auo [error]: muxのコマンドラインは…
auo [error]: ".\exe_files\muxer.exe" --file-format m4v -i "Q:\test.265"?fps=24000/1001 --file-format m4a -i "Q:\test_audio.aac" -o "Q:\test_muxout.mp4"
L-SMASH muxer [error]: iTunes MP4 muxing mode
L-SMASH muxer [error]: [HEVC: Info]: IDR: 3, CRA: 0, BLA: 0, I: 0, P: 716, B: 0, Unknown: 0
L-SMASH muxer [error]: Track 1: H.265 High Efficiency Video Coding
L-SMASH muxer [error]: [importer: Error]: failed to find the matched importer.
L-SMASH muxer [error]: Error: failed to open input file.
L-SMASH muxer [error]: Error: failed to open input files.
>対象のファイルについて、Aviutlに読み込んだあと、[編集]>[再生速度の情報を変更]で、フレームレートを「30000/1001」fpsに変更してから試していただけないでしょうか?
「30000/1001」fpsに変更,
エンコード完了できました。 これが原因だったのですね。
完成ファイルはカクカクして見られるものではありませんが・・・
x264guiExでは「30000/1001」fpsに変更しなくても、エンコードがしっかり出来てしまうのが不思議です。
>2016-11-04(23:16) 様
回答が遅くなり申し訳ありません。
この問題を調べていますが、現状再現できておらず、原因がよくわかりません。
mux段階でエラーが発生していますが、HEVC映像は認識されていることから、映像の方は問題なく、おっしゃるように音声のほうがうまく認識されず、エラー終了してしまっているように見受けられます。
こちらで再現できないこともあり、残念ながら、対処法としては音声を再エンコードしてしまうぐらいしか思いつきません…。
はじめまして。
timeline editor [error]: Error: Lack number of timecodes.
timeline editor [error]: Error: Failed to parse timecode file.
timeline editor [error]: Error: Failed to edit timeline.
このケースですが、私の環境でも発生しました。3.02でもでます。
また、出力されたファイルは
C:\aviutil>"tc2mp4mod.exe" -i "D:\video\test.mp4" -o "D:\video\test_out.mp4" -s "D:\video\test.m4a" -t "D:\video\test.timecode.txt"
でmuxできるようです。
この件はtimelineeditor_r1417.exeの問題のようにも
見えますが、まだ未解決でしたでしょうか?
参考になるかわかりませんがtc2mp4mod.exeの処理ログおいておきます。
durationの差異が確認できます。
Movie Duration 00:23:59.765
Sound Duration 00:23:59.621
"MP4Box.exe" -nhml 1 "D:\video\test.mp4"
[Timecode info]
Timecode format(v2)
Total frames(35311), Timescale(120000)
[NHML info]
DTS delta(1001)
"MP4Box.exe" -add "D:\video\test_track1_tc.nhml" -add "D:\video\test_audio.m4a" -new "D:\video\test_out.mp4"
NHML import - Stream Type Visual - ObjectTypeIndication 0x21
IsoMedia import - track ID 1 - Audio (SR 48000 - 2 channels)
Saving D:\video\test_out.mp4: 0.500 secs Interleaving
"MP4Box.exe" -info "D:\video\test_out.mp4"
* Movie Info *
Timescale 600 - Duration 00:23:59.765
2 track(s)
Fragmented File: no
File suitable for progressive download (moov before mdat)
File Brand isom - version 1
Created: GMT Sun Jan 08 14:17:13 2017
File has root IOD (91 bytes)
Scene PL 0x00 - Graphics PL 0x00 - OD PL 0x00
Visual PL: Reserved (0x00) Profile (0x00)
Audio PL: AAC Profile @ Level 2 (0x29)
Track # 1 Info - TrackID 1 - TimeScale 120000 - Media Duration 00:23:59.621
Track is present in Root OD
Media Info: Language "Undetermined" - Type "vide:avc1" - 35311 samples
Visual Track layout: x=0 y=0 width=1920 height=1080
MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
AVC/H264 Video - Visual Size 1920 x 1080
AVC Info: 1 SPS - 1 PPS - Profile High @ Level 4.2
NAL Unit length bits: 32
Pixel Aspect Ratio 1:1 - Indicated track size 1920 x 1080
Chroma format 1 - Luma bit depth 8 - chroma bot depth 8
Self-synchronized
Track # 2 Info - TrackID 2 - TimeScale 48000 - Media Duration 00:23:59.765
Media Info: Language "Undetermined" - Type "soun:mp4a" - 67489 samples
MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 48000
Synchronized on stream 1
Completed.
いろいろ調査いただきありがとうございます。そしてちょっとまだ手が回ってなくて申し訳ありません。
最終フレームがdropかどうかでフレーム数とtimecode数に差が出ている、といったあたりでしょうか。
NVEnc.auoが原因かどうか、確認してみます。
この問題を修正したNVEnc 3.03を公開しました。
http://rigaya34589.blog135.fc2.com/blog-entry-885.html
教えていただきましたように、最終にドロップがある場合の処理に誤りがあり1フレーム多く出力されていた結果、今回のエラーとなっていました。
いろいろ細かく調査、報告してくださったおかげで、素早く原因にたどり着けました。
ありがとうございました。