JP5098932B2 - Lyric data display device, lyrics data display method, and lyrics data display program - Google Patents

Lyric data display device, lyrics data display method, and lyrics data display program Download PDF

Info

Publication number
JP5098932B2
JP5098932B2 JP2008252844A JP2008252844A JP5098932B2 JP 5098932 B2 JP5098932 B2 JP 5098932B2 JP 2008252844 A JP2008252844 A JP 2008252844A JP 2008252844 A JP2008252844 A JP 2008252844A JP 5098932 B2 JP5098932 B2 JP 5098932B2
Authority
JP
Japan
Prior art keywords
mora
data
phoneme
section
singing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008252844A
Other languages
Japanese (ja)
Other versions
JP2010085581A (en
Inventor
正明 牧野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JVCKenwood Corp
Original Assignee
JVCKenwood Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JVCKenwood Corp filed Critical JVCKenwood Corp
Priority to JP2008252844A priority Critical patent/JP5098932B2/en
Publication of JP2010085581A publication Critical patent/JP2010085581A/en
Application granted granted Critical
Publication of JP5098932B2 publication Critical patent/JP5098932B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)

Description

本発明は、音楽コンテンツが記録された記録メディアを再生し、再生に合わせて適切なタイミングで歌詞を表示する歌詞データ表示装置、歌詞データ表示方法、歌詞データ表示プログラムに関する。   The present invention relates to a lyric data display device, a lyric data display method, and a lyric data display program for reproducing a recording medium on which music content is recorded and displaying lyrics at an appropriate timing in accordance with the reproduction.

近年、インターネットを介したサービスの普及により、楽曲データの歌詞を、検索エンジンなどを用いて取得することができるようになった。しかし、取得できる歌詞の多くは、楽曲データの再生時間に対応する歌詞表示のタイミング(同期)情報が与えられていないことがほとんどである。そのため、楽曲データを再生しながら、歌に合わせて適切な歌詞を表示するためには、事前にタイミングデータを作成する必要がある。このタイミングデータを手動で入力する場合、非常に煩雑な作業を行わなければならない。この問題を解決するために、タイミングデータを自動で作成する手法が提案されている。例えば、特許文献1の手法では、まず、バンドパスフィルタによって、音響信号からボーカル音声を取り出し、取り出したボーカル音声を、音声認識によってコード化する。次に、コード化されたボーカル音声を基に、一致する歌詞のフレーズを検索して、見つかったフレーズを表示する。
特開2002−169578号公報
In recent years, with the spread of services via the Internet, it has become possible to acquire the lyrics of music data using a search engine or the like. However, most of the lyrics that can be acquired are not provided with the timing (synchronization) information of the lyrics display corresponding to the reproduction time of the music data. Therefore, in order to display appropriate lyrics in accordance with the song while reproducing the music data, it is necessary to create timing data in advance. When inputting this timing data manually, a very complicated operation must be performed. In order to solve this problem, a method of automatically creating timing data has been proposed. For example, in the method of Patent Document 1, first, vocal sound is extracted from an acoustic signal by a bandpass filter, and the extracted vocal sound is encoded by speech recognition. Next, based on the coded vocal sound, the phrase of matching lyrics is searched and the found phrase is displayed.
JP 2002-169578 A

しかし、特許文献1による方法では、例えば、ピアノやギターなどの、ボーカル帯域にかかる楽器の楽音が楽曲データ中に存在すると、ボーカル音声だけを抽出することが困難になるため、楽器音の小さい楽曲データや、アカペラなど、限定された楽曲データでなければ、抽出の精度は低下し、ボーカル音声の抽出ができない、という問題がある。   However, in the method according to Patent Document 1, for example, if musical sounds of musical instruments in the vocal band such as piano and guitar are present in the musical composition data, it is difficult to extract only vocal voices. If it is not limited music data such as data or a cappella, there is a problem that the extraction accuracy is lowered and vocal voice cannot be extracted.

特に、ボーカル音声は、話速やアクセント、周波数帯域などが、通常の会話とは異なるため、音声認識エンジンで正しく処理を行うことが難しい。   In particular, since vocal speed, accent speed, frequency band, and the like are different from those of normal conversation, it is difficult for vocal voice to be processed correctly by a voice recognition engine.

そこで、本発明は、歌詞表示のためのタイミングデータが与えられていない楽曲データであっても、楽曲データの再生時間に合わせて、適切に歌詞を表示することができる歌詞データ表示装置、歌詞データ表示方法、歌詞データ表示プログラムを提供するものである。   Accordingly, the present invention provides a lyric data display device and lyric data that can appropriately display lyrics in accordance with the reproduction time of the music data, even if the music data is not provided with timing data for displaying the lyrics. A display method and a lyric data display program are provided.

そこで、上記課題を解決するために本発明は、以下の装置、方法、及びプログラムを提供する。
(1) 楽曲データにおける歌唱データの存在区間である歌唱区間毎に、前記歌唱区間の開始時間および終了時間である歌唱時間データを格納する歌唱時間データ格納部と、
前記歌唱区間毎に、テキストデータとして記述された前記楽曲データの歌詞データを格納する歌詞データ格納部と、
文字または単語をその意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を格納する音素辞書格納部と、
前記音素データから、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算するためのモーラ数計算ルールを格納するモーラ数計算ルール格納部と、
前記歌詞データ格納部から前記歌詞データを読み込み、前記音素辞書格納部を参照して、前記歌詞データを前記音素データに変換する音素データ変換部と、
前記モーラ数計算ルールを参照し、前記音素データ変換部によって作成された前記音素データを読み込み、前記歌唱区間の前記モーラの個数である区間モーラ数および前記歌唱区間の各行の前記モーラの個数である行モーラ数を計算するモーラ数計算部と、
前記歌唱時間データ格納部から前記歌唱時間データを読み込み、前記歌唱区間の時間長を計算すると共に、前記モーラ数計算部によって計算された前記区間モーラ数を、前記時間長で割ることによって求められる、前記歌唱区間毎のモーラ速度を計算するモーラ速度計算部と、
前記モーラ速度計算部によって計算された前記モーラ速度と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算する表示タイミング計算部と、
前記表示タイミング計算部によって計算された前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させる表示制御部と、
を有する歌詞データ表示装置。
(2) 楽曲データにおける歌唱データの存在区間である歌唱区間毎に、前記歌唱区間の開始時間および終了時間である歌唱時間データを格納する歌唱時間データ格納部と、
テキストデータとして記述された前記楽曲データの歌詞データを格納する歌詞データ格納部と、
文字または単語をその意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を格納する音素辞書格納部と、
前記音素データから、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算するためのモーラ数計算ルールを格納するモーラ数計算ルール格納部と、
前記歌詞データ格納部から前記歌詞データを読み込み、前記音素辞書格納部を参照して、前記歌詞データを前記音素データに変換する音素データ変換部と、
前記モーラ数計算ルールを参照し、前記音素データ変換部によって作成された前記音素データを読み込み、前記歌詞データ全体の前記モーラの個数である全モーラ数および前記歌詞データの各行毎の前記モーラの個数である行モーラ数を計算するモーラ数計算部と、
前記歌唱時間データ格納部から前記歌唱時間データを読み込み、前記各歌唱区間の時間長およびその合計値である合計時間長を計算し、前記モーラ数計算部によって計算された前記全モーラ数を、前記合計時間長で割ることによって求められる平均モーラ速度を計算すると共に、前記各歌唱区間の時間長を前記平均モーラ速度で割ることにより得られる各歌唱区間の推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データを行毎に前記各歌唱区間に対応させる歌唱区間分割部と、
前記歌唱区間分割部で得られた前記歌詞データと前記歌唱区間との対応情報と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌唱区間毎のモーラ数を計算すると共に、それを前記歌唱区間分割部で計算された前記歌唱区間の時間長で割ることによって求められる、前記歌唱区間毎のモーラ速度を計算するモーラ速度計算部と、
前記モーラ速度計算部によって計算された前記モーラ速度と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算する表示タイミング計算部と、
前記表示タイミング計算部によって計算された前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させる表示制御部と、
を有する歌詞データ表示装置。
(3) 上記(1)または(2)に記載の歌詞データ表示装置において、
さらに、
漢字とその読み方を示す平仮名とを一つ以上対応させて格納する漢字辞書格納部と、
前記歌詞データ格納部から取得した前記歌詞データ中の漢字を、前記漢字辞書格納部を参照して平仮名に変換する平仮名変換部と、を有し、
前記音素データ変換部は、
前記音素辞書格納部を参照して、前記平仮名変換部によって平仮名に変換された前記歌詞データを前記音素データに変換し、音素列を作成する、歌詞データ表示装置。
(4) 楽曲データにおける歌唱データの存在区間である歌唱区間に対応する、1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記歌唱区間のモーラの個数である区間モーラ数および前記歌唱区間の各行のモーラの個数である行モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
を有する歌詞データ表示方法。
(5) 1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記楽曲データ全体のモーラの個数である全モーラ数および前記歌詞データの各行のモーラの個数である行モーラ数を計算するステップと、
前記全モーラ数を、楽曲データにおける歌唱データの存在区間である各歌唱区間の時間長の合計値で除算して得られる平均モーラ速度を計算するステップと、
前記各歌唱区間の時間長を前記平均モーラ速度で除算して得られる各歌唱区間の推定モーラ数を計算するステップと、
前記推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データの各行と前記各歌唱区間との対応情報を作成するステップと、
前記対応情報と前記行モーラ数とに基づいて、前記各歌唱区間毎のモーラの個数である区間モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するモーラ速度計算ステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するタイミング計算ステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
を有する歌詞データ表示方法。
(6) 楽曲データにおける歌唱データの存在区間である歌唱区間に対応する、1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記歌唱区間のモーラの個数である区間モーラ数および前記歌唱区間の各行のモーラの個数である行モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
をコンピュータに実行させる歌詞データ表示プログラム。
(7) 1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記楽曲データ全体のモーラの個数である全モーラ数および前記歌詞データの各行のモーラの個数である行モーラ数を計算するステップと、
前記全モーラ数を、楽曲データにおける歌唱データの存在区間である各歌唱区間の時間長の合計値で除算して得られる平均モーラ速度を計算するステップと、
前記各歌唱区間の時間長を前記平均モーラ速度で除算して得られる各歌唱区間の推定モーラ数を計算するステップと、
前記推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データの各行と前記各歌唱区間との対応情報を作成するステップと、
前記対応情報と前記行モーラ数とに基づいて、前記各歌唱区間毎のモーラの個数である区間モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するモーラ速度計算ステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するタイミング計算ステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
をコンピュータに実行させる歌詞データ表示プログラム。
In order to solve the above problems, the present invention provides the following apparatus, method, and program.
(1) A singing time data storage unit that stores singing time data that is a start time and an ending time of the singing section for each singing section that is an existing section of singing data in the music data;
A lyric data storage unit for storing lyric data of the music data described as text data for each singing section;
A phoneme dictionary storage unit that stores a phoneme dictionary for converting characters or words into phoneme data, which is a minimum speech unit that works to distinguish the meaning of the character or word;
From the phoneme data, a mora number calculation rule storage unit that stores a mora number calculation rule for calculating the number of mora that is a segmental unit of a sound having a certain temporal length in pronunciation;
Reading the lyrics data from the lyrics data storage unit, referring to the phoneme dictionary storage unit, and converting the lyrics data into the phoneme data;
Read the phoneme data created by the phoneme data conversion unit with reference to the mora number calculation rule, and the number of mora in the singing section and the number of mora in each row of the singing section A mora number calculation unit for calculating the number of row mora;
The singing time data is read from the singing time data storage unit, the time length of the singing section is calculated, and the section mora number calculated by the mora number calculating unit is obtained by dividing by the time length. A mora speed calculator for calculating a mora speed for each singing section;
A display timing calculation unit for calculating a display timing for each line of the lyrics data based on the mora speed calculated by the mora speed calculation unit and the line mora number calculated by the mora number calculation unit;
Based on the display timing calculated by the display timing calculation unit, a display control unit for displaying the lyrics data in synchronization with the reproduction of the music data;
A lyric data display device.
(2) A singing time data storage unit that stores singing time data that is a start time and an ending time of the singing section for each singing section that is an existing section of singing data in the music data;
A lyrics data storage unit for storing lyrics data of the music data described as text data;
A phoneme dictionary storage unit that stores a phoneme dictionary for converting characters or words into phoneme data, which is a minimum speech unit that works to distinguish the meaning of the character or word;
From the phoneme data, a mora number calculation rule storage unit that stores a mora number calculation rule for calculating the number of mora that is a segmental unit of a sound having a certain temporal length in pronunciation;
Reading the lyrics data from the lyrics data storage unit, referring to the phoneme dictionary storage unit, and converting the lyrics data into the phoneme data conversion unit;
Read the phoneme data created by the phoneme data conversion unit with reference to the mora number calculation rule, and the total number of mora that is the number of mora of the entire lyrics data and the number of mora for each row of the lyrics data A mora number calculating unit for calculating the number of row mora,
The singing time data is read from the singing time data storage unit, the time length of each singing section and the total time length that is the total value thereof are calculated, and the total number of mora calculated by the mora number calculating unit is The average mora speed obtained by dividing by the total time length is calculated, and the estimated mora number of each singing section obtained by dividing the time length of each singing section by the average mora speed and the number of row mora Based on the singing section dividing unit for making the lyrics data correspond to each singing section for each line,
The number of mora for each singing section is calculated based on the correspondence information between the lyric data obtained by the singing section dividing unit and the singing section and the number of row mora calculated by the mora number calculating unit. And a mora speed calculation unit for calculating a mora speed for each singing section, which is obtained by dividing the time length of the singing section calculated by the singing section dividing unit,
A display timing calculation unit for calculating a display timing for each line of the lyrics data based on the mora speed calculated by the mora speed calculation unit and the line mora number calculated by the mora number calculation unit;
Based on the display timing calculated by the display timing calculation unit, a display control unit for displaying the lyrics data in synchronization with the reproduction of the music data;
A lyric data display device.
(3) In the lyrics data display device according to (1) or (2 ) above ,
further,
A kanji dictionary storage unit for storing one or more hiragana corresponding to kanji and how to read the kanji,
A hiragana conversion unit that converts kanji in the lyrics data acquired from the lyrics data storage unit into hiragana with reference to the kanji dictionary storage unit,
The phoneme data converter is
A lyric data display device that refers to the phoneme dictionary storage unit, converts the lyric data converted into hiragana by the hiragana conversion unit into the phoneme data, and creates a phoneme string.
(4) Read the lyrics data of the music data described as text data composed of one or more lines corresponding to the singing section, which is the existing section of the singing data in the music data, and the character or word of the word Creating a phoneme time-series data obtained by converting the lyric data into the phoneme data with reference to a phoneme dictionary for converting into phoneme data that is a minimum speech unit that functions to distinguish meaning;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the number of section mora that is the number of mora in the singing section and each row of the singing section Calculating the number of row mora which is the number of mora of
Calculating the mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
Calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
A method for displaying lyric data.
(5) Read the lyric data of music data described as text data composed of one or more lines, and convert the characters or words into phoneme data which is the smallest speech unit that works to distinguish the meaning of words Creating phoneme time-series data by referring to a phoneme dictionary for conversion and converting the lyrics data into the phoneme data;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the total number of mora that is the number of mora of the entire music data and the lyrics data Calculating the number of row mora, which is the number of mora in each row;
A step of calculating an average mora speed obtained by dividing the total number of mora by a total value of time lengths of each singing section which is an existing section of singing data in the music data;
Calculating an estimated number of mora for each song section obtained by dividing the time length of each song section by the average mora speed;
Creating correspondence information between each line of the lyrics data and each song section based on the estimated number of mora and the number of line mora;
Based on the correspondence information and the number of row mora, calculating a section mora number that is the number of mora for each singing section;
A mora speed calculating step for calculating a mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
A timing calculating step for calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
A method for displaying lyric data.
(6) Read the lyrics data of the music data described as text data composed of one or more lines corresponding to the singing section that is the existing section of the singing data in the music data, and the character or word of the word Creating a phoneme time-series data obtained by converting the lyric data into the phoneme data with reference to a phoneme dictionary for converting into phoneme data that is a minimum speech unit that functions to distinguish meaning;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the number of section mora that is the number of mora in the singing section and each row of the singing section Calculating the number of row mora which is the number of mora of
Calculating the mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
Calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
Lyrics data display program that makes a computer execute.
(7) Read the lyrics data of music data described as text data composed of one or more lines, and convert the characters or words into phoneme data that is the smallest speech unit that has the function of distinguishing the meaning of words. Creating phoneme time-series data by referring to a phoneme dictionary for conversion and converting the lyrics data into the phoneme data;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the total number of mora that is the number of mora of the entire music data and the lyrics data Calculating the number of row mora, which is the number of mora in each row;
A step of calculating an average mora speed obtained by dividing the total number of mora by a total value of time lengths of each singing section which is an existing section of singing data in the music data;
Calculating an estimated number of mora for each song section obtained by dividing the time length of each song section by the average mora speed;
Creating correspondence information between each line of the lyrics data and each song section based on the estimated number of mora and the number of line mora;
Based on the correspondence information and the number of row mora, calculating a section mora number that is the number of mora for each singing section;
A mora speed calculating step for calculating a mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
A timing calculating step for calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
Lyrics data display program that makes a computer execute.

本発明の歌詞データ表示装置によれば、楽曲データと歌詞の同期情報のない歌詞データに対して、歌詞行の表示開始のタイミング情報を与えることができ、ユーザが特別な作業を行わなくとも、再生される楽曲データに合わせて、適切な歌詞行を表示することができる。また、音素辞書を用意するだけで、あらゆる言語の楽曲データについて、簡単に対応することができる。また、音響信号の分析や音声認識などを行わないので、従来手法よりも高速に処理することが可能である。また、どのような楽器構成の楽曲データであっても、歌詞表示のタイミング情報を与えることができる。   According to the lyrics data display device of the present invention, it is possible to give the timing information of the display start of the lyrics line to the lyrics data without the synchronization information of the music data and the lyrics, without the user performing a special work, An appropriate lyrics line can be displayed in accordance with the music data to be reproduced. In addition, it is possible to easily deal with music data in any language simply by preparing a phoneme dictionary. In addition, since analysis of acoustic signals and speech recognition are not performed, processing can be performed at a higher speed than the conventional method. Moreover, the timing information for displaying the lyrics can be given for any musical composition data.

以下、本発明を実施するための最良の形態について、好ましい実施形態を示して説明する。   The best mode for carrying out the present invention will be described below with reference to preferred embodiments.

実施形態1.
本発明の実施形態に基づく実施形態1の歌詞データ表示装置1についての説明を行う。
Embodiment 1.
The lyric data display apparatus 1 of Embodiment 1 based on embodiment of this invention is demonstrated.

図1は、本発明の実施形態1に基づく歌詞データ表示装置1の構成例を示すブロック図である。   FIG. 1 is a block diagram showing a configuration example of a lyrics data display device 1 based on Embodiment 1 of the present invention.

図1において、歌詞データ表示装置1は、入力部10と、格納部20と、制御部30と、表示部40と、再生部50とで構成される。また、格納部20は、機能別に、楽曲データ格納部21と、歌唱時間データ格納部22と、歌詞データ格納部23と、音素辞書格納部24と、モーラ数計算ルール格納部25とを有し、制御部30は、音素データ変換部31と、モーラ数計算部32と、モーラ速度計算部33と、表示タイミング設定部34と、表示制御部35とを有する。   In FIG. 1, the lyrics data display device 1 includes an input unit 10, a storage unit 20, a control unit 30, a display unit 40, and a playback unit 50. The storage unit 20 has a music data storage unit 21, a singing time data storage unit 22, a lyrics data storage unit 23, a phoneme dictionary storage unit 24, and a mora number calculation rule storage unit 25 for each function. The control unit 30 includes a phoneme data conversion unit 31, a mora number calculation unit 32, a mora speed calculation unit 33, a display timing setting unit 34, and a display control unit 35.

入力部10は、歌詞データ表示装置に対して選択や決定動作を行うことのできる入力機器である。   The input unit 10 is an input device that can perform selection and determination operations on the lyrics data display device.

図2に入力部10の一例を示す。図2では、入力部10として、選択動作を行うための十字キー1000と、決定動作を行うための決定ボタン1001が示されている。   FIG. 2 shows an example of the input unit 10. In FIG. 2, as the input unit 10, a cross key 1000 for performing a selection operation and a determination button 1001 for performing a determination operation are shown.

格納部20は、ハードディスクやフラッシュメモリのような高速アクセスが可能な大容量記録媒体である。以降、格納部20を機能別に分けて説明する。   The storage unit 20 is a large-capacity recording medium that can be accessed at high speed, such as a hard disk or a flash memory. Hereinafter, the storage unit 20 will be described separately for each function.

楽曲データ格納部21は、楽曲データ本体であるデジタルデータと、各楽曲データのデジタルデータを一意に識別するための識別子である楽曲データIDとを格納する。楽曲データIDは、1、2、3といった数値でも良いし、URI(Uniform Resource Identifier)などを用いても良い。なお、楽曲データ格納部21は、本装置外に設けられていても勿論よい。   The music data storage unit 21 stores digital data that is the music data main body and music data ID that is an identifier for uniquely identifying the digital data of each music data. The music data ID may be a numerical value such as 1, 2, 3, or a URI (Uniform Resource Identifier). Of course, the music data storage unit 21 may be provided outside the apparatus.

歌唱時間データ格納部22は、楽曲データにおける歌唱データの存在区間である歌唱区間毎に、歌唱区間の開始時間および終了時間である歌唱時間データを格納するもので、楽曲データIDと、楽曲データIDによって対応付けられた楽曲データのボーカル音声である歌唱データの存在する一つ以上の区間(歌唱区間)の開始時間および終了時間の歌唱時間データを格納する。歌唱区間データは、歌唱区間の開始時間および終了時間を対にして格納される。   The singing time data storage unit 22 stores singing time data that is a start time and an ending time of a singing section for each singing section that is an existing section of singing data in the music data. The singing time data of the start time and the ending time of one or more sections (singing section) where the singing data which is the vocal sound of the music data associated with is present is stored. Singing section data is stored by pairing the start time and end time of the singing section.

図3に、歌唱時間データ格納部22に格納される歌唱時間データのフォーマットの一例を示す。図3の例では、楽曲データIDと、歌唱区間番号と、各歌唱区間の開始時間、終了時間とを格納している。楽曲データID「ID1」の歌唱区間は2つであり、歌唱区間番号1の開始時間は10秒、終了時間は30秒である。歌唱区間番号2の開始時間は、50秒、終了時間は1分20秒である。なお、歌唱時間データ格納部22には、ボーカル音声のある区間ではなく、前奏や間奏などのボーカル音声のない区間を格納してもよい。その場合、ボーカル音声のない区間以外の区間を、歌唱区間に変換する。   In FIG. 3, an example of the format of the singing time data stored in the singing time data storage part 22 is shown. In the example of FIG. 3, the music data ID, the singing section number, and the start time and end time of each singing section are stored. The song data ID “ID1” has two singing sections. The singing section number 1 has a start time of 10 seconds and an end time of 30 seconds. Singing section number 2 has a start time of 50 seconds and an end time of 1 minute 20 seconds. The singing time data storage unit 22 may store a section without vocal sound such as a prelude or an interlude instead of a section with vocal sound. In that case, sections other than the section without vocal voice are converted into singing sections.

歌詞データ格納部23は、歌唱区間毎に、テキストデータとして記述された前記楽曲データの歌詞データを格納するもので、楽曲データIDと、対応する楽曲データの歌唱区間毎の歌詞データとを格納する。   The lyric data storage unit 23 stores the lyric data of the music data described as text data for each singing section, and stores the tune data ID and the lyric data for each singing section of the corresponding music data. .

図4に、歌詞データ格納部23に格納された歌詞データの一例を示す。図4の例では、楽曲データIDと、その楽曲データを歌唱区間毎に分けた、改行区切り文字を含む歌詞のテキストデータを格納している。楽曲データID「ID1」の楽曲データの歌唱区間は2つあり、それぞれの歌唱区間毎に歌詞のテキストデータが格納されている。なお、日本語の歌詞データは、予め平仮名に直して格納する。   FIG. 4 shows an example of the lyrics data stored in the lyrics data storage unit 23. In the example of FIG. 4, the music data ID and the text data of the lyrics including the line feed delimiter, which is obtained by dividing the music data for each singing section, are stored. There are two song sections of the song data with the song data ID “ID1”, and lyrics text data is stored for each song section. Note that Japanese lyrics data is stored in advance in hiragana.

音素辞書格納部24は、文字または単語をその意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を格納する。音素とは、語の意味を区別する働きのある最小の音声単位である。日本語で例を示すと、「あき」は、「aki」という子音と母音の組み合わせで構成されるが、これらの/a/,/k/,/i/が音素である。/k/を/s/に変更すると、「あし」と発音され、語の意味が変化する。   The phoneme dictionary storage unit 24 stores a phoneme dictionary for converting a character or a word into phoneme data which is a minimum speech unit that has a function of distinguishing the meaning of the character or word. A phoneme is the smallest speech unit that works to distinguish the meaning of a word. As an example in Japanese, “Aki” is composed of a combination of consonant and vowel “aki”, and these / a /, / k /, / i / are phonemes. If you change / k / to / s /, it will be pronounced “ashi” and the meaning of the word will change.

図5に英語用の音素辞書の一例を示す。図5の例では、左側に英語の語、右側に、語に対応する音素を格納している。英語の場合は、語は単語であり、可能な限り多くの単語についての音素を格納する。日本語の場合は、単語の構成によって音素が変化することはないため、単語ではなく、平仮名の音素を格納する。   FIG. 5 shows an example of a phoneme dictionary for English. In the example of FIG. 5, English words are stored on the left side, and phonemes corresponding to the words are stored on the right side. In English, a word is a word and stores phonemes for as many words as possible. In the case of Japanese, the phoneme does not change depending on the word structure, so the phoneme of hiragana is stored instead of the word.

図6に、日本語用の音素辞書の一例を示す。図6の例では、“あいうえおか・・・”の50音順に、それぞれの音素をローマ字により示している。   FIG. 6 shows an example of a phoneme dictionary for Japanese. In the example of FIG. 6, each phoneme is shown in Roman letters in the order of 50 notes “Aiueoka ...”.

モーラ数計算ルール格納部25は、音素の列から発音上一定の時間的長さを有する音の分節単位であるモーラの個数、すなわちモーラ数を計算するためのモーラ数計算ルールを格納する。モーラとは、音韻論で用いられる単位であり、一定の時間的長さを有する音の分節単位である。例えば、「こたつ」は、一定の時間的長さを有する音が3音あるので、モーラ数は3である。「きゃたつ」は、3文字であるが、拗音「ゃ」は時間的長さを有してはいないため、モーラ数は「こたつ」と同様に3とカウントされる。モーラ数計算ルール格納部25に関しては、後述のモーラ数計算部32にて詳述する。以上が、格納部20の説明である。   The mora number calculation rule storage unit 25 stores a mora number calculation rule for calculating the number of mora, which is a segmental unit of a sound having a certain temporal length in pronunciation, that is, a mora number, from a phoneme string. A mora is a unit used in phonology, and is a segmental unit of sound having a certain length of time. For example, “Kotatsu” has three sounds having a certain length of time, so the number of mora is three. “Kyatsu” is 3 characters, but the roar “ya” does not have a time length, so the number of mora is counted as 3 as with “Kotatsu”. The mora number calculation rule storage unit 25 will be described in detail in the mora number calculation unit 32 described later. The above is the description of the storage unit 20.

制御部30は、不図示のCPUやメモリを備えており、メモリ上に展開された歌詞表示用プログラムをCPUが実行することにより、歌詞データ表示装置1全体を制御する。以降、制御部30を機能別に分けて説明する。   The control unit 30 includes a CPU and a memory (not shown), and controls the entire lyrics data display device 1 when the CPU executes a program for displaying lyrics displayed on the memory. Hereinafter, the control unit 30 will be described separately for each function.

音素データ変換部31は、指定された楽曲データに対応する歌詞データを読み込み、音素辞書格納部24を参照して、歌詞データを音素の並びである音素列である音素データに変換する。   The phoneme data conversion unit 31 reads the lyric data corresponding to the designated music data, refers to the phoneme dictionary storage unit 24, and converts the lyric data into phoneme data that is a phoneme sequence that is a sequence of phonemes.

音素データ変換部31の動作の流れを、図7を参照して説明する。   The operation flow of the phoneme data conversion unit 31 will be described with reference to FIG.

まず、楽曲データIDが入力されると、音素データ変換部31は、歌詞データ格納部23を参照し、楽曲データIDに対応する歌詞データを取得する(ステップS310)。次に、音素データ変換部31は、取得した歌詞データ中の未処理部分から、音素データに変換可能な語を取り出す(ステップS311)。例えば、日本語であれば平仮名1つ分で、英語であれば単語が、音素データに変換可能な語に当たる。次に、音素データ変換部31は、ステップS311で取り出した語を、音素辞書格納部24を参照して、音素データに変換する(ステップS312)。次に、音素データ変換部31は、歌詞を全て音素データに変換したかどうかの判断を行う(ステップS313)。もし、未処理の語が残っている場合は、ステップS311に戻り、処理を繰り返す。そうでなければ、音素データ変換部31は、処理を終了する。   First, when the music data ID is input, the phoneme data conversion unit 31 refers to the lyrics data storage unit 23 and acquires the lyrics data corresponding to the music data ID (step S310). Next, the phoneme data conversion unit 31 extracts words that can be converted into phoneme data from the unprocessed portion in the acquired lyrics data (step S311). For example, if it is Japanese, it corresponds to one hiragana, and if it is English, a word corresponds to a word that can be converted into phoneme data. Next, the phoneme data conversion unit 31 converts the word extracted in step S311 into phoneme data with reference to the phoneme dictionary storage unit 24 (step S312). Next, the phoneme data conversion unit 31 determines whether or not all lyrics have been converted into phoneme data (step S313). If unprocessed words remain, the process returns to step S311 to repeat the process. Otherwise, the phoneme data conversion unit 31 ends the process.

音素データ変換部31は、ステップS311において、改行区切りに相当する文字が取り出された場合は、そのまま改行区切りとして、音素列に出力する。   When a character corresponding to a line break is extracted in step S311, the phoneme data converter 31 outputs it as a line break to the phoneme string as it is.

ここで、「An apple a day keeps the doctor away」という英文を処理する具体例を説明する。この場合、音素データ変換部31は、まず、音素データに変換可能な最初の語であるanを取り出して、音素辞書格納部24を参照し、音素データに変換する。まだ、音素データに変換していない語が残っているため、また次の語(apple)を取り出して音素データに変換する。上記処理を繰り返し、全ての語を前記音素データに変換した音素列が、図8である。   Here, a specific example of processing the English sentence “An apple a day keeps the doctor away” will be described. In this case, the phoneme data conversion unit 31 first extracts an which is the first word that can be converted into phoneme data, refers to the phoneme dictionary storage unit 24, and converts it into phoneme data. Since there are still words that have not been converted to phoneme data, the next word (apple) is taken out and converted to phoneme data. FIG. 8 shows a phoneme string obtained by repeating the above process and converting all words into the phoneme data.

モーラ数計算部32は、音素データ変換部31によって作成された音素列のモーラ数を計算する。モーラ数の計算は、行単位で行う。行毎のモーラ数を、以降、行モーラ数と呼ぶ。音素ではなくモーラを用いる理由は、音素には、時間的な長さの情報を含まないためである。   The mora number calculation unit 32 calculates the mora number of the phoneme string created by the phoneme data conversion unit 31. The number of mora is calculated in units of lines. Hereinafter, the number of mora per line is referred to as the number of line mora. The reason for using mora instead of phonemes is that phonemes do not contain time length information.

モーラ数計算部32によるモーラ数計算の処理の流れを、図9のフローチャートを参照して説明する。   The flow of mora number calculation processing by the mora number calculation unit 32 will be described with reference to the flowchart of FIG.

まず、モーラ数計算部32は、音素列から、まだモーラ数を計算していない行を1行抜き出す(ステップS320)。   First, the mora number calculation unit 32 extracts one line from which the mora number has not yet been calculated from the phoneme string (step S320).

次に、モーラ数計算部32は、ステップS320で抜き出された音素列を母音記号(V)と子音記号(C)に変換し、VC列を作成する(ステップS321)。モーラ数計算部32は、内部に変換表を有し、音素が母音であるならば、その音素をVに変換し、音素が子音記号であるならば、その音素をCに変換する。この変換の際に、もし、母音が2重母音であるならば、2個のVに、3重母音であるならば、3個のVに変換する。また、半母音(日本語での「ぁぃぅぇぉゃゅょ」などの拗音)は、VにもCにも変換しない。また、促音(日本語での「っ」)や、撥音(日本語での「ん」)、及び長音(日本語での「ー」)は、Vに変換する。   Next, the mora number calculation unit 32 converts the phoneme string extracted in step S320 into a vowel symbol (V) and a consonant symbol (C), and creates a VC string (step S321). The mora number calculation unit 32 has a conversion table inside, and converts the phoneme to V if the phoneme is a vowel, and converts the phoneme to C if the phoneme is a consonant symbol. In this conversion, if the vowel is a double vowel, it is converted into two Vs, and if it is a triple vowel, it is converted into three Vs. Also, semi-vowels (sounds such as “Ai ぅ e ぅ yayu” in Japanese) are not converted to V or C. In addition, the prompt sound (“t” in Japanese), repellent sound (“n” in Japanese), and long sound (“−” in Japanese) are converted to V.

図10に、モーラ数計算部32が内部に有する変換表の一例を示す。図10では、左列に示した音素から、右列のVCへ変換するための表である。   In FIG. 10, an example of the conversion table which the mora number calculation part 32 has inside is shown. FIG. 10 is a table for converting phonemes shown in the left column to VCs in the right column.

図11は、音素列からVC列への変換例を示す。図11の(A)は、「An apple a day keeps the doctor away」の音素列とVC列とを表にしたものであり、図11の(B)は、「いろはにほへと ちりぬるを」の音素列とVC列とを表にしたものである。   FIG. 11 shows an example of conversion from a phoneme string to a VC string. (A) in FIG. 11 is a table showing the phoneme sequence and VC sequence of “An apple a day keeps the doctor away”, and (B) in FIG. 11 is a phoneme sequence of “Irohaniho Chiriru” And the VC column.

次に、モーラ数計算部32は、ステップS321で作成したVC列から、部分VC列を取り出す(ステップS322)。つまり、モーラ数計算部32は、読み込み位置pから最初に見つかるVまでを部分VC列として、元のVC列から取り出す。読み込み位置pの初期値は、VC列の先頭の文字であり、部分VC列を取り出した後、読み込み位置pを、発見したVの次の位置に設定する。もし、VがVC列の終端まで見つからなかった場合は、読み込み位置pからVC列の終端までを、部分VC列として取り出す。また、部分VC列を取り出す際、単語と単語の間にある空白文字は、無視して処理を行う。その理由は、英語のように、単語の終わりが子音である言語において、例えば、「an apple」を実際に発音する場合、anとappleとの間は、間をおかずに続けて発音する性質を有するからである。   Next, the mora number calculation unit 32 extracts a partial VC sequence from the VC sequence created in step S321 (step S322). In other words, the mora number calculation unit 32 extracts from the original VC sequence to the first found V from the reading position p as a partial VC sequence. The initial value of the reading position p is the first character of the VC string, and after the partial VC string is extracted, the reading position p is set to the position next to the found V. If V is not found up to the end of the VC column, the part from the reading position p to the end of the VC column is taken out as a partial VC column. Further, when extracting the partial VC string, the blank characters between the words are ignored. The reason for this is that, for example, in an English language where the end of a word is a consonant, when “an apple” is actually pronounced, between an and apple, It is because it has.

部分VC列を取り出す具体例を示すと、図11の(A)に示したVC列に対して処理を行う場合、読み込み位置pがVC列の先頭の文字であるとき、最初のVが1文字目に登場するので、取り出される部分VC列は「V」である。読み込み位置pが2文字目の場合、取り出される部分VC列は「CV」である。   As a specific example of extracting a partial VC string, when processing is performed on the VC string shown in FIG. 11A, when the reading position p is the first character of the VC string, the first V is one character. Since it appears in the eyes, the extracted partial VC string is “V”. When the reading position p is the second character, the extracted partial VC string is “CV”.

次に、モーラ数計算部32は、部分VC列から、モーラ数を取得し、合計モーラ数に加算する(ステップS323)。つまり、モーラ数計算部32は、モーラ数計算ルール格納部25を参照し、部分VC列と一致するモーラ数を取得し、合計モーラ数に加算する。つまり、音素列のn行目のVC列に対する合計モーラ数をMnとし、部分VC列から取得されたモーラ数をmとすると、新しい合計モーラ数は、Mn+mとなる。   Next, the mora number calculation unit 32 acquires the mora number from the partial VC sequence and adds it to the total mora number (step S323). That is, the mora number calculation unit 32 refers to the mora number calculation rule storage unit 25, acquires the number of mora that matches the partial VC sequence, and adds it to the total number of mora. That is, if the total number of mora for the nth VC column of the phoneme column is Mn and the number of mora acquired from the partial VC column is m, the new total mora number is Mn + m.

図12に、モーラ数計算ルール格納部25の一例を示す。モーラ数計算ルール格納部25に格納するルールを作成する場合、韻律的特徴を考慮して作成する。例えば、図12の例において、「C」及び「V」がそれぞれモーラ数1であるのに、2つを組み合わせた「CV」もモーラ数1であるのは、子音+母音を実際に発音すると、発音長さは「C」や「V」と同様の長さになる性質に基づいているためである。   FIG. 12 shows an example of the mora number calculation rule storage unit 25. When creating a rule to be stored in the mora number calculation rule storage unit 25, the rule is created in consideration of prosodic features. For example, in the example of FIG. 12, “CV” and “V” each have a mora number of 1, but the combination of two “CV” also has a mora number of 1 is that consonants + vowels are actually pronounced. This is because the pronunciation length is based on the property of having the same length as “C” and “V”.

次に、モーラ数計算部32は、VC列からの部分VC列の取り出しを、全て終えたかどうかの判断を行う(ステップS324)。まだ終えていない場合はステップS321に戻り、処理を繰り返し、そうでなければ、ステップS325に進む。   Next, the mora number calculation unit 32 determines whether or not all the extraction of the partial VC sequence from the VC sequence has been completed (step S324). If not completed yet, the process returns to step S321, and the process is repeated. If not, the process proceeds to step S325.

モーラ数計算部32は、ステップS324で、VC列からの部分VC列の取り出しを全て終えた場合、モーラ数を計算していない音素列の行がないかどうかを判断する(ステップS325)。もし、全ての音素列の処理が終了したのであれば、モーラ数計算部32は処理を終了する。そうでなければ、ステップS320に戻る。   When the extraction of the partial VC strings from the VC string is completed in step S324, the mora number calculation unit 32 determines whether there is any phoneme string row for which the mora number is not calculated (step S325). If the processing of all phoneme strings has been completed, the mora number calculation unit 32 ends the processing. Otherwise, the process returns to step S320.

図11(A)の例を、部分VC列に分割して、それぞれのモーラ数を示した表を図13に示す。図13に示したモーラ数を全て足すと16となり、この数値が行モーラ数である。以上がモーラ数計算部32の処理の説明である。   FIG. 13 shows a table in which the example of FIG. 11A is divided into partial VC columns and the respective mora numbers are shown. When all the mora numbers shown in FIG. 13 are added, it becomes 16, and this value is the number of row mora. The above is the description of the processing of the mora number calculation unit 32.

モーラ速度計算部33は、モーラ数計算部32によって算出された、行モーラ数を基に、歌唱区間毎のモーラ速度を計算する。   The mora speed calculator 33 calculates the mora speed for each singing section based on the number of row mora calculated by the mora number calculator 32.

モーラ速度計算部33の動作の流れを図14のフローチャートを参照して説明を行う。   The operation flow of the mora speed calculation unit 33 will be described with reference to the flowchart of FIG.

モーラ速度計算部33は、まず、歌詞データ格納部23を参照して、歌唱区間番号iに対応する歌詞の開始行番号と終了行番号を取得する(ステップS330)。   First, the mora speed calculation unit 33 refers to the lyrics data storage unit 23 and acquires the start line number and the end line number of the lyrics corresponding to the singing section number i (step S330).

次に、取得した開始行番号と終了行番号の区間のモーラ数の合計を、モーラ数計算部32によって算出された歌詞行毎に求められた行モーラ数から計算する(ステップS331)。ここで求められる、歌唱区間のモーラ数を、区間モーラ数と呼ぶ。   Next, the total number of mora in the section of the acquired start line number and end line number is calculated from the number of line mora obtained for each lyrics line calculated by the mora number calculation unit 32 (step S331). The number of mora in the singing section obtained here is called the section mora number.

次に、歌唱区間の時間長を取得する(ステップS332)。モーラ速度計算部33は、歌唱時間データ格納部22を参照して、歌唱区間iに対応する開始時間、終了時間を取得する。取得した開始時間をts、終了時間をteとおくと、時間長Tは、   Next, the time length of the singing section is acquired (step S332). The mora speed calculation unit 33 refers to the singing time data storage unit 22 and acquires a start time and an end time corresponding to the singing section i. If the acquired start time is ts and the end time is te, the time length T is

Figure 0005098932
で求められる。
Figure 0005098932
Is required.

次に、ステップS331で求めた区間モーラ数と、ステップS332で求めた歌唱区間の時間長とを基に、モーラ速度を計算する(ステップS333)。歌唱区間iの区間モーラ数をMi、歌唱区間iの時間長をTiとおくと、歌唱区間iのモーラ速度Viは、   Next, the mora speed is calculated based on the number of section mora obtained in step S331 and the time length of the singing section obtained in step S332 (step S333). If the number of section mora of the singing section i is Mi and the time length of the singing section i is Ti, the mora speed Vi of the singing section i is

Figure 0005098932
で求められる。
Figure 0005098932
Is required.

次に、全ての歌唱区間についてモーラ速度を計算したかどうかを判断する。全ての歌唱区間についてモーラ速度を計算した場合は、モーラ速度計算部33は処理を終了する。そうでなければ、歌唱区間iをi+1に変更し、ステップS330に戻って処理を続行する。   Next, it is determined whether or not the mora speed has been calculated for all singing sections. When the mora speed is calculated for all the singing sections, the mora speed calculation unit 33 ends the process. Otherwise, the singing section i is changed to i + 1, and the process returns to step S330 and continues.

ここで、図3と図4の例において、楽曲データIDがID1の曲について、歌唱区間1のモーラ速度を算出する具体例を示す。歌唱区間1の時間長T1は、終了時間が30秒、開始時間が10秒なので、30−10=20秒と求められる。歌唱区間1の区間モーラ数M1を28とすると、モーラ速度V1は、28/20を計算して、1.4と求められる。以上がモーラ速度計算部33の説明である。   Here, in the example of FIG. 3 and FIG. 4, the specific example which calculates the mora speed of the song section 1 about the music of music data ID ID1 is shown. Since the end time is 30 seconds and the start time is 10 seconds, the time length T1 of the singing section 1 is calculated as 30-10 = 20 seconds. Assuming that the section mora number M1 of the singing section 1 is 28, the mora speed V1 is calculated as 28/20 and is obtained as 1.4. The above is the description of the mora speed calculation unit 33.

表示タイミング設定部34は、モーラ速度計算部33によって求められた、歌唱区間毎のモーラ速度を基に、再生中における歌詞行毎の表示タイミングを設定する。歌唱区間iのモーラ速度をVi、歌唱区間i中の歌詞行nの行モーラ数をMnとすると、歌唱区間i開始時間tsからの歌詞行nのディレイ時間Dnは、   The display timing setting unit 34 sets the display timing for each lyric line during reproduction based on the mora speed for each singing section obtained by the mora speed calculation unit 33. Assuming that the mora speed of the song section i is Vi and the number of line mora of the song line i in the song section i is Mn, the delay time Dn of the song line i from the song section i start time ts is:

Figure 0005098932
で求めることができ、歌詞行nの表示開始時間Tnは、Tn=ts+Dnで求められる。
Figure 0005098932
The display start time Tn of the lyrics line n can be obtained by Tn = ts + Dn.

上述の処理を、全ての歌唱区間、及び全ての歌詞行について繰り返し、歌詞行の表示開始時間Tnを算出する。   The above-described processing is repeated for all singing sections and all lyric lines, and the lyric line display start time Tn is calculated.

前述のモーラ速度計算部33の例で用いたモーラ速度V1=1.4を基にして、表示開始時間を算出する具体例を示す。まず、図4に示した、楽曲データID「ID1」の歌唱区間1における1行目の歌詞行の表示開始時間は、歌唱区間1の開始時間と同値であるため、10秒である。次に、2行目の歌詞行について、歌詞行1の行モーラ数は16であるため、ディレイ時間D2は、   A specific example in which the display start time is calculated based on the mora speed V1 = 1.4 used in the above-described example of the mora speed calculation unit 33 will be described. First, the display start time of the first lyric line in the song section 1 of the song data ID “ID1” shown in FIG. 4 is equal to the start time of the song section 1, and is 10 seconds. Next, for the second lyric line, the number of line mora in the lyric line 1 is 16, so the delay time D2 is

D2=M1/V1+D1=16/1.4+0≒11.4
と求められ、歌詞行2の表示開始時間は、10+11.4=21.4秒と求められる。
D2 = M1 / V1 + D1 = 16 / 1.4 + 0≈11.4
The display start time of the lyrics line 2 is calculated as 10 + 11.4 = 21.4 seconds.

表示制御部35は、楽曲データの再生時間に合わせて、歌詞の表示を行う。表示制御部35は、表示制御部35は、再生中の楽曲データの再生位置を一定時間毎にチェックする。チェック時の楽曲データ再生位置を基に、前記表示タイミング設定部34で設定された歌詞の表示開始時間を参照し、次の歌詞の表示開始時間を超えた場合、歌詞の表示を行う。以上が制御部30の説明である。   The display control unit 35 displays lyrics according to the reproduction time of the music data. The display control unit 35 checks the reproduction position of the music data being reproduced at regular intervals. Based on the music data playback position at the time of the check, the display start time of the lyrics set by the display timing setting unit 34 is referred to, and when the display start time of the next lyrics is exceeded, the lyrics are displayed. The above is the description of the control unit 30.

表示部40は、ディスプレイ等の表示機器等であり、歌詞を表示する。   The display unit 40 is a display device such as a display and displays lyrics.

再生部50は、楽曲データのプレーヤやスピーカ、ヘッドホン等の再生機器である。   The playback unit 50 is a playback device such as a music data player, a speaker, or headphones.

次に、本実施形態における、歌詞データ表示装置1全体の動作を、図15のフローチャートを参照し説明する。   Next, the overall operation of the lyrics data display device 1 in this embodiment will be described with reference to the flowchart of FIG.

歌詞データ表示装置を起動すると、まず、制御部30は、再生する楽曲データの入力を受け付ける(ステップS10)。   When the lyrics data display device is activated, first, the control unit 30 accepts input of music data to be reproduced (step S10).

図16に、楽曲データ入力動作を行うためのユーザインタフェースの例を示す。図16では、表示部40に再生可能な楽曲データの一覧が表示されており、ユーザが入力部10を介してカーソル1010を動かし、再生したい楽曲データを決定する。   FIG. 16 shows an example of a user interface for performing a music data input operation. In FIG. 16, a list of reproducible music data is displayed on the display unit 40, and the user moves the cursor 1010 via the input unit 10 to determine music data to be played back.

