90663
Windows のサウンドの「既定の形式」の項目をプログラム上から変更したいです。  
画像の赤く記した部分になります。

[![オーディオプロパティ](https://i.stack.imgur.com/0Hb2o.png)](https://i.stack.imgur.com/0Hb2o.png)

Core Audio APIs の IAudioClient::Initialize で新しいフォーマットに変更しようとしていました。  
<https://docs.microsoft.com/en-us/windows/win32/api/audioclient/nf-
audioclient-iaudioclient-initialize>

S_OK が返ってきて関数自体は正しく呼べたようなのですが、フォーマットは変更されませんでした。
CC BY-SA 4.0
2022-08-20T20:48:46.870
90658
2022-08-21T01:50:59.170
11012
question
windows audio
Windows のサウンドの「既定の形式」の項目をプログラム上から変更したい
サードパーティ製のコマンドラインツールを使用可能であれば、[SoundVolumeView.exe](https://www.nirsoft.net/utils/sound_volume_view.html)で変更可能です。

```

    .\SoundVolumeView.exe /SetDefaultFormat "スピーカー" 24 96000
    
```

Windows11のPowershellで上記コマンドを実行し、`スピーカー`デバイスの既定の形式が24ビット、48000Hzになることを確認しました。

**参考資料**

  * [Change Soundcard Bit Depth and Sample Rate via Command Line in Windows](https://superuser.com/q/1701907)
CC BY-SA 4.0
2022-08-21T01:50:59.170
90663
2022-08-21T01:50:59.170
9820
90658
answer