Merge branch 'for_v1.3' into develop

This commit is contained in:
misygauziya
2023-07-21 05:42:43 +09:00
5 changed files with 144 additions and 83 deletions

View File

@@ -50,7 +50,7 @@ ptyhon VRCT.py
(任意)
1. DeepLのAPIを使用するためにアカウント登録し、認証キーを取得する
2. ギアアイコンのボタンでconfigウィンドウを開く
3. ParameterタブのDeepL Auth Keyに認証キーを記載し、フロッピーアイコンのボタンを押す
3. ParameterタブのDeepL Auth Keyに認証キーを記載
4. configウィンドウを閉じる
### Normal use
@@ -75,22 +75,29 @@ ptyhon VRCT.py
- Appearance Theme: ウィンドウテーマを選択
- UI Scaling: UIサイズを調整
- Font Family: 表示フォントを選択
- **(New!) UI Language: UIの表示言語を選択**
- Translation tab
- Select Translator: 翻訳エンジンの変更
- Send Language: 送信するメッセージに対して翻訳する言語[source, target]を選択
- Receive Language: 受信したメッセージに対して翻訳する言語[source, target]を選択
- Transcription tab
- **(New!) Input Mic Host: マイクのホストAPIを選択**
- Input Mic Device: マイクを選択
- Input Mic Voice Language: 入力する音声の言語
- Input Mic Energy Threshold: 音声取得のしきい値
- **(New!) Check threshold point: Input Mic Energy Thresholdのしきい値を視覚化**
- Input Mic Dynamic Energy Threshold: 音声取得のしきい値の自動調整
- Input Mic Phase Timeout: 文字起こしする音声時間の上限
- Input Mic Record Timeout: 音声の区切りの無音時間
- Input Mic Max Phrases: 保留する単語の上限
- **(New!) Input Mic Word Filter: MICの文字起こし時にWord Filterで設定した文字が入っていた場合にChatboxに表示しない (ex AAA,BBB,CCC)**
- Input Speaker Device: スピーカーを選択
- Input Speaker Voice Language: 受信する音声の言語
- Input Speaker Energy Threshold: 音声取得のしきい値
- **(New!) Check threshold point: (New!)Input Speaker Energy Thresholdのしきい値を視覚化**
- Input Speaker Dynamic Energy Threshold: 音声取得のしきい値の自動調整
- Input Speaker Record Timeout: 音声の区切りの無音時間
- Input Speaker Phase Timeout: 文字起こしする音声時間の上限
- Input Speaker Max Phrases: 保留する単語の上限
- Parameter tab
- OSC IP address: 変更不要
@@ -101,9 +108,11 @@ ptyhon VRCT.py
- [translation]が翻訳されたメッセージに置換される
- 初期フォーマット:`[message]([translation])`
- Others tab
- Auto clear chat box: チャット送信時にチャットボックスを空にする
- **(New!) Auto clear chat box: メッセージ送信後に書き込んだメッセージを空にする**
## Author
みしゃ(misyaguzi)
twitter: https://twitter.com/misya_ai
booth: https://misyaguziya.booth.pm/items/4814313
Shiina_12siy

View File

@@ -1,79 +1,90 @@
ご購入ありがとうございます。
フィードバックお待ちしております。
概要
# 概要
VRChatで使用されるChatBoxをOSC経由でメッセージを送信するツールになります。
翻訳エンジンを使用してメッセージとその翻訳部分を同時に送信することができます。
(翻訳エンジンはDeepL,Google,Bingに対応)
使用方法
 初期設定時
  0. VRChatのOSCを有効にする重要
# 使用方法
初期設定時
0. VRChatのOSCを有効にする重要
  (任意)
  1. DeepLのAPIを使用するためにアカウント登録し、認証キーを取得する
  2. ギアアイコンのボタンでconfigウィンドウを開く
  3. ParameterタブのDeepL Auth Keyに認証キーを記載し、フロッピーアイコンのボタンを押す
  4. configウィンドウを閉じる
(任意)
1. DeepLのAPIを使用するためにアカウント登録し、認証キーを取得する
2. ギアアイコンのボタンでconfigウィンドウを開く
3. ParameterタブのDeepL Auth Keyに認証キーを記載
4. configウィンドウを閉じる
 通常使用時
  1. メッセージボックスにメッセージを記入
  2. Enterキーを押し、メッセージを送信する
通常使用時
1. メッセージボックスにメッセージを記入
2. Enterキーを押し、メッセージを送信する
 その他の設定
  - translation チェックボックス: 翻訳の有効無効
  - voice2chatbox チェックボックス : マイクの音声を文字起こししてチャットボックスに送信する
  - speaker2log チェックボックス : スピーカーの音声から文字起こししてログに表示する
  - foreground チェックボックス: 最前面表示の有効無効
