(58)【調査した分野】(Int.Cl.,DB名)
前記制御部は、前記管理情報の読み出し指示を検知した場合に、前記管理情報が前記記録部に記録されているか否かを判定し、記録されている場合に、前記記録部より前記管理情報を読み出すこと
を特徴とする請求項1に記載の音響装置。
【背景技術】
【0002】
近年、オーディオプレイヤ等の音響装置において、タイトル等の曲情報を液晶ディスプレイ等に表示する機能を備えたものが実用化されている。曲情報を表示する場合、該当する曲が選択された後、曲情報が表示されるのが一般的である。
【0003】
この場合、システムとしては、
(1)選択された曲の曲情報を記録メディアから読み出す。
(2)読み出した曲情報を元に必要な情報を表示機器に送る。
という流れで処理されるケースが一般的である。
【0004】
上記の処理を行う場合、オーディオプレイヤがその他の処理、例えば再生動作等を行っていない場合は、特に支障は発生しない。しかしその他の処理を行っている場合、曲情報の読み出しに時間がかかる場合がある。特に、曲情報の取得対象以外の曲を再生している場合等は、アクセスするメディアの物理的な位置(例えば半導体メモリにおけるセグメント)が異なるケースが多いため、再生や曲情報表示に遅延が発生する場合がある。
【0005】
このような状況を回避するために、一旦アクセスした曲情報の内容をデバイス内部(例えばメモリ)に保持しておく装置も存在する。このような装置では、曲情報を取得する際に毎回メディアにアクセスを行わず、メモリから直接読み出すことで読み出し遅延を回避する、いわゆるキャッシュシステムを実装している。
【0006】
上記の技術に関連して、キャッシュされたオブジェクトコンポーネントから非キャッシュオブジェクトを生成するキャッシュシステムが開示・提案されている(例えば特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上記のようなキャッシュシステムを実装した場合でも、以下のようなケースには対応できないため、場合によっては同様の遅延が発生する可能性がある。
【0009】
まず、一般的なキャッシュシステムでは、すでにユーザがアクセスを行った曲情報についてキャッシュを行う方法をとっている。このため、曲選択動作等で初めてアクセスされた曲の曲情報はキャッシュされていない。この場合、通常動作と同様にメディアへの読み出し動作が必要になり、遅延が発生する確率が高まる。
【0010】
また、一般的なキャッシュシステムでは、キャッシュされた情報の時系列的に一番古い情報から破棄していく方法が一般的である。しかしこの方法では、選択された曲と管理番号(例えばプレイリストにおける再生順番)が近い曲の曲情報が、キャッシュから削除される可能性がある。また、キャッシュされた曲情報の管理番号が連番にならず、断片的になる可能性がある。この結果、キャッシュのヒット率が低下する。
【0011】
本発明は、本願の発明者により見出された上記の問題点に鑑み、音響装置における曲情報へのアクセス特性を利用した独自のキャッシュシステムを構築することにより、上記問題点を回避することが可能な音響装置を提供することにある。
【課題を解決するための手段】
【0012】
上記目的を達成するために、本発明に係る音響装置は、情報を記録する記録部と、音声情報の再生処理を行う再生処理部と、前記再生処理における再生順序に応じて前記音声情報の序列を決定する制御部と、を備えた音響装置であって、前記制御部は、前記音声情報の選択指示が検知された場合に、前記序列において該音声情報から予め定められた範囲内に位置する前記音声情報を判別し、判別した該音声情報の管理に用いられる管理情報を取得して前記記録部に記録することを特徴とする構成(第1の構成)とされている。
【0013】
なお、上記第1の構成から成る音響装置は、前記制御部が、前記管理情報の読み出し指示を検知した場合に、前記管理情報が前記記録部に記録されているか否かを判定し、記録されている場合に、前記記録部より前記管理情報を読み出すことを特徴とする構成(第2の構成)にするとよい。
【0014】
また、上記第2の構成から成る音響装置は、前記制御部が、前記選択指示の示す選択対象が変更されたことを検知した場合に、変更後の前記音声情報から予め定められた範囲内に位置する前記音声情報を判別し、前記範囲内に位置しない前記音声情報の前記管理情報を前記記録部より削除することを特徴とする構成(第3の構成)にするとよい。
【0015】
また、上記第3の構成から成る音響装置は、前記制御部が、前記削除がなされた前記管理情報の数をカウントし、カウント数が予め定められた閾値に達した場合に、前記判別及び前記取得を行うとともに前記カウント数を初期化することを特徴とする構成(第4の構成)にするとよい。
【0016】
また、上記第4の構成から成る音響装置は、操作入力の受け付けを行う入力部を備え、前記制御部は、前記入力部により、前記音声情報の選択指示を受け付けることを特徴とする構成(第5の構成)にするとよい。
【0017】
また、上記第5の構成から成る音響装置は、画像信号を生成して出力する出力部を備え、前記制御部は、取得した前記管理情報を表示するための画像信号を生成して出力するよう前記出力部を制御することを特徴とする構成(第6の構成)にするとよい。
【0018】
また、上記第6の構成から成る音響装置は、前記音響装置に着脱可能な外部記録媒体より情報を読み出すインタフェース部を備え、前記制御部は、前記外部記録媒体より前記音声情報及び前記管理情報を読み出すことを特徴とする構成(第7の構成)にするとよい。
【発明の効果】
【0019】
本発明によれば、曲タイトル等の管理情報を表示する機能を備えた音響装置において、一時記録媒体である記録部から管理情報を取得する頻度を向上させることができる。このため、音楽情報が記録されている記録媒体から管理情報が読み出されることに起因するアクセス遅延の発生を低減し、装置の反応性向上を図ることができる。
【発明を実施するための形態】
【0021】
<音響装置>
図1は、本発明の音響装置であるオーディオプレイヤ100の一構成例を示す図である。本構成例のオーディオプレイヤ100は、システムコントローラ101(制御部)と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103(記録部)と、オーディオデコーダ104(再生処理部)と、オーディオDAC(Digital to Analog Converter)105(再生処理部)と、ディスプレイコントローラ106(出力部)と、入力デバイスコントローラ107(入力部)と、外部メモリコントローラ108(インタフェース部)と、を含むように構成されている。
【0022】
またオーディオプレイヤ100に接続される外部装置として、スピーカ200と、ディスプレイデバイス300と、入力デバイス400と、外部メモリデバイス500と、が存在する。
【0023】
システムコントローラ101は、オーディオプレイヤ100のシステム全体を統括的に管理、制御する装置であり、一般的にはMPU(Micro Processing Unit)等が該当する。なお、システムコントローラ101が実施する各種処理の詳細については後述する。
【0024】
ROM102は、システムコントローラ101からアクセスされる不揮発性半導体メモリである。ROM102は、システムコントローラ101が実行するプログラムのコードやパラメータ等を保持する。
【0025】
またROM102は、オーディオプレイヤ100の各部の動作設定を行うための設定値を示すロジックデータ等を保持する。なお本実施形態のROM102には、システムコントローラ101が後述するキャッシュ処理を行うためのプログラムが記録されているものとする。
【0026】
RAM103は、システムコントローラ101からアクセスされる揮発性半導体メモリである。RAM103は、プログラム実行時における一時記録領域等に使用される。なお本実施形態のRAM103は、後述するキャッシュ処理において曲情報(管理情報)を記録するのに用いられる。
【0027】
オーディオデコーダ104は、入力された圧縮オーディオデータ、例えばMP3データやWMAデータ等を復元し、再生処理が可能なオーディオデータ(音楽情報)に変換する。
【0028】
オーディオDAC105は、オーディオデコーダ104より入力されたオーディオデータに対してデジタル/アナログ変換を行うことにより、オーディオ信号を生成する。
【0029】
ディスプレイコントローラ106は、外部に接続されるディスプレイデバイス300、例えばLCD等を電気的に制御する。なおシステムによっては、システムコントローラ101が、ディスプレイデバイス300を直接制御する形態でもよい。
【0030】
入力デバイスコントローラ107は、外部に接続される入力デバイス400、例えば操作スイッチ等を電気的に制御する。なおシステムによっては、システムコントローラ101が、入力デバイスコントローラ107を直接制御する形態でもよい。
【0031】
外部メモリコントローラ108は、外部メモリデバイス500よりデータを読み出すためのインタフェース、及びコントローラを含む。例えば外部メモリデバイス500としてUSB(Universal Serial Bus)メモリを接続する形態であれば、USB接続端子やUSBコントローラを含む。或いは、外部メモリデバイス500としてCD(Compact Disk)等の光ディスクを用いる形態であれば、光ピックアップやディスクトレイ、スピンドルモータ等を含む形態でもよい。
【0032】
スピーカ200は、オーディオDAC105より与えられる音声信号に基づいて音声の出力を行う。なおスピーカ200の具体的な形状としては、例えばアンプを内蔵した据え置き型の形状でもよいし、ヘッドフォン等の小型で携帯可能な形状でもよい。
【0033】
ディスプレイデバイス300は、例えば液晶ディスプレイなどの表示部と、ドライバ部とを含む。ドライバ部は、入力デバイスコントローラ107より与えられる制御信号に基づいて、表示部の画素電極に対して駆動電圧を印加する。これにより表示部は、印加された駆動電圧に応じて画像を表示する。
【0034】
入力デバイス400は、オーディオプレイヤ100の所有者(以下、「ユーザ」という)がオーディオプレイヤ100に対して、再生指示や音量調整指示等の各種指示を入力するためのものである。入力デバイス400は例えば、複数のボタンやタッチパネル等を含むように構成されている。入力デバイス400により入力された指示は、システムコントローラ101へ与えられ、指示に基づいて各種制御処理が行われる。
【0035】
外部メモリデバイス500は、例えばUSBメモリやSD(Secure Digital)メモリカード等の半導体記録装置が該当する。またこれら以外にも、CDやDVD(Digital Versatile Disc)等の光ディスクや、HDD(Hard Disk Drive)等の磁気記録媒体を用いる形態でもよい。なお本実施形態では、外部メモリデバイス500にオーディオデータ及び曲情報が記録されているものとして説明を行う。
【0036】
<キャッシュ処理>
ここで、本発明の一実施形態に係るシステムコントローラ101が実施するキャッシュ処理について、
図1から
図3を用いつつ説明する。
【0037】
本実施形態のシステムコントローラ101は、入力デバイス400からの制御信号に応じて、オーディオデータの再生や、曲情報の表示等を行う。またシステムコントローラ101は、外部メモリデバイス500から、再生するオーディオデータや、オーディオデータを管理するための曲情報を読み出す。曲情報には例えば、再生時間、タイトル、アーティスト名等が含まれている。
【0038】
システムコントローラ101は、取得したオーディオデータを、必要に応じてオーディオデコーダ104へ出力する。また取得した曲情報を、必要に応じてディスプレイコントローラ106へ出力する。ただし、オーディオデータと曲情報とは、通常は同一の外部メモリデバイス500から、外部メモリコントローラ108を介して読み出される。このため、どちらかの読み出しに遅延が発生すると、もう片方の処理にも影響を及ぼす。
【0039】
そこで本実施形態のシステムコントローラ101は、
図2に示すように、複数のオーディオデータをその再生順序に基づいて仮想的に一列に並べた、序列形式で曲の管理を行う。そしてこの序列において、現在選択されている曲の位置を、カレントポジションとして扱う。
【0040】
さらにシステムコントローラ101は、カレントポジションを基準として、曲情報をキャッシュする範囲を示すキャッシュスコープを設定する。
図2は、カレントポジションが10曲目(No.10)であり、キャッシュスコープが前後に5曲の範囲で設定される例を示している。
【0041】
なお、本実施形態における曲の位置とは、オーディオデータや曲情報が記録されている記録媒体上の、物理的な記録位置とは関係がない。あくまで、曲を管理する上での、概念としての仮想的な位置である。例えば、CDにおける再生トラックの番号や、プレイリストにおいてその曲が何番目に再生されるかを示す再生番号等が、この仮想的な位置を決定する情報となる。
【0042】
従って曲と曲との距離も、曲情報の管理概念における相対距離であり、記録媒体における物理的な距離とは関係がない。例えばCDにおいてトラック1の曲とトラック4の曲との距離は3、トラック2とトラック7との距離は5、のように定義できるが、これらはあくまで仮想的な距離であり、各トラックの物理的な記録位置に影響されるものではない。
【0043】
また例えば、曲がフォルダ単位で管理されており、再生対象となるフォルダ内に20個の曲が存在したとする。この場合、
図2の例のように、20個の曲に対して20個の管理番号が割り振られ、番号順に曲が並べられているものと想定して、曲を管理する。
【0044】
図2では、ユーザにより選択された曲の管理番号がNo.10であり、No.10がカレントポジションとなっている。システムコントローラ101は、このカレントポジションと、予め定められているキャッシュ値とに基づき、キャッシュスコープを決定する。
【0045】
キャッシュ値とは、キャッシュスコープの大きさを決定するための数値であり、例えば
図2では、キャッシュ値が5である場合のキャッシュスコープを示している。キャッシュ値が5であるため、No.10の前方向(図中の左方向)に5曲、後方向(図中の左方向)に5曲を、キャッシュ対象とする。この結果、No.5からNo.15までの範囲がキャッシュスコープとなる。なお、前方向のキャッシュ値と後ろ方向のキャッシュ値とは必ずしも同一である必要はなく、それぞれに個別の値を設定可能とする形態でもよい。
【0046】
システムコントローラ101は、このキャッシュスコープに基づいて曲情報の先読みを行う。具体的には、外部メモリコントローラ108にアイドル状態等の空き状態が発生した場合に、キャッシュスコープに含まれる曲の曲情報を、事前に読み出してRAM103に記録(キャッシュ)しておく。
【0047】
以上で説明したキャッシュ処理は、ユーザが曲情報を選択する場合に、カレントポジションを基準にシーケンシャルにアクセスする傾向が強いことを利用している。つまり、キャッシュする曲情報を、時系列(過去のアクセス履歴)から判断するのではなく、カレントポジションからの相対距離で判断する。
【0048】
なお、カレントポジションが序列の先頭曲または終端曲の近傍に位置する場合、先頭曲と終端曲とが互いに隣接する曲であるものとして、キャッシュスコープを設定する。例えば
図3に示すように、カレントポジションが終端曲のNo.20である場合、No.1〜5とNo.15〜19とが、キャッシュスコープに含まれることとなる。
【0049】
<キャッシュ処理フロー>
次に、システムコントローラ101が実施するキャッシュ処理の処理フローについて、
図4及び
図5の模式図と、
図6のフローチャートとを参照しつつ説明する。なお、本フローチャートで例示するキャッシュ処理は、ユーザ操作等により曲が選択される等、曲の選択指示が検知された時点で開始される。ただし選択された曲は必ずしも再生処理される必要はなく、例えば曲情報を表示するための曲選択も、この選択指示に含まれる。
【0050】
本処理の開始後、まずシステムコントローラ101は、カレントポジションの設定を行う(ステップS11)。なお、オーディオプレイヤ100の起動直後のように、カレントポジションの指定を受けていない状態では、例えば初期位置(先頭曲)をカレントポジションとする。或いは、電源停止時にカレントポジションを記録しておき、再起動後に、記録してあるカレントポジションへ移動する形態でもよい。
【0051】
カレントポジションのセットがなされると、次にシステムコントローラ101は、キャッシュスコープのチェックを行う(ステップS12)。このチェックにより、キャッシュデータの削除の要/不要と、キャッシュデータの追加の要/不要とを判定する。
【0052】
より具体的には、キャッシュスコープに含まれていない曲の曲情報がRAM103にキャッシュデータとして存在する場合、これを削除する。また、キャッシュデータを削除した累計数が所定のキャッシュデリート閾値に達した場合に、キャッシュスコープに新たに含まれた曲の曲情報を、キャッシュデータとしてRAM103に記録する。
【0053】
例えば
図4は、カレントポジションがNo.10からNo.12へ移動し、且つキャッシュデリート閾値が3である場合を示している。
図4の例では、カレントポジションが後方向に2だけ移動したことにより、No.10の前方向に存在するNo.5とNo.6の2曲について、キャッシュデータの削除が必要であると判定される。
【0054】
この結果、システムコントローラ101は、該当するキャッシュデータを1エントリー分(1曲分)だけ削除する(ステップS13)。削除が完了すると、再びステップS12へ移行する。
図4の例では、この処理が2回繰り返されることとなる。ただし、この時点では、削除の累計数がキャッシュデリート閾値に到達していないため、新たなキャッシュデータの追加は実施されない。
【0055】
ステップS12のチェックの結果、キャッシュデータの変更が必要ないと判定された場合、システムコントローラ101は、メイン処理に移行する(ステップS15)。メイン処理では、オーディオデータの再生や、曲情報の表示等を、ユーザ操作等に基づいて実施する。
【0056】
メイン処理内で曲情報の取得が必要となった場合、該当するキャッシュデータがRAM103に存在しているか否かを判定し、存在していればキャッシュデータを優先して読み出す。存在していなければ、外部メモリデバイス500等から直接読み出す。
【0057】
メイン処理の実施中において、システムコントローラ101は、ユーザ操作やある曲の再生完了等によりカレントポジションの移動がなされたか否かを監視する(ステップS16)。カレントポジションの移動が検知されていない場合、再びステップS15へ移行する。カレントポジションの移動が検知された場合、再びステップS12へ移行し、キャッシュスコープを再設定する。
【0058】
カレントポジションが移動されたことにより、例えば
図4に示す状態から、
図5に示す状態へ移行したとする。
図5では、カレントポジションがNo.12からNo.13へ1だけ移動している。これにより、No.12の前方向に存在するNo.7について、キャッシュデータの削除が必要であると判定される(ステップS13)。
【0059】
累積されている削除数(カウント数)が、前回の2回と合わせて計3回となったため、キャッシュデリート閾値に到達したとみなされる。この結果、キャッシュデータの追加が必要であると判定され、該当するキャッシュデータを1エントリー分だけ読み込む(ステップS14)。
図5の例では、この処理が3回繰り返されることとなる。これにより、キャッシュスコープに含まれるNo.16からNo.18の曲情報が、先読み処理によって読み出される。先読み処理が完了すると、累積されている削除数を初期化し、再びメイン処理へ移行する(ステップS15)。
【0060】
上記の処理を継続して行うことにより、カレントポジションの前後の曲情報が常にRAM103にキャッシュされていることとなり、カレントポジションが前後に移動しても、直接RAM103から曲情報を読み出すことができる。つまり、曲情報の選択のたびに、外部メモリデバイス500から曲情報を読み出す必要がない。なお、キャッシュスコープを設定するためキャッシュ値及びキャッシュデリート閾値は、システムの仕様とリソースによって、適宜変更可能である。
【0061】
以上に説明した本実施形態によれば、削除数がキャッシュデリート閾値に達した場合に、キャッシュスコープに含まれている曲の曲情報をRAM103に記録し、既にキャッシュされている曲情報はそのまま再利用する。このため、キャッシュを利用して曲情報を取得する頻度を向上させることができる。この結果、アクセス遅延が発生する確率を低減し、ユーザ操作のレスポンス向上を図ることができる。例えば、再生動作中等において、曲情報を高速に表示するとともに、アクセス遅延による再生の音途切れ等を低減することができる。
【0062】
<その他の変形例>
なお、本発明の構成は、上記実施形態のほか、発明の主旨を逸脱しない範囲で種々の変更を加えることが可能である。すなわち、上記実施形態は、全ての点で例示であって、制限的なものではないと考えられるべきであり、本発明の技術的範囲は、上記実施形態の説明ではなく、特許請求の範囲によって示されるものであり、特許請求の範囲と均等の意味及び範囲内に属する全ての変更が含まれると理解されるべきである。
【0063】
また上記実施形態では、本発明の音響装置としてオーディオプレイヤ100を例示しているが、音声出力機能を備えたこれ以外の装置において本発明を実施する形態でもよい。例えば、携帯電話やPDA(Personal Digital Assistant)等の装置において実施する形態でもよい。
【0064】
また上記実施形態では、音楽情報及び曲情報が記録されている記録媒体として外部メモリデバイス500(半導体記録装置、光ディスク、磁気記録媒体)を例示しているが、記録媒体はこれに限定されるものではない。例えば光磁気ディスクや磁気テープ等の記録媒体を用いる形態でもよい。またこれらの記録媒体が、外部接続されるのではなく、オーディオプレイヤ100に内蔵されている形態でもよい。
【0065】
また上記実施形態では、1フォルダ内に20曲が存在しており、この20曲の中で繰り返し再生を行う再生形態を前提として説明を行っているが、再生形態はこれに限定されるものではない。例えばフォルダAに15曲、フォルダBに10曲が記録されており、フォルダAの再生完了後にフォルダBが再生される再生形態であったとする。この場合、例えばフォルダAの20曲目がカレントポジションであり、且つキャッシュ値が5である状態においては、キャッシュスコープはフォルダAの15〜19曲目と、フォルダBの1〜5曲目とを、その対象として含めることとなる。
【0066】
また上記実施形態では、再生形態の変更については特に言及していないが、再生形態をユーザ設定等により変更可能とする形態でもよい。この場合、システムコントローラ101は、再生形態がユーザ設定等により変更されるたびに、再生形態に応じてキャッシュスコープの設定方法を適宜変更し、キャッシュの再構築を行う。