Skip to content

Conversation

@chicogong
Copy link
Owner

Summary

  • Disable RNNoise on Windows because MSVC doesn't support C99 Variable Length Arrays (VLA)
  • Add conditional compilation guards to test files that depend on optional features
  • Fix Windows CI build failures caused by RNNoise VLA usage

Changes

  1. CMakeLists.txt: Add MSVC detection to automatically disable RNNoise with a warning
  2. test_audio_converter.cpp: Add #ifdef ENABLE_WHISPER guard
  3. test_rnnoise_processor.cpp: Add #ifdef ENABLE_RNNOISE guard

Root Cause

RNNoise uses C99 VLA in files like pitch.c:

float tmp[PITCH_BUF_SIZE>>1];  // VLA - not supported by MSVC

MSVC has never supported VLA and has no plans to add support.

Test Plan

  • Local build passes with RNNoise enabled (Linux)
  • All 114 unit tests pass
  • Windows CI should now pass (RNNoise auto-disabled)

MSVC doesn't support C99 Variable Length Arrays (VLA), which RNNoise
uses extensively. This causes compilation failures on Windows.

Changes:
- CMakeLists.txt: Add MSVC check to disable RNNoise on Windows with
  a warning message explaining the limitation
- test_audio_converter.cpp: Add #ifdef ENABLE_WHISPER guard since
  AudioConverter is only built with Whisper enabled
- test_rnnoise_processor.cpp: Add #ifdef ENABLE_RNNOISE guard since
  RNNoise tests require the RNNoise library
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@chicogong chicogong merged commit 03ba4e7 into master Dec 29, 2025
11 of 12 checks passed
@chicogong chicogong deleted the fix/windows-rnnoise-vla branch December 29, 2025 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants