return int(C.whisper_lang_id(p.language))
}
+// Threads available
+func (p *Params) Threads() int {
+ return int(p.n_threads)
+}
+
// Set number of threads to use
func (p *Params) SetThreads(threads int) {
p.n_threads = C.int(threads)
package whisper
import (
+ "fmt"
"io"
+ "runtime"
"strings"
"time"
context.model.ctx.Whisper_print_timings()
}
+// SystemInfo returns the system information
+func (context *context) SystemInfo() string {
+ return fmt.Sprintf("system_info: n_threads = %d / %d | %s\n",
+ context.params.Threads(),
+ runtime.NumCPU(),
+ whisper.Whisper_print_system_info(),
+ )
+}
+
// Use mel data at offset_ms to try and auto-detect the spoken language
// Make sure to call whisper_pcm_to_mel() or whisper_set_mel() first.
// Returns the probabilities of all languages.
func (context *context) WhisperLangAutoDetect(offset_ms int, n_threads int) ([]float32, error) {
langProbs, err := context.model.ctx.Whisper_lang_auto_detect(offset_ms, n_threads)
if err != nil {
- return nil, err
+ return nil, err
}
return langProbs, nil
}
IsLANG(Token, string) bool // Test for token associated with a specific language
IsText(Token) bool // Test for text token
+ // Timings
PrintTimings()
ResetTimings()
+
+ SystemInfo() string
}
// Segment is the text result of a speech recognition.