###前提・実現したいこと
音声認識で得た日本語の入力結果に対して様々な処理を施すプログラムを、CLI上でPython言語を用い、MacOSを対象動作環境として書いています。
音声認識モジュールには様々な選択肢がありますが、フリーであるものの認識精度に乏しい、あるいはWebAPIを通すために必ずネット接続が要求されるなどの制約があります。
そこでいま、MacOS 10.9 (Mavericks) より搭載されている拡張音声入力(Enhanced Dictation)機能に注目しています。音声入力機能自体は10.8 (Mountain Lion) からの実装ですが、10.9以降のそれはオフラインで使用することができます。また認識精度も十分満足できるものです。
###課題
本質問の主旨は、(拡張)音声入力機能を「音声入力の結果のみに基づいて入力を終了する」形でCLIアプリから使用することは可能か、もし可能であればどのような手法で出来るか、というものになります。要件としては、
- MacOSの音声入力機能(出来れば,「拡張音声入力」)を使用してディクテーションを行う。
- Pythonプログラムによる呼び出し及び出力の受取りが可能である。(標準入出力で
subprocess.Popen
やsubprocess.PIPE
を利用できればよいです) - 何らかの命令音声あるいは無音区間の入力によりディクテーションを終了する。(キーボードによる操作を経ない)
このようなプログラムの実装を準備しています(言語はSwift又はObjective-Cを予定)。その実装のためには、Dictationに関係するAPIを発見し、それを利用できればと思っているのですが、未だ具体的なものが見つかりません。情報やヒントをおもちの方に、何卒ご提供頂ければ幸いです。
###これまでに調査したこと
- dictation機能はInput Methodの一つとして、
DictationIM.app
という独立したアプリケーションの形で実装されている(と思われる)。デーモン動作しているプロセスは、/System/Library/Input Methods/DictationIM.app/Contents/MacOS/DictationIM
- Apple Developerで
dictation
及びspeech input
というクエリで検索を行ったが、macOSのCocoa APIに直接関連した記事がヒットしない。OS X Developer Release Notes: Cocoa Application Framework (10.11 and Earlier)という文書にNSTextAlternatives
に関する説明があったが、「厳密にはdictationに結びつけられていない」旨の記載がある
以上、どのような情報でもご教示頂けますと幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/22 05:05
2016/12/22 12:54
2016/12/22 15:30