QSVEnc 0.08

久しぶりに更新。

Intel Media SDK 2012 R3 の更新を反映、あとQSVEnc.auoの配置がめんどくさい人用に簡易インストーラを追加、とか。

更新内容



[QSVEnc / QSVEncC 共通]
・Intel Media SDK 2012 R3 (API v1.4)に対応。
Windows8に対応した、らしい。機能面で大きな変更はない。

[QSVEnc]
簡易インストーラを追加。
めんどい人用。使わなくても構いません。使い方は後ほど。

x264guiEx 1.57までの更新を反映。
- 映像と音声の同時処理モードを追加。音声処理順の選択肢として"後","前","同時"。
- 実行ファイルを指定するボタンを右クリックすると、現在指定中の実行ファイルのhelpを表示できたり。
- QSVEnc.iniで、音声/muxファイル名を記述するところで、filename="ffmpeg.exe;avconv.exe"みたく、2つ以上書けるように。
- インタレi420変換で、これまでの単純平均でなく、3,1-加重平均を使用。
- 音声の長さと動画の長さが大きく異なる場合に警告を出すようにした。
- 1/2サイズのFAWCheckで、384kbpsを超えるAACの場合にnon-FAWと誤判定するのを修正。
- 音声設定にflac / fdk-aac (ffmpeg/avconv)の設定を追加。



QSVEnc ダウンロード>>





簡易インストーラの使い方



QSVEnc.auoのAviutlへの追加(めんどうな配置(コピー)やダウンロード)を自動で行います。

使い方は、

QSVEnc_startup_01

QSVEnc_startup_02

QSVEnc_startup_03

QSVEnc_startup_04

QSVEnc_startup_05

QSVEnc_startup_06

QSVEnc_startup_07

このへんでたまにフリーズっぽくなる時がありますが、そのうち回復します。(ダウンロードリンクの確立に時間がかかる場合に発生)

QSVEnc_startup_08

終了したら、Aviutlを起動。

設定画面での実行ファイルの指定も済んでいるので、あとは設定画面で基本的な設定をして、エンコードするだけ。



実行ファイルなどを自分で配置したい場合は、手動で行ってください。

また、QSVEnc.iniを変更している場合、上書きに注意してください。

コピーされるもの一覧。

QSVEnc.auo
QSVEnc.ini
QSVEnc.conf (自動生成)
QSVEnc_stg (初回のみ)
libmfxsw32.dll
msvcr90.dll
msvcp90.dll
msvcm90.dll
neroaacenc.exe
L-SMASH 実行ファイル
(.NET Framework 2.0-3.5)

簡易インストーラは
zlib
libcurl
を利用しています。
ライセンスはsetupフォルダ内に。

スポンサーサイト



コメントの投稿

非公開コメント

No title

いつも使わせてもらっています。
ありがとうございます。

使ってる環境はこんなかんじです
2500k OC4.0Ghz
16GB
IntelSDK Hardware ver1.4
avs2pipemod
--y4m --cqp 27:29:30 --tff --vpp-deinterlace normal
1440x1080→1440x1080
使用時の
平均処理fpsは65~85fps
処理CPUUsageはQSVencC10% avs2pipemod25%

Re: No title

報告ありがとうございます。

65~85fpsですか…十分速いですけど、avs2pipemodのCPU使用率が25%というあたり、やはりデコードで速度が決まってしまっているように思います。

No title

簡易インストーラがついたおかげで、何も考えずに導入できるようになった為、下記環境で試させていただきました。

CPU  :corei7 3770k @OC4.4GHz
メモリ :DDR3-1600 16GB
マザー:Asrock z77 pro4
HDD  :PX-128M3P(SSD)
OS   :windows7 Business 64bit
GPUドライバ:intel HD 4000 ver 8.15.10.2761

aviutl:0.99m
 入力プラグイン:m2v.aui Ver. 0.7.5a
 その他フィルタ:なし(入力をそのまま素通し)
 QSVEnc    :ver0.08(SW:ver1.4、HW:ver1.4と認識)
           品質:quality
           モード:CQP(10,21,25)
           SAR:4:3
           GoP長:900
           intel media SDK:インタレ解除(通常)
                         リサイズ1440x1080→960x720

ソース:地デジTSをBonTsDemuxでm2v+wavに分離したもの


上記環境でエンコ終了時のログによると、80~90fpsでエンコ出来ているようです。
入力をlsmashinput.auiに変更したところ、90~100fpsとなりました。
CPU使用率はどちらのケースでも30%程度。
GPU使用率は、GPUZ読みで50~60%程度でGPUコアクロックは650MHz止まり。
(QSVでのリサイズを止めたところ800MHzまで上昇。)

画質については、個人的には問題なし。
x264.exeと比較すると薄暗いシーンや同一色部分の再現度に難がある印象ですが、エンコ速度と出来上がりのファイルサイズを加味して考えれば、当方の用途としては充分なデキでした。
HWエンコでココまで綺麗になるものかと感動しました。
CQP設定万歳。

その他としては、aviutlでフィルタ等をかけると20fpsくらいまでエンコ速度が低下し、ヘタをするとx264でエンコしたほうが高速というステキな結果になりました。
入力プラグインを変更するとエンコ速度が変化するように、やはりデコードやaviutlによるCPU処理が、fps上昇のボトルネックになっているようです。
デコードをQSVでするようなプラグインがあれば、さらに高速化できそうですね。

あとはGPUコアクロックがどうやっても1150MHzまで上がりませんでした。
別エントリで150fps近いエンコ速度という、当方からすると垂涎モノの数値をたたき出しておられますが、どのようにしてクロックを1150MHzまで上げたのでしょうか?
宜しければご教示いただけないでしょうか。

Re: No title

すいません、特に変わったことはしてないはずなのですが…1150MHzまで上がりました…。ほぼ同じ環境なんですけどね…

こちらのマザーボードはASUS P8Z77-Mですが、これが原因ではないはずです。おそらく、GPU Boostのトリガーは、単純にGPU使用率だと思います。こちらの3770Kでは、GPUZ読みで安定して70%を超えるGPU使用率を出せれば基本的にはBoostがかかり、1150MHzまで上がりました。150fps近い…というあの値を出した時には、1150MHzまで上がり、GPU使用率は80~90%という感じです。

どこかにボトルネックがあるのではないか…と思うのですが、どこかまでは…。Aviutlのフィルタ無しということですので、難しいです。
・ファイルの読み込み(ディスクアクセス)
・入力プラグインの設定 (m2vconfのアスペクト比「反映」は遅いとか)
が影響しそうですが…。

GPU Boost

ふと思いついたので追記します。

拡張タブにある「入力バッファ」を限界まで上げて16にしてみるとどうでしょうか?

あまり期待できないのですが、もしかしたら…と思いますので、ぜひ一度試してみてください。

No title

回答ありがとうございました。

> ・入力プラグインの設定 (m2vconfのアスペクト比「反映」は遅いとか)
こちらは配布元HPに記載されているように、速度重視設定にしてあります。

> ・ファイルの読み込み(ディスクアクセス)
ソース置き場・一時置き場をSSDからRAMDISKに変更して試して見ましたが、有意な変化は見られませんでした。
aviutlのバッファはメモリ使いすぎエラーが出ないように少し低めの72に設定してあります。処理速度を考えると毎秒バッファ更新を行っているはずですが、当方の環境ではストレージの速度はネックでは無いようです。


> 拡張タブにある「入力バッファ」を限界まで上げて16にしてみるとどうでしょうか?
こちら数回試してみたところ、約0.05fpsの速度改善が見られました。元が85fpsなので、パーセンテージにするとアレですが。


このまま終わるのもどうかと思ったので、付属のサンプルテンプレートをスタート、上記カキコの設定をゴールとして各種設定をひとつずつ変更してゆき、その際のfps、GPUクロックの変化を見てみました。
結論は、画面サイズのリサイズ(縮小)でfpsやGPUクロックの傾向が大きく変わりました。
リサイズ前はエンコ速度73fps、GPUクロック850MHz、GPU使用率55~65%だったのが、リサイズ後は86fps、650MHz、45~50%でした。
そこで試しに画像サイズを1920x1088に拡大して出力してみたところ、66fps、1150MHz、60%という結果を得ました。
小さい画像を単位時間当たり大量に処理するより、少量でも大きい画像を処理する方がGPUへの負荷は大きくなり、クロックも引き上げられていると想像します。

なお試験中は全てのケースでCPU使用率は33%で常に一定だったので、いずれの場合でもaviutl→qsvへのデータinput量はおそらく一定だったのではないかと想像しています。(aviutlの処理が飽和していたという事でしょうか)


試せた事実と簡単な推測は以上となります。
また何かありましたら宜しくお願いいたします。

Re: No title

報告ありがとうございます。こちらとはやや異なる傾向で、参考になります。

>aviutlの処理が飽和していたという事でしょうか。
そういう気がしますね。

うーん、QSVのチューニングは難しいです…。

No title

以前、GPUのクロックが650MHzから上がらないと騒いでいたものです。
某巨大掲示板群のカキコ内容から原因が判明しましたので、恥を忍んで報告いたします。

結論としては、メモリがシングルチャンネルで動作していた為でした。
メモリを刺す位置を変えてデュアルチャンネル動作にしたところ、140fps程度出るようになりました。
GPUコアクロックも700~950MHz程度出るようになっていました。

別エントリーでの検証結果にも有りましたが、現状のQSVはメモリ速度依存度が高いという結果が、図らずも確認できた形となります。
本件、大変お騒がせいたしました。

Re: No title

いえいえ、情報有り難うございます。

確かにメモリがきちんとDualChannelで動作しているか、あまりチェックしませんよね…。

速度が出るようになったようで、良かったです。
プロフィール

rigaya

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先: rigaya34589@live.jp
github twitter

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

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

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

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

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

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

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

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

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


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

clfilters 
- OpenCLベースの複数の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対応版

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

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