JP4120664B2 - カラオケ装置 - Google Patents

カラオケ装置 Download PDF

Info

Publication number
JP4120664B2
JP4120664B2 JP2005173670A JP2005173670A JP4120664B2 JP 4120664 B2 JP4120664 B2 JP 4120664B2 JP 2005173670 A JP2005173670 A JP 2005173670A JP 2005173670 A JP2005173670 A JP 2005173670A JP 4120664 B2 JP4120664 B2 JP 4120664B2
Authority
JP
Japan
Prior art keywords
data
performance
setting
guide melody
change
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
JP2005173670A
Other languages
English (en)
Other versions
JP2006349821A (ja
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2005173670A priority Critical patent/JP4120664B2/ja
Publication of JP2006349821A publication Critical patent/JP2006349821A/ja
Application granted granted Critical
Publication of JP4120664B2 publication Critical patent/JP4120664B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

本発明は、カラオケ装置において、ガイドメロディの音色の種別を変更した際に、音量の変化によって違和感が生じることを防止する技術に関する。
従来より、ガイドメロディを含む演奏データに基づいてカラオケ演奏を行う機能を有するカラオケ装置が知られている。ここでガイドメロディとは、カラオケ演奏に合わせて歌おうとする人が主旋律をうろ覚えの場合などに、その補助となるよう演奏されるメロディパートを云う。このガイドメロディは、基本的には主な設置場所であるカラオケボックスにて利用されることを想定して、楽曲ごとに様々な音色にて作成されている。なお、ガイドメロディに使われる音色の種別の具体例としては、ビブラフォンやピアノ、フルート、ハーモニカなどが挙げられる。
また、上述のようなカラオケ装置の中には、ガイドメロディの音符の長さや音高を変更するものがある(例えば、特許文献1参照。)。また、上述のようなカラオケ装置の中には、ガイドメロディの音量を利用者の要望に応じて変化させるものがある(例えば、特許文献2参照。)。
特開2000−267652号公報(第4頁、図2,3,6) 特開平9−81166号公報(第5頁、図1)
しかし、上述のようなカラオケ装置においては、ガイドメロディの音色の種別を変更する旨のデータに対応する音響効果を設定するためのデータについては、図3(a)に例示するように、本来演奏データには含まれないため、これらのデータを含めて送信すると、図3(b)に例示するように、例えばノートオン信号などの他の信号を示すデータを送信するタイミングが遅れてしまうおそれがある。
なお、ガイドメロディの音色の種別を変更する際には、演奏データから他のデータを挿入可能な領域を検出し、その検出したデータ挿入可能領域へ音響効果を設定するためのデータを挿入することが考えられるが、このようなカラオケ装置においては、ガイドメロディの音色によっては上述の演奏データのデータ挿入可能領域にガイドメロディの残響が存在することがあり、このような残響が存在するときにその音量を変更すると、その残響の音量が変化して違和感が生じるおそれがある。なお、上述のような残響が存在する音色としては、ピアノなどの打鍵する楽器の音色などが挙げられる。
本発明は、このような不具合に鑑みなされたものであり、その目的とするところは、カラオケ装置において、ガイドメロディの音色の種別を変更した際に、音量の変化によって違和感が生じることを防止する技術を提供することにある。
上記課題を解決するためになされた請求項1に係るカラオケ装置は、「データ挿入可能領域のうち残響が存在する部分についてはガイドメロディに関する設定データのうち少なくとも音量設定値を指定する旨の設定データを挿入しないようにすること」を特徴とする。
具体的には、演奏データ記憶手段(16:この欄においては、発明に対する理解を容易にするため、必要に応じて「発明を実施するための最良の形態」欄で用いた符号を付すが、この符号によって請求の範囲を限定することを意味するものではない。)が、音色が指定されたガイドメロディを含み、MIDIデータの形式で作成された演奏データを記憶しており、カラオケ演奏手段(30)が、演奏データ取得手段(12)によって演奏データ記憶手段から取得された演奏データに基づいてカラオケ演奏を行う。また、バッファ(24g)が、演奏データ取得手段によって取得された演奏データを一時的に記憶可能であり、変更データ取得手段(24e)が、ガイドメロディの音色の種別を変更する旨の変更データを取得可能である。また、設定情報対応テーブル記憶手段(24e)が、ガイドメロディの音色の種別とガイドメロディに関する設定内容を示す「ガイドメロディ設定情報」とを対応付けた設定情報対応テーブルを記憶する。
そして、変更データ取得手段によって変更データが取得された場合には、設定情報特定手段(24e)が、その変更データが指示するガイドメロディの音色の種別に対応するガイドメロディ設定情報を、設定情報対応テーブル記憶手段が記憶する設定情報対応テーブルを参照して特定する。一方、データ更新手段(24e)が、バッファに記憶された演奏データからデータ挿入可能領域を検出し、その検出したデータ挿入可能領域へ変更データおよび設定情報特定手段によって特定されたガイドメロディ設定情報を示す設定データを挿入することによってバッファが記憶する演奏データを更新する。なお、ここで「データ挿入可能領域」とは、演奏データのうち変更データやガイドメロディ設定情報を示す設定データを挿入可能な領域を云う。なお、上述のようにデータ挿入可能領域へ変更データおよび設定情報特定手段によって特定された設定データを挿入することによってバッファが記憶する演奏データを更新する際には、データ更新手段が、上述の設定データのうち少なくとも音量設定値であるボリューム設定値またはエクスプレッション設定値の少なくとも何れかを指定する旨の設定データを、データ挿入可能領域のうちガイドメロディの残響が存在する部分へは挿入しないようにする。
さらに、演奏データ転送手段(24e)が、バッファが記憶する演奏データを読み出してカラオケ演奏手段に転送し、カラオケ演奏手段が、演奏データ転送手段によって転送された演奏データに基づいてカラオケ演奏を行う。
従来のカラオケ装置においては、ガイドメロディの音色によっては上述の演奏データのデータ挿入可能領域にガイドメロディの残響が存在することがあり、このような残響が存在するときにその音量を変更すると、その残響の音量が変化して違和感が生じるおそれがある。なお、上述のような残響が存在する音色としては、ピアノなどの打鍵する楽器の音色などが挙げられる。
これに対して本発明によれば、図4に例示するように、データ挿入可能領域のうち残響が存在する部分(残響領域)についてはガイドメロディに関する設定データのうち少なくとも音量設定値を指定する旨の設定データを上述の残響領域へは挿入しないようにする。このことにより、残響領域ではガイドメロディの残響が自然に減衰することとなるので、上述のようにガイドメロディの音色の種別を変更した際に、例えば演奏データのデータ挿入可能領域にガイドメロディの残響が存在する場合でも、音量の変化によって違和感が生じることを防止することができる。
なお、演奏データについては、複数のMIDIトラックで構成されており、これら複数のMIDIトラックのうちの少なくとも一つはガイドメロディ用のトラックとして使用される。
また、上述のように、データ更新手段がガイドメロディに関する設定データのうち少なくとも音量設定値を指定する旨の設定データを残響領域へは挿入しないようにする場合には、次のような手法が考えられる。すなわち、(イ)音量設定値を指定する旨のデータのみを残響領域に挿入しないようにし、例えばエフェクト設定に関する設定データなどそれ以外の設定データを残響領域へ挿入することや、(ロ)音量設定値を指定する旨の設定データ、およびエフェクト設定に関する設定データの一部を残響領域へ挿入しないようにする、(ハ)音量設定値を指定する旨の設定データを含むすべての設定データを残響領域に挿入しないようにすることなどが考えられる。
このうち(イ)音量設定値を指定する旨のデータのみを残響領域に挿入しないようにすれば、データを挿入した後のデータ挿入可能領域を広くすることができる。また、(ロ)音量設定値を指定する旨の設定データ、およびエフェクト設定に関する設定データの一部を残響領域へ挿入しないようにすれば、(イ)と同様に、データを挿入した後のデータ挿入可能領域を広くすることができる。また、(ハ)音量設定値を指定する旨の設定データを含むすべての設定データを残響領域に挿入しないようにすれば、音量設定値を指定する旨の設定データと、例えばエフェクト設定に関する設定データなどそれ以外の設定データとを区別して残響領域に挿入することの可否を判断する必要がないので、上述の(イ)および(ロ)の場合に比べてデータ更新手段が実行する処理のステップ数が少なくなり、データ更新処理を実行するCPUなどの負担を低減することができる。
また、上記課題を解決するためには、残響領域へエクスプレッション設定値を調整する旨の設定データを挿入することが考えられる。具体的には、請求項2のように、上述のようにデータ挿入可能領域へ変更データおよび設定情報特定手段によって特定された設定データを挿入することによってバッファが記憶する演奏データを更新する際には、データ更新手段が、データ挿入可能領域のうちガイドメロディの残響が存在する部分へ、設定データのうちボリューム設定値を指定する旨の設定データ、およびボリューム設定値の変化を相殺するようガイドメロディのエクスプレッション設定値を調整する旨の設定データをこの順にて挿入することが考えられる。
このようにすれば、残響領域でもガイドメロディの残響の音量が変化しないので、上述のようにガイドメロディの音色の種別を変更した際に、例えば演奏データのデータ挿入可能領域にガイドメロディの残響が存在する場合でも、音量の変化によって違和感が生じることを防止することができる。
なお、上述のようにエクスプレッション設定値を調整する旨の設定データを残響領域に挿入した場合には、エクスプレッション設定値を変化させる以前の設定値に戻すために、データ挿入可能領域における残響領域以外の部分へ、エクスプレッション設定値を変化させる以前の設定データを再び挿入することが望ましい。具体的には、請求項3のように、上述のようにデータ挿入可能領域へ変更データおよび設定情報特定手段によって特定された設定データを挿入することによってバッファが記憶する演奏データを更新する際には、データ更新手段が、「データ挿入可能領域のうちガイドメロディの残響が存在する部分」へ、ボリューム設定値を指定する旨の設定データ、およびボリューム設定値の変化を相殺するようガイドメロディのエクスプレッション設定値を調整する旨の設定データをこの順にて挿入し、さらに、「データ挿入可能領域のうちガイドメロディの残響が存在する部分以外」へ、音量設定値をバッファが記憶する演奏データの更新直前のエクスプレッション設定値とするよう指定する旨の第二のエクスプレッション設定データを挿入することが考えられる。
このようにすれば、上述のようにデータ挿入可能領域へ変更データおよび設定情報特定手段によって特定された設定データを挿入することによってバッファが記憶する演奏データを更新する際には、ガイドメロディの音量設定を相殺するよう音量設定し、さらにガイドメロディの変更以前の状態に戻す際にはエクスプレッション設定値が変更以前の状態に戻るようにしておくことで、聴感の違和感を少なくすることができる。
ところで、上述の「データ挿入可能領域」の検出手法としては、ガイドメロディのノートオフ信号とノートオン信号との間の領域をデータ挿入可能領域として検出する手法が挙げられる。しかし、このようなデータ挿入可能領域検出手法においては、例えばガイドメロディに和音が含まれていて複数のノートオン信号が同時に有効となる場合には、その和音を構成する音のノートオフ信号の一つを検出しても、和音を構成する他の音のノートオン信号が有効な状態が維持される。ここで、上述のような手法で検出されたデータ挿入可能領域へ変更データおよび設定データを挿入した場合には、その挿入した変更データおよび設定データによって有効なノートオン信号の音色および音響設定が変更される。このことによってそのガイドメロディの和音の音色および音響設定が演奏中に変更され、違和感を与えるおそれがある。
そこで、データ更新手段が、演奏データのうちガイドメロディの有効なノートオン信号が存在しない領域をデータ挿入可能領域として検出することが考えられる(請求項4)。
このようにすれば、ガイドメロディの和音を構成する全ての音のノートオン信号が無効となってから音色や音響設定を変更するので、例えばガイドメロディに和音が含まれる場合であっても、その和音の音色および音響設定が演奏中に変更されて違和感を与えてしまうといったことを防ぐことができる。
また、上述のデータ挿入可能領域のうちガイドメロディの残響が存在する部分(残響領域)については、ガイドメロディにおいて有効なノートオン信号が存在しなくなった時点から所定時間が経過するまでの間とすることが考えられる(請求項5)。なお、所定時間については、予め実験等によって一つの値を設定する手法や、予め実験等によってガイドメロディの音色ごとに設定する手法などが考えられる。一例を挙げると、ピアノなどの打鍵する楽器については残響領域を大きく設定し、トランペットなど吹奏楽器について残響領域を小さく設定するといった具合である。
また、上述の変更データについては、(ニ)例えば当該カラオケ装置が備える操作部(18)やリモコン端末(2)などから入力される場合や、(ホ)演奏データに含まれる場合が考えられる。このうち(ニ)の場合には、上述の変更データ取得手段が、例えば当該カラオケ装置が備える操作部やリモコン端末などから入力されたガイドメロディの音色の種別を変更する旨のデータを上述の変更データとして取得することが考えられる。また、(ホ)の場合には、上述の変更データ取得手段が、バッファが一時的に記憶する演奏データから変更データを取得することが考えられる。
また、上述のようにバッファが一時的に記憶する演奏データから変更データを取得する手法としては、(ヘ)カラオケ演奏を行う予定の演奏データすべてを演奏データ記憶手段から取得してバッファへ一時的に記憶させ、そのバッファが記憶する演奏データから変更データを検出する手法や、(ト)カラオケ演奏を行う予定の演奏データの取得中に、そのバッファが記憶する演奏データから変更データを検出する手法が考えられる。
このうち、上述の(ヘ)については、変更データ取得手段が、演奏データ取得手段によって演奏データが演奏データ記憶手段から取得されてバッファへ記憶されたのちに、バッファに記憶された演奏データから変更データを検出することによって変更データを取得することが考えられる。
このようにすれば、上述の(ト)の場合に比べて、上述の変更データ検出処理の起動頻度を少なくでき、変更データ取得手段の処理負荷を小さくできる。また、予約曲に対して上述の処理を実行すれば、その予約曲よりも以前に予約された演奏曲の演奏中に上述の処理を行うこともできる。ただし、カラオケ演奏を行う予定の演奏データすべてをバッファへ一時的に記憶させるため、上述の(ト)の場合に比べて、バッファの記憶領域の容量を大きくする必要がある。
また、上述の(ト)については、さらに具体的には、所定時間が経過するごとに変更データ検出処理を実行する手法が考えられる。すなわち、変更データ取得手段が、所定時間が経過するごとにその間にバッファに記憶された演奏データから変更データを検出することによって変更データを取得することが考えられる。
このようにすれば、バッファの記憶領域の容量を小さくすることができる。ただし、上述の変更データ検出処理の実行頻度が多くなり、変更データ取得手段の処理負荷が大きくなる。
以下に本発明の実施形態を図面とともに説明する。
[第一実施形態]
図1は、カラオケシステムの全体構成を示すブロック図である。また、図2は、カラオケシステムの音声制御部の構成を示すブロック図である。また、図3は、MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、(a)は通常演奏時を示し、(b)はガイドメロディ変更時(単純置き換え時)を示す。また、図4は、MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、ガイドメロディ変更時(遅延解消手法その1)を示す。
カラオケシステムは、図1に示すように、カラオケ装置1とリモコン端末2とがデータ通信可能に構成されたものである。
[カラオケ装置1の構成の説明]
カラオケ装置1は、カラオケ装置1全体の動作を制御する制御部12、カラオケ装置1をネットワーク100に接続するためのインタフェース部14、演奏楽曲の伴奏内容および歌詞を示す楽曲データや映像データなどを記憶するハードディスク(HDD)16、複数のキー・スイッチからなる操作部18、リモコン端末2からの赤外線信号を赤外線通信によって受信するための赤外線通信部20、操作部18からの信号を処理する操作処理部22、ハードディスク16に記憶された楽曲データから演奏楽曲のオーディオ信号(音響や音声に関する信号)を生成し、生成されたオーディオ信号およびマイクロフォン26から入力されたオーディオ信号を増幅してスピーカ28へ出力する音声制御部24、制御部12によってHDD16から取得された楽曲データ(演奏データ)に基づきカラオケ演奏を行うMIDI音源30、映像情報を一時的に記憶するビデオRAM32、映像データに基づく映像の再生を制御する映像再生部34、ビデオRAM32に記憶された映像情報および映像再生部34により再生される映像の表示部36での表示を制御する映像制御部38などを備えている。また、制御部12と音声制御部24とはUSB40によって接続されている。また、制御部12は、後述する入力受付処理およびメイン処理の各処理を実行する。
なお、制御部12は、演奏データ取得手段に該当する。また、HDD16は演奏データ記憶手段に該当する。また、MIDI音源30はカラオケ演奏手段に該当する。
[音声制御部24の構成の説明]
カラオケ装置1が備える音声制御部24は、図2に示すように、I/F24b、ROM24c、RAM24d、CPU24e、I/F24f、を備えている。なお、これらI/F24b、ROM24c、RAM24d、CPU24eおよびI/F24fについては、バス24aによって互いに接続されている。また、I/F24bはUSB40を介して制御部12に接続されている。また、I/F24fはMIDI音源30に接続されている。
なお、本実施形態におけるMIDIデータの転送に必要な時間については次のように設定されている。すなわち、REV設定については、REV設定のデータサイズが3バイト(24ビット)であり、且つデータ転送速度が31.25kbpsであることから、0.768secとなるため、本実施形態では約1msecに設定されている。また、VIB設定については、VIB設定のデータサイズが9バイト(24ビット)であり、且つデータ転送速度が31.25kbpsであることから、2.3secとなるため、本実施形態では、約3msecに設定されている。また、本実施形態の説明中および図中の記号「VOL」とは「ボリューム」を示し、また、記号「REV」とは「リバーブ」を示し、記号「VIB」とは「ビブラート」を示す。
また、RAM24dは、制御部12によってHDD16から取得された演奏データを一時的に記憶しておき、編集作業を行うためのワークエリア24g、ワークエリア24gにて編集された演奏データを一時的に記憶しておき、「シリアル送信割込」によって演奏データを順に読み出すためのバッファエリア24h、有効なノートンオン信号を記憶可能なノートオン信号エリア24iを備えている。なお、演奏データについては、複数のMIDIトラックa〜nで構成されており(図3参照)、これら複数のMIDIトラックa〜nのうちの少なくとも一つはガイドメロディ用のトラックとして使用される。
なお、ノートオン信号エリア24iが同時に記憶可能な有効なノートンオン信号の個数については、MIDI音源30における同時発音数に対応して64個に設定されている。
CPU24eは、エフェクト出力テーブルを記憶する(図14参照)。このエフェクト出力テーブルとは、ガイドメロディの音色の種別(VIB設定MIDIコマンドやVOL設定MIDIコマンドなど)とガイドメロディに関する設定内容を示すガイドメロディ設定情報(VIB設定MIDIコマンドやVOL設定MIDIコマンドなどに対応するステップ値)とを対応付けたテーブルを云う。なお、エフェクト出力テーブルは、特許請求の範囲における「設定情報対応テーブル」に該当する。
また、CPU24eは、カラオケ演奏を行う予定の演奏データすべてを制御部12によってHDD16から取得してワークエリア24gへ一時的に記憶させ、そのワークエリア24gが記憶する演奏データから変更データを検出する機能を有する。
また、CPU24eは、後述するメイン処理、演奏処理、送信対象トラック出力処理、およびノートオフチェック・エフェクトテーブルセット処理の各処理を実行することにより、次のような機能を有する。すなわち、CPU24eは、変更データが取得された場合には、その変更データが指示するガイドメロディの音色の種別に対応するガイドメロディ設定情報を、エフェクト出力テーブルを参照して特定する。さらに、CPU24eは、ワークエリア24gに記憶された演奏データから「データ挿入可能領域」を検出し、その検出したデータ挿入可能領域へ変更データおよびガイドメロディ設定情報を示す「設定データ」を挿入することによってワークエリア24gが記憶する演奏データを更新する。なお、ここで「データ挿入可能領域」とは、演奏データのうち変更データやガイドメロディ設定情報を示す設定データを挿入可能な領域を云う(図4参照)。なお、上述のようにデータ挿入可能領域へ変更データおよび設定データを挿入する際には、CPU24eは、上述の設定データのうち少なくとも音量設定値を指定する旨の設定データを、データ挿入可能領域のうちガイドメロディの残響が存在する部分(残響領域)へは挿入しないようにする。本実施形態では、ボリューム設定値を指定する旨の設定データのみを上述の残響領域に挿入しないようにしている(図4参照)。また、上述の残響領域については、ガイドメロディにおいて有効なノートオン信号が存在しなくなった時点から所定時間(残響時間)が経過するまでの間とする。なお、残響時間については、現在の音色の種別に基づき、CPU24eが記憶する音色変更時残響時間テーブル(図15参照)を参照して特定する。この音色変更時残響時間テーブルは、音色と残響時間とを対応付けたテーブルである。一例を挙げると、ピアノなどの打鍵する楽器については残響領域を大きく設定し、トランペットなど吹奏楽器について残響領域を小さく設定するといった具合である。
さらに、CPU24eは、ワークエリア24gが記憶する演奏データを読み出し、その読み出した演奏データをバッファエリア24hへ一時的に記憶しておき、「シリアル送信割込」によって演奏データをバッファエリア24hから順に読み出してMIDI音源30へI/F24fを介して転送する。なお、音声制御部24のCPU24eによって演奏データがMIDI音源30へ転送された場合には、MIDI音源30が、その演奏データに基づいてカラオケ演奏を行う。
なお、ワークエリア24gはバッファに該当する。また、音声制御部24のCPU24eは、設定情報対応テーブル記憶手段、変更データ取得手段、設定情報特定手段、データ更新手段およびデータ転送手段に該当する。
[リモコン端末2の構成の説明]
リモコン端末2は、リモコン端末2全体の動作を制御する制御部52、カラオケ装置1に赤外線信号を赤外線通信によって送信する赤外線通信部54、各種情報を記憶するメモリ56、表示部58の表示領域に沿って設置されるタッチパネルおよび複数のキー・スイッチからなる操作部60、操作部60からの信号を処理する操作処理部62、映像情報を一時的に記憶するビデオRAM64、ビデオRAM64に記憶された映像情報の表示部58での表示を制御する映像制御部66、ネットワーク100に接続された無線アクセスポイント110との間で無線LAN規格(例えば、IEEE802.11a/b/g規格,HomeRF規格,Bluetooth規格など)に従った無線通信を行うための無線LAN通信部68、などを備えている。
[カラオケ装置1の制御部12の入力受付処理]
以下に、カラオケ装置1の制御部12により実行される入力受付処理の処理手順を図6のフローチャートに基づいて説明する。この入力受付処理は、カラオケ装置1が起動している間に繰り返し実行される。
まず、ステップS110では、利用者が予約したカラオケ演奏曲の選曲情報を記憶するための選曲テーブルを初期化する(図14(b)参照)。
続くS120では、利用者によって操作部18を介して選曲情報の入力があったか否かを判断する。操作部18を介して選曲情報の入力がなかった場合には(S120:No)、再び本S120を繰り返し実行することにより、利用者によって操作部18を介して選曲情報の入力があるまで待機する。一方、操作部18を介して選曲情報の入力があった場合には(S120:Yes)S130へ移行する。
S130では、上述の選曲テーブルの記憶内容が一杯であるか否かを判断する。上述の選曲テーブルの記憶内容が一杯である場合には(S130:Yes)、演奏が終了するなどにより選曲テーブルの記憶内容に空きスペースが生じるまでは新たな選曲情報は記憶できないため、再びS120に戻ってS120以降の処理を繰り返し実行する。一方、上述の選曲テーブルの記憶内容が一杯であると判断した場合には(S130:No)、S140へ移行する。
S140では、先のS120にて操作部18を介して入力された選曲情報を選曲テーブルに登録する。そして、S120へ移行する。
[カラオケ装置1の制御部12のメイン処理]
以下に、カラオケ装置1の制御部12により実行されるメイン処理の処理手順を図7のフローチャートに基づいて説明する。このメイン処理は、カラオケ装置1が起動している間に繰り返し実行される。また、本メイン処理と上述の入力受付処理とは、制御部12においてマルチタスク処理によって並行して非同期で実行される。
まず、ステップS210では、各種初期化処理を実行する。一例を挙げると、操作部18を入力待ちにするといった具合である。
続くS220では、選曲待ちの際にBGMとして演奏するためのBGMデータを、HDD16から読み出して音声制御部24にUSB40を介して送信する。
続くS230では、先のS220にて音声制御部24に対して送信したBGMデータを再生する旨の指示を音声制御部24に送信する。
続くS240では、上述の入力受付処理のS140において選曲テーブルに選曲情報の入力が行われたか否かを判断する。選曲テーブルに選曲情報の入力が行われた場合には(S240:Yes)、後述するS260へ移行する。一方、選曲テーブルに選曲情報の入力が行われてはいない場合には(S240:No)、S250へ移行する。
S250では、音声制御部24によるBGMデータの演奏が終了しているか否かを判断する。音声制御部24によるBGMデータの演奏が終了していない場合には(S250:No)、S240に戻る。一方、音声制御部24によるBGMデータの演奏が終了している場合には(S250:Yes)、選曲待ちの間に次のBGMデータを音声制御部24に送信して演奏させるため、S220へ移行する。
さて、先のS240において選曲テーブルに選曲情報の入力が行われた場合へ移行するS260では、選曲テーブルに入力された選曲情報に基づいて楽曲の演奏を行うため、BGMデータの演奏を中止する旨の指示を音声制御部24に送信する。
続くS270では、選曲テーブルの記憶領域における先頭部分が空いている状態であるか否かを判断する。選曲テーブルの記憶領域における先頭部分が空いている状態である場合には(S270:Yes)、選曲待ちであると判断し、その間BGMデータの演奏を行うためにS220へ移行する。一方、選曲テーブルの記憶領域における先頭部分が空いておらず選曲情報が登録されている場合には(S270:No)、S280へ移行する。
S280では、選曲テーブルの記憶領域における先頭部分に登録された選曲情報が曲番号であるのか否かを判断する。選曲テーブルの記憶領域における先頭部分に登録された選曲情報が曲番号ではない場合には(S280:No)、S270へ移行する。一方、選曲テーブルの記憶領域における先頭部分に登録された選曲情報が曲番号であると判断された場合には(S280:Yes)、S290へ移行する。
S290では、選曲テーブルの記憶領域における先頭部分に登録された選曲情報である曲番号に該当する演奏データをHDD16から読み出して音声制御部24に送信する。
続くS300では、ガイドメロディの設定を変更するか否かを判断する。なお、ガイドメロディの設定を変更する旨の指示については、操作部18やリモコン端末、外部のホストコンピュータなどを介して入力される。ガイドメロディの設定を変更しないと判断した場合には(S300:No)、S310を処理せずにS320へ移行する。一方、ガイドメロディの設定を変更すると判断した場合には(S300:Yes)、ガイドメロディを変更する旨を音声制御部24に送信してS320へ移行する。
S320では、先のS290にて音声制御部24に送信した演奏データの演奏を開始するため、その旨を示す指示を音声制御部24に送信する。
続くS330では、選曲テーブルの記憶領域における先頭部分を初期化して空いている状態として他の記憶内容を順次繰り上げる。
続くS340では、音声制御部24による演奏データの演奏が終了しているか否かを判断する。音声制御部24による演奏データの演奏が終了していない場合には(S340:No)、本S340を繰り返し実行することによりその演奏データの演奏が終了するまで待機する。一方、音声制御部24による演奏データの演奏が終了している場合には(S340:Yes)、次の演奏データを音声制御部24に送信して演奏させるため、S270へ移行する。
[カラオケ装置1の音声制御部24のメイン処理]
以下に、カラオケ装置1の音声制御部24により実行されるメイン処理の処理手順を図8のフローチャートに基づいて説明する。
このメイン処理は、カラオケ装置1が起動している間に繰り返し実行される。
まず、ステップS610では、制御部12から演奏データが送信されているか否かを判断する。制御部12から演奏データが送信されていると判断した場合には(S610:Yes)その演奏データを受信する。そして、複数のトラックで構成されるMIDI形式の演奏データ(図3(a)参照)をMIDI転送バイト列(図4参照)に変換してRAM24dのワークエリア24gに格納する。
一方、制御部12から演奏データが送信されていないと判断した場合には(S610:No)、S620へ移行する。
S620では、制御部12からガイドメロディを変更する旨の指示が送信されているか否かを判断する。制御部12からガイドメロディを変更する旨の指示が送信されていると判断した場合には(S620:Yes)、その指示を受信してRAM24dのワークエリア24gに格納する。一方、制御部12からガイドメロディを変更する旨の指示が送信されていないと判断した場合には(S620:No)、S630へ移行する。
S630では、制御部12から演奏データの演奏を開始する旨の指示が送信されているか否かを判断する。制御部12から演奏データの演奏を開始する旨の指示が送信されていないと判断した場合には(S630:No)、S610へ移行する。一方、制御部12から演奏データの演奏を開始する旨の指示が送信されていると判断した場合には(S630:Yes)、S640へ移行する。
S640では、演奏データの受信が完了しているか否かを判断する。演奏データの受信が完了していないと判断した場合には(S640:No)、S610へ移行する。一方、演奏データの受信が完了していると判断した場合には(S640:Yes)、後述する演奏処理を実行する(S650)。そして、演奏処理が終了したらその旨を示す情報を制御部12に送信し、先のS625にてRAM24dのワークエリア24gに格納したガイドメロディを変更する旨の指示を消去する。そして、S610へ移行して以下のステップを繰り返し実行する。
[カラオケ装置1の音声制御部24の演奏処理]
以下に、カラオケ装置1の音声制御部24により実行される演奏処理の処理手順を図9のフローチャート、図3および図4に基づいて説明する。なお、図3は、MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、(a)は通常演奏時を示し、(b)はガイドメロディ変更時(単純置き換え時)を示す。また、図4は、MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、ガイドメロディ変更時(遅延解消手法その1)を示す。この演奏処理は、音声制御部24のメイン処理において、S650へ移行した際に実行される。
まず、ステップS710では、テンポ値より1ステップ当たりの時間を算出する。
続くS715では、「演奏前一括展開処理」を実行する。ここで「演奏前一括展開処理」とは、演奏予定の演奏データすべてをRAM24dのワークエリア24gに一旦格納し、ガイドメロディの設定を変更する旨の指示に従って、格納した演奏データへガイドメロディの設定を変更する旨の各種データを挿入することで更新する処理である。なお、演奏前一括展開処理については後述する。
続くS720では、音源の設定やボリューム値などの演奏に関するパラメータなどについて初期化処理を実行する。
続くS725では、現在のステップ値を数値「0」とし、エフェクト出力テーブルより出力データを決定し(S730)、その決定したデータを出力する(S740)。
S755では、現在のステップ値に数値「1」を加算する。
S760では、1ステップ分の時間待機する。そして、S765へ移行する。
S765では、制御部12から演奏データの演奏を中止する旨の指示が送信されているか否かを判断する。制御部12から演奏データの演奏を中止する旨の指示が送信されていると判断した場合には(S765:Yes)本処理を終了する。一方、制御部12から演奏データの演奏を中止する旨の指示が送信されていないと判断した場合には(S765:No)、S770へ移行する。
S770では、上述のS715にて実行した「演奏前一括展開処理」によって処理された演奏データの演奏が終了したか否かを判断する。該当演奏データの演奏が終了していないと判断した場合には(S770:No)、S730へ移行して以下の処理を繰り返し実行する。一方、該当演奏データの演奏が終了したと判断した場合には(S770:Yes)、本処理を終了する。
[カラオケ装置1の音声制御部24の演奏前一括展開処理]
以下に、カラオケ装置1の音声制御部24により実行される演奏前一括展開処理の処理手順を図10のフローチャートに基づいて説明する。この演奏前一括展開処理とは、上述のように、演奏予定の演奏データすべてをRAM24dのワークエリア24gに一旦格納し、ガイドメロディの設定を変更する旨の指示に従って、格納した演奏データへガイドメロディの設定を変更する旨の各種データを挿入することで更新する処理であり、上述の音声制御部24の演奏処理において、S715へ移行した際に実行される。
まず、S1705では、各トラック先頭のアドレスを、各トラック別に「ポインタ変数(現在の読み込み位置)」に格納する。なお、上述のテンポ値とは、BPM(Beat Per Minute)で表される数値である。また、上述のポインタ変数とは、全トラックにおいて、各トラック先頭のアドレスをトラック毎の読み出し位置として設定するための変数を云う。
続くS1710では、現在のステップ値をゼロとし、送信対象トラックを第1トラックに設定し(S1715)、送信対象トラックの出力処理を実行する(S1720)。なお、この「送信対象トラックの出力処理」については後述する。
続くS1725では、送信対象トラックを次のトラックに設定する。
続くS1730では、全てのトラックを送信対象トラックとしたか否かを判断する。全てのトラックを送信対象トラックとはしていないと判断した場合には(S1730:No)、S1720へ移行して以下の処理を繰り返し実行する。一方、全てのトラックを送信対象トラックとしたと判断した場合には(S1730:Yes)、S1735へ移行する。
S1735では、エフェクト出力テーブル(図14(a)参照)を参照して、現在のステップ値と同一の値を有するデータが存在するか否かを判断する。現在のステップ値と同一の値を有するデータが存在する場合には(S1735:Yes)、当該データを読み出してRAM24dのワークエリア24gに記憶させ(S1740)、S1745に移行する。一方、現在のステップ値と同一の値を有するデータが存在しない場合には(S1735:No)、そのままS1745に移行する。
S1745では、現在のステップ値に数値「1」を加算する。
続くS1755では、制御部12から演奏データの演奏を中止する旨の指示が送信されているか否かを判断する。制御部12から演奏データの演奏を中止する旨の指示が送信されていると判断した場合には(S1755:Yes)本処理を終了する。一方、制御部12から演奏データの演奏を中止する旨の指示が送信されていないと判断した場合には(S1755:No)、S1760へ移行する。
S1760では、全てのトラックについて各トラックの終端まで到達しているか否かを判断する。全てのトラックについて各トラックの終端まで到達していないと判断した場合には(S1760:No)、S1715へ移行して以下の処理を繰り返し実行する。一方、全てのトラックについて各トラックの終端まで到達していると判断した場合には(S1760:Yes)、本処理を終了する。
[カラオケ装置1の音声制御部24の送信対象トラック出力処理]
以下に、カラオケ装置1の音声制御部24により実行される送信対象トラック出力処理の処理手順を図11のフローチャートおよび図12のフローチャートに基づいて説明する。この送信対象トラック出力処理は、上述の音声制御部24の演奏前一括展開処理において、S1720へ移行した際に実行される。
まず、ステップS805では、送信対象トラックにおいて、演奏がトラックの終端まで到達しているか否かを判断する。演奏がトラックの終端まで到達していると判断した場合には(S805:Yes)本処理を終了する。一方、演奏がトラックの終端まで到達していないと判断した場合には(S805:No)、S810へ移行する。
S810では、現在の読み込み位置のデータ(現在位置データ)のデルタタイムを数値「1」減算する。
続くS815では、現在位置データのデルタタイムが数値「0」であるか否かを判断する。現在位置データのデルタタイムが数値「0」ではないと判断した場合には(S815:No)、本処理を終了する。一方、現在位置データのデルタタイムが数値「0」であると判断した場合には(S815:Yes)、S820へ移行する。
S820では、当該トラックの属性がガイドメロディであるか否かを判断する。当該トラックの属性がガイドメロディではないと判断した場合には(S820:No)、現在の読込位置のデータをRAM24dのワークエリア24gに記憶させ(S825)、後述するS885へ移行する。一方、当該トラックの属性がガイドメロディであると判断した場合には(S820:Yes)、S835へ移行する。
S835では、当該トラックにおける音色がビブラフォンであるか否かを判断する。当該トラックにおける音色がビブラフォンではないと判断した場合には(S835:No)、音色変更時残響時間テーブル(図14参照)を参照して、現在の音色に対応する残響時間を読み出し(S836)、その読み出した残響時間を内蔵RAMに記憶させる(S837)。そして、S825へ移行する。一方、当該トラックにおける音色がビブラフォンであると判断した場合には(S835:Yes)、S840へ移行する。
S840では、読み込んだデータがノートオン信号を示すデータであるか否かを判断する。読み込んだデータがノートオン信号を示すデータであると判断した場合には(S840:Yes)、該当ノートオン信号を、RAM24dのノートオン信号エリア24iが記憶するノートオンテーブルに追加し(S845)、S825へ移行する。一方、読み込んだデータがノートオン信号を示すデータではないと判断した場合には(S840:No)、S850へ移行する。なお、ノートオンテーブルとは、現在有効なガイドメロディのノートオン信号を記録するテーブルを云い、RAM24dのノートオン信号エリア24iに保存されている。
S850では、読み込んだデータが、音色MAPまたは音色BANKの何れか一方を示すデータであるか否かを判断する。読み込んだデータが音色MAPまたは音色BANKの何れか一方を示すデータであると判断した場合には(S850:Yes)、現在位置のデータのパラメータを、指定値に置換してRAM24dのワークエリア24gに記憶させるとともに(S855)、音色変更時残響時間テーブル(図14参照)を参照して、現在の音色に対応する残響時間を読み出し(S867)、その読み出した残響時間を内蔵RAMに記憶させる(S868)。そして、後述するS885へ移行する。一方、読み込んだデータが音色MAPまたは音色BANKの何れか一方を示すデータではないと判断した場合には(S850:No)、S860へ移行する。
S860では、読み込んだデータが音色設定に関するデータであるか否かを判断する。読み込んだデータが音色設定に関するデータではないと判断した場合には(S860:No)、後述するS870へ移行する。一方、読み込んだデータが音色設定に関するデータであると判断した場合には(S860:Yes)、S861へ移行する。
S861では、現在位置のデータのパラメータを指定値に置換してRAM24dのワークエリア24gに記憶させ、音色変更時残響時間テーブル(図14参照)を参照して、現在の音色に対応する残響時間を読み出す(S892)。
続く862では、先に置換したボリューム設定値を出力したか否かを判断する。先に置換したボリューム設定値を出力したと判断した場合には(S862:Yes)、後述するS864へ移行する。一方、先に置換したボリューム設定値を出力していないと判断した場合には(S862:No)、ボリューム設定値を新たに指定値に設定してRAM24dのワークエリア24gに記憶させ(S863)、S864へ移行する。
S864では、先に置換したビブラート設定値を出力したか否かを判断する。先に置換したビブラート設定値を出力したと判断した場合には(S864:Yes)、後述するS885へ移行する。一方、先に置換したビブラート設定値を出力していないと判断した場合には(S864:No)、ビブラート設定値を新たに指定値に設定してRAM24dのワークエリア24gに記憶させ(S865)、音色を変更した旨を内蔵するRAM等に記憶し(S866)、後述するS885へ移行する。
さて、S870では、読み込んだデータがボリューム設定値またはビブラート設定値の何れか一方であるか否かを判断する。読み込んだデータがボリューム設定値またはビブラート設定値の何れか一方ではないと判断した場合には(S870:No)、読み込んだデータがノートオフ信号を示すデータであるか否かを判断する(S876)。読み込んだデータがノートオフ信号を示すデータであると判断した場合には(S876:Yes)、現在のデータ、およびノートオフに対応したノートオン信号テーブル上にあるノートオン信号を削除し(S877)、後述するノートオフチェック・エフェクトテーブルセット処理を実行し(S878)、後述するS880へ移行する。そして、現在のデータをRAM24dのワークエリア24gにそのまま記憶させ(S880)、後述するS885に移行する。一方、読み込んだデータがノートオフ信号を示すデータではないと判断した場合には(S876:No)、後述するノートオフチェック・エフェクトテーブルセット処理を実行せずにそのままS880へ移行し、現在のデータをRAM24dのワークエリア24gにそのまま記憶させる。そして、後述するS885に移行する。
ところで、先のS870にて、読み込んだデータがボリューム設定値またはビブラート設定値の何れか一方であると判断した場合には(S870:Yes)、現在位置のデータのパラメータを、指定値に置換してRAM24dのワークエリア24gに記憶させ(S855)、該当する設定が置換済みである旨をRAM24dのワークエリア24gに記憶させる(S874)。そしてS885へ移行する。
また、S885では、データを読み込む位置を1ステップ分進行させる。そしてS815へ移行して以下の処理を繰り返し実行する。
[カラオケ装置1の音声制御部24のノートオフチェック・エフェクトテーブルセット処理]
以下に、カラオケ装置1の音声制御部24により実行されるノートオフチェック・エフェクトテーブルセット処理の処理手順を図13のフローチャートに基づいて説明する。このノートオフチェック・エフェクトテーブルセット処理は、音声制御部24が実行する送信対象トラック出力処理において、S878へ移行した際に実行される。
まず、ステップS1802では、同一トラックで別音高の信号が、RAM24dのノートオン信号エリア24iが記憶するノートオン信号テーブルに存在するか否かを判断する。同一トラックで別音高の信号がノートオン信号テーブルに存在する場合には(S1802:Yes)、そのまま本処理を終了する。一方、同一トラックで別音高の信号がノートオン信号テーブルに存在しない場合には(S1802:No)、S1804に移行する。
S1804では、次のノートオン信号を検出するまで現在のトラックを検索する。
続くS1806では、先のS1804にてノートオン信号を検出するまでの間に、該当トラックにおいてビブラフォンへの音色の変更があったか否かを判断する。該当トラックにおいてビブラフォンへの音色の変更がなかった場合には(S1806:No)、そのまま本処理を終了する。一方、該当トラックにおいてビブラフォンへの音色の変更があった場合には(S1802:Yes)、S1807に移行する。
なお、サブルーチン内でステップ値の数値を変更すると、処理進行中のメインプログラムで使用中のステップ値の数値が変わる。よって、サブルーチン処理が終了するまではメインプログラムのステップ値の数値を保護する必要がある。よって、サブルーチン内でステップ値とは別のステップ値(仮想ステップ値)を用意し、サブルーチン終了直前に仮想ステップ値を出力テーブルに設定する。以下に手順を示す。
S1807では、先の送信対象トラック出力処理で内蔵RAMに記憶した現在の音色の残響時間を読み出し、その読み出した残響時間をステップ値に換算する。これは曲の進行がステップ値によって行われることに基づく。
続くS1808では、仮想ステップ値に現在のステップ値を設定する。
続くS1810では、エフェクト出力テーブル(図14(a)参照)のすべてのステップ値エリアを、未セット状態に初期化する。
続くS1812では、仮想ステップ値に数値「1」を加算する。
続くS1814では、ガイドメロディのトラックにノートオン信号が出現したか否かを判断する。ガイドメロディのトラックにノートオン信号が出現していない場合には(S1814:No)、全てのトラックにおいてMIDIコマンド処理が存在しないか否かを判断する(S1816)。全てのトラックにおいてMIDIコマンド処理が存在する場合には(S1816:No)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、全てのトラックにおいてMIDIコマンド処理が存在しない場合には(S1816:Yes)、エフェクト出力テーブルの最も上の未セットデータがVOL設定に関するものであるか否かを判断する(S1817)。エフェクト出力テーブルの最も上の未セットデータがVOL設定に関するものではない場合には(S1817:No)、エフェクト出力テーブルの最も上の未セットデータに仮想ステップ値を設定し(S1818)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、エフェクト出力テーブルの最も上の未セットデータがVOL設定に関するものである場合には(S1817:Yes)、仮想ステップ値が残響を考慮した時間であるか否かを判断する(S1840)。仮想ステップ値が残響を考慮した時間ではない、つまり、残響時間よりも仮想ステップ値の数値の方が小さい場合には(S1840:No)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、仮想ステップ値が残響を考慮した時間である、つまり、残響時間よりも仮想ステップ値の数値の方が大きい場合には(S1840:Yes)、エフェクト出力テーブルの最も上の未セットデータに仮想ステップ値を設定し(S1818)、S1812に戻ってS1812以下の処理を繰り返し実行する。
一方、ガイドメロディのトラックにノートオン信号が出現している場合には(S1814:Yes)、エフェクト出力テーブルの全てのデータにステップ値が設定されたか否かを判断する(S1820)。エフェクト出力テーブルの全てのデータにステップ値が設定されている場合には(S1820:Yes)そのまま本処理を終了し、エフェクト出力テーブルの全てのデータにステップ値が設定されていない場合には(S1820:No)、S1838に移行する。
S1838では、エフェクト出力テーブルの最も上の未セットデータから順に、直前のデータのステップ値に数値「1」を加算した値を設定する。そして、本処理を終了する。
[第一実施形態の効果]
(1)このように第一実施形態のカラオケ装置1によれば、次のような効果を奏する。すなわち、従来のカラオケ装置においては、ガイドメロディの音色の種別を変更する旨の「変更データ」に対応するガイドメロディ設定情報については、本来演奏データには含まれないため(図3(a)参照)、これらのデータを含めて音声制御部24がMIDI音源30へMIDIデータを送信すると、例えばノートオン信号などの他の信号を示すデータを送信するタイミングが遅れてしまうおそれがある(図3(b)参照)。これに対して本実施形態のカラオケ装置1によれば、CPU24eが、メイン処理、演奏処理、送信対象トラック出力処理、およびノートオフチェック・エフェクトテーブルセット処理の各処理を実行することにより、ガイドメロディの音色の種別を変更する際にその音色の種別に対応するよう音響効果の各種設定を変更する場合には、音声制御部24のワークエリア24gが一時的に記憶する演奏データから「データ挿入可能領域」を検出し、その検出したデータ挿入可能領域へ変更データおよび設定データを挿入する(図4参照)。なお、このようにデータ挿入可能領域へ変更データおよび設定データを挿入する際には、CPU24eが、音量設定値であるボリューム設定値またはエクスプレッション設定値の少なくとも何れかを指定する旨の設定データのみを残響領域へ挿入しないようにしている。このことにより、残響領域ではガイドメロディの残響が自然に減衰することとなるので、ガイドメロディの音色の種別を変更した際に、例えば演奏データのデータ挿入可能領域にガイドメロディの残響が存在する場合でも、音量の変化によって違和感が生じることを防止することができる。
(2)また、第一実施形態のカラオケ装置1によれば、データ挿入可能領域へ変更データおよび設定データを挿入することによってワークエリア24gが記憶する演奏データを更新する際には、CPU24eが、上述のように音量設定値であるボリューム設定値またはエクスプレッション設定値の少なくとも何れかを指定する旨の設定データのみを上述の残響領域に挿入しないようにしているので、データを挿入した後のデータ挿入可能領域を広くすることができる。
(3)また、第一実施形態のカラオケ装置1によれば、CPU24eが、「演奏処理」のサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理」を実行することによって、演奏データのうちガイドメロディの有効なノートオン信号が存在しない領域を「データ挿入可能領域」として検出する。このことにより、ガイドメロディの和音を構成する全ての音のノートオン信号が無効となってから音色や音響設定を変更するので、例えばガイドメロディに和音が含まれる場合であっても、その和音の音色および音響設定が演奏中に変更されて違和感を与えてしまうといったことを防ぐことができる。
[第二実施形態]
上記第一実施形態では、データ挿入可能領域へ変更データおよび設定データを挿入することによってワークエリア24gが記憶する演奏データを更新する際には、CPU24eが、演奏処理のサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理(1)」を実行することによって、ボリューム設定値を指定する旨の設定データのみを上述の残響領域に挿入しないようにしている(図4参照)。これに対して第二実施形態では、データ挿入可能領域へ変更データおよび設定データを挿入することによってワークエリア24gが記憶する演奏データを更新する際には、CPU24eが、演奏処理のサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理(2)」を実行することによって、ボリューム設定値を指定する旨の設定データを含むすべての設定データを上述の残響領域に挿入しないようにしている(図5参照)。
[カラオケ装置1の音声制御部24のノートオフチェック・エフェクトテーブルセット処理]
以下に、カラオケ装置1の音声制御部24により実行されるノートオフチェック・エフェクトテーブルセット処理の処理手順を図16のフローチャートに基づいて説明する。このノートオフチェック・エフェクトテーブルセット処理は、音声制御部24が実行する送信対象トラック出力処理において、S878へ移行した際に実行される。
この第二実施形態で実行されるノートオフチェック・エフェクトテーブルセット処理では、S1807にて内蔵RAMから読み出した現在の音色の残響時間をステップ値に換算したのちに、S1809にてその換算したステップ値を現在のステップ値に加えたものを仮想ステップ値に設定しており、この点が、S1807にて内蔵RAMから読み出した現在の音色の残響時間をステップ値に換算したのちに、S1808にて現在のステップ値を仮想ステップ値に設定する第一実施形態のノートオフチェック・エフェクトテーブルセット処理とは異なる。
また、この第二実施形態で実行されるノートオフチェック・エフェクトテーブルセット処理では、S1816にて全てのトラックにおいてMIDIコマンド処理が存在しない場合には(S1816:Yes)、エフェクト出力テーブルの最も上の未セットデータに仮想ステップ値を設定し(S1818)、S1812に戻ってS1812以下の処理を繰り返し実行しており、この点が、S1816にて全てのトラックにおいてMIDIコマンド処理が存在しない場合には(S1816:Yes)、S1817にてエフェクト出力テーブルの最も上の未セットデータがVOL設定に関するものであるか否かを判断し、さらに、エフェクト出力テーブルの最も上の未セットデータがVOL設定に関するものである場合には(S1817:Yes)、S1840にて仮想ステップ値が残響を考慮した時間であるか否かを判断する第一実施形態のノートオフチェック・エフェクトテーブルセット処理とは異なる。
[第二実施形態の効果]
このように第二実施形態によれば、CPU24eが、データ挿入可能領域へ変更データおよび設定データを挿入することによってワークエリア24gが記憶する演奏データを更新する際には、演奏処理のサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理(2)」(図16参照)を実行することによって、ボリューム設定値を指定する旨の設定データを含むすべての設定データを上述の残響領域に挿入しないようにしている。このことにより、ボリューム設定値を指定する旨の設定データと、例えばエフェクト設定に関する設定データなどそれ以外の設定データとを区別して残響領域に挿入することの可否を判断する必要がなく、例えばボリューム設定値を指定する旨のデータのみを残響領域に挿入しないようにする場合やボリューム設定値を指定する旨の設定データ、およびエフェクト設定に関する設定データの一部を残響領域へ挿入しないようにする場合に比べてCPU24eが実行する処理のステップ数が少なくなり、計算が単純化するとともにデータ更新処理を実行するCPUなどの負担を低減することができる。
[第三実施形態]
上記第一実施形態では、CPU24eが、演奏処理のサブルーチンである「演奏前一括展開処理」を実行することによって、カラオケ演奏を行う予定の演奏データすべてをHDD16から取得してRAM24dのワークエリア24gへ一時的に記憶させ、そのワークエリア24gが記憶する演奏データから変更データを検出するが、これに対して第三実施形態では、CPU24eが、上述の「演奏前一括展開処理」の代わりに「「演奏中逐次一括処理」(図17参照)を実行することによって、カラオケ演奏を行う予定の演奏データをHDD16から取得してRAM24dのワークエリア24gへ一時的に記憶させている途中に、そのワークエリア24gが記憶する演奏データから変更データを検出する。
[カラオケ装置1の音声制御部24の演奏中逐次一括処理]
以下に、カラオケ装置1の音声制御部24により実行される演奏中逐次一括処理の処理手順を図17のフローチャートを参照して説明する。
この演奏中逐次一括処理は、上述の音声制御部24の演奏処理において、S715へ移行した際に実行される。
まず、S910では、テンポ値より1ステップ当たりの時間を算出する。
続くS915では、各トラック先頭のアドレスを、各トラック別に「ポインタ変数(現在の読み込み位置)」に格納する。
続くS920では、音源の設定やボリューム値などの演奏に関するパラメータなどについて初期化処理を実行する。
続くS925では、現在のステップ値をゼロとし、送信対象トラックを第1トラックに設定し(S935)、送信対象トラックの出力処理を実行する(S940)。なお、この「送信対象トラックの出力処理」については、既に説明したのでここでは詳細な説明は省略する。
続く945では、送信対象トラックを次のトラックに設定する。
続くS950では、全てのトラックを送信対象トラックとしたか否かを判断する。全てのトラックを送信対象トラックとはしていないと判断した場合には(S950:No)、S940へ移行して以下の処理を繰り返し実行する。一方、全てのトラックを送信対象トラックとしたと判断した場合には(S950:Yes)、S952へ移行する。
S952では、エフェクト出力テーブル(図14(a)参照)を参照して、現在のステップ値と同一の値を有するデータが存在するか否かを判断する。現在のステップ値と同一の値を有するデータが存在する場合には(S952:Yes)、当該データを読み出してRAM24dのワークエリア24gに記憶させ(S954)、S955に移行する。一方、現在のステップ値と同一の値を有するデータが存在しない場合には(S954:No)、そのままS955に移行する。
S955では、現在のステップ値に数値「1」を加算する。
続くS960では、1ステップ分の時間待機する。
続くS965は、制御部12から演奏データの演奏を中止する旨の指示が送信されているか否かを判断する。制御部12から演奏データの演奏を中止する旨の指示が送信されていると判断した場合には(S965:Yes)本処理を終了する。一方、制御部12から演奏データの演奏を中止する旨の指示が送信されていないと判断した場合には(S965:No)、S970へ移行する。
S970では、全てのトラックについて各トラックの終端まで到達しているか否かを判断する。全てのトラックについて各トラックの終端まで到達していないと判断した場合には(S970:No)、S935へ移行して以下の処理を繰り返し実行する。一方、全てのトラックについて各トラックの終端まで到達していると判断した場合には(S970:Yes)、本処理を終了する。
[第三実施形態の効果]
このように第三実施形態によれば、CPU24eが、「演奏処理」のサブルーチンである「演奏中逐次一括処理」を実行することによって、カラオケ演奏を行う予定の演奏データをHDD16から取得してRAM24dのワークエリア24gへ一時的に記憶させている途中に、そのワークエリア24gが記憶する演奏データから変更データを検出する。このようにすれば、RAM24dのワークエリア24gの記憶領域の容量を小さくすることができる。ただし、変更データ検出処理の実行頻度が多くなり、上述のCPU24eにおける変更データ取得処理実行領域の処理負荷が大きくなる。
[第四実施形態]
上記第三実施形態では、ガイドメロディの音色の種別を変更する際にその音色の種別に対応するよう音響効果の各種設定を変更する場合には、CPU24eが、「演奏処理」のサブルーチンである「演奏中逐次一括処理(1)を実行することにより、音声制御部24のワークエリア24gが一時的に記憶する演奏データから「データ挿入可能領域」を検出し、その検出したデータ挿入可能領域へ変更データおよび設定データを挿入する(図4参照)。これに対して第四実施形態では、ガイドメロディの音色の種別を変更する際にその音色の種別に対応するよう音響効果の各種設定を変更する場合には、CPU24eが、「演奏処理」のサブルーチンである「演奏中逐次一括処理(2)」を実行することにより、設定データのうちボリューム設定値を指定する旨の設定データ、およびボリューム設定値を指定する旨の設定データに対応してガイドメロディのエクスプレッション設定値を調整する旨の設定データを残響領域へこの順にて挿入する。
また、CPU24eが、図14に示すエフェクト出力テーブル(1)の代わりに、図25(a)に示すエフェクト出力テーブル(2)を記憶するとともに、EXP設定MIDIコマンドを記憶するためのエクスプレッション出力エリアその1(図25(b)参照)、同じくEXP設定MIDIコマンドを記憶するためのエクスプレッション出力エリアその2(図25(a)参照)、現在のボリューム設定値を記憶するための現在VOL設定記憶エリア(図25(c)参照)、および現在のエクスプレッション設定値を記憶するための現在EXP設定記憶エリア(図25(d)参照)を有している。
[カラオケ装置1の音声制御部24の演奏中逐次一括処理]
以下に、カラオケ装置1の音声制御部24により実行される演奏中逐次一括処理の処理手順を図19のフローチャートを参照して説明する。
この演奏中逐次一括処理は、上述の音声制御部24の演奏処理において、S715へ移行した際に実行される。
この第四実施形態で実行される演奏中逐次一括処理は、次の点が第三実施形態で実行される演奏中逐次一括処理とは異なる。
・S935を実行した後に、S940にてサブルーチンである「送信対象トラックの出力処理(1)」を実行する代わりに、S942にてサブルーチンである「送信対象トラックの出力処理(2)」(後述)を実行する。
・S952を実行した後に、S954にて該当データを内蔵RAMに記憶する代わりに、S975にてサブルーチンである「エフェクト出力処理」(後述)を実行する。
[カラオケ装置1の音声制御部24の送信対象トラック出力処理(2)]
以下に、カラオケ装置1の音声制御部24により実行される送信対象トラック出力処理(2)の処理手順を図20のフローチャートおよび図21のフローチャートに基づいて説明する。この送信対象トラック出力処理は、上述の音声制御部24の演奏中逐次一括処理において、S942へ移行した際に実行される。
この第四実施形態で実行される送信対象トラック出力処理(2)は、次の点が第三実施形態で実行される送信対象トラック出力処理(1)とは異なる。
・S820にてトラックの属性がガイドメロディであると判断された場合には(S820:YES)、サブルーチンであるVOL設定・EXP設定記憶処理(S832)を実行し、その後S835を実行する。
・S876を実行した後に、S878にてサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理(1)を実行する代わりに、S879にてサブルーチンである「ノートオフチェック・エフェクトテーブルセット処理(2)」(後述)を実行する。
以下に、VOL設定・EXP設定記憶処理、およびノートオフチェック・エフェクトテーブルセット処理(2)について順に説明する。
[カラオケ装置1の音声制御部24のVOL設定・EXP設定記憶処理]
以下に、カラオケ装置1の音声制御部24により実行されるVOL設定・EXP設定記憶処理の処理手順を図23のフローチャートに基づいて説明する。このVOL設定・EXP設定記憶処理は、上述の音声制御部24の送信対象トラック出力処理において、S832へ移行した際に実行される。
まず、S1010では、現在のデータがボリューム設定に関するデータであるか否かを判断する。現在のデータがボリューム設定に関するデータである場合には(S1010:Yes)、そのボリューム設定に関するデータが示す値を内蔵RAMに記憶させ(S1020)、本処理を終了する。一方、現在のデータがボリューム設定に関するデータではない場合には(S1010:No)、S1030に移行する。
S1030では、現在のデータがエクスプレッション設定に関するデータであるか否かを判断する。現在のデータがエクスプレッション設定に関するデータである場合には(S1030:Yes)、そのエクスプレッション設定に関するデータが示す値を内蔵RAMに記憶させ(S1040)、本処理を終了する。一方、現在のデータがエクスプレッション設定に関するデータである場合には(S1030:Yes)、そのまま本処理を終了する。
[カラオケ装置1の音声制御部24のノートオフチェック・エフェクトテーブルセット処理(3)]
以下に、カラオケ装置1の音声制御部24により実行されるノートオフチェック・エフェクトテーブルセット処理(3)の処理手順を図22のフローチャートに基づいて説明する。このノートオフチェック・エフェクトテーブルセット処理は、音声制御部24が実行する送信対象トラック出力処理において、S879へ移行した際に実行される。
この第四実施形態で実行されるノートオフチェック・エフェクトテーブルセット処理では、S1802〜S1816、S1820およびS1838の各処理が第三実施形態で実行されるノートオフチェック・エフェクトテーブルセット処理と同様の処理である。そして、S1816において全てのトラックにおいてMIDIコマンド処理が存在しないか否かを判断した際に、全てのトラックにおいてMIDIコマンド処理が存在する場合には(S1816:No)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、全てのトラックにおいてMIDIコマンド処理が存在しない場合には(S1816:Yes)、エフェクト出力テーブル(2)(図25(a)参照)の最も上の未セットデータがエクスプレッション設定に関するものであるか否かを判断する(S1842)。
エフェクト出力テーブルの最も上の未セットデータがエクスプレッション設定に関するものである場合には(S1842:Yes)、エクスプレッション出力エリア(2)に対してステップ値が設定されているか否かを判断する(S1826)。エクスプレッション出力エリア(2)に対してステップ値が設定されている場合には(S1826:YES)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、エクスプレッション出力エリア(2)に対してステップ値が設定されていない場合には(S1826:NO)、仮想ステップ値が残響を考慮した時間であるか否かを判断する(S1840)。仮想ステップ値が残響を考慮した時間ではない場合には(S1840:No)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、仮想ステップ値が残響を考慮した時間である場合には(S1840:Yes)、エクスプレッション出力エリア(2)に仮想ステップ値を設定し(S1828)、S1812に戻ってS1812以下の処理を繰り返し実行する。
一方、先のS1842にてエフェクト出力テーブルの最も上の未セットデータがエクスプレッション設定に関するものではない場合には(S1842:No)、エフェクト出力テーブルの最も上の未セットデータがボリューム設定に関するものであるか否かを判断する(S1817)。エフェクト出力テーブルの最も上の未セットデータがボリューム設定に関するものではない場合には(S1817:No)、エフェクト出力テーブルの最も上の未セットデータに仮想ステップ値を設定し(S1818)、S1812に戻ってS1812以下の処理を繰り返し実行する。一方、エフェクト出力テーブルの最も上の未セットデータがボリューム設定に関するものである場合には(S1817:Yes)、該当ボリューム設定の設定値よりエクスプレッション設定値を次の数式(1)を用いて算出し、EXP出力エリアにおけるEXP設定MIDIコマンド領域に反映させる(S1844)。そして、エフェクト出力テーブルの最も上の未セットデータに仮想ステップ値を設定し(S1818)、S1812に戻ってS1812以下の処理を繰り返し実行する。

EXP2=EXP1×VOL1/VOL2・・・(1)

但し、VOL1とは変更前のボリューム設定値であり、EXP1とは変更前のエクスプレッション設定値であり、VOL2とは変更後のボリューム設定値であり、EXP2とは変更後のエクスプレッション設定値である。なお、図18中のEXP3とは、最終的なエクスプレッション値として挿入されたエクスプレッション設定値であり、エクスプレッション出力エリアその2(図25(a)参照)に記憶される。なお、EXP3は、特許請求の範囲における「第二のエクスプレッション」に該当する。
一方、先のS1814にてガイドメロディのトラックにノートオン信号が出現している場合には(S1814:Yes)、エフェクト出力テーブルの全てのデータにステップ値が設定されたか否かを判断する(S1820)。エフェクト出力テーブルの全てのデータにステップ値が設定されている場合には(S1820:Yes)、エクスプレッション出力エリア(2)に対してステップ値が設定されているか否かを判断する(S1822)。
エクスプレッション出力エリア(2)に対してステップ値が設定されている場合には(S1822:YES)、そのまま本処理を終了する。一方、一方、エクスプレッション出力エリア(2)に対してステップ値が設定されていない場合には(S1822:NO)、エクスプレッション出力エリア(2)に、直前のデータのステップ値に数値「1」を加算した値を設定する(S1824)。そして、本処理を終了する。
一方、先のS1820にてエフェクト出力テーブルの全てのデータにステップ値が設定されていない場合には(S1820:No)、S1838に移行する。
S1838では、エフェクト出力テーブルの最も上の未セットデータから順に、直前のデータのステップ値に数値「1」を加算した値を設定する。そして、本処理を終了する。
[カラオケ装置1の音声制御部24のエフェクト出力処理]
以下に、カラオケ装置1の音声制御部24により実行されるエフェクト出力処理の処理手順を図25のフローチャートに基づいて説明する。このエフェクト出力処理は、上述の音声制御部24の演奏中逐次一括処理において、S975へ移行した際に実行される。
まず、S1110では、該当データがボリューム設定に関するデータであるか否かを判断する。該当データがボリューム設定に関するデータではない場合には(S1010:No)、その該当データを内蔵RAMに記憶させ(S1120)、本処理を終了する。一方、該当データがボリューム設定に関するデータである場合には(S1110:Yes)、S1130に移行する。
S1130では、変更前のボリューム設定値(VOL1)の値が変更後のボリューム設定値(VOL2)の値よりも大きいか否かを判断する。VOL1の値がVOL2の値よりも大きい場合には(S1130:Yes)、EXP出力エリアのMIDIコマンドを内蔵RAMに記憶させ(S1140)、該当データ(VOL設定MIDIコマンド)を内蔵RAMに記憶させる(S1150)。そして、本処理を終了する。一方、VOL1の値がVOL2の値よりも大きくない場合には(S1130:No)、該当データであるVOL設定MIDIコマンドを内蔵RAMに記憶させ(S1160)、EXP出力エリアのMIDIコマンドを内蔵RAMに記憶させる(S1170)。そして、本処理を終了する。
[第四実施形態の効果]
このように第四実施形態によれば、CPU24eが、「演奏処理」のサブルーチンである「演奏中逐次一括処理(2)を実行することにより、設定データのうちボリューム設定値を指定する旨の設定データ、およびボリューム設定値の変化を相殺するようガイドメロディのエクスプレッション設定値を調整する旨の設定データを残響領域へこの順にて挿入する。このことにより、ガイドメロディのボリューム設定値の変化を相殺するようガイドメロディのエクスプレッション設定値を調整することで残響領域でもガイドメロディの残響の音量が変化しないので、上述のようにガイドメロディの音色の種別を変更した際に、例えば演奏データのデータ挿入可能領域にガイドメロディの残響が存在する場合でも、音量の変化によって違和感が生じることを防止することができる。
(2)また、第四実施形態のカラオケ装置1によれば、上述のようにエクスプレッション設定値を調整する旨の設定データを残響領域へ挿入した際には、エクスプレッション設定値を変化前の設定値に戻すために、データ挿入可能領域における残響領域以外の部分へ変化前の設定データを再び挿入する。このことにより、ガイドメロディのボリューム設定値の変化を相殺するようガイドメロディのエクスプレッション設定値を調整しても、さらにガイドメロディの変更以前の状態に戻す際にはエクスプレッション設定値が変更以前の状態に戻るようにしておくことで、聴感の違和感を少なくすることができる。
[他の実施形態]
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、以下のような様々な態様にて実施することが可能である。
(1)上記実施形態では、演奏データのうちガイドメロディの有効なノートオン信号が存在しない領域を「データ挿入可能領域」として検出しているが、これには限られず、ガイドメロディのノートオフ信号とノートオン信号との間の領域を「データ挿入可能領域」として検出してもよい。
(2)上記第一実施形態では、CPU24eが、「演奏処理」のサブルーチンである「演奏前一括展開処理」を実行することによって、カラオケ演奏を行う予定の演奏データを制御部12によってHDD16から取得してワークエリア24gへ一時的に記憶させ、そのワークエリア24gが記憶する演奏データから変更データを検出するが、これには限られず、例えばカラオケ装置1が備える操作部18やリモコン端末2などから入力された変更データを取得するようにしてもよい。
(3)上記第一実施形態では、データ挿入可能領域へ変更データおよび設定データを挿入することによってワークエリア24gが記憶する演奏データを更新する際には、CPU24eが、音量設定値であるボリューム設定値またはエクスプレッション設定値の少なくとも何れかを指定する旨の設定データのみを上述の残響領域に挿入しないようにしているが(図4参照)、これには限られず、例えば、CPU24eが、ボリューム設定値を指定する旨の設定データ、およびエフェクト設定に関する設定データの一部を残響領域へ挿入しないようにしてもよい。このようにしても、同様にデータを挿入した後のデータ挿入可能領域を広くすることができる。
カラオケシステムの全体構成を示すブロック図である。 カラオケシステムの音声制御部の構成を示すブロック図である。 MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、(a)は通常演奏時を示し、(b)はガイドメロディ変更時(単純置き換え時)を示す。 MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、ガイドメロディ変更時(その1)を示す。 MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、ガイドメロディ変更時(その2)を示す。 カラオケ装置の制御部が実行する入力受付処理を示すフローチャートである。 カラオケ装置の制御部が実行するメイン処理を示すフローチャートである。 カラオケ装置の音声制御部が実行するメイン処理を示すフローチャートである。 カラオケ装置の音声制御部が実行する演奏処理を示すフローチャートである。 カラオケ装置の音声制御部が実行する演奏前一括展開処理を示すフローチャートである。 カラオケ装置の音声制御部が実行する送信対象トラック出力処理(1−1)を示すフローチャートである。 カラオケ装置の音声制御部が実行する送信対象トラック出力処理(1−2)を示すフローチャートである。 カラオケ装置の音声制御部が実行するノートオフチェックおよびエフェクトテーブルセット処理(1)を示すフローチャートである。 (a)はエフェクト出力テーブルを示す説明図(1)であり、(b)は選曲テーブルを示す説明図である。 音色変更時残響時間テーブルを示す説明図である。 カラオケ装置の音声制御部が実行するノートオフチェックおよびエフェクトテーブルセット処理(2)を示すフローチャートである。 カラオケ装置の音声制御部が実行する演奏処理(演奏中逐次一括処理(1))を示すフローチャートである。 MIDIデータを構成する各トラックおよびMIDIデータ列を示す説明図であり、ガイドメロディ変更時(その3)を示す。 カラオケ装置の音声制御部が実行する演奏処理(演奏中逐次一括処理(2))を示すフローチャートである。 カラオケ装置の音声制御部が実行する送信対象トラック出力処理(2−1)を示すフローチャートである。 カラオケ装置の音声制御部が実行する送信対象トラック出力処理(2−2)を示すフローチャートである。 カラオケ装置の音声制御部が実行するノートオフチェックおよびエフェクトテーブルセット処理(3)を示すフローチャートである。 カラオケ装置の音声制御部が実行するVOL設定・EXP設定記憶処理を示すフローチャートである。 カラオケ装置の音声制御部が実行するエフェクト出力処理を示すフローチャートである。 (a)はエフェクト出力テーブル(2)およびエクスプレッション出力エリア(2)を示す説明図であり、(b)はエクスプレッション出力エリア(1)を示す説明図であり、(c)は現在VOL設定記憶エリアを示す説明図であり、(d)は現在EXP設定記憶エリアを示す説明図である。
符号の説明
1…カラオケ装置、2…リモコン端末、12…制御部、14…インタフェース部、16…ハードディスク(HDD)、18…操作部、20…赤外線通信部、22…操作処理部、24…音声制御部、24a…バス、24b,24f…I/F、24c…ROM、24d…RAM、24e…CPU、24g…ワークエリア、24h…バッファエリア、24i…ノートオン信号エリア、26…マイクロフォン、28…スピーカ、30…MIDI音源、32,64…ビデオRAM、34…映像再生部、36…表示部、38…映像制御部、52…制御部、54…赤外線通信部、56…メモリ、58…表示部、60…操作部、62…操作処理部、66…映像制御部、68…無線LAN通信部、100…ネットワーク、110…無線アクセスポイント

Claims (5)

  1. 音色が指定されたガイドメロディを含み、MIDIデータの形式で作成された演奏データを記憶する演奏データ記憶手段と、
    前記演奏データを前記演奏データ記憶手段から取得可能な演奏データ取得手段と、
    前記演奏データ取得手段によって取得された演奏データに基づいてカラオケ演奏を行うカラオケ演奏手段と、
    を備えるカラオケ装置であって、
    前記演奏データ取得手段によって取得された演奏データを一時的に記憶可能なバッファと、
    前記ガイドメロディの音色の種別と前記ガイドメロディに関する設定内容を示すガイドメロディ設定情報とを対応付けた設定情報対応テーブルを記憶する設定情報対応テーブル記憶手段と、
    前記ガイドメロディの音色の種別を変更する旨の変更データを取得可能な変更データ取得手段と、
    前記変更データ取得手段によって変更データが取得された場合に、その変更データが指示するガイドメロディの音色の種別に対応するガイドメロディ設定情報を、前記設定情報対応テーブル記憶手段が記憶する前記設定情報対応テーブルを参照して特定する設定情報特定手段と、
    前記変更データ取得手段によって変更データが取得された場合に、前記バッファに記憶された演奏データから前記変更データおよび前記ガイドメロディ設定情報を示す設定データを挿入可能な領域を検出し、その検出したデータ挿入可能領域へ前記変更データおよび前記設定情報特定手段によって特定された設定データを挿入することによって前記バッファが記憶する演奏データを更新するデータ更新手段と、
    前記バッファが記憶する演奏データを読み出して前記カラオケ演奏手段に転送する演奏データ転送手段と、を備え、
    前記データ更新手段は、前記データ挿入可能領域へ前記変更データおよび前記設定情報特定手段によって特定された設定データを挿入することによって前記バッファが記憶する演奏データを更新する際には、前記設定データのうち少なくとも音量設定値であるボリューム設定値またはエクスプレッション設定値の少なくとも何れかを指定する旨の設定データを、前記データ挿入可能領域のうち前記ガイドメロディの残響が存在する部分へは挿入しないようにし、
    前記カラオケ演奏手段は、前記演奏データ転送手段によって転送された演奏データに基づいてカラオケ演奏を行うこと
    を特徴とするカラオケ装置。
  2. 音色が指定されたガイドメロディを含み、MIDIデータの形式で作成された演奏データを記憶する演奏データ記憶手段と、
    前記演奏データを前記演奏データ記憶手段から取得可能な演奏データ取得手段と、
    前記演奏データ取得手段によって取得された演奏データに基づいてカラオケ演奏を行うカラオケ演奏手段と、
    を備えるカラオケ装置であって、
    前記演奏データ取得手段によって取得された演奏データを一時的に記憶可能なバッファと、
    前記ガイドメロディの音色の種別と前記ガイドメロディに関する設定内容を示すガイドメロディ設定情報とを対応付けた設定情報対応テーブルを記憶する設定情報対応テーブル記憶手段と、
    前記ガイドメロディの音色の種別を変更する旨の変更データを取得可能な変更データ取得手段と、
    前記変更データ取得手段によって変更データが取得された場合に、その変更データが指示するガイドメロディの音色の種別に対応するガイドメロディ設定情報を、前記設定情報対応テーブル記憶手段が記憶する前記設定情報対応テーブルを参照して特定する設定情報特定手段と、
    前記変更データ取得手段によって変更データが取得された場合に、前記バッファに記憶された演奏データから前記変更データおよび前記ガイドメロディ設定情報を示す設定データを挿入可能な領域を検出し、その検出したデータ挿入可能領域へ前記変更データおよび前記設定情報特定手段によって特定された設定データを挿入することによって前記バッファが記憶する演奏データを更新するデータ更新手段と、
    前記バッファが記憶する演奏データを読み出して前記カラオケ演奏手段に転送する演奏データ転送手段と、を備え、
    前記データ更新手段は、前記データ挿入可能領域へ前記変更データおよび前記設定情報特定手段によって特定された設定データを挿入することによって前記バッファが記憶する演奏データを更新する際には、前記データ挿入可能領域のうち前記ガイドメロディの残響が存在する部分へ、前記設定データのうち前記ボリューム設定値を指定する旨の設定データ、および前記ボリューム設定値の変化を相殺するよう前記ガイドメロディのエクスプレッション設定値を調整する旨の設定データをこの順にて挿入し、
    前記カラオケ演奏手段は、前記演奏データ転送手段によって転送された演奏データに基づいてカラオケ演奏を行うこと
    を特徴とするカラオケ装置。
  3. 請求項2に記載のカラオケ装置において、
    前記データ更新手段は、前記データ挿入可能領域へ前記変更データおよび前記設定情報特定手段によって特定された設定データを挿入することによって前記バッファが記憶する演奏データを更新する際には、前記データ挿入可能領域のうち前記ガイドメロディの残響が存在する部分へ、前記ボリューム設定値を指定する旨の設定データ、および前記ボリューム設定値の変化を相殺するよう前記ガイドメロディのエクスプレッション設定値を調整する旨の設定データをこの順にて挿入し、さらに、前記データ挿入可能領域のうち前記ガイドメロディの残響が存在する部分以外へ、前記音量設定値を前記バッファが記憶する演奏データの更新直前のエクスプレッション設定値とするよう指定する旨の第二のエクスプレッション設定データを挿入することを特徴とするカラオケ装置。
  4. 請求項1〜請求項3の何れかに記載のカラオケ装置において、
    前記データ更新手段は、前記演奏データのうち、前記ガイドメロディにおいて有効なノートオン信号が存在しない領域を前記データ挿入可能領域として検出することを特徴とするカラオケ装置。
  5. 請求項4に記載のカラオケ装置において、
    前記データ更新手段は、前記データ挿入可能領域のうち、前記ガイドメロディにおいて有効なノートオン信号が存在しなくなった時から所定時間が経過するまでの間を、前記データ挿入可能領域のうちガイドメロディの残響が存在する部分として検出することを特徴とするカラオケ装置。
JP2005173670A 2005-06-14 2005-06-14 カラオケ装置 Expired - Fee Related JP4120664B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005173670A JP4120664B2 (ja) 2005-06-14 2005-06-14 カラオケ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005173670A JP4120664B2 (ja) 2005-06-14 2005-06-14 カラオケ装置

Publications (2)

Publication Number Publication Date
JP2006349821A JP2006349821A (ja) 2006-12-28
JP4120664B2 true JP4120664B2 (ja) 2008-07-16

Family

ID=37645782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005173670A Expired - Fee Related JP4120664B2 (ja) 2005-06-14 2005-06-14 カラオケ装置

Country Status (1)

Country Link
JP (1) JP4120664B2 (ja)

Also Published As

Publication number Publication date
JP2006349821A (ja) 2006-12-28

Similar Documents

Publication Publication Date Title
JP3072452B2 (ja) カラオケ装置
US5834670A (en) Karaoke apparatus, speech reproducing apparatus, and recorded medium used therefor
EP3379527B1 (en) Musical sound generation device, musical sound generation method and electronic instrument
US6525256B2 (en) Method of compressing a midi file
CN108630178B (zh) 乐音生成装置、乐音生成方法、记录介质及电子乐器
JP2000156039A (ja) マルチトラック記録再生方式及び装置
JPH06268774A (ja) カラオケ制御装置
JP7131668B2 (ja) 楽音発生装置、電子楽器、楽音発生方法、及びプログラム
JP4120664B2 (ja) カラオケ装置
JP4144604B2 (ja) カラオケ装置およびプログラム
JP4089695B2 (ja) カラオケ装置およびプログラム
JP2006337553A (ja) カラオケ装置およびプログラム
US5691495A (en) Electronic musical instrument with synchronized control on generation of musical tones
JP4100420B2 (ja) カラオケ装置
JP2008233736A (ja) カラオケ装置およびカラオケ情報処理のプログラム
JP3637196B2 (ja) 音楽再生装置
JP2000310991A (ja) カラオケ装置
JP5754404B2 (ja) Midi演奏装置
JP4148206B2 (ja) カラオケ装置およびプログラム
JP2003050591A (ja) 演奏出力装置
JP3658661B2 (ja) データ受信装置、及びデータ送信装置
JP4215354B2 (ja) 電子楽器
JP6264660B2 (ja) 音源制御装置、カラオケ装置、音源制御プログラム
JP3855908B2 (ja) 演奏データ作成装置及びプログラム
JP2012220511A (ja) 楽曲再生装置、楽曲再生方法及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080304

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: 20080401

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080414

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

Free format text: PAYMENT UNTIL: 20110509

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4120664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120509

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120509

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130509

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130509

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140509

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees