(57)【要約】【課題】画像データを含む、非同期化されたＩＤ３ｖ２タグのフレームデータを読み出すときに、必要なフレームデータの読み出しまでの時間を短縮する。【解決手段】記憶装置からＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し方法であって、読み出し要求されたフレームを、前記記憶装置に格納されたＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索し、読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更する。【選択図】図２
2013061588.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置からＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し方法であって、
読み出し要求されたフレームを、前記記憶装置に格納されたＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索し、
読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更するＩＤ３ｖ２タグの読み出し方法。
【請求項２】
前記後方検索モードであるか否かを示すフラグをメモリに記憶し、
前記フラグが前記後方検索モードを示す場合、ＩＤ３ｖ２タグのヘッダに格納されたタグサイズを用いて前記終端を検出し、前記終端から前記読み出し要求されたフレームを検索することを特徴とする請求項１記載のＩＤ３ｖ２タグ読み出し方法。
【請求項３】
前記読み出し要求されたフレームは、一以上のフレームＩＤによって特定され、
前記検索は、各フレームのフレームヘッダに含まれるフレームＩＤを参照して、前記読み出し要求されたフレームであるか否かを判定し、
前記後方検索モードに変更されると、前記特定された一以上のフレームＩＤの検索が終了するまで、前記終端から検索することを特徴とする請求項１または２記載のＩＤ３ｖ２タグ読み出し方法。
【請求項４】
ＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し装置であって、
フレームデータを格納する記憶装置と、
読み出し要求されたフレームを、ＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索し、読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更するコントローラと、
前記検索が、複数のフレームの先頭から検索しているか、前記終端から検索しているかを示すフラグを記憶するメモリと、を備えるＩＤ３ｖ２タグの読み出し装置。
【請求項５】
記憶装置からＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し方法を実現するプログラムであって、
コンピュータに、
読み出し要求されたフレームを、前記記憶装置に格納されたＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索する処理と、
読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更する処理と、を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音楽ファイル（音声データ）に付加されるＩＤ３ｖ２タグの読み出し方法及び装置に関する。
【背景技術】
【０００２】
近年、車載オーディオ機器などの圧縮音楽ファイル再生システムは、従来のＣＤ（Compact Disk）から、ＵＳＢ（Universal Serial Bus）フラッシュメモリやＳＤ（Secure Digital）カードなど入力メディアが広がり、また、ディスプレイ装置も高機能化されている。ＩＤ３は、ＭＰ３（MPEG1 Audio Layer-3）データに付加するタグのフォーマットを規定したものであり、このタグに曲名などの音楽データに付随する情報を書き込むことが行われている。現在、ＩＤ３ｖ２（ＩＤ３ version 2）フォーマットが制定されている。このＩＤ３ｖ２タグに対して、再生ファイルのタグ情報の読み出しだけでなく、ファイルに付加されている曲名やアルバム名などのタグ情報で、データベースを作成するなど、ＩＤ３ｖ２タグが幅広く利用されるようになり、ＩＤ３ｖ２タグ処理の高速化が求められるようになっている。
【０００３】
また、ＩＤ３ｖ２では、ＩＤ３ｖ２に対応していない装置が誤動作を引き起こすことを防止するため、フレームデータに対して非同期化処理を行うことが規定されている。非同期化とは、フレームデータ中に所定のデータ（同期コード）が含まれている場合、１バイトの０（ゼロ）を挿入して他のデータに変換する処理をいう。
ＩＤ３ｖ２タグの非同期化されたフレームデータについては、特許文献１にも記述されているが、非同期化処理によるフレームサイズの増加があっても、フレームヘッダに書き込まれているフレームサイズの値は、非同期化前の値のままで、実際のフレームサイズを反映していない。このようなデータの読み出しについて、従来は、特許文献１に示されるような方法が知られている。
【０００４】
図４は、特許文献１におけるＩＤ３ｖ２タグのフレームデータの読み出しの処理を示すフローチャートである。
タグヘッダを読み込み（ステップＳ０１）し、ＩＤ３ｖ２タグヘッダの非同期化フラグが立っている場合（ステップＳ０２のＹＥＳ）に、フレームヘッダを読み込む（ステップＳ０３）。フレーム単位に分けられたタグの情報の内、読み出したフレームヘッダのフレームＩＤが、読み出したいフレームデータＩＤであった場合（ステップＳ０４のＹＥＳ）には、フレームデータの読み出し（ステップＳ０９）を行うが、読み出したいフレームデータＩＤでなかった場合（ステップＳ０４のＮＯ）には、フレームサイズで読み飛ばした（ステップＳ０６）後、非同期化処理により挿入されたバイト数分のデータが残っている位置から、次のフレームＩＤを検索する（ステップＳ０７）ことで、タグの読み取り処理を高速に行うようにしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−９４１９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１では、フレームヘッダのフレームサイズ分を読み飛ばした後に、フレームＩＤを検索する処理となっているが、フレームデータが画像データの場合は、サイズが大きいために、非同期化処理により挿入されるデータの数が多くなる。特に、ｂｉｔｍａｐ形式ではサイズが大きい上に、色データとして非同期化処理される同期コードと一致するデータが使われているために、さらに挿入されるデータの数が多くなる。
このように、読み飛ばし後にフレームＩＤを検索するデータ数が多くなるために、フレームＩＤの検索に時間がかかるようになり、必要なフレームデータの読み出しまでに長い時間がかかってしまうという問題があった。
【課題を解決するための手段】
【０００７】
本発明に係るＩＤ３ｖ２タグの読み出し方法の一態様は、記憶装置からＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し方法であって、読み出し要求されたフレームを、前記記憶装置に格納されたＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索し、読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更する。フレームが画像データを格納している場合に、ＩＤ３ｖ２タグの終端から検索するように、検索の読み出し位置を移動する。これにより、非同期化処理を実施しているＩＤ３ｖ２タグについて、非同期化処理によって画像データに挿入されたデータ量の検索を回避する。非同期化処理によって画像データに挿入されるデータ量は、他の文字情報に比べて大きいことから、検索時間が削減され、フレームデータの読み出し時間が短縮されることが期待できる。
【０００８】
また、本発明に係るＩＤ３ｖ２タグの読み出し装置の一態様は、ＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し装置であって、フレームデータを格納する記憶装置と、読み出し要求されたフレームを、ＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索し、読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更するコントローラと、前記検索が、複数のフレームの先頭から検索しているか、前記終端から検索しているかを示すフラグを記憶するメモリと、を備える。
【０００９】
また、本発明に係るプログラムの一態様は、記憶装置からＩＤ３ｖ２タグの非同期化処理されたフレームデータを読み出すＩＤ３ｖ２タグ読み出し方法を実現するプログラムであって、コンピュータに、（１）読み出し要求されたフレームを、前記記憶装置に格納されたＩＤ３ｖ２タグの複数のフレームの先頭から読み出して検索する処理と、（２）読み出したフレームが画像データを格納していることを検出すると、ＩＤ３ｖ２タグ領域の終端から前記読み出し要求されたフレームを検索する後方検索モードに変更する処理と、を実行させる。
【発明の効果】
【００１０】
本発明によれば、画像データを含む、非同期化されたＩＤ３ｖ２タグのフレームデータを読み出すときに、必要なフレームデータの読み出しまでの時間を短縮することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態１を適用したＩＤ３ｖ２タグの読み出し処理装置の構成例を示す図である。
【図２】本発明の実施形態１のアルゴリズムの一例を示すフローチャートである。
【図３】本発明の実施形態１を適用したＩＤ３ｖ２タグの読み出し方法によるフレームＩＤ検索の様子を示す模式図である。
【図４】従来技術のアルゴリズムを示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について、図面を参照しながら説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。各図面において同一の構成または機能を有する構成要素および相当部分には、同一の符号を付し、その説明は省略する。
【００１３】
非同期化されたＩＤ３ｖ２タグからフレームデータを読み出す処理において、画像データが含まれている場合に、フレームの検索に時間がかかってしまう問題に対して、フレームデータが画像データかどうかを確認し、画像データの場合には、ＩＤ３ｖ２タグ領域の終端（最後尾）に読み出し位置を移動し、後方からの逆検索を行うようにすることで高速化を図る方法である。
【００１４】
ここで、ＩＤ３ｖ２タグは、タグヘッダ部と複数のフレームとを含む。タグヘッダ部には、ＩＤ３ｖ２のサイズを示すタグサイズ、非同期化処理が実施されたか否かを示す非同期化フラグを少なくとも含む。複数のフレームは、フレームヘッダとフレームデータとから構成される。フレームヘッダは、各フレームを識別するフレームＩＤ、各フレームのサイズを示すフレームサイズを少なくとも含み、フレームＩＤは、フレームの種類が定義づけされている。従って、フレームＩＤによって、フレームデータが画像データであるか否かを判定できる。
【００１５】
実施形態１．
図１は、本発明のＩＤ３ｖ２タグの読み出しを行う装置の構成例を示す図である。ＩＤ３ｖ２の読み出し装置２００は、ディジタルオーディオ記憶装置２０１、システムコントローラ２０２、メモリ２０３、及び、表示器２０４を備える。
ディジタルオーディオ記憶装置２０１は、ＩＤ３ｖ２タグが付加された圧縮ディジタルオーディオデータが格納されている。一般には、ディジタルオーディオ記憶装置２０１は、ＵＳＢフラッシュメモリやＳＤカード、ＣＤ−ＲＯＭ（Read Only Memory）等の媒体で構成される。
表示器２０４は、システムコントローラ２０２から出力される曲のＩＤ３ｖ２タグ情報などを表示する装置である。
システムコントローラ２０２は、ディジタルオーディオ記憶装置２０１からＩＤ３ｖ２タグデータの読み出しを制御し、また、表示器２０４に対して表示するデータの制御を行う。
メモリ２０２は、本実施形態においてタグデータを解析するためのバッファや、読み出したタグデータ（タグサイズなど）、また後方検索モード・フラグを記憶する。
【００１６】
図２は、本発明の実施形態における時のＩＤ３ｖ２タグ読み出し処理を示すフローチャートである。ＩＤ３ｖ２の読み出し装置２００では、フレームデータの読み出し要求が発生すると、システムコントローラ２０２が当該要求を受け付ける。フレームデータの読み出し要求は、フレームＩＤを特定することによって行い、一つ以上のフレームＩＤを含む。
ステップＳ１１では、ＩＤ３ｖ２タグの複数フレームＩＤが指定されたフレームデータの読み出し要求に対して、まず、システムコントローラ２０２は、ＩＤ３ｖ２タグのタグヘッダの読み込みを行い、タグサイズをメモリ２０３へ保存する。
ステップＳ１２では、システムコントローラ２０２は、タグヘッダの中で非同期化フラグが立っているかを確認し、非同期化フラグが立っていない場合（ステップＳ１２でＮＯ）は、従来のフレームデータ読み出し処理に進む。非同期化フラグが立っている場合（ステップＳ１２でＹＥＳ）は、ステップＳ１３へ進む。
ステップＳ１３では、システムコントローラ２０２は、後方検索モード・フラグの状態をＯＦＦに初期化を行う。また、ＩＤ３ｖ２タグに含まれる複数のフレームのうち、先頭のフレームから読み出しを実施するように、読み出し位置を先頭のフレームに設定する。例えば、先頭のフレームの位置を示すアドレスを、任意の変数に設定する。
ステップＳ１４では、システムコントローラ２０２は、読み出し位置が示すフレームヘッダを読み込み、そのフレームヘッダのフレームＩＤの読み取りを行う。
【００１７】
ステップＳ１５では、システムコントローラ２０２は、読み取ったフレームＩＤが、読み出し要求で指定されたフレームＩＤかどうかを確認し、一致した場合（ステップＳ１５でＹＥＳ）は、ステップＳ２５へ処理を移す。一致しない場合（ステップＳ１５でＮＯ）は、ステップＳ１６へ進む。
ステップＳ１６では、読み取ったフレームＩＤが、画像データのＩＤかどうかを確認し、画像データの場合（ステップＳ１６でＹＥＳ）には、ステップＳ２２に処理を移す。画像データでない場合（ステップＳ１６でＮＯ）には、ステップＳ１７に進む。
ステップＳ１７では、システムコントローラ２０２は、後方検索モード・フラグの状態を確認し、ＯＮの場合（ステップＳ１７でＹＥＳ）には、ステップＳ２４に処理を移す。ＯＮでない場合（ステップＳ１７でＮＯ）には、ステップＳ１８に進む。
ステップＳ１８では、システムコントローラ２０２は、フレームヘッダから、フレームサイズの読み取りを行う。
ステップＳ１９では、システムコントローラ２０２は、ステップＳ１８で読み取ったフレームサイズの値の量のフレームデータの読み飛ばしを行う。
【００１８】
ステップＳ２０では、システムコントローラ２０２は、ステップＳ１９で読み飛ばした位置からは非同期化処理により挿入されたバイト数分のデータが残っているため、この位置から次のフレームＩＤを検出するまで前方に（ＩＤ３ｖ２タグの先頭から終端の方向へ）検索を行う。
ステップＳ２１では、システムコントローラ２０２は、フレームＩＤを検出しフレームＩＤの読み取りを行う。このとき、フレームＩＤを検出した位置が読み出し位置として、読み出し位置を示す変数に設定される。この後、ステップＳ１５にループして、以降のステップの処理を繰り返す。
【００１９】
ステップＳ２２では、システムコントローラ２０２は、フレームデータの読み出し位置をＩＤ３ｖ２タグのサイズと現在の読み出し位置情報を利用してＩＤ３ｖ２タグ（タグヘッダ）の終端に移動させる。
ステップＳ２３では、システムコントローラ２０２は、後方検索モード・フラグの状態をＯＮに設定する。
ステップＳ２４では、システムコントローラ２０２は、次のフレームＩＤを後方に（ＩＤ３ｖ２タグの終端から先頭の方向へ）検索を行う。後方検索モードでのフレームＩＤの検索では、例えば、１バイトずつ検索してフレームＩＤを検出する。この後、フレームＩＤを検出すると、ステップＳ２１に進む。このとき、フレームＩＤを検出した位置が読み出し位置として、読み出し位置を示す変数に設定される。後方検索モードが設定された場合、当該変数により、次のフレームＩＤ検索では、読み出し位置を示す変数が示す位置から後方に検索を開始することを可能にする。
【００２０】
ステップＳ２５では、システムコントローラ２０２は、読み出し要求で指定されたフレームＩＤと一致したフレームデータの読み出しを行う。
ステップＳ２６は、システムコントローラ２０２は、読み出し要求で指定されたすべてのフレームＩＤが検出されたか、もしくはＩＤ３ｖ２タグのデータをすべて確認できたかを判断し、まだ確認が終わっていない場合（ステップＳ２６でＮＯ）にはステップＳ１４に戻り、以降のステップ処理を繰り返す。確認が終わっている場合（ステップＳ２６でＹＥＳ）には、フレームデータの読み出しを終了する。
【００２１】
図３は、上述した本実施形態のＩＤ３ｖ２タグ読み出し方法によるフレームＩＤ検索の様子を模式的に示した図である。これを用いて説明する。
本実施形態では、システムコントローラ２０２は、フレームＩＤが画像データであることを確認すると、ＩＤ３ｖ２タグのタグヘッダ部のタグサイズを用いて、次の検索の読み出し位置を、ＩＤ３ｖ２タグの終端に移動させる。これは、ＩＤ３ｖ２タグのタグサイズは、非同期化処理の影響を受けずことなく正しいサイズが格納されているためである。システムコントローラ２０２は、移動した読み出し位置から、後方にフレームＩＤを検索するが、検索するフレームデータは、画像データでないため検索サイズ（３０１）は小さくなる。このため、非同期化処理により挿入されたバイト数分の大きな画像データに対して行っていたフレームＩＤ検索のデータサイズより、検索サイズが減少されることで、画像データのフレームでも次のフレーム検索時間がかからなくなる。
これにより、非同期化されたフレームデータを含むＩＤ３ｖ２タグであり、かつ、フレームデータとして画像データを含むＩＤ３ｖ２タグにおいて、画像フレームの次のフレームＩＤ検索（画像データを含むフレームの後段に格納されたフレームのフレームＩＤの検索）に要する時間を削減する。その結果、ＩＤ３ｖ２タグ読み出し処理の高速化を図るという有利な効果を奏する。
【００２２】
ＩＤ３ｖ２タグのフレームデータの構成は、タグを生成するアプリケーションに依存する。しかしながら、一般に、タグが文字情報を主な情報としていること、画像データがタグの後半部分に配置されること、画像データを含む場合、画像データの割合が他の文字情報に対して大きくなること等により、フレームＩＤ検索の時間短縮という有利な効果を奏することが期待できる。
【００２３】
その他の実施形態．
実施形態１で説明したＩＤ３ｖ２読み出し方法は、コンピュータに各手段を実行させるプログラムによって実現することができる。プログラムは、コンピュータ内のメモリにロードされ、ＣＰＵ（Central Processing Unit）の制御のもとで実行される。また、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００２４】
なお、本発明は上記に示す実施形態に限定されるものではない。本発明の範囲において、上記実施形態の各要素を、当業者であれば容易に考えうる内容に変更、追加、変換することが可能である。
【符号の説明】
【００２５】
２００  ＩＤ３ｖ２の読み出し装置
２０１  ディジタルオーディオ記憶装置
２０２  システムコントローラ
２０３メモリ
２０４  表示器
【図１】
2013061588.tif 000003
【図２】
2013061588.tif 000004
【図３】
2013061588.tif 000005
【図４】
2013061588.tif 000006