From 7a2e384ec78b7da6ff5d439c4b7667aaa72393f5 Mon Sep 17 00:00:00 2001 From: aikiriao Date: Sun, 26 Jan 2025 22:40:13 +0900 Subject: [PATCH] account for difference with sampling rate in player. --- tools/srla_player/srla_player_wasapi.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tools/srla_player/srla_player_wasapi.c b/tools/srla_player/srla_player_wasapi.c index fbf21df..47ff860 100644 --- a/tools/srla_player/srla_player_wasapi.c +++ b/tools/srla_player/srla_player_wasapi.c @@ -88,12 +88,14 @@ void SRLAPlayer_Initialize(const struct SRLAPlayerConfig* config) /* 出力フォーマットが対応しているかチェック */ { - WAVEFORMATEX closest_format, *pformat; - pformat = &closest_format; + WAVEFORMATEX *pformat; hr = IAudioClient_IsFormatSupported(audio_client, AUDCLNT_SHAREMODE_SHARED, &format, &pformat); if (hr != S_OK) { - fprintf(stderr, "Unsupported format for WASAPI Playback. \n"); - exit(1); + /* レートは変換できるがそれ以外のフォーマットの差異は対応していないためエラー終了 */ + if ((format.nSamplesPerSec == pformat->nSamplesPerSec) || (format.nChannels != pformat->nChannels)) { + fprintf(stderr, "Unsupported format for WASAPI Playback. \n"); + exit(1); + } } }