# その他の設定
translation チェックボックス: 翻訳の有効無効
voice2chatbox チェックボックス : マイクの音声を文字起こししてチャットボックスに送信する
speaker2log チェックボックス : スピーカーの音声から文字起こししてログに表示する
foreground チェックボックス: 最前面表示の有効無効
   - テキストボックス
    - logタブ: すべてのログを表示
    - sendタブ: 送信したメッセージを表示
    - receiveタブ: 受信したメッセージを表示
    - systemタブ: 機能についてのメッセージを表示
テキストボックス
logタブ
すべてのログを表示
sendタブ
送信したメッセージを表示
receiveタブ
受信したメッセージを表示
systemタブ
機能についてのメッセージを表示
  - Configウィンドウ
   - UIタブ
    - Transparency: ウィンドウの透過度の調整
    - Appearance Theme: ウィンドウテーマを選択
    - UI Scaling: UIサイズを調整
    - Font Family: 表示フォントを選択
   - Translationタブ
    - Select Translator: 翻訳エンジンの変更
    - Send Language: 送信するメッセージに対して翻訳する言語[source, target]を選択
    - Receive Language: 受信したメッセージに対して翻訳する言語[source, target]を選択
   - Transcriptionタブ
    - Input Mic Device: マイクを選択
    - Input Mic Voice Language: 入力する音声の言語
    - Input Mic Energy Threshold: 音声取得のしきい値
    - Input Mic Dynamic Energy Threshold: 音声取得のしきい値の自動調整
    - Input Mic Record Timeout: 音声の区切りの無音時間
    - Input Mic Max Phrases: 保留する単語の上限
    - Input Speaker Device: スピーカーを選択
    - Input Speaker Voice Language: 受信する音声の言語
    - Input Speaker Energy Threshold: 音声取得のしきい値
    - Input Speaker Dynamic Energy Threshold: 音声取得のしきい値の自動調整
    - Input Speaker Record Timeout: 音声の区切りの無音時間
    - Input Speaker Max Phrases: 保留する単語の上限
  - Parameterタブ
    - OSC IP address: 変更不要
    - OSC port: 変更不要
    - DeepL Auth key: DeepLの認証キーの設定
    - Message Format: 送信するメッセージのデコレーションの設定
     - [message]がメッセージボックスに記入したメッセージに置換される
     - [translation]が翻訳されたメッセージに置換される
     - 初期フォーマット:"[message]([translation])"
  - Othersタブ
    - Auto clear chat box: チャット送信時にチャットボックスを空にする
configウィンドウ
UIタブ
Transparency: ウィンドウの透過度の調整
Appearance Theme: ウィンドウテーマを選択
UI Scaling: UIサイズを調整
Font Family: 表示フォントを選択
(New!) UI Language: UIの表示言語を選択
Translationタブ
Select Translator: 翻訳エンジンの変更
Send Language: 送信するメッセージに対して翻訳する言語[source, target]を選択
Receive Language: 受信したメッセージに対して翻訳する言語[source, target]を選択
Transcriptionタブ
(New!) Input Mic Host: マイクのホストAPIを選択
Input Mic Device: マイクを選択
Input Mic Voice Language: 入力する音声の言語
Input Mic Energy Threshold: 音声取得のしきい値
(New!) Check threshold point: Input Mic Energy Thresholdのしきい値を視覚化
Input Mic Dynamic Energy Threshold: 音声取得のしきい値の自動調整
Input Mic Record Timeout: 音声の区切りの無音時間
Input Mic Phase Timeout: 文字起こしする音声時間の上限
Input Mic Max Phrases: 保留する単語の上限
(New!) Input Mic Word Filter: MICの文字起こし時にWord Filterで設定した文字が入っていた場合にChatboxに表示しない (ex AAA,BBB,CCC)
Input Speaker Device: スピーカーを選択
Input Speaker Voice Language: 受信する音声の言語
Input Speaker Energy Threshold: 音声取得のしきい値
(New!) Check threshold point: (New!)Input Speaker Energy Thresholdのしきい値を視覚化
Input Speaker Dynamic Energy Threshold: 音声取得のしきい値の自動調整
Input Speaker Record Timeout: 音声の区切りの無音時間
Input Speaker Phase Timeout: 文字起こしする音声時間の上限
Input Speaker Max Phrases: 保留する単語の上限
Parameterタブ
OSC IP address: 変更不要
OSC port: 変更不要
DeepL Auth key: DeepLの認証キーの設定
Message Format: 送信するメッセージのデコレーションの設定
[message]がメッセージボックスに記入したメッセージに置換される
[translation]が翻訳されたメッセージに置換される
初期フォーマット:"[message]([translation])"
Othersタブ
(New!) Auto clear chat box: メッセージ送信後に書き込んだメッセージを空にする
 設定の初期化
  - config.jsonを削除
