Discussion:
WMP 11 for XPで、24bit/48KHzのWavファイルが再生できません。
(too old to reply)
Figgy
2010-03-19 04:00:01 UTC
Permalink
OTOTOY(ototoy.jp)という音楽サイトでHQDという高音質デジタル音源を購入しました。
HQDと読んでおり、24bit/48KHzのサンプリングレートですが、ファイル形式はWAVです。
このファイルはiTunesやQuickTime他のプレーヤで再生可能です。

WMP 12 for Windows7, WMP 11 for Vistaでは再生できました。
しかし、WMP 11 for XPでは、どのリビジョンでも再生できません。
最終的には、Windows Updateを最新にした、

Windows XP SP3 + Windows Media Player 11 (11.0.5721.5145, 11.0.5721.5268)

で、検証した8曲すべてエラーとなり、再生できません。エラーメッセージは「コーデックをダウンロードしてください」。

以下はインターネットで探したその理由です。
これは、WMP 11/12はHD
WAVファイルそのものを再生する機能がある(コーデック不要)のだが、WAVファイルのヘッダーチェックがWMPでは厳しくて、その通りに作っていないWAVファイルは再生できないというもの。
しかし現在はVista SP2 WMP 11やWindows 7 + WMP 12は全曲再生できており、このチェックは緩くなっているものと思われます。
同じWMP11なのにXP用では再生できないというのは整合性がありません。困ります。XPユーザが多いので、ぜひVista
WMP11と同じく再生可能に修正してもらいたいです。なおちまたの回避策はセキュリティなど怖いのでやりたくありません。

【XP + WMP 11で再生できない理由】
・Windows Media Playerはもともと24/48などのHD Audio WAVファイルを再生
可能。
・そのときのWAVファイルは、マルチチャネル/HD Audioに対応した
 WAVEFORMATEXTENSIBLEヘッダー形式でデータフォーマットを記述していなけれ
 ばならない。
・WAVEFORMATEXTENSIBLEフォーマットは、2チャンネル以上/HD Audio用のヘッダ
ーで、古いWAVEFORMATEXヘッダーを拡張したもの。
・Windows XP用WMP11でHQD WAVファイルが再生できないのは、そのWAVファイ
ルがWAVEFORMETEXTENSIBLEヘッダーではなく、 WAVEFORMATEXのみを使用して
いるためと推測される。再生エラー時には、「このファイルを再生するには、
オーディオ コーデックが必要です。」と表示されるが、実はコーデックの問題
ではない。
・Windows Vista用WMP11とWindows 7用WMP12では仕様が緩和され、
 WAVEFORMATEXヘッダーのみのHQD WAVファイルも読めるようになったと推測
 される。

参考:WAVEFORMATEXTENSIBLEの構��
http://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.xaudio2.waveformatextensible(VS.85).aspx

【本来の解決策】
・HD Audio WAVファイルの作成者が、WAVEFORMATEXTENSIBLEに対応した正しい
 デバイスドライバとソフトを使用してWAV形式ファイルを作成する。
 (しかし音源配信元にそれを要求しても、そもそも作成ソフトやシステムがそうなっていないので無理な話です)

【使用ソフトウェア上、上記の対応ができないとき】
・残念ながらそのWAVファイルはXP用WMP11では再生できない。

【Webサイトにあった回避策情報】

再生できない原因は当該HQD
WAVファイルがWAVEFORMATEXTENSIBLEヘッダーを使わずWAVEFORMATEXヘッダーだけでフォーマットを記述しているため。

それを読み込めるようなフィルタを作った方がいます。
このフィルタは再生時にWAVファイルのWAVEFORMATEXヘッダーを読み込んで
オンデマンドでWAVEFORMATEXTENSIBLEに変換するもので、元のHQD WAVファ
イル自体には全く変更を加えずに再生するものです。
このフィルターを使うためには、フィルターファイルをハードディスクにコピ
ーして、コマンドで登録する必要があります。

下記のブログでこの件が取り上げられ、Chris Parson氏が再生出来ない理由と
対応策を投稿しています。
--------
"Jon Gallant's Blog : How to play 24 bit WAV files in Windows Media Player
& Media Encoder"
http://blogs.msdn.com/jongallant/archive/2007/05/23/how-to-play-24-bit-wav-files-in-windows-media-player-media-encoder.aspx

# Chris Parsons said: As Gordon Currie already pointed out the problem is
not Windows Media Player but the WAV container, more specificly the format
block stored in the WAV container.

Windows Media Player *does* support multi-channel, 24/32-bit WAV files out
of the box, but the format block must use the WAVEFORMATEXTENSIBLE header.
Why Microsoft decided to force this I'm not sure, I understand giving the
option but it creates a lot of headaches by not supporting the legacy format.

That is why I wrote a DirectShow filter that gets inserted automatically
when needed to translate from the WAVEFORMATEX format to the
WAVEFORMATEXTENSIBLE format. Don't worry, not a single bit of data is
changed in any way, what comes in is what goes out. Whether your sound card
actually supports greater than 16-bits is a different issue but at least the
files will play.

Get it here:

http://chrisnet.net/code.htm

Scroll down to Legacy HD Audio Filter
---------
そのChris Parson氏によるフィルタとソースコードが置いてあるサイトがここです。
http://chrisnet.net/code.htm
このサイトの
Useful Apps
- Legacy HD Audio Filter
が、そのフィルターです。


以上です。よろしくお願いします。
Figgy
2010-03-19 04:05:02 UTC
Permalink
追加情報ですが、これらのHQD音源ファイルはDRMフリーです。
Post by Figgy
OTOTOY(ototoy.jp)という音楽サイトでHQDという高音質デジタル音源を購入しました。
HQDと読んでおり、24bit/48KHzのサンプリングレートですが、ファイル形式はWAVです。
このファイルはiTunesやQuickTime他のプレーヤで再生可能です。
WMP 12 for Windows7, WMP 11 for Vistaでは再生できました。
しかし、WMP 11 for XPでは、どのリビジョンでも再生できません。
最終的には、Windows Updateを最新にした、
Windows XP SP3 + Windows Media Player 11 (11.0.5721.5145, 11.0.5721.5268)
で、検証した8曲すべてエラーとなり、再生できません。エラーメッセージは「コーデックをダウンロードしてください」。
以下はインターネットで探したその理由です。
これは、WMP 11/12はHD
WAVファイルそのものを再生する機能がある(コーデック不要)のだが、WAVファイルのヘッダーチェックがWMPでは厳しくて、その通りに作っていないWAVファイルは再生できないというもの。
しかし現在はVista SP2 WMP 11やWindows 7 + WMP 12は全曲再生できており、このチェックは緩くなっているものと思われます。
同じWMP11なのにXP用では再生できないというのは整合性がありません。困ります。XPユーザが多いので、ぜひVista
WMP11と同じく再生可能に修正してもらいたいです。なおちまたの回避策はセキュリティなど怖いのでやりたくありません。
【XP + WMP 11で再生できない理由】
・Windows Media Playerはもともと24/48などのHD Audio WAVファイルを再生
可能。
・そのときのWAVファイルは、マルチチャネル/HD Audioに対応した
 WAVEFORMATEXTENSIBLEヘッダー形式でデータフォーマットを記述していなけれ
 ばならない。
・WAVEFORMATEXTENSIBLEフォーマットは、2チャンネル以上/HD Audio用のヘッダ
ーで、古いWAVEFORMATEXヘッダーを拡張したもの。
・Windows XP用WMP11でHQD WAVファイルが再生できないのは、そのWAVファイ
ルがWAVEFORMETEXTENSIBLEヘッダーではなく、 WAVEFORMATEXのみを使用して
いるためと推測される。再生エラー時には、「このファイルを再生するには、
オーディオ コーデックが必要です。」と表示されるが、実はコーデックの問題
ではない。
・Windows Vista用WMP11とWindows 7用WMP12では仕様が緩和され、
 WAVEFORMATEXヘッダーのみのHQD WAVファイルも読めるようになったと推測
 される。
参考:WAVEFORMATEXTENSIBLEの構造
http://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.xaudio2.waveformatextensible(VS.85).aspx
【本来の解決策】
・HD Audio WAVファイルの作成者が、WAVEFORMATEXTENSIBLEに対応した正しい
 デバイスドライバとソフトを使用してWAV形式ファイルを作成する。
 (しかし音源配信元にそれを要求しても、そもそも作成ソフトやシステムがそうなっていないので無理な話です)
【使用ソフトウェア上、上記の対応ができないとき】
・残念ながらそのWAVファイルはXP用WMP11では再生できない。
【Webサイトにあった回避策情報】
再生できない原因は当該HQD
WAVファイルがWAVEFORMATEXTENSIBLEヘッダーを使わずWAVEFORMATEXヘッダーだけでフォーマットを記述しているため。
それを読み込めるようなフィルタを作った方がいます。
このフィルタは再生時にWAVファイルのWAVEFORMATEXヘッダーを読み込んで
オンデマンドでWAVEFORMATEXTENSIBLEに変換するもので、元のHQD WAVファ
イル自体には全く変更を加えずに再生するものです。
このフィルターを使うためには、フィルターファイルをハードディスクにコピ
ーして、コマンドで登録する必要があります。
下記のブログでこの件が取り上げられ、Chris Parson氏が再生出来ない理由と
対応策を投稿しています。
--------
"Jon Gallant's Blog : How to play 24 bit WAV files in Windows Media Player
& Media Encoder"
http://blogs.msdn.com/jongallant/archive/2007/05/23/how-to-play-24-bit-wav-files-in-windows-media-player-media-encoder.aspx
# Chris Parsons said: As Gordon Currie already pointed out the problem is
not Windows Media Player but the WAV container, more specificly the format
block stored in the WAV container.
Windows Media Player *does* support multi-channel, 24/32-bit WAV files out
of the box, but the format block must use the WAVEFORMATEXTENSIBLE header.
Why Microsoft decided to force this I'm not sure, I understand giving the
option but it creates a lot of headaches by not supporting the legacy format.
That is why I wrote a DirectShow filter that gets inserted automatically
when needed to translate from the WAVEFORMATEX format to the
WAVEFORMATEXTENSIBLE format. Don't worry, not a single bit of data is
changed in any way, what comes in is what goes out. Whether your sound card
actually supports greater than 16-bits is a different issue but at least the
files will play.
http://chrisnet.net/code.htm
Scroll down to Legacy HD Audio Filter
---------
そのChris Parson氏によるフィルタとソースコードが置いてあるサイトがここです。
http://chrisnet.net/code.htm
このサイトの
Useful Apps
- Legacy HD Audio Filter
が、そのフィルターです。
以上です。よろしくお願いします。
JR K yoshikawa
2010-03-19 11:37:41 UTC
Permalink
$B0J>e$G$9!#$h$m$7$/$*4j$$$7$^$9!#(B
$B2?$r4uK>$5$l$F$k$N$+$,ITL@$G$9!#(B

Microsoft $B$K(B Windows Media Player $B$N=$@5$J$I$r4uK>$5$l$F$$$k$N$G$"$l$P!"(B
Microsoft $B$N(B $B%+%9%?%^!<(B $B%5%]!<%H(B $B$N$7$+$k$Y$-$H$3$m$KO"Mm$9$k$+!"(B

http://www.microsoft.com/japan/customer/

$B$"$k$$$O!"(B $B<!4|%P!<%8%g%s$K4|BT$9$k$N$G$"$l$P!"(B
Beta Test$B$K;22C$7$F!"(B Feed Back $B$9$k!#(B
$B$J$I$N$[$&$,M-8z$@$H;W$$$^$9!#(B

$BEj9FA0$K!"(B $B2<5-$N(BSite$B$K$"$k!"(B
$B%f!<%6(B $B%,%$%I!"(B $BEj9F%k!<%k$H%^%J!<!"(B FAQ $B$J$I$KL\$rDL$7$FCV$+$l$k$3$H$r$*4+$a$7$^$9!#(B

$B%^%$%/%m%=%U%H(B $B%K%e!<%9%0%k!<%W(B
http://www.microsoft.com/japan/communities/newsgroups/default.mspx


"Figgy" <***@discussions.microsoft.com> wrote in message news:BCCDBF12-1F60-4258-856E-***@microsoft.com...

Loading...