VCEEnc 2.00

VCEEncを久しぶりに更新。もう5月のあたまぐらいからやっていたのだが、なんかいろいろあったのと、なんかうまく動かなくて嵌まって時間喰ったのと、後述の理由でやる気が出なかったのがあって、今頃になってしまった。なんか途中で飽きてCheckBitrateとかに手を出してしまう始末。

HWデコード、HWリサイズ、muxなどを追加したが…いろいろ微妙な結果になってしまった。

VCEEnc.auoのほうは特に更新はないけど、簡易インストーラを最新版に。

問題点はいくつかあるけど、致命的なのはインタレ保持エンコどころかインタレ解除もできなかったところ。VCEEncは、AMD Media SDKのamfという仕組みを使っているのだけど、どういうわけかAMD Media SDKではインタレ保持エンコもインタレ解除も使用することができない。DXVAではインタレ解除ができるはずなので、GPUにはそういう仕組みがあるはずなのだけど、AMD Media SDKでは無理、ということなのだろう。というわけで、tsとかには使えなさそうだ。

もうひとつ残念だったのは、HWデコードしたからと言って、そんなには速くならなかったこと(もちろん多少は速いけど)。

あとは、AMDはMedia SDKを更新する気はあるのかなあ…、というところが疑問なところ。最終更新は2015年1月…うーん。これ、やる気ないっすよね。



というわけで、QSVEncC/NVEncCにあるいろいろな機能を追加してあるけど、インタレ関連の機能をはじめとするいまのAMD Media SDKではサポートされていない機能や、実装にやたらと手間のかかる機能は実装してないし、Media SDKが更新されない限りする予定もない。

AMD Media SDKの制限により困難
・インタレ保持
・インタレ解除
・colormatrix, colorprim, transfer等

HWデコード時は使用不能
・--crop

実装予定なし
・--trim
・--avsync

mux時のみ利用可能
・SAR比の指定

一応動作確認は下みたいな感じの環境。

Win8.1 x64
4770K
Radeon R7 360

…これでWin10では動かないとか、言われてしまうと結構解決は難しかも。動くと信じたい。



というわけで、いろいろ中途半端な感じはあるけど、一応HWデコード→リサイズ→エンコードというのはできるようになったので、公開しておく。

まあ、QSVEnc/NVEncもわたし自身は実用性というよりは実験目的なんだけど、VCEEncはさらに実用性には乏しく、はっきりいって実験用途の域を出ないなあ、と思う。



VCEEnc ダウンロード>>
ダウンロード (ミラー)>>


スポンサーサイト



コメントの投稿

非公開コメント

VCEEnc 2.00 エンコートテスト

更新ありがとうございます。
VCEEnc2.00のエンコードテストしてみました。
テスト環境
Win10x64 Intel Core i7-4770 AMD Radeon HD 7800

------------------------------------------------------------------------------------------------------------------------------
auo [info]: qaac (v2.59) で音声エンコードを行います。 CVBR (AAC) ビットレート指定, 128kbps
auo [info]: 音声エンコードディレイカット - 音声: -2112samples
auo [info]: ".\exe_files\qaac.exe" -q 2 --cvbr 128 --ignorelength -o "C:\Users\red\Documents\test_audio.m4a" "-"
qaac [info]: qaac 2.59, CoreAudioToolbox 7.9.8.3
qaac [info]:
qaac [info]: test_audio.m4a
qaac [info]: AAC-LC Encoder, CVBR 128kbps, Quality 96
qaac [info]: 1:35.009 (52.4x)
qaac [info]: 4560446/-1 samples processed in 0:01.812
qaac [info]: Overall bitrate: 129.831kbps
qaac [info]: Optimizing...done
auo [info]: qaac CPU使用率: 11.99%
qsv [info]: VCEEnc 2.00 (x86) / Windows 10 (x64)
qsv [info]: CPU: Intel Core i7-4770 @ 3.40GHz [TB: 3.90GHz] (4C/8T)
qsv [info]: GPU: AMD Radeon HD 7800 [Pitcairn 975MHz (2079.4 (VM))]
qsv [info]: Input Info: auo: yuy2->nv12[AVX2], 1920x1080p, 24000/1001 fps
qsv [info]: Output: H.264/AVC High @ Level 4.2
qsv [info]: 1920x1080p 23.976fps (24000/1001fps)
qsv [info]: Quality: slow
qsv [info]: CQP: I:21, P:23
qsv [info]: VBV Bufsize: 20000 kbps
qsv [info]: Bframes: 0 frames, b-pyramid: off
qsv [info]: Motion Est: Q-pel
qsv [info]: Slices: 1
qsv [info]: GOP Len: 60 frames
qsv [info]: Others: deblock hrd
auo [info]: VCE エンコード : 0時間 0分52.8秒
vce [info]:
vce [info]: encoded 2279 frames, 43.90 fps, 14465.86 kbps, 163.92 MB
qsv [info]: encode time 0:00:52, CPULoad: 18.82%
auo [info]: L-SMASH muxer (r1394) でmuxを行います。映像: on, 音声: on, tc:off, chap:off, 拡張モード:なし
auo [info]: ".\exe_files\muxer.exe" --file-format m4v -i "C:\Users\red\Documents\test.264"?fps=24000/1001 --file-format m4a -i "C:\Users\red\Documents\test_audio.m4a" --optimize-pd -o "C:\Users\red\Documents\test_muxout.mp4"
L-SMASH muxer [info]: iTunes MP4 muxing mode
L-SMASH muxer [info]: [H.264: Info]: IDR: 76, I: 0, P: 2203, B: 0, SI: 0, SP: 0, Unknown: 0
L-SMASH muxer [info]: Track 1: H.264 Advanced Video Coding
L-SMASH muxer [info]: Track 2: MPEG-4 Audio
L-SMASH muxer [info]: Muxing completed!
auo [info]: L-SMASH muxer CPU使用率: 12.44%
auo [info]: 総エンコード時間 : 0時間 0分59.3秒