設定の初期化
config.jsonを削除
お問い合わせ
# お問い合わせ
要望などはTwitterまで
https://twitter.com/misya_ai
アップデート履歴
# アップデート履歴
[2023-05-29: v0.1b] v0.1b リリース
[2023-05-30: v0.2b]
- configボタンをギアアイコンに変更
@@ -99,6 +110,15 @@ https://twitter.com/misya_ai
- 文字起こしの処理の軽量化
[2023-07-05: v1.2]
- 文字起こし精度の向上
[2023-07-21: v1.3]
- UIの表示言語を日本語/英語を選択できる機能を追加
- Energy Thresholdの視覚化機能を追加
- 文字起こしの誤認識対策のため、Word Filterを追加
- WASAPI以外のHostAPIでもマイクとして使用できるようにHostAPIを選択できる機能を追加
- メッセージ送信後に書き込んだメッセージを空にするか選択できる機能を追加
- バグ対策のため、translation/voice2chatbox/speaker2log/foregroundは起動時はOFFになるように変更
- バグ対策のため、スピーカーについて既定デバイス以外を選択した時にERRORが出るように変更
- 半角入力時に一部の文字が書き込めないバグを修正
# 注意事項
再配布とかはやめてね

View File

@@ -101,17 +101,20 @@ ja:
label_input_mic_device: "マイク入力デバイス"
label_input_mic_voice_language: "マイクで話す言語"
label_input_mic_energy_threshold: "音声取得のしきい値"
checkbox_input_mic_threshold_check: "音声取得のしきい値の視覚化"
label_input_mic_dynamic_energy_threshold: "音声取得のしきい値の自動調整"
label_input_mic_record_timeout: "マイク音声の区切りの無音時間"
# label_input_mic_phrase_timeout: ""
label_input_mic_phrase_timeout: "文字起こしする音声時間の上限"
label_input_mic_max_phrases: "保留する単語の上限(マイク)"
label_input_mic_word_filter: "ワードフィルタ"
label_input_speaker_device: "スピーカー(聞き取りたいデバイス)"
label_input_speaker_voice_language: "聞き取る音声の言語"
label_input_speaker_energy_threshold: "音声取得のしきい値"
checkbox_input_speaker_threshold_check: "音声取得のしきい値の視覚化"
label_input_speaker_dynamic_energy_threshold: "音声取得のしきい値の自動調整"
label_input_speaker_record_timeout: "スピーカー音声の区切りの無音時間"
# label_input_speaker_phrase_timeout: ""
label_input_speaker_phrase_timeout: "文字起こしする音声時間の上限"
label_input_speaker_max_phrases: "保留する単語の上限(スピーカー)"
# tab Parameter

View File

@@ -14,7 +14,7 @@ from languages import translation_lang, transcription_lang, selectable_languages
from ctk_scrollable_dropdown import CTkScrollableDropdown
SCROLLABLE_DROPDOWN = True
SCROLLABLE_DROPDOWN = False
class ToplevelWindowConfig(CTkToplevel):
@@ -344,7 +344,11 @@ class ToplevelWindowConfig(CTkToplevel):
save_json(self.parent.PATH_CONFIG, "INPUT_MIC_MAX_PHRASES", self.parent.INPUT_MIC_MAX_PHRASES)
def entry_input_mic_word_filters_callback(self, event):
self.parent.INPUT_MIC_WORD_FILTER = self.entry_input_mic_word_filter.get().split(",")
word_filter = self.entry_input_mic_word_filter.get()
if len(word_filter) > 0:
self.parent.INPUT_MIC_WORD_FILTER = self.entry_input_mic_word_filter.get().split(",")
else:
self.parent.INPUT_MIC_WORD_FILTER = []
self.parent.keyword_processor = KeywordProcessor()
for f in self.parent.INPUT_MIC_WORD_FILTER:
self.parent.keyword_processor.add_keyword(f)
@@ -536,9 +540,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_appearance_theme_callback,
variable=StringVar(value=self.parent.APPEARANCE_THEME),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_appearance_theme.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_appearance_theme._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown appearance theme
if SCROLLABLE_DROPDOWN:
@@ -570,9 +574,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_ui_scaling_callback,
variable=StringVar(value=self.parent.UI_SCALING),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_ui_scaling.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_ui_scaling._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown ui scaling
if SCROLLABLE_DROPDOWN:
@@ -605,9 +609,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_font_family_callback,
variable=StringVar(value=self.parent.FONT_FAMILY),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_font_family.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_font_family._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown font family
if SCROLLABLE_DROPDOWN:
@@ -640,9 +644,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_ui_language_callback,
variable=StringVar(value=selectable_languages[self.parent.UI_LANGUAGE]),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_ui_language.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_ui_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown ui language
if SCROLLABLE_DROPDOWN:
@@ -677,9 +681,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_translation_translator_callback,
variable=StringVar(value=self.parent.CHOICE_TRANSLATOR),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_translation_translator.grid(row=row, column=1, columnspan=3, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_translation_translator._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown translation translator
if SCROLLABLE_DROPDOWN:
@@ -713,9 +717,9 @@ class ToplevelWindowConfig(CTkToplevel):
values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()),
variable=StringVar(value=self.parent.INPUT_SOURCE_LANG),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_translation_input_source_language.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_translation_input_source_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown translation input source language
if SCROLLABLE_DROPDOWN:
@@ -748,9 +752,9 @@ class ToplevelWindowConfig(CTkToplevel):
values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()),
variable=StringVar(value=self.parent.INPUT_TARGET_LANG),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_translation_input_target_language.grid(row=row, column=3, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_translation_input_target_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown translation input target language
if SCROLLABLE_DROPDOWN:
@@ -784,9 +788,9 @@ class ToplevelWindowConfig(CTkToplevel):
values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()),
variable=StringVar(value=self.parent.OUTPUT_SOURCE_LANG),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_translation_output_source_language.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_translation_output_source_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown translation output source language
if SCROLLABLE_DROPDOWN:
@@ -819,9 +823,9 @@ class ToplevelWindowConfig(CTkToplevel):
values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()),
variable=StringVar(value=self.parent.OUTPUT_TARGET_LANG),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_translation_output_target_language.grid(row=row, column=3, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_translation_output_target_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown translation output target language
if SCROLLABLE_DROPDOWN:
@@ -856,9 +860,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_input_mic_host_callback,
variable=StringVar(value=self.parent.CHOICE_MIC_HOST),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_input_mic_host.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_input_mic_host._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown input mic device's host
if SCROLLABLE_DROPDOWN:
@@ -890,9 +894,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_input_mic_device_callback,
variable=StringVar(value=self.parent.CHOICE_MIC_DEVICE),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_input_mic_device.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_input_mic_device._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown input mic device
if SCROLLABLE_DROPDOWN:
@@ -924,9 +928,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_input_mic_voice_language_callback,
variable=StringVar(value=self.parent.INPUT_MIC_VOICE_LANGUAGE),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_input_mic_voice_language.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_input_mic_voice_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown input mic voice language
if SCROLLABLE_DROPDOWN:
@@ -1068,9 +1072,14 @@ class ToplevelWindowConfig(CTkToplevel):
font=CTkFont(family=self.parent.FONT_FAMILY)
)
self.label_input_mic_word_filter.grid(row=row, column=0, columnspan=1, padx=padx, pady=pady, sticky="nsw")
if len(self.parent.INPUT_MIC_WORD_FILTER) > 0:
textvariable=StringVar(value=",".join(self.parent.INPUT_MIC_WORD_FILTER))
else:
textvariable=None
self.entry_input_mic_word_filter = CTkEntry(
self.tabview_config.tab(config_tab_title_transcription),
textvariable=StringVar(value=",".join(self.parent.INPUT_MIC_WORD_FILTER)),
textvariable=textvariable,
placeholder_text="AAA,BBB,CCC",
font=CTkFont(family=self.parent.FONT_FAMILY)
)
self.entry_input_mic_word_filter.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
@@ -1091,9 +1100,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_input_speaker_device_callback,
variable=StringVar(value=self.parent.CHOICE_SPEAKER_DEVICE),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_input_speaker_device.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_input_speaker_device._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown input speaker device
if SCROLLABLE_DROPDOWN:
@@ -1125,9 +1134,9 @@ class ToplevelWindowConfig(CTkToplevel):
command=self.optionmenu_input_speaker_voice_language_callback,
variable=StringVar(value=self.parent.INPUT_SPEAKER_VOICE_LANGUAGE),
font=CTkFont(family=self.parent.FONT_FAMILY),
dropdown_font=CTkFont(family=self.parent.FONT_FAMILY),
)
self.optionmenu_input_speaker_voice_language.grid(row=row, column=1, columnspan=1, padx=padx, pady=pady, sticky="nsew")
self.optionmenu_input_speaker_voice_language._dropdown_menu.configure(font=CTkFont(family=self.parent.FONT_FAMILY))
## scrollableDropdown input speaker voice language
if SCROLLABLE_DROPDOWN:

View File

@@ -18,7 +18,7 @@ class ToplevelWindowInformation(CTkToplevel):
font=CTkFont(family=self.parent.FONT_FAMILY)
)
self.textbox_information.grid(row=0, column=0, padx=(10, 10), pady=(10, 10), sticky="nsew")
textbox_information_message = """VRCT(v1.2)
textbox_information_message = """VRCT(v1.3)
# 概要
VRChatで使用されるChatBoxをOSC経由でメッセージを送信するツールになります。
@@ -32,7 +32,7 @@ VRChatで使用されるChatBoxをOSC経由でメッセージを送信するツ
(任意)
1. DeepLのAPIを使用するためにアカウント登録し、認証キーを取得する
2. ギアアイコンのボタンでconfigウィンドウを開く
3. ParameterタブのDeepL Auth Keyに認証キーを記載し、フロッピーアイコンのボタンを押す
3. ParameterタブのDeepL Auth Keyに認証キーを記載
4. configウィンドウを閉じる
通常使用時
@@ -61,22 +61,29 @@ VRChatで使用されるChatBoxをOSC経由でメッセージを送信するツ
Appearance Theme: ウィンドウテーマを選択
UI Scaling: UIサイズを調整
Font Family: 表示フォントを選択
(New!) UI Language: UIの表示言語を選択
Translationタブ
Select Translator: 翻訳エンジンの変更
Send Language: 送信するメッセージに対して翻訳する言語[source, target]を選択
Receive Language: 受信したメッセージに対して翻訳する言語[source, target]を選択
Transcriptionタブ
(New!) Input Mic Host: マイクのホストAPIを選択
Input Mic Device: マイクを選択
Input Mic Voice Language: 入力する音声の言語
Input Mic Energy Threshold: 音声取得のしきい値
(New!) Check threshold point: Input Mic Energy Thresholdのしきい値を視覚化
Input Mic Dynamic Energy Threshold: 音声取得のしきい値の自動調整
Input Mic Record Timeout: 音声の区切りの無音時間
Input Mic Phase Timeout: 文字起こしする音声時間の上限
Input Mic Max Phrases: 保留する単語の上限
(New!) Input Mic Word Filter: MICの文字起こし時にWord Filterで設定した文字が入っていた場合にChatboxに表示しない (ex AAA,BBB,CCC)
Input Speaker Device: スピーカーを選択
Input Speaker Voice Language: 受信する音声の言語
Input Speaker Energy Threshold: 音声取得のしきい値
(New!) Check threshold point: (New!)Input Speaker Energy Thresholdのしきい値を視覚化
Input Speaker Dynamic Energy Threshold: 音声取得のしきい値の自動調整
Input Speaker Record Timeout: 音声の区切りの無音時間
Input Speaker Phase Timeout: 文字起こしする音声時間の上限
Input Speaker Max Phrases: 保留する単語の上限
Parameterタブ
OSC IP address: 変更不要
@@ -86,6 +93,8 @@ VRChatで使用されるChatBoxをOSC経由でメッセージを送信するツ
[message]がメッセージボックスに記入したメッセージに置換される
[translation]が翻訳されたメッセージに置換される
初期フォーマット:"[message]([translation])"
Othersタブ
(New!) Auto clear chat box: メッセージ送信後に書き込んだメッセージを空にする
設定の初期化
config.jsonを削除
@@ -118,6 +127,17 @@ https://twitter.com/misya_ai
- いくつかのバクを修正
- 翻訳/文字起こし言語の表記を略称からわかりやすい文字に変更
- 文字起こしの処理の軽量化
[2023-07-05: v1.2]
- 文字起こし精度の向上
[2023-07-21: v1.3]
- UIの表示言語を日本語/英語を選択できる機能を追加
- Energy Thresholdの視覚化機能を追加
- 文字起こしの誤認識対策のため、Word Filterを追加
- WASAPI以外のHostAPIでもマイクとして使用できるようにHostAPIを選択できる機能を追加
- メッセージ送信後に書き込んだメッセージを空にするか選択できる機能を追加
- バグ対策のため、translation/voice2chatbox/speaker2log/foregroundは起動時はOFFになるように変更
- バグ対策のため、スピーカーについて既定デバイス以外を選択した時にERRORが出るように変更
- 半角入力時に一部の文字が書き込めないバグを修正
# 注意事項
再配布とかはやめてね