以下、本発明の一実施形態を、図1〜図17を参照して説明する。なお、以下の説明及び図面においては、同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
[構成]
図1には、一実施形態に係るDAB対応の放送受信装置100の構成がブロック図にて示されている。なお、本実施形態では、放送受信装置100は、車両等の移動体に搭載されている。
この図1に示されるように、放送受信装置100は、アンテナ110と、RF処理部120と、復号部130とを備えている。また、放送受信装置100は、格納部140と、バッファ記憶部150と、読取部160とを備えている。さらに、放送受信装置100は、音出力部170と、入力部180と、制御部190とを備えている。
上記のアンテナ110は、様々な放送局(基地局)からの放送波を受信する。そして、アンテナ110による受信結果は、受信信号RFSとして、RF処理部120へ送られる。
上記のRF処理部120は、アンテナ110から送られた受信信号RFSを受ける。そして、RF処理部120は、制御部190から送られた選局指令CSLに従って、再生チャンネルにおける放送波のパイロット信号成分の周波数を所定の中間周波数に変換する周波数変換を行い、当該周波数変換が行われた信号IFSを生成する。こうして生成された信号IFSは、復号部130へ送られる。
なお、信号IFSは、デジタル信号となっている。
また、RF処理部120は、信号IFSにデジタル変換される前の信号(アナログ信号)のレベルを検出する。こうして検出された信号レベルは、検出レベルSLVとして、制御ユニット190へ送られる。なお、検出レベルSLVは、選局指令CSLに従って選局された物理チャンネルの放送波のアンテナ110近傍における電界強度に対応している。
こうした機能を有するRF処理部120は、入力フィルタと、高周波増幅器(RF AMP:Radio Frequency-Amplifier)と、バンドパスフィルタ(以下、「RFフィルタ」とも呼ぶ)とを備えている。また、RF処理部120は、ミキサ(混合器)と、中間周波フィルタ(以下、「IFフィルタ」とも呼ぶ)と、中間周波増幅器(IF AMP:Intermediate Frequency-Amplifier)とを備えている。さらに、RF処理部120は、レベル検出器と、AD(Analogue to Digital)変換器と、局部発振回路(OSC)とを備えている。
入力フィルタは、アンテナ110から送られた受信信号RFSの低周波成分を遮断するハイパスフィルタである。高周波増幅器は、入力フィルタを通過した信号を増幅する。
RFフィルタは、高周波増幅器から出力された信号のうち、特定の周波数範囲の信号を選択的に通過させる。ミキサは、RFフィルタを通過した信号と、局部発振回路から供給された局部発振信号とを混合する。
IFフィルタは、ミキサから出力された信号のうち、予め定められた中間周波数範囲の信号を選択して通過させる。中間周波増幅器は、IFフィルタを通過した信号を増幅する。
中間周波増幅器により増幅された信号のレベルを、レベル検出器が検出する。レベル検出器による検出結果が、検出レベルSLVとして、制御部190へ送られる。
また、中間周波増幅器により増幅された信号を、AD変換器がデジタル信号に変換する。AD変換器による変換結果が、信号IFSとして、復号部130へ送られる。
局部発振回路は、電圧制御等により発振周波数の制御が可能な発振器等を備えて構成される。この局部発振回路は、制御部190から供給された選局指令CSLに従って、RF処理部120において選局すべきチャンネルに対応する周波数の局部発振信号を生成し、ミキサへ供給する。
上記の復号部130は、RF処理部120から送られた信号IFSを受ける。そして、復号部130は、信号IFSをOFDM復調した後に、必要に応じたエラー訂正を含む復号処理を行って、復号データDTDを生成する。こうして生成された復号データDTDは、格納部140及び制御部190へ送られる。
また、復号部130は、信号IFSにおけるビットエラー率BERを検出する。こうして検出されたビットエラー率BERは、制御部190へ送られる。
上記の格納部140は、復号部130から送られた復号データDTD、及び、読取部160から送られた読取ポインタRDPを受ける。引き続き、格納部140は、制御部190から送られた格納指定STC、読取ポインタRDP、及び、内部に保持している格納ポインタSTPを参照しつつ、復号データDTDに基づいて格納データSTDを生成する。そして、格納部140は、生成された格納データSTDを、格納ポインタSTPを更新しつつ、バッファ記憶部150に格納する。また、格納部140は、格納ポインタSTPが更新されるたびに、更新された格納ポインタSTPを読取部160へ送る。
また、格納部140は、格納ポインタSTP及び読取ポインタRDPに基づいて、バッファリング量BFVを算出する。こうして算出されたバッファリング量BFVは、制御部190へ送られる。
なお、格納部140が実行する格納制御処理については、後述する。
上記のバッファ記憶部150は、記憶素子を備え、いわゆるリングバッファとして構成されている。このバッファ記憶部150では、アクセス単位(例えば、「1バイト」)ごとに割り当てられているアドレスが「0」〜「VFA」となっている。
バッファ記憶部150への格納のためのアクセスは、格納部140ができるようになっている。また、バッファ記憶部150からの読取のためのアクセスは、読取部160ができるようになっている。
なお、本実施形態では、格納部140が内部に保持している格納ポインタSTPは、格納部140が次に格納データSTDを格納すべきバッファ記憶部150内のアドレス値である。読取部160が内部に保持している読取ポインタRDPは、読取部160が次に再生用データRDDとして読み取るべきデータが格納されているバッファ記憶部150内のアドレス値である。
このため、上述したバッファリング量BFVは、格納ポインタSTPが読取ポインタRDP以下の場合には、次の(1)式により算出される。
BFV=STP−RDP …(1)
また、バッファリング量BFVは、格納ポインタSTPが読取ポインタRDPより小さな場合には、次の(2)式により算出される。
BFV=STP+VFA+1−RDP …(2)
上記の読取部160は、格納部140から送られた格納ポインタSTPを受ける。そして、読取部160は、格納ポインタSTP及び読取ポインタRDPに基づいて、バッファ記憶部150内に再生用に読み取るべきデータが存在すると判断される場合には、読取ポインタRDPを更新しつつ、バッファ記憶部150から再生用データRDDを読み取る。
なお、読取部160は、読取ポインタRDPに際して、制御部190から送られた格納指定STCを考慮するようになっている。また、読取部160は、読取ポインタRDPが更新されるたびに、更新された読取ポインタRDPを格納部140へ送る。
引き続き、読取部160は、再生用データRDDに基づいて、出力音声データAODを生成する。こうして生成された出力音声データAODは、音出力部170へ送られる。
なお、読取部160が実行する読取制御処理については、後述する。
上記の音出力部170は、DA(Digital to Analogue)変換器、電子ボリューム、スピーカ等を備えて構成される。この音出力部170は、読取部160から送られた出力音声データAOD、及び、制御部190から送られた音量指定VLCを受ける。そして、音出力部170は、音量指定VLCに従った音量で、出力音声データAODに対応する音声を出力する。
上記の入力部180は、放送受信装置100の本体部に設けられたキー部及び/又はキー部を備えるリモート入力装置等により構成される。ここで、本体部に設けられたキー部としては、不図示の表示部に設けられたタッチパネルを用いることができる。なお、キー部を有する構成に代えて、又は、併用して音声認識技術を利用して音声にて入力する構成を採用することもできる。入力部180への入力結果は、入力データIPDとして制御部190へ送られる。この入力部180を操作することにより、利用者は、再生チャンネルの指定、出力音量の指定等を入力できるようになっている。
上記の制御部190は、放送受信装置100の全体の動作を制御する。この制御部190は、内部記憶部、タイマ等を備えて構成されている。
制御部190は、入力部180に入力された放送音声の再生対象となる再生チャンネルの指定が入力データIPDとして通知されると、当該再生チャンネルの指定に従って再生チャンネルの選局指令CSLを生成する。そして、制御部190は、生成された選局指令CSLをRF処理部120へ送る。
また、制御部190は、入力部180に入力された出力音量の指定が入力データIPDとして通知されると、当該出力音量の指定に従って音量指定VLCを生成する。そして、制御部190は、生成された音量指定VLCを音出力部170へ送る。
また、制御部190は、RF処理部120から送られた検出レベルSLV、並びに、復号部130から送られたビットエラー率BER及び復号データDTDを受ける。そして、制御部190は、検出レベルSLV、ビットエラー率BER及び復号データDTDに基づいて、代替局サーチ処理を実行する。
なお、制御部190が実行する代替局サーチ処理については、後述する。
[動作]
次に、上記のように構成された放送受信装置100の動作について、制御部190により実行される代替局サーチ処理、格納部140により実行される格納制御処理、及び、読取部160により実行される読取制御処理に主に着目して説明する。
前提として、放送受信装置100は、放送受信動作を開始しており、制御部190は、入力部180に入力された選局指定に従って、再生チャンネルの設定をRF処理部120に対して行っているものとする。そして、RF処理部120は、信号IFSを復号部130へ逐次送るとともに、検出レベルSLVを制御部190へ逐次送っているものとする(図1参照)。
また、復号部130は、RF処理部120から送られた信号IFSに対して、OFDM復調処理及び復号処理、並びに、必要に応じてエラー訂正を順次施して、復号データDTDを生成するとともに、ビットエラー率BERを検出しているものとする。そして、復号部130は、復号データDTDを格納部140及び制御部190へ逐次送っているものとする。また、復号部130は、ビットエラー率BERを制御部190へ逐次送っているものとする(図1参照)。
また、制御部190は、入力部180に入力された出力音量の指定に従って生成された音量指定VLCを音出力部170へ送っているものとする(図1参照)。
<代替局サーチ処理>
まず、制御部190により実行される代替局サーチ処理について説明する。
代替局サーチ処理に際しては、図2に示されるように、まず、ステップS11において、制御部190が、復号データDTDに基づく格納データSTDをバッファ記憶部150へ格納すべき旨を指定するために格納指定STCを「ON」にする。そして、制御部190は、「ON」とされた格納指定STCを格納部140及び読取部160へ送る。
次に、ステップS12において、制御部190が、RF処理部120から送られた検出レベルSLVが閾値レベルLV0以下か否かを判定することにより、代替局サーチが必要か否かを判定する。なお、閾値レベルLV0は、番組再生の継続性の観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
ステップS12における判定の結果が肯定的であった場合(ステップS12:Y)には、処理は、後述するステップS14へ進む。一方、ステップS12における判定の結果が否定的であった場合(ステップS12:N)には、処理はステップS13へ進む。
ステップS13では、制御部190が、復号部130から送られたビットエラー率BERが閾値エラー率ER0以上か否かを判定することにより、代替局サーチが必要か否かを判定する。なお、閾値エラー率ER0は、番組再生の継続性の観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
ステップS13における判定の結果が否定的であった場合(ステップS13:N)には、処理はステップS12へ戻る。以後、ステップS12又はステップS13における判定の結果が肯定的となるまで、ステップS12及びステップS13の処理が繰り返される。
ステップS12又はステップS13における判定の結果が肯定的となると(ステップS12:Y、又は、ステップS13:Y)、処理はステップS14へ進む。このステップS14では、制御部190が、格納部140から送られたバッファリング量BFVが第1所定データ量VTH1以下であるか否かを判定することにより、代替局サーチの実行に起因する番組再生の中断が発生し得るか否かを判定する。なお、第1所定データ量VTH1は、代替局サーチの実行に要すると推定される最大時間にわたってバッファ記憶部150への新たなデータの格納がなくとも、バッファ記憶部150に記憶されているバッファリングデータ(再生用コンテンツ情報)のみによる番組再生を可能とするとの観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
ステップS14における判定の結果が肯定的であった場合(ステップS14:Y)には、処理はステップS12へ戻る。以後、ステップS14における判定の結果が否定的となるまで、ステップS12〜S14の処理が繰り返される。
ステップS14における判定の結果が否定的となると(ステップS14:N)、処理はステップS15へ進む。このステップS15では、制御部190が、復号データDTDに基づく格納データSTDをバッファ記憶部150へ格納すべきではない旨を指定するために格納指定STCを「OFF」にする。そして、制御部190は、「OFF」とされた格納指定STCを格納部140及び読取部160へ送る。
次に、ステップS16において、制御部190が、代替局サーチを実行する。かかる代替局サーチに際して、制御部190は、まず、代替チャンネル候補を選局するための選局指令CSLをRF処理部120へ送る。引き続き、制御部190は、RF処理部120から送られた検出レベルSLV、並びに、復号部130から送られたビットエラー率BER及び復号データDTDに基づいて、当該代替チャンネル候補において再生チャンネルの放送番組と同一又は類似の放送番組が当該代替チャンネル候補において放送されており、かつ、再生品質を確保した再生を継続的に行うことができると推定されるか否かの判定(以下、「代替局判定」という)を行う。
なお、本実施形態では、制御部190は、代替チャンネル候補において再生チャンネルの放送番組と同一又は類似の放送番組が当該代替チャンネル候補において放送されているか否かの判定を、復号データDTDに含まれるサービス識別子(SID)又は番組識別コード(PIコード)に基づいて行うようになっている。
引き続き、代替局判定の結果が肯定的となるまで、制御部190は、次の代替チャンネル候補を選局するための選局指令CSLをRF処理部120へ送るとともに、当該次の代替チャンネルに関する代替局判定を繰り返す。
そして、制御部190は、代替局判定の結果が肯定的となった代替チャンネル候補を新たな再生チャンネルに決定する。引き続き、制御部190は、決定された新たな再生チャンネルを選局するための選局指令CSLをRF処理部120へ送る。なお、代替局判定の結果が肯定的となる代替チャンネル候補を見出せなかった場合には、制御部190は、代替局サーチの開始前の再生チャンネルを選局するための選局指令CSLをRF処理部120へ送る。
こうしてステップS16の処理が終了すると、処理はステップS11へ戻る。以後、ステップS11〜S16の処理が繰り返される。
<格納制御処理>
次に、格納部140により実行される格納制御処理について説明する。
格納制御処理に際しては、図3に示されるように、まず、ステップS21において、格納部140が、制御部190から送られている格納指定STCが「ON」であるか否かを判定する。ステップS21における判定の結果が否定的であった場合(ステップS21:N)には、ステップS21の処理が繰り返される。
ステップS21における判定の結果が肯定的であった場合(ステップS21:Y)には、処理はステップS22へ進む。このステップS22では、格納部140は、復号部130から送られた新たな復号データDTDを受けたか否かを判定する。
ステップS22における判定の結果が否定的であった場合(ステップS22:N)には、処理はステップS21へ戻る。以後、ステップS22における判定の結果が肯定的となるまで、ステップS21及びステップS22の処理が繰り返される。
ステップS22における判定の結果が肯定的となると(ステップS22:Y)、処理はステップS23へ進む。このステップS23では、格納部140が、現時点のバッファリング量BFVが第2所定データ量VTH2(>VTH1)以上であるか否かを判定することにより、後述するステップにおける付加格納処理により、バッファ記憶部150に格納されるべきバッファリングデータ量が、バッファ記憶部150の容量を超える可能性があるか否かを判定する。
ステップS23における判定の結果が肯定的であった場合(ステップS23:Y)には、処理はステップS24へ進む。このステップS24では、格納部140が、新たに受けた復号データDTDをそのまま格納データSTPとしてバッファ記憶部150に格納する通常格納処理を行う。そして、処理は、後述するステップS26へ進む。
一方、ステップS23における判定の結果が否定的であった場合(ステップS23:N)には、処理はステップS25へ進む。このステップS25では、格納部140は、付加格納処理を行う。そして、処理は、後述するステップS26へ進む。
なお、ステップS25で実行される付加格納処理については、後述する。
ステップS26では、格納部140が、まず、格納ポインタSTPを更新する。かかる格納ポインタSTPの更新に際して、現時点の格納ポインタSTPと、ステップS24又はステップS25における格納量STVとの和が、上述したバッファ記憶部150の最大アドレスVFA以下の場合には、格納部140は、次の(3)式に従って、格納ポインタSTPを更新する。
STP←(STP+STV) …(3)
一方、現時点の格納ポインタSTPと格納量STVとの和が、最大アドレスVFAより大きな場合には、格納部140は、次の(4)式に従って、格納ポインタSTPを更新する。
STP←(STP+STV−VFA−1) …(4)
こうして格納ポインタSTPが更新された後、格納部140は、更新された格納ポインタSTPと、読取部160から送られた最新の読取ポインタRDPとに基づいて、バッファリング量BFVを更新する。そして、格納部140は、更新されたバッファリング量BFVを制御部190へ送る。
なお、明示的な図示を省略しているが、読取部160から送られた新たな読取ポインタRDPを受けるたびに、格納部140は、上述した(1)式又は(2)式に従って、新たなバッファリング量BFVを算出することにより、バッファリング量BFVを更新する。そして、格納部140は、更新されたバッファリング量BFVを制御部190へ送る。
ステップS26の処理が終了すると、処理はステップS21へ戻る。以後、ステップS21〜S26の処理が繰り返される。
《付加格納処理》
次いで、ステップS25における付加格納処理について説明する。
付加格納処理に際しては、図4に示されるように、まず、ステップS31において、格納部140が、復号データDTDにおいて音声放送コンテンツ(以下、単に「コンテンツ」ともいう)の切れ目が存在するか否かを判定する。なお、本実施形態では、音声放送コンテンツの切れ目(「音声放送の切れ目」ともいう)には、番組の切り替わりに加えて、楽曲の切り替わりが含まれるようになっている。
ここで、番組の切り替わりは、復号データDTDに含まれるサービス識別子(SID)又は番組識別コード(PIコード)の変化を監視することにより検出される。また、楽曲の切り替わりは、動的ラベルセグメント(DLS)の変化を監視することにより検出される。ここで、動的ラベルセグメント(DLS)は、楽曲情報、番組タイプ情報、放送局名、電子番組表等の情報を含んでいる。なお、本明細書では、サービス識別子、番組識別コード、動的ラベルセグメント等を、DAB放送における「関連データ」と呼ぶものとする。
なお、HD(Hybrid Digital)ラジオにおいては、プログラム・サービス・データ(PSD)、ステーション・インフォメーションサービス(SIS)、アドバンスド・アプリケーション・サービス(AAS)が、動的ラベルセグメントに該当する。また、FM放送では、ラジオ・データ・システム(RDS)における番組内容識別情報(PTY:Program Type Identification)、放送局名情報(PS:Program Service Name)が、動的ラベルセグメントに該当する。これらの情報から番組タイプ情報、楽曲情報、放送局名等の情報を取得することができるようになっている。
ステップS31における判定の結果が否定的であった場合(ステップS31:N)には、処理は、後述するステップS33へ進む。一方、ステップS31における判定の結果が肯定的であった場合(ステップS31:Y)には、処理はステップS32へ進む。
ステップS32では、格納部140が、第1無音情報挿入処理を行う。かかる第1無音情報挿入処理では、格納部140が、復号データDTDにおける音声放送コンテンツの切れ目よりも前の音声放送コンテンツ情報に対応する復号データに続けて第1期間長の無音情報を挿入した格納データSTDを生成する。そして、処理はステップS33へ進む。
なお、第1期間長は、音声放送コンテンツの切れ目において聴取者に違和感を抱かせない観点から、実験、シミュレーション、実験等に基づいて、予め定められる。
ステップS33では、格納部140が、復号データDTDにおいて無音期間が存在するか否かを判定する。ステップS33における判定の結果が否定的であった場合(ステップS33:N)には、処理は、後述するステップS35へ進む。
ステップS33における判定の結果が肯定的であった場合(ステップS33:Y)には、処理はステップS34へ進む。このステップS34では、格納部140が、第2無音情報挿入処理を行う。かかる第2無音情報挿入処理では、格納部140が、復号データDTDにおける無音期間に続けて第2期間長の無音情報を挿入した格納データSTDを生成する。そして、処理はステップS35へ進む。
なお、第2期間長は、無音情報の挿入によって聴取者に違和感を抱かせない観点から、実験、シミュレーション、実験等に基づいて、予め定められる。
ステップS35では、格納部140が、現時点で再生している番組がトーク番組関連か否かを判定する。ステップS35における判定の結果が肯定的であった場合(ステップS35:Y)には、処理は、後述するステップS37へ進む。
ステップS35における判定の結果が否定的であった場合(ステップS35:N)には、処理はステップS36へ進む。このステップS36では、格納部140が、復号データDTDを解析し、トーク期間が存在するか否かを判定する。ステップS36における判定の結果が否定的であった場合(ステップS36:N)には、処理は後述するステップS38へ進む。
ステップS36における判定の結果が肯定的であった場合(ステップS36:Y)には、処理はステップS37へ進む。このステップS37では、格納部140が、復号データDTDにおけるトークコンテンツでの音声の進行速度よりも遅い音声再生速度となるようにテンポ調整及びピッチ調整が行われた拡張トーク音声情報を生成する。そして、格納部140が、復号データDTDにおけるトークコンテンツを当該拡張トーク音声情報に置き換えた格納データSTDを生成する。そして、処理はステップS38へ進む。
ステップS38では、格納部140が、その時点における格納データをバッファ記憶部150に格納する。なお、上述したステップS31〜S37の処理において、第1無音情報挿入処理、第2無音情報挿入処理及び拡張トーク音声情報の生成のいずれも行われなかった場合には、ステップS38において、復号データDTDがそのままバッファ記憶部150に格納される。
こうしてステップS38の処理が終了すると、ステップS25の処理が終了する。そして、処理は、上述した図3のステップS26へ進む。
なお、図5(A)には、第1無音情報挿入処理が行われた場合の格納データSTDの例が、復号データDTDと対比して示されている。また、図5(B)には、第2無音情報挿入処理が行われた場合の格納データSTDの例が、復号データDTDと対比して示されている。
さらに、図6(A)には、トーク番組関連の場合の格納データSTDの例が、復号データDTDと対比して示されている。また、図6(B)には、トーク期間が検出された場合の格納データSTDの例が、復号データDTDと対比して示されている。
<読取制御処理>
次に、読取部160により実行される読取制御処理について説明する。かかる読取制御処理には、フラグメンテナンス処理及び読取処理が含まれている。
《フラグメンテナンス処理》
まず、フラグメンテナンス処理について説明する。
フラグメンテナンス処理に際しては、図7に示されるように、まず、ステップS41において、読取部160が、欠落フラグFLGを「OFF」に設定する。引き続き、ステップS42において、読取部160が、制御部190から送られている格納指定STCが「ON」から「OFF」へ変化したか否かを判定することにより、バッファ記憶部150に記憶されているバッファリングデータに、制御部190による代替局サーチ処理の実行に伴う欠落が発生したか否かを判定する。
ステップS42における判定の結果が否定的であった場合(ステップS42:N)には、ステップS42の処理が繰り返される。一方、ステップS42における判定の結果が肯定的であった場合(ステップS42:Y)には、処理はステップS43へ進む。
ステップS43では、読取部160が、欠落フラグFLGを「ON」に設定する。引き続き、ステップS44において、読取部160が、格納部140から送られた最新の格納ポインタSTPを、中断STPとして保持する。
ステップS44の処理が終了すると、処理はステップS42へ進む。以後、ステップS42〜S44の処理が繰り返される。
《読取処理》
次に、上述したフラグメンテナンス処理と並行して実行される読取処理について説明する。
読取処理に際しては、図8に示されるように、まず、ステップS46において、読取部160が、欠落フラグFLGが「ON」であるか否かを判定する。かかる判定を行うことにより、読取部160は、バッファ記憶部150に記憶されているバッファリングデータに、制御部190による代替局サーチ処理の実行に伴う欠落が発生している否かを判定する。
ステップS46における判定の結果が否定的であった場合(ステップS46:N)には、処理はステップS47へ進む。このステップS47では、読取部160が、通常読取処理を行う。この通常読取処理では、読取部160が、読取ポインタRDPを順次更新しつつ、バッファ記憶部150に記憶されているバッファリングデータを格納順に再生用データRDDとして読み取る。引き続き、読取部160は、読み取られた再生用データRDDに基づいて出力音声データAODを生成する。そして、読取部160は、生成された出力音声データAODを音出力部170へ送る。この結果、音出力部170から、出力音声データAODに対応する音声が出力される。
こうしてステップS47の処理が終了すると、処理はステップS46へ戻る。以後、ステップS46における判定の結果が肯定的となるまで、ステップS46及びステップS47の処理が繰り返される。
代替局サーチが開始されたことに伴って欠落フラグFLGが「ON」となり、ステップS46における判定の結果が肯定的となると(ステップS46:Y)には、処理はステップS48へ進む。このステップS48では、読取部160が、欠落対応読取処理を行う。なお、欠落対応読取処理については、後述する。
ステップS48の処理が終了すると、処理はステップS46へ戻る。以後、ステップS46〜S48の処理が繰り返される。
なお、明示的な図示を省略しているが、読取部160は、バッファ記憶部150からバッファリングデータを読み取るたびに、読取ポインタRDPを更新する。そして、読取部160は、読取ポインタRDPが更新されるたびに、更新された読取ポインタRDPを格納部140へ送る。
(欠落対応読取処理)
次いで、ステップS48において実行される欠落対応読取処理について説明する。
欠落対応読取処理に際しては、図9に示されるように、まず、ステップS51において、読取部160が、現時点の読取ポインタRDP(以下、「現在RDP」とも記す)から、ステップS44において保持された中断STPまでのバッファリングデータ内に音声放送コンテンツの切れ目が存在するか否かを判定する。ステップS51における判定の結果が肯定的であった場合(ステップS51:Y)には、処理はステップS52へ進む。
ステップS52では、読取部160が、バッファ記憶部150内の中断STPまでのバッファリングデータに対して、上述したステップS47の場合と同様の通常読取処理を行う。そして、処理はステップS53へ進む。
ステップS53では、読取部160が、バッファ記憶部150内の中断STPから現時点の格納ポインタSTPまでのバッファリングデータ内に音声放送コンテンツの切れ目があるか否かを判定する。ステップS53における判定の結果が肯定的であった場合(ステップS53:Y)には、処理はステップS54へ進む。
ステップS54では、読取部160が、第1欠落対応読取処理を行う。そして、処理は、後述するステップS60へ進む。
なお、第1欠落対応読取処理については、後述する。
上述したステップS53における判定の結果が否定的であった場合(ステップS53:N)には、処理はステップS55へ進む。このステップS55では、読取部160が、第2欠落対応読取処理を行う。そして、処理はステップS60へ進む。
なお、第2欠落対応読取処理については、後述する。
上述したステップS51における判定の結果が否定的であった場合(ステップS51:N)には、処理はステップS56へ進む。このステップS56では、読取部160が、バッファ記憶部150内の中断STPから第1所定データ量前までのバッファリングデータに対して、上述したステップS47の場合と同様の通常読取処理を行う。そして、処理はステップS57へ進む。
なお、第1所定データ量は、後述するフェードアウト読取処理が行われて生成された出力音声データAODに対応する再生音声を違和感のないフェードアウト音声とする観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
ステップS57では、読取部160が、バッファ記憶部150内の中断STPから現時点の格納ポインタSTPまでのバッファリングデータ内に音声放送コンテンツの切れ目があるか否かを判定する。ステップS57における判定の結果が肯定的であった場合(ステップS57:Y)には、処理はステップS58へ進む。
ステップS58では、読取部160が、第3欠落対応読取処理を行う。そして、処理はステップS60へ進む。
なお、第3欠落対応読取処理については、後述する。
上述したステップS57における判定の結果が否定的であった場合(ステップS57:N)には、処理はステップS59へ進む。このステップS59では、読取部160が、第4欠落対応読取処理を行う。そして、処理はステップS60へ進む。
なお、第4欠落対応読取処理については、後述する。
ステップS60では、読取部160が、欠落フラグFLGを「OFF」に設定する。こうしてステップS60の処理が終了すると、ステップS48の処理が終了する。そして、処理は、上述した図8のステップS46へ戻る。
((第1欠落対応読取処理))
次に、ステップS54において実行される第1欠落対応読取処理について説明する。
第1欠落対応読取処理が実行されるのは、上述したステップS53の実行時点において、再生対象となる音声放送コンテンツの受信状況が、図10(A)に例示されるようになっていた場合である。すなわち、(a1)一のコンテンツ(図10(A)においては「楽曲H」)が他のコンテンツ(図10(A)においては「楽曲J」)に切り替わった後、当該他のコンテンツを受信中に代替局サーチに欠落が生じ、(a2)その後、別のコンテンツ(図10(A)においては「楽曲K」)に切り替わっている場合に、第1欠落対応読取処理が実行される。
なお、図10(A)には、代替局サーチ前の再生チャンネルの放送内容と、代替局サーチ後の再生チャンネルの放送内容とが同一であった場合の例が示されている。
かかる第1欠落対応読取処理に際しては、図10(B)に示されるように、ステップS61において、読取部160が、読取ポインタRDPを次の音声放送コンテンツの切れ目に設定する。こうしてステップS61の処理が終了すると、ステップS54の処理が終了する。そして、処理は、上述した図9のステップS60へ進む。
なお、図11(A)には、上述した図10(A)に示された受信状況の場合におけるバッファ記憶部150内のバッファリングデータ、第1欠落対応読取処理による読取ポインタRDPの推移、及び、出力音声データAODの推移が示されている。また、図11(B)には、出力音声データAODに従って音出力部170から出力される再生コンテンツ音声の再生タイミングが、図10(A)に示された受信状況と対比して示されている。
((第2欠落対応読取処理))
次に、ステップS55において実行される第2欠落対応読取処理について説明する。
第2欠落対応読取処理が実行されるのは、上述したステップS53の実行時点において、再生対象となる音声放送コンテンツの受信状況が、図12(A)に例示されるようになっていた場合である。すなわち、(b1)一のコンテンツ(図12(A)においては「番組L」)が他のコンテンツ(図12(A)においては「番組M」)に切り替わった後、当該他のコンテンツを受信中に代替局サーチに欠落が生じ、(b2)その後、別のコンテンツへの新たな切り替わりが生じていない場合に、第2欠落対応読取処理が実行される。
なお、図12(A)には、上述した図10(A)の場合と同様に、代替局サーチ前の再生チャンネルの放送内容と、代替局サーチ後の再生チャンネルの放送内容とが同一であり、かつ、代替局サーチに欠落が生じた「番組M」が、代替局サーチの終了も継続している場合の例が示されている。
かかる第2欠落対応読取処理に際しては、図12(B)に示されるように、まず、ステップS71において、読取部160が、読取ポインタRDPを中断STPに設定する。引き続き、ステップS72において、読取部160が、フェードイン読取処理を行う。
かかるフェードイン読取処理に際して、読取部160は、バッファ記憶部150内の中断STPから第2所定データ量のバッファリングデータを順次読み取りつつ、音量レベルが順次高まっていくように出力音声データAODを生成する。そして、読取部160は、生成された出力音声データAODを音出力部170へ送る。この結果、音出力部170から、フェードイン音声が出力される。
なお、第2所定データ量は、フェードイン読取処理が行われて生成された出力音声データAODに対応する再生音声を違和感のないフェードイン音声とする観点から、実験、シミュレーション、経験等に基づいて、予め定められる。
こうしてステップS72の処理が終了すると、ステップS55の処理が終了する。そして、処理は、上述した図9のステップS60へ進む。
なお、図13(A)には、上述した図12(A)に示された受信状況の場合におけるバッファ記憶部150内のバッファリングデータ、第2欠落対応読取処理による読取ポインタRDPの推移、及び、出力音声データAODの推移が示されている。また、図13(B)には、出力音声データAODに従って音出力部170から出力される再生コンテンツ音声の再生タイミングが、図12(A)に示された受信状況と対比して示されている。
((第3欠落対応読取処理))
次に、ステップS58において実行される第3欠落対応読取処理について説明する。
第3欠落対応読取処理が実行されるのは、上述したステップS57の実行時点において、再生対象となる音声放送コンテンツの受信状況が、図14(A)に例示されるようになっていた場合である。すなわち、(c1)一のコンテンツ(図14(A)においては「番組N」)受信中に代替局サーチによる欠落が生じ、(c2)その後、他のコンテンツ(図10(A)においては「番組P」)に切り替わっている場合に、第3欠落対応読取処理が実行される。
なお、図14(A)には、代替局サーチ前の再生チャンネルの放送内容と、代替局サーチ後の再生チャンネルの放送内容とが同一である場合の例が示されている。
かかる第3欠落対応読取処理に際しては、図14(B)に示されるように、まず、ステップS81において、読取部160が、バッファ記憶部150内の現時点における中断STPの直前までのバッファリングデータに対するフェードアウト読取処理を行う。かかるフェードアウト読取処理に際して、読取部160は、バッファ記憶部150内の中断STPまでのバッファリングデータを順次読み取りつつ、音量レベルが順次低下していくように出力音声データAODを生成する。そして、読取部160は、生成された出力音声データAODを音出力部170へ送る。この結果、音出力部170から、フェードアウト音声が出力される。
次に、ステップS82において、読取部160が、読取ポインタRDPを次の音声放送コンテンツの切れ目に設定する。こうしてステップS82の処理が終了すると、ステップS58の処理が終了する。そして、処理は、上述した図9のステップS60へ進む。
なお、図15(A)には、上述した図14(A)に示された受信状況の場合におけるバッファ記憶部150内のバッファリングデータ、第3欠落対応読取処理による読取ポインタRDPの推移、及び、出力音声データAODの推移が示されている。また、図15(B)には、出力音声データAODに従って音出力部170から出力される再生コンテンツ音声の再生タイミングが、図14(A)に示された受信状況と対比して示されている。
((第4欠落対応読取処理))
次に、ステップS59において実行される第4欠落対応読取処理について説明する。
第4欠落対応読取処理が実行されるのは、上述したステップS57の実行時点において、再生対象となる音声放送コンテンツの受信状況が、図16(A)に例示されるようになっていた場合である。すなわち、(d1)一のコンテンツ(図16(A)においては「番組Q)受信中に代替局サーチによる欠落が生じ、(d2)その後、代替局サーチによる欠落後のコンテンツ(図16(A)においては「番組R」)の先頭部分が欠落している場合に、第4欠落対応読取処理が実行される。
かかる第4欠落対応読取処理に際しては、図16(B)に示されるように、まず、ステップS91において、読取部160が、上述したステップS81の場合と同様にして、バッファ記憶部150内の現時点における中断STPの直前までのバッファリングデータに対するフェードアウト読取処理を行う。引き続き、ステップS92において、読取部160が、上述したステップS72の場合と同様にして、フェードイン読取処理を行う。
こうしてステップS92の処理が終了すると、ステップS59の処理が終了する。そして、処理は、上述した図9のステップS60へ進む。
なお、図17(A)には、上述した図16(A)に示された受信状況の場合におけるバッファ記憶部150内のバッファリングデータ、第4欠落対応読取処理による読取ポインタRDPの推移、及び、出力音声データAODの推移が示されている。また、図17(B)には、出力音声データAODに従って音出力部170から出力される再生コンテンツ音声の再生タイミングが、図16(A)に示された受信状況と対比して示されている。
以上説明したように、本実施形態では、RF処理部120が、再生用に選局された放送チャンネルの放送信号を周波数変換して、信号IFSを生成する。引き続き、復号部130が、信号IFSのOFDM復調を行った後に復号処理を行って、復号データDTDを生成する。
次に、復号データDTDに音声放送コンテンツの切れ目が含まれていることが検出された場合には、格納部140が、当該切れ目よりも前の音声放送コンテンツに対応する復号データに続けて予め定められた期間長の無音情報をバッファ記憶部150に格納した後に、当該切れ目よりも後の音声放送コンテンツに対応する復号データをバッファ記憶部150に格納する。
したがって、本実施形態によれば、代替局サーチ処理に際して異音の発生を防止しつつ、かつ、代替局サーチ処理期間の全期間にわたる無音状態の発生を回避することができるとともに、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うために必要な量の情報を、バッファ記憶部150内にバッファリングすることができる。
また、本実施形態では、復号データDTDに音声放送コンテンツに無音期間が含まれている場合にも、格納部140が、無音期間に続けて無音情報をバッファ記憶部150に格納した後に、当該無音期間より後の音声放送コンテンツ情報に対応する復号データをバッファ記憶部150に格納する。このため、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うために必要な量の情報を、効率的にバッファ記憶部150内にバッファリングすることができる。
また、本実施形態では、受信した放送番組がトーク番組に関連している場合、及び、トーク期間が含まれている場合には、格納部140が、当該番組における音声の進行速度より遅い音声再生速度となるようにテンポ調整及びピッチ調整が行われた音声情報を、当該番組における音声情報に代えてバッファ記憶部150に格納する。このため、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うために必要な量の情報を、更に、効率的にバッファ記憶部150内にバッファリングすることができる。
また、本実施形態では、読取部160が、代替局サーチ処理に起因するコンテンツ情報の欠落期間の前後におけるバッファリングデータの内容に応じて、聴取者の違和感を極力低減する出力音声データAODを生成する。このため、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うことができる。
また、代替局サーチ処理に時間がかかり、バッファ記憶部のデータを全て使い果してしまった場合は、バッファ記憶部に記憶されている最も古いデータを再度利用するリピート再生を行うようにすることができる。この場合、読取ポインタRDPを利用して、楽曲データの最初から再生を行い、楽曲が最後までバッファできていない部分をスキップさせるようにしてもよい。
そして、代替局サーチ処理によってリンク候補が見つかった場合は、直ちにこれらの処理を終了し、リンク先のデータの再生を行う。この際、フェードイン、フェードアウトの処理を入れることが好ましい。
かかるリピート再生処理を行うことにより、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うことができる。
さらに、他のソース(例えば、FM放送)で同ジャンルの曲を放送しているラジオ局にリンクすることも可能である。この場合には、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うことができる。
また、バッファ記憶部にデータが十分に確保されていない状態で、代替局サーチ処理に時間がかかりバッファ記憶部のデータを使い果してしまった場合は、他のソース(例えば、FM放送)の音源を利用する。この場合、PIコードを利用してサイマル放送している他のソースにリンクするか、RDS放送における番組内容識別情報、放送局名情報等の情報から、現在同ジャンルのコンテンツを放送しているような放送局を推測しリンク動作させる。なお、ラジオ音源以外の応用例として、ユーザーが保有しているミュージックサーバなどのジャンル情報を活用して再生してもよい。
そして、代替局サーチ処理によってリンク候補が見つかった場合は、リンク先のデータの再生を行う。この際、フェードイン、フェードアウトの処理を入れることが好ましい。
かかる他ソースの音源利用を行うことにより、代替局サーチ処理が行われたとしても違和感のない音声の再生を継続的に行うことができる。
[実施形態の変形]
本発明は、上記の実施形態に限定されるものではなく、様々な変形が可能である。
例えば、上記の実施形態では、DAB規格対応の放送受信装置に本発明を適用したが、他の規格対応の放送受信装置に本発明を適用してもよい。
また、上記の実施形態では、音声放送コンテンツの切れ目に続く無音情報の挿入、音声放送コンテンツにおける無音期間に続く無音情報の挿入、トーク番組に関連する番組における拡張トーク情報の生成、及び、トーク期間に対応した拡張トーク情報の生成という4種類の付加格納を行うようにした。これに対し、これらの4種類の付加格納のうちから選択された1以上の付加格納を行うようにしてもよい。
なお、上記の実施形態における格納部及び読取部をCPU(Central Processing Unit)、DSP(Digital Signal Processor)等を備えた演算手段としてのコンピュータとして構成し、予め用意されたプログラムを当該コンピュータで実行することにより、上記の実施形態における格納部及び読取部の機能を実行するようにしてもよい。このプログラムはハードディスク、CD−ROM、DVD等のコンピュータで読み取り可能な記録媒体に記録され、当該コンピュータによって記録媒体から読み出されて実行される。また、このプログラムは、CD−ROM、DVD等の可搬型記録媒体に記録された形態で取得されるようにしてもよいし、インターネットなどのネットワークを介した配信の形態で取得されるようにしてもよい。