QSVEnc 7.59

- ノイズ除去フィルタを追加。(--vpp-denoise-dct)

- 各タスクの時間計測機能を追加。(--task-perf-monitor)

- AviutlやAmatsukazeから使うときのように、hwデコードしない時の処理を高速化。
効果があるのは比較的エンコードが軽く、fpsが出ている場合。

試しに効果のありそうな場合について、AviutlとAmatsukazeで確認してみた。



Aviutlでは、Arc A380の1440x1080 H.264エンコードで211.20fps→248.76fpsに高速化した。

QSVEnc_7_58_Aviutl_01_text.jpg
QSVEnc_7_59_Aviutl_01_text.jpg



Amatsukazeでは、Arc A380の1440x1080 H.264エンコードで287.66fps→400.58fpsに高速化した。

QSVEnc_7_58_Amatsukaze_01_text.png

QSVEnc_7_59_Amatsukaze_01_text.png



まあ、これは実験用に効果の大きいであろう条件で派手に高速化したケースを取り出しているけど、それなりに効果のあるケースはありそう。



ただ、以前記事にも書いたResizable BAR無効の場合にQSVEncがやたらと遅い問題は未解決。まあ個人的にはResizable BARを有効にすればよいので、特に問題はないのだけど、Resizable BARが有効にできない環境ではどうしても遅くなってしまう。

いただいたコメントではTMPEGEncだと高速、ということだったので、なにかQSVEnc特有のResizable BAR無効のときに時間がかかる要因があるはずだが、まだよくわかっていない。

また、TMPEGEncではResizable BAR無効でも高速とのことだったけど、そのほかのffmpegとかHandbrakeとかはどうなのだろう…

まずはコメントいただいたTMPEGEncで実際に動かしてみるとなにかわかるのだろうか…?



※Aviutl向けには、Aviutl_QSVEnc_7.xx.zip をダウンロードしてください。
QSVEnc ダウンロード>>

QSVEncの導入

QSVEncCのオプションについてはこちら。
QSVEncCオプション一覧>





コメントの投稿

非公開コメント

エラー 0xfffffffb

いつもありがたく使用させていただいております。
QSVEnc 7.59に更新してから、Amatsukazeからの使用でこのようなエラーが出るようになりました。


QSVEncC (x64) 7.59 (r3244) by rigaya, Feb 11 2024 12:30:40 (VC 1937/Win)
OS Windows 10 x64 (19045) [UTF-8]
CPU Info Intel Core i3-4130 @ 3.40GHz (2C/4T) <Haswell>
GPU Info Intel HD Graphics 4400 (12EU) 200-1150MHz [54W] (20.19.15.5171)
Media SDK QuickSyncVideo (hardware encoder) PG, 1st GPU, API v1.20
Async Depth 3 frames
Buffer Memory d3d11, 28 work buffer
Input Info y4m(yv12)->nv12 [AVX2], 1440x1080, 30000/1001 fps
VPP Resize 1440x1080 -> 1280x720
AVSync cfr
Output H.264/AVC(yuv420) High @ Level 3.1
1280x720p 1:1 29.970fps (30000/1001fps)
avwriter: h264 => matroska
Target usage 4 - balanced
Encode Mode Constant QP (CQP)
CQP Value I:28 P:30 B:32
QP Limit min: none, max: none
Ref frames 2 frames
Bframes 3 frames, B-pyramid: off
Max GOP Length 90 frames
VUI matrix:bt709,colorprim:bt709,transfer:bt709
Ext. Features RepeatPPS
INPUT: getWorkSurf: Failed to get work surface, all 9 frames used.
INPUT: failed to get work surface for input.
Break in task INPUT: insufficient buffer at input/output..
avout: failed to write header for output file: Invalid data found when processing input

encoded 0 frames, 0.00 fps, 0.00 kbps, 0.00 MB
encode time 0:00:00, CPULoad: 3.9
AMT [error] Exception thrown at ProcessThread.cpp:64
Message: failed to write to stdin pipe
AMT [error] Exception thrown at ProcessThread.h:91
Message: DataPumpThread error
QSVEncC.exe finished with error!
AMT [error] ↓↓↓↓↓↓エンコーダ最後の出力↓↓↓↓↓↓
AMT [error]
AMT [error] encoded 0 frames, 0.00 fps, 0.00 kbps, 0.00 MB
AMT [error] encode time 0:00:00, CPULoad: 3.9
AMT [error]
AMT [error]
AMT [error] QSVEncC.exe finished with error!
AMT [error] ↑↑↑↑↑↑エンコーダ最後の出力↑↑↑↑↑↑
AMT [error] Exception thrown at Encoder.cpp:112
Message: エンコーダ終了コード: 0xfffffffb


