(57)【特許請求の範囲】
【請求項１】
入力信号の周波数及びチャンネルの少なくとも一方を減じるデータ軽減処理部と、
前記軽減処理がなされた信号における短時間間隔中に達する最大レベルを算出する最大レベル算出部と、
前記最大レベルに基づいて、前記入力信号に対応する音声の前記短時間間隔中での音量を補正するための補正信号を生成する補正信号生成部と、
前記補正信号に対応させて前記入力信号のレベルを可変して出力する音声処理部と、
を備えた音量制御装置。
【請求項２】
使用者が目標振幅を入力可能なユーザボリュームを備え、このユーザボリュームの入力と連動して前記補正信号生成部は、前記補正信号を生成する請求項１に記載の音量制御装置。
【請求項３】
前記音声処理部は、前記入力信号の前記短時間間隔中に達する最大振幅と前記補正信号の振幅との誤差を減じるように、学習同定法により前記入力信号のレベルの可変を行う請求項１に記載の音量制御装置。
【請求項４】
前記音声処理部は、前記誤差の絶対値が大きいとき、前記音声の音量変化が少なくなるように制約を行う請求項３に記載の音量制御装置。
【請求項５】
前記入力信号における低音成分を抽出するフィルタを更に備え、
前記抽出された低音成分のレベルが閾値よりも大きかった場合に、前記音声処理部は、前記入力信号のレベルの可変量を大きくする請求項１に記載の音量制御装置。
【請求項６】
入力信号の周波数及びチャンネルの少なくとも一方を減じるデータ軽減処理部と、
前記軽減処理がなされた信号における短時間間隔中に達する最大レベルを算出する最大振幅算出部と、
前記最大レベルに基づいて、前記入力信号に対応する音声の前記短時間間隔中の音量を補正するための補正信号を生成する補正信号生成部と
前記補正信号に対応させて前記入力信号レベルを可変して出力する音声処理部と、
を備えた電子機器。
【請求項７】
入力信号の周波数及びチャンネルの少なくとも一方を減じてデータ軽減処理を行い、
前記軽減処理がなされた信号における短時間間隔中に達する最大レベルを算出し、
前記最大レベルに基づいて、前記入力信号に対応する音声の前記短時間間隔中の音量を補正するための補正信号を生成し、
前記補正信号に対応させて前記入力信号のレベルを可変して出力する
音声制御方法。
【請求項８】
使用者からの目標振幅の入力を受け付け、前記入力と連動して前記補正信号を生成する請求項７に記載の音声制御方法。
【請求項９】
前記入力信号の前記短時間間隔中に達する最大振幅と前記補正信号の振幅との誤差を減じるように、学習同定法により前記入力信号のレベルの可変を行う請求項７に記載の音声制御方法。
【請求項１０】
前記誤差の絶対値が大きいとき、前記音声の音量変化が少なくなるように制約を行う請求項９に記載の音声制御方法。
【請求項１１】
前記入力信号における低音成分を抽出し、
前記抽出された低音成分のレベルが閾値よりも大きかった場合に、前記入力信号のレベルの可変量を大きくする請求項７に記載の音声制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、音量制御装置、音量制御方法及び電子機器に関する。
【背景技術】
【０００２】
音量制御において、様々な工夫がされてきている。例えば、特許文献１は、入力信号の短時間平均振幅を用いて、目標振幅との二乗誤差最小になるようにNLMSアルゴリズムでゲイン算出して、信号の音量を均一化するという音量制御手法に関するものである。しかしながらそこでは目標振幅は固定であるため、すべての信号の振幅値が均一化されて目標振幅に近づくため、周波数特性が変化し、音質が変化してしまう課題があった。
【０００３】
一方で、非線形な折れ線関数によって入力信号の振幅に応じて振幅を出力する“ダイナミックレンジコントロール”という既知技術が知られている。がこれも、サンプル単位や短い時間単位で振幅を操作する処理であるために、コンテンツ全体の音量を制御できない課題がある。
【０００４】
ここに短時間の音量を非線形に制御するなどにより、処理遅延を極力少なく、小さい処理量で、音量を均一にする技術への要望があるが、かかる要望を実現するための手段は知られていない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３５８５５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の実施の形態は、小さい処理量で音量を均一にすることができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、実施形態によれば音量制御装置は、入力される信号に振幅の可変制御を施して出力信号を発生するボリュームと、前記入力される信号から前記可変制御の音量設定をする音量制御部とを備える。
【図面の簡単な説明】
【０００８】
【図１】実施形態にかかる電子機器の外観を模式的に示す図。
【図２】実施形態にかかる電子機器のハードウェア構成の一例を示すブロック構成図。
【図３】同実施形態のオーディオ再生向け全体機能ブロック図（実施例１）。
【図４】同実施形態の音声集音向け全体ブロック機能図。
【図５】同実施形態に用いられる中心機能ブロック図（実施例１）。
【図６】同実施形態の要部の動作を示すフローチャート（実施例１）。
【図７】同実施形態に用いられる目標振幅決定部2Cの説明図。
【図８】同実施形態に用いられる目標振幅決定部2Cの説明図（ユーザボリューム連動）。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して実施形態にかかる電子機器及び制御方法の詳細を説明する。なお、以下の実施形態では、ＰＤＡや携帯電話等、ユーザが把持して使用する電子機器を例に説明する。
【００１０】
図１は、実施形態にかかる電子機器１００の外観を模式的に示す図である。電子機器１００は、表示画面を備えた情報処理装置であり、例えばスレート端末（タブレット端末）や電子書籍リーダ、デジタルフォトフレーム等として実現されている。なお、ここでは、Ｘ軸、Ｙ軸、Ｚ軸の矢印方向（Ｚ軸では図の正面方向）を正方向としている（以下同様）。
【００１１】
電子機器１００は、薄い箱状の筐体Ｂを備え、この筐体Ｂの上面に表示部１１０が配置されている。表示部１１０は、ユーザによってタッチされた表示画面上の位置を検知するタッチパネル（図２、タッチパネル１１１参照）を備えている。また、筐体Ｂの正面下部にはユーザが各種操作を行う操作スイッチ等である操作スイッチ１９０、ユーザの音声を取得するためのマイク２１０が配置されている。また、筐体Ｂの正面上部には音声出力を行うためのスピーカ２２０が配置されている。また、筐体Ｂの縁には、把持するユーザの圧力を検知する圧力センサ２３０が配置されている。なお、図示例ではＸ軸方向の左右の縁に圧力センサ２３０を備える構成を例示したが、Ｙ軸方向の上下の縁に圧力センサ２３０を備えてもよい。
【００１２】
図２は、実施形態にかかる電子機器１００のハードウェア構成の一例を示すブロック図である。図２に示すように、電子機器１００は、上述の構成に加え、ＣＰＵ１２０、システムコントローラ１３０、グラフィックスコントローラ１４０、タッチパネルコントローラ１５０、加速度センサ１６０、不揮発性メモリ１７０、ＲＡＭ１８０、音声処理部２００、通信部２４０等を備えている。また音声処理部２００には内蔵または外付けのマイク２１０とスピーカ２２０とが接続されている。
【００１３】
表示部１１０は、タッチパネル１１１と、ＬＣＤ（Liquid  Crystal  Display）や有機ＥＬ（Electro  Luminescence）等のディスプレイ１１２とから構成されている。タッチパネル１１１は、例えばディスプレイ１１２の表示画面上に配置された当面の座標検出装置から構成されている。タッチパネル１１１は、例えば筐体Ｂを把持したユーザの指によってタッチされた表示画面上の位置（タッチ位置）を検知することができる。このタッチパネル１１１の働きにより、ディスプレイ１１２の表示画面はいわゆるタッチスクリーンとして機能する。
【００１４】
ＣＰＵ１２０は、電子機器１００の動作を中央制御するプロセッサであり、システムコントローラ１３０を介して電子機器１００の各部を制御する。ＣＰＵ１２０は、不揮発性メモリ１７０からＲＡＭ１８０にロードされる、オペレーティングシステム、各種アプリケーションプログラムを実行することで、後述する各機能部（図３など参照）を実現する。ＲＡＭ１８０は、電子機器１００のメインメモリとして、ＣＰＵ１２０がプログラムを実行する際の作業領域を提供する。
【００１５】
システムコントローラ１３０には、不揮発性メモリ１７０及びＲＡＭ１８０をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１３０は、グラフィックスコントローラ１４０との通信を実行する機能も有している。また、システムコントローラ１３０は、通信部２４０からインターネット等を介して図示せぬ外部のサーバへ音声波形等の音声信号を送信しこの音声波形に対する音声認識の結果を必要によっては受信する機能や、図示せぬ外部のサーバへユーザが選択した音楽情報を送信しこの音楽の再生音を必要によって受信する機能も有している。
【００１６】
グラフィックスコントローラ１４０は、電子機器１００のディスプレイモニタとして使用されるディスプレイ１１２を制御する表示コントローラである。タッチパネルコントローラ１５０は、タッチパネル１１１を制御し、ユーザによってタッチされたディスプレイ１１２の表示画面上のタッチ位置を示す座標データをタッチパネル１１１から取得する。
【００１７】
加速度センサ１６０は、図１に示す３軸方向（Ｘ、Ｙ、Ｚ方向）や、これに各軸周りの回転方向の検出を加えた６軸方向の加速度センサ等であって、電子機器１００に対する外部からの加速度の向きと大きさを検出し、ＣＰＵ１２０に出力する。具体的に、加速度センサ１６０は、加速度を検出した軸、向き（回転の場合、回転角度）、及び大きさを含んだ加速度検出信号（傾き情報）をＣＰＵ１２０に出力する。なお、角速度（回転角度）検出のためのジャイロセンサを、加速度センサ１６０に統合する形態としてもよい。
【００１８】
音声処理部２００は、オーディオ向け機能の実行時および音声向け機能の実行時に動作する。まずオーディオ向け機能について説明する。オーディオ向け機能としては、オーディオ再生がある。音声処理部２００は、ＣＰＵ１２０の制御のもとで、不揮発性メモリ１７０に蓄えられたオーディオコンテンツなどの音楽波形に対してイコライザー等のオーディオ処理を施して生成したオーディオ信号をスピーカ２２０へ出力し、スピーカ２２０によるオーディオ再生を行う。次に音声向け機能について説明する。音声向け機能としては、音声録音、音声再生、音声通話、音声報知がある。音声処理部２００は、マイク２１０より入力される音声信号に、デジタル変換、ノイズ除去、エコーキャンセル等の音声処理を施してＣＰＵ１２０へ出力し、音声録音を行う。また、音声処理部２００は、ＣＰＵ１２０の制御のもとで、イコライザー等の音声処理を施して生成した音声信号をスピーカ２２０へ出力し、スピーカ２２０による音声再生を行う。VoIP（Voice over Internet Protocol）などの音声通話では、前述の音声録音と音声再生が同時に処理される。さらに、音声処理部２００は、ＣＰＵ１２０の制御のもとで、音声合成等の音声処理を施して生成した音声信号をスピーカ２２０へ出力し、スピーカ２２０による音声報知を行う機能を有してもよい。この中の音声処理部２００の詳細について次に説明する。
【００１９】
さて図３は実施形態のオーディオ再生向け全体機能ブロック図である。ＲＡＭ１８０に相当するメモリ1からスピーカ２２０に相当するスピーカ5（左側：5L,右側：5R）に至る音声処理部２００を主体とする機能として、音量制御部2とボリューム3（左側：3L,右側：3R）とD/A部4（左側：4L,右側：４R）とユーザボリューム６が図３のように接続された構成となっている。
【００２０】
不揮発性メモリ１７０に相当するメモリ1に格納されたTVや音楽やインターネット動画コンテンツなどのオーディオコンテンツをシステムコントローラ１３０経由で再生するとする。ここでオーディオコンテンツは入力信号x[n](n=0,1,2,...)となり、48kHzサンプリングのL/Rステレオ信号とする。音量制御部2ではこの入力信号x[n]を解析し、結果算出された音量(ゲイン)をボリューム3に設定し、入力信号に乗じ出力信号y[n]を算出し、D/A部4、スピーカ5から出力される。ユーザボリューム６を用いてユーザが設定するユーザボリューム（ディジタルユーザボリュームに応じて目標振幅を替える）はユーザボリューム情報として、音量制御部2へ入力される。ユーザボリューム６としては、ディスプレイ１１２に表示される例えばボリューム形状のＧＵＩに対応してタッチパネル１１１からこのユーザボリューム情報を対話的に入力できるようにすればよい。
【００２１】
他の例として、音声信号を集音する音声録音という使い方もある。図４は音声録音向け全体ブロック機能図である。マイク２１０に相当するマイク7（左側：7L,右側：7R）から入力される音声やノイズはA/D部8（左側：8L,右側：8R）でアナログ／デジタル変換され音声活性検出部9へ導かれる。音量制御部2で音量を制御する対象が人間の声である音声の場合は、事前に音声活性検出部9にて、人の声である音声があるのか否かの情報である音声活性（例えば特開特開2009-251134号、特開2008-83375号、特開2007-114413号を参照）を検知して、そのフラグVAD_FLAG[f]を音量制御部3へ入力する。
【００２２】
また他の例として、音声信号を再生する音声再生という使い方もある。この場合、前述のオーディオ再生の使い方と同様に音量制御部2とボリューム3を介してスピーカ5から再生されるが、音量制御部2で音量を制御する入力信号が人間の声であるので、前述の音声録音の使い方と同様に、事前に音声活性検出部9にて、人の声である音声があるのか否かの情報である音声活性を検知して、そのフラグVAD_FLAG[f]を音量制御部3へ入力する。
【００２３】
ここで音量制御部2のブロック図を示す(図５)。図６のフローチャートを交えて以下に動作を説明する。
【００２４】
まず48kHzサンプリングのL/Rステレオ信号の入力信号x[n]は、処理量軽減のために、16kHzサンプリングのモノラル信号に変換される(2A)。その信号の短時間(例えば5[ms])間隔(以降フレームと呼ぶ)での絶対値での最大振幅max[f] [dB]を算出する(2B,2B1)。短時間最大振幅について、過去の値を忘却するようにし全極型フィルタを構成し、平滑化を行いてmax_smooth[f] [dB]を出力してもよい(2B2)。これにより、dB表記のmax_smooth[f]を振幅値表記に戻してinput_amp[f]が出力される(図６のステップS1)。平均値などではなく最大値を使うことにより、音量制御後の信号がクリップして音質が劣化することを防ぐことができる。例えばインパルス信号を入力しても、音質が劣化することを防ぐことができる。
【００２５】
目標振幅決定部(2C)では、目標振幅設定(2C1)、目標振幅算出(2C2)を備える。目標振幅設定(2C1)は、例えば図７のように、事前に設定された各閾値(例えばTERGET_AMP,THRなど)によって、入力振幅input_amp[f]と目標振幅target_amp_var[f]との関係を保持する。目標振幅算出(2C2)では、フレーム毎に異なる入力振幅input_amp[f]からフレーム毎に異なる目標振幅target_amp_var[f]を決定する(図６のステップS2)。また、目標振幅算出(2C2)では、ユーザボリューム6から得るユーザボリューム情報usr_vol_infoに基づいて、図８のように目標振幅を決定してもよい。このようにすることで、ディジタル信号を増幅減衰させるユーザボリュームを併用することができる。(なおユーザボリュームが音量制御部2の後にあると信号がクリップしてしまう。またユーザボリュームが音量制御部2の前にあると音量が均一化してしまいユーザがボリュームを替えられない。) 
学習可否判定部(2G)は、ここでは、パワー算出部(2G1)で入力信号x[n]の短時間パワーpow[f]を算出し、パワー平滑化部(2G2)でパワーを平滑化し、学習判定部(2G3)でその平滑化パワーpow_smooth[f]の事前に設定された閾値よりも大きいときのみ、後述するゲイン修正演算をするように判定するフラグlearn_flag[f]を出力する。あるいは、学習判定部(2G3)では、音量制御部2で音量を制御する対象が人間の声である音声の場合は、音声活性検出部9からの出力VAD_FLAG[f]を得て、入力信号x[n]が音声であると判定された区間かつ平滑化パワーpow_smooth[f]の事前に設定された閾値よりも大きいときのみ、後述するゲイン修正演算をするように判定するフラグlearn_flag[f]を出力する。(図６のステップS3)
ゲイン修正演算をするように判定された場合は、以下の処理を実施する。推定値算出部(2D)では、1つ前のフレームでのゲインGain[f-1]を用いて、入力信号x[n]がどのぐらいの大きさになるのかを、input_amp[f]×Gain[f-1]で算出する。
【００２６】
より詳しく述べると、課題として低域が多いと音量が聴覚上ふらつくことがあるが、処理量を少なく対処したいので次の段取りで周波数バランス解析（2M1）と振幅補正（2M2）を行いこれらの結果を推定値算出部(2D)は用いる。
【００２７】
１）1次か2次のIIRフィルタを使い低域のパワーを算出する。
【００２８】
２）零交差数が小さいと低域の成分が多い場合が多く、計算で求めた音量値(振幅)よりも人間が感じる聴覚上の音量が高くなるので振幅を大きめに補正する。
【００２９】
次に誤差算出部(2E)において、目標振幅との誤差errorをtarget_amp_var[f] - input_amp[f]×Gain[f-1]で求める(図６のステップS4)。ゲイン修正量算出部(2F)では、目標振幅との二乗誤差最小になるように学習同定法の一つであるNLMS (Normalized Learning Management System)アルゴリズムによって、ゲインの修正量Δ（デルタ）gain[f] = μ × error / ( input_amp[f] + δ) と算出する(図６のステップS5)。ゲイン修正部(2J)では、Gain[f]=Gain[f-1]+△gain[f]で新しいゲインを算出する(図６のステップS6)。なお、μはステップサイズ（またはステップゲイン）を意味し、またδは割り算の分母が０となることを防ぐための小さな正数である。
【００３０】
一方で、ゲイン修正演算をしないように判定された場合は、Gain[f]=1（全体としてゲインを大きくする際は、学習しないとき１を保持）あるいは、Gain[f]=Gain[f-1]（ゲインを小さくするときは、１つ前の保持）のようにゲインを設定して(図６のステップS10)、S7の処理へ移る。
【００３１】
ゲイン初期値(2I)として、Gain[0]=1が格納されており、初期値のみは、これを利用する。初期におけるゲインの膨大化を防ぐことができる。ゲイン制御部(2H)では、まず、errorの絶対値が所定の閾値よりも大きいときには、△gain[f]を小さくしてゲインが変化しないようにする。また、errorがinput_amp[f]と比較して大きいときにも、△gain[f]を小さくしてゲインが変化しないようにする。このようにすることで、突発的にゲインを大きくすることを防ぎ、クリップしにくいようにする。さらにゲイン制御部(2K)で、△gain[f]が+3[dB]以上増幅あるいは-0.25[dB]以上減衰することを防止するようにリミットさせる制約を行う(図６のステップS7)。Gain[f]を求める対象フレームが尽きるまでステップS4からの手順を繰り返す。
【００３２】
ゲイン平滑化部(2L)では、このようにして求めたGain[f]はフレーム単位であるので、これをGain[f-1]を用いて、線形補間して、サンプル単位にゲインGain_smooth[n]を算出する(図６のステップS8)。
【００３３】
最後にボリューム3にて、入力信号x[n]にゲインGain_smooth[n]を乗じて出力信号y[n]を算出する(図６のステップS9)。ここでは、音量制御部2ではモノラルでゲインを算出して、ステレオ感が変わらないように、L/Rチャネルに同一のゲインを乗算する。
【００３４】
以上の実施形態の効果として次の点がある。
【００３５】
（１）算出したゲインを入力信号に乗じた後でのクリップ発生を防止することができる。インパルスのような突発信号が入力されてもクリップしにくい。
【００３６】
（２）音質の変化を少なくして、コンテンツ全体の音量を制御することができる。
【００３７】
（３）ユーザボリュームと連動させて、コンテンツ全体の音量を制御することができる。
【００３８】
以上説明した実施例によれば以下の特徴を有する処理を実行することができる。
【００３９】
（１）入力信号の短時間最大振幅を用いて(2B)、目標振幅を設定する(2C2)。
【００４０】
（２）ディジタルでのユーザボリューム(usr_vol_info)と連動して、目標振幅(TARGET_AMP)を変更する(2C2)。
【００４１】
（３）入力信号の短時間最大振幅を用いて(2B)、目標振幅(target_amp_var)との二乗誤差最小になる(2E)ようにNLMSアルゴリズムでゲイン(Gain)を算出する(2D,2F,2J,2K)。
【００４２】
（４）目標振幅との誤差の絶対値が大きいとき、ゲインを変化が少ない方に制約（非線形、勾配など）を掛ける(2H)。
【００４３】
（５）短時間単位でゲインを算出し(2K)、サンプル単位でゲインを線形補間して(2L)、入力信号に乗じる(3)。
【００４４】
本実施形態は、入力信号の短時間最大振幅を用いて、非線形な折れ線関数によって目標振幅を設定し、入力信号の短時間最大振幅を用いて、目標振幅との二乗誤差最小になるようにNLMSアルゴリズムでゲイン算出して、信号の音量を均一化する音量制御方法である。
【００４５】
先行技術は平均振幅を用いる方法であるため、ゲインを大きく算出してしまいやすい。比べた実施形態の効果としては、短時間最大振幅を用いることで、算出したゲインを入力信号に乗じた後でのクリップ発生を防止することができる。
【００４６】
本実施形態は、入力が小さい場合は出力も相対的に小さく、入力が大きい場合は出力も相対的に大きくするように、目的振幅を動的に変化させるため、音質の変化を少なくして、コンテンツ全体の音量を制御することができる。
【００４７】
なお、この発明は上記実施形態に限定されるものではなく、この外その要旨を逸脱しない範囲で種々変形して実施することができる。
【００４８】
また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係わる構成要素を適宜組み合わせても良いものである。
【符号の説明】
【００４９】
１１…音声復号部、１２…ＤＡ変換器、１３…増幅器、１４…増幅器、１５…ＡＤ変換器、１６…ユーザ-マイク間距離検出部、１７…音声符号部、２１…周波数変換部、２２…帯域パワー計算部、２３…雑音推定部、２４…ＳＮＲ計算部、２５…ゲイン算出部、２６…ゲイン加重部、２７…周波数逆変換部、１００…電子機器、１１０…表示部、１２０…ＣＰＵ、１３０…システムコントローラ、１４０…グラフィックスコントローラ、１５０…タッチパネルコントローラ、１６０…加速度センサ、１７０…不揮発性メモリ、１８０…ＲＡＭ、１９０…操作スイッチ、２００…音声処理部、２１０…マイク、２２０…スピーカ、２３０…圧力センサ、２４０…通信部、１１１…タッチパネル、１１２…ディスプレイ、Ｂ…筐体。
【図１】
0005269175.tif 000002
【図２】
0005269175.tif 000003
【図３】
0005269175.tif 000004
【図４】
0005269175.tif 000005
【図５】
0005269175.tif 000006
【図６】
0005269175.tif 000007
【図７】
0005269175.tif 000008
【図８】
0005269175.tif 000009