JP4397763B2 - 車載オーディオ装置 - Google Patents

車載オーディオ装置 Download PDF

Info

Publication number
JP4397763B2
JP4397763B2 JP2004253150A JP2004253150A JP4397763B2 JP 4397763 B2 JP4397763 B2 JP 4397763B2 JP 2004253150 A JP2004253150 A JP 2004253150A JP 2004253150 A JP2004253150 A JP 2004253150A JP 4397763 B2 JP4397763 B2 JP 4397763B2
Authority
JP
Japan
Prior art keywords
data
sort
sorting
vehicle audio
radix
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
JP2004253150A
Other languages
English (en)
Other versions
JP2006073063A (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.)
Denso Ten Ltd
Original Assignee
Denso Ten 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 Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2004253150A priority Critical patent/JP4397763B2/ja
Publication of JP2006073063A publication Critical patent/JP2006073063A/ja
Application granted granted Critical
Publication of JP4397763B2 publication Critical patent/JP4397763B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

この発明は、車両の乗員に対して複数のコンテンツデータを再生出力するサービスを提供する車載オーディオ装置に関し、特にコンテンツデータのソートを少ない作業用メモリで高速に実行する車載オーディオ装置に関する。
従来、データに対して所定の処理、例えばデータを特定の順序で並び替えるソート処理などを行う場合に、その処理の高速化や処理に要する計算資源の削減を実現させるべく、様々な考案が行われてきた。この処理の高速化については、処理アルゴリズムとデータ入出力の速度が重要となる。また、計算資源の削減には、処理の実行時に必要な作業用メモリ(バッファメモリ)の削減が重要となる。
そこで、特許文献1が開示する整順列化装置及び整順列化方法では、整順列化処理(ソート処理)において作業用メモリを削減しており、特許文献2が開示するデータベースでは、入力データ集合を部分集合に分割して入力することで、入力を高速化していた。
特開平9−54676号公報 特開2001−331353号公報
ところで、近年、車載のオーディオ装置にHDD(ハードディスクドライブ)などの記録媒体を持たせ、記録媒体に格納した音楽データなどのコンテンツデータを再生出力することが一般的となっている。
かかる車載オーディオ装置では、記録媒体の大容量化に伴って格納可能なコンテンツデータの数が増大しているので、表示などの際にソート等の処理を行う必要が高まっている。
ここで、コンテンツデータのソートキー(ソートに使用する情報、例えばアーティスト名や曲名のデータ)を全コンテンツデータ分加算した合計サイズがソート処理時に使用する作業用メモリの容量以内であるならば、全コンテンツデータ分のソートキーを一括して読み出してソート処理を行うことができる。
しかし、合計サイズが作業用メモリ容量を超える場合には、HDDから繰り返しデータを読み出すこととなり、HDDからの読み出し回数に応じてソート処理の速度が低下する。たとえば、比較的比較回数の少ないクイックソートを用いたとしても,NlogN回のHDDアクセスが必要となり、高速に実行することが困難である。
このように、多量のデータをソートする場合、高速性と省メモリとを同時に満たすことが難しいという問題点があった。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、省メモリで高速なソートを実行可能な車載オーディオ装置を提供することを目的とする。
上述した課題を解決し、目的を達成するため、請求項1の発明に係る車載オーディオ装置は、車両の乗員に対して複数のコンテンツデータを再生出力するサービスを提供する車載オーディオ装置であって、前記複数のコンテンツデータの各々に対し、当該コンテンツデータに関する情報であるコンテンツ情報データを記憶する記憶手段と、前記複数のコンテンツ情報データを基数ソートによってソートするソート処理手段と、前記コンテンツ情報データのうち前記基数ソートによって互いに比較される部分キーを抽出し、前記互いに比較される部分キーの組み合わせをソート用データとして前記記憶手段もしくは他の任意の記憶手段に格納するソート用データ作成手段と、を備え、前記ソート処理手段は、前記ソート用データを読み出して前記基数ソートを実行することを特徴とする。
この請求項1の発明によれば車載オーディオ装置は、複数のコンテンツデータの各々に対し、当該コンテンツデータに関する情報であるコンテンツ情報データを記憶し、コンテンツ情報データを基数ソートする場合の処理手順に従って加工してソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項2の発明に係る車載オーディオ装置は、請求項1の発明において、前記ソート用データ作成手段は、前記複数のコンテンツ情報データのそれぞれについて、ソート対象項目となるデータの下位から所定サイズ分を切り分けて前記ソート用データとすることを特徴とする。
この請求項2の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの下位から所定サイズ分を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項3の発明に係る車載オーディオ装置は、請求項2の発明において、前記所定サイズが固定の値であることを特徴とする。
この請求項3の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの下位から固定された所定サイズ分を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項4の発明に係る車載オーディオ装置は、請求項2の発明において、前記ソート用データ作成手段は、前記コンテンツ情報データの件数と、前記ソート処理手段が使用する作業用メモリのメモリ容量とに基づいて前記所定サイズを動的に設定することを特徴とする。
この請求項4の発明によれば車載オーディオ装置は、コンテンツ情報データの件数と、ソート処理手段が使用する作業用メモリのメモリ容量とに基づいて決定したサイズでコンテンツ情報データのソート対象項目を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項5の発明に係る車載オーディオ装置は、請求項1〜4のいずれか一つの発明において、前記ソート用データ作成手段は、前記複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、前記ソート処理手段が使用する作業用メモリのメモリ容量を超える場合に前記ソート用データを作成することを特徴とする。
この請求項5の発明によれば車載オーディオ装置は、複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、ソート処理手段が使用する作業用メモリのメモリ容量を超える場合にコンテンツ情報データからソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項6の発明に係る車載オーディオ装置は、請求項5の発明において、前記ソート処理手段は、前記複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、前記ソート処理手段が使用する作業用メモリのメモリ容量以内である場合に、基数ソート以外のソートアルゴリズムを用いてソートすることを特徴とする。
この請求項6の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの合計サイズが作業用メモリのメモリ容量を超える場合にはソート用データを読み出して基数ソートし、合計サイズがメモリ容量以内である場合にはコンテンツ情報データを読み出して基数ソート以外のアルゴリズムでソートする。
また、請求項7の発明に係る車載オーディオ装置は、請求項1〜6のいずれか一つの発明において、前記ソート用データ作成手段は、前記コンテンツ情報データのうち、ソート対象となる項目のそれぞれについて前記ソート用データを作成することを特徴とする。
この請求項7の発明によれば車載オーディオ装置は、コンテンツ情報データのうち、ソート対象となる項目のそれぞれについてソート用データを作成し、基数ソートの実行時には対応するソート用データを読み出して使用する。
また、請求項8の発明に係る車載オーディオ装置は、請求項1〜7のいずれか一つの発明において、前記記憶手段は、前記ソート用データをさらに記憶することを特徴とする。
この請求項8の発明によれば車載オーディオ装置は、コンテンツ情報データからソート用データを作成し、コンテンツ情報データと同一の記憶手段に記憶する。
また、請求項9の発明に係る車載オーディオ装置は、請求項1〜8のいずれか一つの発明において、前記ソート用データ作成手段は、前記コンテンツデータが保存された場合に前記ソート用データの作成を実行することを特徴とする。
この請求項9の発明によれば車載オーディオ装置は、コンテンツデータが保存された場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項10の発明に係る車載オーディオ装置は、請求項1〜9のいずれか一つの発明において、前記ソート用データ作成手段は、演算手段の処理負荷を監視し、処理負荷が所定値以下である場合に前記ソート用データの作成を実行することを特徴とする。
この請求項10の発明によれば車載オーディオ装置は、演算手段の処理負荷が所定値以下である場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項11の発明に係る車載オーディオ装置は、請求項1〜10のいずれか一つの発明において、前記ソート用データ作成手段は、ソート処理の実行要求が発生した場合に前記ソート用データを作成し、当該ソート用データをソート処理の終了後に削除することを特徴とする。
この請求項11の発明によれば車載オーディオ装置は、ソート処理の実行要求が発生した場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用する。
また、請求項12の発明に係る車載オーディオ装置は、請求項1〜11の発明において、前記ソート処理手段が使用する作業用メモリは、ソート結果の表示用メモリと共用することを特徴とする。
この請求項12の発明によれば車載オーディオ装置は、コンテンツ情報データからソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して表示用メモリと共用の作業用メモリに展開する。
請求項1の発明によれば車載オーディオ装置は、複数のコンテンツデータの各々に対し、当該コンテンツデータに関する情報であるコンテンツ情報データを記憶し、コンテンツ情報データを基数ソートする場合の処理手順に従って加工してソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、記憶手段からの読み出し回数を削減し、省メモリで高速なソートを実行可能な車載オーディオ装置を得ることができるという効果を奏する。
また、請求項2の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの下位から所定サイズ分を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、記憶手段からの読み出し回数を効果的に削減し、省メモリで高速なソートを実行可能な車載オーディオ装置を得ることができるという効果を奏する。
また、請求項3の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの下位から固定された所定サイズ分を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、記憶手段からの読み出し回数を削減し、省メモリで高速にソートを実行可能で、メンテナンス性が高い車載オーディオ装置を得ることができるという効果を奏する。
また、請求項4の発明によれば車載オーディオ装置は、コンテンツ情報データの件数と、ソート処理手段が使用する作業用メモリのメモリ容量とに基づいて決定したサイズでコンテンツ情報データのソート対象項目を切り分けてソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、記憶手段からの読み出し回数を削減して最適化し、ソート速度をさらに向上した車載オーディオ装置を得ることができるという効果を奏する。
また、請求項5の発明によれば車載オーディオ装置は、複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、ソート処理手段が使用する作業用メモリのメモリ容量を超える場合にコンテンツ情報データからソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、ソートすべきデータサイズとメモリとの状態に基づいて適切なソートを実行することのできる車載オーディオ装置を得ることができるという効果を奏する。
また、請求項6の発明によれば車載オーディオ装置は、コンテンツ情報データのソート対象項目となるデータの合計サイズが作業用メモリのメモリ容量を超える場合にはソート用データを読み出して基数ソートし、合計サイズがメモリ容量以内である場合にはコンテンツ情報データを読み出して基数ソート以外のアルゴリズムでソートするので、ソートすべきデータサイズとメモリとの状態に基づいてソートアルゴリズムを選択する車載オーディオ装置を得ることができるという効果を奏する。
また、請求項7の発明によれば車載オーディオ装置は、コンテンツ情報データのうち、ソート対象となる項目のそれぞれについてソート用データを作成し、基数ソートの実行時には対応するソート用データを読み出して使用するので、複数の項目のいずれを用いる場合であっても高速にソート可能な車載オーディオ装置を得ることができるという効果を奏する。
また、請求項8の発明によれば車載オーディオ装置は、コンテンツ情報データからソート用データを作成し、コンテンツ情報データと同一の記憶手段に記憶するので、省メモリで高速なソートを実行する、簡易な構成の車載オーディオ装置を得ることができるという効果を奏する。
また、請求項9の発明によれば車載オーディオ装置は、コンテンツデータが保存された場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、ソート用データを速やかに最新の状態に保ち、常に高速なソートを実行可能な車載オーディオ装置を得ることができるという効果を奏する。
また、請求項10の発明によれば車載オーディオ装置は、演算手段の処理負荷が所定値以下である場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、省メモリで高速なソートを実行する、処理負荷の小さい車載オーディオ装置を得ることができるという効果を奏する。
また、請求項11の発明によれば車載オーディオ装置は、ソート処理の実行要求が発生した場合にソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して使用するので、省メモリで高速なソートを実行可能で、記憶手段の使用量を節減した車載オーディオ装置を得ることができるという効果を奏する。
また、請求項12の発明によれば車載オーディオ装置は、コンテンツ情報データからソート用データを作成し、基数ソートの実行時にはこのソート用データを読み出して表示用メモリと共用の作業用メモリに展開するので、省メモリで高速なソートを実行する、簡易な構成の車載オーディオ装置を得ることができるという効果を奏する。
以下に添付図面を参照して、この発明に係るカーオーディオ装置の好適な実施例を詳細に説明する。
図1は、本発明の実施例であるカーオーディオ装置1の概要構成を示す概要構成図である。同図に示すように、カーオーディオ装置1は、その内部に制御部10、操作パネル11、スピーカ12、ディスプレイ13、表示処理部14、ソート処理部15、メモリ16およびHDD(ハードディスクドライブ)17を有する。
操作パネル11は、ユーザからの入力を受け付ける入力インターフェースであり、スピーカ12およびディスプレイ13は、ユーザに対する情報提供、音楽や映像などのコンテンツの再生出力に用いる出力インターフェースである。
制御部10は、カーオーディオ装置1を全体制御する制御部であり、外部からコンテンツ情報を取得してHDD17に格納する処理や、HDD17に格納したコンテンツ情報を再生する処理などを行なう。
表示処理部14は、ディスプレイ13に表示する内容を作成して作業用メモリであるメモリ16に格納した後、ディスプレイ13に表示する処理を実行する。また、ソート処理部15は、HDD17に格納したコンテンツデータのソート処理を実行する処理部である。
このソート処理部15は、作業用メモリとしてメモリ16を使用する。すなわち、メモリ16は、表示処理部14とソート処理部15とで共用されることとなる。より具体的には、ソート処理の実行中は、メモリ16をソート処理部15が使用し、ソート処理の終了後に表示処理部14がメモリ16を使用する。このように、メモリ16を排他利用することで、メモリの共用を実現し、システムに必要なメモリ搭載量を削減することができる。
HDD17は、カーオーディオ装置1が再生するコンテンツデータを記憶する記憶媒体である。本実施例では、HDD17は、コンテンツデータとして音楽データ31を記憶している。
さらに、HDD17は音楽データ31に関する情報を音楽情報データ32として記憶している。この音楽情報データ32の具体例を図2に示す。同図に示すように、音楽情報データ32は、楽曲のアーティスト名、アルバム名、曲名、トラック番号、記録日付、音楽データパスなどの項目を有する。
項目「アーティスト名」は、その楽曲を作成もしくは演奏したアーティストの名前を示す項目であり、項目「アルバム名」は、楽曲が収録されていたアルバムの名称を示す項目である。同様に、項目「曲名」は楽曲の名称を示す項目であり、項目「トラック番号」は楽曲のアルバム内でのトラック番号を示す項目である。
さらに、項目「記録日付」は、対応する音楽データをHDD17に記録した日付を示す項目であり、項目「音楽データパス」は対応する音楽データのHDD17における保存場所を示す項目である。
制御部10は、この音楽情報データ32を用いて、HDD17に記憶した音楽データに関する情報をユーザに対して提供し、また、ユーザから再生する音楽データを指定された場合には項目「音楽データパス」を参照して指定された音楽データを再生する。
さらに、制御部10は、複数の楽曲について情報を提供する場合に、その表示における順序をソート処理によって決定する。このソートに用いるソートキーとしては、音楽情報データのうち「アーティスト名」、「アルバム名」、「曲名」などの文字データや、「トラック番号」、「記録日付」などの数値データを用いることができる。
具体的には、ソート処理はソート処理部15によって実行される。ソート処理部15は、その内部にソート用データ作成部21および基数ソート処理部22を有する。基数ソート処理部22は、基数ソートアルゴリズムによって音楽情報データを整列する。この基数ソートアルゴリズムでは、ソートキーを下位から所定サイズずつ分割し、各ソートキーのうち、対応する位置で分割された部分(部分キー)同士の比較を繰り返すことでソートを実行する。
そのため、基数ソートを用いる場合には、ソートキーを全楽曲分一括して使用する必要が無く、メモリ16の容量がソートキーの全楽曲分の合計サイズに満たない場合であっても処理を実行することができる。
しかしながら、基数ソートの実行時に各楽曲のソートキーからそれぞれ部分キーを読み出すこととすると、HDD17へのアクセス回数が(ソートキーの分割数)×(楽曲数)となり、このアクセス回数の分だけソートの処理速度が低下する。
そこで、カーオーディオ装置1では、ソート用データ作成部21が基数ソート処理の実行に先立って、各楽曲のソートに使用されるソートキーから、基数ソートで互いに比較される部分キーを抽出して一つのブロックとして纏めたソート用データ33を作成し、HDD17に記憶している。例えば、アーティスト名をソートキーとする場合、各楽曲のアーティスト名のデータから、基数ソートで互いに比較される部分キー、すなわち対応する部分キーを抽出してソート用データとする。
このソート用データについて、図3を参照してさらに説明する。同図には、音楽情報データ32の項目「アーティスト名」を示しており、1番目の楽曲のアーティスト名は「A1,A2・・・An」である。また、2番目の楽曲のアーティスト名は「B1,B2・・・Bn」、第3の楽曲のアーティスト名は「C1,C2・・・Cn」であり、m番目の楽曲のアーティスト名が「M1,M2・・・Mn」である。
ここで、「A1」〜「Mn」をそれぞれ2バイト文字とし、基数ソートの分割サイズが4バイトであるとすると、基数ソート処理部22は、まず、「An-1,An」、「Bn-1,Bn」、「Cn-1,Cn」・・・「Mn-1,Mn」をそれぞれ部分キーとして比較し、ソートを実行する。つぎに、「An-3,An-2」、「Bn-3,Bn-2」、「Cn-3,Cn-2」・・・「Mn-3,Mn-2」をそれぞれ部分キーとして比較し、ソートを実行する。
同様に、基数ソート処理部22は、使用する部分キーを順次シフトしてソートを実行し、「A1」、「B1」、「C1」・・・「M1」を部分キーとするソートが終了した場合に処理を終了する。
すなわち、基数ソートでは、部分キーごとにソート処理を実行する。そこで、ソート用データ作成部21は、対応する部分キーを纏めてソート用データ33を作成する。たとえば図3では、「An-1,An」、「Bn-1,Bn」、「Cn-1,Cn」・・・「Mn-1,Mn」がソート用データブロックD1を形成し、「An-3,An-2」、「Bn-3,Bn-2」、「Cn-3,Cn-2」・・・「Mn-3,Mn-2」がソート用データブロックD2を形成する。
このように、基数ソートが使用する順序に従ってソート用データ33を作成することで、HDD17へのアクセス回数をソートキーの分割数に等しい回数まで抑えることができ、ソートの処理速度を向上することができる。
ここで、ソートキーとして用いるデータの長さが異なる場合、たとえば名前が8文字であるアーティストと名前が10文字であるアーティストが混在している場合などには、文字数の少ないアーティスト名の末尾に「0」データをセットして文字列の長さ(文字数)を合わせ、文字列データではなくバイナリデータとして比較することでデータの有効長の判定を不要とし、ソート処理をさらに高速化することができる。
また、ソート用データ33は、ソートキーとして利用可能な各項目(「アーティスト名」、「アルバム名」、「曲名」、「トラック番号」、「記録日付」)について、それぞれ作成しておくことが望ましい。
つづいて、基数ソート処理部22による処理動作について説明する。図4は、基数ソート処理部の処理動作を説明するフローチャートである。同図に示す処理フローは、ユーザからソート処理の実行を指定された場合や、カーオーディオ装置1が自律的にソート処理が必要であると判断した場合に開始される。
同図に示すように、まず基数ソート処理部22は、ソート対象分割アドレスを設定する(ステップS101)。このソート対象分割アドレスは、ソート用データのうち、ソートする項目に対応するデータの開始アドレスである。
つぎに、基数ソート処理部22は、ソート対象分割アドレスから所定サイズ分(ソートキーのサイズ分)のソート用データを読み込んで(ステップS102)、基数ソート処理を実行する(ステップS103)。
その後、基数ソート処理部22は、ソートキーのサイズ分、ソート対象分割アドレスを増加し(ステップS104)、ソート対象分割アドレスが最上位アドレスを超えたか否かを判定する(ステップS105)。
その結果、ソート対象分割アドレスが最上位アドレスを超えていなければ(ステップS105,No)、基数ソート処理部22は、再度ステップS102に移行する。そして、ソート対象分割アドレスが最上位アドレスを超えた場合(ステップS105,Yes)に、基数ソート処理部22は処理を終了する。
ところで、ソート用データ33は、ソート処理の開始前であれば、任意のタイミングで作成することができる。具体的には、ソート用データ33を作成するタイミングとしては、1)HDDに音楽データが記録された時点、2)負荷が軽い状況下、3)ソート実行前、などを使用することができる。
まず、1)HDDに音楽データが記録された時点でソート用データを作成する場合について説明する。図5は、HDDに音楽データが記録された時点でソート用データを作成する場合のソート用データ作成部21の処理動作を説明するフローチャートである。
同図に示すように、ソート用データ作成部21は、HDD17に対する音楽データの書き込みを監視しており、音楽データの書き込みが終了した(録音が完了した)場合(ステップS201,Yes)、音楽情報データ32をHDD17に保存する(ステップS202)とともに、ソート用データ33を作成し、HDD17に保存して(ステップS203)、処理を終了する。
このように、音楽データを録音した時点でソート用データを作成することで、ソート用データを速やかに最新の状態に保つことができる。
つづいて、2)負荷が軽い状況下でソート用データを作成する場合について説明する。図6は、負荷が軽い状況下でソート用データを作成する場合のソート用データ作成部21の処理動作を説明するフローチャートである。
同図に示すように、ソート用データ作成部21は、制御部10の負荷状態を取得して(ステップS301)監視している。そして、制御部10の負荷が所定量以下となった場合(ステップS302,Yes)に、音楽情報データを取得する(ステップS303)。
ここで、音楽情報データ32には、ソート用データを作成済みであるか否かを示すフラグなどを持たせておく。そして、ソート用データ作成部21は、このフラグを参照してソート用データを作成済みであるか否かを判定する(ステップS304)。
その結果、ソート用データが未作成である場合(ステップS304,Yes)、ソート用データ作成部21は、ソート用データ33を作成してHDD17に保存し(ステップS305)、音楽情報データのフラグを「ソート用データ作成済み」として処理を終了する。
また、ソート用データ作成部21は、ソート用データが作成済みである場合(ステップS304,No)、および制御部10の負荷か所定量を超えている場合(ステップS302,No)、ソート用データを作成することなく処理を終了する。
このように、制御部10の負荷を監視し、負荷が所定量以下である場合にソート用データを作成することで、装置全体において負荷を分散・軽減することができる。
つぎに、3)ソート実行前にソート用データを作成する場合について説明する。図7は、ソート実行前にソート用データを一時ファイル(テンポラリファイル)として作成し、ソートに使用した後に削除する場合のソート用データ作成部21の処理動作を説明するフローチャートである。
同図に示すように、ソート用データ作成部21は、基数ソート処理部22に対してソート要求が発生したか否かを監視し、ソート要求が発生した場合(ステップS401,Yes)に音楽情報データを取得する(ステップS402)。そして、ソート用データを作成し、HDD17に一時ファイルとして保存する(ステップS403)。
その後、基数ソート処理部22が、ソート用データを使用してソート処理を実行し(ステップS404)、ソート用データ作成部21は、ソート処理の完了後に一時ファイルであるソート用データ33を削除して(ステップS405)、処理を終了する。
このように、ソート用データを一時ファイルとして作成し、ソートに使用した後に削除することで、ソート用データの保存に費やされるHDD17の記憶領域を節約することが可能となる。
つぎに、部分キーのサイズ(基数ソートの分割サイズ)についてさらに説明する。図3の説明では、部分キーが4バイトである場合を例に説明したが、この部分キーのサイズは任意に設定することができる。
ここで、この部分キーのサイズを固定すると、データ構造が定量的となり、メンテナンス性を確保するとともに、性能把握を容易にすることができる。一方で、この部分キーのサイズを動的に変更することで、ソートの繰り返し(HDD17へのアクセス)を少なくし、処理を高速化することができる。
具体的には、部分キーの全楽曲分の合計サイズがメモリ16の容量を超えない範囲で部分キーをなるべく大きくとることで、ソートの繰り返し回数が最も少なくなる。そこで、
(メモリ16のメモリ容量)/(楽曲数)を部分キーのサイズ、すなわち基数ソートの分割サイズとすることで、ソート全体を最も高速化することができる。
さらに、楽曲数が少ない場合や、日付などサイズの小さいソートキーを用いる場合、(メモリ16のメモリ容量)/(楽曲数)がソートキーのサイズ以上となることがある。この場合、全楽曲分のソートキーを全てメモリ16に展開することができるので、ソート用データを用いる必要はない。
また、基数ソートは、ソートキーの一部で比較することのできるソートアルゴリズムとして有用であるが、全楽曲分のソートキー全体を一括して取り扱うことが可能であるならば、基数ソートに限らず、任意のソートアルゴリズムを使用することができる。
そこで、ソートキーの合計サイズがメモリ容量を超えている場合にのみソート用データを用いることとしてもよい。図8は、ソートキーの合計サイズとメモリ容量とを比較して実行する処理を選択する場合のフローチャートである。
同図に示すように、ソート処理部15は、ソート処理の実行前にソートキーの合計サイズとメモリ容量とを比較する(ステップS501)。そしてその結果、ソートキーの合計サイズがメモリ容量を超えている場合(ステップS501,Yes)は、ソート用データ33をHDD17から読み出し(ステップS502)、ソート用データ33を用いて基数ソート処理を行って(ステップS503)、処理を終了する。
一方、ソートキーの合計サイズかメモリ容量以内である場合(ステップS504,No)、ソート処理部15は、音楽情報データ32からソートに使用する項目(ソートキー)を読み出し(ステップS504)、ソート処理を行って(ステップS505)、処理を終了する。
なお、ステップS505において使用するアルゴリズムは、基数ソートに限らず、クイックソートやバブルソート、シェルソートなど、任意のソートアルゴリズムを利用することが可能である。
上述してきたように、本実施例にかかるカーオーディオ装置1は、ソートキーとして用いる音楽情報データ32を予め所定のサイズに分割してソート用データ33としてHDD17に記憶し、基数ソート処理の実行時にはこのソート用データ33を読み出すことで、HDD17へのアクセス回数を削減し、省メモリで高速なソート処理を実現している。
また、ソートキーの分割サイズを作業用メモリ16の容量と楽曲数とに基づいて動的に変更することで、HDD17へのアクセス回数をさらに削減し、ソート処理を高速化することができる。
なお、本実施例では、コンテンツデータの一例として音楽データを挙げて説明を行ったが、映像データなど他のコンテンツデータであっても同様に本発明を適用することができる。また、具体的な構成についても、適宜変更して実施することができる。
以上のように、本発明にかかる車載オーディオ装置は、コンテンツデータのソートに有用であり、特に、省メモリで大規模なデータを高速にソートする車載オーディオ装置に適している。
本発明の実施例にかかるカーオーディオ装置の概要構成を示す概要構成図である。 図1に示した音楽情報データの具体例を説明する説明図である。 図1に示したソート用データの具体例を説明する説明図である。 図1に示した基数ソート処理部の処理動作を説明するフローチャートである。 HDDに音楽データが記録された時点でのソート用データの作成について説明するフローチャートである。 負荷が軽い状況下でのソート用データの作成について説明するフローチャートである。 ソート実行前におけるソート用データの作成について説明するフローチャートである。 ソートキーの合計サイズとメモリ容量とを比較して実行する処理を選択する場合のフローチャートである。
符号の説明
1 カーオーディオ装置
10 制御部
11 操作パネル
12 スピーカ
13 ディスプレイ
14 表示制御部
15 ソート処理部
16 メモリ
17 HDD
21 ソート用データ作成部
22 基数ソート処理部
31 音楽データ
32 音楽情報データ
33 ソート用データ

Claims (12)

  1. 車両の乗員に対して複数のコンテンツデータを再生出力するサービスを提供する車載オーディオ装置であって、
    前記複数のコンテンツデータの各々に対し、当該コンテンツデータに関する情報であるコンテンツ情報データを記憶する記憶手段と、
    前記複数のコンテンツ情報データを基数ソートによってソートするソート処理手段と、
    前記コンテンツ情報データのうち前記基数ソートによって互いに比較される部分キーを抽出し、前記互いに比較される部分キーの組み合わせをソート用データとして前記記憶手段もしくは他の任意の記憶手段に格納するソート用データ作成手段と、を備え、
    前記ソート処理手段は、前記ソート用データを読み出して前記基数ソートを実行することを特徴とする車載オーディオ装置。
  2. 前記ソート用データ作成手段は、前記複数のコンテンツ情報データのそれぞれについて、ソート対象項目となるデータの下位から所定サイズ分を切り分けて前記ソート用データとすることを特徴とする請求項1に記載の車載オーディオ装置。
  3. 前記所定サイズが固定の値であることを特徴とする請求項2に記載の車載オーディオ装置。
  4. 前記ソート用データ作成手段は、前記コンテンツ情報データの件数と、前記ソート処理手段が使用する作業用メモリのメモリ容量とに基づいて前記所定サイズを動的に設定することを特徴とする請求項2に記載の車載オーディオ装置。
  5. 前記ソート用データ作成手段は、前記複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、前記ソート処理手段が使用する作業用メモリのメモリ容量を超える場合に前記ソート用データを作成することを特徴とする請求項1〜4のいずれか一つに記載の車載オーディオ装置。
  6. 前記ソート処理手段は、前記複数のコンテンツ情報データのソート対象項目となるデータの合計サイズが、前記ソート処理手段が使用する作業用メモリのメモリ容量以内である場合に、基数ソート以外のソートアルゴリズムを用いてソートすることを特徴とする請求項5に記載の車載オーディオ装置。
  7. 前記ソート用データ作成手段は、前記コンテンツ情報データのうち、ソート対象となる項目のそれぞれについて前記ソート用データを作成することを特徴とする請求項1〜6のいずれか一つに記載の車載オーディオ装置。
  8. 前記記憶手段は、前記ソート用データをさらに記憶することを特徴とする請求項1〜7のいずれか一つに記載の車載オーディオ装置。
  9. 前記ソート用データ作成手段は、前記コンテンツデータが保存された場合に前記ソート用データの作成を実行することを特徴とする請求項1〜8のいずれか一つに記載の車載オーディオ装置。
  10. 前記ソート用データ作成手段は、演算手段の処理負荷を監視し、処理負荷が所定値以下である場合に前記ソート用データの作成を実行することを特徴とする請求項1〜9のいずれか一つに記載の車載オーディオ装置。
  11. 前記ソート用データ作成手段は、ソート処理の実行要求が発生した場合に前記ソート用データを作成し、当該ソート用データをソート処理の終了後に削除することを特徴とする請求項1〜10のいずれか一つに記載の車載オーディオ装置。
  12. 前記ソート処理手段が使用する作業用メモリは、ソート結果の表示用メモリと共用することを特徴とする請求項1〜11のいずれか一つに記載の車載オーディオ装置。
JP2004253150A 2004-08-31 2004-08-31 車載オーディオ装置 Expired - Fee Related JP4397763B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004253150A JP4397763B2 (ja) 2004-08-31 2004-08-31 車載オーディオ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004253150A JP4397763B2 (ja) 2004-08-31 2004-08-31 車載オーディオ装置

Publications (2)

Publication Number Publication Date
JP2006073063A JP2006073063A (ja) 2006-03-16
JP4397763B2 true JP4397763B2 (ja) 2010-01-13

Family

ID=36153530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004253150A Expired - Fee Related JP4397763B2 (ja) 2004-08-31 2004-08-31 車載オーディオ装置

Country Status (1)

Country Link
JP (1) JP4397763B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007026666A1 (ja) * 2005-08-31 2009-03-26 パナソニック株式会社 コンテンツの属性に対する管理情報を格納する記録媒体、そのような記録媒体に対する記録装置及び再生装置

Also Published As

Publication number Publication date
JP2006073063A (ja) 2006-03-16

Similar Documents

Publication Publication Date Title
CN101727950B (zh) 播放列表搜索装置和方法
JP3974624B2 (ja) 表示装置
JP3251138B2 (ja) ハッシュ方式
JPWO2004081794A1 (ja) データ処理装置、データ処理用のプログラムおよび記録媒体
US20070050396A1 (en) Fast algorithm for building multimedia library database
KR20000069633A (ko) 파일 처리 방법, 데이터 처리 장치 및 기억 매체
JP4397763B2 (ja) 車載オーディオ装置
US20090132591A1 (en) Method and system for displaying and accessing music data files
JP4244011B2 (ja) データ再生装置およびデータ再生装置における再生データの管理方法
CN101620612A (zh) 内容属性赋予方法及内容属性赋予装置
JP2006331598A (ja) 車載情報端末
JP2008300008A (ja) 検索結果スキップ表示装置
JP2008004222A (ja) 記録/再生装置の文字列の記録装置
JP5284671B2 (ja) オーディオ装置
JP4371101B2 (ja) 再生機器
JPS62121532A (ja) デ−タ検索方法
JPH06215044A (ja) 情報検索処理装置
JP2008293550A (ja) オーディオ装置及びそのデータベース作成方法
JP3031392B2 (ja) 演奏再生装置及び演奏再生方法
JP2010257368A (ja) コンテンツ情報表示制御装置及びそのプログラム
JP2008140246A (ja) 情報処理装置、コンテンツリスト作成方法及びプログラム
JP3293551B2 (ja) ソート処理方法
JP2006293896A (ja) 楽曲検索装置
JPH04113466A (ja) 画像ファイル検索システム
JP2002157151A (ja) データ管理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070810

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090422

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091021

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

Free format text: PAYMENT UNTIL: 20121030

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4397763

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131030

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131030

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees