JP2008084382A - 圧縮データ再生方法 - Google Patents
圧縮データ再生方法 Download PDFInfo
- Publication number
- JP2008084382A JP2008084382A JP2006260612A JP2006260612A JP2008084382A JP 2008084382 A JP2008084382 A JP 2008084382A JP 2006260612 A JP2006260612 A JP 2006260612A JP 2006260612 A JP2006260612 A JP 2006260612A JP 2008084382 A JP2008084382 A JP 2008084382A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- compressed data
- data
- memory
- file
- 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.)
- Withdrawn
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
【課題】比較的簡単な検出処理により、誤った再生動作を行う虞を精度良く防止する。
【解決手段】制御部のソフトウェア制御により、早送り/巻き戻しが完了すると(ステップS1)、制御部のソフトウェア制御により、早送り/巻き戻し完了時のフレーム11−K箇所のヘッダ情報等から、再生を再開するファイル11−Kの位置を決定する(ステップS2)。次に、決定された再生を再開するファイル位置から、制御部のソフトウェア制御によって2フレームの正常なフレーム(例えば、11−K,11−(K+1))を検出し、このフレーム間の位置が正確であることを確認する(ステップS3〜S5)。その後、検出したフレーム先頭位置から、圧縮データを信号処理部内のFIFOメモリへ転送し(ステップS6)、信号処理部内のデコード装置を起動し(ステップS7)、再生を再開して圧縮データの伸張、再生を行う(ステップS8)。
【選択図】図1
【解決手段】制御部のソフトウェア制御により、早送り/巻き戻しが完了すると(ステップS1)、制御部のソフトウェア制御により、早送り/巻き戻し完了時のフレーム11−K箇所のヘッダ情報等から、再生を再開するファイル11−Kの位置を決定する(ステップS2)。次に、決定された再生を再開するファイル位置から、制御部のソフトウェア制御によって2フレームの正常なフレーム(例えば、11−K,11−(K+1))を検出し、このフレーム間の位置が正確であることを確認する(ステップS3〜S5)。その後、検出したフレーム先頭位置から、圧縮データを信号処理部内のFIFOメモリへ転送し(ステップS6)、信号処理部内のデコード装置を起動し(ステップS7)、再生を再開して圧縮データの伸張、再生を行う(ステップS8)。
【選択図】図1
Description
本発明は、ファイル(file)が複数のフレームに区分されたデータ構造になっているMP3(MPEG Audio Layer-3)形式等の圧縮データを、デコード装置等のハードウェアにより、伸張して再生するための圧縮データ再生方法、特に、ファイルの早送り/巻き戻し等を行った場合、ファイルの途中から再生する際に、フレーム先頭位置を正確に検出して再生開始が行える圧縮データ再生方法に関するものである。
従来、MP3形式等で圧縮された圧縮データを再生する圧縮データ再生方法に関する技術としては、例えば、次のような文献等に記載されるものがあった。
この特許文献1には、MP3形式よりも圧縮率の高いAAC(MPEG2 Advanced Audio Coding)規格DIF(Data Interchange Format)の圧縮オーディオ信号の早送り再生を高速に行う圧縮オーディオ信号再生装置の技術が記載されている。
特許文献2には、情報記録媒体に記録された圧縮オーディオデータを用いて、処理の負荷が小さく、必要なメモリ量の増加を招くことがない早送り等の再生を実現できる情報再生方法及び情報再生装置の技術が記載されている。
又、特許文献3には、圧縮オーディオデータにおける可聴早送り/巻き戻しの際にノイズがなく、倍速値が一定となる安定した再生が行える圧縮オーディオデータ再生装置の技術が記載されている。
図2は、特許文献2、3等に記載された従来の圧縮データ再生装置の概略の構成図である。
この圧縮データ再生装置は、ハードウェアを使用してMP3形式等の圧縮データ(例えば、圧縮音楽データ)を再生する装置であり、圧縮データを記録する記録媒体1と、装置全体をソフトウェア制御するための例えば中央処理装置(以下「CPU」という。)で構成された制御部2とを有している。制御部2には、再生操作、早送り/巻き戻し操作等を行うための操作部3と、データ表示等を行う表示部4とが接続されている。記録媒体1及び制御部2には、圧縮データを読み出すためのバッファ機能を有するデータ読み出しメモリ5が接続され、このデータ読み出しメモリ5の出力側に、信号処理部6が接続されている。
信号処理部6は、制御部2によりソフトウェア制御され、データ読み出しメモリ5により読み出された圧縮データを伸張して再生するためのハードウェア構成の装置であり、例えば、ディジタル信号プロセッサ(以下「DSP」という。)により構成されている。この信号処理部6の出力側には、ディジタル信号を音声に変換して出力する音声出力装置7が接続されている。
このようなハードウェアを使用した圧縮データ再生装置では、記録媒体1に記録された圧縮データをデータ読み出しメモリ5に読み出し、この読み出した圧縮データを信号処理部6へ転送し、この信号処理部6内のデコード装置において、圧縮データを伸張して再生し、音声出力装置7から出力する構成になっている。ハードウェアの信号処理部6において圧縮データの伸張、再生を行うことにより、制御部2におけるソフトウェアの負担が小さくなると共に、実時間処理(リアルタイム処理)等の高速処理が可能になる。又、通常再生の他に、早送り/巻き戻し機能等を持っている。
図3は、従来の一般的な圧縮データのデータ構造を示す図である。
一般的に、MP3形式で圧縮された圧縮データ(例えば、圧縮音楽データ)10では、1つの楽曲に対して1つのファイル10Fが割り当てられた複数のファイル10F,・・・を有し、各ファイル10Fが、複数Nのフレーム11(11−1〜11−N)に区分されて構成されている。各フレーム11は、フレームヘッダ12及びフレームデータ13により構成されている。フレームヘッダ12に含まれているフレーム情報(即ち、ヘッダ情報)には、例えば、同期ワード(Frame Sync)12a、バージョン(MPEG Version)12b、レイヤ番号12c、ビットレート12d、サンプリング周波数(Fs)12e、パディングビット(Padding)12f、及びチャンネルモード12g等がある。
一般的に、MP3形式で圧縮された圧縮データ(例えば、圧縮音楽データ)10では、1つの楽曲に対して1つのファイル10Fが割り当てられた複数のファイル10F,・・・を有し、各ファイル10Fが、複数Nのフレーム11(11−1〜11−N)に区分されて構成されている。各フレーム11は、フレームヘッダ12及びフレームデータ13により構成されている。フレームヘッダ12に含まれているフレーム情報(即ち、ヘッダ情報)には、例えば、同期ワード(Frame Sync)12a、バージョン(MPEG Version)12b、レイヤ番号12c、ビットレート12d、サンプリング周波数(Fs)12e、パディングビット(Padding)12f、及びチャンネルモード12g等がある。
同期ワード12aは、フレームヘッダ12の先頭に配置されるが、その他の情報(12b,・・・)については、圧縮形式によって配置位置が異なる。ビットレート12dにおいて、固定ビットレート形式で圧縮されたデータでは、各フレーム11のサイズは一定になっており、これに対して可変ビットレート形式で圧縮されたデータにおいては、各フレーム11のサイズはフレーム毎に異なる。
通常、この種の圧縮データ10は、1つのファイル10Fとして記録媒体1に記録されており、操作部3を操作して再生を行う場合、次の動作(a)、(b)を繰り返すことで実現している。
(a) 記録媒体1に格納されたファイル10Fから、データ読み出しメモリ5の記憶容量の大きさに合わせて、再生部分の一部をデータ読み出しメモリ5に読み出す。
(b) データ読み出しメモリ5に読み出された圧縮データを信号処理部6へ転送し、この信号処理部6において圧縮データを伸張して再生する。
通常の再生を行う場合は、記録媒体1に保存されたファイル10Fの先頭フレーム11−1から順次、データ読み出しメモリ5へ読み出し、この読み出した順に信号処理部6内のデコード装置で再生する。これに対し、早送り/巻き戻し動作は、再生を停止した後に、早送り/巻き戻し後に再生を再開するファイル10Fの途中からデータ読み出しメモリ5に読み出し、この読み出した圧縮データ10のフレーム(例えば、11−K、但し、Kは任意の正の整数)におけるフレームヘッダ12のヘッダ情報を信号処理部6内のデコード装置により検出した後に、この検出したフレーム11−Kの先頭から再生を再開することで実現している。
ハードウェアで圧縮データの伸張、再生を行う従来の圧縮データ再生方法では、制御部2においてソフトウェア制御で圧縮データの伸張、再生を行う方法に比べて、ソフトウェアの負担が小さくなると共に高速処理が可能になるという利点を有する反面、次のような課題があった。
ハードウェアで圧縮データの伸張、再生を行う圧縮データ再生装置を用いて早送り/巻き戻し機能を実現する場合、例えば、信号処理部6内のデコード装置により、再生を再開するファイル10Fの途中位置から正確なフレーム(例えば、11−K)を検出することが必要である。しかし、デコード装置によるフレーム検出実施時に、圧縮データ10の中にフレーム11−Kの先頭を示すヘッダ情報と同じ構成を持つコードが存在した場合、誤ったコードをフレーム11−Kの先頭と判断し、誤った再生動作を行う虞が発生する。
これを防止するために、例えば、特許文献1に記載された技術を用いて、ハードウェアの信号処理部6を制御する制御部2のソフトウェアにより、圧縮されたファイル全てのフレーム情報を管理することにより、正確なフレーム11−Kの先頭からのみを信号処理部6へ転送し、圧縮データ10の伸張、再生を行う信号処理部6内におけるデコード装置の制御を行う方法も考えられるが、ファイル全てのフレーム情報を管理することは、制御部2におけるソフトウェアの負荷を大きくし、処理速度の低下、消費電力の増加という問題が発生する。
又、特許文献2には、演算によりフレーム11−Kを検出する方法が記載され、更に、特許文献3には、2重検索によりフレーム11−Kを検出する方法が記載されているので、これらの方法を用いてフレーム11−Kを検出することも考えられるが、比較的簡単な検出処理により、前記の誤った再生動作を行う虞を精度良く防止することが困難であった。
本発明の圧縮データ再生方法は、圧縮符号化され、フレームヘッダ及びフレームデータからなるフレームが複数連続するデータ構造を有する圧縮データのファイルを、ソフトウェアによって制御されるハードウェアにより伸張して再生する圧縮データ再生方法において、以下のような処理を行う。
通常の再生を行う場合は、前記ハードウェアにより、複数の前記フレームを順次読み出して読み出した順に再生する。
前記ファイルの早送り/巻き戻しを行う場合、前記ファイルの途中において前記早送り/巻き戻し動作が完了したときには、前記ソフトウェアにより、再生を再開するファイル位置を決定する。次に、前記ソフトウェアにより、前記フレームヘッダに含まれる固有のフレーム情報から、前記決定されたファイル位置の近傍における第1の前記フレームの先頭を検出し、前記検出した第1のフレームに含まれる前記フレームヘッダの情報から次の第2のフレームの位置を算出し、前記算出した第2のフレームの位置に、該当する第2のフレームの先頭が存在するか否かを検出し、前記第2のフレームの先頭が存在するときには前記第1のフレームの先頭位置が正常であると判断する。
その後、前記ハードウェアにより、前記第1のフレームの先頭から前記再生を再開する。
本発明によれば、早送り/巻き戻し動作中の圧縮データに関して、ハードウェアを制御するためのソフトウェアは処理を行わないため、ソフトウェアとしての負荷を低減して高速処理が可能になる。しかも、早送り/巻き戻し後の再生再開時において、フレーム先頭の検出精度を向上させるために、2つの正常な第1及び第2のフレームを検出し、このフレーム間の位置が正確であることを更に確認することで、圧縮データの中にフレームの先頭を示すフレーム情報(即ち、ヘッダ情報)と同じ構成を持つコードが存在した場合に、比較的簡単な検出処理により、誤ったフレーム検出が行われる確率を低減することができ、早送り/巻き戻し後の再生再開を高精度に行うことが可能になる。
圧縮データ再生方法において、圧縮データのファイルにおける早送り/巻き戻し動作後に、ファイルの途中から再生するために2フレームのフレーム情報とフレーム間の位置を使用して、フレーム先頭の検出精度を向上させている。
(実施例1の構成)
図4は、本発明の実施例1を示す圧縮データ再生装置の概略の構成図である。
この圧縮データ再生装置は、ハードウェアを使用してMP3形式等の圧縮データ(例えば、図3のような圧縮データ)10を再生する通常再生機能や、早送り/巻き戻し機能等を持つ装置であり、圧縮データ10を記録するハードディスク、フラッシュメモリ等の記録媒体20と、装置全体をソフトウェア制御するためのCPU等で構成された制御部21とを有している。制御部21には、スイッチ等によって再生操作、早送り/巻き戻し操作等を行うための操作部22と、液晶(LCD)等によってデータ表示等を行うための表示部23とが接続されている。
図4は、本発明の実施例1を示す圧縮データ再生装置の概略の構成図である。
この圧縮データ再生装置は、ハードウェアを使用してMP3形式等の圧縮データ(例えば、図3のような圧縮データ)10を再生する通常再生機能や、早送り/巻き戻し機能等を持つ装置であり、圧縮データ10を記録するハードディスク、フラッシュメモリ等の記録媒体20と、装置全体をソフトウェア制御するためのCPU等で構成された制御部21とを有している。制御部21には、スイッチ等によって再生操作、早送り/巻き戻し操作等を行うための操作部22と、液晶(LCD)等によってデータ表示等を行うための表示部23とが接続されている。
記録媒体20及び制御部21には、圧縮データ10を読み出すためのバッファ機能を有するランダム・アクセス・メモリ(以下「RAM」という。)等のデータ読み出しメモリ24が接続され、更に、その制御部21に、データ読み出しメモリ24のオーバフローを防止するための読み出し圧縮データ10を一時待避するためのRAM等のフレーム検出用メモリ25が接続されている。これらの制御部21、データ読み出しメモリ24及びフレーム検出用メモリ25には、信号処理部30が接続されている。
信号処理部30は、制御部21により制御され、データ読み出しメモリ24により読み出された圧縮データ10や、フレーム検出用メモリ25に一時退避された圧縮データ10が転送されてくると、これを伸張して再生するためのハードウェア構成の装置である。この信号処理部30は、例えば、転送されてくる圧縮データ10を順に入力して順に出力する圧縮データ入力用のファーストイン・ファーストアウト・メモリ(以下「FIFOメモリ」という。)31と、このFIFOメモリ31から圧縮データ10を読み出してデコードし、フレーム情報(即ち、ヘッダ情報)を検出すると共に圧縮データ10を伸張して再生する圧縮データ伸張、再生用のデコード装置32と、再生されたディジタルデータを出力するデコード結果出力装置33等とを有し、これらがDSP等により構成されている。
デコード結果出力装置33の出力側には、音声出力装置35が接続されている。音声出力装置35は、デコード結果出力装置33から出力されたディジタル信号をアナログ信号に変換するディジタル/アナログ変換器(以下「D/A変換器」という。)、変換されたアナログ信号を増幅する増幅器、及びこの増幅器の出力信号を音声に変換して出力するイヤホン等の電気/音声変換器等により構成されている。
(実施例1の圧縮データ再生方法の概要)
図4の圧縮データ再生装置において、例えば、図3のような圧縮データ10は、1つのファイル10Fとして記録媒体20に記録されているので、操作部22を操作して再生を行う場合、次の動作(1)、(2)を繰り返すことで実現する。
図4の圧縮データ再生装置において、例えば、図3のような圧縮データ10は、1つのファイル10Fとして記録媒体20に記録されているので、操作部22を操作して再生を行う場合、次の動作(1)、(2)を繰り返すことで実現する。
(1) 操作部22の操作に基づく制御部21のソフトウェア制御により、記録媒体20に格納されたファイル10Fの圧縮データ10から、バッファ用のデータ読み出しメモリ24の記憶容量の大きさに合わせて、再生部分の一部をデータ読み出しメモリ24に読み出す。
(2) 制御部21の制御により、データ読み出しメモリ24に読み出された圧縮データ10を信号処理部30へ転送し、この信号処理部30において圧縮データ10を伸張して再生し、音声出力装置35から音声を出力する。
通常の再生を行う場合は、記録媒体20に保存されたファイル10Fの先頭フレーム11−1から順次、データ読み出しメモリ24へ圧縮データ10を読み出し、信号処理部30へ転送する。転送された圧縮データ10は、順にFIFOメモリ31に入力され、このFIFOメモリ31から順に読み出され、デコード装置32においてヘッダ情報が検出されると共に圧縮データ10が伸張されて再生され、デコード結果出力装置33からディジタル信号が出力される。出力されたディジタル信号は、音声出力装置35においてアナログ信号に変換された後に増幅され、音声として外部へ出力される。
早送り/巻き戻し動作を行う場合は、操作部22を操作し、制御部21の制御により、再生を停止した後に、ファイル10F中のフレーム11の早送り/巻き戻しを行い、その後、再生を再開するファイル10Fの途中(例えば、任意の第1のフレーム11−K箇所)から、圧縮データ10をデータ読み出しメモリ24に読み出し、信号処理部30へ転送する。転送された圧縮データ10は、順にFIFOメモリ31に入力されて順に読み出され、後述するデコード装置32によるフレームヘッダ検出処理により、第1のフレーム11−Kにおけるフレームヘッダ12のヘッダ情報を検出した後に、この検出した第1のフレーム11−Kの先頭から再生を再開する。
(実施例1のフレームヘッダ検出処理の概要)
図1は、図4の圧縮データ再生装置を用いた本発明の実施例1におけるフレームヘッダ検出処理の手順を示すフローチャートである。
図1は、図4の圧縮データ再生装置を用いた本発明の実施例1におけるフレームヘッダ検出処理の手順を示すフローチャートである。
図4の操作部22の操作による制御部21のソフトウェア制御により、早送り/巻き戻しが完了すると(ステップS1)、制御部21のソフトウェア制御による演算処理により、早送り/巻き戻し完了時の第1のフレーム11−K箇所のヘッダ情報(例えば、ビットレート12d)及び操作部22の操作時間等から、再生を再開する第1のファイル11−Kの位置を決定する(ステップS2)。
次に、決定された再生を再開するファイル位置から、制御部21のソフトウェア制御によって正しいフレーム先頭位置を検出する(ステップS3〜S5)。
その後、検出したフレーム先頭位置から、圧縮データ10を信号処理部30内のFIFOメモリ31へ転送し(ステップS6)、デコード装置32を起動し(ステップS7)、再生を再開して圧縮データ10の伸張、再生を行う(ステップS8)。これにより、早送り/巻き戻し中における圧縮データ10の処理が不要になり、制御部21が実行するソフトウェアの負荷を低減できる。
本実施例1の方法では、圧縮されたファイル10Fの再生開始時に、ファイル先頭の圧縮データ10から、ファイル10Fが持つ固有のフレーム情報FD(例えば、図3のフレームヘッダ12内の同期ワード12a、バージョン12b、レイヤ番号12c、サンプリング周波数12e等)を制御部21により検出して保持する。そのため、ファイル10Fの先頭から初めに記録されているフレーム11が正常なフレーム情報を持つものに限られる。
(実施例1のフレームヘッダ検出処理の詳細)
図1のフローチャートにおいて、操作部22の操作に基づく制御部21のソフトウェア制御により、早送り/巻き戻し動作が完了し(ステップS1)、制御部21のソフトウェア制御による演算処理により、再生を再開するファイル10Fの位置(例えば、第1のフレーム11−K)が決定される。
図1のフローチャートにおいて、操作部22の操作に基づく制御部21のソフトウェア制御により、早送り/巻き戻し動作が完了し(ステップS1)、制御部21のソフトウェア制御による演算処理により、再生を再開するファイル10Fの位置(例えば、第1のフレーム11−K)が決定される。
制御部21の制御により、決定された再生を再開するファイル位置(即ち、第1のフレーム11−K)から、記録媒体20に記録された圧縮データ10をデータ読み出しメモリ24に読み出す。制御部21により実行されるソフトウェアは、再生開始時に保持したファイル先頭の圧縮データ10から、ファイル10Fが持つ固有のフレーム情報FDを基に、データ読み出しメモリ24中の圧縮データ10から第1のフレーム11−Kの先頭のフレームヘッダ12を検出する(ステップS3、Yes)。検出できなかったときには(No)、この検出処理を繰り返す。
検出した第1のフレーム11−Kにおけるフレームヘッダ12の信頼度を向上(つまり、フレーム先頭の検出精度を向上)させるために、このフレームヘッダ12における例えばビットレート12d、サンプリング周波数(Fs)12e、及びパディングビット(Padding)を使用して、下記の(1)式又は(2)式から、次の第2のフレーム11−(K+1)の位置を算出する(ステップS4)。
(MPEG Version 1の場合)
(1152 / 8)* ビットレート / サンプリング周波数 + Padding [Byte]・・・(1)
(MPEG Version 2 , 2.5の場合)
(576 / 8)* ビットレート / サンプリング周波数 + Padding [Byte]・・・(2)
(MPEG Version 1の場合)
(1152 / 8)* ビットレート / サンプリング周波数 + Padding [Byte]・・・(1)
(MPEG Version 2 , 2.5の場合)
(576 / 8)* ビットレート / サンプリング周波数 + Padding [Byte]・・・(2)
次に、データ読み出しメモリ24に読み出された圧縮データ10における前記算出した位置に、第2のフレーム11−(K+1)の先頭のフレームヘッダ12が存在するか否かを検出する(ステップS5)。算出した位置にフレームヘッダ12が存在しなかった場合(No)、検出した第1のフレーム11−Kの先頭のフレームヘッダ12は正常なものではないと判断し、次のフレーム11−(K+2)の先頭を検出するためにステップS3へ戻り、算出したメモリ位置(ステップS4)以降から再度フレーム11−(K+2)の先頭を検出する処理(ステップS3)を行う。
本処理では、データ読み出しメモリ24中の圧縮データ10から第1のフレーム11−Kの先頭を検出した後(ステップS3)、この検出した第1のフレーム11−Kのビットレート12d等の情報から算出した次の第2のフレーム11−(K+1)の位置(ステップS4)が、記録媒体20から読み出したデータ読み出しメモリ24の大きさ(記憶容量)を超える場合、一時的に検出した第1のフレーム11−Kの先頭(ステップS3)からデータ読み出しメモリ24の終端までの圧縮データ10を、フレーム検出用メモリ25に一時退避(保存)し、次の連続した圧縮データ10の第2のフレーム11−(K+1)を、記録媒体20からデータ読み出しメモリ24に読み出し、算出した次のフレーム11−(K+1)の位置(ステップS4)を検出するようにしている。
本実施例1では、ステップS3〜S5を繰り返し行い、2フレームの正常なフレーム(例えば、11−K,11−(K+1))を検出し、このフレーム間の位置が正確であることを確認する。
このように、2フレームの正常なフレーム(例えば、11−K,11−(K+1))を検出し、このフレーム間の位置が正確であるフレームを検出した後(即ち、次の第2のフレーム11−(K+1)の先頭が正常な位置にあった場合は、最初に検出した第1のフレーム11−Kの先頭が正常と判断した後)、連続して検出した最初の第1のフレーム11−KからFIFOメモリ31へ転送する(メモリ24及び25からの転送、ステップS6)。転送が完了した後、圧縮データ10の伸張、再生を行うデコード装置32を起動し(ステップS7)、早送り/巻き戻し後の再生再開の処理が行われる(ステップS8)。
(実施例1の効果)
本実施例1によれば、早送り/巻き戻し動作中の圧縮データ10に関して、制御部21で実行されるソフトウェアは処理を行わないため、ソフトウェアとしての負荷を低減して高速処理が可能になる。しかも、早送り/巻き戻し後の再生再開時において、フレーム先頭の検出精度を向上させるために、2つの正常なフレーム11を検出し、このフレーム間の位置が正確であることを更に確認することで、圧縮データ10の中にフレーム11の先頭を示すヘッダ情報と同じ構成を持つコードが存在した場合に、比較的簡単な検出処理により、誤ったフレーム検出が行われる確率を低減することができ、早送り/巻き戻し後の再生再開を高精度に行うことが可能になる。
本実施例1によれば、早送り/巻き戻し動作中の圧縮データ10に関して、制御部21で実行されるソフトウェアは処理を行わないため、ソフトウェアとしての負荷を低減して高速処理が可能になる。しかも、早送り/巻き戻し後の再生再開時において、フレーム先頭の検出精度を向上させるために、2つの正常なフレーム11を検出し、このフレーム間の位置が正確であることを更に確認することで、圧縮データ10の中にフレーム11の先頭を示すヘッダ情報と同じ構成を持つコードが存在した場合に、比較的簡単な検出処理により、誤ったフレーム検出が行われる確率を低減することができ、早送り/巻き戻し後の再生再開を高精度に行うことが可能になる。
(実施例2の構成)
本実施例2の圧縮データ再生装置では、実施例1を示す図4の圧縮データ再生装置において、記録媒体20から読み出される圧縮データを一時退避するためのフレーム検出用メモリ25を削除し、この一時退避機能を圧縮データ入力用FIFOメモリ31により実行する構成になっている。その他の構成は、実施例1と同様である。
本実施例2の圧縮データ再生装置では、実施例1を示す図4の圧縮データ再生装置において、記録媒体20から読み出される圧縮データを一時退避するためのフレーム検出用メモリ25を削除し、この一時退避機能を圧縮データ入力用FIFOメモリ31により実行する構成になっている。その他の構成は、実施例1と同様である。
(実施例2のフレームヘッダ検出処理の概要)
図5は、本発明の実施例2の圧縮データ再生装置におけるフレームヘッダ検出処理の手順を示すフローチャートであり、実施例1のフローチャートを示す図1中の要素と共通の要素には共通の符号が付されている。
図5は、本発明の実施例2の圧縮データ再生装置におけるフレームヘッダ検出処理の手順を示すフローチャートであり、実施例1のフローチャートを示す図1中の要素と共通の要素には共通の符号が付されている。
本実施例2の図5に示すフレームヘッダ検出処理では、実施例1の図1に示すフレームヘッダ検出処理において、ステップS4とステップS5との間に、圧縮データ10をFIFOメモリ31へ転送するための新たなステップS10を追加し、ステップS5においてフレーム先頭の検出不可(No)のときには、新たに追加したFIFOメモリ31の内容をクリアするためのステップS11を介してステップS3へ戻り、ステップS5においてフレーム先頭の検出可(Yes)のときには、図1のステップS6が削除されて、ステップS7,S8の処理が行われる。
即ち、本実施例2のフレームヘッダ検出処理において、早送り/巻き戻し完了後に実施する処理(ステップS1〜S4)は、実施例1と同様である。
本実施例2が実施例1と異なる点は、第1のフレーム11−Kの先頭を検出した後(ステップS3)、この検出したフレーム先頭における例えばビットレート12d、サンプリング周波数(Fs)12e、及びパディングビット(Padding)から算出した次のフレーム位置(例えば、11−(K+1)、ステップS4)における記録媒体20中の圧縮データ10が、データ読み出しメモリ24の大きさ(記録容量)を超える場合に、実施例1のように、第1のフレーム11−Kの圧縮データ10をフレーム検出用メモリ25に一時退避(保持)させるのではなく、FIFOメモリ31へ転送して保持させ、ステップS5の検出不可(No)のときには、ステップS11においてそのFIFOメモリ31をクリアしてステップS3へ戻るようにしている。
ステップS5の検出可(Yes)のときには、既に圧縮データ10がFIFOメモリ31へ転送されているので、実施例1のステップS6を省略し、デコード装置32の起動処理(ステップS7)、及び再生再開処理(ステップS8)が行われる。
(実施例2のフレームヘッダ検出処理の詳細)
図5のフローチャートにおいて、実施例1と同様に、操作部22の操作に基づく制御部21のソフトウェア制御により、早送り/巻き戻し動作が完了し(ステップS1)、再生を再開するファイル10Fの位置(例えば、第1のフレーム11−K)が決定され、この決定された再生を再開するファイル位置(即ち、フレーム11−K)から、記録媒体20に記録された圧縮データ10をデータ読み出しメモリ24に読み出す。次に、再生開始時に保持したファイル先頭の圧縮データ10から、ファイル10Fが持つ固有のフレーム情報FDを基に、データ読み出しメモリ24中の圧縮データ10から第1のフレーム11−Kの先頭のフレームヘッダ12を検出した後(ステップS3)、フレーム先頭の検出精度を向上させるために、検出したフレームヘッダ12における例えばビットレート12d、サンプリング周波数(Fs)12e、及びパディングビット(Padding)を使用して、次の第2のフレーム11−(K+1)の位置を算出する(ステップS4)。
図5のフローチャートにおいて、実施例1と同様に、操作部22の操作に基づく制御部21のソフトウェア制御により、早送り/巻き戻し動作が完了し(ステップS1)、再生を再開するファイル10Fの位置(例えば、第1のフレーム11−K)が決定され、この決定された再生を再開するファイル位置(即ち、フレーム11−K)から、記録媒体20に記録された圧縮データ10をデータ読み出しメモリ24に読み出す。次に、再生開始時に保持したファイル先頭の圧縮データ10から、ファイル10Fが持つ固有のフレーム情報FDを基に、データ読み出しメモリ24中の圧縮データ10から第1のフレーム11−Kの先頭のフレームヘッダ12を検出した後(ステップS3)、フレーム先頭の検出精度を向上させるために、検出したフレームヘッダ12における例えばビットレート12d、サンプリング周波数(Fs)12e、及びパディングビット(Padding)を使用して、次の第2のフレーム11−(K+1)の位置を算出する(ステップS4)。
本実施例2では、実施例1と異なり、制御部21のソフトウェア制御により、算出した次の第2のフレーム位置(11−(K+1))までの圧縮データ10を、信号処理部30内のFIFOメモリ31へ転送して保持する(ステップS10)。その後、データ読み出しメモリ24に読み出された圧縮データ10における前記算出した次の第2のフレーム位置(11−(K+1))に、フレーム11−(K+1)の先頭のフレームヘッダ12が存在するか否かを検出する(ステップS5)。算出したフレーム位置にフレームヘッダ12が存在しなかった場合(No)、FIFOメモリ31の保持データをクリア(ステップS11)してステップS3へ戻り、算出したフレーム位置(ステップS4)以降から再度フレーム11−(K+2),・・・の先頭を検出する処理(ステップS3)を行う。
本処理では、前述したように、データ読み出しメモリ24上の圧縮データ10から第1のフレーム11−Kの先頭を検出した後(ステップS3)、この検出した第1のフレーム11−Kのビットレート12d等から算出した次の第2のフレーム位置(11−(K+1)、ステップS4)の圧縮データ10が、データ読み出しメモリ24の大きさを超える場合、実施例1のように、一時的に検出した第1のフレーム11−Kの先頭(ステップS3)からデータ読み出しメモリ24の終端までの圧縮データ10を、フレーム検出用メモリ25に保存する必要が無い。次の連続した圧縮データ10を、記録媒体20からデータ読み出しメモリ24に読み出し、算出した次の第2のフレーム位置(11−(K+1)、ステップS4)までの圧縮データ10を、FIFOメモリ31へ転送し、算出したフレーム位置にフレーム11−(K+1)の先頭が存在するか否かを検出する(ステップS5)。
このように、本実施例2では、実施例1と同様に、2フレーム(例えば、11−K,11−(K+1))の正常なフレームを検出し、フレーム間の位置が正確であることを更に確認した時点(ステップS5のYes)で、既にFIFO31に、正確な第1のフレーム11−Kの先頭から圧縮データ10が転送されているため、次の処理として、圧縮データ10の伸張、再生を行うデコード装置32を起動(ステップS7)することが可能である。その後、早送り/巻き戻し後の再生再開処理(ステップS8)が行われる。
(実施例2の効果)
本実施例2によれば、実施例1とほぼ同様の効果がある上に、実施例1におけるフレーム検出用メモリ25の削減が可能となり、再生再開処理を短縮して処理速度をより高速化できる。
本実施例2によれば、実施例1とほぼ同様の効果がある上に、実施例1におけるフレーム検出用メモリ25の削減が可能となり、再生再開処理を短縮して処理速度をより高速化できる。
(変形例)
本発明は、上記実施例1、2に限定されず、種々の利用形態や変形が可能である。この利用形態や変形例としては、例えば、次の(a)〜(c)のようなものがある。
本発明は、上記実施例1、2に限定されず、種々の利用形態や変形が可能である。この利用形態や変形例としては、例えば、次の(a)〜(c)のようなものがある。
(a) 図1及び図5のステップS3において、MP3形式のファイル10Fが持つ固有のフレーム情報FDとして、例えば、図3のフレームヘッダ12内の同期ワード12a、バージョン12b、レイヤ番号12c、サンプリング周波数12e等を使用する例を説明したが、その他にも圧縮データ再生装置に応じて使用可能な情報はある。
(b) 本発明の適用例としてMP3形式を挙げたが、これに限定されず、フレームに区分されたデータ構造を持ち、再生するファイル固有のフレーム情報とフレーム間の位置算出が可能な構造の圧縮データフォーマットであれば適応が可能である。
(c) 圧縮データ再生方法を実施するための圧縮データ再生装置は、図4の構成に限定されず、種々の変更が可能である。
20 記録媒体
21 制御部
22 操作部
24 データ読み出しメモリ
25 フレーム検出用メモリ
30 信号処理部
31 FIFOメモリ
32 デコード装置
33 デコード結果出力装置
21 制御部
22 操作部
24 データ読み出しメモリ
25 フレーム検出用メモリ
30 信号処理部
31 FIFOメモリ
32 デコード装置
33 デコード結果出力装置
Claims (5)
- 圧縮符号化され、フレームヘッダ及びフレームデータからなるフレームが複数連続するデータ構造を有する圧縮データのファイルを、ソフトウェアによって制御されるハードウェアにより伸張して再生する圧縮データ再生方法において、
通常の再生を行う場合は、前記ハードウェアにより、複数の前記フレームを順次読み出して読み出した順に再生し、
前記ファイルの早送り/巻き戻しを行う場合、前記ファイルの途中において前記早送り/巻き戻し動作が完了したときには、
前記ソフトウェアにより、再生を再開するファイル位置を決定し、
前記ソフトウェアにより、前記フレームヘッダに含まれる固有のフレーム情報から、前記決定されたファイル位置の近傍における第1の前記フレームの先頭を検出し、前記検出した第1のフレームに含まれる前記フレームヘッダの情報から次の第2のフレームの位置を算出し、前記算出した第2のフレームの位置に、該当する第2のフレームの先頭が存在するか否かを検出し、前記第2のフレームの先頭が存在するときには前記第1のフレームの先頭位置が正常であると判断して、
前記ハードウェアにより、前記第1のフレームの先頭から前記再生を再開することを特徴とする圧縮データ再生方法。 - 前記該当する第2のフレームの先頭が存在するか否かを検出する場合に、前記第2のフレームの先頭が存在しないときには、前記第1のフレームの先頭を検出する処理に戻ることを特徴とする請求項1記載の圧縮データ再生方法。
- データ読み出しメモリにより、前記複数のフレームを順次読み出して、ファーストイン・ファーストアウト・メモリに格納し、前記ファーストイン・ファーストアウト・メモリから前記フレームを順に読み出して、デコード装置により、前記読み出した順に前記フレームを伸張して再生することを特徴とする請求項1又は2記載の圧縮データ再生方法。
- 前記データ読み出しメモリにより、前記複数のフレームを順次読み出す際に、前記データ読み出しメモリの記憶容量がオーバフローするときには、前記オーバフロー前の前記データ読み出しメモリの格納データをフレーム検出用メモリに一時退避させて、次の前記フレームを前記データ読み出しメモリに格納することを特徴とする請求項3記載の圧縮データ再生方法。
- 前記データ読み出しメモリにより、前記複数のフレームを順次読み出す際に、前記データ読み出しメモリの記憶容量がオーバフローするときには、前記オーバフロー前の前記データ読み出しメモリの格納データを前記ファーストイン・ファーストアウト・メモリへ転送して保持させ、次の前記フレームを前記データ読み出しメモリに格納することを特徴とする請求項3記載の圧縮データ再生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006260612A JP2008084382A (ja) | 2006-09-26 | 2006-09-26 | 圧縮データ再生方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006260612A JP2008084382A (ja) | 2006-09-26 | 2006-09-26 | 圧縮データ再生方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008084382A true JP2008084382A (ja) | 2008-04-10 |
Family
ID=39355098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006260612A Withdrawn JP2008084382A (ja) | 2006-09-26 | 2006-09-26 | 圧縮データ再生方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008084382A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4875204B2 (ja) * | 2007-04-27 | 2012-02-15 | ソニー エリクソン モバイル コミュニケーションズ, エービー | 符号化オーディオデータを処理するための装置及び方法 |
-
2006
- 2006-09-26 JP JP2006260612A patent/JP2008084382A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4875204B2 (ja) * | 2007-04-27 | 2012-02-15 | ソニー エリクソン モバイル コミュニケーションズ, エービー | 符号化オーディオデータを処理するための装置及び方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7356370B2 (en) | Data processing circuit, data processing apparatus, data processing method, data processing control method, recording medium on which data processing program is stored and recording medium on which data processing control program is stored | |
US20080147218A1 (en) | Recording/reproduction apparatus | |
JP2008084382A (ja) | 圧縮データ再生方法 | |
US8891945B2 (en) | Recording/reproducing method and recording/reproducing device | |
JP2004335013A (ja) | データ蓄積装置およびデータ蓄積方法 | |
JP2009180972A (ja) | オーディオレジューム再生装置及びオーディオレジューム再生方法 | |
JP2008269745A (ja) | 再生装置、プログラム、及び再生方法 | |
KR101016486B1 (ko) | 디지털 데이터 재생 장치 및 컴퓨터 판독 가능 기록 매체 | |
JP2006243128A (ja) | 再生装置及び再生方法 | |
WO2005104125A1 (ja) | 記録再生装置、同時記録再生制御方法、および同時記録再生制御プログラム | |
JP4529859B2 (ja) | 音声再生装置 | |
US20080077411A1 (en) | Decoder, signal processing system, and decoding method | |
JP4610302B2 (ja) | 記録再生装置 | |
JP2010160862A (ja) | オーディオ再生装置 | |
JP2008047223A (ja) | オーディオ再生回路 | |
JP2004325761A (ja) | 情報処理装置、情報処理方法 | |
JP4021756B2 (ja) | 圧縮音声データ記録装置及び圧縮音声データ記録方法 | |
JP2008097781A (ja) | 音声再生装置 | |
JP2005071521A (ja) | オーディオ信号処理装置および方法、記録媒体、並びにプログラム | |
JP2004326922A (ja) | 情報処理装置、情報処理方法 | |
JP2006235322A (ja) | 再生装置および再生方法 | |
JP2006277792A (ja) | 情報記録再生装置および情報記録再生方法 | |
JP2006178179A (ja) | 圧縮オーディオ信号再生方法及び圧縮オーディオ信号再生装置 | |
JP2005339746A (ja) | 圧縮データファイルの付加情報読込方法およびその方法を実行するプログラム | |
JP2004364048A (ja) | データ記録装置、データ再生装置、データ記録方法、データ再生方法及びデータ記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20091201 |