Dev.to AI 🤖 Ai 👁 0 📖 3 min read

SWT (声文通) Local Offline Speech-to-Text Desktop Tool — Secure, Fast, No Data Upload

SWT (声文通) SWT is a fully offline speech-to-text desktop application built on the FunASR speech recognition framework. All audio data is processed locally — no internet connection required, and nothing is uploaded to

SWT (声文通) Local Offline Speech-to-Text Desktop Tool — Secure, Fast, No Data Upload

SWT (声文通)

SWT is a fully offline speech-to-text desktop application built on the FunASR speech recognition framework. All audio data is processed locally — no internet connection required, and nothing is uploaded to any server.

Download

baidu download

Preview

Features

Feature Description
File Transcription Import audio (MP3 / WAV / FLAC / …) or video (MP4 / MKV / …) files, auto-extract audio and output text
Batch Processing Multi-file sequential transcription, stable and reliable
Multi-Model Support 6 built-in ASR models, one-click download & switch, CPU/GPU inference supported
Multilingual Supports Chinese, English, Japanese, Korean, Cantonese, and more
Result Export Export to TXT / JSON / SRT formats, ready for subtitles
Speaker Diarization Experimental multi-speaker recognition (based on CAM++)
VAD Voice Activity Detection FSMN-VAD intelligent long audio segmentation, adjustable silence threshold and segment length
Speech Enhancement AI denoising (FRCRN / DFSMN), echo cancellation (DFSMN-AEC), speech separation (MossFormer)
Post-Processing CT-Transformer punctuation restoration, LLM AI correction of typos and grammar issues

Built-in Models

Model Size GPU Recommended CPU Description
Qwen3-ASR (0.6B) ~1.8 GB 2GB+ Smooth Lightweight multilingual, entry-level
Qwen3-ASR (1.7B) ~3.5 GB 6GB+ Runs but slow High-accuracy Chinese recognition, built-in punctuation
SenseVoiceSmall ~0.5 GB Not required Smooth Ultra-lightweight, multilingual + emotion/event detection
Whisper-large-v3 ~3.1 GB 8GB+ Not recommended OpenAI flagship multilingual model
faster-whisper-tiny ~0.2 GB Not required Smooth CTranslate2 accelerated, extremely lightweight
Fun-ASR-Nano ~1.0 GB 2GB+ Runnable FunAudioLLM lightweight ASR, Chinese optimized

System Requirements

Item Requirement
OS Windows 10 / Windows 11
Runtime Python 3.10+
Hardware CPU-capable; NVIDIA GPU acceleration supported (CUDA 12.1+)
Storage ~0.2–3.5 GB per model; 10 GB free disk space recommended
Dependencies ffmpeg (required for video transcription; optional for audio-only)

Quick Start

1. Clone and Enter Project

git clone https://gitee.com/ydtg1993/swt.git
cd swt

2. Create Virtual Environment and Install Dependencies

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

3. Download Models

At least one ASR model must be downloaded on first run. After launching the application, go to Settings → Model Download Manager and select the desired models to download.

Models will be saved in the llm/ directory.

4. Launch Application

python main.py

Note: Transcribing video files requires installing ffmpeg and adding it to your system PATH.

Project Structure

swt/
├── main.py                  # Application entry point
├── requirements.txt         # Python dependencies
├── LICENSE                  # MIT License
├── config/                  # Configuration (YAML + Pydantic Settings)
├── core/                    # Core engine (ASR, VAD, subtitle generation)
├── models/                  # Data models (SQLAlchemy)
├── ui/                      # GUI layer (PySide6 + QFluentWidgets)
│   ├── pages/               # Page components
│   └── widgets/             # Reusable components
├── workers/                 # Background worker threads (QRunnable)
├── utils/                   # Utility functions
├── llm/                     # Model storage directory
├── resources/               # Icons, images
├── scripts/                 # Model download helper scripts
├── tests/                   # Tests
└── logs/                    # Logs

Tech Stack

Category Technology
GUI PySide6 + QFluentWidgets
ASR Engine FunASR (Qwen3-ASR, SenseVoiceSmall, FSMN-VAD)
Database SQLite + SQLAlchemy 2.x
Configuration YAML + QSettings
Logging loguru
Task System QThreadPool + QRunnable + Signal
File Handling pathlib
Packaging PyInstaller

Development

# Install dependencies
pip install -r requirements.txt

# Run application
python main.py

# Run tests
pytest tests/ -v

# Package as executable
pyinstaller main.spec

Third-Party Licenses

Project License
FunASR MIT
Qwen3-ASR Apache 2.0
SenseVoice Apache 2.0
faster-whisper MIT
PySide6 LGPL
QFluentWidgets GPL / Commercial
ffmpeg LGPL / GPL
ModelScope Apache 2.0

License

SWT (声文通) is open-sourced under the MIT License.

Copyright © 2026 SWT (声文通)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files, to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software.

Project Links

Made with ❤️ by ydtg1993

📰 Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.