plugin-main.cpp 834 B

12345678910111213141516171819202122232425262728293031323334
  1. #include <obs-module.h>
  2. #include <util/windows/win-version.h>
  3. OBS_DECLARE_MODULE()
  4. OBS_MODULE_USE_DEFAULT_LOCALE("win-wasapi", "en-US")
  5. MODULE_EXPORT const char *obs_module_description(void)
  6. {
  7. return "Windows WASAPI audio input/output sources";
  8. }
  9. void RegisterWASAPIInput();
  10. void RegisterWASAPIDeviceOutput();
  11. void RegisterWASAPIProcessOutput();
  12. bool obs_module_load(void)
  13. {
  14. /* MS says 20348, but process filtering seems to work earlier */
  15. struct win_version_info ver;
  16. get_win_ver(&ver);
  17. struct win_version_info minimum;
  18. minimum.major = 10;
  19. minimum.minor = 0;
  20. minimum.build = 19041;
  21. minimum.revis = 0;
  22. const bool process_filter_supported =
  23. win_version_compare(&ver, &minimum) >= 0;
  24. RegisterWASAPIInput();
  25. RegisterWASAPIDeviceOutput();
  26. if (process_filter_supported)
  27. RegisterWASAPIProcessOutput();
  28. return true;
  29. }