以下、データ処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態におけるデータ処理装置1のブロック図である。
データ処理装置1は、音声付データ格納部101、音声受付部102、処理部103、出力部104、表示データ格納部105、表示部106、入力音声受付部107、音声データ生成部108、音声付データ蓄積部109、追加音声受付部110、および音声追加部111を備える。
音声付データ格納部101には、一または二以上の音声付データが格納される。音声付データは、表示データと、音声データとを一体化して有するデータである。表示用データと音声データとを一体化して有するデータとは、例えば、表示用データと音声データとを一のファイルとして有するデータである。このことは、一のファイル内に表示用データと音声データとが格納されていることと考えてもよい。一の音声付データは、電子書籍等の一のページであっても良い。また、一の音声付データは、オブジェクト指向データベース等の一のオブジェクトであっても良い。音声付データが有する音声データは、例えば、表示データを特定するための音声のデータである。音声付データが有する音声データは、表示データを検索するための音声データである。表示データと音声データとがどのように、一のファイル内に格納されているかは問わない。例えば、音声データは、表示データが有するヘッダやフッタ等に格納されていても良く、このように、音声データがヘッダに格納された表示データを音声付データと考えてもよい。一の音声付データは、複数のテキストデータを有していても良い。また、一の音声付データは、複数の画像データを有していても良い。
表示データとは、表示用のデータである。表示データは、例えば、視覚化可能なデータである。表示データは、例えば、モニタ等に表示可能なデータである。表示用データとは、例えば、テキストデータや、画像データや、これらを組合わせたデータである。テキストデータは、例えば、文字を示す一以上の文字コードを有するデータである。画像データは、ビットマップデータであってもベクタデータであっても良い。ビットマップデータは、例えばラスタデータとも呼ばれる。画像データは、例えば、一以上の文字を示す画像のデータであっても良い。
音声データとは、音声のデータである。音声データとは、例えば、音声の波形を示すデータである。例えば、音声データは、音声の波形を示す電圧の変化を示すデータである。音声データは、音声の波形を標本化したデータであってもよい。また、音声データは、非圧縮のデータであっても良く、圧縮したデータであっても良い。また、この圧縮は非可逆圧縮でも可逆圧縮でもよい。また、圧縮の際に用いられるコーデック等は問わない。
音声付データは、この音声付データに格納される音声データの特徴量を更に有していても良い。音声データの特徴量については後述する。また、音声付データは、この音声付データに格納される音声データを音素に分解した情報や、音素よりも更に細かい要素(以下、音素片と称す)に分解した情報や、これらを符号化した情報等を有していても良い。
一の表示用データ内における表示データと音声データとの対応関係は、例えば、一対一であっても、一対多であっても良く、多対一であっても良い。音声付データにおいては、音声データの再生位置と、表示データ内の位置(例えば座標)や、表示データを構成する複数のテキストデータや画像データの一つや、テキストデータを構成する一以上の文字列等や、テキストデータを構成する一以上の文字群等が、対応づけられていても良い。
また、例えば、一の音声付データが、1または2以上のページを有している場合、一の音声データは、音声付データの一のページと対応づけられていても良い。音声付データがページを有するということは、ページという概念を有していることであっても良い。音声付データのページは、音声付データが有する表示データのページと考えてもよい。音声付データの一のページには、通常、一以上の表示データが配置されるが、一の表示データ、例えば一のテキストデータが、二以上のページにまたがって配置されても良い。音声付データが、ページを有している場合、表示データは、ページに配置される表示用の要素、いわゆる表示オブジェクト等と考えてもよい。
音声付データ格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
音声受付部102は、音声を受け付ける。音声受付部102は、例えば、マイクロフォン(図示せず)等を介して入力された音声を受け付ける。音声受付部102が受け付ける音声は、例えば音声信号である。音声受付部102は、例えば、受け付けた音声を示す音声データを取得する。例えば、音声受付部102は、受け付けた音声を標本化して音声データを取得する。また、音声受付部102が受け付ける音声は、音声データと考えてもよい。例えば、音声受付部102は、音声として音声データを他の装置や、データ処理装置1内の他の構成等から受信してもよい。
音声受付部102は、音声を受け付けるためのマイクロフォン等の入力手段を備えていてもよく、備えていなくても良い。音声受付部102は、入力手段のデバイスドライバや、メニュー画面の制御ソフトウェア等で実現され得る。
処理部103は、音声付データに対し、音声付データが有する音声データを用いて予め指定された処理を行なう。予め指定された処理は、予め決められた処理と考えてもよい。処理部103が音声データを用いて行なう予め指定された処理はどのような処理であっても良い。また、処理部103は、予め指定された処理において音声データをどのように用いるかは問わない。
例えば、処理部103は、音声受付部102が受け付けた音声を用いて、音声付データに対して予め指定された処理を行なう。例えば、処理部103は、音声受付部102が受け付けた音声を用いて、音声付データに対して検索処理を行なう。
例えば、処理部103は、音声付データ格納部101に格納されている音声付データが有する音声データから、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索し、一致する音声を含む音声データを有する音声付データを取得する。ここでの一致する音声とは、一致すると判断するための予め指定された条件を満たす音声と考えてもよく、音声受付部102が受け付けた音声に適合する音声と考えても良い。適合する音声は、例えば、適合度が予め指定された閾値を超える音声である。
処理部103が、音声受付部102が受け付けた音声に一致する音声を含む音声データをどのように検索するかは問わない。例えば、処理部103は、音声や音声データについて取得された特徴量を用いて、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索しても良い。
例えば、処理部103は、音声受付部102が受け付けた音声と、音声付データが有する音声データとについて、それぞれ予め指定された一または二以上の特徴量を取得し、音声受付部102が受け付けた音声から取得した特徴量と、音声付データが有する音声データから取得した特徴量とを照合して、適合度が閾値以上である特徴量を有する部分が音声付データが有する音声データに含まれる場合、この音声付データを、音声受付部102が受け付けた音声に一致する音声を含む音声データを有する音声付データとして取得する。
なお、音声付データが、上述したように、予め、この音声付データが有する音声データの特徴量を有している場合、処理部103は、音声付データが有する音声データを用いて特徴量を取得(例えば、注出)する代わりに、音声付データが有する音声データの特徴量を読出すようにしても良い。また、音声や音声データについての特徴量は、処理部103が取得しても良く、音声受付部102や、音声付データ蓄積部109等が取得するようにしても良い。
音声に関して取得される特徴量は、例えば、短時間ごとに切り出された音声信号から抽出される特徴ベクトルを時系列に配列したものである。ここで取得する特徴量は、例えば、三角型フィルタを用いたチャネル数24のフィルタバンク出力を離散コサイン変換したMFCCであり、その静的パラメータ、デルタパラメータ及びデルタデルタパラメータをそれぞれ12次元有し、さらに正規化されたパワーとデルタパワー及びデルタデルタパワーを有してもよい(合計39次元)。あるいは、特徴量は、MFCCの12次元、ΔMFCCの12次元、Δ対数パワーの1次元を含む25次元のものであってもよい。このように、種々の特徴量を用いることが可能である。特徴量は、特徴パラメータ、特徴ベクトルとも呼ばれる。
音声や音声データについて特徴量を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。また、音声や音声データについて取得した特徴量を照合して、適合度を示す値等を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。
また、処理部103は、音声や音声データを音素や音素片に分解した情報等を用いて、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索しても良い。
例えば、処理部103は、音声受付部102が受け付けた音声と、音声付データが有する音声データとを、音素や音素片に分解し、これらを符号化する。そして、音声受付部102が受け付けた音声を分解して符号化した情報と、音声付データが有する音声データを分解して符号化した情報とを照合し、符号化した情報間において、適合度が閾値以上である部分が音声付データが有する音声データに含まれる場合、この音声付データを、音声受付部102が受け付けた音声に一致する音声を含む音声データを有する音声付データとして取得する。
なお、音声付データが、上述したように、予め、この音声付データが有する音声データの音素や音素片を有している場合、処理部103は、音声付データが有する音声データを分解して、音素や音素片を取得する代わりに、音声付データが有する音素や音素片等の情報を読出すようにしても良い。音声付データが、音素や音素片等をそれぞれ符号化した情報を既に有している場合においては、これらの符号化した情報を読出すようにしても良い。。また、音声や音声データを分解して音素や音素片を取得する処理は、処理部103が実行しても良く、音声受付部102や、音声付データ蓄積部109等が実行するようにしても良い。
なお、音素や音素片を取得する処理や、音素や音素片を符号化したデータを用いて検索を行なう処理については、公知技術であるため、ここでは詳細な説明は省略する。
なお、処理部103は、音声付データが上述したように複数のページにより構成される場合、一以上のページに対応づけられた音声データの中から、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索し、一致する音声を含む音声データと対応づけられた一以上のページを検出するようにしてもよい。かかる処理は、音声付データを検索対象とする代わりに、音声付データ内の音声データと対応づけられたページを検索対象とする点を除けば、上記の検索処理と同様の処理により実現可能である。
また、処理部103は、音声付データが上述したように複数の表示データにより構成される場合、一以上の表示データに対応づけられた音声データの中から、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索し、一致する音声を含む音声データと対応づけられた表示データを検出するようにしてもよい。かかる処理は、音声付データを検索対象とする代わりに、音声付データ内の音声データと対応づけられた表示データを検索対象とする点を除けば、上記の検索処理と同様の処理により実現可能である。
なお、処理部103は、音声付データが有する音声データを用いた予め指定された処理として、上述したような検索処理以外の処理を行なうようにしてもよい。例えば、処理部103は、上述したように、一の音声付データに格納されている音声データや音声データの再生位置(例えば、再生時刻を示すタイムコード等)が、同じ音声付データ内の表示データであるテキストデータやその一部分と対応づけられている場合、音声データを後述する出力部104等に再生させるとともに、再生している音声データ(あるいはその再生位置)と対応づけられたテキストデータやテキストデータの一部分を、他の表示データとは異なる表示態様で出力部104等に表示させるようにしても良い。異なる表示態様で表示とは、例えば、テキストデータの文字や背景色や背景パターンを、他の部分とは異なる表示色や背景パターンで表示することである。
出力部104は、処理部103の処理結果を出力する。例えば、出力部104は、処理部103が、上述した検索等の予め指定された処理等を行なうことにより取得した音声付データを出力する。音声付データを出力するということは、例えば、音声付データ(具体的には音声付データのファイル)を送信したり、図示しない格納部等に蓄積したりすることである。また音声付データを出力することは、例えば、音声付データの表示データを表示することや、音声データが示す音声を出力すること(例えば、再生すること)や、その両方を行なうことであってもよい。また、音声付データを出力するということは、音声付データのファイル名等の識別子を出力することも含むと考えても良い。
例えば、出力部104は、上述した検索処理により処理部103が検出した音声付データを出力する。例えば、検出した音声付データを送信したり、蓄積したりする。また、検出した音声付データの表示データを表示したり、音声データが示す音声を出力する。また、処理部103が検索処理により検出した音声付データのページの表示データを表示したり、このページの音声データが示す音声を出力してもよい。また、処理部103が検索処理により検出した音声受付部102が受け付けた音声に一致する音声を含む音声データと対応づけられた表示データを表示してもよい。
また、出力部104は、処理部103の処理に応じて、音声付データの音声データを出力するともに、この出力している音声データやその再生位置に対応づけられた表示データを、他と異なる表示態様で表示するようにしてもよい。
なお、出力部104は、音声付データ格納部101に格納されている音声付データを、ユーザ等の指示に応じて適宜出力してもよい。
ここでの出力とは、ディスプレイへの表示、プロジェクターを用いた投影、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
出力部104は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部104は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
表示データ格納部105には、一または二以上の表示データが格納される。表示データ格納部105には、例えば、一または二以上の表示データで構成される表示データのファイルが格納される。表示データ格納部105には、例えば、文字を有する表示データが格納される。文字を有する表示データとは、例えば、テキストデータや、文字の画像を有する画像データである。表示データ格納部105に格納される表示データは、例えば、音声付データの作成に用いられる表示データである。表示データについては、音声付データが有する表示データと同様のものであるため、ここでは説明を省略する。
表示部106は、表示データ格納部105に格納された表示データを表示する。例えば、表示部106は、一または二以上の表示データで構成されるファイルを表示する。表示データが、複数のページを有している場合、表示部106は、表示データで構成されるファイルの一以上のページを表示しても良い。
表示部106は、ディスプレイデバイスを含むと考えても含まないと考えても良い。表示部106は、ディスプレイデバイスのドライバーソフトまたは、ディスプレイデバイスのドライバーソフトとディスプレイデバイス等で実現され得る。
なお、上述した出力部104が表示等を行なうための構成を有している場合、出力部104のこの表示等を行なうための構成を、表示部106として用いるようにしてもよい。また、出力部104が表示に利用するディスプレイデバイス等も、表示部106が表示に利用するようにしても良い。
入力音声受付部107は、表示部106が表示する表示データに対する音声を受け付ける。入力音声受付部107は、例えば、表示部106が表示している表示データに対して音声を受け付ける。入力音声受付部107は、例えば、表示部106が複数の表示データを表示している場合に、フォーカスされている表示データに対して音声を受け付ける。フォーカスされている表示データとは、例えば、最前面に表示される表示データや、ユーザにより、図示しない操作受付部等を介して指定された表示データである。複数の表示データは、表示データを有する複数のファイルであっても良い。また、フォーカスされている表示データは、フォーカスされたファイルであっても良い。
なお、入力音声受付部107は、一の表示データ内のユーザが指定した部分について、音声を受け付けても良い。例えば、表示部106が表示する表示データがテキストデータである場合、このデータのユーザにより指定された文字列について、音声を受け付けても良い。
入力音声受付部107は、例えば、マイクロフォン(図示せず)等の音声入力デバイスを介して入力された音声を受け付ける。例えば、ユーザが、音声の受付を開始する操作を図示しない操作受付部に対して行なった場合に、入力音声受付部107は、音声を受け付けるようにしてもよい。
入力音声受付部107が受け付ける音声や、入力音声受付部107の構成や処理等は、上述した音声受付部102が受け付ける音声や、音声受付部102の構成や処理と同様のものであり、ここでは詳細な説明は省略する。
なお、本実施の形態においては、上述した音声受付部102を入力音声受付部107としても用いるようにしてよい。
音声データ生成部108は、表示データ格納部105に格納された表示データについて、表示データが有する文字を用いて、音声データを生成する。音声データ生成部108は、表示データが文字を有する場合に、この文字を用いて、音声データを生成する。表示データが有する文字とは、例えば、表示データがテキストデータである場合、このテキストデータの少なくとも一部を構成する文字である。また、表示データが画像データである場合、表示データが有する文字は、この画像データの少なくとも一部が示す文字であり、例えば、ビットマップ画像で示される文字や、文字のアウトラインを示すベクタ画像で示される文字である。
音声データ生成部108は、例えば、表示データがテキストデータである場合、このテキストデータの少なくとも一部を音声データに変換して音声データを生成する。テキストデータを音声データに変換する処理は公知技術であるため、ここでは詳細な説明は省略する。
音声データ生成部108は、例えば、表示データが文字の画像を含む画像データである場合、この文字に対していわゆるOCR(optical character recognition)等の文字認識処理を行なってテキストデータを取得し、取得したテキストデータの少なくとも一部を音声データに変換して音声データを生成する。
音声データ生成部108は、表示データが有する文字で構成される文字群毎に、先頭から予め指定された文字数以内の文字列について音声データを生成する。表示データが有する文字で構成される文字群とは、例えば、表示データがテキストデータである場合、文や、段落、ページ単位のテキストデータや、フレーム単位のテキストデータである。あるいは、一のテキストデータ全体を一の文字群と考えてもよい。表示データが画像データである場合、例えばこの画像データから文字認識処理等を行なって取得されたテキストデータを構成する文字についての同様の単位である。
なお、音声データ生成部108は、表示データが有する全ての文字群について音声データを生成しなくても良い。例えば、音声データ生成部108は、表示データであるテキストデータの、一または二以上のページから、先頭の予め指定された文字数の文字列を取得し、取得した文字列を用いて、各ページに対応する音声データを取得する。
また、例えば、音声データ生成部108は、表示データであるテキストデータの各段落から、先頭の予め指定された文字数以内の文字列を取得し、取得した文字列を用いて、各段落に対応する音声データを取得する。予め指定された文字数は、通常二以上の文字数であることが好ましく、「また、」や「しかし、」等のテキストデータ内に頻出する接続詞等を除外するためには、三から六文字以上の文字数であることが好ましい。予め指定された文字数以内の文字列は、例えば、予め指定された文字数以内の文字列であって、各文字群の先頭から、一番目、または二番目の読点や句点が入るまでの文字列であることが好ましい。
音声データ生成部108が、表示データについて音声データを生成するタイミングやトリガー等は問わない。例えば、表示データが表示データ格納部105に蓄積されるときに音声データを生成しても良く、ユーザにより生成を指示された場合に生成を行なっても良い。
音声付データ蓄積部109は、入力音声受付部107が受け付けた音声の音声データと、表示部106が表示する表示データと、を一体化して有する音声付データを、音声付データ格納部101に蓄積する。具体的には、音声データと表示データとを一体化して有する音声付データのファイルを生成し、蓄積する。音声付データ蓄積部109は、例えば、音声データを表示データに付加して音声付データのファイルを生成し、音声付データ格納部101に蓄積する。ここでの表示部106が表示する表示データは、例えば、上述したフォーカスされた表示データである。入力音声受付部107が、一の表示データ内のユーザが指定した部分について音声を受け付けた場合、音声付データ蓄積部109は、例えば、音声データを、表示データのこの指定された部分と対応づけた音声付データを蓄積する。また、入力音声受付部107が、一の表示データ内の一のページについて音声を受け付けた場合、音声付データ蓄積部109は、例えば、音声データを、表示データのこの一のページと対応づけた音声付データを蓄積する。
また、音声付データ蓄積部109は、表示データ格納部105に格納された表示データと、表示データについて音声データ生成部108が生成した音声データと、を一体化して有する音声付データを、音声付データ格納部101に蓄積する。音声データ生成部108が、上述したように、表示データであるテキストデータについて、予め指定された文字群毎に先頭の予め指定された文字列を用いて音声データを取得した場合、音声付データ蓄積部109は、各文字群について取得した音声データを、取得した文字群と対応づけて有する、あるいは取得した文字群の先頭の予め指定された文字列と対応づけて有する音声付データを生成して、音声付データ格納部101に蓄積するようにしても良い。
追加音声受付部110は、音声付データ格納部101に格納されている1以上の音声付データについて音声を受け付ける。ここで受け付ける音声は、例えば、音声付データが有する音声データに、音声データを追加するために用いられる音声である。追加音声受付部110は、例えば、ユーザにより指定された音声付データについて音声を受け付ける。例えば、追加音声受付部110は、出力部104が表示している音声付データについて音声を受け付けてもよい。
追加音声受付部110は、音声付データの、既に音声データが対応づけられている表示データの一部分に対して音声を受け付けても良い。例えば、音声付データ内の表示データの一のページに音声データが対応づけられている場合において、この一のページに対して音声を受け付けても良い。例えば、音声付データ内の表示データの、音声データが対応づけられた一のページが表示されている場合に、音声を受け付けることにより、このページについて音声を受け付けても良い。
なお、追加音声受付部110は、一の音声付データが有する表示データ内のユーザが指定した部分について、音声を受け付けても良い。例えば、出力部104が表示する音声付データの表示データがテキストデータである場合、このデータのユーザにより指定された文字列について、音声を受け付けても良い。
追加音声受付部110は、例えば、マイクロフォン(図示せず)等の入力デバイスを介して入力された音声を受け付ける。例えば、ユーザが、音声の受付を開始する操作を図示しない操作受付部に対して行なった場合に、入力音声受付部107は、音声を受け付けるようにしてもよい。
追加音声受付部110が受け付ける音声や、追加音声受付部110の構成や処理等は、上述した音声受付部102や入力音声受付部107が受け付ける音声や、音声受付部102や入力音声受付部107の構成や処理と同様のものであり、ここでは詳細な説明は省略する。
なお、本実施の形態においては、上述した音声受付部102や入力音声受付部107を、追加音声受付部110としても用いるようにしてよい。
音声追加部111は、追加音声受付部110が受け付けた音声の音声データを、音声を受け付けた音声付データを構成する音声データに追記する。例えば、音声追加部111は、受け付けた音声のデータを音声付データが有する音声データの末尾に追記する。このことは、音声付データが既に有する音声データの続きとして、受け付けた音声に対応する音声データを追記することと考えてもよい。
音声追加部111は、例えば、音声付データが有する表示データの一部に対応づけられた音声データに対して、音声を受け付けた場合、この表示データの一部に対応づけられた音声データに対して、受け付けた音声が示す音声データを追記する。例えば、この表示データの一部に対応づけられた音声データの末尾の続きとして、受け付けた音声が示す音声データを追記する。
音声追加部111は、例えば、追加音声受付部110が音声を受け付けた音声付データに、音声の受け付けに関連した属性値を更に追記するようにしてもよい。音声の受け付けに関連した属性値とは、音声を受け付けた日時や、音声を受け付けたデータ処理装置1の装置識別子や、データ処理装置1を操作するユーザのユーザ識別子等である。装置識別子は、装置に割り当てられたシリアル番号等のコードや、MACアドレスやIPアドレス等のアドレス情報である。ユーザ識別子は、ユーザ名や、ユーザアカウント等のユーザに割り当てられたコードや、ユーザのメールアドレス等である。日付は、例えば、図示しない時計や、図示しないネットワークサーバ等から取得して追記する。また、装置識別子やユーザ識別子等は、図示しない格納部等に予め蓄積されているものを適宜読出すようにすればよい。
なお、音声追加部111と同様に、音声付データ蓄積部109が音声付データを作成して蓄積する際に、音声付データを作成するデータ処理装置1の装置識別子やユーザ識別子や日付を、音声データと対応づけて音声付データに蓄積するようにしても良い。
次に、データ処理装置1の動作の一例について図2のフローチャートを用いて説明する。
(ステップS101)データ処理装置1は、音声付データ格納部101に格納されている音声付データに対して、音声データを利用した予め指定された処理を行なうか否かを判断する。例えば、図示しない受付部等が、処理を行なう指示を受け付けた場合に、処理を行なうことを決定する。例えば、音声データを利用した予め指定された処理は、ここでは、音声受付部102が受け付ける音声と一致する音声を含む音声データと対応づけられた音声付データを検索する処理であるとする。処理を行なう場合、ステップS102に進み、処理を行なわない場合、ステップS105に進む。
(ステップS102)音声受付部102は、音声を受け付けたか否かを判断する。受け付けた場合、ステップS103に進み、受け付けていない場合、ステップS102に戻る。
(ステップS103)処理部103は、音声受付部102が受け付けた音声を用いて、音声付データに対して予め指定された処理を行なう。例えば、音声受付部102が受け付けた音声と同じ音声を含む音声データを有する音声付データを、音声付データ格納部101に格納されている音声付データの中から検索する。
(ステップS104)出力部104は、ステップS103による処理結果を出力する。例えば、検出された音声付データを図示しないモニタ等に表示する。そして、ステップS101に戻る。
(ステップS105)表示部106は、表示データ格納部105に格納されている表示データを表示するか否かを判断する。例えば、表示部106は、図示しない受付部等が、ユーザ等から表示データ格納部105に格納されている1以上の表示データを表示する指示を受け付けた場合に、指示された表示データを表示することを決定する。表示する場合、ステップS106に進み、表示しない場合、ステップS111に進む。
(ステップS106)表示部106は、表示データ格納部105に格納されている1以上の表示データを表示する。例えば、表示部106は、ステップS106で指定された表示データを表示する。
(ステップS107)入力音声受付部107は、表示されている表示データについて、音声付データを生成するか否かを判断する。例えば、図示しない受付部等が、ユーザ等から現在フォーカスされている表示データ(例えば、前面に表示されている表示データ)に対して、音声付データを生成する指示を受け付けた場合に、指示された表示データについて、音声付データを生成することを決定する。生成する場合、ステップS108に進み、生成しない場合、ステップS110に進む。
(ステップS108)入力音声受付部107は、音声を受け付けたか否かを判断する。受け付けた場合、ステップS109に進み、受け付けていない場合、ステップS108に戻る。
(ステップS109)音声付データ蓄積部109は、ステップS107で表示されている一の表示データと、ステップS108で受け付けた音声を示す音声データとを含む音声付データを生成し、音声付データ格納部101に蓄積する。そして、ステップS101に戻る。
(ステップS110)表示部106は、表示を終了するか否かを判断する。例えば、図示しない受付部が、表示を終了する指示を受け付けたか否かを判断する。受け付けた場合、表示を終了して、ステップS101に戻り、受け付けていない場合、ステップS107に戻る。
(ステップS111)音声データ生成部108は、表示データ格納部105に格納されている表示データから、音声データを生成するか否かを判断する。例えば、図示しない受付部が、表示データ格納部105に格納されている1以上の表示データに対して、音声データを生成する指示を受け付けた場合に、音声データを生成することを決定する。音声データを生成する場合、ステップS112に進み、生成しない場合、ステップS114に進む。
(ステップS112)音声データ生成部108は、表示データ格納部105に格納されている表示データについて、音声データを生成する。例えば、ステップS111で指定された一以上の表示データについて、それぞれ、音声データを生成する。
(ステップS113)音声付データ蓄積部109は、ステップS112で、表示データについて生成した音声データと、この表示データと含む音声付データを生成し、音声付データ格納部101に蓄積する。そして、ステップS101に戻る。
(ステップS114)追加音声受付部110は、音声付データ格納部101に格納されている音声付データに対して、音声データを追記するか否かを判断する。例えば、図示しない受付部が、音声付データ格納部101に格納されている音声付データの内の一つに対して、音声データを追記する指示を受け付けた場合に、音声データを追記することを決定する。音声データを追記する場合、ステップS115に進み、追記しない場合、ステップS101に戻る。
(ステップS115)追加音声受付部110は、音声を受け付けたか否かを判断する。受け付けた場合、ステップS116に進み、受け付けていない場合、ステップS115に戻る。
(ステップS116)音声追加部111は、ステップS115で受け付けた音声を示す音声データを、音声付データが有する音声データに追記する。例えば、音声データを、ステップS114で指定された一の音声付データが有する音声データに追記する。
(ステップS117)音声追加部111は、ステップS116で音声データを追記した音声付データに、予め指定された属性値を追記する。そして、ステップS101に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態におけるデータ処理装置1の具体的な動作について説明する。ここでは、処理部103が行なう処理が、音声受付部102が受け付けた音声を用いた音声付データの検索であるとする。
図3は、本実施の形態におけるデータ処理装置1の一例の外観を示す図である。本実施の形態においては、データ処理装置1が、いわゆるタブレット型端末である場合を例に挙げて説明する。データ処理装置1は、マイクロフォン102aと、モニタ104aとを備えている。また、モニタ104a上には、図示しないタッチパネルが設けられているものとする。
図4は、音声付データ格納部101に格納されている音声付データを管理する音声付データ管理表である。音声付データ管理表は、「音声付ID」と「音声付データ」という属性を有している。「音声付ID」は、音声付データの識別子であり、ここでは、ファイル名であるとする。「音声付データ」は、音声付データであり、ここでは、音声付データのファイルであるとする。
まず、ユーザが、音声により音声付データを検索するために、図示しない音声入力画面等をモニタ104aに表示させ、音声を入力を開始するための操作を行なったとする。そして、ユーザが、「サードウェーブ」という音声を図示しないマイクロフォン102aに向かって発生したとする。音声受付部102は、マイクロフォン102aを介して、「サードウェーブ」という音声(ここでは、音声信号)を受け付ける。音声受付部102は、受け付けた音声信号に対して、標本化処理等を行なって「サードウェーブ」という音声を示す音声データを取得する。ここでは説明のため、この音声データを取得音声データと呼ぶ。
処理部103は、音声付データ格納部101に格納されている音声付データが有する音声データから、音声受付部102が受け付けた音声に一致する音声を含む音声データを検索する処理を、以下のように行なう。
まず、処理部103は、音声受付部102が取得した音声データについて予め指定された複数の特徴量を取得する。取得した特徴量は、図示しない格納部等に一時記憶する。
処理部103は、図4に示した音声付データ管理表の上から一番目のレコード(行)から、音声付ID「001」と対応づけられた音声付データを読出す。なお、以下、説明の便宜上、音声付ID「001」と対応づけられた音声付データを、音声付データ001と称す。かかることは、他の音声付IDと対応づけられた音声付データについても同様である。
処理部103は、読み出した音声付データ001に含まれる音声データについても、上記と同様の予め指定された複数の特徴量を取得する。そして、上記で取得した取得音声データから取得した特徴量と、音声付データ001の音声データについて取得した特徴量とを照合して、適合度が閾値以上である特徴量を有する部分が音声付データ001が有する音声データに含まれるか否かを判断する。ここでは、適合度が閾値以上である特徴量を有する部分が一以上で検出されたとすると、処理部103は、この音声付データ001を、音声受付部102が受け付けた音声に一致する音声を含む音声データを有する音声付データとして取得する。
同様に、処理部103は、図4に示した音声付データ管理表の上から2番目以降のレコード(行)から取得した音声付データ、例えば、音声付データ002や音声付データ003等についても、上記と同様の処理を行ない、適合度が閾値以上である特徴量を有する部分が音声付データ002や、音声付データ003等が有する音声データに含まれるか否かを判断する。そして、含まれる場合には、含まれると判断された音声付データを音声受付部102が受け付けた音声に一致する音声を含む音声データを有する音声付データとして取得し、含まれない場合には、一致する音声を含まない音声データを有す音声データであると判断して、音声付データは取得しない。
ここでは、例えば、図4に示した音声付データ管理表の全ての音声付データについて上記の処理を行なった結果、処理部103は、音声付データ001だけを、音声受付部102が受け付けた音声に一致する音声を含む音声データを有する音声付データとして取得していたとする。
出力部104は、処理部103が取得した音声付データ001を、モニタ104aに表示する。具体的には、音声付データ001が有する表示データをモニタ104aに表示する。ここでは、例えば、音声付データ001の表示データが複数のページを有するデータであるとすると、出力部104は、表示データの一のページ、例えば、最初の1ページを表示する。
そして、ユーザが、メニュー画面等を操作して、音声付データ001が有する表示データの表示を終了する操作を行なったとする。
図5は、表示データ格納部105に格納されている表示データを管理する表示データ管理表である。表示データ管理表は、「表示ID」と「表示データ」という属性を有している。「表示ID」は、表示データの識別子であり、ここでは、ファイル名であるとする。「表示データ」は、表示データであり、ここでは、表示データのファイルであるとする。表示データは、ここでは、テキストデータを有するデータであるとする。
次に、ユーザが、表示データ格納部105に格納されている表示データを用いて、音声付データを生成するため、表示データ格納部105に格納されている一の表示データを表示させる指示を、図示しないメニュー等を操作して図示しない受付部に与えたとする。ここでは、「表示ID」が「D02」である表示データを表示させる指示を与えたとする。表示部106は、上記の指示に応じて表示データD02をモニタ104aに表示する。なお、「表示ID」が「D02」である表示データを、以下、表示データD02と称す。かかることは、他の表示データにおいても同様である。
なお、ここでは、出力部104が利用するモニタ104aを、表示部106も表示に利用するものとする。
ユーザが、表示されている表示データD02を用いて、音声付データを作成するために、図示しない音声入力インターフェース等をモニタ104aに表示させ、音声を入力を開始するための操作を行なったとする。そして、ユーザが、「これまで主流となっていたシアトル系の…」等の音声を、マイクロフォン102aに対して発生したとすると、入力音声受付部107は、マイクロフォン102aを介して、入力された音声(ここでは、音声信号)を、順次受け付ける。
図6は、入力音声受付部107が、表示部106が表示している表示データに対して音声を受け付けている状態を示す図である。図において、音声の入力を受け付けるための音声入力インターフェース60には、音声の入力を開始するボタン61や、録音時間を示すバー62等が表示される。
音声受付部102は、受け付けた音声信号に対して、標本化処理等を行なって、入力された音声を示す音声データを取得する。
なお、ここでは、音声受付部102が利用するマイクロフォン102aを、入力音声受付部107や、追加音声受付部110も利用するものとする。
音声付データ蓄積部109は、入力音声受付部107が受け付けた音声データと、表示されている表示データD02とを有する音声付データを生成し、音声付データ格納部101に蓄積する。蓄積する際、予め指定されたルール等に従って、上述した「音声付ID」を取得し、取得した「音声付ID」と対応づけて音声付データ格納部101に蓄積する。予め指定されたルールは、例えば、連番を割り当てるルール等である。
また、ユーザが、表示データ格納部105に格納されている一の表示データ、例えば、表示データD03を指定して、この表示データD03を用いて音声データを自動で生成して、音声付データを自動生成するための指示をデータ処理装置1に対して与えると、音声データ生成部108は、表示データD03を表示データ格納部105から読出す。ここでは、表示データD03は、複数ページを有するデータであるとする。音声データ生成部108は、読出した表示データD03に含まれるテキストデータの、各ページの先頭の20文字を、音声データに変換する。例えば、1ページ目のテキストデータの先頭の20文字が「おいしいコーヒーの入れ方は、正しい器具の」という文字列であったとすると、音声データ生成部108は、この文字列を取得して、この文字列を読み上げた音声を示す音声データに変換する。同様に、他のページについても先頭の20文字の音声データを取得する。
そして、音声付データ蓄積部109は、表示データD03と、表示データD03の各ページについて取得した音声データを、各ページと対応づけて有する音声付データを取得し、取得した音声付データを、上記と同様に、「音声付ID」と対応づけて音声付データ格納部101に蓄積する。音声データを各ページと対応づけて有するということは、例えば、各ページについて取得した音声データに対して、各ページのページ番号が対応づけられて格納されていることや、各ページについて取得した音声データを結合した音声データの各ページの始まりとなる位置を示す情報(例えば、再生開始位置)に、ページの始まりを示すデータが対応づけられていること等である。
また、音声付データ格納部101に格納されている音声付データに、ユーザが音声を追記したいと考え、ユーザが、追加の対象となる音声付データ003を指定して、音声を入力するための図示しない音声入力インターフェースを表示して、追加する音声をユーザが発生したとする。
追加音声受付部110は、マイクロフォン102aを介して、入力された音声を受け付け、受け付けた音声から音声データを取得する。音声追加部111は、音声付データ格納部101から音声付データを読出し、取得した音声データを、読出した音声付データ003が有する既存の音声データに追記する。また、音声追加部111は、図示しない時計等から現在の日時を取得して、日時を示すデータを、音声データの受け付けを行なった日時を示す属性値として、音声付データ003に蓄積する。また、音声追加部111は、図示しない格納部等に予め格納されているデータ処理装置1の装置識別子とユーザ識別子とを読出し、これらを、追記する音声データの受付を行なった装置およびユーザを示す属性値として、音声付データ003に蓄積する。
そして、追加音声受付部110は、音声データを追記し、さらに日時や、装置識別子や、ユーザ識別子を蓄積した音声付データ003で、音声付データ格納部101に格納されている音声付データ003を上書きする。これにより、音声付データ003に音声データが追記されたこととなる。
なお、音声付データ003の音声データが、音声付データのページと対応づけて格納されている場合、追記される音声データは、ユーザ等が指定したページに対応づけられた音声データに追記されても良く、デフォルト等で指定された音声データに追記されても良い。
以上、本実施の形態によれば、音声データと、表示用データとを一体化して有する音声付データに対し、この音声付データが有する音声データを用いて予め指定された処理を行なうことができるため、音声データと対応づけられた表示用のデータに対して、音声データを用いて適切に処理を行なうことができる。
なお、上記実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記実施の形態では、データ処理装置がスタンドアロンである場合について説明したが、データ処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記実施の形態におけるデータ処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、表示用のデータである表示データと、音声のデータである音声データとを一体化して有するデータである音声付データが格納される音声付データ格納部にアクセス可能なコンピュータを、音声付データに対し、音声付データが有する音声データを用いて予め指定された処理を行なう処理部と、処理部の処理結果を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
なお、本実施の形態において実現される音声付データのデータ構造は、以下のような音声付データである。つまり、この音声付データのデータ構造は、処理部と、出力部とを有するデータ処理装置で用いられる音声付データのデータ構造であって、データ構造は、表示用のデータである表示データと、音声のデータである音声データとを一体化して有しており、処理部は、音声付データに対し、当該音声付データが有する音声データを用いて予め指定された処理を行ない、出力部は、前記処理部の処理結果を出力するデータ構造である。
図7は、上記プログラムを実行して、上記実施の形態によるデータ処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図7において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図8は、コンピュータシステム900の内部構成を示す図である。図8において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態によるデータ処理装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態によるデータ処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。