QSVEnc 1.06

ちょいと機能追加。

・VapourSynth読み込み(要VapourSynth r19以降)
・シーンチェンジ検出・VQPの改良
・プロファイルの追加とか
とか。



VapourSynth読み込み



VapourSynth r19 のVSScript.dllを使ってvpyを直接読み込む。もちろんVapourSynthのr19以降をインストールしてください。avi(vfw)読みよりは若干速いかも。

yv12(VapourSynthでいうところのYUV420P8)読み込み専用なのでyv12以外の場合は自動的にavi(vfw)読みに変更される。(というよりavs/vpy読みでなんらかのトラブルが起これば自動的にaviに回して再チャレンジする、割と適当な作りになってる)

結局LoadLibraryしてるのは、VapourSynthインストールされてないとQSVEncCが起動しなくなるので。(VCの遅延ロードという手もあるけれど)

1.05の時点でコードはできていたので、簡単にいけると思ったら、

正式版になってvsscript_evaluateFileってのが追加されてもっと簡単に書けそうじゃね?
 ↓
なぜか動かない
 ↓
あ…これファイル名UTF-8でないと開けないのか…
 ↓
IMultiLanguage2でS-JIS→UTF-8変換しよう→これで解決
 ↓
結局コード簡単になってない…

あれ~?

まあ面倒といってもたいしたことはないけども。



シーンチェンジ検出・VQPの改良



シーンチェンジ検出やVQPはある程度効果はあるのだけど、これまでは入力がプログレッシブ(非インタレ)である必要があった。

これをごちょごちょいじって、入力がインタレであってもvppのnormalかbobでインタレ解除している場合にはシーンチェンジ検出やVQPを使えるようにした。

QSVEnc_SceneChange_VQP_limitations

VPPのインタレ解除はIT(24fps化)は残念だけど、normalとbob化はそれなりに使えるので、この辺りでシーンチェンジ検出ができるようになったのは大きいかな、と。

相変わらず「MFX_FRAMETYPE_xIDR」を送ると死んでしまうので、インタレ保持 + シーンチェンジ検出ができない…。



QSVEncのプロファイル



何パターンか追加しておいた。



QSVEnc ダウンロード>>
Intel Media SDKのソフトウェア用dllはfull版にのみ含めるようにしてみました。



電源死んだ…とかいうトラブルもあったりしたけども、電源は買い直してPCは無事復活。お金は飛んでったが…。

この電源、もともと残念な個体だったのか、冷却が不十分だったのか…。

最近の電源ってやたらファンの回転数落とすので、不安になってしまう。多少うるさくてもいいんだけど…。もちろん新し目のケースなら、電源は下に設置するのが多くて、CPUの排熱を受けたりしないけど、昔のケースだと電源を上に設置するから、CPUクーラーで熱くなった空気しか来ないので、その分ファンを回さないと…と思う。そういう点でも簡易水冷のほうがいいのかなあ…。


スポンサーサイト

コメントの投稿

非公開コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

vspipe

vpyの直接読み込みとvspipeとの速度比較を試みたのですが
vspipeからy4mでQSVEncCへパイプすると
--input-res must be specified with raw input.
とQSVEncCに表示され、エラーが発生してしまいます

これはvspipeが悪いのか、使い方が悪いのか・・・どうなんでしょうか

使用コマンドは以下です
vspipe.exe "in.vpy" - -y4m | QSVEncC.exe --vbr 4000 --maxbitrate 12000 --quality balanced --bframes 2 --gop-len 30 --crop 0,0,0,8 --sar -16:-9 --tff --y4m -i - -o "out.264"

vspipe.exe "in.vpy" - -infoした際の情報は以下です
Width: 1920
Height: 1088
Frames: 9224
FPS: 30000/1001
Format Name: YUV420P8
Color Family: YUV
Bits: 8
SubSampling W: 1
SubSampling H: 1

Re: vspipe

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

QSVEncCのバグです。修正します。

vspipe

修正ありがとうございました。y4mでも動作するようになりました。
速度比較の結果は、VapourSynthではavi読み込み、vspipe、vpy読み込みの順に速いという、よくわからない結果になってしまいました。
vpy直接読み込みは、CPU負荷は低くなっているのですが、その分遅いという・・・、環境依存、スクリプト依存もあるのでしょうね。

VQPのBOB対応はありがたい機能です。要望出そうと思ってた機能でした。
プリセットに「VQP (可変量子化量) インタレ解除 Bob化 1280x720にリサイズ」というのもあれば良いなぁとおもいました。

Re: vspipe

>avi読み込み、vspipe、vpy読み込みの順に速い
どうしてこうなるのか考えていたのですが、vpy読み込みのフレームの取得を現在はシングルスレッド動作にしているからかなと気づきました。

vpyの内容によって、シングルスレッド動作がいいか、マルチスレッド動作がいいかが変わるのかもしれません。うーん。

vspipe

確かにvspipeのソースでもinfo->numThreadsの分、非同期で同時に動かしてwaitしてるように見えますね。

https://github.com/vapoursynth/vapoursynth/blob/master/src/vspipe/vspipe.cpp

Re: vspipe

そこをQSVEncCではinfo->numThreadsの分ではなく一つぶんだけでやっています(なのでシングルスレッドのようなもの、というわけです)。

これはLWLibavSourceのdr=trueでそのほうが速かったからなのですが、たしかにスクリプト内容によっては、info->numThreadsの分回したほうがいいかもですね。なんかオプションつけてみようかな、と思っています。
プロフィール

rigaya

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先(@を半角にしてください!)
rigaya34589@live.jp
github

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

○Aviutlプラグイン
x264guiEx 2.xx (ミラー)
- x264を使用したH264出力
- x264guiExの導入>
- x264.exeはこちら>

x265guiEx (ミラー)
- x265を使用したH.265/HEVC出力
- x265.exeはこちら>

QSVEnc + QSVEncC (ミラー)
- QuickSyncVideoによるH264出力
- QSVEncCはコマンドライン版
- QSVEncC 導入/使用方法>
- QSVEncCオプション一覧>

NVEnc + NVEncC (ミラー)
- NVIDIAのNVEncによるH264出力
- NVEncCオプション一覧>

VCEEnc + VCEEncC (ミラー)
- AMDのVCEによるH.264出力

ffmpegOut (ミラー)
- ffmpeg/avconvを使用した出力

自動フィールドシフト (ミラー)
- SSE2~AVX2による高速化版
- オリジナル: aji様

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

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

PMD_MT (ミラー)
- SSE2~FMA3による高速化版
- オリジナル: スレ48≫989氏

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

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

○その他
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 (ミラー)

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

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

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