]> git.djapps.eu Git - pkg/ggml/sources/whisper.cpp/commitdiff
whisper.objc : disable timestamps for real-time transcription
authorGeorgi Gerganov <redacted>
Fri, 8 Dec 2023 11:43:37 +0000 (13:43 +0200)
committerGeorgi Gerganov <redacted>
Fri, 8 Dec 2023 11:43:37 +0000 (13:43 +0200)
examples/whisper.objc/whisper.objc/ViewController.m
examples/whisper.swiftui/whisper.cpp.swift/LibWhisper.swift

index 151b05d9c99f77365b3919515347813fca9d22a7..c376b9288b36bd1c0450ecf02e78f8623022bced 100644 (file)
@@ -206,6 +206,7 @@ void AudioInputCallback(void * inUserData,
         params.offset_ms        = 0;
         params.no_context       = true;
         params.single_segment   = self->stateInp.isRealtime;
+        params.no_timestamps    = params.single_segment;
 
         CFTimeInterval startTime = CACurrentMediaTime();
 
index 84559c9a0c6a74e27bc3c79c4a8f18d24c65cf83..a71175d9aef6555ed8a9b000c8218b2da5df21fe 100644 (file)
@@ -8,15 +8,15 @@ enum WhisperError: Error {
 // Meet Whisper C++ constraint: Don't access from more than one thread at a time.
 actor WhisperContext {
     private var context: OpaquePointer
-    
+
     init(context: OpaquePointer) {
         self.context = context
     }
-    
+
     deinit {
         whisper_free(context)
     }
-    
+
     func fullTranscribe(samples: [Float]) {
         // Leave 2 processors free (i.e. the high-efficiency cores).
         let maxThreads = max(1, min(8, cpuCount() - 2))
@@ -24,17 +24,17 @@ actor WhisperContext {
         var params = whisper_full_default_params(WHISPER_SAMPLING_GREEDY)
         "en".withCString { en in
             // Adapted from whisper.objc
-            params.print_realtime = true
-            params.print_progress = false
+            params.print_realtime   = true
+            params.print_progress   = false
             params.print_timestamps = true
-            params.print_special = false
-            params.translate = false
-            params.language = en
-            params.n_threads = Int32(maxThreads)
-            params.offset_ms = 0
-            params.no_context = true
-            params.single_segment = false
-            
+            params.print_special    = false
+            params.translate        = false
+            params.language         = en
+            params.n_threads        = Int32(maxThreads)
+            params.offset_ms        = 0
+            params.no_context       = true
+            params.single_segment   = false
+
             whisper_reset_timings(context)
             print("About to run whisper_full")
             samples.withUnsafeBufferPointer { samples in
@@ -46,7 +46,7 @@ actor WhisperContext {
             }
         }
     }
-    
+
     func getTranscription() -> String {
         var transcription = ""
         for i in 0..<whisper_full_n_segments(context) {
@@ -54,7 +54,7 @@ actor WhisperContext {
         }
         return transcription
     }
-    
+
     static func createContext(path: String) throws -> WhisperContext {
         var params = whisper_context_default_params()
 #if targetEnvironment(simulator)