Jelajahi Sumber

add parameter to switch DSD

Coder 8 bulan lalu
induk
melakukan
51efa5cf6f
1 mengubah file dengan 11 tambahan dan 3 penghapusan
  1. 11 3
      Bmp.Core/Playback/Outputs/NAudioASIO/AsioOut.cs

+ 11 - 3
Bmp.Core/Playback/Outputs/NAudioASIO/AsioOut.cs

@@ -85,12 +85,20 @@ public class AsioOut : IWavePlayer
         InitFromName(names[driverIndex]);
     }
 
-    public void SetNativeDsd()
+    public void SetNativeDsd(bool enable = true)
     {
         try
         {
-            Driver.Future_SetIoFormat_DSD();
-            _nativeDsd = true;
+            if (enable)
+            {
+                Driver.Future_SetIoFormat_DSD();
+                _nativeDsd = true;
+            }
+            else
+            {
+                Driver.Future_SetIoFormat_PCM();
+                _nativeDsd = false;
+            }
         }
         catch (Exception e)
         {