設定はプロファイルの高画質からGOP長→ -1、Bフレーム→ 3に変更し、ピラミッド参照にチェックを入れています。

ログを見ると、Bフレームは 0、b-pyramidもoffになっており、設定が反映されていないかもしれません。
エラー無く終了したのでWin10x64でも一応エンコードはできるようです。

No title

VCEやっぱり残念ですね
数年ぶりの新プロセス・新アーキテクチャなPolarisでの躍進に期待ですね

No title

>red様
お使いのGPUがログにはAMD Radeon HD 7800とありますので、その世代ではBフレームに未対応だったと記憶しています。

Bフレームを設定しても"0"となってしまうのは、それが原因だと思われます。

>新プロセス・新アーキテクチャなPolaris
おっしゃるとおりPolarisでは動画関連も大きく拡張されるという噂ですので、あわせてAMD Media SDKの更新にも期待したいところです。

No title

こちらの記事によるとPolarisからエンコーダーは改善されているようですね。
http://www.4gamer.net/games/329/G032949/20160629072/

あとはこのエンコーダーを利用できるソフトウェアライブラリを一刻も早くAMDが公開してくれることを祈るのみ。


Re: No title

おっしゃるとおりです。NVENCもVCEも今世代は期待できそうなので、早くSDKが公開されるとよいのですが。

No title

AMF 1.3 SDKきましたよー

AMF 1.3 SDK

Re: AMF 1.3 SDK

ああ、新しいSDK出たのですね。ざっと見ると、デコーダのほうはHEVC 8bit/10bit対応のようですが、エンコードpはHEVCはまだみたいです。

Polarisを買うにしてもRX460にするかRX470にするか迷います。正直もう少し待ちたいところですが…。

No title

AMF 1.3 SDKではインタレ保持や解除、2パスでのエンコはできるようになったのですか?

Win10 x64+PhenomII 960T+R7 250X

タイトル通りの構成でVCEEncを使うと.NET系のエラーを吐いてエンコードできません
.NETのバージョンは4.6.2なんですが4.5.2とは微妙に互換性がとれてないんですかね…?

サブPCなんで化石レベルのスペックなんですがコメ欄の一番上の方はWin10でもエンコできてるようなんで.NETの問題ではなくハードの問題なんですかね…。

ちなみにAviUtl本体やその他のプラグインはすべて最新にアップデート済みです

補足

ドライバーは16.7.3でVCEEnc設定画面のロゴはちゃんと赤くなってます

Re: Win10 x64+PhenomII 960T+R7 250X

こちらでもWin10で動作しています。

「.NET系のエラー」とのことですが、具体的には、どういうエラーが出ているのでしょうか?

Re:x2 Win10 x64+PhenomII 960T+R7 250X

まずAviUtlのファイルメニューから拡張VCE出力を選択して出る画面でビデオ圧縮ボタンを押すと…

アプリケーションのコンポーネントで、ハンドルされいない例外が発生しました。[継続]をクリックすると、アプリケーションはこのエラーを無視し、続行しようとします。
外部コンポーネントが例外をスローしました。

というエラーが出ます。

続行ボタンを押すことでVCEEncの設定画面を出すことはできますが、GUIの設定項目がすべて空の状態で開きます。各項目はプルダウンすれば普通に設定はできます。

