以下、図面を参照してこの発明の種々な実施の形態を説明する。図1は、この発明の一実施の形態に係るデータ構造を説明する図である。RecordableあるいはRe-writableな情報記録媒体の代表例として、DVDディスク(波長650nm前後の赤色レーザあるいは波長405nm以下の青紫ないし青色レーザを用いた、単記録層または複数記録層の、DVD±R、DVD±RW、DVD−RAM等)100がある。このディスク100は、図1に示すように、ファイルシステムが入っているボリューム/ファイル構造情報領域111とデータファイルを実際に記録するデータ領域112を含んで構成されている。上記ファイルシステムは、どのファイルがどこに記録されているかを示す情報で構成されている。
データ領域112は、一般のコンピュータが記録する領域120、122と、AVデータを記録する領域121を含んでいる。AVデータ記録領域121は、AVデータの管理をするためのビデオマネージャ(VMG)ファイルがあるAVデータ管理情報領域130と、DVD-Video(ROM Video)規格に準じたオブジェクトデータのファイルが記録されるROM_Videoオブジェクト群記録領域131と、ビデオレコーディング(VR)規格に準じたオブジェクトデータ(EVOBS:Extended Video Object Set)のファイル(VROファイル)が記録されるVRオブジェクト群記録領域132と、デジタル放送に対応したオブジェクトが記録されているストリームオブジェクトデータ(ESOBS:Extended Stream Object Set)ファイル(SROファイル)が記録される記録領域133を含んで構成されている。なお、SROファイルのためのレコーディング規格は、適宜、ストリームレコーディング(SR)規格と表記する。
ここで、DVD-Video(ROM Video)はビデオタイトルセット(VIDEO−TS)、録再DVD(DVD−RTR)はDVD−RTAVというように、フォーマット毎にファイルディレクトリが分けられ、この実施の形態で説明するデジタル放送対応の新たなDVD規格のファイルは、例えばDVD_HDVRというディレクトリに格納される(図3を参照して後述)。つまり、DVD_HDVRというディレクトリに、データの管理を行うためのVMGファイルと、アナログ放送及びライン入力などのアナログ記録用のオブジェクトファイルであるVROと、デジタル放送のオブジェクトであるSROファイルが記録され、そのSROファイルがESOBSとなる。
図1の構成において、1つのESOBU143は1以上のPacket Group147で構成されている。各Packet Group147は例えば16(あるいは32)パック(1 pack=1 Logical Block:2048バイト)に対応しており、各Packet Group147はPacket Group Header161と複数のTSパケット163(170個)で構成されている。各TSパケットの到着時間(Arrival Time)は、各TSパケットの前に配置されたPATS(Packet Arrival Time Stamp:4バイト)162で表すことができる。Packet Group147の先頭に配置されたPacket Group Header161内は、図示しないが、Header_ID(0x00000FA5)が設定され、続いてパケットグループ一般情報PKT_GRP_GI、コピー管理情報CCI(Copy Control Information)またはCPI(Contents Protection Information)、および製造業者情報MNIあるいはMNFI(Manufacturer’s information)を含んで構成されている。
ここで、TSパケットの到着時間は、録画開始を0(または所定の値)とし、録画終了までリニアにカウントアップさせる必要がある。ただし、STC(System Time Counter)とPATSは同じ値を示すとは限らない(初期値の違いなどのため)。しかしながら、PATS用カウンタのカウント間隔は、再生同期が合っている状態で、PCR(Program Clock Reference)取り込みと次のPCR取り込みの間隔に対応したSTC用カウンタのカウント間隔に対して、同期させる必要がある。なお、PCRはMPEG−TS内の、図示しないアダプテーションフィールドに含まれている。また、Packet Groupには2つまでのESOBが混在する事を許可する。つまり、ESOB毎にPacket Groupをアラインしなくてもよいと言うことである。
なお、各PATSに固有の下位4バイトは各PATS(パケット到着時間の情報フィールド)に含まれているが、先頭PATSの上位2バイトはPacket Group Header161内の図示しないパケットグループ一般情報(PKT_GRP_GI)内に記述されるFIRST_PATS_EXTに含まれるようになっている。これにより、各PATSに6バイトのパケット到着時間を個別に記述するよりも、データ量を削減できる。
PKT_GRP_GIは、図示しないが、パケット種別PKT_GRP_TY(1=MPEG−TS)、Packet Groupのバージョン番号VERSION、Packet Groupのステータス情報PKT_GRP_SS、Packet Group内の有効パケット数Valid_PKT_Ns、先頭のパケットに対するPATSの上位2バイトFIRST_PATS_EXT等で構成されている。
さらに、PKT_GRP_SSは、スタッフィングが行われたかどうかを示すビットSTUF(このSTUFビットが設定されている場合、Valid_PKT_Nsが0xAA以外の値を取る事を示している)と、PATS_SSを含んで構成されている。ここで、PATS_SSは、PATSの精度を示す値である(例えば、PATS_SSが00のときはPATS、FIRST_PATS_EXTの両方が有効で精度6バイトとなり;PATS_SSが01のときはPATSのみ有効で精度4バイトとなり;PATS_SSが10のときはPATS, FIRST_PATS_EXTの両方が無効で精度無しとなる)。
なお、先頭パケットのPATSの拡張バイトFIRST_PATS_EXTは、例えばPacket Groupの先頭にあるパケットの到着時間の上位2バイトで構成され、下位4バイトは各パケットの前に付けられている。これにより、より正確な時間の再生処理が可能となっている。
Packet Group Header161内には、図示しないCP_CTL_INFO(コピー制御情報:適宜、CCIまたはCPIと略記)の記述場所がある。CP_CTL_INFOはPacket Group Header161のCCI(またはCPI)にあり、各Packet Groupのコピー制御をPacket Group Header161のところで行う。このCCI(またはCPI)の値は、デジタルコピー制御記述子、コンテント利用記述子により設定される。その内容は、例えばCGMS(0=禁止、1=無制限許可)と、APS(0=APS無し、1=APSタイプ1付加、2=APSタイプ2付加、3=APSタイプ3付加)と、EPN(0=コンテンツ保護(インターネット出力保護)、1=コンテンツ保護無し)と、ICT(0=解像度制限、1=制限無し)となっている。
あるいは、CCI(またはCPI)は、デジタルコピー制御(00=コピー禁止、01=1回コピー許可、11=コピー禁止)と、アナログコピー制御(00=APS無し、01=APSタイプ1、10=APSタイプ2, 11=APSタイプ3)と、EPN(0=コンテンツ保護、1=コンテンツ保護無し)と、ICT(0=アナログビデオ出力解像度制限、1=制限無し)で構成されている。ここで、APSとはAnalog Protection Systemのことでこの実施の形態ではマクロビジョン(登録商標)を想定している。
また、管理情報側(ESOBI_GI)にコピー制御情報(CCIまたはCPI)を置き全体でコピー管理(著作権管理)すること、もしくはCCI(またはCPI)を管理情報側とオブジェクト側(Packet Group)の両方に置き、オブジェクト側(Packet Group)の方を優先として、管理情報とオブジェクトの2段階でコピー管理(著作権管理)する事も考えられる。具体的には、タイトルメニューではESOBI_GIのCCIを利用し、実際の機器動作ではPacket Groupの方を優先して処理を行なうことができる。
図2は、この発明の一実施の形態に係るデータ構造における再生管理情報層とオブジェクト管理情報層とオブジェクト層との関係を説明する図である。図2に示されるように、SRの管理データはVRと共通のファイルに記録され、SRはVRと共通に制御され、SRおよびVRはセル単位でリンクされ、再生場所の指定は再生時間単位で指定される。この管理データはHR_MANGER.IFO(図3を参照して後述)と称している。
ESOBSの構造は、1以上のESOB141で構成され、各ESOBは、例えばTV放送の1番組に相当する。ESOBは1以上のESOBU(Extended Stream object unit)で構成され、ESOBUは、一定時間間隔(図示しないESOBU_PB_TM_RNGの値により変化する)分のオブジェクトデータもしくは、1以上のGOPデータに相当する。(なお、ESOBU_PB_TM_RNGは、図4のESOBI内の図示しないタイムマップ情報ESOB_TMAPIに含まれている。)
ただし、転送レートが低い場合1s(1秒)以内で1GOPが送られない場合が考えられる(VRでは内部エンコードであるため自由にGOPを設定できるが、デジタル放送の場合エンコードが放送局であるため、どんなデータが来るか不明な可能性がある)。その場合は、ESOBUを1sの時間で区切り、区切ったESOBU内にリファレンスピクチャがないことを示すよう、1STREF_SZ=0を設定する。この場合、ランダムアクセスに使用できないESOBUが作られる。このため、ランダムアクセス可能なピクチャの先頭を含むESOBUをエントリESOBU(ESOBU_ENT)と称して区別する。なお、1STREF_SZの情報フィールドは、ストリームファイル情報テーブル(ESTR_FIT)に含まれるストリームタイムマップ(ESTMAP)内のESOBU_ENT(図20を参照して後述)に設けられる。
また、転送レートが高く、Iピクチャが頻繁に送られる場合も考えられる。その場合、ESOBUが頻繁に区切られ、それに伴いESOBUの管理情報が増え、全体の管理情報が肥大化する恐れがある。そこで、(ESOB最後のESOBU以外の)ESOBUは、総録画時間により決めた一定時間間隔(例えば1s毎:区切りはピクチャ単位)または1以上のGOPで区切るのが適当となる。
ここで、管理情報について、図3〜図6等を参照して説明する。図3は、この発明の一実施の形態に係るファイル構造例を説明する図である。この例では、EVOB、ESOBをそれぞれのディレクトリを階層ディレクトリで管理している。これにより、オブジェクト毎の管理がしやすくなり、HD_DVD−VIDEOにデータを変換する場合にもHDVR_VOBディレクトリのみを対象とすることが可能となる。
ここでは、DVD_HDVRというディレクトリにHR_MANGER.IFO(VMGファイル)を置き、HDVR_VOBにEVOBのOBJECTファイル:HR_MOVIE.VROとEVOB毎のTMAPファイル:HR_Vmmmm.MAP(mmmmはVOB_INDEXと同じ番号:1〜1998)を置いている。そして、HDVR_SOBには、ESOBのOBJECTファイル:HR_STRnn.SROと、ESOB(AT_SOB)の管理ファイル:HR_SFInn.SFI:(nn=00の場合はTYPE_B、nn=01〜0xffの場合はTYPE_A)と、ESOB(AT_SOB)毎のTMAPファイル:Snn_mmmm.SMP:(nn=00の場合はTYPE_B、nn=01〜0xffの場合はTYPE_A、mmmmはESOB(AT_SOB)_INDEXと同じ番号:1〜1998)を置いている。この場合、HD_DVD−VIDEOとの親和性を高めるために、VTMAP構造を共通にすることが考えられる。
ところで、デジタルTV放送などやインターネットなどの有線を使用した放送などの圧縮動画を放送(配信)を行うための方式において、共通の基本フォーマットであるMPEG−TS方式は、パケットの管理データ部分とペイロードに分かれる。ペイロードには、再生されるべき対象のデータがスクランブルの掛かった状態で含まれている。ARIBによると、その他にPAT(Program Association Table)やPMT(Program Map Table)やSI(Service Information)に関しては、スクランブルされていない。また、PMTやSI(SDT:Service Description Table, EIT:Event Information Table、BAT:Bouquet association Table)を利用してさまざまな管理情報を作成する。
再生対象としては、MPEGビデオデータやMPEGオーディオデータ、データ放送データなど、さらに、直接、再生対象には関係ないが、再生する上で必要なPAT、PMT、SIなどの情報(番組情報等)などがある。PATには、番組毎のPMTのPID(Packet Identification)が含まれており、さらにPMTにはビデオデータやオーディオデータのPIDが記録されている。
例えばSTB(Set Top Box)の通常の再生手順としては、次のようなものがある。すなわち、電子番組表(EPG情報)等によりユーザが番組を決定すると、目的の番組の開始時間にPATを読み込み、その読み込みデータを元に希望の番組に属するPMTのPIDを決定し、そのPIDに従って、目的のPMTを読み出し、そこに含まれる再生すべきビデオ、オーディオパケットのPIDを決定する。そして、PMTおよび/またはSIによりビデオおよびオーディオの属性を読み出し、読み出した属性をビデオおよびオーディオの各デコーダへセットし、前記ビデオおよびオーディオデータをPIDに従って切り出して、再生を行う。ここで、PAT、PMT、SI等はチャネル切り替えにも使用するため(チャンネルを切り替えてすぐに映像が出るように)、数100ms毎に送信されてくる。
ただし、移動体用の放送では1セグメント放送が現在行われている。ここでは、PATが無く、NIT(Network Information Table)とPMTだけである。NITで記載されているサービス番号により予めPMTが決まっており、このサービス番号に従ってPMTが決定される。
さらに、デジタル放送をチューナからストリーマなどの記録機器に送信して記録する場合には、目的の番組のオブジェクトデータのみを選択して記録する。このフォーマットをパーシャルTSと称している。この場合、PATおよび/またはPMTは目的の番組に合わせ再編集され、さらにSIT(Selection Information Table)、DIT(Discontinuity information Table)が追加される。SITは放送内のEIT(Event Information Table)などの情報を基に作られ、EITと同じタイミングで挿入される。また、DITはビットストリームが不連続な箇所に挿入される。DITは2TSパケット一組で挿入される。これにより、コンテンツが不連続かどうかを判定できる。
現在、DVDレコーダは一般に普及し、VTRの需要に取って代わりつつある。そのDVDレコーダの特徴的機能でチャプタ(エントリポイント)自動生成機能がある。この機能は、ほとんどのDVDレコーダが実装している機能で、一定時間おきにエントリポイントを打ち(自動チャプタ分割)、スキップで再生を飛ばすことができる機能である。
また、デジタル放送が普及し、将来的にはアナログ放送がデジタル放送に切り替わろうとしている。そこで、この発明の一実施の形態では、アナログ放送の場合同じくデジタル放送でもチャプタを自動作成する場合に、デジタル放送に対応したエントリポイントの打ち方を提唱する。また、DVDの再生単位であるセル毎にセルタイプC_TY(CELL_TYPE)をみて、再生処理(出力方法を)を変更することも提唱する。
ここで、デジタル放送番組をHDDやHD_DVD−RAMなどの高速なディスクメディアに記録する場合には、放送されたストリームデータをそのままデジタルデータとして記録する方が有利である。そのためにHD_DVD−VR規格が生まれた。この規格では、従来のVR(ビデオレコーディング)フォーマットとは違い、ストリームをそのまま記録するフォーマットとしてのESR(エクステンドストリームレコーディング)をVRにマージしている。これにより、HD_DVD−VR規格は、VRの資産を生かしつつデジタル放送に対応した規格となっている。
ところで、デジタル放送は国毎に放送方式がちがう。たとえば、ヨーロッパではDVB(Digital Video Broadcasting)、米国ではATSC(Advanced Television Systems Committee)、日本ではARIB(Association of Radio Industries and BuSInesses)となっている。
DVBでは、ビデオはMPEG2であるが、解像度が1152*1440i、1080*1920(i, p)、1035*1920、720*1280、(576, 480)*(720, 544, 480, 352)、(288, 240)*352で、フレーム周波数は30Hz、25Hzとなり、オーディオはMPEG-1 audio、MPEG-2 Audioでサンプリング周波数が32kHz、44.1kHz、48kHzとなっている。
ATSCでは、ビデオはMPEG2であるが解像度は1080*1920(i, p)、720*1280p、480*704(i, p)、480*640(i, p)でフレーム周波数は23.976Hz、24Hz、29.97Hz、30Hz、59.94Hz、60Hzとなり、オーディオはMPEG1 Audio Layer 1 & 2(DirecTV)、AC3 Layer 1 & 2(Primstar)でサンプリング周波数は48kHz、44.1kHz、32kHzとなっている。
ARIBでは、ビデオはMPEG2であり、解像度は1080i、720p、480i、480pでフレームレートは29.97Hz、59.94Hzとなり、オーディオはAAC(MPEG-2 Advanced Audio Coding)でサンプリング周波数が48kHz、44.1kHz、32kHz、24kHz、22.05kHz、16kHzとなっている。
このように各国により、デジタ放送の方式は違い、また、放送局毎にも違う可能性がある。そのため、レコーダでは、それぞれの使用する方式に応じてオブジェクトを1または複数のファイルとして記録する必要がある。
このことから、現行のVRファイル構成に対して、この発明の一実施の形態においてさらに追加されるファイルは、図3に示すように、HR_SFInn.SFIおよびHR_SFInn.BUPというファイル名において“nn”が複数存在可能なように構成される。このように構成された1以上のファイルが、各放送方式毎に追加される。
また、たとえば“nn”=00の場合は、放送方式が不明な場合や該当レコーダがその放送方式に対応していない場合に使用できる。この場合、放送方式不明のストリームまたはレコーダが非対応の放送方式のストリームは、タイプBのストリーム(ESPB_STRB)として保存できる。そこで、放送局毎(または放送方式毎)にデジタル放送用の管理用情報であるESTR_FIを変更するため、複数のESTR_FIが存在し得る事になる。
ここで、タイプBのストリーム(例えば1秒の間に到着するパケットを含むストリームオブジェクト:ESPB_STRB)の基本単位としてAT_SOBU(Arrival Time based SOBU)が定義される。ストリームの解析不能時にPATSベースで管理情報を構築する場合、AT_SOBUはAT_SOBU_TM(Time Range of Arrival Time based SOBU)に示される時間間隔で区切られる。 AT_SOBU_TMは秒単位で指定する場合と27MHzのカウント値で指定する場合の2種類が考えられる。このAT_SOBU_TMは、図示しないが、図4のESOBI内に、タイプBのタイムマップ情報の一部として記述されるようになっている。
図4は、HDVR_MG(VMGファイル)に含まれるESTR_FIT、EX_ORG_PGCI、およびEX_UD_PGCIT(プレイリスト情報)が、どのように構成されるかの一例を説明する図である。ESTR_FITは、一般情報ESTR_FI_GIと、1以上のサーチポインタESOBI_SRP#1〜#nと、1以上のESOBI#1〜#nを含んで構成されている。ESTR_FI_GIは、識別子SFI_IDと、終了アドレスESTR_FI_EAと、バージョン情報VERNと、最終変更時間ESTR_FI_LAST_MOD_TMと、パケットタイプPKT_TYと、パケットサイズPKT_SZと、パケットグループサイズPKT_GRP_SZと、1パケットグループ内のパケット数PKT_Nsと、サーチポインタ数ESOBI_SRP_Ns等を含んで構成されている。
ここで、SFI_IDは“HR_SFInn”と表現され、タイプBの記録モードでは“HR_SFI00”となる。一方、タイプAの記録モードでは“HR_SFInn”の「nn」は01からFFまでの何れか1つの値をとる。つまり、“HR_SFInn”の「nn」が「00」であるか否かにより、記録されたESOBがタイプAなのかタイプBなのかを識別できる。
さらに、再生情報としてのEX_PGCIには2種類ある。通常のVRフォーマットと同じく、ORG_EX_PGCI(オリジナルプログラムチェーン情報)は録画時にレコーダが自動作成して録画順に設定し、UD_EX_PGCITはユーザが自由に追加する再生順番に従って作成され、プレイリストと呼ばれている。この2つのPGCIのフォーマットはEX_PGCレベルで共通で、そのEX_PGCフォーマットは図4〜図6に示される。
図5は、EX_PGC情報に含まれるセル情報EX_CIの具体例を説明する図である。EX_CIでは、セルタイプC_TYにESOB、AT_SOBの種別が加わっている。EX_CIには、その他に、サーチポインタ番号ESOBI_SRPN、セル開始時間C_S_PTM/C_S_PATS、セル終了時間C_E_PTM/C_E_PATS、該当セルのディフォルトビデオESOB_ESI番号C_DEF_V_SOB_ESIN等を記述できるようになっている。ここで、セル開始時間およびセル終了時間は、再生時間(PTMベースの場合)またはパケット到着時間(PATSベースの場合)のどちらかで表すことができる。
ここで、時間指定を再生時間=再生時の実時間にすると、送られてくるビットストリームをそのまま記録するストリームレコーディングでありながら、既存のDVDビデオレコーダ(DVD−VR)と同じアクセス方法が可能となる。すると、ユーザが再生時間で記録場所を指定できるため、ユーザ希望が完全に反映されることになる。ただし、この方法は、ストリームの内容が十分に解析可能な場合に採用できる方法であり、記録されたストリームの内容が十分にわからない場合には、ストリームパケット(デジタル放送録画ではMPEG−TSパケット)の転送時間単位で指定せざるを得ない。
記録されたストリームの内容が十分にわからない状態で記録場所を再生時間で指定した場合、必ずしもIピクチャの先頭から再生を開始できるとは限らない。そこで、再生開始のフレームがIピクチャのフレームで無い場合は、その直前のIピクチャよりデコードを開始し、目的のフレームまでデコードをした所で再生映像の表示を開始する。こうすることで、ユーザには、あたかもユーザが時間指定したフレームから再生開始されたように見せることができる。
ところで、再生処理時などにおいて参照するIDは、再生するストリームを代表するストリームのPIDを設定する方法と、マルチビューTVなどの場合などで、コンポーネントグループのIDを設定する方法と、ESI番号で指定する方法(例:図5)が考えられる(PIDの設定には、13ビットの実データで記載する方法、PMT内の順番を記載する方法、またはコンポーネントタグの値を記載する方法などがある)。また、参照するGRP番号(GRP_SRP番号)を入れ、切り換える方法も考えられる。
なお、プログラムに特有のID番号(図5のEX_PGI#pなどに対応するPG_INDEX:図示せず)を付けることで、途中のプログラムやセルを削除しても変わらない番号でプログラムやセルを指定できるようにしている。また、図5のセル情報(EX_CI)には、再生するストリームのファイル番号(ESTR_FIN)と対応ESOBIのサーチポインタ番号ESOBI_SRPNを設定している。さらに、EX_CIには、チャプタに相当するセルエントリポイントの情報C_EPI(Entry Point Information)が設けられている。
図5のEX_PGC情報に含まれるプログラム情報(EX_PGI#1〜#p)各々には、図示しないが、該当プログラムが更新された日時情報(PG_LAST_MOD_TM)が保存される。これにより、該当プログラムが何時編集されたかがわかる。また、各EX_PGIには、番組名等の記述用にプライマリテキスト情報(PRM_TXTI)のフィールドが用意されている。また、その他のテキスト情報を保存するため図4のEX_TXTDT_MG内にアイテムテキスト(IT_TXT)領域を設け、そこにその他の情報(監督名、主演名、…等)を保存する。そして、該EX_PGIにはその保存したIT_TXTのサーチポインタ番号を設定してリンクさせ、さらに、IT_TXTデータの方にも対応するプログラム番号を設定している。ここで、プログラム番号は、例えば図1のディスク100に記録し初めてからの絶対番号で、他のプログラムを削除しても変わらないインデックス番号(PG_INDEX)としている。
また、EX_PGIには、プレイリストと同様にレジューム情報フィールド(PG_RSM_MRKI)が存在し(プレイリストのサーチポインタに存在する)、各プログラム毎のレジュームマーカ(再生中断時にどこまで再生したかを示すマーカ)を記述できるようにしている。図示しないが、PG_RSM_MRKIには、再生を再開するための情報として、セル番号CN、再生開始点MRK_PT、そのマーカを作成した日時情報MRK_TMを設定している。これらをタイトルレジュームとして使用する。MRK_PTには、ムービーセルあるいはタイプAのストリームセルでは再生時間PTMが記述され、タイプBのストリームセルではパケット到着時間PATSが記述される。
さらに、EX_PGIには、プログラムの代表画像情報フィールド(PG_REP_PICTI)が存在する。このPG_REP_PICTIには、プログラム毎の代表画像情報(タイトルメニューなどでサムネールとして表示する画像のマーカ)として、ピクチャポイントPICT_PT、ピクチャポイントが存在するセルの番号CN等が記述される。PICT_PTには、ムービーセルあるいはタイプAのストリームセルでは代表画像の再生時間PTMが記述され、タイプBのストリームセルでは代表画像のパケット到着時間PATSが記述される。
図6は、C_EPIの具体例を説明する図である。C_EPIには、各セルタイプ毎に2種類あり、合計6種類となる。M_CELL_EPI_TY_Aは、エントリポイント情報のタイプ(EPI_TY)と、エントリポイントがついている個所の再生時間(EP_PTM)で構成される。また、M_CELL_EPI_TY_Bは、EPI_TYおよびEP_PTMの他にPRM_TXTI(プライマリテキスト情報)をさらに含んで構成されている。
STR_A_CELL_EPI_TY_A(ESOBタイプA用)は、エントリポイント情報のタイプ(EPI_TY)と、エントリポイントがついている個所の再生時間(EP_PTM)で構成される。また、STR_A_CELL_EPI_TY_Bは、EPI_TYおよびEP_PTMの他にPRM_TXTI(テキスト情報)をさらに含んで構成されている。
STR_B_CELL_EPI_TY_A(ESOBタイプB用)は、エントリポイント情報のタイプ(EPI_TY)と、エントリポイントがついている個所のパケット到着時間(EP_PATS)で構成される。また、STR_B_CELL_EPI_TY_Bは、EPI_TYおよびEP_PATSの他にPRM_TXTI(テキスト情報)をさらに含んで構成されている。
図7は、この発明の一実施の形態に係るデータ構造を利用して、情報記録媒体(光ディスク、ハードディスク等)にAV情報(デジタルTV放送プログラム等)を記録し再生する装置の一例を説明するブロック図である。この録再装置は、図示するように、MPU部80、表示部104、デコーダ部59、エンコーダ部79、TVチューナ部82、STC部102、D−PRO部52、一時記憶部53、ディスクドライブ部51、キー入力部103、ビデオミキシング部66、フレームメモリ部73、TV用D/A部67、地上波デジタルチューナ部89、IEEE1394(および/またはHDMI)I/F部74、イーサネット(登録商標)I/F部(図示せず)、リモコン受信部104、さらに、STB部(BSデジタルチューナ等)83、緊急放送検出部83b、HDD部100a等により構成されている。この構成では、録再DVDレコーダにストリーマの機能を追加する形となっている。
エンコーダ部79は、A/D部84、ビデオエンコード部87、オーディオエンコード部86、副映像エンコード部(図示せず)、フォーマッタ部90、バッファメモリ部91等により構成されている。また、デコーダ部59は、分離部60、ビデオデコード部61、副映像デコード部63、オーディオデコード部64、TSパケット転送部101、V−PRO部65、オーディオ用D/A部70等により構成されている。さらに、STB部83には、デジタル放送を受信するためのアンテナ83aが接続されている。なお、STC部102は27MHzベースでカウントするように構成されている。
記録時の信号の流れは、次のようになる。すなわち、STB部83(または地上波デジタルチューナ89)で受け取ったTSパケットデータは、フォーマッタ部90で、パケットグループ化してバッファメモリ部91へ一時保存し、一定量たまった時点でディスク100および/または100aに記録する。このフォーマッタ部90にはPATS用の内部カウンタ90aが接続されている。TSパケットの到着時間はPATS用のカウンタ90aでカウントし、そのカウント値を各TSパケットの先頭に付けて、バッファメモリ部91でバッファリングする。このカウンタ90aはPCR(またはSCR)によりカウント間隔の微調整を行い同期化するが、STC102のようにPCR(またはSCR)の値をロードする事は無い。
この時の動作は、TSパケットを受信すると170パケットづつグルーピング化し、パケットグループヘッダを作成する。その場合、Packet Groupの先頭のPacketのPATSの上位2バイトのみヘッダ(FIRST_PATS_EXT)に入れ、それ以外のPATSは下位4バイトのみがTSパケットとともに(TSパケットの前のPATSに)保存される。また、地上波チューナ82やライン入力から入力されたアナログ信号は、A/D部84でデジタル変換される。そのデジタル信号は、各エンコード部へ入力される。すなわち、ビデオ信号はビデオエンコード部87へ、オーディオ信号はオーディオエンコード部86へ、文字放送などの文字データは図示しない副映像エンコード部へ入力される。ここでは、例えばビデオ信号はMPEG圧縮され、オーディオ信号はMPEGオーディオ圧縮がなされ、文字データはランレングス圧縮される。
各エンコーダ部(VR用)からの出力は、圧縮データがパック化された場合に2048バイトになるようにパケット化されて、フォーマッタ部90へ入力される。フォーマッタ部90では、各パケットがパック化され、さらに、プログラムストリームとして、多重化され、D−PRO部52へ送られる。
D−PRO部52では、16Logical Bock毎にECCブロックを形成し、エラー訂正データを付け、ドライブ部51によりディスク100へ(あるいはHDD100aへ)記録を行う。ここで、ドライブ部51がシーク中やトラックジャンプなどのためビジィー状態にある場合には、一時記憶部53へ入れられ、ドライブ部51の準備ができるまで待つこととなる。さらに、フォーマッタ部90では、録画中、各切り分け情報を作成し、定期的にMPU部80へ送る(GOP先頭割り込みなど)。切り分け情報としては、EVOBU(ESOBU)のパック数、EVOBU(ESOBU)先頭からのリファレンスピクチャ(Iピクチャ)のエンドアドレス、EVOBU(ESOBU)の再生時間などがある。
また、再生時の信号の流れは、ドライブ部51によりディスク100から(あるいはHDD100aから)データを読み出し、D−PRO部52でエラー訂正を行い、デコーダ部59へ入力される。MPU部80は、入力されるデータがVRデータか、SRデータかの種別を(図5のセルタイプにより)判定し、再生前にその種別をデコーダ部59に設定する。SRデータの場合、MPU部80は、再生するESI番号により再生するPIDを決め、PMTより再生する各アイテム(ビデオ、オーディオ等)のPIDを決め、デコーダ部59へ設定する。デコーダ部59内では、そのPIDを元に、分離部60から各TSパケットを各デコード部61〜64へ送るとともにTSパケット転送部101へ送り、到着時間に従ってSTB部83(およびIEEE1394I/F部74)へTSパケットの形で送信する。各デコード部61〜64は、それぞれデコードを行い、D/A部67でアナログ信号に変換し、TV68で表示する。VRデータの場合、分離部60は、固定のIDに従い、各デコード部61〜64へ送る。各デコード部61〜64は、それぞれデコードを行い、D/A部67でアナログ信号に変換し、TV68で表示する。
なお、再生時は、ディスク100および/または100aから読み出したパックデータを分離部60で解析し、TSパケットが入っているパックの場合にはTSパケット転送部101へ送り、さらに、その後、各デコーダ61〜64へ送って、再生を行う。STB部83へ転送する場合(あるいはデジタルTV等の外部機器へIEEE1394等により送信する場合)は、TSパケット転送部101は、そのデータを到着時と同じ時間間隔で、TSパケットのみを転送する。STB部83は、デコードを行い、AV信号を発生させ、そのAV信号をストリーマ内ビデオエンコーダ部を通してTV68などで表示する。
図7の装置で用いる媒体100(100a)の特徴を簡単に纏めると、次のようになる。すなわち、この媒体は、管理領域130とデータ領域131で構成され、データ領域にはデータが複数のオブジェクトデータ(ESOB)に分かれて記録され、それぞれのオブジェクトデータはデータユニット(ESOBU)の集まりで構成される。そして、1つのデータユニット(ESOBU)は、MPEG−TSに準じたデジタル放送信号をTSパケット毎に複数パケットでパケットグループ化したパケットグループにより構成される(図1参照)。一方、前記管理領域130は再生手順を管理する情報としてEX_PGC情報(EX_PGCI)を持ち、このEX_PGC情報はセル情報(EX_CI)を含んで構成される。さらに、管理領域130内にオブジェクトデータ(ESOB)を管理する情報を持つ。
図7の装置は、上記のようなデータ構造を持つ媒体100(100a)に対して、ビデオレコーディングの他にストリームレコーディングを行うことができる。その際、TSパケットのストリーム内からプログラムマップテーブルPMTやサービス情報SIを取り出すために、MPU部80はサービス情報取り出し部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。またこのサービス情報取り出し部で取り出した情報を元に、属性情報(PCRのパック番号あるいはPCRのLB数番号など)を作成する属性情報作成部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。MPU部80はさらに、図19を参照して後述するエントリポイント自動生成処理を行うファームウエアを、エントリポイント処理部80Cとして具備している。
図8は、図7の装置の全体の動作の一例を説明するフローチャート図(全体動作処理フロー)である。ここでのデータ処理は、録画処理、再生処理、データ転送処理(STBへのデジタル出力処理など)、番組設定処理、編集処理の5通りとなる。例えば図7の装置の電源がオンされると、MPU部80は、(工場出荷時またはユーザが設定した後の)初期設定を行い(ST10)、表示設定を行なう(ST12)。そして、緊急放送フラグおよび予約録画のフラグがセットされているかどうかチェックし、セットされていれば(ST13Aイエス)予約録画の番組設定を行って、所定の時間に録画処理を行うよう設定する(ST13B)。緊急放送フラグおよび予約録画のフラグがセットされていなければ(ST13Aノー)、緊急放送の録画済みフラグがセットされているかどうかチェックし、セットされていれば(ST13Cイエス)、ユーザが何もしなくても、緊急放送の表示処理を行う(ST13D)。緊急放送の録画済みフラグがセットされていなければ(ST13Cノー)、ユーザ操作を待つ状態に移る。
ユーザが図7のキー入力部103またはリモコン103aからキー入力を行うと(ST14)、MPU部80はそのキー入力の内容を解釈する(ST16)。この入力キー解釈の結果に応じて、以下の4つのデータ処理が、適宜実行される。すなわち、キー入力が例えばタイマ予約録画設定のキー操作であれば、番組設定処理に入る(ST20)。キー入力が録画開始のキー操作であれば、録画処理に入る(ST22)。キー入力が再生開始のキー操作であれば、再生処理に入る(ST24)。キー入力がSTBへデジタル出力させるキー操作であれば、デジタル出力処理に入る(ST26)。編集処理のキー操作であれば、編集処理に入る(ST28)。
ST20〜ST28の処理は、そのタスク毎に適宜並列処理される。例えば、再生処理中(ST24)にSTBへデジタル出力する処理(ST26)が並列に実行される。あるいは、タイマ予約録画でない録画処理中(ST22)に新たな番組設定処理(ST20)を並列に処理するように構成することができる。あるいは、高速アクセス可能なディスク記録の特徴を生かし、録画処理(ST22)中に再生処理(ST24)とデジタル出力処理(ST26)を並列処理するように構成することもできる。HDDへの録画中にディスクの編集処理(ST28)を行うように構成することも可能である。
図9は、編集処理(ST28)の一例を説明するフローチャート図(編集動作処理フロー)である。編集処理に入ると、編集内容に応じて、5つの処理(A〜Eのいずれか)に入ることができる(ST280)。エントリポイントメニュー処理(ST282A)、コピー/移動処理(ST282B)、削除処理(ST282C)、プレイリスト作成処理(ST282D)、あるいはエントリポイント自動生成処理(ST282E)が済むと、この処理によるプログラム更新の日時が、各管理情報(プログラム情報EX_PGI、アイテムテキスト情報EX_IT_TXT、製造業者情報EX_MNFI等)に設定される(ST284)。
なお、プログラム情報EX_PGI、セル情報EX_CI、あるいはEVOB、ESOBのどれかが変更されたときに、このプログラム更新日時の設定を行うようにしてもよい。ここで、EVOBIおよび/またはESOBIが変更された場合は、EVOBIおよび/またはESOBIの編集時間(EDIT_TIME)をESOB_EDIT_TIME等(図示せず)に設定できる。もしくは、このプログラム更新日時の設定を行うようにしてもよい。
ついでながら、ST284の処理において、ST282A〜ST282Eの何れかの操作を行った機器のメーカIDを、管理情報(VMG)内の図示しない編集者ID(LAST_MNF_ID)に設定してもよい。この編集者IDは、PGI、CI、ESOB(またはEVOB)のどれかが変更されると、その都度、その時に用いた機器のID情報により、設定(または更新)できる。
図10は、再生動作の一例を説明するフローチャート図(全体の再生動作フロー)である。再生時のデータ処理は、例えば以下のようになる:
まず、Recordable/Rewritable Disc(R、RW、RAM)かどうかをチェックし(ST201)、Recordable/Rewritable Discで無い場合(ST201NG)には、その旨を返して終了する(ST203)。Recordable/Rewritable Discであれば(ST201OK)、そのディスクに録画されているかどうかチェックする(ST205)。なにも録画されていなければ(ST205ノー)その旨の警告を含むダイアログ(図示せず)表示して(ST206)終了する。そのディスクに何らかの録画がなされておれば(ST205イエス)、ディスクの管理情報(HDVR¥MG/VMGファイル)を読み出す(ST207)。
読み出したVMGファイルにより、再生するプログラム、セルを決定する(VMGファイルに登録された録画済みタイトル/番組のメニュー表示から、所望の番組をユーザに選ばせる)(ST208)。ここで、記録順の再生選択した場合には、EX_ORG_PGCIに従って再生を行い、(ユーザが編集した)番組毎の再生を行う場合には、再生したい番組に相当する番号のEX_UD_PGCI(プレイリスト)に従って再生するセルを決定する(ST210)。この決定は、図5のC_TYの記述内容により行うことができる。
C_TYがムービーセルを示しているときは(ST212=M_CELL)、M_EVOBの再生処理に入る(ST214)。C_TYがタイプAのストリームセルを示しているときは(ST212=STRA_CELL)、ESOBの再生処理に入る(ST216)。C_TYがタイプBのストリームセルを示しているときは(ST212=STRB_CELL)、AT_SOBの再生処理に入る(ST218)。セル再生が終了していない(ST230ノー)ときはST210へ戻り、終了すれば(ST230イエス)別の処理へリターンする。
ここでは、再生時にC_TYよりEVOB、ESOB、AT_SOBのタイプを決め、各再生処理を行うようになっている。各再生処理では、EVOB、ESOBはビデオ出力(S端子出力、RCA出力、D端子出力等)が可能であるので必須となっているが、AT_SOBの場合、デコード機能が無く、出力はデジタルストリーム出力(IEEE1394やHDMI出力等)のみが必須となっている。このため、再生対象により出力を変える必要があるため、出力先がオブジェクト毎に変更されている。また、この場合、図示しないリモコンのSKIPキーにより、エントリポイント毎に再生をSKIPする(再生を次のエントリポイントから再開する)機能が必須となっている。
図11は、EVOB再生動作の一例を説明するフローチャート図である。図7のMPU部80は、ディスク100および/または100aに記録された番組/タイトルの再生開始前に、図4の管理情報をワークRAM80Aに読み込んでいる。そこで、図4のESTR_FI_GI内に記述されているパケットタイプPKT_TYをワークRAM80Aから読み出してパケットタイプを決定する(ST2140)。パケットタイプがEVOBを示している場合、ST2146の設定処理に入る。すなわち、図1のパケットグループヘッダ161内に記述されたコピー制御情報CCIを基に、ビデオデコーダにAPSの設定を行う(0=APS無し、1=APSタイプ1付加、2=APSタイプ2付加、3=APSタイプ3付加)。ここで、APSとはAnalog Protection Systemのことである。また、CCIを基にビデオデコーダにCGMSAの設定を行う(0=コピー禁止、1=コピーフリー)。さらに、デジタル出力がある場合は、EPNの設定を行う(0=コンテンツ保護あり、1=コンテンツ保護無し…この場合デジタル出力をそのまま送出するよう出力ICに設定する)。さらに、ICTの設定も行う(0=アナログビデオ出力解像度制限あり、1=高解像度出力の制限無し)。以上の設定が済むと、対応するEVOBのセル再生処理に入る(ST2148)。
図12は、ESOB再生動作の一例を説明するフローチャート図である。MPU部80は、PKT_TYをワークRAM80Aから読み出してパケットタイプを決定する(ST2160)。パケットタイプがESOBを示している場合、そのESOBが、図7の装置で対応可能な方式のストリームかどうか(例えばARIBかどうか)をチェックする。対応不可能な方式のストリームであれば(ST2162ノー)その旨の表示を出して(ST2163)処理を終了する。対応可能な方式のストリームであれば(ST2162イエス)、図5のセル情報EX_CIを基に再生するESOBを決定し、対応するESOBIから、PMT、STIを読み出す(ST2164)。
その後、ST2166の設定処理に入る。すなわち、PMTより再生するPIDを決定し、決定されたPIDをデコーダ部に設定する(初期の設定はデフォルトPID)。これにより、MPEGビデオデコーダ、副映像デコーダ、オーディオデコーダそれぞれに初期設定がなされる。そのあと、CCIを基にビデオデコーダにAPSの設定を行う(0=APS無し、1=APSタイプ1付加、2=APSタイプ2付加、3=APSタイプ3付加)。また、CCIを基にビデオデコーダにCGMSAの設定を行う(0=コピー禁止、1=コピーフリー)。さらに、デジタル出力がある場合は、EPNの設定を行う(0=コンテンツ保護あり、1=コンテンツ保護無し…この場合デジタル出力をそのまま送出するよう出力ICに設定する)。さらに、ICTの設定も行う(0=では高精細HDを標準SDに解像度ダウンして出力し、1=ではHDのまま出力する)。以上の設定が済むと、対応するESOBのセル再生処理に入る(ST2168)。
図13は、AT_SOB再生動作の一例を説明するフローチャート図である。MPU部80は、PKT_TYをワークRAM80Aから読み出し(ST2180)、EX_CIを基に再生するストリームを決定する(ST2184)。決定されたストリームがAT_SOBであれば、デジタル出力をそのまま送出するよう出力ICに設定し(ST2186)、対応するAT_SOBのセル再生処理に入る(ST2188)。
図14は、セル再生時の処理の一例を説明するフローチャート図である。セルの再生処理は、例えば以下のようになる:
まず、セル情報EX_CIより再生するESIおよびESOBファイルを決定し、EX_CI内の再生するPIDとES_GIより再生するグループを決め、グループに属している他のESのPIDを取り出して、各デコーダにセットする。そして、TMAPIの内容よりセルの開始ファイルポインタFP(論理ブロック番号LBN)、終了ファイルポインタFP(論理ブロック番号LBN)を決定し、さらに、EX_CI内の開始時間、終了時間より開始のESOBU_ENT、終了のESOBU_ENTを決定する。さらに、アドレスオフセットADR_OFSに目的のESOBU_ENTまでのエントリのデータ長を累積し、開始アドレス(LB=FP)、終了アドレスを求める。残りセル長は終了アドレスより開始アドレスを引いた値とし、再生開始時間をSTCへセットする(ST2200)。
続いて読み出し処理を実行し、開始ファイルポインタより読み出しアドレス、読み出しサイズを決定する(ST2206)。読み出す読み出し単位サイズと残りセル長を比べ、残りセル長が大きい場合には(ST2207イエス)、残りセル長に、残りセル長より読み出す読み出し単位サイズを引いた値を設定する(ST2208)。残りセル長が小さい場合には(ST2207ノー)、読み出し長を残りセル長にセットし、残りセル長を0にセットする(ST2209)。読み出し長を読み出し単位の長さに設定し、ドライブ部へ読み出しアドレス、読み出し長、読み出し命令を設定する(ST2210)。
データ転送が開始したら(ST2212イエス)、バッファに1ESOBU分たまるのを待つ。1ESOBU分たまったら(ST2214イエス)、1ESOBU分のデータをバッファから読み込み(ST2216)、バッファデコーダ転送処理を行なう(ST2220)。そして、読み出しファイルポインタFPのインクリメントとMPEGデコーダの通常モードへの設定(SCRの読み込みと設定)を行なう(ST2224)。転送が終了したかどうかをチェックし、終了した場合には(ST2226イエス)、残りセル長をチェックする。残りセル長が“0”でない、つまり現在のセルが最後のセルでない場合には(ST2228ノー)、ST2206へ戻る。残りセル長が“0”の場合には(ST2228イエス)、この処理を終了する。
転送が終了していない場合には(ST2226ノー)、SKIPキーが押されたかどうかをチェックする。SKIPキーが押された場合は(ST2248イエス)、SKIP処理を行う。すなわち、次のエントリポイントの情報を基に読み出すアドレス(ファイルポインタ)を変更し(ST2250)、ST2212の処理へ戻る。SKIPキーが押されていない場合は(ST2248ノー)、ST2212の処理へ戻る。
図15はエントリポイントメニュー表示処理の一例を説明するフローチャート図である。この処理は図7のMPU部80のEP処理部80Cが受け持つ。また、図16はエントリポイントが付いたタイトルのメニュー表示例(6つのエントリポイントに対応した6枚のサムネール表示の例)を説明する図である。
ユーザが図示しないリモコンのメニューキーを押すなどして図15の処理に入ると、まず、管理情報(VMGファイル)を読み込み、ワークへ展開を行う(ST1000)。ワークに展開された管理情報のうち、セル情報(図5のEX_CI、図6のC_EPI)を参照して、エントリポイント毎にサムネール(縮小画像)を表示する設定を行い、縮小画像の枚数(図16の例では6枚)を決定する。その後、図16のモニタ画面上に表示する座標(座標原点は例えば画面上左上端)を決め、最初に表示するエントリポイントEPを決定する(ST1002)(図16の「題名1」のサムネール参照)。
続いて、セル情報に従い、最初のEPに対応するサムネール(縮小画像)を画面上の目標位置に表示する(ST1004)。サムネール表示するEPが他にないときは(ST1006ノー)、ユーザが表示された特定のサムネールを選択するのを待つ(ST1016)。サムネール表示するEPが他にあるときは(ST1006イエス)、次が何枚目のサムネールかチェックする。次が4枚目であれば(ST1008イエス)、図16の「題名4」のサムネールのように、表示位置を左下段に変更し(ST1010)、そこに次のサムネールを表示する(ST1004)。
サムネール表示するEPがまだあり(ST1006イエス)、次の表示が4枚目でなく(ST1008ノー)、6枚目の表示終了でもないときは(ST1012ノー)、表示位置を右側に1段(サムネール間のスペースを含めてサムネール1個分)移動する(ST1014)。6枚目の表示終了となったときは(ST1012イエス)、メニュー表示のページ送り記号を表示する(7番目以降のEPがあるとき)(ST1016)。
以上の操作で全てのEPのサムネール表示処理が済むと、ユーザが何れかのサムネール(EP付近のビデオ画像から切り出した縮小画像)あるいはページ送り記号を選択するのを待つ(ST1018)。ページ送り記号が選択されたときは(ST1020イエス)、サムネールの表示開始画像番号を、最後に表示した枚数+1に設定し(ST1022)、次頁の左上に、新たに設定された画像番号のサムネールを表示する(ST1004)。特定のサムネールが選択されたときは(ST1020ノー)、ワークメモリに展開された管理情報から、選択されたサムネールに対応するストリームデータの再生時間、セル番号、プログラム番号等を読出して(ST1024)、再生処理に移行する。
図15の処理により、図16に示すようにエントリポイント毎にサムネールをメニューを表示して、目的のエントリポイント箇所へ直接ジャンプし、再生することができる。なお、ESOBストリームの場合のエントリポイントEPのつけ方には、タイプAとタイプBの2通りある。チャネル切り替え時にすばやく動画再生を開始するために放送でPAT/PMTが0.5s(1セグメント放送の場合、2s〜5s)毎に入れられている。ランダムアクセス時にこのPAT/PMT挿入ポイントより再生を開始するとすぐにリファレンスピクチャが取り出せる可能性が高いため、PAT/PMT(1セグメント放送の場合、PATは無く、PMTのみ)の挿入ポイントでEPをつけることが自然である。また、DITがある場所では、ストリームが新たに始まった場所であるため、ここでEPをつけることも自然となる。このようなEPの付け方の具体例を、以下で説明する。
図17はエントリポイントの付け方(タイプAの場合)の一例を示している。TYPE−Aの場合は、再生時間を基軸とするため、EPにはPTSの値を設定する必要がある。そのため、EPをつける再生時間間隔(例えば5分間隔)の場所でPAT/PMTを見つけ、その後ろのビデオパックのPTSをEPに設定する(PAT、PMTは再生データではないのでPTSなどはつかないため)。また、DITでは2つのDITの後ろのビデオパックのPTSをEPに設定する。
図18はエントリポイントの付け方(タイプBの場合)の他例を示している。TYPE−Bの場合は、到着時間を基準軸とするため、EPにはATSの値を設定する必要がある。そのため、EPをつける到着時間間隔(例5分)の場所でPAT/PMTを見つけ、そのATSをEPに設定する。また、DITでは2つのDITのがあるため、最初のDIT若しくは2番目のDITのATSをEPに設定することが考えられる。
図19は、エントリポイント自動生成処理の一例を説明するフローチャート図である。この処理は図7のMPU部80のEP処理部80Cが受け持つ。以下、実際のEP作成動作について説明する。まず、管理情報(VMGファイル)を読み込み、ワークへ展開を行う(ST1100)。ユーザにより、エントリポイントEPを作成する間隔が指示される(ST1102)。EX_PGCIより、EPをつけるEX_CIをきめ、そこに登録されているESOBを読み出す(ST1104)。
C_TYまたはSFI_IDにより、ESOBのタイプを決める(ST1106)。タイプAの場合はPTMベースでEPを作成するためにST1110Aへ移行し、タイプBの場合はPATSベースでEPを作成するためにST1110Bへ移行する。
タイプAの場合、ESOBを一定量づつ読み出す(ST1110A)。再生間隔がユーザ指定時間(L分)を経過したかをチェックし、経過していない場合(ST1112Aノー)は、ST1122Aへ移行する。再生間隔がユーザ指定時間(L分)を経過した場合(ST1112Aイエス)は、再生間隔の位置の一番近いPAT/PMTを探し、その後ろのビデオデータTSパケットを検出する(ST1114A)。そのビデオパケットの再生時間をEPに登録する(ST1116A)。ここで、EPのタイプがTY_Bの場合(ST1118A)、テキスト情報としてSIやPSI内の情報(または再生時間若しくは録画時間)を保存する(ST1120A)。
読み込んだデータ内にDITがあるかどうかを調べ、無い場合(ST1122Aノー)はST1130Aへ移行する。再生間隔の位置の一番近いPAT/PMTを探し、その後ろのビデオデータTSパケットを検出する。そして、そのビデオパケットの再生時間をEPに登録する(ST1124A)。ここで、EPのタイプがTY_Bの場合(ST1126A)、テキスト情報としてSIやPSI内の情報(または再生時間若しくは録画時間)を保存する(ST1128A)。ESOBが終わったかどうかを調べ、終わっていない場合(ST1130Aノー)はST1110Aへ戻り、終わった場合(ST1130Aイエス)は図19の処理を終了する。
タイプBの場合、ESOBを一定量づつ読み出す(ST1110B)。到着時間間隔がユーザ指定時間(L分)を経過したかをチェックし、経過していない場合(ST1112Bノー)は、ST1122Bへ移行する。到着時間間隔がユーザ指定時間(L分)を経過した場合(ST1112Bイエス)は、到着時間間隔の位置の一番近いPAT/PMTを探し、その後ろのビデオデータTSパケットを検出する(ST1114B)。そのビデオパケットの到着時間をEPに登録する(ST1116B)。ここで、EPのタイプがTY_Bの場合(ST1118B)、テキスト情報としてSIやPSI内の情報(または再生時間若しくは録画時間)を保存する(ST1120B)。
読み込んだデータ内にDITがあるかどうかを調べ、無い場合(ST1122Bノー)はST1130Bへ移行する。到着時間間隔の位置の一番近いPAT/PMTを探し、その後ろのビデオデータTSパケットを検出する。そして、そのビデオパケットの到着時間をEPに登録する(ST1124B)。ここで、EPのタイプがTY_Bの場合(ST1126B)、テキスト情報としてSIやPSI内の情報(または再生時間若しくは録画時間)をテキストとして保存する(ST1128B)。ESOBが終わったかどうかを調べ、終わっていない場合(ST1130Bノー)はST1110Bへ戻り、終わった場合(ST1130Bイエス)は図19の処理を終了する。以上により、EPをTSの都合に合った場所へ自動的に作成することができる。
図20は、ストリームファイル情報(ESTR_FIT)内がどのように構成されるかの一例を説明する図である。ESTR_FITは、ESTR_FIのサーチポインタテーブルESTR_FI_SRPTと、1以上のストリームファイル情報ESTR_FI#1〜#nと、1以上のストリームタイムマップテーブルESTMAPT#1〜#nを含んで構成されている。各ESTMAPTは、1以上のストリームタイムマップESTMAP#1〜#nを含んで構成されている。各ESTMAPは、ストリームタイムマップ一般情報ESTMAP_GIと、1以上のエレメンタリタイムマップ情報サーチポインタEETMAPI_SRP#1〜#nと、1以上のエレメンタリタイムマップ情報EETMAPI#1〜#nを含んで構成されている。各EETMAPIは、1以上のストリームオブジェクトユニットエントリESOBU_ENT#1〜#nを含んで構成されている。各ESOBU_ENTは、
該当ESOBUの最初のリファレンスピクチャ(MPEG−TSの場合はIピクチャ)のサイズを記述する1STREF_SZと、該当ESOBUの再生時間を記述するESOBU_PB_TMと、該当ESOBUのサイズを記述するESOBU_SZと、該当ESOBUの開始パケット位置を記述するESOBU_S_PKT_POS等を含んで構成されている。
<実施の形態の効果>
デジタル放送の録画内容に対して、エントリポイントを、従来のDVD−VRレコーダと同様に自動作成できる。その際、エントリポイントをストリームの種別(タイプAまたはタイプBのESOB)に適応した形で付けることができる。
<まとめ>
1.エントリポイント登録の時間間隔をPTMとするかPATSとするか、タイプAとタイプBとで変える。すなわち、HD_DVD−VR規格に従ったDVD記録再生装置において、エントリポイント(EP)自動作成時、管理情報に従って作成するコンテンツの種別(ESOBのタイプA/タイプB)を切り替え、それに伴い、再生時間ベースで処理するか到着時間ベースで処理するかを切り替える;
ここで、再生時間ベースで処理する場合、目的の再生時間に一番近いPAT/PMTの後ろの最初のビデオパケットの再生時間をEPに登録する(図17参照);
また、到着時間ベースで処理する場合、目的の到着時間に一番近いPAT/PMTの到着時間をEPに登録する(図18参照)。
2.DIT(Discontinuity Information Table)が検出されたらエントリポイントを登録する;
3.ESOBタイプがタイプAのとき、EPIタイプがタイプAかタイプBかの判定を行い、タイプBのEPIならPRM_TXTIにテキスト情報を記録する;
4.ESOBタイプがタイプBのとき、EPIタイプがタイプAかタイプBかの判定を行い、タイプBのEPIならPRM_TXTIにテキスト情報を記録する。
<実施の形態と発明との対応例>
(1)再生時間で管理を行うタイプA記録モードにより記録されるタイプAストリームオブジェクト(ESOBタイプA)およびパケット到着時間で管理を行うタイプB記録モードにより記録されるタイプBストリームオブジェクト(ESOBタイプB)のうちの少なくとも一方を、パケットを用いて記録するストリームオブジェクト記録領域(図1の133)と、前記ストリームオブジェクト記録領域の記録内容(ESOBタイプA/ESOBタイプB)を管理する管理情報(図4のHDVR_MG)を記録する管理情報記録領域(図1の130)を具備する情報記憶媒体(図1の100または図7のHDD100a)を用いて、前記ストリームオブジェクト記録領域の記録内容(ESOBタイプA/ESOBタイプB)にエントリポイント(図17、図18のEPn等)を登録する。
ここで、前記管理情報(図4のHDVR_MG)はストリームファイル情報(図4のESTR_FIT)とプログラムチェーン情報(図4のEX_ORG_PGCI/EX_UD_PGCIT;図5のEX_PGC情報)を含んで構成される。また、前記ストリームファイル情報(ESTR_FIT)はその管理対象が前記タイプA記録モードであるのか前記タイプB記録モードであるのかを区別する第1の識別情報(図4のSFI_ID)を含み、および/または前記プログラムチェーン情報(EX_PGC情報)は前記ストリームオブジェクト記録領域の記録内容(ESOBタイプA/ESOBタイプB)の再生単位としてのセルが前記タイプA記録モードのものであるのか前記タイプB記録モードのものであるのかを区別する第2の識別情報(図5のC_TY)を含んでいる。
この発明の一実施の形態に係るエントリポイント登録方法(図19)は、前記情報記憶媒体から前記管理情報(HDVR_MGまたはVMG)を読み込み(ST1100)、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプA記録モードを示すときは(ST1106=タイプA)所定の再生時間(L分間隔)でエントリポイントを登録し(ST1112A〜ST1116A)、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプB記録モードを示すときは(ST1106=タイプB)所定のパケット到着時間(L分間隔)でエントリポイントを登録する(ST1112B〜ST1116B)ように構成される。
(2)前記タイプAストリームオブジェクト(ESOBtypeA)および前記タイプBストリームオブジェクト(ESOBtypeB)のうちの少なくとも一方は、記録された番組配列情報が不連続となり得る変化点を指示する不連続性情報(デジタル放送のDIT: Discontinuity Information Table)を含む。ここで、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプA記録モードを示すときに(ST1106=タイプA)前記不連続性情報(DIT)が検出されたら(ST1122A=Y)、前記所定の再生時間(L分間隔)でエントリポイントを登録する(ST1112A〜ST1116A)。また、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプB記録モードを示すときに(ST1106=タイプB)前記不連続性情報(DIT)が検出されたら(ST1122B=Y)、前記所定のパケット到着時間(L分間隔)でエントリポイントを登録する(ST1112B〜ST1116B)。
(3)前記管理情報はエントリポイント情報(図6のEPI)を含む。ここで、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプA記録モードを示すときに(ST1106=タイプA)前記エントリポイントが登録されたら(ST1112A〜ST1116A;あるいはST1122A〜ST1124A)、この登録されたエントリポイントに対応する前記エントリポイント情報がテキスト情報フィールドを有するタイプか否かを判定し(ST1118A;あるいはST1126A)、前記テキスト情報フィールドを有するタイプ(図6のSTR_A_CELL_EPI_TY_B)ならばこのテキスト情報フィールドにテキスト情報および/または時間情報を記述する(ST1120A;あるいはST1128A)。
(4)前記管理情報はエントリポイント情報(図6のEPI)を含む。ここで、前記管理情報に含まれる前記第1の識別情報(SFI_ID)および/または前記第2の識別情報(C_TY)の内容が前記タイプB記録モードを示すときに(ST1106=タイプB)前記エントリポイントが登録されたら(ST1112B〜ST1116B;あるいはST1122B〜ST1124B)、この登録されたエントリポイントに対応する前記エントリポイント情報がテキスト情報フィールドを有するタイプか否かを判定し(ST1118B;あるいはST1126B)、前記テキスト情報フィールドを有するタイプ(図6のSTR_B_CELL_EPI_TY_B)ならばこのテキスト情報フィールドにテキスト情報および/または時間情報を記述する(ST1120B;あるいはST1128B)。
(5)前記ストリームオブジェクト記録領域の記録内容(ESOB type A/ESOB type B)はMPEGで規定されるプログラムアソシエーションテーブル(PAT)およびプログラムマップテーブル(PMT)の情報を含むように構成される。前記タイプA記録モードでは(図17)、所定時間(例えば5分)毎に記録される前記プログラムアソシエーションテーブル(PAT)または前記プログラムマップテーブル(PMT)のすぐ後に続くビデオパケットに前記エントリポイントを登録(そのビデオパケットの再生時間をC_EPIに記録)する。また、前記タイプB記録モードでは(図18)、所定時間(例えば5分)毎に記録される前記プログラムアソシエーションテーブル(PAT)または前記プログラムマップテーブル(PMT)のところに前記エントリポイントを登録(そのPATのパケット到着時間をC_EPIに記録)する。
なお、この発明は前述した実施の形態に限定されるものではなく、現在または将来の実施段階では、その時点で利用可能な技術に基づき、その要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題が解決でき、発明の効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。