PocAsioRateScan.cs 827 B

12345678910111213141516171819202122232425262728293031
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using Bmp.Core.Playback.Outputs.NAudioASIO;
  4. using Bmp.Core.Playback.Outputs.NAudioASIO.Originals;
  5. namespace Bmp.Poc.PoCs;
  6. internal class PocAsioRateScan
  7. {
  8. public static void MainFunc()
  9. {
  10. var asioDriverName = "Creative SB USB RT ASIO Device";
  11. var driver = new AsioDriverExt(asioDriverName);
  12. var lstSupports = new List<int>();
  13. for (var i = 1; i <= 1024000; i++)
  14. {
  15. if (driver.IsSampleRateSupported(i)) { lstSupports.Add(i); }
  16. }
  17. var dic = new Dictionary<int, AsioSampleType>();
  18. foreach (var support in lstSupports)
  19. {
  20. driver.SetSampleRate(support);
  21. dic[support] = driver.Capabilities.OutputChannelInfos.First().type;
  22. }
  23. var bp = 0;
  24. }
  25. }