設定が完了してOKで前の画面に戻り、保存ボタンを押すと…

アドレス"0x59c9dad1"で例"0xc00002b5"が発生しました
発生モジュール:atiumdva.dll
オフセットアドレス:0x0007dad1
備考:OUTPUT_PLUGIN_TABLE::func_output()[拡張VCE出力]
正常な動作が出来ない可能性がありますが処理を継続しますか?

と、またエラーが出て、ここで『はい』を押すと『ファイルの出力に失敗しました。』とメッセージが出て、そこで終了します。

エラーの詳細

いちばん最初のエラー画面で詳細ボタンを押したときのテキストはこんな感じです。

Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
System.Runtime.InteropServices.SEHException (0x80004005): 外部コンポーネントが例外をスローしました。
場所 check_if_vce_available()
場所 VCEEnc.frmConfig.InitForm()
場所 VCEEnc.frmConfig.frmConfig_Load(Object sender, EventArgs e)
場所 System.Windows.Forms.Form.OnLoad(EventArgs e)
場所 System.Windows.Forms.Form.OnCreateControl()
場所 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
場所 System.Windows.Forms.Control.CreateControl()
場所 System.Windows.Forms.Control.WmShowWindow(Message& m)
場所 System.Windows.Forms.Control.WndProc(Message& m)
場所 System.Windows.Forms.ScrollableControl.WndProc(Message& m)
場所 System.Windows.Forms.Form.WmShowWindow(Message& m)
場所 System.Windows.Forms.Form.WndProc(Message& m)
場所 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
場所 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 読み込まれたアセンブリ **************
mscorlib
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1080.0 built by: NETFXREL3STAGE
コードベース:file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
VCEEnc
アセンブリ バージョン:0.0.0.0
Win32 バージョン:2.00
コードベース:file:///C:/Tools/AviUtl/plugins/VCEEnc.auo
----------------------------------------
System.Windows.Forms
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1038.0 built by: NETFXREL2
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1081.0 built by: NETFXREL3STAGE
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1078.0 built by: NETFXREL3STAGE
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1038.0 built by: NETFXREL2
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1038.0 built by: NETFXREL2
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1064.2 built by: NETFXREL3STAGE
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
mscorlib.resources
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1038.0 built by: NETFXREL2
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Windows.Forms.resources
アセンブリ バージョン:4.0.0.0
Win32 バージョン:4.6.1038.0 built by: NETFXREL2
コードベース:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。

Re: エラーの詳細

情報ありがとうございます。エラーの原因ですが、VCE関連のコードのようで、.NET自体は関係なさそうです。すこしいろいろ調べてみます。

No title

当方まったく急いでいませんので、お時間があるときにでもゆっくりとやっていただければと思います。
ご面倒かとは思いますが、調査よろしくお願いします。

No title

そう言えばPolarisではAVCやHEVCの2パスエンコにハードウェアで対応してましたね。どの程度使い物になるのか気になりますが、対応予定はしばらくないですか?

Re: No title

いずれやろうとは思っているのですが、なかなか。やはりモチベーション的な問題でQSV/NVENC中心に作業してしまいがちです。

AMD A4-1200にて

OS:Windows 10 x64
CPU:AMD A4-1200
Memory:2GB

の環境で試してみます。
気づきがあれば、再度投稿予定です。
今後ともよろしくお願いいたします。

Re: No title

すこし調べてみましたが、まだSDKがHEVCに対応していないようです。そのため、当面更新の予定はありません。
https://github.com/GPUOpen-LibrariesAndSDKs/AMF/issues/3

No title

取り敢えずAVCの2パスエンコは出来そうですか?

Re: No title

2passエンコードはサポートされていないようです。大きな機能追加はなさそうなので、当面更新する予定はありません。

[Info]OBSStudioのAMFpluginのissueに取り上げられている

OBS Studio のAMF(AMD-Advanced-Media-Framework) plug-in のIssue に突如登場しているのでご報告。

github.com/Xaymar/OBS-AMD-Advanced-Media-Framework/issues/119

作者様直々に適切な情報を返答したほうがいいのだろうな、と思いましたのでこちらにコメントしておきます。

No title

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


ただ、どうも他の方が「VCEEncは開発が進んでいない」ようなことをすでにコメントしてくださっているので十分かなと思っています。

AMD A4-1200にて

うーん、AMDは、OpenCLに力を注ぐみたいだから、こっちは開発進まない感じにみえてきました

Reliveアップデート

でHEVCエンコが出来るようになりましたね

No title

Re: No title

HEVCエンコに対応したVCEEnc 3.00を公開しました。
http://rigaya34589.blog135.fc2.com/blog-entry-889.html
プロフィール

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様

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