録画人間の末路 -

人は記録をしながらじゃないと生きていけない

CUDA対応PowerDirectorのエンコード性能

2009-02-04 20:58:54 | FIRECODER Blu/SpursEngine
わたしが推しているせいもあってウチではSpursEngineを利用したエンコードの報告が多いのですが、もうひとつの脱CPUエンコード能力を持つ、GPGPU分野のうち、CUDAにこだわるN.Shim@さんが、パッチをあててCUDAにフル対応したPowerDirectorの結果報告をしてくださいましたので、例によってここに転載させていただきます。

(ここから)
DVD Suite7 Ultraのパッケージが届きました。
早速、中に入っているPowerDirector7で、実装されたはずのCUDAエンコードテストを行いました。

以前にWeb(PC Watch)で記事を読んでおり、DVD Suite7のPowerDirector7でもUltraのパッケージならCUDA対応のアップデートが利用できる、とのことでしたが、実際そのとおりでした。
CyberlinkのWebからダウンロードしたアップデータで、CUDAエンコード実装の7.0.2429aに更新されました。

テストソースは地上波放送(1440x1080)の某ロボアニメの第1話をRD-S502でTS録画したもの。見たところ、SD解像度作画で、テロップはHD解像度のようです。
これをHDVRフォーマットのDVD-RAM経由で取り出し、MPEG2-TS化したファイル。このファイルはそのままPowerDirector7で認識できました。これを、タイムライン編集でCMカットし23分53秒程度としたものです。

環境はPhenom X4 9850BE、GeForce8800GTで、Windows7 Beta(Build7000)です。

[出力]タブから出力ウィザードを起動。
手順1.で[ファイル作成]を選択。

手順2.で[MPEG4-AVC]を選択。プロファイルを新規に編集し、

- 動画タブ -
解像度:1440x1080
レートコントロール 長さ:15(既定)、Bフレーム:2(既定)、BBIBBPBBPBBPBBP(既定)
エントロピーコーディング:CABAC(既定)
レートコントロール モード:CVBR(既定)、平均ビットレート:6133Kbps、最大ビットレート:12000Kbps
アドバンス 速度/画質インジケータ(0:最高速度、7:画質優先):6(既定)
デブロッキングの使用:On(既定)

x.v.Colorを有効にする:On

- 音声タブ -
音声圧縮:Dolby Digital(既定)
オーディオ圧縮率: 192Kbps

手順3.で出力ファイル名を指定(拡張子は.m2tsのみ)、GPU ハードウェアビデオエンコーダを有効にする:On

実は、最初このハードウェアエンコーダのチェックが灰色だったのですが、これには2点事前準備があり、

1)Windows7 BetaのWindows Updateで配布されているNVIDIAドライバは、版数が170系でCUDAのサポートは機能するが、今回のエンコーダライブラリに非対応。
改めてNVIDIAのWebから、Vista用の181.22をダウンロードしてインストールする必要がある。
(インストールして判りましたが、Vista用の181.22はインストーラがちゃんとWindows7にも対応してました(^-^;)

1)メインメニューの[編集]-[環境設定]の編集タブで、GPUのアクセラレーションに
チェックが入っている必要がある。

これで、ハードウェアエンコードが使用できます。

