Windows はスリープ状態にするように指示しても、スリープ状態にならないことがあります。その原因は、powercfg -requests を実行して、サウンドが再生されていないにもかかわらず「オーディオ ストリームが現在使用中です」というメッセージが表示されたままになることです。少し奇妙に思えますが、多くの場合、バックグラウンド オーディオ ドライバーまたはサウンド システムをアクティブにしているデバイスが原因です。つまり、PC がビジー状態であると認識し、省電力モードをシャットダウンしないのです。通常、原因は Realtek ドライバー (特に専用のオーディオ デバイスを使用している場合) や、最近の USB/Bluetooth オーディオ ガジェットです。NVIDIA HDMI サウンドや Steam の仮想マイクがスリープ状態に影響を与えることもあります。わかりましたか? では、この問題を解決して PC を再び正常にスリープ状態にする方法をいくつか見ていきましょう。
「オーディオストリーム使用中」によるスリープ解除の問題を解決する方法
Cortanaを無効にする – バックグラウンドで聞いている可能性があります
多くの人が最初に確認する項目ではありませんが、Cortanaは常にコマンドを待機しているため、システムがスリープ状態にならないことがあります。特に音声起動が有効になっている場合など、一部の設定では、Cortanaがオーディオリソースを適切に解放できないことがあります。Cortanaを無効にするには、グループポリシーエディターでCortanaを無効にする必要があります。そう、WindowsではCortanaが少し隠れた設定になっているのです。
- Windows キー + R を押して実行ボックスを表示します。
- 入力してEnter キー
gpedit.mscを押します。それでもうまくいかない場合(一部の Home エディションなど)、回避策やレジストリの調整が必要になる可能性がありますが、今のところはこれで問題ありません。 - ローカル グループ ポリシー エディターで、[コンピューターの構成] > [管理用テンプレート] > [Windows コンポーネント] > [検索]に移動します。
- 「Cortana を許可する」を探して開きます。ダブルクリックします。
- 無効に設定し、[適用] をクリックしてから[OK]をクリックします。
- 変更を有効にするには、再起動するかサインアウトする必要がある場合があります。
なぜこれが役立つのでしょうか?Cortanaが起動していると、オーディオインターフェースがオンの状態を維持し、システムがスリープ状態にならないようにすることができるからです。機種によっては、この修正はスイッチを切り替えるのと同じくらい簡単です。場合によっては、それ以上の手間がかかることもありますが、試してみる価値はあります。
サウンド設定からライン入力を無効にする
サウンドカードのライン入力ジャックが有効になっているのに、実際には何も接続されていない状態だと、スリープ状態になることがよくあります。Windowsはライン入力ジャックがアクティブに使用されていると認識することがあり、スリープモードをブロックします。基本的に、オーディオ入力が使用されていない場合は、無効にすることをお勧めします。
- タスクバーのサウンド アイコンを右クリックし、[サウンド]を選択します。
- 「録画」タブに切り替えます。
- ライン入力デバイスを見つけます。それを右クリックし、「無効」を選択します。
- [適用]をクリックし、[OK]をクリックします。
これは、録音機器や入力機器の状態が不明瞭な場合に、すぐに解決できる方法です。また、ライン入力ジャックから物理的にプラグを抜いて、何かがアクティブに接続されていて動作を引き起こしていないことを確認することもお勧めします。
オーディオデバイスの電源管理設定を上書きする
これは少し技術的な話になります。Windowsは様々なドライバーからのデバイス要求を管理しており、多くの場合、スリープ要求を保留にしているのはオーディオドライバーです。これらの要求を手動で上書きすることで、アクティブなオーディオストリームがあってもシステムにスリープを許可します。なぜこれが機能するのかは定かではありませんが、一部の設定では、Windowsにこれらの要求を無視させることで、問題なくスリープできるようになります。
- 管理者特権でコマンド プロンプトを開きます。スタート メニューでcmdを検索し、右クリックして、[管理者として実行]を選択します。
- 入力し
powercfg /requestてEnter キーを押します。デバイスとアクティビティの一覧が表示される出力を確認します。「オーディオストリームが現在使用中です」と表示されれば、正解です。 - 起動中のデバイス名またはIDをメモし、次のコマンドを実行します。
powercfg /requestsoverride DRIVER "DEVICE NAME" SYSTEM - DEVICE NAME を、前のコマンドで取得した文字列に置き換えてください。Windows にデバイス ID が表示される場合は特に、完全なデバイス ID を使用することもあります。
- これを実行し、PCがスリープ状態になるかどうかを確認してください。場合によっては、システムを再起動すると変更が確定することもあります。
なぜわざわざそんなことをするのでしょうか?なぜなら、この要求をオーバーライドすることで、Windowsはスリープの判断においてこのデバイスのアクティビティを無視するようになるからです。すべてのドライバーがスムーズに動作するとは限りませんが、多くの場合これで解決します。
オーディオドライバーを再インストールする – 他の方法がすべて失敗した場合
他に何も試しても効果がない場合は、古いドライバーや破損したドライバーが原因である可能性があります。再インストールすることで、オーディオインターフェースの動作を妨げている不具合やバグを解消できます。Windowsは通常、再起動後にドライバーを再インストールしますが、手動でアンインストールしてからWindowsまたはメーカーのWebサイトで更新を依頼する必要がある場合もあります。
- スタートメニューからデバイス マネージャーを開きます。
- [サウンド、ビデオ、およびゲーム コントローラー]セクションを見つけて展開します。
- オーディオ デバイス (Realtek High Definition Audio など) を右クリックし、[デバイスのアンインストール]を選択します。
- 「このデバイスのドライバー ソフトウェアがある場合は削除します」というボックスをオンにします。
- PCを再起動してください。Windowsはデフォルトのドライバーを自動的に検出し、再インストールするはずです。そうでない場合は、マザーボードまたはサウンドカードのメーカーのWebサイトにアクセスして、最新のドライバーを手動でダウンロードし、インストールしてください。
場合によっては、スリープ要求をより適切に処理できる新しいドライバーバージョンに更新されることもあります。ただし、一部のドライバーにはバグがあったり、古いバージョンだったりする可能性があるため、難しい場合は手動でダウンロードするのも良いでしょう。