diff --git a/README.md b/README.md index 6a980a5..7513fbb 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@

Auto Caption 是一个跨平台的实时字幕显示软件。

- + @@ -18,13 +18,11 @@ | English | 日本語 |

-

包含 Vosk 本地字幕引擎的 v0.4.0 版本已经发布。目前本地字幕引擎不含翻译,本地翻译模块仍正在开发中...

+

v0.5.0 版本已经发布。目前 Vosk 本地字幕引擎效果较差,且不含翻译,更优秀的字幕引擎正在尝试开发中...

![](./assets/media/main_zh.png) -![](./assets/media/main_mac_zh.png) - ## 📥 下载 [GitHub Releases](https://github.com/HiMeditator/auto-caption/releases) @@ -43,9 +41,10 @@ | 操作系统版本 | 处理器架构 | 获取系统音频输入 | 获取系统音频输出 | | ------------------ | ---------- | ---------------- | ---------------- | -| Windows 11 24H2 | x64 | ✅ | ✅ | -| macOS Sequoia 15.5 | arm64 | ✅需要额外配置 | ✅ | -| Ubuntu 24.04.2 | x64 | ✅需要额外配置 | ✅ | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅需要额外配置 | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | macOS 平台和 Linux 平台获取系统音频输出需要进行额外设置,详见[Auto Caption 用户手册](./docs/user-manual/zh.md)。 diff --git a/README_en.md b/README_en.md index 4d684c2..a71302c 100644 --- a/README_en.md +++ b/README_en.md @@ -4,7 +4,7 @@

Auto Caption is a cross-platform real-time caption display software.

- + @@ -18,13 +18,11 @@ | English | 日本語 |

-

The v0.4.0 version with Vosk local caption engine has been released. Currently the local caption engine does not include translation, the local translation module is still under development...

+

Version v0.5.0 has been released. The current Vosk local caption engine performs poorly and does not include translation. A better caption engine is under development...

![](./assets/media/main_en.png) -![](./assets/media/main_mac_en.png) - ## 📥 Download [GitHub Releases](https://github.com/HiMeditator/auto-caption/releases) @@ -43,9 +41,10 @@ The software has been adapted for Windows, macOS, and Linux platforms. The teste | OS Version | Architecture | System Audio Input | System Audio Output | | ------------------ | ------------ | ------------------ | ------------------- | -| Windows 11 24H2 | x64 | ✅ | ✅ | -| macOS Sequoia 15.5 | arm64 | ✅ Additional config required | ✅ | -| Ubuntu 24.04.2 | x64 | ✅ Additional config required | ✅ | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅ Additional config required | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | Additional configuration is required to capture system audio output on macOS and Linux platforms. See [Auto Caption User Manual](./docs/user-manual/en.md) for details. diff --git a/README_ja.md b/README_ja.md index 2a7fbc0..22257a0 100644 --- a/README_ja.md +++ b/README_ja.md @@ -4,7 +4,7 @@

Auto Caption はクロスプラットフォームのリアルタイム字幕表示ソフトウェアです。

- + @@ -18,13 +18,11 @@ | English | 日本語 |

-

Voskローカル字幕エンジンを含む v0.4.0 バージョンがリリースされました。現在、ローカル字幕エンジンには翻訳機能が含まれておりません。ローカル翻訳モジュールは現在も開発中です...

+

バージョン v0.5.0 がリリースされました。現在の Vosk ローカル字幕エンジンは性能が低く、翻訳機能も含まれていません。より優れた字幕エンジンを開発中です...

![](./assets/media/main_ja.png) -![](./assets/media/main_mac_ja.png) - ## 📥 ダウンロード [GitHub Releases](https://github.com/HiMeditator/auto-caption/releases) @@ -43,9 +41,10 @@ | OS バージョン | アーキテクチャ | システムオーディオ入力 | システムオーディオ出力 | | ------------------ | ------------ | ------------------ | ------------------- | -| Windows 11 24H2 | x64 | ✅ | ✅ | -| macOS Sequoia 15.5 | arm64 | ✅ 追加設定が必要 | ✅ | -| Ubuntu 24.04.2 | x64 | ✅ 追加設定が必要 | ✅ | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅ 追加設定が必要 | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | macOSおよびLinuxプラットフォームでシステムオーディオ出力を取得するには追加設定が必要です。詳細は[Auto Captionユーザーマニュアル](./docs/user-manual/ja.md)をご覧ください。 diff --git a/assets/media/main_en.png b/assets/media/main_en.png index 3791147..2959fcf 100644 Binary files a/assets/media/main_en.png and b/assets/media/main_en.png differ diff --git a/assets/media/main_ja.png b/assets/media/main_ja.png index 2b493bd..8582f9c 100644 Binary files a/assets/media/main_ja.png and b/assets/media/main_ja.png differ diff --git a/assets/media/main_mac_en.png b/assets/media/main_mac_en.png deleted file mode 100644 index 32b4fab..0000000 Binary files a/assets/media/main_mac_en.png and /dev/null differ diff --git a/assets/media/main_mac_ja.png b/assets/media/main_mac_ja.png deleted file mode 100644 index dffb4b6..0000000 Binary files a/assets/media/main_mac_ja.png and /dev/null differ diff --git a/assets/media/main_mac_zh.png b/assets/media/main_mac_zh.png deleted file mode 100644 index 1de8437..0000000 Binary files a/assets/media/main_mac_zh.png and /dev/null differ diff --git a/assets/media/main_zh.png b/assets/media/main_zh.png index 5992f19..4a6c3aa 100644 Binary files a/assets/media/main_zh.png and b/assets/media/main_zh.png differ diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 3097948..8d2e3d6 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -87,3 +87,21 @@ ### 优化体验 - 字幕窗口右上角图标的颜色改为和字幕原文字体颜色一致 + +## v0.5.0 + +2025-07-15 + +为软件本体添加了更多功能、适配了 Linux。 + +### 新增功能 + +- 适配了 Linux 平台 +- 新增修改字幕时间功能,可调整字幕时间 +- 支持导出 srt 格式的字幕记录 +- 支持显示字幕引擎状态(pid、ppid、CPU占用率、内存占用、运行时间) + +### 优化体验 + +- 调整字幕窗口右上角图标为竖向排布 +- 过滤 Gummy 字幕引擎输出的不完整字幕 diff --git a/docs/engine-manual/en.md b/docs/engine-manual/en.md index 8268060..89eedb9 100644 --- a/docs/engine-manual/en.md +++ b/docs/engine-manual/en.md @@ -1,6 +1,6 @@ # Caption Engine Documentation -Corresponding Version: v0.4.0 +Corresponding Version: v0.5.0 ![](../../assets/media/structure_en.png) diff --git a/docs/engine-manual/ja.md b/docs/engine-manual/ja.md index 558915c..4a877f9 100644 --- a/docs/engine-manual/ja.md +++ b/docs/engine-manual/ja.md @@ -1,6 +1,6 @@ # 字幕エンジンの説明文書 -対応バージョン:v0.4.0 +対応バージョン:v0.5.0 この文書は大規模モデルを使用して翻訳されていますので、内容に正確でない部分があるかもしれません。 diff --git a/docs/engine-manual/zh.md b/docs/engine-manual/zh.md index 027d6b9..76ca0d3 100644 --- a/docs/engine-manual/zh.md +++ b/docs/engine-manual/zh.md @@ -1,6 +1,6 @@ # 字幕引擎说明文档 -对应版本:v0.4.0 +对应版本:v0.5.0 ![](../../assets/media/structure_zh.png) diff --git a/docs/user-manual/en.md b/docs/user-manual/en.md index 04954e6..1ae74af 100644 --- a/docs/user-manual/en.md +++ b/docs/user-manual/en.md @@ -1,14 +1,21 @@ # Auto Caption User Manual -Corresponding Version: v0.4.0 +Corresponding Version: v0.5.0 ## Software Introduction Auto Caption is a cross-platform caption display software that can real-time capture system audio input (recording) or output (playback) streaming data and use an audio-to-text model to generate captions for the corresponding audio. The default caption engine provided by the software (using Alibaba Cloud Gummy model) supports recognition and translation in nine languages (Chinese, English, Japanese, Korean, German, French, Russian, Spanish, Italian). -Currently, the default caption engine of the software only has full functionality on Windows and macOS platforms. Additional configuration is required to capture system audio output on macOS. +The default caption engine currently has full functionality on Windows, macOS, and Linux platforms. Additional configuration is required to capture system audio output on macOS. -On Linux platforms, it can only generate captions for audio input (microphone), and currently does not support generating captions for audio output (playback). +The following operating system versions have been tested and confirmed to work properly. The software cannot guarantee normal operation on untested OS versions. + +| OS Version | Architecture | Audio Input Capture | Audio Output Capture | +| ------------------ | ------------ | ------------------- | -------------------- | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅ Additional config required | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | ![](../../assets/media/main_en.png) @@ -63,28 +70,28 @@ Now the caption engine can capture system audio output and generate captions. ## Getting System Audio Output on Linux -Execute the following commands to install `pulseaudio` and `pavucontrol`: - -```bash -# For Debian or Ubuntu, etc. -sudo apt install pulseaudio pavucontrol -# For CentOS, etc. -sudo yum install pulseaudio pavucontrol -``` - -Then execute: +First execute in the terminal: ```bash pactl list short sources ``` -If you see output similar to the following, the configuration was successful: +If you see output similar to the following, no additional configuration is needed: ```bash 220 alsa_output.pci-0000_02_02.0.3.analog-stereo.monitor PipeWire s16le 2ch 48000Hz SUSPENDED 221 alsa_input.pci-0000_02_02.0.3.analog-stereo PipeWire s16le 2ch 48000Hz SUSPENDED ``` +Otherwise, install `pulseaudio` and `pavucontrol` using the following commands: + +```bash +# For Debian/Ubuntu etc. +sudo apt install pulseaudio pavucontrol +# For CentOS etc. +sudo yum install pulseaudio pavucontrol +``` + ## Software Usage ### Modifying Settings @@ -103,7 +110,7 @@ The following image shows the caption display window, which displays the latest ### Exporting Caption Records -In the caption control window, you can see the records of all collected captions. Click the "Export Caption Records" button to export the caption records as a JSON file. +In the caption control window, you can see the records of all collected captions. Click the "Export Log" button to export the caption records as a JSON or SRT file. ## Caption Engine diff --git a/docs/user-manual/ja.md b/docs/user-manual/ja.md index 9805922..7336ff6 100644 --- a/docs/user-manual/ja.md +++ b/docs/user-manual/ja.md @@ -1,6 +1,6 @@ # Auto Caption ユーザーマニュアル -対応バージョン:v0.4.0 +対応バージョン:v0.5.0 この文書は大規模モデルを使用して翻訳されていますので、内容に正確でない部分があるかもしれません。 @@ -8,9 +8,16 @@ Auto Caption は、クロスプラットフォームの字幕表示ソフトウェアで、システムの音声入力(録音)または出力(音声再生)のストリーミングデータをリアルタイムで取得し、音声からテキストに変換するモデルを利用して対応する音声の字幕を生成します。このソフトウェアが提供するデフォルトの字幕エンジン(アリババクラウド Gummy モデルを使用)は、9つの言語(中国語、英語、日本語、韓国語、ドイツ語、フランス語、ロシア語、スペイン語、イタリア語)の認識と翻訳をサポートしています。 -現在、ソフトウェアのデフォルト字幕エンジンは Windows と macOS プラットフォームでのみ完全な機能を有しています。macOS でシステムオーディオ出力を取得するには追加の設定が必要です。 +現在のデフォルト字幕エンジンは Windows、macOS、Linux プラットフォームで完全な機能を有しています。macOSでシステムのオーディオ出力を取得するには追加設定が必要です。 -Linux プラットフォームでは、オーディオ入力(マイク)からの字幕生成のみ可能で、現在オーディオ出力(再生音)からの字幕生成はサポートしていません。 +以下のオペレーティングシステムバージョンで正常動作を確認しています。記載以外の OS での正常動作は保証できません。 + +| OS バージョン | アーキテクチャ | オーディオ入力取得 | オーディオ出力取得 | +| ------------------- | ------------- | ------------------ | ------------------ | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅ 追加設定が必要 | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | ![](../../assets/media/main_ja.png) @@ -66,28 +73,28 @@ BlackHoleのインストールが確認できたら、`オーディオ MIDI 設 ## Linux でシステムオーディオ出力を取得する -以下のコマンドを実行して `pulseaudio` と `pavucontrol` をインストールします: - -```bash -# Debian や Ubuntu など -sudo apt install pulseaudio pavucontrol -# CentOS など -sudo yum install pulseaudio pavucontrol -``` - -次に実行: +まずターミナルで以下を実行してください: ```bash pactl list short sources ``` -以下のような出力があれば設定は成功です: +以下のような出力が確認できれば追加設定は不要です: ```bash 220 alsa_output.pci-0000_02_02.0.3.analog-stereo.monitor PipeWire s16le 2ch 48000Hz SUSPENDED 221 alsa_input.pci-0000_02_02.0.3.analog-stereo PipeWire s16le 2ch 48000Hz SUSPENDED ``` +それ以外の場合は、以下のコマンドで`pulseaudio`と`pavucontrol`をインストールしてください: + +```bash +# Debian/Ubuntu系の場合 +sudo apt install pulseaudio pavucontrol +# CentOS系の場合 +sudo yum install pulseaudio pavucontrol +``` + ## ソフトウェアの使い方 ### 設定の変更 @@ -106,7 +113,7 @@ pactl list short sources ### 字幕記録のエクスポート -字幕制御ウィンドウでは、現在収集されたすべての字幕の記録を見ることができます。「字幕記録をエクスポート」ボタンをクリックすると、字幕記録をJSONファイルとしてエクスポートできます。 +「エクスポート」ボタンをクリックすると、字幕記録を JSON または SRT ファイル形式で出力できます。 ## 字幕エンジン diff --git a/docs/user-manual/zh.md b/docs/user-manual/zh.md index db53833..39610de 100644 --- a/docs/user-manual/zh.md +++ b/docs/user-manual/zh.md @@ -1,14 +1,21 @@ # Auto Caption 用户手册 -对应版本:v0.4.0 +对应版本:v0.5.0 ## 软件简介 Auto Caption 是一个跨平台的字幕显示软件,能够实时获取系统音频输入(录音)或输出(播放声音)的流式数据,并调用音频转文字的模型生成对应音频的字幕。软件提供的默认字幕引擎(使用阿里云 Gummy 模型)支持九种语言(中、英、日、韩、德、法、俄、西、意)的识别与翻译。 -目前软件默认字幕引擎只有在 Windows 和 macOS 平台下才拥有完整功能,在 macOS 要获取系统音频输出需要额外配置。 +目前软件默认字幕引擎在 Windows、 macOS 和 Linux 平台下均拥有完整功能,在 macOS 要获取系统音频输出需要额外配置。 -在 Linux 平台下只能生成音频输入(麦克风)的字幕,暂不支持音频输出(播放声音)的字幕生成。 +测试过可正常运行的操作系统信息如下,软件不能保证在非下列版本的操作系统上正常运行。 + +| 操作系统版本 | 处理器架构 | 获取系统音频输入 | 获取系统音频输出 | +| ------------------ | ---------- | ---------------- | ---------------- | +| Windows 11 24H2 | x64 | ✅ | ✅ | +| macOS Sequoia 15.5 | arm64 | ✅需要额外配置 | ✅ | +| Ubuntu 24.04.2 | x64 | ✅ | ✅ | +| Kali Linux 2022.3 | x64 | ✅ | ✅ | ![](../../assets/media/main_zh.png) @@ -63,7 +70,20 @@ brew install blackhole-64ch ## Linux 获取系统音频输出 -执行以下命令安装 `pulseaudio` 和 `pavucontrol`: +首先在控制台执行: + +```bash +pactl list short sources +``` + +如果有以下类似的输出内容则无需额外配置: + +```bash +220 alsa_output.pci-0000_02_02.0.3.analog-stereo.monitor PipeWire s16le 2ch 48000Hz SUSPENDED +221 alsa_input.pci-0000_02_02.0.3.analog-stereo PipeWire s16le 2ch 48000Hz SUSPENDED +``` + +否则,执行以下命令安装 `pulseaudio` 和 `pavucontrol`: ```bash # Debian or Ubuntu, etc. @@ -72,19 +92,6 @@ sudo apt install pulseaudio pavucontrol sudo yum install pulseaudio pavucontrol ``` -然后执行: - -```bash -pactl list short sources -``` - -如果有以下类似的输出内容则配置成功: - -```bash -220 alsa_output.pci-0000_02_02.0.3.analog-stereo.monitor PipeWire s16le 2ch 48000Hz SUSPENDED -221 alsa_input.pci-0000_02_02.0.3.analog-stereo PipeWire s16le 2ch 48000Hz SUSPENDED -``` - ## 软件使用 ### 修改设置 @@ -103,7 +110,7 @@ pactl list short sources ### 字幕记录的导出 -在字幕控制窗口中可以看到当前收集的所有字幕的记录,点击“导出字幕记录”按钮,即可将字幕记录导出为 JSON 文件。 +在字幕控制窗口中可以看到当前收集的所有字幕的记录,点击“导出字幕”按钮,即可将字幕记录导出为 JSON 或 SRT 文件。 ## 字幕引擎 diff --git a/package-lock.json b/package-lock.json index 8f9dfea..b30b0b0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "auto-caption", - "version": "0.4.0", + "version": "0.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "auto-caption", - "version": "0.4.0", + "version": "0.5.0", "hasInstallScript": true, "dependencies": { "@electron-toolkit/preload": "^3.0.1", diff --git a/package.json b/package.json index 8190e42..d7c6a71 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "auto-caption", "productName": "Auto Caption", - "version": "0.4.0", + "version": "0.5.0", "description": "A cross-platform subtitle display software.", "main": "./out/main/index.js", "author": "himeditator", diff --git a/src/main/utils/CaptionEngine.ts b/src/main/utils/CaptionEngine.ts index a955146..7d0e0b1 100644 --- a/src/main/utils/CaptionEngine.ts +++ b/src/main/utils/CaptionEngine.ts @@ -108,7 +108,10 @@ export class CaptionEngine { if (line.trim()) { try { const caption = JSON.parse(line); - allConfig.updateCaptionLog(caption); + if(caption.index === undefined) { + console.log('[INFO] Engine Bad Output:', caption); + } + else allConfig.updateCaptionLog(caption); } catch (e) { controlWindow.sendErrorMessage(i18n('engine.output.parse.error') + e) console.error('[ERROR] Error parsing JSON:', e); diff --git a/src/renderer/src/components/EngineControl.vue b/src/renderer/src/components/EngineControl.vue index 7365d52..08ffa5a 100644 --- a/src/renderer/src/components/EngineControl.vue +++ b/src/renderer/src/components/EngineControl.vue @@ -127,7 +127,7 @@ const { t } = useI18n() const showMore = ref(false) const engineControl = useEngineControlStore() -const { platform, captionEngine, audioType, changeSignal } = storeToRefs(engineControl) +const { captionEngine, audioType, changeSignal } = storeToRefs(engineControl) const currentSourceLang = ref('auto') const currentTargetLang = ref('zh') @@ -230,7 +230,7 @@ watch(currentEngine, (val) => { } .input-folder>span { - padding: 0 4px; + padding: 0 2px; border: 2px solid #1677ff; color: #1677ff; border-radius: 30%; diff --git a/src/renderer/src/components/EngineStatus.vue b/src/renderer/src/components/EngineStatus.vue index aadb401..266d24f 100644 --- a/src/renderer/src/components/EngineStatus.vue +++ b/src/renderer/src/components/EngineStatus.vue @@ -36,7 +36,11 @@ + > + + @@ -73,7 +77,7 @@

{{ $t('status.about.desc') }}

-

{{ $t('status.about.version') }}v0.4.0

+

{{ $t('status.about.version') }}v0.5.0

{{ $t('status.about.author') }}