Navigation Log - なびろぐ -
2005/03/28

...X680x0 spirit inside...

この日記はGNSで生成しています。
この日記の画像はOPTPiX webDesigner Ver.4で生成しています。

hauN
Go amazon.co.jp

■ご注文リストから■ [一覧]
■Amazonギフト券■ [購入]
Splatoon2 (スプラトゥーン2)|オンラインコード版 []
Splatoon2 ...
Amazonほしい物リスト


2005/03/28 (月)

TMPGEnc 2.5でAVI Codecが選べなくなる問題 (PC, MOVIE)

_ いいかげんDivXを5.2台にするかと、エンコ作業が少なくなる今週を狙ってサブマシンで試験を始めようとしたんだが、DivXをアップデートした途端にTMPGEnc 2.5の圧縮CodecにDivXが表示されず、選択できなくなる罠。

_ なんじゃこりゃーと、別のマシンで同様に試験してみたら、DivXはおろかWMV9VCMまでも表示されない罠。

_ さんざん調べたあげく、ようやく原因っぽいものがわかった・・・ということで、サポート掲示板に投稿。一応コピーをここに。


過去何度か「TMPGEnc 2.5でAVI出力時の映像CodecにDivXなどが表示されない」という
問題の報告があったようですが、原因がわかりましたのでレポートいたします。

まず、レジストリエディタで、以下をテキストにexportしてください。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32

このとき、exportされたテキストのセクション
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
にドライバ情報が列挙されますが、ここのリストの「先頭約64個くらいまでしか
TMPGEnc 2.5が認識しない」のが不具合の原因です。

現在のWindows XPでは、ここに70〜80個のドライバが列挙されることが珍しく
ありません。このため、64個を超えている状態でDivXの新規インストールや
バージョンアップなどを行うと、DivXのドライバ情報はリストの一番最後に
なってしまい、TMPGEnc 2.5で列挙されなくなります。

(レジストリエディタ上では、登録順でなくABC順に並べ替えて表示されて
しまうため、ドライバの登録順序を知ることはできません。登録順序を知るには、
exportする必要があります。)

TMPGEnc 2.5の次バージョンがもし出るのであれば、ドライバの列挙個数を増やすよう
改善をお願いしたいと思います。

--

とりあえずの対処方法です。
このexportしたテキストをエディタで開いて、"VIDC.????"="????"という行をリストの
手前に持ってくるよう修正します。たとえば、

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
"midimapper"="midimap.dll"
"msacm.imaadpcm"="imaadp32.acm"
"vidc.cvid"="iccvid.dll"
"vidc.DIVX"="DivX.dll"

このようになっていたら、次のように並べ替えます。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
"vidc.cvid"="iccvid.dll"
"vidc.DIVX"="DivX.dll"
"midimapper"="midimap.dll"
"msacm.imaadpcm"="imaadp32.acm"

次に、このレジストリエントリのツリーをレジストリエディタでツリーまるごと
削除します。削除する場所や手順を間違うと、Windows環境を破壊しますので注意。

最後に、exportして順序を修正したテキストをレジストリエディタに読み込ませ、
レジストリエントリのツリーを再構成させます。

TMPGEnc2.5を起動し、AVI保存コーデックに各ドライバが表示されるのを確認して、
作業終了です。

_ しかし、しばらく後に「Codecの登録数には依存しない」というリターンが。ということで追加調査のうえ、以下の結論に。


> TMPGEncシリーズでは Video for Windows の標準的な機能を使いましてコーデック
> の取得を行っており、現在の仕様で検証を行ったところ、64個以上のコーデックを
> レジストリに登録しましても、64個を超えるコーデックの取得は出来ております。

追試の結果、当方のもとにおいては"ITIG726.acm"という音声Codecより後のビデオCodecが
認識されないという問題であることがわかりました。
個数によるものではなかったことをお詫びします。

ただ、一般的な列挙API(ICInfo(ICTYPE_VIDEO, num, &info))では音声Codecをskipする
ことができ、現に3.0 XPressではskipできていますが、2.5ではskipできていないようです。

_ まあ何にせよ、「Codecの登録順によって不具合が起こる可能性がある」という結論で。





メールはこちらへ...[後藤浩昭 / Hiroaki GOTO / GORRY / gorry@hauN.org]

「表紙へ戻る」
「会議室」 「最新版」 「なびろぐindex」 「GNSソースを読む」