Ariver
2026-06-02 3fbceec8de833416bf1ae049f959f222c3f1a4a0
privatevoice.src/internal/engine/engine_windows.go
File was renamed from VoiceSnapGo/internal/engine/engine_windows.go
@@ -5,9 +5,10 @@
import (
   "fmt"
   "voicesnap/internal/logger"
   "voicesnap/internal/model"
   sherpa "github.com/k2-fsa/sherpa-onnx-go/sherpa_onnx"
   _ "github.com/k2-fsa/sherpa-onnx-go-windows"
   sherpa "github.com/k2-fsa/sherpa-onnx-go/sherpa_onnx"
)
type sherpaEngine struct {
@@ -15,10 +16,7 @@
   hwInfo     string
}
func newPlatformEngine() (Engine, error) {
   modelPath := ModelPath()
   tokensPath := TokensPath()
func newPlatformEngine(resolved model.ResolvedModel) (Engine, error) {
   // Try DirectML first, then CPU fallback
   providers := []struct {
      name     string
@@ -32,10 +30,10 @@
      config := sherpa.OfflineRecognizerConfig{}
      config.FeatConfig.SampleRate = 16000
      config.FeatConfig.FeatureDim = 80
      config.ModelConfig.SenseVoice.Model = modelPath
      config.ModelConfig.SenseVoice.Model = resolved.Files["model"]
      config.ModelConfig.SenseVoice.UseInverseTextNormalization = 1
      config.ModelConfig.Tokens = tokensPath
      config.ModelConfig.NumThreads = 4
      config.ModelConfig.Tokens = resolved.Files["tokens"]
      config.ModelConfig.NumThreads = resolved.Profile.NumThreads
      config.ModelConfig.Provider = p.provider
      config.DecodingMethod = "greedy_search"