現時点で確認できていることですが、
・Amatsukazeを起動して一つ目のファイルではエラーにならないが、二つ目や三つ目のファイルでエラーとなり、以降連続で同じエラーとなる。
・エラーとなったファイルでもAmatsukazeを起動しなおすとエラーにならない。
・「CPULoad:」の値は都度変化するが、他は同一のエラー内容になる。
・(これは少し不思議に思ったことですが)QSVEncが動作しているとき、以前はGPU使用率がほぼ99%で張り付いていたのが80%台後半で推移するようになった。しかしエンコードは確かに速くなっている。

お手数をおかけいたしますが、調査していただけましたら幸いです。よろしくお願いいたします。

Re: エラー 0xfffffffb

ご指摘ありがとうございます。Failed to get work surfaceでエラー終了すること承知いたしました。

確認して修正いたします。

Re: エラー 0xfffffffb

Failed to get work surfaceのエラーですが、QSVEnc 7.60で修正できていると思います。
https://rigaya34589.blog.fc2.com/blog-entry-1790.html

ご指摘いただきありがとうございました。

Re: エラー 0xfffffffb

すみません、まだ不具合ある可能性があるため、一度公開をとりやめます。

もう少々お待ちください。

Re: エラー 0xfffffffb

お待たせしました。発見した問題を修正し、7.60を再公開いたしました。
https://rigaya34589.blog.fc2.com/blog-entry-1790.html

お試しいただければと思います。
プロフィール

rigaya

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先: [email protected]
github twitter

最新記事
最新コメント
カテゴリ
月別アーカイブ
カウンター
検索フォーム
いろいろ
公開中のAviutlプラグインとかのダウンロード

○Aviutl 出力プラグイン
x264guiEx 3.xx
- x264を使用したH264出力
- x264guiExの導入紹介動画>
- x264guiExの導入
- x264guiExのエラーと対処方法>
- x264.exeはこちら&gt

x265guiEx
- x265を使用したH.265/HEVC出力
- x265guiExの導入>
- x265.exeはこちら&gt

QSVEnc + QSVEncC
- QuickSyncVideoによるHWエンコード
- QSVEnc 導入/使用方法&gt
- QSVEncCオプション一覧&gt

NVEnc + NVEncC
- NVIDIAのNVEncによるHWエンコード
- NVEnc 導入/使用方法&gt
- NVEncCオプション一覧&gt

VCEEnc + VCEEncC
- AMDのVCE/VCNによるHWエンコード
- VCEEnc 導入/使用方法&gt
- VCEEncCオプション一覧&gt

svtAV1guiEx
- SVT-AV1によるAV1出力
- svtAV1guiExの導入>
- SVT-AV1単体はこちら&gt

VVenCguiEx
- VVenCによるVVC出力
- VVenCguiExの導入>

ffmpegOut
- ffmpegを使用した出力
- ffmpegOutの導入>


○Aviutl フィルタプラグイン
自動フィールドシフト
- SSE2~AVX512による高速化版
- オリジナル: aji様

clcufilters 
- OpenCL/CUDAのGPUフィルタ集
- 対応フィルタの一覧等はこちら

エッジレベル調整MT
- エッジレベル調整の並列化/高速化
- SSE2~AVX512対応
- オリジナル: まじぽか太郎様

バンディング低減MT
- SSE2~AVX512による高速化版
- オリジナル: まじぽか太郎様

PMD_MT
- SSE2~AVX512による高速化版
- オリジナル: スレ48≫989氏

透過性ロゴ (ミラー)
- SSE2~FMA3によるSIMD版
- オリジナル: MakKi氏

AviutlColor
- BT.2020nc向け色変換プラグイン
- BT.709/BT.601向けも同梱

○その他
Amatsukaze改造版
- AmatsukazeのAV1対応版

tsreplace
- tsの映像のみを置き換えて圧縮

rkmppenc
- Rockchip系SoCのhwエンコーダ

fawutil
- FAW(FakeAACWave)⇔aac変換
- 二重音声の取り扱いにも対応

x264afs (ミラー)
- x264のafs対応版

aui_indexer (使い方>)
- lsmashinput.aui/m2v.auiの
 インデックス事前・一括生成

auc_export (ミラー使い方>)
- Aviutl Controlの
 エクスポートプラグイン版
 エクスポートをコマンドから

aup_reseter
- aupプロジェクトファイルの
 終了フラグを一括リセット

CheckBitrate (使い方)
- ビットレート分布の分析(HEVC対応)

チャプター変換 (使い方>)
- nero/appleチャプター形式変換

エッジレベル調整 (avisynth)
- Avisynth用エッジレベル調整

メモリ・キャッシュ速度測定
- スレッド数を変えて測定
- これまでの測定結果はこちら

○ビルドしたものとか
L-SMASH (ミラー)
x264 (ミラー)
x265 (ミラー)
SVT-AV1 (ミラー)

○その他
サンプル動画
その他

○読みもの (ミラー)
Aviutl/x264guiExの色変換
動画関連ダウンロードリンク集
簡易インストーラの概要

○更新停止・公開終了
改造版x264gui
x264guiEx 0.xx
RSSリンクの表示
リンク
QRコード
QR