(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-08
(45)【発行日】2024-05-16
(54)【発明の名称】電子機器、電子楽器、方法及びプログラム
(51)【国際特許分類】
G10H 1/00 20060101AFI20240509BHJP
G10L 13/00 20060101ALI20240509BHJP
【FI】
G10H1/00 102Z
G10L13/00 100Y
(21)【出願番号】P 2022031599
(22)【出願日】2022-03-02
(62)【分割の表示】P 2020051215の分割
【原出願日】2020-03-23
【審査請求日】2023-01-06
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100121083
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100182936
【氏名又は名称】矢野 直樹
(72)【発明者】
【氏名】段城 真
(72)【発明者】
【氏名】太田 文章
(72)【発明者】
【氏名】中村 厚士
【審査官】山下 剛史
(56)【参考文献】
【文献】特開2019-184936(JP,A)
【文献】特開2008-170592(JP,A)
【文献】特開2019-184935(JP,A)
【文献】特開2019-219568(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10H 1/00
G10L 13/00-13/10
(57)【特許請求の範囲】
【請求項1】
ユーザ操作の検出の有無に関わらず、歌詞データの発音タイミングに合わせて音声合成データを生成し、
前記発音タイミングに応じたユーザ操作を検出する場合に、生成された前記音声合成データに従う発音を許可し、
前記発音タイミングに応じたユーザ操作を検出しない場合に、生成された前記音声合成データに従う発音を許可しないように制御する、
電子機器。
【請求項2】
或る歌い手の声を学習した学習済みモデルへの前記発音タイミングに合わせた前記歌詞データの入力に応じて、前記学習済みモデルが出力する音響特徴量データに従って、前記音声
合成データは生成される、
請求項1に記載の電子機器。
【請求項3】
前記発音タイミング以外のタイミングにユーザ操作を検出する場合に、発音中の音のピッチを変更する、
請求項1又は請求項2に記載の電子機器。
【請求項4】
請求項1から請求項3のいずれかに記載の電子機器と、
鍵盤と、を備え、
押鍵による前記ユーザ操作の検出に応じて許可される前記発音の継続中に、全鍵離鍵が検出された場合に、前記発音が継続中の音声をミュート処理する、
電子楽器。
【請求項5】
電子機器のコンピュータが、
ユーザ操作の検出の有無に関わらず、歌詞データの発音タイミングに合わせて音声合成データを生成し、
前記発音タイミングに応じたユーザ操作を検出する場合に、生成された前記音声合成データに従う発音を許可し、
前記発音タイミングに応じたユーザ操作を検出しない場合に、生成された前記音声合成データに従う発音を許可しないように制御する、
方法。
【請求項6】
電子機器のコンピュータに、
ユーザ操作の検出の有無に関わらず、歌詞データの発音タイミングに合わせて音声合成データを生成させ、
前記発音タイミングに応じたユーザ操作を検出する場合に、生成された前記音声合成データに従う発音を許可させ、
前記発音タイミングに応じたユーザ操作を検出しない場合に、生成された前記音声合成データに従う発音を許可しないように制御させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、電子機器、電子楽器、方法及びプログラムに関する。
【背景技術】
【0002】
近年、合成音声の利用シーンが拡大している。そうした中、自動演奏だけではなく、ユーザ(演奏者)の押鍵に応じて歌詞を進行させ、歌詞に対応した合成音声を出力できる電子楽器があれば、より柔軟な合成音声の表現が可能となり好ましい。
【0003】
例えば、特許文献1においては、鍵盤などを用いたユーザ操作に基づく演奏に同期させて歌詞を進行させる技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、単純に鍵が押されるたびに歌詞を進行させると、押鍵し過ぎにより歌詞の位置が想定より超過したり、押鍵が不足して歌詞の位置が想定より進まなかったりするため、手軽に合成音声を用いた歌詞の発音を楽しむことが難しいという課題がある。
【0006】
そこで本開示は、演奏にかかる歌詞進行を適切に制御できる電子楽器、方法及びプログラムを提供することを目的の1つとする。
【課題を解決するための手段】
【0007】
本開示の一態様に係る電子機器は、ユーザ操作の検出の有無に関わらず、歌詞データの発音タイミングに合わせて音声合成データを生成し、前記発音タイミングに応じたユーザ操作を検出する場合に、生成された前記音声合成データに従う発音を許可し、前記発音タイミングに応じたユーザ操作を検出しない場合に、生成された前記音声合成データに従う発音を許可しないように制御する。
【発明の効果】
【0008】
本開示の一態様によれば、演奏にかかる歌詞進行を適切に制御できる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、一実施形態にかかる電子楽器10の外観の一例を示す図である。
【
図2】
図2は、一実施形態にかかる電子楽器10の制御システム200のハードウェア構成の一例を示す図である。
【
図3】
図3は、一実施形態にかかる音声学習部301の構成例を示す図である。
【
図4】
図4は、一実施形態にかかる波形データ出力部211の一例を示す図である。
【
図5】
図5は、一実施形態にかかる波形データ出力部211の別の一例を示す図である。
【
図6】
図6は、一実施形態に係る歌詞進行制御方法のフローチャートの一例を示す図である。
【
図7】
図7は、一実施形態に係る歌詞進行制御方法を用いて制御された歌詞進行の一例を示す図である。
【発明を実施するための形態】
【0010】
本発明者らは、ユーザの演奏操作に関わらず歌声波形データを生成しつつ、当該歌声波形データに応じた音の発音の許可及び不許可を制御することを着想し、本開示の電子楽器を想到した。
【0011】
本開示の一態様によれば、ユーザの操作に基づいて、発音される歌詞の進行を容易に制御できる。
【0012】
以下、本開示の実施形態について添付図面を参照して詳細に説明する。以下の説明では、同一の部には同一の符号が付される。同一の部は名称、機能などが同じであるため、詳細な説明は繰り返さない。
【0013】
(電子楽器)
図1は、一実施形態にかかる電子楽器10の外観の一例を示す図である。電子楽器10は、スイッチ(ボタン)パネル140b、鍵盤140k、ペダル140p、ディスプレイ150d、スピーカー150sなどを搭載してもよい。
【0014】
電子楽器10は、鍵盤、スイッチなどの操作子を介してユーザからの入力を受け付け、演奏、歌詞進行などを制御するための装置である。電子楽器10は、MIDI(Musical Instrument Digital Interface)データなどの演奏情報に応じた音を発生する機能を有する装置であってもよい。当該装置は、電子楽器(電子ピアノ、シンセサイザーなど)であってもよいし、センサなどを搭載して上述の操作子の機能を有するように構成されたアナログの楽器であってもよい。
【0015】
スイッチパネル140bは、音量の指定、音源、音色などの設定、ソング(伴奏)の選曲(伴奏)、ソング再生開始/停止、ソング再生の設定(テンポなど)などを操作するためのスイッチを含んでもよい。
【0016】
鍵盤140kは、演奏操作子としての複数の鍵を有してもよい。ペダル140pは、当該ペダルを踏んでいる間、押さえた鍵盤の音を伸ばす機能を有するサステインペダルであってもよいし、音色、音量などを加工するエフェクターを操作するためのペダルであってもよい。
【0017】
なお、本開示において、サステインペダル、ペダル、フットスイッチ、コントローラ(操作子)、スイッチ、ボタン、タッチパネルなどは、互いに読み替えられてもよい。本開示におけるペダルの踏み込みは、コントローラの操作で読み替えられてもよい。
【0018】
鍵は、演奏操作子、音高操作子、音色操作子、直接操作子、第1の操作子などと呼ばれてもよい。ペダルは、非演奏操作子、非音高操作子、非音色操作子、間接操作子、第2の操作子などと呼ばれてもよい。
【0019】
ディスプレイ150dは、歌詞、楽譜、各種設定情報などを表示してもよい。スピーカー150sは、演奏により生成された音を放音するために用いられてもよい。
【0020】
なお、電子楽器10は、MIDIメッセージ(イベント)及びOpen Sound Control(OSC)メッセージの少なくとも一方を生成したり、変換したりすることができてもよい。
【0021】
電子楽器10は、制御装置10、歌詞進行制御装置10などと呼ばれてもよい。
【0022】
電子楽器10は、有線及び無線(例えば、Long Term Evolution(LTE)、5th generation mobile communication system New Radio(5G NR)、Wi-Fi(登録商標)など)の少なくとも一方を介して、ネットワーク(インターネットなど)と通信してもよい。
【0023】
電子楽器10は、進行の制御対象となる歌詞に関する歌声データ(歌詞テキストデータ、歌詞情報などと呼ばれてもよい)を、予め保持してもよいし、ネットワークを介して送信及び/又は受信してもよい。歌声データは、楽譜記述言語(例えば、MusicXML)によって記載されたテキストであってもよいし、MIDIデータの保存形式(例えば、Standard MIDI File(SMF)フォーマット)で表記されてもよいし、通常のテキストファイルで与えられるテキストであってもよい。歌声データは、後述する歌声データ215であってもよい。本開示において、歌声、音声、音などは、互いに読み替えられてもよい。
【0024】
なお、電子楽器10は、当該電子楽器10に具備されるマイクなどを介してユーザがリアルタイムに歌う内容を取得し、これに音声認識処理を適用して得られるテキストデータを歌声データとして取得してもよい。
【0025】
図2は、一実施形態にかかる電子楽器10の制御システム200のハードウェア構成の一例を示す図である。
【0026】
中央処理装置(Central Processing Unit:CPU)201、ROM(リードオンリーメモリ)202、RAM(ランダムアクセスメモリ)203、波形データ出力部211、
図1のスイッチ(ボタン)パネル140b、鍵盤140k、ペダル140pが接続されるキースキャナ206、及び
図1のディスプレイ150dの一例としてのLCD(Liquid Crystal Display)が接続されるLCDコントローラ208が、それぞれシステムバス209に接続されている。
【0027】
CPU201には、演奏を制御するためのタイマ210(カウンタと呼ばれてもよい)が接続されてもよい。タイマ210は、例えば、電子楽器10における自動演奏の進行をカウントするために用いられてもよい。CPU201は、プロセッサと呼ばれてもよく、周辺回路とのインターフェース、制御回路、演算回路、レジスタなどを含んでもよい。
【0028】
各装置における機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みなどを制御することによって実現されてもよい。
【0029】
CPU201は、RAM203をワークメモリとして使用しながらROM202に記憶された制御プログラムを実行することにより、
図1の電子楽器10の制御動作を実行する。また、ROM202は、上記制御プログラム及び各種固定データのほか、歌声データ、伴奏データ、これらを含む曲(ソング)データなどを記憶してもよい。
【0030】
波形データ出力部211は、音源LSI(大規模集積回路)204、音声合成LSI205などを含んでもよい。音源LSI204と音声合成LSI205は、1つのLSIに統合されてもよい。波形データ出力部211の具体的なブロック図については、
図3で後述する。なお、波形データ出力部211の処理の一部は、CPU201によって行われてもよいし、波形データ出力部211に含まれるCPUによって行われてもよい。
【0031】
波形データ出力部211から出力される歌声波形データ217及びソング波形データ218は、それぞれD/Aコンバータ212及び213によってアナログ歌声音声出力信号及びアナログ楽音出力信号に変換される。アナログ楽音出力信号及びアナログ歌声音声出力信号は、ミキサ214で混合され、その混合信号がアンプ215で増幅された後に、スピーカー150s又は出力端子から出力されてもよい。なお、歌声波形データは歌声合成データと呼ばれてもよい。図示しないが、歌声波形データ217及びソング波形データ218をデジタルで合成した後に、D/Aコンバータでアナログに変換して混合信号が得られてもよい。
【0032】
キースキャナ(スキャナ)206は、
図1の鍵盤140kの押鍵/離鍵状態、スイッチパネル140bのスイッチ操作状態、ペダル140pのペダル操作状態などを定常的に走査し、CPU201に割り込みを掛けて状態変化を伝える。
【0033】
LCDコントローラ208は、ディスプレイ150dの一例であるLCDの表示状態を制御するIC(集積回路)である。
【0034】
なお、当該システム構成は一例であり、これに限られない。例えば、各回路が含まれる数は、これに限られない。電子楽器10は、一部の回路(機構)を含まない構成を有してもよいし、1つの回路の機能が複数の回路により実現される構成を有してもよい。複数の回路の機能が1つの回路により実現される構成を有してもよい。
【0035】
また、電子楽器10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、CPU201は、これらのハードウェアの少なくとも1つで実装されてもよい。
【0036】
<音響モデルの生成>
図3は、一実施形態にかかる音声学習部301の構成の一例を示す図である。音声学習部301は、
図1の電子楽器10とは別に外部に存在するサーバコンピュータ300が実行する一機能として実装されてもよい。なお、音声学習部301は、CPU201、音声合成LSI205などが実行する一機能として電子楽器10に内蔵されてもよい。
【0037】
本開示における音声合成を実現する音声学習部301及び波形データ出力部211は、それぞれ、例えば、深層学習に基づく統計的音声合成技術に基づいて実装されてもよい。
【0038】
音声学習部301は、学習用テキスト解析部303と学習用音響特徴量抽出部304とモデル学習部305とを含んでもよい。
【0039】
音声学習部301において、学習用歌声音声データ312としては、例えば適当なジャンルの複数の歌唱曲を、ある歌手が歌った音声を録音したものが使用される。また、学習用歌声データ311としては、各歌唱曲の歌詞テキストが用意される。
【0040】
学習用テキスト解析部303は、歌詞テキストを含む学習用歌声データ311を入力してそのデータを解析する。この結果、学習用テキスト解析部303は、学習用歌声データ311に対応する音素、音高等を表現する離散数値系列である学習用言語特徴量系列313を推定して出力する。
【0041】
学習用音響特徴量抽出部304は、上記学習用歌声データ311の入力に合わせてその学習用歌声データ311に対応する歌詞テキストを或る歌手が歌うことによりマイク等を介して集録された学習用歌声音声データ312を入力して分析する。この結果、学習用音響特徴量抽出部304は、学習用歌声音声データ312に対応する音声の特徴を表す学習用音響特徴量系列314を抽出して出力する。
【0042】
本開示において、学習用音響特徴量系列314や、後述する音響特徴量系列317に対応する音響特徴量系列は、人間の声道をモデル化した音響特徴量データ(フォルマント情報、スペクトル情報などと呼ばれてもよい)と、人間の声帯をモデル化した声帯音源データ(音源情報と呼ばれてもよい)とを含む。スペクトル情報としては、例えば、メルケプストラム、線スペクトル対(Line Spectral Pairs:LSP)等を採用できる。音源情報としては、人間の音声のピッチ周波数を示す基本周波数(F0)及びパワー値を採用できる。
【0043】
モデル学習部305は、学習用言語特徴量系列313から、学習用音響特徴量系列314が生成される確率を最大にするような音響モデルを、機械学習により推定する。即ち、テキストである言語特徴量系列と音声である音響特徴量系列との関係が、音響モデルという統計モデルによって表現される。モデル学習部305は、機械学習を行った結果算出される音響モデルを表現するモデルパラメータを、学習結果315として出力する。したがって、当該音響モデルは、学習済みモデルに該当する。
【0044】
学習結果315(モデルパラメータ)によって表現される音響モデルとして、HMM(Hidden Markov Model:隠れマルコフモデル)を用いてもよい。
【0045】
ある歌唱者があるメロディーにそった歌詞を発声する際、声帯の振動や声道特性の歌声の特徴パラメータがどのような時間変化をしながら発声されるか、ということが、HMM音響モデルによって学習されてもよい。より具体的には、HMM音響モデルは、学習用の歌声データから求めたスペクトル、基本周波数、およびそれらの時間構造を音素単位でモデル化したものであってもよい。
【0046】
まず、HMM音響モデルが採用される
図3の音声学習部301の処理について説明する。音声学習部301内のモデル学習部305は、学習用テキスト解析部303が出力する学習用言語特徴量系列313と、学習用音響特徴量抽出部304が出力する上記学習用音響特徴量系列314とを入力することにより、尤度が最大となるHMM音響モデルの学習を行ってもよい。
【0047】
歌声音声のスペクトルパラメータは、連続HMMによってモデル化することができる。一方、対数基本周波数(F0)は有声区間では連続値をとり、無声区間では値を持たない可変次元の時間系列信号であるため、通常の連続HMMや離散HMMで直接モデル化することはできない。そこで、可変次元に対応した多空間上の確率分布に基づくHMMであるMSD-HMM(Multi-Space probability Distribution HMM)を用い、スペクトルパラメータとしてメルケプストラムを多次元ガウス分布、対数基本周波数(F0)の有声音を1次元空間、無声音を0次元空間のガウス分布として同時にモデル化する。
【0048】
また、歌声を構成する音素の特徴は、音響的な特徴は同一の音素であっても、様々な要因の影響を受けて変動することが知られている。例えば、基本的な音韻単位である音素のスペクトルや対数基本周波数(F0)は、歌唱スタイルやテンポ、或いは、前後の歌詞や音高等によって異なる。このような音響特徴量に影響を与える要因のことをコンテキストと呼ぶ。
【0049】
一実施形態の統計的音声合成処理では、音声の音響的な特徴を精度良くモデル化するために、コンテキストを考慮したHMM音響モデル(コンテキスト依存モデル)を採用してもよい。具体的には、学習用テキスト解析部303は、フレーム毎の音素、音高だけでなく、直前、直後の音素、現在位置、直前、直後のビブラート、アクセントなども考慮した学習用言語特徴量系列313を出力してもよい。更に、コンテキストの組合せの効率化のために、決定木に基づくコンテキストクラスタリングが用いられてよい。
【0050】
例えば、モデル学習部305は、学習用テキスト解析部303が学習用歌声データ311から抽出した状態継続長に関する多数の音素のコンテキストに対応する学習用言語特徴量系列313から、状態継続長を決定するための状態継続長決定木を、学習結果315として生成してもよい。
【0051】
また、モデル学習部305は、例えば、学習用音響特徴量抽出部304が学習用歌声音声データ312から抽出したメルケプストラムパラメータに関する多数の音素に対応する学習用音響特徴量系列314から、メルケプストラムパラメータを決定するためのメルケプストラムパラメータ決定木を、学習結果315として生成してもよい。
【0052】
また、モデル学習部305は例えば、学習用音響特徴量抽出部304が学習用歌声音声データ312から抽出した対数基本周波数(F0)に関する多数の音素に対応する学習用音響特徴量系列314から、対数基本周波数(F0)を決定するための対数基本周波数決定木を、学習結果315として生成してもよい。なお、対数基本周波数(F0)の有声区間と無声区間はそれぞれ、可変次元に対応したMSD-HMMにより、1次元及び0次元のガウス分布としてモデル化され、対数基本周波数決定木が生成されてもよい。
【0053】
なお、HMMに基づく音響モデルの代わりに又はこれとともに、ディープニューラルネットワーク(Deep Neural Network:DNN)に基づく音響モデルが採用されてもよい。この場合、モデル学習部305は、言語特徴量から音響特徴量へのDNN内の各ニューロンの非線形変換関数を表すモデルパラメータを、学習結果315として生成してもよい。DNNによれば、決定木では表現することが困難な複雑な非線形変換関数を用いて、言語特徴量系列と音響特徴量系列の関係を表現することが可能である。
【0054】
また、本開示の音響モデルはこれらに限られるものではなく、例えばHMMとDNNを組み合わせた音響モデル等、統計的音声合成処理を用いた技術であればどのような音声合成方式が採用されてもよい。
【0055】
学習結果315(モデルパラメータ)は、例えば、
図3に示されるように、
図1の電子楽器10の工場出荷時に、
図2の電子楽器10の制御システムのROM202に記憶され、電子楽器10のパワーオン時に、
図2のROM202から波形データ出力部211内の後述する歌声制御部307などに、ロードされてもよい。
【0056】
学習結果315は、例えば、
図3に示されるように、演奏者が電子楽器10のスイッチパネル140bを操作することにより、ネットワークインタフェース219を介して、インターネットなどの外部から波形データ出力部211内の歌声制御部307にダウンロードされてもよい。
【0057】
<音響モデルに基づく音声合成>
図4は、一実施形態にかかる波形データ出力部211の一例を示す図である。
【0058】
波形データ出力部211は、処理部(テキスト処理部、前処理部などと呼ばれてもよい)306、歌声制御部(音響モデル部と呼ばれてもよい)307、音源308、歌声合成部(発声モデル部と呼ばれてもよい)309、ミュート部310などを含む。
【0059】
波形データ出力部211は、
図1の鍵盤140kの押鍵に基づいて
図2のキースキャナ206を介してCPU201から指示される、歌詞及び音高の情報を含む歌声データ215を入力することにより、当該歌詞及び音高に対応する歌声波形データ217を合成し出力する。言い換えると、波形データ出力部211は、歌詞テキストを含む歌声データ215に対応する歌声波形データ217を、歌声制御部307に設定された音響モデルという統計モデルを用いて予測することにより合成する、統計的音声合成処理を実行する。
【0060】
また、波形データ出力部211は、ソングデータの再生時には、対応するソング再生位置に該当するソング波形データ218を出力する。ここで、ソングデータは、伴奏のデータ(例えば、1つ以上の音についての、音高、音色、発音タイミングなどのデータ)、伴奏及びメロディーのデータに該当してもよく、バックトラックデータなどと呼ばれてもよい。
【0061】
処理部306は、例えば自動演奏に合わせた演奏者の演奏の結果として、
図2のCPU201より指定される歌詞の音素、音高等に関する情報を含む歌声データ215を入力し、そのデータを解析する。歌声データ215は、例えば、第n番目の音符(第n音符、第nタイミングなどと呼ばれてもよい)のデータ(例えば、音高データ、音符長データ)、第n音符に対応する第n歌詞のデータなどを含んでもよい。
【0062】
例えば、処理部306は、鍵盤140k、ペダル140pの操作から取得されるノートオン/オフデータ、ペダルオン/オフデータなどに基づいて、後述する歌詞進行制御方法に基づいて歌詞進行の有無を判定し、出力すべき歌詞に対応する歌声データ215を取得してもよい。そして、処理部306は、押鍵によって指定された音高データ又は取得した歌声データ215の音高データと、取得した歌声データ215の文字データと、に対応する音素、品詞、単語等を表現する言語特徴量系列316を解析し、歌声制御部307に出力してもよい。
【0063】
歌声データは、歌詞(の文字)と、音節のタイプ(開始音節、中間音節、終了音節など)と、歌詞インデックスと、対応する声高(正解の声高)と、対応する発音期間(例えば、発音開始タイミング、発音終了タイミング、発音の長さ(duration))と、の少なくとも1つを含む情報であってもよい。
【0064】
例えば、
図4の例では、歌声データ215は、第n(n=1、2、3、4、…)音符に対応する第n歌詞の歌声データと、第n音符が再生されるべき規定のタイミング(第n歌声再生位置)と、の情報を含んでもよい。第n歌詞の歌声データは、第n歌詞データと呼ばれてもよい。第n歌詞データは、第n歌詞に含まれる文字のデータ(第n歌詞データの文字データ)、第n歌詞に対応する音高データ(第n歌詞データの音高データ)、第n歌詞に対応する音の長さなどの情報を含んでもよい。
【0065】
歌声データ215は、当該歌詞に対応する伴奏(ソングデータ)を演奏するための情報(特定の音声ファイルフォーマットのデータ、MIDIデータなど)を含んでもよい。歌声データがSMFフォーマットで示される場合、歌声データ215は、歌声に関するデータが格納されるトラックチャンクと、伴奏に関するデータが格納されるトラックチャンクと、を含んでもよい。歌声データ215は、ROM202からRAM203に読み込まれてもよい。歌声データ215は、メモリ(例えば、ROM202、RAM203)に演奏前から記憶されている。
【0066】
なお、電子楽器10は、歌声データ215によって示されるイベント(例えば、歌詞の発声タイミングと音高を指示するメタイベント(タイミング情報)、ノートオン又はノートオフを指示するMIDIイベント、又は拍子を指示するメタイベントなど)に基づいて、自動伴奏の進行などを制御してもよい。
【0067】
歌声制御部307は、処理部306から入力される言語特徴量系列316と、学習結果315として設定された音響モデルと、に基づいて、それに対応する音響特徴量系列317を推定し、推定された音響特徴量系列317に対応するフォルマント情報318を、歌声合成部309に対して出力する。
【0068】
例えば、HMM音響モデルが採用される場合、歌声制御部307は、言語特徴量系列316によって得られるコンテキスト毎に決定木を参照してHMMを連結し、連結した各HMMから出力確率が最大となる音響特徴量系列317(フォルマント情報318と声帯音源データ319)を予測する。
【0069】
DNN音響モデルが採用される場合、歌声制御部307は、フレーム単位で入力される、言語特徴量系列316の音素列に対して、上記フレーム単位で音響特徴量系列317を出力してもよい。
【0070】
図4では、処理部306は、メモリ(ROM202でもよいし、RAM203でもよい)から、押鍵された音の音高に対応する楽器音データ(ピッチ情報)を取得し、音源308に出力する。
【0071】
音源308は、処理部306から入力されるノートオン/オフデータに基づいて、発音すべき(ノートオンの)音に対応する楽器音データ(ピッチ情報)の音源信号(楽器音波形データと呼ばれてもよい)を生成し、歌声合成部309に出力する。音源308は、発音する音のエンベロープ制御等の制御処理を実行してもよい。
【0072】
歌声合成部309は、歌声制御部307から順次入力されるフォルマント情報318の系列に基づいて声道をモデル化するデジタルフィルタを形成する。また、歌声合成部309は、音源308から入力される音源信号を励振源信号として、当該デジタルフィルタを適用して、デジタル信号の歌声波形データ217を生成し出力する。この場合、歌声合成部309は、合成フィルタ部と呼ばれてもよい。
【0073】
なお、歌声合成部309には、ケプストラム音声合成方式、LSP音声合成方式をはじめとした様々な音声合成方式が採用可能であってもよい。
【0074】
ミュート部310は、歌声合成部309から出力された歌声波形データ217に対してミュート処理を適用してもよい。例えば、ミュート部310は、ノートオン信号が入力される(つまり押鍵がある)場合には当該ミュート処理を適用せず、ノートオン信号が入力されない(つまり全鍵が離鍵されている)場合には当該ミュート処理を適用してもよい。当該ミュート処理は、波形の音量を0又は弱音化(非常に小さく)する処理であってもよい。
【0075】
図4の例では、出力される歌声波形データ217は、楽器音を音源信号としているため、歌手の歌声に比べて忠実性は若干失われるが、当該楽器音の雰囲気と歌手の歌声の声質との両方が良く残った歌声となり、効果的な歌声波形データ217を出力させることができる。
【0076】
なお、音源308は、楽器音波形データの処理とともに、他のチャネルの出力をソング波形データ218として出力するように動作してもよい。これにより、伴奏音は通常の楽器音で発音させたり、メロディーラインの楽器音を発音させると同時にそのメロディーの歌声を発声させたりするというような動作も可能である。
【0077】
図5は、一実施形態にかかる波形データ出力部211の別の一例を示す図である。
図4と重複する内容については、繰り返し説明しない。
【0078】
図5の歌声制御部307は、上述したように、音響モデルに基づいて、音響特徴量系列317を推定する。そして、歌声制御部307は、推定された音響特徴量系列317に対応するフォルマント情報318と、推定された音響特徴量系列317に対応する声帯音源データ(ピッチ情報)319と、を、歌声合成部309に対して出力する。歌声制御部307は、音響特徴量系列317が生成される確率を最大にするような音響特徴量系列317の推定値を推定してもよい。
【0079】
歌声合成部309は、例えば、歌声制御部307から入力される声帯音源データ319に含まれる基本周波数(F0)及びパワー値で周期的に繰り返されるパルス列(有声音音素の場合)又は声帯音源データ319に含まれるパワー値を有するホワイトノイズ(無声音音素の場合)又はそれらが混合された信号に、フォルマント情報318の系列に基づいて声道をモデル化するデジタルフィルタを適用した信号を生成させるためのデータ(例えば、第n音符に対応する第n歌詞の歌声波形データと呼ばれてもよい)を生成し、音源308に出力してもよい。
【0080】
ミュート部310は、
図4でも示したように、歌声合成部309から出力された歌声波形データ217に対してミュート処理を適用してもよい。
【0081】
音源308は、処理部306から入力されるノートオン/オフデータに基づいて、発音すべき(ノートオンの)音に対応する上記第n歌詞の歌声波形データからデジタル信号の歌声波形データ217を生成し、出力する。
【0082】
図5の例では、出力される歌声波形データ217は、声帯音源データ319に基づいて音源308が生成した音を音源信号としているため、歌声制御部307によって完全にモデル化された信号であり、歌手の歌声に非常に忠実で自然な歌声の歌声波形データ217を出力させることができる。
【0083】
なお、
図4及び
図5のミュート部310は、歌声合成部309からの出力を入力される箇所に位置したが、ミュート部310の箇所はこれに限られない。例えば、ミュート部310は、音源308の出力に(又は音源308に含まれて)配置され、音源308から出力される楽器音波形データ又は歌声波形データをミュートしてもよい。
【0084】
このように、本開示の音声合成は、既存のボコーダー(人間が喋った言葉をマイクによって入力し、楽器音に置き換えて合成する手法)とは異なり、ユーザ(演奏者)が現実に歌わなくても(言い換えると、電子楽器10にユーザがリアルタイムに発音する音声信号を入力しなくても)、鍵盤の操作によって合成音声を出力することができる。
【0085】
以上説明したように、音声合成方式として統計的音声合成処理の技術を採用することにより、従来の素片合成方式に比較して格段に少ないメモリ容量を実現することが可能となる。例えば、素片合成方式の電子楽器では、音声素片データのために数百メガバイトに及ぶ記憶容量を有するメモリが必要であったが、本実施形態では、学習結果315のモデルパラメータを記憶させるために、わずか数メガバイトの記憶容量を有するメモリのみで済む。このため、より低価格の電子楽器を実現することが可能となり、高音質の歌声演奏システムをより広いユーザ層に利用してもらうことが可能となる。
【0086】
さらに、従来の素片データ方式では、素片データの人手による調整が必要なため、歌声演奏のためのデータの作成に膨大な時間(年単位)と労力を必要としていたが、本実施形態によるHMM音響モデル又はDNN音響モデルのための学習結果315のモデルパラメータの作成では、データの調整がほとんど必要ないため、数分の一の作成時間と労力で済む。これによっても、より低価格の電子楽器を実現することが可能となる。
【0087】
また、一般ユーザが、クラウドサービスとして利用可能なサーバコンピュータ300、音声合成LSI205などに内蔵された学習機能を使って、自分の声、家族の声、或いは有名人の声等を学習させ、それをモデル音声として電子楽器で歌声演奏させることも可能となる。この場合にも、従来よりも格段に自然で高音質な歌声演奏を、より低価格の電子楽器として実現することが可能となる。
【0088】
(歌詞進行制御方法)
本開示の一実施形態に係る歌詞進行制御方法について、以下で説明する。なお、本開示の歌詞進行制御は、演奏制御、演奏などと互いに読み替えられてもよい。
【0089】
以下の各フローチャートの動作主体(電子楽器10)は、CPU201、波形データ出力部211(又はその内部の音源LSI204、音声合成LSI205(処理部306、歌声制御部307、音源308、歌声合成部309、ミュート部310など))のいずれか又はこれらの組み合わせで読み替えられてもよい。例えば、CPU201が、ROM202からRAM203にロードされた制御処理プログラムを実行して、各動作が実施されてもよい。
【0090】
なお、以下に示すフローの開始にあたって、初期化処理が行われてもよい。当該初期化処理は、割り込み処理、歌詞の進行、自動伴奏などの基準時間となるTickTimeの導出、テンポ設定、ソングの選曲、ソングの読み込み、楽器音の選択、その他ボタン等に関連する処理などを含んでもよい。
【0091】
CPU201は、適宜のタイミングで、キースキャナ206からの割込みに基づいて、スイッチパネル140b、鍵盤140k及びペダル140pなどの操作を検出し、対応する処理を実施できる。
【0092】
なお、以下では歌詞の進行を制御する例を示すが進行制御の対象はこれに限られない。本開示に基づいて、例えば、歌詞の代わりに、任意の文字列、文章(例えば、ニュースの台本)などの進行が制御されてもよい。つまり、本開示の歌詞は、文字、文字列などと互いに読み替えられてもよい。
【0093】
本開示では、電子楽器10は、ユーザの演奏操作に関わらず歌声波形データ217(音声合成データ)を生成し、歌声波形データ217に応じた音の発音の許可/不許可を制御する。
【0094】
例えば、電子楽器10は、演奏開始の指示に応じて、ユーザによる押鍵を検出してもしなくても、歌声データ215(メモリに演奏開始前から記憶されていてもよいし、されていなくてもよい)に従って、歌声波形データ217(音声合成データ)をリアルタイムに生成する。
【0095】
電子楽器10は、リアルタイムに生成される歌声波形データ217(音声合成データ)に応じた音が、押鍵を検出していない間は発音されないように、ミュート処理を実行する(ユーザに歌声は聞こえない)。また、電子楽器10は、押鍵を検出した場合に、ミュート処理を解除する(ユーザに歌声が聞こえる)。電子楽器10は、ソング波形データ218に対してはミュート処理を実行しない(ユーザに歌声が聞こえない状態で伴奏が聞こえる)。
【0096】
電子楽器10は、ユーザ押鍵を検出すると、押鍵された鍵に対応する音高データで、歌声データ215(以下、単に歌声データと表記することもある)内の押鍵タイミングに対応する音高データを上書きする。これにより、上書きされた音高データに基づいて、歌声波形データ217(以下、単に歌声波形データと表記することもある)が生成されることになる。なお、電子楽器10は、歌声再生処理をミュート処理の有無に関わらず行ってもよい。
【0097】
以上、言い換えると、電子楽器10のプロセッサは、演奏操作子(鍵)へのユーザ操作(押鍵)が検出される場合及び検出されない場合の両方において、歌声データ215に従って歌声合成データ217を生成してもよい。また、電子楽器10のプロセッサは、前記演奏操作子へのユーザ操作が検出されている場合に、生成された前記歌声合成データに従う歌声の発音を許可し、前記演奏操作子へのユーザ操作が全く検出されない場合に、生成された前記歌声合成データに従う歌声の発音を許可しないように制御する。
【0098】
このような構成によれば、ユーザの押鍵操作をトリガとして、バックグラウンドで自動再生される合成音声の発音の有無を制御できるため、ユーザが発音させたい歌詞の箇所を容易に指定できる。
【0099】
また、電子楽器10のプロセッサは、前記演奏操作子へのユーザ操作が検出される場合及び検出されない場合の両方において、時間経過に応じて前記歌声データを変更する。このような構成によれば、バックグラウンドで再生される歌詞を適切に遷移させることができる。
【0100】
電子楽器10のプロセッサは、前記ユーザ操作が検出されている場合に、前記ユーザ操作に応じて指定された音高で、生成された前記歌声合成データに従う歌声の発音を指示してもよい。このような構成によれば、発音する合成音声の音高を容易に変更できる。
【0101】
電子楽器10のプロセッサは、前記ユーザ操作が全く検出されない場合に、生成された前記歌声合成データに従う歌声の発音のミュートを指示してもよい。このような構成によれば、必要ないときに合成音声を聞こえないようにすることができるとともに、必要になった場合の発音の切り替えを高速に行うことができる。
【0102】
図6は、一実施形態に係る歌詞進行制御方法のフローチャートの一例を示す図である。
【0103】
まず、電子楽器10は、ソングデータ及び歌声データを読み込む(ステップS101)。当該歌声データ(
図4、
図5の歌声データ215)は、ソングデータに対応した歌声データであってもよい。
【0104】
電子楽器10は、例えばユーザの操作に応じて歌詞に対応するソングデータの発音(言い換えると、伴奏の再生)を開始する(ステップS102)。ユーザは、当該伴奏に合わせて押鍵操作を行うことができる。
【0105】
電子楽器10は、歌詞発音タイミングtのカウントアップを開始する(ステップS103)。電子楽器10は、このtを、例えば、拍、ティック、秒などの少なくとも1つの単位で扱ってもよい。歌詞発音タイミングtは、タイマ210によってカウントされてもよい。
【0106】
電子楽器10は、次に発音する歌詞の位置を示す歌詞インデックス(「n」とも表す)に1を代入する(ステップS104)。なお、歌詞を途中から始める(例えば、前回の記憶位置から始める)場合には、nには1以外の値が代入されてもよい。
【0107】
歌詞インデックスは、歌詞全体を文字列とみなしたときの、先頭から何音節目(又は何文字目)の音節(又は文字)に対応するかを示す変数であってもよい。例えば、歌詞インデックスnは、
図4、
図5などで示した第n歌声再生位置の歌声データ(第n歌詞データ)を示してもよい。
【0108】
なお、本開示において、1つの歌詞の位置(歌詞インデックス)に対応する歌詞は、1音節を構成する1又は複数の文字に該当してもよい。歌声データに含まれる音節は、母音のみ、子音のみ、子音+母音など、種々の音節を含んでもよい。
【0109】
また、電子楽器10は、ソングデータの発音開始(伴奏の最初)を基準とした、歌詞インデックスn(n=1、2、…、N)に対応する歌詞発音タイミングtnを記憶している。ここで、Nは最後の歌詞に該当する。歌詞発音タイミングtnは、第n歌声再生位置の望ましいタイミングを示してもよい。
【0110】
電子楽器10は、歌詞発音タイミングtが第nタイミングになったか(言い換えると、t=tnか)を判定する(ステップS105)。t=tnである場合(ステップS105-Yes)、電子楽器10は、押鍵がある(ノートオンイベントが発生している)か否かを判断する(ステップS106)。
【0111】
押鍵がある場合(ステップS106-Yes)、電子楽器10は、押鍵された鍵に対応する音高データで、第n歌詞データの音高データ(読み込んだ歌声データの音高データ)を上書きする(ステップS107)。
【0112】
電子楽器10は、ステップS107で上書きされた音高データと、第n歌詞データ(のうち第n歌詞の文字)と、に基づく歌声波形データを生成する(ステップS108)。電子楽器10は、ステップS108によって生成された歌声波形データに基づく発音処理を行う(ステップS109)。この発音処理は、後述のステップS112などによってミュート処理が実施されない限り、第n歌詞データの持続時間(duration)だけ発音する処理であってもよい。
【0113】
ステップS109において、
図4に基づいて合成音声が生成されてもよい。電子楽器10は、例えば、歌声制御部307より、n番目の歌声データの音響特徴量データ(フォルマント情報)を取得し、音源308に、押鍵に応じた音高の楽器音の発音(楽器音波形データの生成)を指示し、歌声合成部309に、音源308から出力される楽器音波形データに対し、n番目の歌声データのフォルマント情報の付与を指示してもよい。
【0114】
ステップS109において、電子楽器10は、例えば、処理部306が、指定された音高データ(押鍵された鍵に対応する音高データ)及びn番目の歌声データ(第n歌詞データ)を、歌声制御部307に入力し、歌声制御部307は、入力に基づいて音響特徴量系列317を推定し、対応するフォルマント情報318と声帯音源データ(ピッチ情報)319と、を、歌声合成部309に対して出力し、歌声合成部309は、入力されたフォルマント情報318と声帯音源データ(ピッチ情報)319とに基づいて、n番目の歌声波形データ(第n音符に対応する第n歌詞の歌声波形データと呼ばれてもよい)を生成し、音源308に出力する。そうして、音源308は、n番目の歌声波形データを、歌声合成部309から取得して当該データに対して発音処理を行う。
【0115】
ステップS109において、
図5に基づいて合成音声が生成されてもよい。電子楽器10の処理部307は、指定された音高データ(押鍵された鍵に対応する音高データ)及びn番目の歌声データ(第n歌詞データ)を、歌声制御部306に入力する。そして、電子楽器10の歌声制御部306は、入力に基づいて音響特徴量系列317を推定し、対応するフォルマント情報318と声帯音源データ(ピッチ情報)319と、を、歌声合成部309に対して出力する。
【0116】
また、歌声合成部309は、入力されたフォルマント情報318と声帯音源データ(ピッチ情報)319とに基づいて、n番目の歌声波形データ(第n音符に対応する第n歌詞の歌声波形データと呼ばれてもよい)を生成し、音源308に出力する。そうして、音源308は、n番目の歌声波形データを、歌声合成部309から取得する。電子楽器10は、取得されたn番目の歌声波形データに対して、音源308による発音処理を行う。
【0117】
なお、フローチャート内の他の発音処理も同様に行われてもよい。
【0118】
ステップS109の後、電子楽器10は、nを1インクリメントする(nにn+1を代入する)(ステップS110)。
【0119】
電子楽器10は、全鍵が離鍵されているか否かを判断する(ステップS111)。全鍵が離鍵されている場合(ステップS111-Yes)、電子楽器10は、歌声波形データに応じた発音のミュート処理を行う(ステップS112)。当該ミュート処理は、上述のミュート部310によって実施されてもよい。
【0120】
ステップS112又はステップS111-Noの後、電子楽器10は、ステップS102で再生開始されたソングデータの再生が終了したか否かを判断する(ステップS113)。終了した場合(ステップS113-Yes)、電子楽器10は当該フローチャートの処理を終了し、待機状態に戻ってもよい。そうでない場合(ステップS113-No)、ステップS105に戻る。
【0121】
なお、ステップS105-Yesの後に押鍵がない場合(ステップS106-No)、電子楽器10は、第n歌詞データの音高データ(上書きされていない音高データ)と、第n歌詞データの文字データと、に基づく歌声波形データを生成する(ステップS114)。電子楽器10は、ステップS114によって生成された歌声波形データに基づく発音のミュート処理を行い(ステップS115)、ステップS110に進む。
【0122】
なお、t<tnである場合(ステップS105-No)、電子楽器10は、発音中の押鍵がある(例えば、ステップS109に基づいて発音されている音があって、かつ任意の鍵の押鍵がある)か否かを判断する(ステップS116)。発音中の押鍵がある場合(ステップS116-Yes)、電子楽器10は、発音中の音のピッチ変更を行い(ステップS117)、ステップS105に戻る。
【0123】
ピッチ変更は、例えば、ステップS107-S109で説明したのと同様に、当該押鍵された鍵に対応する音高データと、発音中の歌詞(第n-1歌詞データの文字データ)と、に基づく歌声波形データを生成し、発音処理することによって行われてもよい。発音中の押鍵がない場合(ステップS116-No)、ステップS105に戻る。
【0124】
なお、ステップS116は、発音中の押鍵であるか否かに関わらず、単に押鍵があるか否かの判断であってもよい。この場合、ステップS117は、ステップS112、S115などのミュート処理の解除(言い換えると、ミュートされた音について、押鍵された音での発音処理)であってもよい。
【0125】
また、ステップS106、S116などの押鍵が、複数鍵の同時押鍵(和音の押鍵)であった場合、ステップS107-S109、S117などによって、それぞれの音高に応じたハーモニーの歌声(ポリフォニック)が発音されてもよい。
【0126】
本フローチャートでは、ステップS112、S115などで消音処理ではなくミュート処理を適用したことによって、音は発音されない場合であってもバックグラウンドで再生されているため、発音させたい場合には迅速な発音が可能である。
【0127】
図7は、一実施形態に係る歌詞進行制御方法を用いて制御された歌詞進行の一例を示す図である。本例では、図示する楽譜に対応する演奏の一例について説明する。歌詞インデックス1-6に、それぞれ「Sle」、「ep」、「in」、「heav」、「en」及び「ly」が対応すると仮定する。
【0128】
本例では、電子楽器10は、歌詞インデックス1に対応するタイミングt1において、ユーザによる押鍵があると判断した(
図7のステップS105-Yes及びステップS106-Yes)。この場合、電子楽器10は、押鍵された鍵に対応する音高データで、歌詞インデックス1に対応する音高データを上書きし、歌詞「Sle」を発音する(ステップS107-S109)。この際電子楽器10は、ミュート処理は適用しない。
【0129】
電子楽器10は、歌詞インデックス2、3に対応するタイミングt2、t3においては、ユーザによる押鍵がないと判断した。この場合、電子楽器10は、歌詞インデックス2、3に対応する歌詞「ep」、「in」の歌声波形データを生成し、ミュート処理を行う(ステップS114-S115)。このため、歌詞「ep」、「in」の歌声はユーザには聞こえないが、伴奏は聞こえる。
【0130】
また、電子楽器10は、歌詞インデックス4に対応するタイミングt4において、ユーザによる押鍵があると判断した。この場合、電子楽器10は、押鍵された鍵に対応する音高データで、歌詞インデックス4に対応する音高データを上書きし、歌詞「heav」を発音する。この際電子楽器10は、ミュート処理は適用しない。
【0131】
電子楽器10は、歌詞インデックス5、6に対応するタイミングt5、t6においては、ユーザによる押鍵がないと判断した。この場合、電子楽器10は、歌詞インデックス5、6に対応する歌詞「en」、「ly」の歌声波形データを生成し、ミュート処理を行う。このため、歌詞「en」、「ly」の歌声はユーザには聞こえないが、伴奏は聞こえる。
【0132】
つまり、本開示の一態様にかかる歌詞進行制御方法によれば、ユーザによる演奏の仕方によっては、歌詞の一部が発音されない場合がある(
図7の例では、「Sle」と「heav」の間の「epin」が発音されないことがある)。
【0133】
通常の自動演奏がユーザの押鍵がなくても歌詞を自動演奏する(上記の
図7の例では「Sleep in heavenly」が全て発音され、また、音高は変更できない)のに対して、上記歌詞進行制御方法によれば、押鍵したときだけ歌詞を自動演奏することができる(また、音高も変更できる)。
【0134】
また、既存の押鍵のたびに歌詞が進行する(
図7の例に適用すると、押鍵のたびに歌詞インデックスがインクリメントされ発音される)技術では、押鍵し過ぎにより歌詞の位置が超過したり、押鍵が不足して歌詞の位置が想定より進まなかったりした場合に、歌詞の位置を適切に移動させるための同期処理(歌詞の位置を伴奏の再生位置と合わせる処理)が必要となる。一方で、上記歌詞進行制御方法によれば、このような同期処理は不要であり、電子楽器10の処理負荷の増大が好適に抑制される。
【0135】
(変形例)
図4、
図5などで示した音声合成処理のオン/オフは、ユーザのスイッチパネル140bの操作に基づいて切り替えられてもよい。オフの場合、波形データ出力部211は、押鍵に対応する音高の楽器音データの音源信号を生成して、出力するように制御してもよい。
【0136】
図6のフローチャートにおいて、一部のステップが省略されてもよい。判定処理が省略された場合、当該判定についてはフローチャートにおいて常にYes又は常にNoのルートに進むと解釈されてもよい。
【0137】
電子楽器10は、ディスプレイ150dに歌詞を表示させる制御を行ってもよい。例えば、現在の歌詞の位置(歌詞インデックス)付近の歌詞が表示されてもよいし、発音中の音に対応する歌詞、発音した音に対応する歌詞などを、現在の歌詞の位置が識別できるように着色等して表示してもよい。
【0138】
電子楽器10は、外部装置に対して、歌声データ、現在の歌詞の位置に関する情報などの少なくとも1つを送信してもよい。外部装置は、受信した歌声データ、現在の歌詞の位置に関する情報などに基づいて、自身の有するディスプレイに歌詞を表示させる制御を行ってもよい。
【0139】
上述の例では、電子楽器10がキーボードのような鍵盤楽器である例を示したが、これに限られない。電子楽器10は、ユーザの操作によって発音のタイミングを指定できる構成を有する機器であればよく、エレクトリックヴァイオリン、エレキギター、ドラム、ラッパなどであってもよい。
【0140】
このため、本開示の「鍵」は、弦、バルブ、その他の音高指定用の演奏操作子、任意の演奏操作子などで読み替えられてもよい。本開示の「押鍵」は、打鍵、ピッキング、演奏、操作子の操作などで読み替えられてもよい。本開示の「離鍵」は、弦の停止、演奏停止、操作子の停止(非操作)などで読み替えられてもよい。
【0141】
なお、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的に結合した1つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線又は無線によって接続し、これら複数の装置により実現されてもよい。
【0142】
なお、本開示において説明した用語及び/又は本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
【0143】
本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。また、本開示においてパラメータなどに使用する名称は、いかなる点においても限定的なものではない。
【0144】
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0145】
情報、信号などは、複数のネットワークノードを介して入出力されてもよい。入出力された情報、信号などは、特定の場所(例えば、メモリ)に保存されてもよいし、テーブルを用いて管理してもよい。入出力される情報、信号などは、上書き、更新又は追記をされ得る。出力された情報、信号などは、削除されてもよい。入力された情報、信号などは、他の装置へ送信されてもよい。
【0146】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0147】
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【0148】
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0149】
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0150】
本開示において使用する「第1の」、「第2の」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定しない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本開示において使用され得る。したがって、第1及び第2の要素の参照は、2つの要素のみが採用され得ること又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
【0151】
本開示において、「含む(include)」、「含んでいる(including)」及びこれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
【0152】
本開示において、例えば、英語でのa, an及びtheのように、翻訳によって冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【0153】
以上の実施形態に関して、以下の付記を開示する。
(付記1)
演奏操作子(例えば、鍵)と、
プロセッサ(例えば、CPU201)と、を備え、前記プロセッサは、
前記演奏操作子へのユーザ操作を検出すべきタイミング(歌詞インデックスn(n=1、2、…、N)に対応する歌詞発音タイミングtn)に、前記ユーザ操作の検出の有無に関わらず(言い換えると、前記演奏操作子へのユーザ操作が検出される場合及び検出されない場合の両方において)、歌声データに従って歌声合成データを生成し、
前記タイミングに前記ユーザ操作(例えば、押鍵)を検出した場合に、生成された前記歌声合成データに従う歌声の発音を許可し、
前記タイミングに前記ユーザ操作を検出しない場合に、生成された前記歌声合成データに従う歌声の発音を許可しない(ミュートする)ように制御する、
電子楽器。
【0154】
(付記2)
前記歌詞データは、前記ユーザ操作を検出すべきタイミングに対応する音高データを含み、
前記プロセッサは、
前記タイミングに前記ユーザ操作を検出した場合に、前記ユーザ操作に応じて指定された音高に従って前記歌声合成データを生成し、
前記タイミングに前記ユーザ操作を検出しない場合に、前記歌詞データに含まれる前記音高データが示す音高に従って前記歌声合成データを生成する、
付記1に記載の電子楽器。
【0155】
(付記3)
前記歌詞データは、第1ユーザ操作を検出すべき第1タイミングに対応する第1文字データと、第2ユーザ操作を検出すべき前記第1タイミングの次の第2タイミングに対応する第2文字データと、第3ユーザ操作を検出すべき前記第2タイミングの次の第3タイミングに対応する第3文字データと、を含み、
前記プロセッサは、
前記第1タイミングに対応する前記第1ユーザ操作の検出に基づいて、前記第1文字データに応じた歌声の発音を指示し、
前記第1タイミングの経過後前記第3タイミングの到来前に前記第2ユーザ操作を検出せずに、前記第3タイミングに対応する前記第3ユーザ操作を検出した場合に、前記第2文字データに応じた歌声の発音を指示せずに、前記第3文字データに応じた歌声の発音を指示する、
付記1又は付記2に記載の電子楽器。
【0156】
(付記4)
前記プロセッサは、
前記タイミングに前記ユーザ操作を検出しない場合に、生成された前記歌声合成データに従う歌声の発音のミュートを指示する、
付記1から付記3のいずれかに記載の電子楽器。
【0157】
(付記5)
前記プロセッサは、
ソングデータに応じた伴奏の発音を指示し、
前記タイミングに前記ユーザ操作を検出しない場合に、生成された前記歌声合成データに従う歌声の発音を許可しない一方、前記伴奏の発音は継続させる、
付記1から付記4のいずれかに記載の電子楽器。
【0158】
(付記6)
或る歌手の歌声の音響特徴量を学習した学習済みモデルを記憶しているメモリを備え、
前記プロセッサは、
前記ユーザ操作に応じた前記歌詞データの前記学習済みモデルへの入力に応じて、前記学習済みモデルが出力する音響特徴量データに従って、前記歌声合成データを生成する、
付記1から付記5のいずれかに記載の電子楽器。
【0159】
(付記7)
演奏操作子と、
プロセッサと、を備え、前記プロセッサは、
前記演奏操作子への第1ユーザ操作を検出すべき第1タイミングに対応する第1文字データと、前記演奏操作子への第2ユーザ操作を検出すべき前記第1タイミングの次の第2タイミングに対応する第2文字データと、前記演奏操作子への第3ユーザ操作を検出すべき前記第2タイミングの次の第3タイミングに対応する第3文字データと、を含む歌詞データにおける前記第1タイミングに対応する前記第1ユーザ操作の検出に基づいて、前記第1文字データに応じた歌声の発音を指示し、
前記第1タイミングの経過後前記第3タイミングの到来前に前記第2ユーザ操作を検出せずに、前記第3タイミングに対応する前記第3ユーザ操作を検出した場合に、前記第2文字データに応じた歌声の発音を指示せずに、前記第3文字データに応じた歌声の発音を指示する、
電子楽器。
【0160】
(付記8)
電子楽器のコンピュータに、
演奏操作子へのユーザ操作を検出すべきタイミングに、前記ユーザ操作の検出の有無に関わらず、前記タイミングに応じた歌詞データに従って歌声合成データを生成させ、
前記タイミングに前記ユーザ操作を検出した場合に、生成された前記歌声合成データに従う歌声の発音を許可させ、
前記タイミングに前記ユーザ操作を検出しない場合に、生成された前記歌声合成データに従う歌声の発音を許可しないように制御させる、
方法。
【0161】
(付記9)
電子楽器のコンピュータに、
演奏操作子へのユーザ操作を検出すべきタイミングに、前記ユーザ操作の検出の有無に関わらず、前記タイミングに応じた歌詞データに従って歌声合成データを生成させ、
前記タイミングに前記ユーザ操作を検出した場合に、生成された前記歌声合成データに従う歌声の発音を許可させ、
前記タイミングに前記ユーザ操作を検出しない場合に、生成された前記歌声合成データに従う歌声の発音を許可しないように制御させる、
プログラム。
【0162】
以上、本開示に係る発明について詳細に説明したが、当業者にとっては、本開示に係る発明が本開示中に説明した実施形態に限定されないということは明らかである。本開示に係る発明は、特許請求の範囲の記載に基づいて定まる発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とし、本開示に係る発明に対して何ら制限的な意味をもたらさない。