次に、制御部30は、ステップS10で入力された情報から、再生する楽曲データの歌詞データを、歌詞データ格納部23から取得する(ステップS20)。   Next, the control unit 30 acquires the lyrics data of the music data to be reproduced from the lyrics data storage unit 23 from the information input in step S10 (step S20).

次に、制御部30は、歌詞の表示タイミングの設定を行う(ステップS30)。   Next, the control unit 30 sets the lyrics display timing (step S30).

表示タイミングの設定動作の処理の流れを、図17のフローチャートを参照し説明を行う。   The processing flow of the display timing setting operation will be described with reference to the flowchart of FIG.

まず、音素データ変換部31は、歌詞のテキストデータを音素へ変換し、音素列を作成する(ステップS3000)。音素データ変換部31の動作の流れについては、前述の図7の通りである。   First, the phoneme data conversion unit 31 converts the text data of the lyrics into a phoneme and creates a phoneme string (step S3000). The operation flow of the phoneme data converter 31 is as shown in FIG.

次に、ステップS3000で作成された音素列を基に、モーラ数計算部32は、歌詞のモーラ数を計算する(ステップS3010)。モーラ数計算部32の動作の流れについては、前述の図9の通りである。   Next, based on the phoneme sequence created in step S3000, the mora number calculation unit 32 calculates the mora number of the lyrics (step S3010). The operation flow of the mora number calculation unit 32 is as shown in FIG.

次に、ステップS3010で計算されたモーラ数を基に、モーラ速度計算部33は、歌唱区間毎のモーラ速度を計算する(ステップS3020)。モーラ速度計算部33の動作の流れについては、前述の図14の通りである。   Next, based on the number of mora calculated in step S3010, the mora speed calculation unit 33 calculates the mora speed for each singing section (step S3020). The operation flow of the mora speed calculator 33 is as shown in FIG.

次に、ステップS3020で計算された歌唱区間毎のモーラ速度を基に、表示タイミング設定部34は、歌詞行毎の表示開始のタイミングを設定する(ステップS3030)。表示タイミング設定部34の動作については、前述の通りである。以上が、歌詞データの同期表示制御処理の説明である。   Next, based on the mora speed for each singing section calculated in step S3020, the display timing setting unit 34 sets the display start timing for each lyrics line (step S3030). The operation of the display timing setting unit 34 is as described above. This completes the description of the lyrics data synchronous display control process.

図15のフローチャートの説明に戻り、制御部30は、ステップS10で指示された楽曲データを再生する(ステップS40)。   Returning to the description of the flowchart of FIG. 15, the control unit 30 reproduces the music data instructed in step S10 (step S40).

次に、表示制御部35は、再生中の楽曲データの再生位置が、次に表示すべき歌詞行の表示開始時間を超えたかどうかを判断する(ステップS50)。もし、超えた場合はステップS60に進み、そうでなければステップS70に進む。   Next, the display control unit 35 determines whether or not the reproduction position of the music data being reproduced has exceeded the display start time of the lyrics line to be displayed next (step S50). If so, the process proceeds to step S60, and if not, the process proceeds to step S70.

ステップS50において、真と判断した場合、制御部30は、次に表示すべき歌詞行を、表示部40に表示させる(ステップS60)。図18に、一例を示す。表示部40内に示された歌詞1020が、楽曲データの再生時間に基づいて表示される歌詞である。   If it is determined that the result is true in step S50, the control unit 30 causes the display unit 40 to display the lyrics line to be displayed next (step S60). An example is shown in FIG. The lyrics 1020 shown in the display unit 40 are the lyrics displayed based on the reproduction time of the music data.

ステップS50で偽と判断した場合、もしくはステップS60の処理を終えると、制御部30は、再生が終了したかどうかの判断を行う(ステップS70)。もし、再生が終了していなければ、ステップS50に戻り、再生が終了した場合は、歌詞データ表示装置1は処理を終了する。以上が、歌詞データ表示装置1の動作の説明である。   When it is determined to be false in step S50, or when the process of step S60 is completed, the control unit 30 determines whether or not the reproduction is completed (step S70). If the reproduction has not ended, the process returns to step S50. If the reproduction has ended, the lyrics data display device 1 ends the process. The above is the description of the operation of the lyrics data display device 1.

以上詳述したように、本実施形態1の歌詞データ表示装置1によれば、同期情報のない歌詞データに対して、歌詞行の表示開始のタイミング情報を与えることができ、ユーザが特別な作業を行わなくとも、再生される楽曲データに合わせて、適切な歌詞行を表示することができる。   As described above in detail, according to the lyric data display device 1 of the first embodiment, it is possible to give the lyric data display start timing information to the lyric data without the synchronization information, and the user can perform special work. Even if not performed, an appropriate lyrics line can be displayed in accordance with the music data to be reproduced.

なお、本実施形態におけるモーラ数計算ルール格納部25の例は、言語に寄らず一つであったが、日本語や英語、ドイツ語、フランス語など、言語別に用意しても良い。   In addition, although the example of the mora number calculation rule storage unit 25 in this embodiment is one regardless of the language, it may be prepared for each language such as Japanese, English, German, French, and the like.

また、格納部20は、歌詞データ表示装置1とネットワークによって接続された、外部機器であっても良い。   The storage unit 20 may be an external device connected to the lyrics data display device 1 via a network.

また、あらゆる言語の楽曲データについても、再生される楽曲データに合わせて、適切な歌詞行を表示することができる。   In addition, with respect to music data in any language, it is possible to display an appropriate lyric line in accordance with the music data to be reproduced.

また、音響信号の分析や音声認識などを行わないので、従来手法よりも高速に処理することができる。   In addition, since analysis of acoustic signals and voice recognition are not performed, processing can be performed at a higher speed than the conventional method.

実施形態2.
次に、本発明の実施形態に基づく実施形態2の歌詞データ表示装置2についての説明を行う。日本語の歌詞には漢字がしばしば出現するが、漢字は音読み、訓読みだけでなく、送り仮名や用法などによって読みが変化する上、単語と単語との間には区切り文字が存在しないため、単語を多数収録した辞書だけでは音素データに変換することは困難である。そこで、実施形態2の歌詞データ表示装置2によれば、漢字を含む日本語の歌詞であっても、歌詞の同期処理を行うことができる。
Embodiment 2.
Next, the lyrics data display device 2 of Embodiment 2 based on the embodiment of the present invention will be described. Kanji often appears in Japanese lyrics, but the reading of kanji is not only read aloud and kunomi, but also changes depending on the sending kana and usage, and there is no delimiter between words. It is difficult to convert to phoneme data only with a dictionary that contains a large number of words. Therefore, according to the lyrics data display device 2 of the second embodiment, the lyrics can be synchronized even with Japanese lyrics including kanji.

図19は、本発明の実施形態2に基づく歌詞データ表示装置2の構成例を示すブロック図である。   FIG. 19 is a block diagram illustrating a configuration example of the lyrics data display device 2 according to the second embodiment of the present invention.

図19において、実施形態2の歌詞データ表示装置2では、図2に示した歌詞データ表示装置1の格納部20に、漢字辞書格納部26が、制御部30に平仮名変換部36がそれぞれ追加されている。本実施形態2では、漢字辞書格納部26と、平仮名変換部36の説明のみを行い、その他の部に関しては、歌詞データ表示装置1と同様のため、説明を省略する。   19, in the lyrics data display device 2 of the second embodiment, a kanji dictionary storage unit 26 is added to the storage unit 20 of the lyrics data display device 1 shown in FIG. 2, and a hiragana conversion unit 36 is added to the control unit 30. ing. In the second embodiment, only the kanji dictionary storage unit 26 and the hiragana conversion unit 36 will be described, and the other units are the same as those of the lyrics data display device 1 and will not be described.

漢字辞書格納部26は、漢字で表された単語と、読み仮名と、品詞を格納する。   The kanji dictionary storage unit 26 stores words expressed in kanji, reading kana, and parts of speech.

図20に、漢字辞書格納部26のフォーマットの一例を示す。図20の例では、「会社」は名詞のみが格納されており、読み仮名は「かいしゃ」である。「書」は、名詞の場合の読み仮名は「しょ」であるが、カ行動詞である場合、例えば「書く」などの場合の読み仮名は「か」である。   FIG. 20 shows an example of the format of the Chinese character dictionary storage unit 26. In the example of FIG. 20, “company” stores only nouns and the reading pseudonym is “Kaisha”. In the case of “call”, the reading kana in the case of a noun is “sho”, but in the case of a kabana, for example, the reading kana in the case of “write” is “ka”.

平仮名変換部36は、漢字を平仮名に変換する。平仮名変換部36は、文章が入力されると、まず、公知の技術である形態素解析を行い、文章を品詞情報を含む単語へ分解する。次に、分解された単語と、品詞とを基に、漢字辞書格納部26を参照して、平仮名へ変換する。この作業を入力された文章全てについて行う。   The hiragana conversion unit 36 converts kanji into hiragana. When a sentence is input, the hiragana conversion unit 36 first performs morphological analysis, which is a known technique, and decomposes the sentence into words including part-of-speech information. Next, based on the decomposed word and the part of speech, the Kanji dictionary storage unit 26 is referred to convert it to Hiragana. This operation is performed for all input sentences.

ここで、「彼女がケーキを買う」という文章を平仮名変換部36によって平仮名に変換する具体例を示す。   Here, a specific example in which the sentence “she buys a cake” is converted into hiragana by the hiragana conversion unit 36 will be shown.

図21は、「彼女がケーキを買う」を形態素に変換した例を示している。図21の各単語を、漢字辞書格納部26を参照して平仮名に変換すると、「かのじょがけーきをかう」となる。   FIG. 21 shows an example in which “she buys a cake” is converted into a morpheme. When each word in FIG. 21 is converted into a hiragana character with reference to the Kanji dictionary storage unit 26, “Kanojo Kakeki” is obtained.

次に、本実施形態2における、歌詞データ表示装置2の動作例について、図22のフローチャートを参照し説明する。   Next, an operation example of the lyrics data display device 2 in Embodiment 2 will be described with reference to the flowchart of FIG.

図22のフローチャートは、実施形態1における歌詞データ表示装置1のフローチャート(図15)に、さらに平仮名変換処理(ステップS25)が追加されている。本実施形態では平仮名変換処理の説明を行い、その他の処理については、実施形態1と同様であるため、説明を省略する。   In the flowchart of FIG. 22, a hiragana conversion process (step S25) is further added to the flowchart (FIG. 15) of the lyrics data display device 1 in the first embodiment. In the present embodiment, the hiragana conversion process is described, and the other processes are the same as those in the first embodiment, and thus the description thereof is omitted.

ステップS20にて、歌詞データを取得すると、平仮名変換部36は、取得した歌詞データを平仮名に変換する。平仮名変換部36の動作は、前述の通りである。ステップS30では、ステップS20で変換した平仮名の歌詞データを利用して、歌詞データの同期表示制御処理を行う。その他の処理は、実施形態1と同様である。以上が歌詞データ表示装置2の説明である。   When the lyric data is acquired in step S20, the hiragana conversion unit 36 converts the acquired lyric data into hiragana. The operation of the hiragana conversion unit 36 is as described above. In step S30, the lyrics data synchronous display control process is performed using the lyrics data of hiragana converted in step S20. Other processes are the same as those in the first embodiment. The above is the description of the lyrics data display device 2.

従って、本実施形態2の歌詞データ表示装置2によると、漢字を含む歌詞データであっても、歌詞の同期処理を行うことができる。   Therefore, according to the lyric data display device 2 of the second embodiment, the lyric synchronization process can be performed even for lyric data including kanji.

なお、本実施形態2では、日本語における漢字に関して取り扱ったが、漢字のように読みが用法によって変化する言語についても同様に適用できる。   Although the second embodiment deals with kanji in Japanese, it can be similarly applied to languages in which reading changes depending on usage, such as kanji.

