JP3920719B2 - コンテンツ再生装置 - Google Patents

コンテンツ再生装置 Download PDF

Info

Publication number
JP3920719B2
JP3920719B2 JP2002180714A JP2002180714A JP3920719B2 JP 3920719 B2 JP3920719 B2 JP 3920719B2 JP 2002180714 A JP2002180714 A JP 2002180714A JP 2002180714 A JP2002180714 A JP 2002180714A JP 3920719 B2 JP3920719 B2 JP 3920719B2
Authority
JP
Japan
Prior art keywords
file
mpeg
variable
index
video
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
JP2002180714A
Other languages
English (en)
Other versions
JP2004032009A (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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2002180714A priority Critical patent/JP3920719B2/ja
Priority to US10/465,728 priority patent/US7505669B2/en
Publication of JP2004032009A publication Critical patent/JP2004032009A/ja
Application granted granted Critical
Publication of JP3920719B2 publication Critical patent/JP3920719B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/78Television signal recording using magnetic recording
    • H04N5/782Television signal recording using magnetic recording on tape
    • H04N5/783Adaptations for reproducing at a rate different from the recording rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、コンテンツ記録装置に関し、特にたとえばハードディスクビデオレコーダに適用され、第1ファイルに循環的に記録されたかつ基準画面が間欠的に定義された映像コンテンツを第2ファイルに循環的に記録された前記基準画面のインデックス情報に基づいて再生する、コンテンツ再生装置に関する。
【0002】
【従来技術】
従来のこの種のハードディスクレコーダでは、受信した番組映像信号および番組音声信号がMPEGフォーマットに従ってビデオESおよびオーディオES(ES: Elementary Stream)に符号化され、ビデオESおよびオーディオESはパケット化によってビデオPESおよびオーディオPES(PES: Packetized Elementary Stream)に変換される。ビデオPESおよびオーディオPESの多重化によってMPEG−PS(PS: Program Stream)が生成されると、当該MPEG−PSを含むMPEGファイルがハードディスクに記録される。また、ビデオESを形成するIピクチャ,BピクチャおよびPピクチャを特定できるように、各々のピクチャのインデックス情報(フレームサイズ,フレームタイプ,先頭からのオフセット,タイムスタンプ)が作成され、当該インデックス情報を含むインデックスファイルがハードディスクに記録される。
【0003】
【発明が解決しようとする課題】
しかし、MPEGフォーマットがVBR方式(VBR: Variable Bit Rate)を採用する場合、MPEG−PSのデータサイズは番組映像の性質に応じて変動する。これに対して、インデックス情報のデータサイズは固定である。したがって、MPEGファイルおよびインデックスファイルのファイルサイズを予め規定し、MPEG−PSおよびインデックス情報をMPEGファイル内およびインデックスファイル内でリング状に更新するようにすると、MPEG−PSの先頭とインデックス情報の先頭とが互いに対応しなくなり、MPEG−PSを先頭部分から再生できない可能性がある。
【0004】
それゆえに、この発明の主たる目的は、ファイルに格納された映像コンテンツを先頭部分から再生することができる、コンテンツ再生装置を提供することである。
【0005】
【課題を解決するための手段】
この発明に従うコンテンツ再生装置は、第1ファイルに循環的に書き込まれたかつ基準画面が間欠的に定義された映像コンテンツを第2ファイルに循環的に書き込まれた基準画面のインデックス情報に基づいて再生するコンテンツ再生装置において、インデックス情報に基づいて映像コンテンツの先頭部分から基準画面を特定する特定手段、および特定手段によって特定された基準画面から映像コンテンツを再生する再生手段を備え、インデックス情報は映像コンテンツの先頭から各々の基準画面までのオフセット値を含み、特定手段は、第1ファイルに残存する映像コンテンツの先頭位置を検出する先頭位置検出手段、第2ファイルからオフセット値を検出するオフセット値検出手段、および先頭位置検出手段によって検出された先頭位置とオフセット検出手段によって検出されたオフセット値とに基づいて基準画面の特定を行う基準画面特定手段を含むことを特徴とする。
【0006】
【作用】
第1ファイルには、基準画面が間欠的に定義された映像コンテンツが循環的に書き込まれている。また、第2ファイルには、基準画面のインデックス情報が循環的に書き込まれている。特定手段は、第2ファイルのインデックス情報に基づいて映像コンテンツの先頭部分から基準画面を特定し、再生手段は、特定された基準画面から映像コンテンツを再生する。
【0007】
インデックス情報は、好ましくは、映像コンテンツの先頭から各々の基準画面までのオフセット値を含む。このとき、特定手段は、第1ファイルに残存する映像コンテンツの先頭位置を検出し、第2ファイルからオフセット値を検出し、そして検出された先頭位置とオフセット値とに基づいて映像コンテンツの先頭部分から基準画面を特定する。
【0008】
【発明の効果】
この発明によれば、第2ファイルのインデックス情報に基づいて映像コンテンツの先頭部分から基準画面を特定するようにしたため、書き込みが循環的に行われる第1ファイルに格納された映像コンテンツを先頭部分から再生することができる。
【0009】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【0010】
【実施例】
図1を参照して、この実施例のハードディスクビデオレコーダ10は、アナログ受信機12を含む。アナログ受信機12は、アンテナ(図示せず)から高周波テレビジョン信号を受け、所望のチャネルのコンポジットビデオ信号およびオーディオ信号を出力する。コンポジットビデオ信号はNTSCデコーダ14に与えられ、オーディオ信号はA/D変換器22に与えられる。
【0011】
NTSCデコーダ14は、与えられたコンポジットビデオ信号をデコードしてビデオデータを出力する。デコードされたビデオデータは、MPEGビデオエンコーダ16の符号化処理によってビデオESに変換され、変換されたビデオESは、パケット化回路26のパケット化処理によってビデオPESに変換される。一方、A/D変換器20は、オーディオ信号にA/D変換を施し、オーディオデータをMPEGオーディオエンコーダ22に与える。オーディオデータは、MPEGオーディオエンコーダ22の符号化によってオーディオESに変換され、オーディオESはパケット化回路24のパケット化によってオーディオPESに変換される。
【0012】
マルチプレクサ26は、パケット化回路18および24から出力されたビデオPESおよびオーディオPESを多重してMPEG−PSを生成するとともに、MPEG−PSに含まれるビデオフレームのインデックスデータを生成する。MPEG−PSおよびインデックスデータは、MPEGバッファ28およびINDEXバッファ30を介してHDD32に与えられる。HDD32は、MPEG−PSが格納されたMPEGファイルおよびインデックスデータが格納されたINDEXファイルをハードディスク34上に作成する。こうして、所望の番組の映像と音声とがハードディスク34に記録される。
【0013】
ハードディスク34に記録されたMPEGファイルからHDD32によってMPEG−PSが再生されると、当該MPEG−PSはMPEGバッファ36を介してデマルチプレクサ38に与えられる。デマルチプレクサ38は、与えられたMPEG−PSからビデオPESパケットおよびオーディオPESパケットを抽出し、ビデオPESパケットを非パケット化回路40に、オーディオPESパケットを非パケット化回路46にそれぞれ与える。非パケット化回路40および46はそれぞれ、ビデオPESおよびオーディオPESをビデオESおよびオーディオESに変換し、変換したビデオESおよびオーディオESをMPEGビデオデコーダ42およびMPEGオーディオデコーダ48に与える。
【0014】
MPEGビデオデコーダ42は、与えられたビデオESをデコードしてビデオデータを生成し、生成したビデオデータをNTSCエンコーダ44に与える。ビデオデータは、NTSCエンコーダ44によってコンポジットビデオ信号に変換され、変換されたコンポジットビデオ信号はテレビジョン受像機52に出力される。この結果、所望の番組の再生映像が、テレビジョン受像機52のモニタ画面に表示される。
【0015】
MPEGオーディオエンコーダ48は、与えられたオーディオESをデコードしてオーディオデータを生成する。生成されたオーディオデータはD/A変換器50によってアナログオーディオ信号に変換され、変換されたオーディオ信号はテレビジョン受像機52に出力される。この結果、所望の番組の再生音声が、テレビジョン受像機52のスピーカから出力される。
【0016】
MPEG−PSおよびインデックスデータは、図2に示すようなデータ構造を有する。図2によれば、MPEG−PSは複数のパックによって形成され、各々のパックにはパックヘッダ,システムヘッダ,ビデオPESパケットおよびオーディオPESパケットが含まれる。
【0017】
MPEGフォーマットでは、Iピクチャ,BピクチャおよびPピクチャの3つのフレームタイプが規定されており、1つのピクチャを形成するビデオPESパケットが異なるパックに跨ることはない。つまり、ある画面のIピクチャを形成する複数のビデオPESパケットは同じパックに含まれ、ある画面のBピクチャを形成する複数のビデオPESパケットは同じパックに含まれ、そしてある画面のPピクチャを形成する複数のビデオPESパケットは同じパックに含まれる。
【0018】
また、MPEG−PSを形成する最初のパックにのみシステムヘッダを付加すれば、MPEGフォーマットの条件は満たされる。しかし、この実施例のMPEGビデオエンコーダ24はVBR方式を採用しており、ビットレートはピクチャ毎に変動する。このため、いずれのパックにもシステムヘッダが割り当てられ、このシステムヘッダにビットレート情報が埋め込まれる。
【0019】
なお、オーディオPESパケットは、再生映像と再生音声との間で互いに同期がとられるように、ビデオPESパケットの間に間欠的に挿入される。
【0020】
インデックスデータは、各々のピクチャに24バイトずつ割り当てられる。この24バイトによって、対応するピクチャのフレームサイズ値,MPEG−PSの先頭からのオフセット値,フレームタイプおよび時間情報が表現される。
【0021】
この実施例のハードディスクビデオレコーダ10は、常時録画機能を有する。この機能をオン状態にすると、電源の投入と同時に番組録画が開始される。常時録画時にハードディスク34上に作成されるMPEGファイルおよびINDEXファイルには、それぞれ“RINGBUFF.mpg”および“RINGBUFF.ndx”のファイル名が割り当てられる。
【0022】
ただし、常時録画によって作成されるMPEGファイルのサイズは予め規定されており、取り込まれたMPEG−PSのサイズがこの規定サイズを超えると、先行するMPEG−PSは、後続のMPEG−PSによって上書きされる。つまり、MPEG−PSのサイズが規定サイズを超えた時点で、MPEGファイルはいわゆるリングファイルとなる。MPEGファイルがリングファイルとなると、INDEXファイルもまたリングファイルとなり、INDEXファイルに書き込まれたインデックスデータは、後続のインデックスデータによって上書きされる。
【0023】
常時録画が行われている途中で、操作パネル56に設けられた録画開始キー56cが操作されると、常時録画によって作成されたMPEGファイルとINDEXファイルとに終端揃え処理が施される。つまり、MPEGファイルに格納されたMPEG−PSの末尾フレームとINDEXデータに格納されたインデックスデータの末尾24ビットの対応関係が確保されるように、不足データがMPEGファイルまたはINDEXファイルに補充される。
【0024】
終端揃え処理が完了すると、MPEGファイルおよびINDEXファイルがクローズされ、各々のファイルのリング状態を特定するためのリング情報ファイルがハードディスク34上に作成される。リング情報ファイルには、ファイル名“RINGBUFF.loop”が割り当てられる。常時録画によって作成されたMPEGファイル,INDEXファイルおよびリング情報ファイルは、正規保存のためにファイル名の変更を施される。具体的には、MPEGファイルのファイル名が“RINGBUFF.mpg”から“SAN****.mpg”に変更され、INDEXファイルのファイル名が“RINGBUFF.ndx”から“SAN****.ndx”に変更され、そしてリング情報ファイルのファイル名が“RINGBUFF.loop”から“SAN****.loop”に変更される(****:ファイル番号)。ファイル名の変更によって、MPEGファイル,INDEXファイルおよびリング情報ファイルの各々は、テンポラリファイルから正規ファイルに変化する。
【0025】
ファイル名の変更が完了すると、正規録画が開始される。正規録画によって作成されるMPEGファイルおよびINDEXファイルには、正規ファイル名である“SAN****.mpg”および“SAN****.ndx”が割り当てられる。なお、正規録画によって作成されるMPEGファイルおよびINDEXファイルにおいては、MPEG−PSおよびインデックスデータがリング状に上書きされることはない。
【0026】
正規録画が開始された後に操作パネル56の録画停止キー56dが操作されると、正規録画によって作成されたMPEGファイルおよびINDEXファイルについて上述と同様の終端揃え処理が実行され、その後、当該MPEGファイルおよびインデックスファイルがクローズされる。ファイルクローズが完了すると、録画モードは正規録画から常時録画に移行する。
【0027】
なお、常時録画または正規録画の途中で、操作パネル56に設けられたメニューキー56aによって任意のMPEGファイルが選択され、かつ再生キー56bが操作されると、当該MPEGファイルが録画処理と並行して再生される。
【0028】
CPU54は、電源の投入によってシステム全体が起動したとき、ROM58に記憶された制御プログラムに基づいて、図3〜図10に示すフロー図を処理する。なお、システム全体の起動によって、マルチプレクサ26からMPEG−PSおよびインデックスデータが出力され、MPEG−PSはMPEGバッファ28に、インデックスデータはINDEXバッファ30に、それぞれ蓄積されていく。
【0029】
図3に示すステップS1では、常時録画用のファイルを作成するとともに、作成されたファイルをオープンする。具体的には、ファイル名が“RINGBUFF.mpg”のMPEGファイルとファイル名が“RINGBUFF.ndx”のINDEXファイルとをハードディスク34上に新規に作成し、作成したMPEGファイルおよびINDEXファイルをオープンする。
【0030】
続くステップS3では、常時録画用の変数を設定する。具体的には、MPEGファイルに関して、書込位置を示す変数WPm,MPEGファイルの上書き回数(リング回数)を示す変数RNGm,および記録されたMPEG−PSのサイズを示す変数RMSを“0”に設定し、ファイルサイズを示す変数FSmを所定値TRSに設定し、そしてMPEG−PSの1回あたりの書き込みサイズを示す変数MSを128Kバイトに設定する。また、INDEXファイルについて、書込位置を示す変数WPi,上書き回数を示す変数RNGi,およびファイルサイズを示す変数FSiを“0”に設定する。
【0031】
なお、変数RMSは、詳しくは、MPEGファイルに記録されたMPEG−PSの積算値である。したがって、数値は、書き込みに伴って増加し続け、MPEGファイルの上書きによって減少することはない。
【0032】
ステップS5ではMPEGファイル録画を行い、ステップS7ではINDEXファイル録画を行う。これによって、MPEGバッファ28に蓄積されたMPEG−PSおよびINDEXバッファ30に蓄積されたインデックスデータがHDD32に与えられ、ステップS1で作成されたMPEGファイルおよびINDEXファイルにそれぞれ書き込まれる。また、MPEG−PSの書き込みに伴って、変数WPmおよびRMSが更新され、かつ必要に応じて変数RNGmが更新される。さらに、インデックスデータの書き込みに伴って、変数WPiが更新され、かつ必要に応じて変数RNGiおよびFSiが更新される。
【0033】
ステップS9では、オペレータによって任意に選択されたMPEGファイルの再生を行う。ここで、選択可能なMPEGファイルには、現時点で常時録画が行われているMPEGファイルも含まれる。ステップS11では録画開始キー56cの操作の有無を判別し、NOであればステップS5〜S9の処理を繰り返すが、YESであればステップS13〜S27で終端揃え処理を実行する。
【0034】
まずステップS13でINDEXファイルに格納された最新24バイトのインデックスデータからオフセット値およびフレームサイズ値を取得する。この最新24バイトは、変数WPiに先行する24バイトである。また、取得されるオフセット値は、取り込まれたMPEG−PSの先頭から最新24バイトのインデックスデータに対応するピクチャの先頭までの距離であり、取得されるフレームサイズ値は、最新24バイトのインデックスデータに対応するピクチャのサイズである。ステップS15ではこのようなオフセット値およびフレームサイズ値を加算して加算値CRMSを求め、ステップS17およびS19では加算値CRMSを変数RMSと比較する。
【0035】
変数RMSはMPEGファイルに記録されたMPEG−PSの積算値であり、MPEGファイルに書き込まれた最終フレームとINDEXファイルに書き込まれた最新24バイトのインデックスデータとの対応関係が確保されると、加算値CRMSと変数RMSとが互いに一致する。換言すれば、変数RMSが加算値CRMSを下回るときは図16(A)に示すようにMPEG−PSが不足し、変数RMSが加算値CRMSを上回るときは図16(B)に示すようにインデックスデータが不足する。
【0036】
このため、RMS>CRMSの条件が成立すれば、ステップS19でNOと判断し、ステップS21でINDEXファイル録画を実行する。ステップS21の処理が完了すると、ステップS13に戻る。
【0037】
一方、RMS<CRMSの条件が成立すれば、ステップS19でYESと判断し、ステップS23で加算値CRMSと変数RMSとの差分値“CRMS−RMS”が128Kバイト未満であるかどうか判断する。そして、128Kバイト以上であればそのままステップS27に進むが、128Kバイト未満であれば、ステップS25で変数MSを差分値“CRMS−RMS”に更新してからステップS27に進む。ステップS27ではMPEGファイル録画処理を行い、処理が完了するとステップS17に戻る。
【0038】
かかる処理によって不足データが補充され、変数RMSが加算値CRMSと一致すると、ステップS17からステップS29に進み、図1に示すMPEGビデオエンコーダ16およびMPEGオーディオエンコーダ22を停止する。この停止処理の結果、マルチプレクサ26からのMPEG−PSの出力が中断される。
【0039】
ステップS31およびS33では常時録画用のMPEGファイルおよびINDEXファイルをクローズする。ステップS35では、MPEGファイルおよびINDEXファイルがリングファイルである場合に、上述の変数FSm,WPm,RNGm,FSi,WPiおよびRNGiが格納されたリング情報ファイルを作成する。作成されたリング情報ファイルには“RINGBUFF.loop”のファイル名が割り当てられ、このリング情報ファイルはハードディスク34に保存される。
【0040】
ステップS37では、常時録画用のMPEGファイルおよびINDEXファイルについて、ファイル名を“RINGBUFF.mpg”から“SAN****.mpg”に変更するとともに、“RINGBUFF.ndx”から“SAN****.ndx”に変更する。さらに、リング情報ファイルが作成されたときは、当該リング情報ファイルのファイル名を“RINGBUFF.loop”から“SAN****.loop”に変更する。常時録画によって得られたMPEGファイル,INDEXファイルおよびリング情報ファイルは、ファイル名の変更によってハードディスク34に正規に保存されることとなる。
【0041】
ステップS39では正規録画用のファイルを作成し、かつ作成されたファイルをオープンする。具体的には、ファイル名が“SAN****.mpg”のMPEGファイルとファイル名が“SAN****.ndx”のINDEXファイルとをハードディスク34上に新規に作成し、作成したMPEGファイルおよびINDEXファイルをオープンする。なお、新規に作成されたMPEGファイルおよびINDEXファイルのファイル名には、新規のファイル番号が割り当てられる。
【0042】
続くステップS41では、正規録画用の変数を設定する。具体的には、MPEGファイルに関して、変数WPm,RNGmおよびRMSを“0”に設定し、変数FSmを所定値RRSに設定し、そして変数MSを128Kバイトに設定する。また、INDEXファイルについて、変数WPiおよびRNGiを“0”に設定する。
【0043】
ステップS3における変数設定と異なるのは、所定値TRSに代えて所定値RRSが変数FSmとして設定される点、およびINDEXファイルのサイズを示す変数FSiが不定とされる点である。なお、所定値RRSは所定値TRSよりも格段に大きく、正規録画用のMPEGファイルがリングファイルとなることはない。
【0044】
ステップS43〜S47では、上述のステップS5〜S9と同様の処理を実行する。ただし、ステップS43におけるMPEG−PSの書き込み先およびステップS45におけるインデックスデータの書き込み先は、ステップS39で作成されたMPEGファイルおよびINDEXファイルである。
【0045】
ステップS49では録画停止キー56dの操作の有無を判別し、NOであればステップS43〜S47の処理を繰り返す。これに対して、YESと判断されれば、ステップS51〜S65で終端揃え処理を実行する。ただし、ステップS51〜S65の処理は、不足データの書き込み先が正規録画用のMPEGファイルまたはINDEXファイルである点を除き、上述のステップS13〜S27と同様であるため、重複した説明は省略する。
【0046】
終端揃え処理が完了すると、ステップS67およびS69で正規録画用のMPEGファイルおよびINDEXファイルをクローズし、常時録画を再開すべくステップS1に戻る。
【0047】
なお、前回の常時録画によって作成されたMPEGファイルおよびINDEXファイルはファイル名の変更によって正規に保存されたため、今回の常時録画用のMPEGファイルおよびINDEXファイルはステップS1で新規に作成される。
【0048】
図3に示すステップS5または図6に示すステップS43のMPEGファイル録画処理は、図8に示すフロー図に従う。まずステップS71でMPEGバッファ30に蓄積されたMPEG−PSのサイズを変数MSと比較し、当該サイズが変数MS以上となったときにYESと判断する。ステップS73およびS91では、変数MSおよびWPmの加算値を変数FSmと比較する。具体的には、WPm+MS>FSmの条件が成立するかどうかをステップS73で判別し、WPm+MS=FSmの条件が成立するかどうかをステップS91で判別する。
【0049】
図13(A)に示すように、変数MSに相当するサイズのMPEG−PSをMPEGファイルの変数WPmに対応する位置以降に格納できないとき、WPm+MS>FSmの条件が成立する。このときは、図8に示すステップS73からステップS75に進み、変数WPmに対応する位置から末尾位置までのファイルサイズTSm(=FSm−WPm)を算出する。ステップS77では算出されたサイズTSmに相当するMPEG−PSをMPEGファイルの変数WPmに対応する位置以降に書き込み、ステップS79では変数RMSに変数TSmを加算し、そしてステップS81では変数WPmを“0”に設定する。MPEGファイルの記録状態および変数WPmの位置は、図13(A)から図13(B)に遷移する。
【0050】
ステップS83では変数RNGmをインクリメントし、ステップS85では“MS−TSm”に相当するサイズのMPEG−PSをMPEGファイルに書き込む。変数WPmは“0”であるため、当該MPEG−PSはMPEGファイルの先頭から上書きされる。ステップS87では変数RMSに“MS−TSm”を加算し、ステップS89では変数WPmに“MS−TSm”を加算する。MPEGファイルの記録状態および変数WPmの位置は、図13(B)から図13(C)に遷移する。ステップS89の処理が完了すると、上階層のルーチンに復帰する。
【0051】
図14(A)に示すように、変数MSに相当するサイズが変数WPmに対応するファイル位置からファイル末尾までの容量に等しいとき、WPm+MS=FSmの条件が成立する。このときは、図8に示すステップS91からステップS93に進み、変数MSに相当するサイズのMPEG−PSをMPEGファイルの変数WPmに対応する位置以降に書き込む。ステップS95では変数RMSに変数MSを加算し、ステップS97では変数WPmを“0”とし、そしてステップS99では変数RNGmをインクリメントする。MPEGファイルの記録状態および変数WPiの位置は、図14(A)から図14(B)に遷移する。ステップS99の処理が完了すると、上階層のルーチンに復帰する。
【0052】
図15(A)に示すように、変数MSに相当するサイズが変数WPmに対応するファイル位置からファイル末尾までの容量よりも小さいときは、WPm+MS>FSmおよびWPm+MS=FSmのいずれの条件も成立しない。このときはステップS91でNOと判断し、ステップS101およびS103でステップS93およびS95と同様の処理を実行し、ステップS105で変数WPmに変数MSを加算する。MPEGファイルの記録状態は、図15(A)から図15(B)に遷移する。ステップS105の処理が完了すると、上階層のルーチンに復帰する。
【0053】
なお、所定値RRSは、上述のように所定値TRSよりも格段に大きい。このため、図6に示すステップS43から図8に示すサブルーチンに移行したときは、ステップS101〜S105が常に実行され、変数RNGmが更新されることはない。
【0054】
図3に示すステップS7または図6に示すステップS45のINDEXファイル録画処理は、図9に示すサブルーチンに従う。まずステップS111およびS113で変数RNGmの値を判別する。変数RNGmが“0”であれば、ステップS141に進み、INDEXバッファ30に蓄積されたインデックスデータのサイズISを取得し、ステップS143で当該サイズISに相当するインデックスデータをINDEXファイルの変数WPiに対応する位置以降に書き込み、そしてステップS145で変数WPiにサイズISを加算する。ステップS145の処理が完了すると、上階層のルーチンに復帰する。
【0055】
変数RNGmが“1”であれば、ステップS113でYESと判断し、ステップS115における変数FSiの更新処理を経てステップS117に進む。変数RNGmが“2”以上であれば、ステップS113からステップS117に移行する。
【0056】
ステップS115では、具体的には、“WPi+360バイト”を変数FPiとして設定する。変数RNGmが“1”を示すのは、MPEGファイルが1回目の上書きを施されるときであり、このとき、INDEXファイルのサイズを“WPi+360バイト”に規定する。1フレームに相当するインデックスデータのサイズは24バイトであるため、ステップS115の処理によって、現時点の変数WPiに15フレーム(=1GOP)分のマージンを加算したサイズが、INDEXファイルのサイズとなる。
【0057】
ステップS117以降では、上述のMPEG録画処理と同様の処理を行う。具体的には、ステップS119でWPi+IS>FSiの条件が成り立つかどうか判断し、ステップS133でWPi+IS=FSiの条件が成り立つかどうか判断し、各々の判断結果に応じて異なるステップに進む。
【0058】
ステップS119でYESと判断されると、ステップS121で変数WPiに対応する位置から末尾位置までのファイルサイズTSi(=FSi−WPi)を算出する。ステップS123では算出されたサイズTSiに相当するインデックスデータをINDEXファイルの変数WPiに対応する位置以降に書き込み、ステップS125では変数WPiを“0”に設定する。ステップS127では変数RNGiをインクリメントし、ステップS129では“IS−TSi”に相当するサイズのインデックスデータをINDEXファイルに書き込む。変数WPiは“0”であるため、当該インデックスデータはINDEXファイルの先頭から上書きされる。ステップS131では変数WPiに“IS−TSi”を加算し、その後上階層のルーチンに復帰する。
【0059】
ステップS133でYESと判断されるとステップS135に進み、変数ISに相当するサイズのインデックスデータをINDEXファイルの変数WPiに対応する位置以降に書き込む。ステップS137では変数WPiを“0”とし、ステップS139では変数RNGmをインクリメントする。ステップS139の処理が完了すると、上階層のルーチンに復帰する。
【0060】
ステップS133でNOと判断されると、ステップS143で変数ISに相当するサイズのインデックスデータをINDEXファイルの変数WPiに対応する位置以降に書き込む。その後、ステップS145で変数WPiにサイズISを加算し、上階層のルーチンに復帰する。
【0061】
なお、所定値RRSは所定値TRSよりも格段に大きく、変数RNGmが“0”以外の値をとることはないため、図6に示すステップS45から図9に示すサブルーチンに移行したときは、ステップS141〜S145の処理が常に実行される。
【0062】
図5に示すステップS35のリング情報ファイル保存処理は、図10に示すサブルーチンに従う。まずステップS151で変数RNGmを“0”と比較し、RNGm=0であれば、リング情報ファイルを作成することなく、上階層のルーチンに復帰する。一方、RNGm>0であれば、ステップS153に進み、ファイル名が“RINGBUFF.loop”のリング情報ファイルを作成し、かつ当該リング情報ファイルをオープンする。
【0063】
ステップS155ではMPEGファイルに関連する変数FSm,WPmおよびRNGmをリング情報ファイルに書き込み、ステップS157ではINDEXファイルに関連する変数FSi,WPiおよびRNGiを同じリング情報ファイルに書き込む。変数書き込みが完了すると、ステップS159でリング情報ファイルをクローズし、上階層のルーチンに復帰する。
【0064】
図3に示すステップS9または図6に示すステップS47のMPEGファイル再生処理において、正規に保存されたMPEGファイルつまり“SAN****.mpg”が選択された場合、CPU54は図11に示すサブルーチンを実行する。
【0065】
まずステップS161で、所望のMPEGファイルに対応するリング情報ファイルがハードディスク34上に存在するかどうか判断する。ここでNOであればステップS163に進み、所望のMPEGファイルに対応するINDEXファイルの先頭値をインデックスデータの読み出し位置を示す変数RPiとして設定する。続くステップS165では、所望のMPEGファイルの先頭値をMPEG−Sの読み出し位置を示す変数RPmとして設定する。
【0066】
一方、ステップS161でYESと判断されたときは、ステップS167で図12に示すサブルーチンを処理し、変数RPiおよびRPmを決定する。
【0067】
ステップS169では、HDD32を通してハードディスク34にアクセスし、所望のMPEGファイルの変数RPmに対応する位置から128KバイトのMPEG−PSを読み出す。読み出されたMPEG−PSは、MPEGバッファ36に蓄積され、再生処理を施される。ステップS171では、変数RPmに128Kバイトを加算し、ステップS173およびS175ではキー操作の有無をそれぞれ判断する。具体的には、再生停止キー56eの操作の有無をステップS173で判別し、特殊再生キー56fの操作の有無をステップS175で判別する。
【0068】
再生停止キー56eおよび特殊再生キー56fのいずれも操作されなかったときは、そのままステップS169に戻る。この結果、連続する再生映像および再生音声がテレビジョン受像機52から出力される。
【0069】
再生停止キー56eが操作されたときは、ステップS173でYESと判断し、上階層のルーチンに復帰する。
【0070】
特殊再生キー56fが操作されたときは、ステップS177で変数RPiを更新し、ステップS178で更新後の変数RPiが示す位置以降の24バイトのインデックスデータからオフセット値を取得する。ステップS179では取得したオフセット値を変数RPmとして設定し、設定が完了するとステップS169に戻る。この結果、早送り映像,巻き戻し映像,スチル映像などの特殊映像がテレビジョン受像機52から出力される。
【0071】
ステップS167から図12に示すサブルーチンに移行すると、まずステップS181でリング情報ファイルをオープンする。ステップS183では、オープンされたリング情報ファイルに含まれる変数WPmおよびWPiを変数RPmおよびRPiとして設定する。ステップS185では、所望のMPEGファイルに対応するINDEXファイルを特定し、当該INDEXファイルの変数RPmに対応する位置以降の24バイトからオフセット値およびフレームタイプを取得する。
【0072】
ステップS187では、リング情報ファイルに含まれる変数FSmおよびRNGmとステップS183で設定された変数RPmとステップS185で取得されたオフセット値との間で、数1に示す条件が満足されるかどうかを判断する。
【0073】
【数1】
オフセット値≧RPm+FSm*RNGm
変数FSmは所望のMPEGファイルのサイズを示し、変数RNGmは所望のMPEGファイルの上書き回数を示し、そして変数RPm(=WPm)は所望のMPEGファイルの書込終了位置の次のバイトを示す。これらの変数はいずれもMPEGファイルの実際の記録状態を表す変数であり、“RPm+FSm*RNGm”は、上書きされることなくMPEGファイルに残っているMPEG−PSの先頭位置を示す。
【0074】
一方、オフセット値は、INDEXファイルから取得した情報である。MPEGファイルおよびINDEXファイルのいずれもリングファイルであること、およびMPEG−PSのビットレートが可変であることを考慮すると、ステップS165で取得されたオフセット値から始まるフレームが後続のMPEG−PSによって上書きされている可能性がある。
【0075】
そこで、取得されたオフセット値から始まるフレームがMPEGファイルに残っているかどうかをステップS187で判別するようにしている。
【0076】
図17に示す記録状態では、変数WPi以降の24バイトから取得されたオフセット値に対応するフレームが、上書きによって消失している。このときは数1の条件が満たされず、ステップS187でNOと判断される。
【0077】
ステップS187でNOと判断されると、ステップS191で変数RPiに24バイトを加算してからステップS185に戻る。ステップS185では、更新された変数RPi以降の24バイトからオフセット値およびフレームタイプを取得し、続くステップS187では、新規に取得したオフセット値およびフレームタイプを用いて、数1の条件が満たされるかどうかを判断する。
【0078】
図17の記録状態では、更新された変数RPi(=WPi+24バイト)以降の24バイトから取得されたオフセット値に対応するフレームがMPEGファイル上に存在する。このときは数1の条件が満たされ、ステップS187でYESと判断される。
【0079】
ステップS187でYESと判断されると、直前のステップS185で取得されたフレームタイプを判別する。そして、フレームタイプが“I”でなければ、ステップS191で変数RPiを更新してからステップS185〜S189の処理を再度実行する。
【0080】
図17の記録状態では、再度更新された変数RPi(=WPi+48バイト)以降の24バイトから取得されたオフセット値に対応するフレームが、Iピクチャである。このため、2回目のステップS189の処理では、YESと判断される。
【0081】
ステップS189でYESと判断されるとステップS193に進み、直前のステップS185で取得されたオフセット値を変数RPmとして設定する。設定が完了すると、ステップS195でリング情報ファイルをクローズしてから上階層のルーチンに復帰する。
【0082】
以上の説明から分かるように、MPEGファイルには、Iピクチャが間欠的に挿入されたMPEG−PSが循環的に書き込まれる。また、INDEXファイルには、少なくともIピクチャを特定できるインデックスデータが循環的に書き込まれる。CPU54は、INDEXファイルに格納されたインデックスデータに基づいてMPEG−PSの先頭部分からIピクチャを検出し、検出したIピクチャからMPEG−PSを再生する。このように、INDEXファイルに格納されたインデックスデータに基づいてMPEG−PSの先頭部分からIピクチャを特定するようにしたため、書き込みが循環的に行われるMPEGファイルに格納されたMPEG−PSを先頭部分から再生することができる。
【0083】
また、終端部分においては、終端揃え処理によってMPEG−PSとインデックスデータとの対応関係が確保されるため、MPEG−PSの終端部分から特殊再生を開始することができる。
【図面の簡単な説明】
【図1】この発明の一実施例を示すブロック図である。
【図2】インデックスデータおよびMPEG−PSのデータ構造の一例を示す図解図である。
【図3】図1実施例の動作の一部を示すフロー図である。
【図4】図1実施例の動作の他の一部を示すフロー図である。
【図5】図1実施例の動作のその他の一部を示すフロー図である。
【図6】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図7】図1実施例の動作の他の一部を示すフロー図である。
【図8】図1実施例の動作のその他の一部を示すフロー図である。
【図9】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図10】図1実施例の動作の他の一部を示すフロー図である。
【図11】図1実施例の動作のその他の一部を示すフロー図である。
【図12】図1実施例の動作のさらにその他の一部を示すフロー図である。
【図13】図1実施例の動作の一部を示す図解図である。
【図14】図1実施例の動作の他の一部を示す図解図である。
【図15】図1実施例の動作のその他の一部を示す図解図である。
【図16】図1実施例の動作のさらにその他の一部を示す図解図である。
【図17】図1実施例の動作の他の一部を示す図解図である。
【符号の説明】
10…ハードディスクビデオレコーダ
16…MPEGビデオエンコーダ
22…MPEGオーディオエンコーダ
26…マルチプレクサ
28,36…MPEGバッファ
30…INDEXバッファ
32…HDD
42…MPEGビデオデコーダ
48…MPEGオーディオデコーダ

Claims (2)

  1. 第1ファイルに循環的に書き込まれたかつ基準画面が間欠的に定義された映像コンテンツを第2ファイルに循環的に書き込まれた前記基準画面のインデックス情報に基づいて再生するコンテンツ再生装置において、
    前記インデックス情報に基づいて前記映像コンテンツの先頭部分から前記基準画面を特定する特定手段、および
    前記特定手段によって特定された基準画面から前記映像コンテンツを再生する再生手段を備え
    前記インデックス情報は前記映像コンテンツの先頭から各々の基準画面までのオフセット値を含み、
    前記特定手段は、前記第1ファイルに残存する映像コンテンツの先頭位置を検出する先頭位置検出手段、前記第2ファイルから前記オフセット値を検出するオフセット値検出手段、および前記先頭位置検出手段によって検出された先頭位置と前記オフセット検出手段によって検出されたオフセット値とに基づいて前記基準画面の特定を行う基準画面特定手段を含むことを特徴とする、コンテンツ再生装置。
  2. 前記映像コンテンツはデータ長が可変のコンテンツである、請求項1記載のコンテンツ再生装置。
JP2002180714A 2002-06-21 2002-06-21 コンテンツ再生装置 Expired - Fee Related JP3920719B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002180714A JP3920719B2 (ja) 2002-06-21 2002-06-21 コンテンツ再生装置
US10/465,728 US7505669B2 (en) 2002-06-21 2003-06-19 Content reproduction apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002180714A JP3920719B2 (ja) 2002-06-21 2002-06-21 コンテンツ再生装置

Publications (2)

Publication Number Publication Date
JP2004032009A JP2004032009A (ja) 2004-01-29
JP3920719B2 true JP3920719B2 (ja) 2007-05-30

Family

ID=29728265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002180714A Expired - Fee Related JP3920719B2 (ja) 2002-06-21 2002-06-21 コンテンツ再生装置

Country Status (2)

Country Link
US (1) US7505669B2 (ja)
JP (1) JP3920719B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1683364A1 (en) * 2003-11-13 2006-07-26 Matsushita Electric Industrial Co., Ltd. Packetization of variable bit rate encoded data based on rate control
US20070043892A1 (en) * 2004-01-22 2007-02-22 Isenser Farre Jose M Integrated circuit for the processing and subsequent routing of motion picture expert group (mpeg) data between interfaces
US20100043038A1 (en) * 2008-08-14 2010-02-18 Zoran Corporation System and method for efficient video and audio instant replay for digital television
CN105847825A (zh) * 2015-01-16 2016-08-10 杭州海康威视数字技术股份有限公司 视频编码码流的编码、索引存储和访问方法及相应装置
CN109325032B (zh) * 2018-09-18 2020-10-27 厦门市美亚柏科信息股份有限公司 一种索引数据存储及检索方法、装置及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4742479A (en) * 1985-03-25 1988-05-03 Motorola, Inc. Modulo arithmetic unit having arbitrary offset and modulo values
US5249148A (en) * 1990-11-26 1993-09-28 Motorola, Inc. Method and apparatus for performing restricted modulo arithmetic
US5584037A (en) * 1994-03-01 1996-12-10 Intel Corporation Entry allocation in a circular buffer
WO1996020566A1 (en) * 1994-12-23 1996-07-04 Imedia Corporation Method and apparatus for providing vcr-like trick mode functions for viewing distributed video data
US5636224A (en) * 1995-04-28 1997-06-03 Motorola Inc. Method and apparatus for interleave/de-interleave addressing in data communication circuits
US6363470B1 (en) * 1998-10-06 2002-03-26 Texas Instruments Incorporated Circular buffer management
CN100505076C (zh) * 1999-03-30 2009-06-24 提维股份有限公司 多媒体可视的播放进度指示系统
US6647479B1 (en) * 2000-01-03 2003-11-11 Avid Technology, Inc. Computer file system providing looped file structure for post-occurrence data collection of asynchronous events
US7263280B2 (en) * 2002-06-10 2007-08-28 Lsi Corporation Method and/or apparatus for retroactive recording a currently time-shifted program

Also Published As

Publication number Publication date
US7505669B2 (en) 2009-03-17
JP2004032009A (ja) 2004-01-29
US20030235400A1 (en) 2003-12-25

Similar Documents

Publication Publication Date Title
CN101167130B (zh) 流数据记录装置、流数据记录再现装置、流数据再现装置、流数据编辑装置、流记录方法、以及流再现方法
JP5285028B2 (ja) ブラウザブルスライドショー提供のためのデータ復号装置、その復号方法及びそのための情報保存媒体
CN100452857C (zh) 数据处理装置
WO2006033279A1 (ja) データ処理装置
US7133347B2 (en) Information outputting apparatus and method, and presentation medium for digital television broadcast systems
CN1741170B (zh) 附加信息产生方法、记录介质及其记录、编辑、重放装置
JP7052733B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
CN101335037A (zh) 记录设备、记录/再现系统、及记录方法
JP3920719B2 (ja) コンテンツ再生装置
WO2006054590A1 (ja) データ処理装置
TW200809787A (en) Reproduction device for optical recording medium, reproduction method for optical recording medium, and reproduction program for optical recording medium
JP2010192949A (ja) バッファ制御装置、バッファ制御方法およびプログラム
WO2000027113A1 (en) Recording/reproducing apparatus and method
JP3475074B2 (ja) データ処理装置
CN101656860B (zh) 记录装置和记录方法
JP2004032607A (ja) ディジタル映像再生装置
JP7024787B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP3986973B2 (ja) Avデータ記録方法、avデータ記録装置、データ記録媒体、及びプログラム
WO2006033275A1 (ja) データ処理装置
US20080138037A1 (en) Recording method
JP4207304B2 (ja) 情報入力装置および方法、情報出力装置および方法、並びに記録媒体
JP2003009085A (ja) デジタル信号記録装置および方法、デジタル信号再生装置および方法
JP3892759B2 (ja) 記録再生装置、記録装置、再生装置および記録再生方法
JP4245107B2 (ja) デジタル放送受信機
JP5120479B2 (ja) データ信号記録装置およびデータ信号再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050519

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070215

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

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110223

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120223

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120223

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130223

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees