| File was renamed from VoiceSnapGo/internal/engine/engine_windows.go |
| | |
| | | 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 { |
| | |
| | | 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 |
| | |
| | | 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" |
| | | |