実施形態3.
本発明の実施形態に基づく実施形態3の歌詞データ表示装置3についての説明を行う。歌詞データ表示装置3によれば、歌詞データが、歌唱区間に分けられて格納されていなくても、同期処理を行うことができる。
Embodiment 3.
The lyric data display apparatus 3 of Embodiment 3 based on embodiment of this invention is demonstrated. According to the lyric data display device 3, even if the lyric data is not divided and stored in the singing section, the synchronization process can be performed.

図23は、本発明の実施形態に基づく歌詞データ表示装置3の構成例を示すブロック図である。   FIG. 23 is a block diagram showing a configuration example of the lyrics data display device 3 based on the embodiment of the present invention.

図23において、歌詞データ表示装置3は、図2に示した歌詞データ表示装置1の格納部20に歌詞行情報格納部27が、制御部30に歌唱区間分割部37が、それぞれ追加されている。また、格納部20の歌詞データ格納部23の構成と、制御部30のモーラ速度計算部33とが異なるため、歌詞データ表示装置3では、それぞれ歌詞データ格納部23A、モーラ速度計算部33Aとする。本実施形態3では、歌詞データ格納部23Aと、歌詞行情報格納部27と、歌唱区間分割部37との説明のみを行い、その他の部に関しては、歌詞データ表示装置1と同様のため、説明を省略する。   23, in the lyrics data display device 3, a lyrics line information storage unit 27 is added to the storage unit 20 of the lyrics data display device 1 shown in FIG. 2, and a singing section division unit 37 is added to the control unit 30, respectively. . Further, since the configuration of the lyrics data storage unit 23 of the storage unit 20 is different from the mora speed calculation unit 33 of the control unit 30, in the lyrics data display device 3, the lyrics data storage unit 23A and the mora speed calculation unit 33A are used. . In the third embodiment, only the lyrics data storage unit 23A, the lyrics line information storage unit 27, and the singing section division unit 37 will be described, and the other units are the same as the lyrics data display device 1 and will be described. Is omitted.

歌詞データ格納部23Aは、楽曲データIDと、楽曲データIDに対応する楽曲データの歌詞とを格納する。歌詞データ表示装置1の歌詞データ格納部23では、楽曲データの歌唱区間の情報が格納されていたが、歌詞データ表示装置3の歌詞データ格納部23Aでは、歌唱区間の情報は格納されていない。   The lyrics data storage unit 23A stores the song data ID and the lyrics of the song data corresponding to the song data ID. The lyric data storage unit 23 of the lyric data display device 1 stores information on the singing section of the music data, but the lyric data storage unit 23A of the lyric data display apparatus 3 does not store the information on the singing section.

図24に歌詞データ格納部23Aに格納される歌詞データのフォーマットの一例を示す。   FIG. 24 shows an example of the format of the lyrics data stored in the lyrics data storage unit 23A.

図24に示した例は、図4に示したフォーマットの例から、歌唱区間に関する情報である歌唱区間番号を取り除いたものである。   The example shown in FIG. 24 is obtained by removing the singing section number, which is information related to the singing section, from the example of the format shown in FIG.

歌詞行情報格納部27は、歌唱区間分割部37によって算出される、前記歌唱区間毎の歌詞の開始行番号と終了行番号を格納する。格納される情報は、後述する歌唱区間分割部37によって与えられる。   The lyric line information storage unit 27 stores the start line number and the end line number of the lyrics for each singing section calculated by the singing section dividing unit 37. The stored information is given by the singing section dividing unit 37 described later.

図25に、歌詞行情報格納部27に格納される歌詞行情報のフォーマットの一例を示す。図25では、例えば、歌唱区間1については、開始行番号が1で、終了行番号が2として格納されている。   FIG. 25 shows an example of the format of the lyrics line information stored in the lyrics line information storage unit 27. In FIG. 25, for example, for the singing section 1, the start line number is 1 and the end line number is 2.

モーラ速度計算部33Aは、モーラ数計算部32によって算出された行モーラ数を基に、歌唱区間毎のモーラ速度を計算する。モーラ速度計算部33Aと、モーラ速度計算部33とは、図14に示した、ステップS330の処理が異なる。モーラ速度計算部33でのステップS330では、歌詞データ格納部23を参照して、歌唱区間番号に対応する歌詞の開始行番号と、終了行番号とを取得していたが、歌詞データ表示装置3における歌詞データ格納部23には、前記情報が格納されていないため、歌詞行情報格納部27を参照して、歌詞の歌唱区間毎の開始行番号と、終了行番号とを取得する。その他の処理については、モーラ速度計算部33と同様であるため、説明を省略する。   The mora speed calculator 33A calculates the mora speed for each singing section based on the number of row mora calculated by the mora number calculator 32. The mora speed calculation unit 33A and the mora speed calculation unit 33 differ in the process of step S330 shown in FIG. In step S330 in the mora speed calculation unit 33, the lyrics data storage unit 23 is referred to obtain the lyrics start line number and end line number corresponding to the singing section number. Since the above information is not stored in the lyric data storage unit 23, the lyric line information storage unit 27 is referred to obtain the start line number and the end line number for each singing section of the lyrics. The other processes are the same as those of the mora speed calculation unit 33, and thus description thereof is omitted.

歌唱区間分割部37は、歌唱区間に分けられていない歌詞データを、歌唱区間に分割する。歌唱区間分割部37の動作の流れを、図26のフローチャートを参照して説明する。   The singing section dividing unit 37 divides lyrics data that is not divided into singing sections into singing sections. The flow of operation of the singing section dividing unit 37 will be described with reference to the flowchart of FIG.

まず、歌唱区間分割部37は、全ての歌唱区間の再生時間を計算する(ステップS370)。歌唱区間分割部37は、歌唱時間データ格納部37を参照して、全ての歌唱区間の再生時間を合計する。なお、再生時間は、終了時間から開始時間を引くことによって求められる。   First, the singing section dividing unit 37 calculates the playback time of all singing sections (step S370). The singing section division unit 37 refers to the singing time data storage unit 37 and totals the reproduction times of all the singing sections. Note that the playback time is obtained by subtracting the start time from the end time.

次に、歌唱区間分割部37は、曲の平均モーラ速度を計算する(ステップS371)。平均モーラ速度は、各歌詞行のモーラ数の合計値から、ステップS370で算出された曲の総再生時間を割ることで求められる。なお、各行モーラ数は、前述の通り、モーラ数計算部32によって算出する。   Next, the song section division unit 37 calculates the average mora speed of the song (step S371). The average mora speed is obtained by dividing the total reproduction time of the song calculated in step S370 from the total number of mora in each lyrics line. The number of row mora is calculated by the mora number calculation unit 32 as described above.

次に、歌唱区間分割部37は、歌詞を各歌唱区間に分割する(ステップS372)。歌唱区間jの再生時間をtj、ステップS371で求められた平均モーラ速度をv、歌詞行kの行モーラ数をMkとすると、歌唱区間jの予想区間モーラ数mjは、   Next, the singing section dividing unit 37 divides the lyrics into each singing section (step S372). Assuming that the playback time of the song section j is tj, the average mora speed obtained in step S371 is v, and the number of line mora of the lyrics line k is Mk, the expected section mora number mj of the song section j is

Figure 0005098932
で求められる。この値を用いて、
Figure 0005098932
Is required. Using this value,

Figure 0005098932
Figure 0005098932

Figure 0005098932
を満たす、最大のnjを求める(njは整数、jは自然数)。このnjが、歌唱区間jに含まれる歌詞行番号njとなる。なお、数式5に示されたε0は、予想モーラ数に対して許容される誤差範囲を示す0以上の整数である。この値は固定値でも良いし、
Figure 0005098932
The maximum nj that satisfies the above is obtained (nj is an integer, j is a natural number). This nj becomes the lyrics line number nj included in the singing section j. Note that ε0 shown in Equation 5 is an integer of 0 or more indicating an error range allowed for the expected number of mora. This value can be a fixed value,

Figure 0005098932
のような数式であっても良い。以上の計算を、全ての歌唱区間について行う。
Figure 0005098932
A mathematical expression such as The above calculation is performed for all singing sections.

次に、歌唱区間分割部37は、歌詞行情報格納部27に、データを格納する(ステップS373)。歌唱区間jの開始行番号はnjとし、終了行番号は、(nk)−1(k=j+1)として、歌詞行情報格納部27に格納する。   Next, the song section division unit 37 stores data in the lyrics line information storage unit 27 (step S373). The starting line number of the singing section j is nj, and the ending line number is stored in the lyrics line information storage unit 27 as (nk) -1 (k = j + 1).

ところで、歌詞の中には、歌詞を見やすくするために、空白行を設けているデータがある。このような場合、空白行に該当する箇所に間奏が挿入される可能性が高い。そのため、歌唱区間分割部37は、この情報を利用することも可能である。具体的には、間に空白行のない歌詞行を、ひとつの歌詞行として扱う。   By the way, in the lyrics, there is data in which blank lines are provided in order to make the lyrics easy to see. In such a case, there is a high possibility that an interlude is inserted at a location corresponding to a blank line. Therefore, the singing section division unit 37 can also use this information. Specifically, a lyric line with no blank line in between is treated as one lyric line.

図24のID1の歌詞を例にとると、空白行が登場するまでの2行分をまとめる、つまり「An apple a day keeps the doctor away Time flies like an arrow」をひとつの歌詞行として扱う。そのため、この新しい行モーラ数Mは、2行分の行モーラ数を合計した数値となる。以上が歌唱区間分割部37の説明である。   Taking the lyrics of ID1 in FIG. 24 as an example, two lines until a blank line appears are collected, that is, “An apple a day keeps the doctor away Time flies like an arrow” is treated as one lyrics line. Therefore, this new row mora number M is a numerical value obtained by summing the number of row mora for two rows. The above is the description of the singing section dividing unit 37.

次に、本実施形態3における、歌詞データ表示装置3の動作例について説明する。   Next, an operation example of the lyrics data display device 3 in Embodiment 3 will be described.

歌詞データ表示装置3の動作は、図15に示した、実施形態1における歌詞データ表示装置1の動作の流れと同様であるが、ステップS30の歌詞データの同期表示制御処理の詳細な処理動作が異なる。   The operation of the lyric data display device 3 is the same as the operation flow of the lyric data display device 1 in the first embodiment shown in FIG. 15, but the detailed processing operation of the synchronous display control processing of the lyric data in step S30 is as follows. Different.

図27は、本実施形態3における歌詞データ表示装置3の歌詞データの同期表示制御処理の動作の一例を示すフローチャートである。なお、音素変換処理(ステップS3000)と、モーラ数計算処理(ステップS3010)は、実施形態1における歌詞データ表示装置1と処理内容が同様であるため、説明を省略する。   FIG. 27 is a flowchart illustrating an example of the operation of the lyrics data synchronous display control process of the lyrics data display device 3 according to the third embodiment. Note that the phoneme conversion process (step S3000) and the mora number calculation process (step S3010) have the same processing contents as the lyric data display device 1 in the first embodiment, and thus description thereof is omitted.

行モーラ数の計算を終えると、歌唱区間分割部37は、歌唱区間毎に開始歌詞行と、終了歌詞行とを計算し、歌詞行情報格納部27に格納する(ステップS3015)。歌唱区間分割部37の処理は、前述の通りである。   When the calculation of the number of line mora is completed, the singing section dividing unit 37 calculates a starting lyrics line and an ending lyrics line for each singing section, and stores them in the lyrics line information storage unit 27 (step S3015). The processing of the singing section dividing unit 37 is as described above.

歌詞行情報格納部27に値を設定した後、モーラ速度計算部33Aは、歌唱区間毎のモーラ速度を計算する(ステップS3020A)。モーラ速度計算部33Aの処理は、前述の通りである。   After setting a value in the lyrics line information storage unit 27, the mora speed calculation unit 33A calculates the mora speed for each singing section (step S3020A). The process of the mora speed calculation unit 33A is as described above.

歌唱区間毎のモーラ速度から、歌詞行毎の表示開始のタイミングを設定する表示タイミング設定処理(ステップS3030)は、実施形態1における歌詞データ表示装置1と処理内容が同様であるため、説明を省略する。以上が、歌詞データ表示装置3の動作の説明である。   The display timing setting process (step S3030) for setting the display start timing for each lyric line from the mora speed for each singing section is the same as the lyric data display device 1 in the first embodiment, and thus the description thereof is omitted. To do. The operation of the lyrics data display device 3 has been described above.

