問題
10秒ほど放置すると,次に音を出す時に最初が数秒消える(またはプツッという)。
Windows 11でこの問題が起こる。(他は知らん)
原因
オーディオの省電力機能(パワーマネジメント)が過剰に働いている時によく起こる
解決策
場所間違えると大変なことになりますので慎重に。ここから先はWindowsの脳を直接いじっているのと一緒です。やり直しは効きませんので,不安な人は最初の値が何だったかを記録したほうがいいかも。
1. レジストリエディターを開く(スタートメニューで「regedit」と検索)。
2. 以下のパスまで移動。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}
3. XXXXと書かれてるフォルダを漁る
右側の画面に出る DriverDesc という項目のデータ欄が,Realtek ... と書いてあれば,スピーカーをパソコン本体の穴に刺していて音声が途切れる場合,このフォルダを選択する。
今回はPCのイヤホンジャックにさしても音が鳴らないので「Realtek High Definition Audio」とデータ欄にある0006を使う。
4. 「PowerSettings」というフォルダをクリック
5. その中にある3つの値を変更( 0a 00 00 00 など → 00 00 00 00 )
ConservationIdleTime: 00 00 00 00
IdlePowerState: 00 00 00 00
PerformanceIdleTime: 00 00 00 00
6. PCを再起動
何をしたか
最近のWindowsとオーディオチップ(Realtekなど)は,0.1秒でも音が出ていなければ,即座にチップの電源を切って休ませるという非常に極端な省電力設定がデフォルトになっている。音が鳴り始めた瞬間にチップがいちいち再起動するが,その起動に約0.5秒〜1秒かかるため,起動を待っている間の音が消えて聞こえなくなるということが発生する。
1. ConservationIdleTime(省エネ時の待機時間)
- 意味:バッテリー駆動時や,省電力モードのときに,「音が止まってから何秒後にチップを寝かせるか」の設定
- デフォルト値(例:0a 00 00 00): 16進数で
0a= 10秒 - 00にすると: 「どんな時でもスリープのカウントダウンを始めるな」という命令になる。
2. IdlePowerState(スリープの深さ)
- 意味: 待機時間が経過したあと,「どれくらい深い眠り(省電力状態)に入るか」を指定する値。
- 内部的な値:
-
01(D1状態):浅い眠り(すぐ起きるが電気を食う) -
03(D3状態):電源オフ(電気は食わないが,起きるのに時間がかかる)
-
- 00にすると:「スリープモードに入るな(常に D0 = フル稼働状態)」という命令になる
3. PerformanceIdleTime(通常時の待機時間)
- 意味: ACアダプターを繋いでいるときに,「音が止まってから何秒後に寝かせるか」の設定。
- 元の値(例:0a 00 00 00): たった10秒
- 00にすると: 「電源に繋がっている時も寝ない」という命令になる。
ちなみにほぼすべてのデスクトップパソコンで,オーディオチップを数ワット節約するために不便を強いて節電する必要は全くない。
なんでこうなってるか
Windowsもスマホのように「バッテリーを1分でも持たせる」設計思想に寄っているため,デスクトップPCであっても同じルール(電力制限)が適用される。
地球に優しいというお墨付きをもらうために,ユーザーが『不便だ!』と感じてもお構いなく節電モードに入りたがる。
企業や政府機関がパソコンを大量購入する際,「EPEATのゴールド認定を取得していること」を条件にすることが多いため,メーカーとしては何が何でもこの基準をクリアしたい。待機電力を0.1Wでも下げることで環境基準(EPEATなど)をクリアしようとするため,ユーザーの利便性よりも「勝手に寝る設定」が優先されがち。
感想
こんな奥深くに置かなくても設定でいじれるようにすればいいと思う。
あとPerformanceIdleTimeはべつにデフォルト0でいいと思う。



