CWAnalyzerは携帯やパソコンのマイクを使ってモールス信号の音を文字化し、受信テキストを保存するアプリです。現在はホームページ上で動作しますので、機種に依存することは少なく、ホームページが閲覧できる環境で動作すると思います。
マイクの使用確認
「マイク入力を開始」をタップすると読み取りを開始します。マイクの利用に関してはセキュリティーの問題から使ってよいか、ブラウザが確認を取りますので、使用を許可してください。スペクトルの表示
マイクからの信号音の大きさに応じて「spectrum:」に周波数成分がグラフ表示されます。白い枠が表示されるのはその部分の音を中心に調べていることを表しています。この時、スライダー「Q:」を高くするとスライダー「freq:」に応じた周波数の音の幅を狭く調整して検出します(バンドパスフィルターのQに相当)。モールスコードの表示
モールスの「トン(短音)」「ツー(長音)」に応じた信号を図形として「graphic code:」に表示されます。そのコードを解析し、モールスコードが認識されると「text:」に文字として表示されます。ノイズを減らす
認識率を向上させるためには「graphic code:」に表示されるコードが図としてきれいなトンツーになっていることが大切です。そのためにマイクの位置、「Q:」、スライダー「level:」をうまく調整してください。無線機からの実際の音ではノイズが多いですが、うまく調整すると結構認識率は高くできると思います。基本的なモールスの再生音は600Hzが多いですが、無線機で受信する場合、再生音を少し高め(700Hzなど)にするとノイズが減る場合があります。英文、和文の切り替え
基本的に英文で動作していますが、「ー・・ーーー」表示は「#」を受信すると自動的にカナモードにして解析します。また、「Mode:Eng」⇔「Mode:カナ」をタップして強制的に変更することも可能です。和文から英文への自動変換は今のところ実装していません。文字の手入力
受信した文字は「text:」に表示されます。「text:」にも直接文字を入力できますが、次々と文字が受信されるため入力が難しいです。「typing:」には受信文字とは非同期で自由に文字を入力できますので、忘備録として活用できます。タイムスタンプの挿入
「Time Stamp」をタップすると「text:」と「typing:」のカーソル位置に現在時刻が挿入されます。「text:」には基本的に受信文字の最後に挿入され、「typing:」にはカーソル位置に挿入されます。受信テキストの保存
必要に応じて「text:を保存」をタップすると「text:」の内容を保存できます。ファイル名は「Text-日時.txt」となります。同様に「typing:を保存」をタップすると「typing:」の内容が「Typing-日時.txt」で保存されます。細かな設定値の変更
「詳細設定を開く」をタップすると色々なスライダーが表示され設定値を変更できます。これらは音声処理をしているコンプレッサーなどの設定値でノイズを減らす場合に効果があるかもしれませんが、普通はこのままお使いください。動作の概要
このアプリの動作概要はマイクからの音声入力をバンドパスフィルター、コンプレッサーを通した後、FFT解析して周波数成分を調べています。その信号の強さに応じて信号音があるかないかでトンツーを判断しています。この時、トンツー間の時間や文字間の時間を計算しているので、パドルだけでなく、ある程度手入力のモールスにも対応できていると思います。その他
現在はまだデバッグバージョンなので「debug:」エリアが表示されていますが、内部の計算値とかが表示されています。そのうち無くします。