以上、詳述したように、本実施形態3における歌詞データ表示装置3によれば、歌詞データが歌唱区間に分けられていなくとも、楽曲データの再生中に、適切な歌詞を表示することができる。   As described above in detail, according to the lyrics data display device 3 in Embodiment 3, even if the lyrics data is not divided into singing sections, appropriate lyrics can be displayed during the reproduction of the music data. .

なお、上記実施形態1〜3では、本発明に係る歌詞データ表示装置を図1や、図19、図23のブロック図に示すように、ハードウエアにより構成して説明したが、本発明では、これに限らず、実施形態1〜3の歌詞データ表示装置の機能を実行するための歌詞データ表示プログラムと、この歌詞データ表示プログラムを実行するCPU等とにより、ソフトウエアにより構成するようにしても勿論よい。  In the first to third embodiments, the lyric data display device according to the present invention has been described as being configured by hardware as shown in the block diagrams of FIG. 1, FIG. 19, and FIG. 23. However, the present invention is not limited to this. The lyric data display program for executing the functions of the lyric data display apparatuses according to the first to third embodiments and the CPU for executing the lyric data display program may be configured by software. Of course.

実施形態1における歌詞データ表示装置1の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a lyrics data display device 1 according to Embodiment 1. FIG. 実施形態1〜3における入力部の一例を示す図である。It is a figure which shows an example of the input part in Embodiment 1-3. 実施形態1〜3における歌唱時間データの一例を示す図である。It is a figure which shows an example of the singing time data in Embodiments 1-3. 本発明実施形態1,2における歌詞データの一例を示す図である。It is a figure which shows an example of the lyric data in this invention Embodiment 1,2. 実施形態1〜3における英語の音素辞書の一例を示す図である。It is a figure which shows an example of the phoneme dictionary of English in Embodiment 1-3. 実施形態1〜3における日本語の音素辞書の一例を示す図である。It is a figure which shows an example of the Japanese phoneme dictionary in Embodiment 1-3. 実施形態1〜3における音素データ変換部の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the phoneme data conversion part in Embodiment 1-3. 英文を音素列に変換した一例を示す図である。It is a figure which shows an example which converted the English sentence into the phoneme string. 実施形態1〜3におけるモーラ数計算部の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the mora number calculation part in Embodiment 1-3. 実施形態1〜3におけるモーラ数計算部での音素からVC列へ変換するための変換表の一例を示す図である。It is a figure which shows an example of the conversion table for converting into a VC row | line | column from the phoneme in the mora number calculation part in Embodiment 1-3. 音素列をVC列に変換した一例を示す図である。It is a figure which shows an example which converted the phoneme string into the VC string. 実施形態1〜3におけるモーラ数計算ルールの一例を示す図である。It is a figure which shows an example of the mora number calculation rule in Embodiment 1-3. VC列からモーラ数に変換した一例を示す図である。It is a figure which shows an example converted into the number of mora from a VC row | line | column. 実施形態1〜3におけるモーラ速度計算部の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the mora speed calculation part in Embodiment 1-3. 実施形態1における歌詞データ表示装置1の動作の一例を示すフローチャートである。6 is a flowchart illustrating an example of the operation of the lyrics data display device 1 according to the first embodiment. 楽曲データの入力動作を行うためのユーザインタフェースの一例を示す図である。It is a figure which shows an example of the user interface for performing the input operation of music data. 本発明実施形態1,2における歌詞データの同期表示制御処理動作の一例を示すフローチャートである。It is a flowchart which shows an example of the synchronous display control processing operation | movement of the lyrics data in Embodiment 1, 2 of this invention. 表示部に歌詞を表示した一例を示す図である。It is a figure which shows an example which displayed the lyrics on the display part. 実施形態2における歌詞データ表示装置2の構成を示すブロック図である。It is a block diagram which shows the structure of the lyric data display apparatus 2 in Embodiment 2. FIG. 実施形態2における漢字辞書の一例を示す図である。It is a figure which shows an example of the Chinese character dictionary in Embodiment 2. 文章から単語および品詞への形態素解析を行った一例を示す図である。It is a figure which shows an example which performed the morphological analysis from the sentence to the word and the part of speech. 実施形態2における歌詞データ表示装置2の動作の一例を示すフローチャートである。10 is a flowchart illustrating an example of the operation of the lyrics data display device 2 according to the second embodiment. 実施形態3における歌詞データ表示装置3の構成を示すブロック図である。It is a block diagram which shows the structure of the lyric data display apparatus 3 in Embodiment 3. FIG. 実施形態3における歌詞データの一例を示す図である。It is a figure which shows an example of the lyric data in Embodiment 3. 実施形態3における歌詞行情報の一例を示す図である。It is a figure which shows an example of the lyric line information in Embodiment 3. 実施形態3における歌唱区間分割部の動作の一例を示す図である。It is a figure which shows an example of operation | movement of the song section division part in Embodiment 3. 実施形態3における歌詞データの同期表示制御処理の動作の一例を示すフローチャートである。15 is a flowchart illustrating an example of an operation of synchronous display control processing of lyrics data in the third embodiment.

符号の説明Explanation of symbols

1,2,3 歌詞データ表示装置
10 入力部
20 格納部
21 楽曲データ格納部
22 歌唱時間データ格納部
23,23A 歌詞データ格納部
24 音素辞書格納部
25 モーラ数計算ルール格納部
26 漢字辞書格納部
27 歌詞行情報格納部
30 制御部
31 音素データ変換部
32 モーラ数計算部
33,33A モーラ速度計算部
34 表示タイミング設定部
35 表示制御部
36 平仮名変換部
37 歌唱区間分割部
40 表示部
50 再生部
1, 2, 3 Lyrics data display device 10 Input unit 20 Storage unit 21 Music data storage unit 22 Singing time data storage unit 23, 23A Lyric data storage unit 24 Phoneme dictionary storage unit 25 Mora number calculation rule storage unit 26 Kanji dictionary storage unit 27 Lyric line information storage unit 30 Control unit 31 Phoneme data conversion unit 32 Mora number calculation unit 33, 33A Mora speed calculation unit 34 Display timing setting unit 35 Display control unit 36 Hiragana conversion unit 37 Singing segment division unit 40 Display unit 50 Playback unit

Claims (7)

