(57)【特許請求の範囲】
【請求項１】
第１のビット数で量子化して得られた第１のデータを、順次第２のビット数に拡張した第２のデータに変換するデータ変換手段を備え、前記第１のデータ及び第２のデータは、共に負数が２の補数で表現される形式のデータであり、それぞれの最大値をとり得るデータであり、最小値は共に−１であり、かつ最大値は共に＋１より小さい値であり、第１のビット数の第１のデータの最大値は、第１のビット数より大きい第２のビット数の第２のデータの最大値より小であり、
前記データ変換手段は、
今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値が最大値でない場合、該最大値の下位側に０を付加して前記第２のビット数による値としたときの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行うことを特徴とするデータ変換装置。
【請求項２】
前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値も最大値である場合、前記第２のデータの最大値となるように、今回の変換を行うことを特徴とする請求項１記載のデータ変換装置。
【請求項３】
前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値も最大値であり、前々回の変換に係る第１のデータの値が最大値でない場合、前回の変換に係る第２のデータの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行うことを特徴とする請求項１又は２記載のデータ変換装置。
【請求項４】
前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、次回の変換に係る第１のデータの値も最大値である場合、前記第２のデータの最大値となるように、今回の変換を行うことを特徴とする請求項１〜３のいずれか１項に記載のデータ変換装置。
【請求項５】
前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回及び前々回の変換に係る第１のデータの値も最大値である場合、前記第２のデータの最大値となるように、今回の変換を行うことを特徴とする請求項１〜４のいずれか１項に記載のデータ変換装置。
【請求項６】
コンピュータを、請求項１〜５のいずれか１項に記載のデータ変換装置におけるデータ変換手段として機能させることを特徴とするデータ変換プログラム。
【請求項７】
第１のビット数で量子化して得られた第１のデータを、順次第２のビット数に拡張した第２のデータに変換するデータ変換手段を備え、前記第１のデータ及び第２のデータは、共に負数が２の補数で表現される形式のデータであり、それぞれの最大値をとり得るデータであり、最小値は共に−１であり、かつ最大値は共に＋１より小さい値であり、第１のビット数の第１のデータの最大値は、第１のビット数より大きい第２のビット数の第２のデータの最大値より小であるデータ変換装置におけるデータ変換方法であって、
前記データ変換手段が、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値が最大値でない場合、該最大値の下位側に０を付加して前記第２のビット数による値としたときの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行う変換工程を具備することを特徴とするデータ変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第１のビット数で構成される各データを、第１のビット数よりも多い第２のビット数で構成されるデータに順次変換するデータ変換装置、該データ変換装置としてコンピュータを機能させるデータ変換プログラム、及び該データ変換装置におけるデータ変換方法に関する。
【背景技術】
【０００２】
従来、コンパクトディスク（以下、「ＣＤ」という。）に記録されるデータに関する規格の１つとして、サンプリング周波数を４４．１[ｋＨｚ]とし、量子化ビット数を１６ビットとしたものが用いられている。このように、ＣＤ等のデジタルデータの大きさは、１〜−１の値に対応させた１６ビット表現を使用して表している。すなわち、１〜−１の値を、量子化ビット数で表現可能な数値の数で分割し、それぞれに対応する１６ビットの数値を求めることにより符号化を行うようにしている。ＣＤの場合には、１〜−１の値を符号ビットを除いた２の１５乗の精度で分割して量子化を行うようにしている。つまり、一般的には、図１１のように、本来の値である１〜−１の値に対して、１６ビットの数値０ｘ７ＦＦＦ〜０ｘ８０００を対応させている。なお、量子化ビット数を２４ビットとする場合には、同図のように、０ｘ７ＦＦＦＦＦ〜０ｘ８０００００が対応する。
【０００３】
図１２はＣＤへの記録を行う記録装置の構成を示す。同図に示すように、ＣＤ１２３への記録に際しては、左右のチャンネルの音声信号は、１６ビットのＡＤコンバータ１２１により１６ビットのデジタル信号に変換される。このデジタル信号が、書込み手段１２２によりＣＤ１２３に書き込まれる。このとき、図１５に示すようにＡＤコンバータ１２１に入力することができる最大電圧をＶｄｄとし、ＡＤコンバータ１２１へのアナログ音声信号による入力電圧をＶｉｎとすると、１６ビットの０ｘ０００１に対応する電圧はＶｄｄを２の１５乗で除した値とされ、Ｖｉｎはこの値の何倍になるかによって表現される。すなわちＡＤコンバータ１２１は入力されるアナログ音声信号を次式により符号化して、１６ビットのデジタル信号に変換する。その際、Ｖｄｄを２の１５乗で分割した電圧以下の小さな電圧の変化は丸められることになる。また、Ｖｉｎ＝Ｖｄｄの場合、０ｘ８０００となるが、ＭＳＢビットは符号ビットであるため、丸められて０ｘ７ＦＦＦとなる。
【数１】
0005239387.tif 000002
【０００４】
なお、このように、入力データを丸めて出力する装置としては、たとえば特許文献１に記載された装置が知られている。この装置においては、たとえば入力データを、分解能を１／４に低下させて出力するとすれば、まず、最初の入力データを基準値とし、これを４で除して余りを切り捨てるか又は四捨五入することにより丸めて出力し、その後の入力データについては、前記基準値からの変化が４未満であれば、出力データは変化させることなく基準値を丸めた値とし、前記基準値からの変化が４以上となったとき、出力データをそのときの入力データを丸めた値に変更するとともに基準値をその入力データに更新するようにしている。つまり、入力データにおいて分解能の低下分に相当する変化があった場合にのみ出力データの変更を有効とするようにして、滑らかな出力データの変化を確保するようにしている。
【０００５】
また、特許文献２には、ｚビットの入力データをｚ／２ビットのデータに丸める技術が記載されている。この技術においては、使用されているビットに応じ、丸めるために削除するビットを定めるようにしている。
【０００６】
図１３は、ＣＤに記録された音声を再生する再生装置の基本構成を示す。再生に際しては、ＣＤ１３３に記録されている音声信号が、サーボ機構１３４を介して、１６ビットのデータとして読み出され、２４ビットのＤＡコンバータ１３５によりアナログ信号に変換される。アナログ信号は、アンプ及びボリューム１３６を経て、スピーカ１３７を駆動する。
【０００７】
近年のデジタル信号処理ＩＣであるＤＳＰ（デジタルシグナルプロセッサ）やＤＡコンバータは、ビット精度が向上しており、ＤＡコンバータ１３５のように２４ビットのものが主流となっている。ＣＤ１３３からの１６ビットのデータを２４ビットのＤＡコンバータ１３５に入力するためには、１６ビットのデータを２４ビットのデータに変換する必要がある。そこで、図１４に示すように、上位１６ビットのデータをＣＤ１３３からのデータとし、下位８ビットを０として２４ビットのデータとすることにより、ＣＤ１３３からのデータを２４ビットのデータに変換するようにしている。同図においては、本来の値である１〜−１の値に対応する１６ビットのＣＤデータ、及びＤＡコンバータやＤＳＰで使用される変換後の２４ビットデータが示されている。
【０００８】
【特許文献１】特開平５−３５２５８号公報
【特許文献１】特開２００７−２８００８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述のように、アナログ音声信号をＣＤ規格の１６ビットで表現するとき、表現できない中間の値は丸められる。その際、２４ビットで表現すれば０ｘ７ＦＦＤ８０〜０ｘ７ＦＦＥ７Ｆの範囲の値に対応するアナログ音声信号は、０ｘ７ＦＦＥに丸められるが、０ｘ７ＦＦＥ８０〜０ｘ７ＦＦＦ７Ｆ及び０ｘ７ＦＦＦ８０〜０ｘ７ＦＦＦＦＦの範囲のアナログ音声信号は０ｘ７ＦＦＦに丸められることになる。
【００１０】
つまり、１６ビットで表現できる値に丸められる際、０ｘ７ＦＦＦ以外の値に丸められる値のとり得る幅は０ｘ００００ＦＦであるが、０ｘ７ＦＦＦに丸められる値のとり得る幅は０ｘ０００１７Ｆとなる。したがって、０ｘ７ＦＦＦに丸められる場合の誤差幅は、他の値に丸められる場合よりも大きい。
【００１１】
したがって、図１４のように、ＣＤからの１６ビットのデータを、単にその下位側に０を付加することによって２４ビットのデータに変換すると、ＣＤからの０ｘ７ＦＦＦのデータに含まれているかもしれない大きな誤差幅が、そのまま２４ビットのデータに承継されることになる。また、ＣＤからのデータが０ｘ７ＦＦＦである場合、その値は表現し得る最大値であるため、音声のクリップが生じていることも考えられる。クリップが生じている場合には、本来の値に対する誤差はさらに大きくなる。
【００１２】
また、ＣＤからのデータが０ｘ８０００である場合には、２４ビットに変換したデータは最小値である０ｘ８０００００となるが、この場合も、大きな誤差幅がそのまま２４ビットのデータに承継されてしまうという問題がある。
【００１３】
本発明の目的は、このような従来技術の問題点に鑑み、所定の量子化ビット数により量子化して得られたデータを、よりビット数の多いデータに変換する際に、量子化による丸め誤差を極力改善することができる技術を提供することにある。
【課題を解決するための手段】
【００１４】
この目的を達成するため、第１の発明に係るデータ変換装置は、第１のビット数で量子化して得られた第１のデータを、順次第２のビット数に拡張した第２のデータに変換するデータ変換手段を備え、前記第１のデータ及び第２のデータは、共に負数が２の補数で表現される形式のデータであり、それぞれの最大値をとり得るデータであり、最小値は共に−１であり、かつ最大値は共に＋１より小さい値であり、第１のビット数の第１のデータの最大値は、第１のビット数より大きい第２のビット数の第２のデータの最大値より小であり、前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値が最大値でない場合、該最大値の下位側に０を付加して前記第２のビット数による値としたときの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行うことを特徴とする。
【００１５】
この構成において、第１のデータの値が最大値である場合、該第の１データに丸められた本来のアナログ信号のとり得る範囲の平均値は、第２のデータで考えた場合、該第１のデータの下位側に０を付加することにより第２のビット数のデータとしたものの値よりも大きい。本発明では、該第１のデータの前又は後の第１データの値に応じた値となるように変換を行うようにしているので、第２のデータを前記アナログ信号に対し、より近いものとすることができる。つまり、第２のデータへの変換に当たり、第１のデータが内包する丸め誤差を改善することができる。
【００１８】
第２の発明に係るデータ変換装置は、第１発明において、前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値も最大値である場合、前記第２のデータの最大値となるように、今回の変換を行うことを特徴とする。
【００１９】
第３の発明に係るデータ変換装置は、第１又は第２の発明において、前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値も最大値であり、前々回の変換に係る第１のデータの値が最大値でない場合、前回の変換に係る第２のデータの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行うことを特徴とする。
【００２０】
第４の発明に係るデータ変換装置は、第１〜第３のいずれかの発明において、前記第２変換手段は、次回の変換に係る第１データの値が前記第１最大値でない場合、前記第１最大値の下位側に０を付加して前記第２ビット数による値とした場合の値と、前記第２最大値との間の値となるように、今回の変換を行うことを特徴とする。
【００２１】
第５の発明に係るデータ変換装置は、第１〜第４のいずれかの発明において、前記データ変換手段は、今回の変換に係る第１のデータの値が最大値であり、次回の変換に係る第１のデータの値も最大値である場合、前記第２のデータの最大値となるように、今回の変換を行うことを特徴とする。
【００２３】
第６の発明に係るデータ変換プログラムは、コンピュータを、第１〜第５のいずれかの発明に係るデータ変換装置におけるデータ変換手段として機能させることを特徴とする。
【００２４】
第７の発明に係るデータ変換方法は、第１のビット数で量子化して得られた第１のデータを、順次第２のビット数に拡張した第２のデータに変換するデータ変換手段を備え、前記第１のデータ及び第２のデータは、共に負数が２の補数で表現される形式のデータであり、それぞれの最大値をとり得るデータであり、最小値は共に−１であり、かつ最大値は共に＋１より小さい値であり、第１のビット数の第１のデータの最大値は、第１のビット数より大きい第２のビット数の第２のデータの最大値より小であるデータ変換装置におけるデータ変換方法であって、前記データ変換手段が、今回の変換に係る第１のデータの値が最大値であり、前回の変換に係る第１のデータの値が最大値でない場合、該最大値の下位側に０を付加して前記第２のビット数による値としたときの値と、前記第２のデータの最大値との間の値となるように、今回の変換を行う変換工程を具備することを特徴とする。
【発明の効果】
【００２５】
本発明によれば、第１のデータの値が最大値である場合、該第１のデータの前又は後の第１データの値に応じた値となるように、該第１データを第２データに変換するようにしたため、本来のアナログ信号に対する第２データにおける誤差を極力減少させることができる。
【発明を実施するための最良の形態】
【００２６】
図１は、本発明の一実施形態に係る再生装置の構成を示すブロック図である。同図に示すように、この装置は、ＣＤ１１から１６ビットのデータを読み出すためのサーボ機構１２、サーボ機構１２を介して読み出された１６ビットデータを２４ビットのデータに変換するＤＳＰ１３、ＤＳＰ１３からの２４ビットデータをアナログ信号に変換するＤＡコンバータ１４、及びＤＡコンバータ１４からのアナログ信号についての増幅及びゲイン調整を行うためのアンプ及びボリューム１５、アンプ及びボリューム１５からの音声信号を音声に変換するスピーカ１６を備える。なお、ＤＳＰ１３に入力される１６ビットデータはステレオの左右チャンネルの信号を含んでおり、ＤＡコンバータ１４からスピーカ１６までにおける信号の処理は、左右チャンネルの信号毎に行われる。
【００２７】
ＤＳＰ１３はデジタル入出力部１３ａを介して入力されるＣＤ１１からの１６ビットデータが０ｘ７ＦＦＦ（第１のデータの正の最大値）又は０ｘ８０００（第１のデータの負の最大値）でない場合、該データの下位側に０を付加することにより該データを２４ビットデータに変換する。また、ＣＤ１１からの１６ビットデータが０ｘ７ＦＦＦである場合、該データの下位側に０を付加することにより２４ビットデータとしたものよりも、該１６ビットデータの前又は後の１６ビットデータの値に応じた大きな値となるように、該１６ビットデータを２４ビットデータに変換することにより、丸め誤差を補正する。また、ＣＤ１１からの１６ビットデータが０ｘ８０００である場合、該１６ビットデータの前又は後の１６ビットデータの値に応じ、該データの下位側に０を付加して２４ビットデータとしたものとなるように、又はこの２４ビットデータの値と、０ｘ８０００より１つ大きな値の下位側に０を付加して２４ビットデータとした場合の値との間の値となるように、該１６ビットデータを２４ビットデータに変換する。得られた２４ビットデータは、デジタル入出力部１３ｂを経て出力される。
【００２８】
図２はＤＳＰ１３におけるビット拡張処理を示すフローチャートである。同図においては、ＣＤ１１からサーボ機構１２を介し、ＤＳＰ１３に対して順次入力される各１６ビットのデータをＸｉ（ｉ＝・・・ｎ−３、ｎ−２、ｎ−１、ｎ、ｎ＋１、ｎ＋２、ｎ＋３、・・・）としている。また、データＸｉについてビット拡張処理が施され、ＤＳＰ１３から出力される２４ビットのデータをＹｉとしている。同図の処理は、入力データＸｉが入力される毎に行われる。図３及び図４は図２のビット拡張処理による処理結果として出力される出力データＹｉを、Ｙｎ−３〜Ｙｎ＋６について例示する図である。図中の３１はハッチングが施された部分の出力データ３２（Ｙｎ〜Ｙｎ＋３）に対応する入力データＸｎ〜Ｘｎ＋３（＝０ｘ７ＦＦＦ、０ｘ８０００）を示す破線である。この部分のビット拡張処理が従来とは異なっている。
【００２９】
図２のビット拡張処理を開始すると、ＤＳＰ１３は、まず、ステップ２１において、入力データＸｉは０ｘ７ＦＦＦであるか否かを判定する。０ｘ７ＦＦＦではないと判定した場合には、ステップ２２へ進み、データＸｉは０ｘ８０００であるか否かを判定する。０ｘ８０００ではないと判定した場合には、ステップ２３へ進み、従来と同様に、入力データＸｉを上位側の１６ビットとし、下位側の８ビットを０として２４ビットとしたものを出力データＹｉとして処理を終了する。この場合、出力データＹｉは、たとえば、図３及び図４におけるＹｎ−３〜Ｙｎ−１及びＹｎ＋４〜Ｙｎ＋６となる。
【００３０】
ステップ２１において、入力データＸｉは０ｘ７ＦＦＦであると判定した場合には、ステップ２４へ進み、入力データＸｉ−１は０ｘ７ＦＦＦであるか否かを判定する。０ｘ７ＦＦＦではないと判定した場合にはステップ２５へ進み、２４ビットの出力データＹｉを０ｘ７ＦＦＦ８０として、図２の処理を終了する。この場合の出力データＹｉとしては、たとえば、図３におけるＹｎが該当する。すなわち、入力データＸｎ（＝０ｘ７ＦＦＦ）に対する出力データＹｎは、従来は、下位側に８ビットの０を結合した０ｘ７ＦＦＦ００としているが、ここでは、２４ビットで表現し得る最大値０ｘＦＦＦＦＦと、０ｘ７ＦＦＦ００との間の中間値としている。
【００３１】
ステップ２４において入力データＸｉ−１は０ｘ７ＦＦＦであると判定した場合には、ステップ２６において、出力データＹｉを０ｘ７ＦＦＦＦＦとして、図２の処理を終了する。この場合の出力データＹｉとしては、たとえば、図３におけるＹｎ＋１〜Ｙｎ＋３が該当する。すなわち、入力データＸｎ＋１〜Ｘｎ＋３（＝０ｘ７ＦＦＦ）に対する出力データＹｎ＋１〜Ｙｎ＋３は、従来は、下位側に８ビットの０を結合した０ｘ７ＦＦＦ００としているが、ここでは、入力データＸｉとして０ｘ７ＦＦＦが２回以上連続しているので、入力音声がクリップしたものとみなし、２４ビットで表現し得る最大値である０ｘＦＦＦＦＦを出力データＹｉとするようにしている。
【００３２】
ステップ２２において入力データＸｉは０ｘ８０００であると判定した場合には、ステップ２７へ進み、入力データＸｉ−１は０ｘ８０００であるか否かを判定する。０ｘ８０００ではないと判定した場合にはクリップ直前とみなし、ステップ２８へ進み、２４ビットの出力データＹｉを０ｘ８０００８０として、図２の処理を終了する。この場合の出力データＹｉとしては、たとえば、図４におけるＹｎが該当する。すなわち、入力データＸｎ（＝０ｘ８０００）に対する出力データＹｎは、従来は、下位側に８ビットの０を結合した０ｘ８０００００としているが、ここでは、０ｘ８０００及びその次の値０ｘ８００１の中間の２４ビットの値である０ｘ８０００８０としている。
【００３３】
ステップ２７において入力データＸｉ−１は０ｘ８０００であると判定した場合には、０ｘ８０００が２回以上連続したので、入力音声がクリップしたものとみなし、ステップ２９へ進み、出力データＹｉを２４ビットで表現できる最小値である０ｘ８０００００（第２のデータの負の最大値）として、図２の処理を終了する。この場合の出力データＹｉとしては、たとえば、図４におけるＹｎ＋１〜Ｙｎ＋３が該当する。
【００３４】
本実施形態によれば、入力データ０ｘ７ＦＦＦについてビット拡張処理を行うに際し、２４ビットで表現できる最大限の値まで使用するようにしたため、入力データ０ｘ７ＦＦＦが有する本来のアナログ値に対する誤差を小さくすることができる。すなわち、０ｘ７ＦＦＦの値を有する入力データＸｉについては、従来は、出力データＹｉは０ｘ７ＦＦＦ００であり、本来の値に対する丸め誤差には変化がないが、本実施形態によれば、出力データＹｉを、入力データＸｉ及びＸｉ−１の値に応じ、より本来の値に近いと考えられる０ｘ７ＦＦＦ８０や、０ｘ７ＦＦＦＦＦとするようにしたため、本来の値に対する丸め誤差を小さくすることができる。つまり、ビット拡張を行うに当たり、精度を向上させることができる。
【００３５】
また、ビット拡張処理後の値の範囲は、従来はプラス側が０ｘ７ＦＦＦ００までの範囲であったのに対し、本実施形態によれば、プラス側を０ｘ７ＦＦＦＦＦまでの範囲とすることができる。すなわち、クリップしていない音声について、ダイナミックレンジを拡げることができる。
【００３６】
図５はＤＳＰ１３におけるビット拡張処理の別の例を示すフローチャートである。この処理も、１６ビットのデータＸｉが入力される毎に行われ、２４ビットに拡張したデータＹｉを出力するものである。図６及び図７は図５のビット拡張処理による処理結果として出力される出力データＹｉを、Ｙｎ−３〜Ｙｎ＋６について例示する図である。図中の７１は、ハッチングが施された部分の出力データ７２（Ｙｎ〜Ｙｎ＋３）に対応する入力データＸｎ〜Ｘｎ＋３（＝０ｘ７ＦＦＦ、０ｘ８０００）を示す破線である。この部分のビット拡張処理が従来とは異なっている。
【００３７】
図５の処理において、ステップ５１〜５５、５９及び６０の処理は、図２の処理におけるステップ２１〜２５、２７、及び２８と同じである。一方、ステップ５４において入力データＸｉ−１は０ｘ７ＦＦＦであると判定した場合には、ステップ５６へ進み、入力データＸｉ−２は０ｘ７ＦＦＦであるか否かを判定する。０ｘ７ＦＦＦではないと判定した場合にはクリップ直前とみなし、ステップ５７において、出力データＹｉを０ｘ７ＦＦＦＣ０として、図５の処理を終了する。この場合の出力データＹｉとしては、たとえば、図６におけるＹｎ＋１が該当する。すなわち、この処理においては、図２の処理の場合よりも、クリップとみなすまでの条件を細かくしている。
【００３８】
ステップ５６において入力データＸｉ−２は０ｘ７ＦＦＦであると判定した場合には、入力音声がクリップしたものとみなし、ステップ５８において、出力データＹｉを０ｘ７ＦＦＦＦＦとして、図２の処理を終了する。この場合の出力データＹｉとしては、たとえば、図６におけるＹｎ＋２及びＹｎ＋３が該当する。すなわち、ここでは、入力データＸｉとして０ｘ７ＦＦＦが３回以上連続した場合に、入力音声がクリップしたものとみなすようにしている。
【００３９】
他方、ステップ５９において入力データＸｉ−１は０ｘ８０００であると判定した場合にはステップ６１へ進み、入力データＸｉ−２は０ｘ８０００であるか否かを判定する。０ｘ８０００ではないと判定した場合には、クリップ直前とみなし、ステップ６２において、出力データＹｉを０ｘ８０００４０として、図５の処理を終了する。この場合の出力データＹｉとしては、たとえば、図７におけるＹｎ＋１が該当する。すなわち、この場合も、クリップとみなすまでの条件を、図２の処理の場合よりも細かくしている。
【００４０】
ステップ６１において入力データＸｉ−２は０ｘ８０００であると判定した場合には、入力音声がクリップしたものとみなし、ステップ６３において、出力データＹｉを０ｘ８０００００として、図５の処理を終了する。この場合の出力データＹｉとしては、たとえば、図７におけるＹｎ＋２及びＹｎ＋３が該当する。すなわち、この場合も、入力データＸｉとして０ｘ８０００が３回以上連続した場合に、入力音声がクリップしたものとみなすようにしている。
【００４１】
図５〜図７の実施形態によっても、図２〜図４の場合と同様の効果を奏するとともに、クリップが発生したとみなすまでの段階をより細かくしているので、本来の音声信号に対する丸め誤差を、より小さくすることができる。
【００４２】
図８はＤＳＰ１３におけるビット拡張処理についてのさらに別の例を示すフローチャートである。この処理は、１６ビットのデータＸｉが入力される毎に行われ、その都度２４ビットに拡張したデータＹｉ−１を出力するものである。図９及び図１０は図８のビット拡張処理による処理結果として出力される出力データＹｉ−１を、Ｙｎ−３〜Ｙｎ＋６について例示する図である。図中の９１は、ハッチングが施された部分の出力データ９２（Ｙｎ〜Ｙｎ＋３）に対応する入力データＸｎ〜Ｘｎ＋３（＝０ｘ７ＦＦＦ、０ｘ８０００）を示す破線である。この部分のビット拡張処理が従来とは異なっている。
【００４３】
データＸｉが入力されたことに応じて図８のビット拡張処理を開始すると、ＤＳＰ１３は、まず、ステップ８１において、入力データＸｉ−１は０ｘ７ＦＦＦであるか否かを判定する。０ｘ７ＦＦＦではないと判定した場合には、ステップ８２へ進み、入力データＸｉ−１は０ｘ８０００であるか否かを判定する。０ｘ８０００ではないと判定した場合には、ステップ８３へ進み、入力データＸｉ−１を上位側の１６ビットとし、下位側の８ビットを０として２４ビットとしたものを出力データＹｉ−１として、図８の処理を終了する。この場合、出力データＹｉ−１としては、たとえば、図９及び図１０におけるＹｎ−３〜Ｙｎ−１及びＹｎ＋４〜Ｙｎ＋６が該当する。
【００４４】
ステップ８１において、入力データＸｉ−１は０ｘ７ＦＦＦであると判定した場合にはステップ８４へ進み、入力データＸｉは０ｘ７ＦＦＦであるか否かを判定する。０ｘ７ＦＦＦではないと判定した場合にはステップ８５へ進み、２４ビットの出力データＹｉ−１を０ｘ７ＦＦＦ８０として、図８の処理を終了する。この場合の出力データＹｉ−１としては、たとえば、図９におけるＹｎ＋３が該当する。すなわち、入力データＸｎ＋３（＝０ｘ７ＦＦＦ）に対する出力データＹｎ＋３は、従来は、入力データＸｎ＋３の下位側に８ビットの０を結合した０ｘ７ＦＦＦ００としているが、ここでは、２４ビットで表現し得る最大値０ｘＦＦＦＦＦと０ｘ７ＦＦＦ００との間の中間値としている。
【００４５】
ステップ８４において入力データＸｉは０ｘ７ＦＦＦであると判定した場合には、ステップ８６において、出力データＹｉ−１を０ｘ７ＦＦＦＦＦとして、図８の処理を終了する。この場合の出力データＹｉ−１としては、たとえば、図９におけるＹｎ〜Ｙｎ＋２が該当する。すなわち、入力データＸｎ〜Ｘｎ＋２（＝０ｘ７ＦＦＦ）に対する出力データＹｎ〜Ｙｎ＋２は、従来は、入力データＸｎ〜Ｘｎ＋２の下位側に８ビットの０を結合した０ｘ７ＦＦＦ００としているが、ここでは、入力データＸｉまでに０ｘ７ＦＦＦの入力が２回以上連続しているので、入力音声のクリップが継続しているものとみなし、２４ビットで表現し得る最大値である０ｘＦＦＦＦＦを出力データＹｉ−１とするようにしている。
【００４６】
ステップ８２において入力データＸｉ−１は０ｘ８０００であると判定した場合には、ステップ８７へ進み、入力データＸｉは０ｘ８０００であるか否かを判定する。０ｘ８０００ではないと判定した場合には、クリップが終了したものとみなし、ステップ８８において、２４ビットの出力データＹｉ−１を０ｘ８０００８０として、図８の処理を終了する。この場合の出力データＹｉ−１としては、たとえば、図１０におけるＹｎ＋３が該当する。すなわち、入力データＸｎ＋３（＝０ｘ８０００）に対する出力データＹ＋３は、従来は、入力データＸｎ＋３の下位側に８ビットの０を結合した０ｘ８０００００としていたが、ここでは、０ｘ８０００及びその次の値０ｘ８００１の中間の２４ビットの値である０ｘ８０００８０としている。
【００４７】
ステップ８７において入力データＸｉは０ｘ８０００であると判定した場合には、０ｘ８０００が２回以上連続したので、入力音声のクリップが継続しているものとみなし、ステップ８９において、出力データＹｎ−１を２４ビットで表現できる最小値である０ｘ８０００００として、図８の処理を終了する。この場合の出力データＹｉ−１としては、たとえば、図１０におけるＹｎ〜Ｙｎ＋２が該当する。
【００４８】
本実施形態によれば、出力データＹｉ−１を、入力データＸｉ及びＸｉ−１の値に応じて、より本来の値に近いと考えられる０ｘ７ＦＦＦ８０や、０ｘ７ＦＦＦＦＦとするようにしたため、本来の値に対する丸め誤差を小さくするとともに、クリップの終了部分の出力データにおける値の変化を滑らかにすることができる。その他、図２〜図５の実施形態における効果と同様の効果を奏することができる。
【００４９】
なお、本発明は上述の実施形態に限定されることなく、適宜変形して実施することができる。たとえば、上述の図２〜７の実施形態はクリップの開始を滑らかにする効果を奏するものであり、図８〜図１０の実施形態はクリップの終了を滑らかにする効果を奏するので、双方の実施形態を組み合わせて、クリップの開始及び終了の双方を滑らかにするようにしてもよい。
【００５０】
また、上述においては、２４ビットのデータに変換するデータとして、ＣＤからの１６ビットのデータを用いる場合について説明したが、この代わりに他のデータ、たとえばＭＰ３形式の１６ビットのデータを用いるようにしてもよい。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施形態に係る再生装置の構成を示すブロック図である。
【図２】図１の装置におけるビット拡張処理を示すフローチャートである。
【図３】図２のビット拡張処理による処理結果を例示する図である。
【図４】図２のビット拡張処理による処理結果を例示する別の図である。
【図５】図１の装置におけるビット拡張処理の別の例を示すフローチャートである。
【図６】図５のビット拡張処理による処理結果を例示する図である。
【図７】図５のビット拡張処理による処理結果を例示する別の図である。
【図８】図１の装置におけるビット拡張処理の他の例を示すフローチャートである。
【図９】図８のビット拡張処理による処理結果を例示する図である。
【図１０】図８のビット拡張処理による処理結果を例示する別の図である。
【図１１】アナログ値をデジタル値で表現する場合の一般的な表現方法を示す図である。
【図１２】ＣＤへの記録を行う記録装置の構成を示すブロック図である。
【図１３】ＣＤに記録された音声を再生する再生装置の基本構成を示すブロック図である。
【図１４】２４ビットのＤＳＰにおけるＣＤデータの扱い方法を示す図である。
【図１５】図１２の装置におけるＡＤコンバータに入力することができる最大電圧Ｖｄｄを示す図である。
【符号の説明】
【００５２】
１１，１２３，１３３：ＣＤ、１２，１３４：サーボ機構、１３：ＤＳＰ、１４，１３５：ＤＡコンバータ、１５，１３６：アンプ及びボリューム、１６，１３７：スピーカ、３１，７１，９１：入力データを示す破線、３２，７２，９２：出力データ、１２１：ＡＤコンバータ、１２２：書込み手段。
【図１】
0005239387.tif 000003
【図３】
0005239387.tif 000004
【図４】
0005239387.tif 000005
【図２】
0005239387.tif 000006
【図５】
0005239387.tif 000007
【図６】
0005239387.tif 000008
【図７】
0005239387.tif 000009
【図９】
0005239387.tif 000010
【図８】
0005239387.tif 000011
【図１０】
0005239387.tif 000012
【図１１】
0005239387.tif 000013
【図１２】
0005239387.tif 000014
【図１３】
0005239387.tif 000015
【図１４】
0005239387.tif 000016
【図１５】
0005239387.tif 000017