akatrans-001
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| akatrans-001 [2023/04/13 02:23] – [概要] k896951 | akatrans-001 [2025/03/30 02:01] (現在) – 外部編集 127.0.0.1 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | ====== VOICEROID+EX/ | ||
| + | 2019/ | ||
| + | **Google翻訳のWebサイト仕様が変更されたので、このプログラムでは翻訳結果を受け取れなくなりました。そのため公開を中止します。** | ||
| + | |||
| + | 2018/ | ||
| + | * 新DLLの公開に伴い再構築を行いました。VOICEROID+EX, | ||
| + | * 定義ファイルをXMLからJSONに変更しました。 | ||
| + | |||
| + | 2017/ | ||
| + | * 「Google本屋君」に触発されて作成。 | ||
| + | * [[http:// | ||
| + | |||
| + | ===== ダウンロード ===== | ||
| + | |||
| + | <WRAP download> | ||
| + | akatran20180212.zip クリップボードの英文をGoogle翻訳で翻訳してVOICEROIDに喋らせる - 2018-02-12 公開。 | ||
| + | </ | ||
| + | |||
| + | アーカイブには以下が含まれています。 | ||
| + | ^ ファイル | ||
| + | | akatrans.exe | ||
| + | | akatran.json | ||
| + | | echoSeikAPI.dll | ||
| + | |||
| + | 作者は Windows 10 Pro 64bit版 + .NET Framework 4.6.1 の環境で動作確認しています。 | ||
| + | |||
| + | Windows 8 以降であれば話者に SAPIの「Microsoft Haruka Desktop」が利用可能と聞いています。SAPI指定時に実行時エラーが出てしまう場合は以下のソフトウエアを導入する事で改善された旨の報告を受けています。 | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ===== 概要 ===== | ||
| + | |||
| + | このプログラムは、編集メニューの「コピー(C)」やショートカット< | ||
| + | プログラム製作者は Windows10 Pro 64bit版上で、 | ||
| + | * VOICEROID+、VOICEROID+EX | ||
| + | * CeVIO(CeVIO CS 6.0.28.3) | ||
| + | * SAPI(ASPI5) | ||
| + | での動作を確認しました。 | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== 注意 ===== | ||
| + | |||
| + | * VOICEROIDやCeVIOはこのプログラム実行前に起動しておく必要があります。 | ||
| + | * このプログラムではGoogle翻訳のWebサイトへアクセスしています。あまりに過剰なアクセスがあった場合、Googleから接続を遮断されてしまうかもしれません。常識の範囲内での利用を推奨します。 | ||
| + | * 英文でなくてもGoogle翻訳のWebサイトにクリップボードの内容が転送されるので、機密情報を扱うような作業時には利用しない事を推奨します。 | ||
| + | * また、エラーに関しての考慮が決定的に欠けています。ご注意ください。 | ||
| + | |||
| + | ===== 始まりは過酷な労働からの解放 ===== | ||
| + | |||
| + | まずはこちらをご覧ください。 | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | クリップボードを毎秒60回監視するという過酷な労働から琴葉茜ちゃんを解放するための挑戦をしてみました。 | ||
| + | |||
| + | ===== プログラムの使い方と説明 ===== | ||
| + | |||
| + | ==== 設定 ==== | ||
| + | |||
| + | アーカイブに同梱された akatran.json を UTF-8(BOM無し)で編集可能なテキストエディタで開いてください。 | ||
| + | |||
| + | === SAPI話者を使う場合 === | ||
| + | |||
| + | akatran.jsonのRateプロパティ(話速)とVolumeプロパティ(音量)を変更することができます。全てのSAPI話者で共用されます。\\ | ||
| + | msttsRateタグおよびmsttsVolumeタグが各々対応します。指定範囲は Volume:0 ~ 100、Rate: | ||
| + | |||
| + | <code javaScript> | ||
| + | " | ||
| + | " | ||
| + | </ | ||
| + | |||
| + | === VOICEROID話者/ | ||
| + | |||
| + | akatran.jsonの" | ||
| + | |||
| + | alpha, intonation, pitch, speed, volume, の各プロパティは音声効果パラメタです。必要なら適宜修正してください。alphaプロパティは今のところCeVIOで有効です。intonationプロパティに0.0を指定すると、完全棒読みになります。 | ||
| + | |||
| + | <code javascript> | ||
| + | " | ||
| + | { " | ||
| + | { " | ||
| + | { " | ||
| + | ], | ||
| + | </ | ||
| + | |||
| + | ^ 指定 | ||
| + | | SEIKA | VOICEROID+ 京町セイカ EX | | ||
| + | | YOSHIDA_EX | VOICEROID+ 鷹の爪 吉田くん EX | | ||
| + | | AI_EX | VOICEROID+ 月読アイ EX | | ||
| + | | SHOUTA_EX | ||
| + | | MINASE | ||
| + | | KIRITAN | ||
| + | | ZUNKO | VOICEROID+ 東北ずん子 | ||
| + | | ZUNKO_EX | ||
| + | | TAMMY_EX | ||
| + | | YUKARI_EX | ||
| + | | AKANE | VOICEROID+ 琴葉茜 | ||
| + | | AOI | VOICEROID+ 琴葉葵 | ||
| + | | TAMMY | VOICEROID+ 民安ともえ | ||
| + | | YUKARI | ||
| + | | YOSHIDA | ||
| + | | UNA | 音街ウナTalk Ex | | ||
| + | | SASARA | ||
| + | | TSUZUMI | ||
| + | | TAKAHASHI | ||
| + | | IA | CeVIO IA | | ||
| + | | ONE | CeVIO ONE | | ||
| + | |||
| + | |||
| + | ==== 起動 ==== | ||
| + | |||
| + | VOICEROID、CeVIOを先に起動し、次にakatrans.exeを起動します。 | ||
| + | |||
| + | ==== 基本機能 ==== | ||
| + | |||
| + | この状態で例えばメモ帳で書いた英文をマウスで選択、ショートカットキー < | ||
| + | |||
| + | {{: | ||
| + | |||
| + | 再度ショートカットキー < | ||
| + | |||
| + | {{: | ||
| + | |||
| + | 話者を切り替えればその話者で翻訳結果を読み上げします。 | ||
| + | |||
| + | ==== その他機能 ==== | ||
| + | |||
| + | === 翻訳対象言語の切り替え === | ||
| + | |||
| + | 「翻訳種類」で翻訳対象言語の切り替えができます。\\ | ||
| + | デフォルトの akatran.json を使った場合、英日、中日、独日、仏日、日英、の5つが利用可能です。英語の話せない話者で英語を読み上げることはできないので注意してください。 | ||
| + | |||
| + | === 翻訳しない === | ||
| + | |||
| + | Google翻訳サイトとの通信を行わず、クリップボード内容をそのまま読み上げします。このプログラムのコンセプトを否定してしまう機能です。 | ||
| + | |||
| + | === 音声を出力しない === | ||
| + | |||
| + | 音声合成を抑止します。このプログラムのコンセプトを否定してしまう機能です。 | ||
| + | |||
| + | === クリップボードを変換結果で置き換えする === | ||
| + | |||
| + | チェックボックス「クリップボードを変換結果で置き換えする」をオンにしておくと、「変換テキスト」が翻訳されたタイミングでクリップボードの内容が翻訳結果に置き換わります。\\ | ||
| + | ショートカットキー < | ||
| + | |||
| + | === 動作一時停止 === | ||
| + | |||
| + | クリップボード監視を停止します。 | ||
| + | |||
| + | |||
| + | ===== 技術的な説明 ===== | ||
| + | |||
| + | このプログラムはGoogle本屋君の説明と同じように、IE(webBrowserコンポーネント)経由でクリップボードの内容をGoogle翻訳ページで翻訳し、その結果をVOICEROIDに読み上げさせる手法を使っています。 | ||
| + | |||
| + | ==== 本家との差異 ==== | ||
| + | |||
| + | 本家との違いは、 | ||
| + | * 動作トリガーはショートカットキー< | ||
| + | * VOICEROIDを変更できる。 | ||
| + | * 翻訳結果を残さない(記録しない)。 | ||
| + | * 英日以外の翻訳も可能。 | ||
| + | * 毎秒60回の監視はしないのでPCに多少優しい。 | ||
| + | |||
| + | となります。 | ||
| + | |||
| + | ==== Win API AddClipboardFormatListener() ==== | ||
| + | |||
| + | Windows Vista以降に実装されたAPI AddClipboardFormatListener() を利用しています。\\ | ||
| + | このAPIでプログラムを登録すると、クリップボードに何らかの変化があった場合にOSが登録プログラムに対してウインドウメッセージ(WM_CLIPBOARDUPDATE)を送ってくれるので、ポーリングでクリップボードの監視をする必要がなくなります。\\ | ||
| + | * [[https:// | ||
| + | |||
| + | ==== Google翻訳呼び出しURL ==== | ||
| + | |||
| + | Web APIを使っているわけではなく、単純にGoogle翻訳のWebページへアクセスしています。以下のURLでテキストを渡しているだけです。 | ||
| + | * https:// | ||
| + | |||
| + | " | ||
| + | 具体的なURLは akatran.json のurlsプロパティの定義を参照してください。 | ||
| + | デフォルトの英日、中日、独日、仏日、日英、の5つが登録されています。この構造が理解できるなら、新たな翻訳を追加したり不要な翻訳を削除することができます。 | ||
| + | |||
| + | ==== Google翻訳結果取り出し ==== | ||
| + | |||
| + | 最初に取得できるHTMLには翻訳結果は入っておらず、JavaScriptの実行により後から非同期に翻訳結果が返ってきます。\\ | ||
| + | JavaScript実行とその結果生成されるDOMを操作する必要があるため、IEコンポーネントを利用しています。 | ||
| + | |||
| + | ダサいロジックで翻訳終了を検知しているため、3秒ほどかかってしまいます。もう少しスマートな方法もありますが手間に見合わないのでこのままにしています。\\ | ||
| + | |||
| + | |||
| + | {{tag> 技術資料 Windows voiceroid CeVIO SAPI Google翻訳 Win32API }} | ||