楽曲データにおける歌唱データの存在区間である歌唱区間毎に、前記歌唱区間の開始時間および終了時間である歌唱時間データを格納する歌唱時間データ格納部と、
前記歌唱区間毎に、テキストデータとして記述された前記楽曲データの歌詞データを格納する歌詞データ格納部と、
文字または単語をその意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を格納する音素辞書格納部と、
前記音素データから、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算するためのモーラ数計算ルールを格納するモーラ数計算ルール格納部と、
前記歌詞データ格納部から前記歌詞データを読み込み、前記音素辞書格納部を参照して、前記歌詞データを前記音素データに変換する音素データ変換部と、
前記モーラ数計算ルールを参照し、前記音素データ変換部によって作成された前記音素データを読み込み、前記歌唱区間の前記モーラの個数である区間モーラ数および前記歌唱区間の各行の前記モーラの個数である行モーラ数を計算するモーラ数計算部と、
前記歌唱時間データ格納部から前記歌唱時間データを読み込み、前記歌唱区間の時間長を計算すると共に、前記モーラ数計算部によって計算された前記区間モーラ数を、前記時間長で割ることによって求められる、前記歌唱区間毎のモーラ速度を計算するモーラ速度計算部と、
前記モーラ速度計算部によって計算された前記モーラ速度と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算する表示タイミング計算部と、
前記表示タイミング計算部によって計算された前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させる表示制御部と、
を有する歌詞データ表示装置。
A singing time data storage unit that stores singing time data that is a start time and an end time of the singing section for each singing section that is an existing section of singing data in the music data;
A lyric data storage unit for storing lyric data of the music data described as text data for each singing section;
A phoneme dictionary storage unit that stores a phoneme dictionary for converting characters or words into phoneme data, which is a minimum speech unit that works to distinguish the meaning of the character or word;
From the phoneme data, a mora number calculation rule storage unit that stores a mora number calculation rule for calculating the number of mora that is a segmental unit of a sound having a certain temporal length in pronunciation;
Reading the lyrics data from the lyrics data storage unit, referring to the phoneme dictionary storage unit, and converting the lyrics data into the phoneme data;
Read the phoneme data created by the phoneme data conversion unit with reference to the mora number calculation rule, and the number of mora in the singing section and the number of mora in each row of the singing section A mora number calculation unit for calculating the number of row mora;
The singing time data is read from the singing time data storage unit, the time length of the singing section is calculated, and the section mora number calculated by the mora number calculating unit is obtained by dividing by the time length. A mora speed calculator for calculating a mora speed for each singing section;
A display timing calculation unit for calculating a display timing for each line of the lyrics data based on the mora speed calculated by the mora speed calculation unit and the line mora number calculated by the mora number calculation unit;
Based on the display timing calculated by the display timing calculation unit, a display control unit for displaying the lyrics data in synchronization with the reproduction of the music data;
A lyric data display device.
楽曲データにおける歌唱データの存在区間である歌唱区間毎に、前記歌唱区間の開始時間および終了時間である歌唱時間データを格納する歌唱時間データ格納部と、
テキストデータとして記述された前記楽曲データの歌詞データを格納する歌詞データ格納部と、
文字または単語をその意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を格納する音素辞書格納部と、
前記音素データから、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算するためのモーラ数計算ルールを格納するモーラ数計算ルール格納部と、
前記歌詞データ格納部から前記歌詞データを読み込み、前記音素辞書格納部を参照して、前記歌詞データを前記音素データに変換する音素データ変換部と、
前記モーラ数計算ルールを参照し、前記音素データ変換部によって作成された前記音素データを読み込み、前記歌詞データ全体の前記モーラの個数である全モーラ数および前記歌詞データの各行毎の前記モーラの個数である行モーラ数を計算するモーラ数計算部と、
前記歌唱時間データ格納部から前記歌唱時間データを読み込み、前記各歌唱区間の時間長およびその合計値である合計時間長を計算し、前記モーラ数計算部によって計算された前記全モーラ数を、前記合計時間長で割ることによって求められる平均モーラ速度を計算すると共に、前記各歌唱区間の時間長を前記平均モーラ速度で割ることにより得られる各歌唱区間の推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データを行毎に前記各歌唱区間に対応させる歌唱区間分割部と、
前記歌唱区間分割部で得られた前記歌詞データと前記歌唱区間との対応情報と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌唱区間毎のモーラ数を計算すると共に、それを前記歌唱区間分割部で計算された前記歌唱区間の時間長で割ることによって求められる、前記歌唱区間毎のモーラ速度を計算するモーラ速度計算部と、
前記モーラ速度計算部によって計算された前記モーラ速度と、前記モーラ数計算部で計算された前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算する表示タイミング計算部と、
前記表示タイミング計算部によって計算された前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させる表示制御部と、
を有する歌詞データ表示装置。
A singing time data storage unit that stores singing time data that is a start time and an end time of the singing section for each singing section that is an existing section of singing data in the music data;
A lyrics data storage unit for storing lyrics data of the music data described as text data;
A phoneme dictionary storage unit that stores a phoneme dictionary for converting characters or words into phoneme data, which is a minimum speech unit that works to distinguish the meaning of the character or word;
From the phoneme data, a mora number calculation rule storage unit that stores a mora number calculation rule for calculating the number of mora that is a segmental unit of a sound having a certain temporal length in pronunciation;
Reading the lyrics data from the lyrics data storage unit, referring to the phoneme dictionary storage unit, and converting the lyrics data into the phoneme data;
Read the phoneme data created by the phoneme data conversion unit with reference to the mora number calculation rule, and the total number of mora that is the number of mora of the entire lyrics data and the number of mora for each row of the lyrics data A mora number calculating unit for calculating the number of row mora,
The singing time data is read from the singing time data storage unit, the time length of each singing section and the total time length that is the total value thereof are calculated, and the total number of mora calculated by the mora number calculating unit is The average mora speed obtained by dividing by the total time length is calculated, and the estimated mora number of each singing section obtained by dividing the time length of each singing section by the average mora speed and the number of row mora Based on the singing section dividing unit for making the lyrics data correspond to each singing section for each line,
The number of mora for each singing section is calculated based on the correspondence information between the lyric data obtained by the singing section dividing unit and the singing section and the number of row mora calculated by the mora number calculating unit. And a mora speed calculation unit for calculating a mora speed for each singing section, which is obtained by dividing the time length of the singing section calculated by the singing section dividing unit,
A display timing calculation unit for calculating a display timing for each line of the lyrics data based on the mora speed calculated by the mora speed calculation unit and the line mora number calculated by the mora number calculation unit;
Based on the display timing calculated by the display timing calculation unit, a display control unit for displaying the lyrics data in synchronization with the reproduction of the music data;
A lyric data display device.
請求項1または請求項2に記載の歌詞データ表示装置において、
さらに、
漢字とその読み方を示す平仮名とを一つ以上対応させて格納する漢字辞書格納部と、
前記歌詞データ格納部から取得した前記歌詞データ中の漢字を、前記漢字辞書格納部を参照して平仮名に変換する平仮名変換部と、を有し、
前記音素データ変換部は、
前記音素辞書格納部を参照して、前記平仮名変換部によって平仮名に変換された前記歌詞データを前記音素データに変換し、音素列を作成する、歌詞データ表示装置。
In the lyric data display device according to claim 1 or 2,
further,
A kanji dictionary storage unit for storing one or more hiragana corresponding to kanji and how to read the kanji,
A hiragana conversion unit that converts kanji in the lyrics data acquired from the lyrics data storage unit into hiragana with reference to the kanji dictionary storage unit,
The phoneme data converter is
A lyric data display device that refers to the phoneme dictionary storage unit, converts the lyric data converted into hiragana by the hiragana conversion unit into the phoneme data, and creates a phoneme string.
楽曲データにおける歌唱データの存在区間である歌唱区間に対応する、1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記歌唱区間のモーラの個数である区間モーラ数および前記歌唱区間の各行のモーラの個数である行モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
を有する歌詞データ表示方法。
The lyrics data of the music data described as text data composed of one or more lines corresponding to the singing section that is the singing data existing section in the music data is read, and the meaning of the word or word is distinguished. Creating a phoneme time-series data obtained by converting the lyric data into the phoneme data with reference to a phoneme dictionary for converting to phoneme data that is a minimum speech unit that has a function to perform;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the number of section mora that is the number of mora in the singing section and each row of the singing section Calculating the number of row mora which is the number of mora of
Calculating the mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
Calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
A method for displaying lyric data.
1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記楽曲データ全体のモーラの個数である全モーラ数および前記歌詞データの各行のモーラの個数である行モーラ数を計算するステップと、
前記全モーラ数を、楽曲データにおける歌唱データの存在区間である各歌唱区間の時間長の合計値で除算して得られる平均モーラ速度を計算するステップと、
前記各歌唱区間の時間長を前記平均モーラ速度で除算して得られる各歌唱区間の推定モーラ数を計算するステップと、
前記推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データの各行と前記各歌唱区間との対応情報を作成するステップと、
前記対応情報と前記行モーラ数とに基づいて、前記各歌唱区間毎のモーラの個数である区間モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するモーラ速度計算ステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するタイミング計算ステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
を有する歌詞データ表示方法。
To read lyric data of music data described as text data composed of one or more lines, and to convert characters or words into phoneme data, which is the smallest speech unit that works to distinguish the meaning of words Creating a phoneme time-series data obtained by converting the lyrics data into the phoneme data, referring to the phoneme dictionary of
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the total number of mora that is the number of mora of the entire music data and the lyrics data Calculating the number of row mora, which is the number of mora in each row;
A step of calculating an average mora speed obtained by dividing the total number of mora by a total value of time lengths of each singing section which is an existing section of singing data in the music data;
Calculating an estimated number of mora for each song section obtained by dividing the time length of each song section by the average mora speed;
Creating correspondence information between each line of the lyrics data and each song section based on the estimated number of mora and the number of line mora;
Based on the correspondence information and the number of row mora, calculating a section mora number that is the number of mora for each singing section;
A mora speed calculating step for calculating a mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
A timing calculating step for calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
A method for displaying lyric data.
楽曲データにおける歌唱データの存在区間である歌唱区間に対応する、1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記歌唱区間のモーラの個数である区間モーラ数および前記歌唱区間の各行のモーラの個数である行モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
をコンピュータに実行させる歌詞データ表示プログラム。
The lyrics data of the music data described as text data composed of one or more lines corresponding to the singing section that is the singing data existing section in the music data is read, and the meaning of the word or word is distinguished. Creating a phoneme time-series data obtained by converting the lyric data into the phoneme data with reference to a phoneme dictionary for converting to phoneme data that is a minimum speech unit that has a function to perform;
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the number of section mora that is the number of mora in the singing section and each row of the singing section Calculating the number of row mora which is the number of mora of
Calculating the mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
Calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
Lyrics data display program that makes a computer execute.
1つ以上の行で構成されるテキストデータとして記述された楽曲データの歌詞データを読み込むと共に、文字乃至は単語を語の意味を区別する働きのある最小の音声単位である音素データに変換するための音素辞書を参照し、前記歌詞データを前記音素データに変換した音素時系列データを作成するステップと、
前記音素時系列データに対して、発音上一定の時間的長さを有する音の分節単位であるモーラの個数を計算し、前記楽曲データ全体のモーラの個数である全モーラ数および前記歌詞データの各行のモーラの個数である行モーラ数を計算するステップと、
前記全モーラ数を、楽曲データにおける歌唱データの存在区間である各歌唱区間の時間長の合計値で除算して得られる平均モーラ速度を計算するステップと、
前記各歌唱区間の時間長を前記平均モーラ速度で除算して得られる各歌唱区間の推定モーラ数を計算するステップと、
前記推定モーラ数と、前記行モーラ数とに基づいて、前記歌詞データの各行と前記各歌唱区間との対応情報を作成するステップと、
前記対応情報と前記行モーラ数とに基づいて、前記各歌唱区間毎のモーラの個数である区間モーラ数を計算するステップと、
前記区間モーラ数を前記歌唱区間の時間長で除算して得られる歌唱区間毎のモーラ速度を計算するモーラ速度計算ステップと、
前記モーラ速度と前記行モーラ数とに基づいて、前記歌詞データの各行毎の表示タイミングを計算するタイミング計算ステップと、
前記表示タイミングに基づいて、前記楽曲データの再生に同期させて前記歌詞データを表示させるステップと、
をコンピュータに実行させる歌詞データ表示プログラム。
To read lyric data of music data described as text data composed of one or more lines, and to convert characters or words into phoneme data, which is the smallest speech unit that works to distinguish the meaning of words Creating a phoneme time-series data obtained by converting the lyrics data into the phoneme data, referring to the phoneme dictionary of
For the phoneme time-series data, calculate the number of mora that is a segmental unit of sound having a certain temporal length in pronunciation, and the total number of mora that is the number of mora of the entire music data and the lyrics data Calculating the number of row mora, which is the number of mora in each row;
A step of calculating an average mora speed obtained by dividing the total number of mora by a total value of time lengths of each singing section which is an existing section of singing data in the music data;
Calculating an estimated number of mora for each song section obtained by dividing the time length of each song section by the average mora speed;
Creating correspondence information between each line of the lyrics data and each song section based on the estimated number of mora and the number of line mora;
Based on the correspondence information and the number of row mora, calculating a section mora number that is the number of mora for each singing section;
A mora speed calculating step for calculating a mora speed for each singing section obtained by dividing the number of section mora by the time length of the singing section;
A timing calculating step for calculating a display timing for each line of the lyrics data based on the mora speed and the number of line mora;
Displaying the lyrics data in synchronization with the reproduction of the music data based on the display timing;
Lyrics data display program that makes a computer execute.
JP2008252844A 2008-09-30 2008-09-30 Lyric data display device, lyrics data display method, and lyrics data display program Expired - Fee Related JP5098932B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008252844A JP5098932B2 (en) 2008-09-30 2008-09-30 Lyric data display device, lyrics data display method, and lyrics data display program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008252844A JP5098932B2 (en) 2008-09-30 2008-09-30 Lyric data display device, lyrics data display method, and lyrics data display program

Publications (2)

Publication Number Publication Date
JP2010085581A JP2010085581A (en) 2010-04-15
JP5098932B2 true JP5098932B2 (en) 2012-12-12

Family

ID=42249616

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008252844A Expired - Fee Related JP5098932B2 (en) 2008-09-30 2008-09-30 Lyric data display device, lyrics data display method, and lyrics data display program

Country Status (1)

Country Link
JP (1) JP5098932B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105047203B (en) * 2015-05-25 2019-09-10 广州酷狗计算机科技有限公司 A kind of audio-frequency processing method, device and terminal
CN112786020B (en) * 2021-01-21 2024-02-23 腾讯音乐娱乐科技(深圳)有限公司 Lyric timestamp generation method and storage medium

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169578A (en) * 2000-12-05 2002-06-14 Kenwood Corp Acoustic device with word display function
JP2002351490A (en) * 2001-05-29 2002-12-06 Telecommunication Advancement Organization Of Japan Method of imparting timing information to subtitles
JP2004212473A (en) * 2002-12-27 2004-07-29 Matsushita Electric Ind Co Ltd Karaoke machine and karaoke reproducing method
JP4314376B2 (en) * 2003-01-07 2009-08-12 独立行政法人情報通信研究機構 Writing support device
JP2005250242A (en) * 2004-03-05 2005-09-15 Pioneer Electronic Corp Device, method, and program for information processing, and recording medium
JP2006195385A (en) * 2005-01-17 2006-07-27 Matsushita Electric Ind Co Ltd Device and program for music reproduction
JP4458096B2 (en) * 2007-02-09 2010-04-28 ヤマハ株式会社 Data reproducing apparatus, data reproducing method and program

Also Published As

Publication number Publication date
JP2010085581A (en) 2010-04-15

Similar Documents

Publication Publication Date Title
JP4114888B2 (en) Voice quality change location identification device
US6778962B1 (en) Speech synthesis with prosodic model data and accent type
JP4038211B2 (en) Speech synthesis apparatus, speech synthesis method, and speech synthesis system
JP2008134475A (en) Technique for recognizing accent of input voice
EP2595144A1 (en) Voice data retrieval system and program product therefor
JP4811557B2 (en) Voice reproduction device and speech support device
JP4738847B2 (en) Data retrieval apparatus and method
JP4758758B2 (en) Dictionary creation device and dictionary creation program
Amrouche et al. Balanced Arabic corpus design for speech synthesis
JP7110055B2 (en) Speech synthesis system and speech synthesizer
JP5098932B2 (en) Lyric data display device, lyrics data display method, and lyrics data display program
JP5819147B2 (en) Speech synthesis apparatus, speech synthesis method and program
Demenko et al. JURISDIC: Polish Speech Database for Taking Dictation of Legal Texts.
Brognaux et al. A new prosody annotation protocol for live sports commentaries.
JP2003186489A (en) Voice information database generation system, device and method for sound-recorded document creation, device and method for sound recording management, and device and method for labeling
JPH06282290A (en) Natural language processing device and method thereof
JP4640063B2 (en) Speech synthesis method, speech synthesizer, and computer program
JP2000172289A (en) Method and record medium for processing natural language, and speech synthesis device
JP2023005583A (en) Signal processing device and program
Möbius The Bell Labs German text-to-speech system
JP3958908B2 (en) Transcription text automatic generation device, speech recognition device, and recording medium
JP2006284645A (en) Speech reproducing device, and reproducing program and reproducing method therefor
JPH09311775A (en) Device and method voice output
JPH0962286A (en) Voice synthesizer and the method thereof
JP6003127B2 (en) Language model creation program and language model creation device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100916

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120828

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120910

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5098932

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees