PCオーディオ好きな人であればUSB DACを使い、foobar2000などのソフトを利用して楽しんでいるので、問題はないが、大半の人はiTunesやWindows Media Playerで聴いているわけであり、それはすなわち音質劣化した再生を意味する。Macなら問題ないのに、Windowsだと音が悪いというのは、やっぱり不幸なことだ。
この通り、ピーク リミッタは Windows Vista 以降のオーディオ エンジンに搭載された比較的歴史の浅いものです。一般の人は、複数のソースからオーディオを再生することもあると思います。例えば YouTube で音楽を聴いているときに、Windows のシステム サウンドが流れることもあるし、ゲーム本来の BGM の代わりに、SE は残しつつ、自分の好きな音楽を流しながらゲームをプレイする人もいるでしょう。それで 0 dB を超えてしまってクリップしたら最悪なので、ピーク リミッタには十分な意義はあると思います。 というかここまで書くなら、余計に WASAPI 排他モードでいいじゃんって話です。あくまでメジャーなメディア プレイヤーにこだわるならば、Windows が悪いんじゃなくて、WASAPI 排他モードを実装しない iTunes や Windows Media Player が悪い。
Windows のオーディオ再生の仕組みに関しては、#2999582 [srad.jp] で書いた通り、Windows XP までのカーネル ミキサーが Windows Vista でオーディオ エンジンに刷新されています。それまではオーディオ再生の問題が原因で BSoD を引き起こすこともあったし、アプリケーションの音量を個別に制御する(音量ミキサー)ことも出来ませんでした (そういえば、Windows 10 の XAML ベースの音量コントロールは音量ミキサーが利用できないので不便)。
ちなみに、この刷新によって DirectSound 3D や、クリエイティブのEnvironmental Audio Extensions (EAX) はハードウェアで処理できなくなっています。クリエイティブは互換性を提供するため、これらを OpenAL という API で処理できる Creative ALchemy というテクノロジをリリースしています(4Gamer.net の記事が参考になる [4gamer.net])。
今の PC ゲームがどういう実装なのかはわたしも知りません。XAudio2 なのだろうか。
Windows Audio Session API (WASAPI) 排他モードじゃダメなんですか… (スコア:4, すばらしい洞察)
Windows 7 のものですが、Windows の オーディオ アーキテクチャに関しては Windows Multimedia Hacks の投稿 [microsoft.com]が参考になります。
Re: (スコア:0)
Webブラウザとかゲームとかそもそも排他モード指定できないアプリケーションも多いし意味はあるのでは?
Re: (スコア:0)
ReClock [redfox.bz]使えばアプリ指定でWASAPI経由に出来ると思われ
Re: (スコア:0)
よりによってあのRedFox(旧:SlySoft)か…
AnyDVDのLTLの件でアレされたからなあ…
Re: (スコア:0)
WASAPI排他モードを指定できないアプリが物理メモリに書き込めるのですか? あまりにも仮定に無理があると思うのですが。
Re: (スコア:0)
読まずにコメするスラド民の鑑
Re:Windows Audio Session API (WASAPI) 排他モードじゃダメなんで (スコア:4, すばらしい洞察)
PCオーディオ好きな人であればUSB DACを使い、foobar2000などのソフトを利用して楽しんでいるので、問題はないが、大半の人はiTunesやWindows Media Playerで聴いているわけであり、それはすなわち音質劣化した再生を意味する。Macなら問題ないのに、Windowsだと音が悪いというのは、やっぱり不幸なことだ。
と WASAPI 排他モードに関して言及されているじゃないかという反論だと思うのですが、そもそも「やっぱり不幸なことだ。」という断定がよくわからない。
一般の人たちはローカルかクラウドかを問わず、MP3 や AAC などのロッシー音源を聴いていて満足しているわけで、Windows のオーディオ エンジンを通したことによる音質劣化なんて気にもならないと思うから。
ピュア オーディオ志向で、PC オーディオ環境の構築を目指すなら、リッピングは Exact Audio Copy (EAC) でセキュアモード、フォーマットはロスレスないし非圧縮で、使用する光学ドライブに適当なオフセット訂正値を設定して、可能ならリードイン・リードアウトのオーバーリードもすべきだと思う。オーディオ エンジンによる音質劣化を気にする前に、ソースがロッシー音源という時点でありえない。
それで、そこまで拘る人なら、iTunes や Windows Media Player, Groove ミュージックを再生ソフトとして使うはずもなく、最低限 foobar2000 で WASAPI (排他モード) の event 駆動、マルチメディア クラス スケジューラ サービス (MMCSS) のプライオリティは Pro Audio で再生するくらいのことはすると思う。もちろん DAW で聴く人とか、いろいろいるからこれは一例だけど。
それで、そんなのどうでもいい、聴きたい曲が普通に聴ければ満足だという人たちには、現状の実装で何ら問題ないと思うのです。そしてそれが不満な人たちには、オーディオ エンジンをバイパスするテクノロジがネイティブで用意されている。それで十分だとわたしは思います。
Re:Windows Audio Session API (WASAPI) 排他モードじゃダメなんで (スコア:2)
「Windowsは音が悪い」、これは標準のドライバを使って再生する限りはどうしようもない問題で、これまでも何度も検証してきたとおりであり、Windows 10になっても改善されていない。もちろんASIOやWASAPI排他モードを使うことで、そうした問題を避けることは可能ではあるが、標準ドライバを使わざるを得ないiTunesやWindows Media Player、またWindows 10のGrooveミュージックやWindows 8/8.1のミュージックにおいては、どうしても音が劣化してしまう。ところが、そんな問題を解決してくれる非常に強力なフリーウェアが存在していた。川本優氏が作ったもので、2013年に登場し、アップデートによりWindows 10にも対応した。これで本当に問題が解決するのか実際にチェックした。
WASAPI 排他モード / ASIO に関して言及されているのはこちらの段落です。
Re: (スコア:0)
今時ピュアオーディオ志向ならハイレゾ音源の購入だと思いますが。
なぜいつまでも使い続けるのか不明のわざわざ音を劣化させる変換をするのが標準ってのは気分が悪い、ってだけでそれを打破するためのハックをする動機としては十分すぎると思います。
Re:Windows Audio Session API (WASAPI) 排他モードじゃダメなんで (スコア:1)
個人的にはハイレゾ音源より、例えば iTunes Store で ALAC でいいからロスレス配信してくれよと思うのですが、全然やる気なさそうですね…
ロスレス配信もハイレゾ配信もロッシー配信に比べたら数が少なすぎる。もう音楽ストリーミング配信がメインストリームだからダウンロード配信なんてやる気ないとかはありそう。
# DSD はネイティブ再生できるデバイスが少なすぎる…
Re: (スコア:0)
そもそもデビルイヤーの持ち主でなければ意味はないけどね…
Re:Windows Audio Session API (WASAPI) 排他モードじゃダメなんで (スコア:1)
問題となるのがピークリミッター。これはWindows Vista以降に搭載されたものであり、再生する音の音量が0dB近くになってくると勝手にリミッターが効いてしまうというもの。確かに、Windows Vista以降は複数のソフトで同時に音を出すことが可能になっているため、それがミックスされた結果、0dB(最大音量)を超えてしまうと歪んでしまうため、それを避けるためにリミッターが必要なのは事実。でも、音楽プレーヤーソフトで再生しているだけなら、リミッターなど無用の長物であり、音を劣化させるだけのものなのだ。
この通り、ピーク リミッタは Windows Vista 以降のオーディオ エンジンに搭載された比較的歴史の浅いものです。一般の人は、複数のソースからオーディオを再生することもあると思います。例えば YouTube で音楽を聴いているときに、Windows のシステム サウンドが流れることもあるし、ゲーム本来の BGM の代わりに、SE は残しつつ、自分の好きな音楽を流しながらゲームをプレイする人もいるでしょう。それで 0 dB を超えてしまってクリップしたら最悪なので、ピーク リミッタには十分な意義はあると思います。
というかここまで書くなら、余計に WASAPI 排他モードでいいじゃんって話です。あくまでメジャーなメディア プレイヤーにこだわるならば、Windows が悪いんじゃなくて、WASAPI 排他モードを実装しない iTunes や Windows Media Player が悪い。
Windows のオーディオ再生の仕組みに関しては、#2999582 [srad.jp] で書いた通り、Windows XP までのカーネル ミキサーが Windows Vista でオーディオ エンジンに刷新されています。それまではオーディオ再生の問題が原因で BSoD を引き起こすこともあったし、アプリケーションの音量を個別に制御する(音量ミキサー)ことも出来ませんでした (そういえば、Windows 10 の XAML ベースの音量コントロールは音量ミキサーが利用できないので不便)。
ちなみに、この刷新によって DirectSound 3D や、クリエイティブのEnvironmental Audio Extensions (EAX) はハードウェアで処理できなくなっています。クリエイティブは互換性を提供するため、これらを OpenAL という API で処理できる Creative ALchemy というテクノロジをリリースしています(4Gamer.net の記事が参考になる [4gamer.net])。 今の PC ゲームがどういう実装なのかはわたしも知りません。XAudio2 なのだろうか。
# このあたりは、Windows 秘話: Windows オーディオが暴走するとき [microsoft.com]も興味深い記事です。
Re: (スコア:0)
そもそも音楽好きがiTunes以外のプレーヤーを使っているであろうという前提はナンセンスですね。
WIN7から数種類のプレーヤーを使い、特にfoobar2000の設定には時間をかけてきましたが、曲の管理、選択、一覧についての機能は100ジャンル5万トラック(音楽好きとしては少ない方だと思います)ぐらいの中から気分で聴きたい曲を再生するには貧弱というレベルにも達していません。
使っておられる方には申し訳ありませんが、本当に音楽を聴いているのかな?と思ってしまいます。
Re: (スコア:0)
全くその通りですね。
タレコミ文でWindowsの悪口を書けと言ってるのに邪悪なM$を擁護するなんて
とんでもない工作員共です。