termux-stt 1.2.15 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -19,6 +19,22 @@ Integrates Whisper.cpp, Vosk, and Sherpa-ONNX with a closed-form pure-Python 128
19
19
 
20
20
  ---
21
21
 
22
+ ## Asymmetric Hybrid Architecture Benchmark (Galaxy S25 - Snapdragon 8 Elite)
23
+
24
+ > **Test Audio**: JFK Inaugural Address (60.59s mono 16kHz WAV)
25
+ > **Silicon**: Qualcomm Snapdragon 8 Elite (Adreno 830 GPU + Oryon CPU)
26
+
27
+ | Model | Pure CPU (4T) | Pure GPU (Vulkan) | Hybrid GPU-CPU (4T) | Hybrid Efficiency (1T) | Speedup / Advantage |
28
+ | :--- | :---: | :---: | :---: | :---: | :--- |
29
+ | **Whisper Tiny** | 4.59s | 9.56s | **4.38s** | 5.48s | **+4.6% vs CPU** (Dispatch overhead minimized) |
30
+ | **Whisper Small** | 15.48s | 16.36s | **12.93s** | 23.02s | **+21.0% vs GPU**, **+16.5% vs CPU** |
31
+ | **Large-v3-Turbo** | 115.05s | 87.87s | **86.52s** | 90.39s | **-28.5s vs CPU**, CPU Load 0% during 80s encode |
32
+
33
+ *Multi-SoC Verification: Tested across Qualcomm Adreno 830, ARM Mali-G78 (Galaxy S21), and ARM Mali-G77 (Galaxy S20).*
34
+ *Upstream Contribution: Official PR submitted to `ggml-org/whisper.cpp` ([PR #4089](https://github.com/ggml-org/whisper.cpp/pull/4089)).*
35
+
36
+ ---
37
+
22
38
  ## Installation & Quickstart
23
39
 
24
40
  ### Python (PyPI)
@@ -28,8 +44,8 @@ pip install termux-stt
28
44
  ```python
29
45
  from termux_stt import create_engine
30
46
 
31
- # 1. Initialize Engine (auto-loads native ARM NEON binary & cached model)
32
- engine = create_engine("whisper", model="tiny", lang="en", threads=4)
47
+ # 1. Initialize Engine with Hybrid GPU-Encoder / CPU-Decoder Acceleration
48
+ engine = create_engine("whisper", model="small", lang="en", threads=4, split_mode=True)
33
49
 
34
50
  # 2. Transcribe Audio directly into Subtitles
35
51
  result = engine.transcribe("samples/jfk_1min.wav")
@@ -44,6 +60,18 @@ for seg in diar_result.segments:
44
60
 
45
61
  ```
46
62
 
63
+ ### CLI Command Line Usage
64
+ ```bash
65
+ # 1. High-Performance Hybrid Transcribe (Vulkan GPU Encoder + 4 CPU Threads Decoder)
66
+ termux-stt transcribe samples/jfk_1min.wav --model small --split-mode
67
+
68
+ # 2. Ultra-Low Power Background Transcribe (GPU Encoder + 1 CPU Thread Decoder)
69
+ termux-stt transcribe meeting.wav --model small --optimize-1
70
+
71
+ # 3. Force Pure CPU Execution
72
+ termux-stt transcribe samples/jfk_1min.wav --device cpu --threads 4
73
+ ```
74
+
47
75
  ### Node.js / TypeScript (npm)
48
76
  ```bash
49
77
  npm install termux-stt
package/README.pypi.md CHANGED
@@ -17,8 +17,8 @@ pip install termux-stt
17
17
  ```python
18
18
  from termux_stt import create_engine
19
19
 
20
- # 1. Initialize Engine (auto-loads native ARM NEON binary & cached model)
21
- engine = create_engine("whisper", model="tiny", lang="en", threads=4)
20
+ # 1. Initialize Engine with Hybrid GPU-Encoder / CPU-Decoder Acceleration
21
+ engine = create_engine("whisper", model="small", lang="en", threads=4, split_mode=True)
22
22
 
23
23
  # 2. Transcribe Audio directly into Subtitles
24
24
  result = engine.transcribe("samples/jfk_1min.wav")
@@ -36,6 +36,12 @@ for seg in diar_result.segments:
36
36
  ## Description
37
37
  Integrates Whisper.cpp, Vosk, and Sherpa-ONNX with a closed-form pure-Python 128-dimensional X-Vector clustering algorithm that operates in under 80MB RAM with zero cloud egress.
38
38
 
39
+ ## Hybrid Performance Highlights (Galaxy S25 - Snapdragon 8 Elite)
40
+
41
+ - **Whisper Small (60s JFK Audio)**: **12.93s** wall-clock time (**21.0% faster than Pure GPU**, **16.5% faster than Pure CPU**).
42
+ - **Whisper Large-v3-Turbo**: **86.52s** wall-clock time (28.5s faster than Pure CPU), with zero host CPU load during the 80s audio encoding stage.
43
+ - Upstream PR submitted to `ggml-org/whisper.cpp` ([PR #4089](https://github.com/ggml-org/whisper.cpp/pull/4089)).
44
+
39
45
  ## Documentation
40
46
  - [Official Documentation & API Reference](https://uno-km.vercel.app/lib/stt/)
41
47
  - [GitHub Repository](https://github.com/uno-km/termux-stt)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "termux-stt",
3
- "version": "1.2.15",
3
+ "version": "1.3.1",
4
4
  "description": "On-device Speech-to-Text & speaker diarization framework utilizing device resources for Android Termux",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",