さて、結果ですが。
18分かかんなかったよ。(´・ω・`)
えーっ!?

出来上がった.m2tsですが、PowerDVD8で再生する限りなんも問題ない感じです。
画質も問題にならないと思います。
CGで書かれているシーンで、少しビットレートが足らないのか荒く感じるシーンが少々ありましたが、絵的にはかなり安定しています。

出来上がったファイルサイズは1.17GBで、狙ったDVDに4話のラインはギリギリクリアできていると思われます。

実は、出力方式をMPEG4-AVCとするとAVCHD互換で生成される為か、解像度が720x480か1440x1080か1920x1080しか選べません。1280x720が選べれば余裕で4話イケそうなんですが、互換性も重要だしソフトの性格(出発がDVD用のタイムライン編集)を考えれば仕方ないですかね。

しかし、CUDAのエンコードライブラリの威力は存分に判ったので、これでHD録画しているTSをついに圧縮に入れます。

同じライブラリをTMPGEncが使用するとしたら、そちらを待っても十分価値のあるアップデートが期待できますね。

作ったファイル、通しで大体見ました。

・爆風のような表現で、雲の中にブロックノイズが出ているのが判る。ビットレート不足らしい。元ソースのMPEG2-TSでは破綻はないが、同シーンは15Mbpsとかに跳ね上がってる。

・PowerDVD8での再生時、ごく一部でコーミングノイズが出た。TMPGEncで確認したところ、どうやらインタレースのままでエンコードされている模様。フレームレートは29.97fpsになっている。

・タイムライン編集でCMをカットしたつもりだったが、一部残った。フレーム単位編集ができるのかどうか、確認しなおしたほうがいいかも。
(ここまで)

ありがとうございました。GeForce8800GTという一世代前~機能的には十分現役ですけど~にも関わらず、1440x1080の動画を実時間以下のタイムでエンコードしてしまう速度には驚かされます。同条件でSpursEngineと比較してみたいですね。コーミングノイズが出るのは、AVCHD準拠のm2tsフォーマットのためではないかと思われます。SpursEngineでもDMWやFIRECODER Bluを使うとそのような形式でのみ出力されますしね。
日本ではアイオーデータ・バッファローの両メーカーの製品によくバンドルされ、お馴染みにも関わらず人気のないPowerDirectorですが、エンコードしかできず、日本語ファイルの扱えないないBadaboomや現状フィルタ用途としてしか使えないTMPGEncXpressと違い、日本語の映像ファイルにカット編集処理を行いつつ、フィルタとエンコードの両方をCUDAで行うことを実現した初のソフトとなりました。ほしい人には代えの利かない逸品となりそうです。CUDAフル対応版がバンドルされたGeForce搭載のグラボなどが製品化されることを期待したいですね。

コメント (26)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 姉Tマンションの光ケーブルの... | トップ | そういや全然普及してないDTC... »

26 コメント

コメント日が  古い順  |   新しい順
PowerDirector 7がATIストリーム対応に期待? (genpaku)
2009-02-04 23:10:46
私もPowerDirector7を買い、動画編集をしてますが、ビデオカードは、ATI Radeon™ HD 4850なので

http://www.pronews.jp/news/cyberlink-powerdirector-7.html

PowerDirector7のAMD GPU対応バージョンは、2月にリリース予定なので期待して待ってます。

GeForce9800GTX+も所有してますが、ドライバーなどを入れ替えるのに苦労するらしいので二の足を踏んでいます。
返信する
Unknown (krmmk3)
2009-02-04 23:42:15
>genpakuさん
Power Directorは最初にATI Streamに対応を表明したソフトですから、RADEON派にも注目ですね。なんかSpursEngineにも対応するとか言ってますけど。GPGPUエンコの人気が出れば、PowerDirectorも定番になるかも知れませんね。
返信する
Unknown (Unknown)
2009-02-05 11:06:47
うちで使ってるPD7体験版では他の解像度も選べるけどなあ。
720P不可はDVD Suite版の機能制限なのかな?
画質面は・・・・
エンコするならできるだけ低レートでという主義なんですけど、その用途ではBadaboomに劣りますね。
設定レートより高く出力されるのも・・・
ATI Stream対応のアップデータが昨日出たみたいですけど、
エンコ対応とか詳細はどうなんでしょ?
返信する
Unknown (N.Shim@)
2009-02-05 15:16:31
昨日新しいアップデータが公開になったんですねぇ。
昨日は別なことやってて気がつきませんでした。今日帰ったらまたアップデートして確認してみたいと思います。

badaboomとPowerDirectorのエンコード比較は面白そうですね。
badaboomは最近イーフロンティアでの扱いが始まったっぽいんですが、まだ本家から購入する1.1のまんまみたいで、日本語化されたわけではありません。
ホームページでは触れられていませんが、日本語ファイル名もダメなままなんでしょう。

badaboomとPowerDirectorはソフトの方向性も違うんですが、使いやすさはbadaboomが上でしょうね。
PowerDirectorはエンコーダとして使うには全体的に少々多機能すぎます。なんだか画面も分かりにくい感じだし。
ただ、エンコード設定の自由度が低い感じは受けませんし、出来上がったファイルの互換性はbadaboomより高いのではないかと思うので、それぞれ進化していってもらえるとユーザーとしては嬉しいです。
返信する
Unknown (Unknown)
2009-02-05 20:14:42
>PowerDirector
そんなに複雑ですか?

しょっちゅうキャプチャボードに付いてきてたんで、むしろアレくらいじゃないと機能が低く感じてしまう

まぁ、単にカットするだけなんでTMPGEnc(廉価版)で済ませちゃってますけど
返信する
Unknown (krmmk3)
2009-02-06 01:34:48
>2009-02-05 11:06:47さん
主にVBRにするせいかも知れませんけど、編集ソフトってあまりビットレートを守らない傾向がありますね。画質はBadaboomの方が好印象ですか。ソフトの傾向のせいかも。
アップデートファイルには「ATIStreamサポート」とはありましたけど、何をどうサポートしたか書いていないのは残念です。誰かRADEON派でPowerDirector使いの人、試してないですかねぇ。

>N.Shim@さん
PowerDirectorはビデオカメラなどから保存用動画を作るのがメインで、Badaboomは完成した動画からポータブル用などに変換するのが目的、な印象がありますから、低ビットレート時にはBadaboomが有利かな? 両者は済み分けられる存在ですから、いろいろやってほしいものです。

>2009-02-05 20:14:42さん
わたしは体験版しか使ってませんけど、16:9の映像モードにするのに右上のアイコンから選ばなきゃならないとか、結構設定があちこちに分かれていて散漫な印象を持ちました。初期設定がややこしいのと、エンコードだけできればいい人には扱いにくいというのはどうしてもありますね。
返信する
新アップデータのテスト (N.Shim@)
2009-02-06 05:10:15
帰ってから、ATIのテクノロジ対応も行われたというPowerDirector7(7.0.2519)でテストを行いました。

※私の環境ではATIに関するテストが出来ないのですが、Readmeによると出力ウィザードでMPEG2かMPEG4の場合にGPUハードウェアエンコードのチェックボックスを入れておくと、CUDA・ATI AVTエンコードが有効化されるそうです。
なお、私のCUDA環境ではMPEG2時にはこのチェックボックスが灰色で、MPEG4-AVCでしか有効になりません。

今回は以前badaboomでもテストに使った、HDUSで録画したマクロスFのMPEG2-TSをオープニング、一部CM、エンディング、次回予告にカット編集したもの、3分48秒。

エントリに転記していただいたコメントの中で、「AVCHD互換だからか720x480、1440x1080、1920x1080しか選べない」と書きましたが、これは私が出力ウィザードのプロファイルタイプのカスタマイズの仕方が判らなかったからで、プロファイルを編集すれば、320x240、352x240、640x480、704x480、1280x720も選択可能でありました。

ということで、今日のテストでは解像度は1280x720とし、ビットレートを少し調整してみました。
パターン1:平均ビットレート6000Kbps、最大ビットレート12000Kbps、
パターン2:平均ビットレート8000Kbps、最大ビットレート16000Kbps
どちらの設定でも速度/画質インジケータは画質優先の7で。

結果、
パターン1はエンコード時間が2分57秒、ファイルサイズが201.3MB位
パターン2はエンコード時間3分ジャストで258.8MB位でした。

画の印象ですが、絵的な破綻は見られず、頑張っている違和感の少ない感じです。が、パターン2でもなんというか、粒状感がかなりあります。
これはもしかしたら、エンコーダの癖ではなく、PowerDirectorで映像リサイズをやってるからなのではないか、と思いました。

なので、ビットレートはパターン2のままで、解像度を1440x1080に変更してパターン3として再度エンコード。今度は3分21秒かかりました。ファイルサイズは261.2MBです。
パターン3は粒状感は改善されたものの、依然感じますねぇ。

さて、一方のbadaboomなんですが、昨日1.1.1が公開になっていました。基本的に機能追加はなく、バグ修正・安定度向上が目的のアップデートとのこと。
こちらもWindows7 Beta環境に入れてテストしてみます。
(余談ですが、なんか、インストール上限を超えたみたいなエラーで体験版モードになってしまいました。問い合わせメール出すか)

こちらでは、1440x1080、MainProfile、CABAC On、VBRで8000kbps、フィルムモードをAutoで、デインタレースOn。
フレームレートは22.?fps(メモ忘れ)で、エンコード時間は4分台後半でした。ファイルサイズは226MBです。

こちらは出来上がるファイルの拡張子が.mp4で、このファイルはDVD Suite7に含まれるPowerDVD8では再生できませんでした。Media Playerでは再生され、音声も正常に出ています。

画質はPowerDirector7のパターン3と比べてもグッと良いです。粒状感も感じないし、ブロックノイズもほとんど発生しません。(一部動きが速いシーンで感じるかな)
badaboomは1.1のテストを終えた後少しほおっておいたのですが、これならPowerDirectorの出力よりbadaboomの出力のほうが良いですねぇ。

どこかアップローダか何か使って、スクリーンショットをお見せできると、画質の違いも判り易いんでしょうが…。
返信する
Unknown (krmmk3)
2009-02-06 22:14:15
>N.Shim@さん
わたしらからみたらMPEG2はあまりいらないわけですけど、ATIStreamの方が機能が上なのは、配布されたSDKの機能によるものなのでしょうか。AMDはエンコードにより力を入れているのかも。
Badaboomの方がやはり画質がいいんですね。さすがに先行しているだけに、一日の長がありますね。
返信する
Unknown (genpaku)
2009-02-10 01:08:48
遅ればせながらPowerDirector7のATI Streamに対応バージョンの結果を。

環境は
CPU:Core2Duo E8400(3.0GHz)
→Intel Core 2 Quad Q9650(予定)
Mem:DDR2-800 4GB(3.25GB)
VGA:Radeon? HD 4850
SpursEngine:WinFast PxVC1100
OS:WindowsXP PRO SP3。

元ファイルは、HDUSでTS抜きで1440x1080 29.97/4分17秒 435MB。

TSからMPEG4-AVCにエンコードしてみました。

N.Shim@さんの手順と同じで
PowerDirector7の[出力]タブから出力ウィザードを起動し、
手順1.で[ファイル作成]を選択。
手順2.で[MPEG4-AVC]を選択。プロファイルを[動画保存-高画質]を選択。

解像度:1920x1080
レートコントロール 長さ:15(既定)、Bフレーム:2(既定)、BBIBBPBBPBBPBBP(既定)
エントロピーコーディング:CABAC(既定)
レートコントロール モード:CVBR(既定)、平均ビットレート:14800Kbps、最大ビットレート:15800Kbps
アドバンス 速度/画質インジケータ:6(既定)
デブロッキングの使用:On(既定)
x.v.Colorを有効にする:On

GPUハードウェアエンコードの有効時
エンコード時間が5分2秒、ファイルサイズが422MB位

GPUハードウェアエンコードの無効時
エンコード時間が14分12秒、ファイルサイズが445MB位

ついでにWinFast PxVC1100をDVD Movie Writer5でSpursEngineパワーを使い、[1920X1080-H264]形式にしてみました。
エンコード時間が3分00秒、ファイルサイズが569MB位

という結果になりました。

今は、エンコードに時間がかかり過ぎなのでTSのままで保存してます。

CPUをIntel Core 2 Quad Q9650にする予定なのでエンコード時間が少しでも短縮できればと思います。
返信する
Unknown (krmmk3)
2009-02-11 01:01:55
>genpakuさん
さすがに4850だけのことはありますね、そのくらい出るとSpursEngineもちょっと肩身せまくなっちゃいますね。30分ものだと、20分少々程度くらいかな? 乱暴な計算で。GeForceだと、9800クラスで追いつけるかな? 位でしょうか。どこか機材がそろえられる商業サイトとかで徹底速度比較してほしいものです。
返信する

コメントを投稿

FIRECODER Blu/SpursEngine」カテゴリの最新記事