情報記録媒体、情報記録方法、情報再生方法、情報記録装置、情報再生装置
【課題】ストリーム記録において記録されたオブジェクトが複数になる場合、それらのオブジェクト間で論理的な連続性があるか否かがわかるような仕組みを提供する。
【解決手段】記録媒体の管理情報は、複数のオブジェクト間の連続性を示す情報(ESOB_SMLI)を含む。ここで、前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合、前記連続性を示す情報(ESOB_SMLI)は、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含むように構成される。
【解決手段】記録媒体の管理情報は、複数のオブジェクト間の連続性を示す情報(ESOB_SMLI)を含む。ここで、前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合、前記連続性を示す情報(ESOB_SMLI)は、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含むように構成される。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、デジタルTV放送などで用いられるデジタルストリーム信号の記録再生に適した、情報記録媒体(あるいはデータ構造)、情報記録/再生方法、および情報記録/再生装置に関する。
【背景技術】
【0002】
近年、TV放送は、ハイビジョン番組(高精細AV情報の番組)を主な放送コンテンツとするデジタル放送の時代に突入してきた。現在実施されているBSデジタルTV放送(および近々実施が開始される地上波デジタルTV放送)では、MPEG2のトランスポートストリーム(以下、適宜MPEG−TSと略記する)が採用されている。動画を使用したデジタル放送の分野では、今後もMPEG−TSが標準的に用いられると考えられる。このようなデジタルTV放送の開始に伴って、デジタルTV放送のコンテンツをそのまま録画できるストリーマのマーケットニーズが高まってきている。
【0003】
DVD−RAM等の光ディスクを利用したストリーマの例として、下記特許文献1に開示された「記録再生装置」がある(特許文献1)。
【特許文献1】特開2002−84479号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
例えば途中に短いニュースが挿入された長時間音楽番組(年末にBSデジタル放送されるNHK紅白歌合戦など)をニュースカット(ニュース部分で録画を一旦止める)でストリーム録画した場合では、ニュースをカットした部分で録画番組のストリームオブジェクトが2つに分かれる。このような場合、2つのストリームオブジェクトは、記録媒体上で物理的に隣接して連続するのが普通であるが、物理的に離れた場所に不連続記録されていてもよい。この例では、2つのストリームオブジェクトが物理的に連続していようがいまいが、そのコンテンツの再生時間に関しては、論理的に連続している。CMが挿入された1本の映画をCMカットでストリーム録画した場合も同様で、CMカット部分で複数ストリームオブジェクト間に物理的な不連続が生じたとしても、1本の映画コンテンツ全体としての再生時間は論理的に連続している。
【0005】
一方、例えばチャネルXの番組Aをストリーム録画し、その後チャネルYの番組Bをストリーム録画したような場合、番組Aのストリームオブジェクトと番組Bのストリームオブジェクトは、たとえ記録位置が物理的に連続していても、それらのコンテンツの再生時間に関しては連続していない(論理的に不連続)。
【0006】
このように、複数のストリームオブジェクトによりストリーム録画がなされている場合において、隣接するストリームオブジェクト間に、物理的な連続性ではなく、論理的な連続性(同一番組内での再生時間の連続性)があるかどうかは、再生時のデコード処理(システムタイムクロックSTCの設定処理など)に影響する。具体的には、再生時間の連続性が分からずにSTCの設定が不適切に行われる(STCのリセットなど)と、同一番組の前半ストリームオブジェクトの末尾から後半ストリームオブジェクトの先頭に再生が移る際に、静止画表示による待ち時間が長めに生じる可能性が出てくる。
【0007】
この発明の目的の1つは、MPEG−TSなどのストリーム記録において記録されたオブジェクトが複数になる場合、それらのオブジェクト間で論理的な連続性があるか否かがわかるような仕組みを提供することである。
【課題を解決するための手段】
【0008】
この発明の一実施の形態では、記録媒体の管理情報(図11のHR_SFIxx.IFO内のESOBI)が、複数のオブジェクト間の連続性を示す情報(図22のESOB_SMLI)を含むように構成されている。この構成において、前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合、前記連続性を示す情報(図22のESOB_SMLI)は、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含むことができる。
【0009】
また、前記複数のオブジェクトの内容がMPEGエンコードされたトランスポートストリームのパケット(図38のMPEG−TSパケット)に含まれ、このトランスポートストリームのパケットがシステムタイムクロック(STC)に対応する時間情報(PCRなど)を含む場合において、前記連続性を示す情報(図22のESOB_SMLI)は、隣接する前記複数のオブジェクトの間で前記システムタイムクロック(STC)が連続しているか否かを示すシステムタイムクロック連続フラグを含むことができる。さらに、前記トランスポートストリームのパケットがそのパケットの到着時間情報(PATS)を含む場合において、前記連続性を示す情報(図22のESOB_SMLI)は、隣接する前記複数のオブジェクトの間で前記パケットの到着時間情報(PATS)が連続しているか否かを示すパケット到着時間連続フラグを含むこともできる。
【発明の効果】
【0010】
MPEG−TSなどのストリーム記録において記録されたオブジェクトが複数になる場合、それらのオブジェクト間で論理的な連続性があるか否かは、前記連続性を示す情報(図22のESOB_SMLI)によりわかる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照してこの発明の種々な実施の形態を説明する。デジタルTV放送などやインターネットなどの有線を使用した放送などの圧縮動画を放送(配信)を行うための方式において、共通の基本フォーマットであるMPEG−TS方式は、パケットの管理データ部分とペイロードに分かれる。
【0012】
ペイロードには、再生されるべき対象のデータがスクランブルの掛かった状態で含まれている。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)を利用してさまざまな管理情報を作成する。
【0013】
再生対象としては、MPEGビデオデータやDolby AC3オーディオデータやMPEGオーディオデータ、データ放送データなど、さらに、直接、再生対象には関係ないが、再生する上で必要なPAT、PMT、SIなどの情報(番組情報等)などがある。PATには、番組毎のPMTのPID(Packet Identification)が含まれており、さらにPMTにはビデオデータやオーディオデータのPIDが記録されている。
【0014】
これにより、STBの通常の再生手順としては、EPG情報により、ユーザが番組を決定すると、目的の番組の開始時間に、PATを読み込み、そのデータを元に、希望の番組に属するPMTのPIDを決定し、そのPIDに従って、目的のPMTを読み出し、そこに含まれる再生すべきビデオ、オーディオパケットのPIDを決定し、PMTやSIにより、ビデオ、オーディオの属性を読み出し、各デコーダへセットし、前記ビデオ、オーディオデータをPIDに従って切り出して、再生を行う。ここで、PAT、PMT、SI等は途中再生にも使用するために、数100ms毎に、送信されてくる。
【0015】
ここで、デジタル放送は国毎に放送方式がちがう。たとえば、ヨーロッパではDVB(Digital Video Broadcasting)、米国ではATSC(Advanced Television Systems Committee)、日本ではARIB(Association of Radio Industries and Businesses)となっている。
【0016】
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となっている。
【0017】
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となっている。
【0018】
ARIBでは、ビデオはMPEG2であり、解像度は1080i、720p、480i、480pでフレームレートは29.97Hz、59.94Hzとなり、オーディオはAAC(MPEG-2 Advanced Audio Coding)でサンプリング周波数が48kHz、44.1kHz、32kHz、24kHz、22.05kHz、16kHzとなっている。
【0019】
このように各国により、デジタ放送の方式は違い、また、放送局毎にも違う可能性がある。そのため、レコーダでは、それぞれの使用する方式に応じてオブジェクトを1または複数のファイルとして記録する必要がある。このことから、現行のVRファイル構成に対してさらに追加されるファイルは、図3に示すように、HR_SFIx.IFOおよびHR_SFIx.bupというファイル名において“x”が複数存在可能なように構成される。このように構成された1以上のファイルが、各放送方式毎に追加される。また、たとえば“x”=00の場合は、放送方式が不明な場合や該当レコーダがその放送方式に対応していない場合に使用できる。この場合は、放送方式不明のストリームまたはレコーダが非対応の放送方式のストリームは、TYPE Bのストリーム(SOB_STRB)として保存できる。そこで、放送局毎(または放送方式毎)にデジタル放送用の管理用情報であるESTR_FIを変更するため、複数のESTR_FIが存在する事になる。
【0020】
図10は、ESTR_FITがどのように構成されるかの一例を説明する図である。ここでは、使用するESTR_FIファイルを指定するために、1以上のファイルサーチポインタESTR_FI_SRPの情報が存在する。各ESTR_FI_SRPの構造は、図10に示すように、ESTR_FIのファイルネームESTR_FI_FN、ESTR_FIファイルの更新日時情報ESTR_FI_LAST_MOD_TM、ESTR_FIのファイルサイズESTR_FI_SZ、放送方式情報であるAP_FORMAT-1、国コードCountry code、パケットタイプPKT__TY、SOBIの数ESOBI_Nsなどにより構成される。ここで、更新日時情報はESTR_FIファイル内にも設定されており、編集時ESTR_FIを変更した場合、その値も更新し、再生時、この値とESTR_FIファイル内の値を比べ、同じ値の場合に、再生可能とする。また、ESTR_FIの数は7個以下とし、SOBIの数も999個以下としている。さらに、ESTR_FI file name:HR_SFInn.IFOのnnの部分がSTMAPのFile Name:HR_STMnn、IFOに反映され、STMAPのファイル名が決定される。
【0021】
図11は、HR_SFIxx.IFOの具体例を説明する図である。ESTR_FIファイル(HR_SFIxx.IFO)は、図11に示すように、通常のESTR_FIと同じ構成とする。さらに、解析可能な場合(TYPE AのSTRA)はPTMベースでTMAPが作成可能であるが、解析できない場合(スクランブルが解けない場合や、想定している放送局とは違う方式のデータが入力された場合等:TYPE BのSTRB)、TMAPをPTMベースでは無く受信時間(PATS)ベースで作成する事が考えられる。ただし、 PATSは再生時間では無いので、時間的に正確な特殊再生等はできないが、大体の特殊再生(録画内容を大まかに確認する程度の早送り再生や早戻し再生など)は可能となる。
【0022】
図11において、PATS_SSはPATSの精度を示す値で構成されている。例えば後述する図43の装置において、ネットワークやIEEE1394等のデータそのものを取り込む場合、PATSが4バイトあるいはPATSがダミーなどのときがある。そのような場合に対応するため、PATS_SSの値として、“00=PATS, FIRST_PATS_EXT(図41参照)の両方が有効:精度6バイト”、“01=PATSのみ有効:精度4バイト”、“10=PATS, FIRST_PATS_EXTの両方が無効:精度無し)”を用意している。
【0023】
また、デジタル放送において、特徴としてあげられるのがマルチビュー放送などに代表される複数の映像を同時に(タイムシェアリングして)流し、その内、必要なものだけを選んで再生することにより、複数のコンテンツをユーザの好み等により選択するものである。たとえば、マルチアングル放送でX、Y、Zのストリームと降雨対応としてUがひとつのTSとしてレコーダが受け取った場合、再生時に必要なストリームを選択して再生し、キーにより自由に切り替える必要があり得る。これに対応するため、グルーピング情報(GPI)を追加して、この目的を可能にしている。
【0024】
さらに、DVDレコーダでは通常、VOBの管理情報として、TMAPIを持っている。この情報はVOB/SOBをVOBU/SOBU毎に分けて、その単位で再生、特殊再生等を行えるようにするための情報であるが、最大0.5s毎に1件の情報が必要になるため、将来、ディスクの容量が増えたり、圧縮効率の高い圧縮方式を採用した場合、TMAPIが増え、編集などを行った場合に煩雑になり、IFO内にあるとTMAPIを変更するだけで、関係のない他の領域のデータを移動、書き換え等を行う必要がでてきて、効率が悪い。その状況を改善するためにTMAPIを別領域に記録するようにして対応している。
【0025】
さらに、録画する機器はメーカーや機種により、DVDフォーマットには記載されていない独自の機能をもち、他社との差別化を行うことが考えられる。その場合、メーカー独自の情報をオブジェクトデータに埋め込む必要がある場合がある。そこで、この発明の一実施の形態ではそれに対応するために、Packet Group Headerにその領域としてMNFI(Manufacturer's Information)を設ける。
【0026】
図1は、この発明の一実施の形態に係るデータ構造を説明する図である。DVDディスクは図1に示す様に、ディスク内のデータは、ファイルシステムが入っているボリューム/ファイル構造情報領域とデータファイルを実際に記録するデータ領域で構成されている。ファイルシステムは、どのファイルがどこに記録されているかを示す情報で構成されている。データ領域には一般のコンピュータが記録する領域とAVデータを記録する領域にわけられる。AVデータ記録領域は、AVデータの管理をするためのVMGファイルがあるAVデータ管理情報領域とビデオレコーディング規格のオブジェクトデータ(EVOBS)ファイル(VROファイル)の記録されるVRオブジェクト群記録領域とデジタル放送に対応したオブジェクト(ESOBS:Extended Stream Object Set)が記録されているストリームオブジェクトデータ(ESOBS)ファイル(SROファイル)が記録される記録領域で構成されている。ここで、DVD-Video(ROM Video)はVIDEO-TS、DVD-RTR(録再DVD)はDVD-RTAVとフォーマット毎にディレクトリをわけており、今回のデジタル放送対応のDVD規格も例えばDVD_HDVRというディレクトリに記録される。
【0027】
図2は、この発明の一実施の形態に係るデータ構造における再生管理情報層とオブジェクト管理情報層とオブジェクト層との関係を説明する図である。つまり、DVD_HDVRというディレクトリ(図3を参照して後述)に、データの管理を行うためのVMGファイルとアナログ放送及びラインインなどのアナロク記録用のオブジェクトファイルであるVROと、デジタル放送のオブジェクトであるSROファイルが記録され、そのSROファイルはSOBS(Stream object Set)とし、図2に示される様に管理データはVRと共通のVMGファイルに記録され、VRと共通に制御され、セル単位でリンクされ、再生場所の指定は再生時間単位で指定される。この管理データはVR_MANEGER.IFOと称している。ここで、TMAPTを別ファイルにする場合、図3に示すように、HR_VTMAP.IFO、HR_STMAP.IFOとそのバックアップファイルであるHR_VTMAP.BUP、HR_STMAP.BUPが追加されている。
【0028】
ESOBSの構造は、1以上のESOBで構成され、ESOBは、例えば、一番組に相当する。ESOBは1以上のESOBU(Extended Stream object unit)で構成され、ESOBUは、一定時間間隔(ESOBU_PB_TM_RNGの値により変化する)分のオブジェクトデータもしくは、1以上のGOPデータに相当する。ただし、転送レートが低い場合1s(1秒)以内で1GOPが送られない場合が考えられる(VRでは内部エンコードであるため自由に設定できるがデジタル放送の場合エンコードが放送局であるため、どんなデータがくるか不明な可能性がある)。また、レートが高く、Iピクチャが頻繁に送られた場合などが考えられる。その場合、ESOBUが頻繁に区切られ、それに伴いESOBUの管理情報が増え、全体の管理情報が肥大化するおそれがある。そこで、ESOBUは総録画時間により決めた一定時間間隔(最小の制限はESOB最後のESOBU以外、ただし、区切りはピクチャ単位:例1s毎)または1以上GOPで区切るのが適当となる。ここで、解析不能時にPATSベースで管理情報を構築する場合、ESOBUはSOBU_PATS_TM_RNGに示される時間間隔で区切られる。SOBU_PATS_TM_RNGは秒単位で指定する場合と27MHzのカウント値で指定する場合の2種類が考えられる。
【0029】
この一実施の形態では、1つのESOBUは1以上のPacket Groupで構成され、1つのPacket Groupは16(あるいは32)Logical Block(1LB=2048バイト;16LB=32640バイト)に対応させることができる。各Packet GroupはPacket Group HeaderとTSパケット(170個)で構成されている。各TSパケットの到着時間(Arrival Time)は、各TSパケットの前に配置されたPATS(Packet Arrival Time:4バイト)で表すことができる。
【0030】
ここで、TSパケットの到着時間は、録画開始を0(または所定の値)とし、録画終了までリニアにカウントアップさせる必要がある。ただし、STCとPATSは同じ値を示すとは限らない(初期値の違いなどのため)。しかしながら、PATS用カウンタのカウント間隔は、再生同期が合っている状態で、PCR取り込みと次のPCR取り込みの間隔に対応したSTC用カウンタのカウント間隔に対して、同期させる必要がある。なお、PCRは図38のMPEG−TS内の、図示しないアダプテーションフィールドに含まれている。但し、Packet Groupには2つまでのESOBが混在する事を許可する。つまり、ESOB毎にPacket Groupをアラインしなくてもよいと言うことである。
【0031】
図38は、ストリームオブジェクト用のデータユニット(ESOBU)がどのように構成されるかの一例を説明する図である。Packet Group Headerは、図38〜図42に示す様に、Packet Groupの先頭にSync Patternを設定し、続いてパケットグループ一般情報PKT_GRP_GI、コピー管理情報CCI(Copy Control Information)、先頭パケットのPATSの拡張バイトFIRST_PATS_EXT、および製造業者情報MNI(あるいはMNFI:Manufacturer's information)を含んで構成されている。
【0032】
図39は、PKT_GRP_GIの具体例を説明する図である。PKT_GRP_GIは、 Packet種別PKT_GRP_TY(=01でMPEG−TSのパケットグループであることが示される)、 パケットグループが準拠しているDVD BOOKバージョン番号VERSION、 Packet Groupのステータス情報PKT_GRP_SS、 およびPacket Group内の有効Packet数Valid_PKT_Nsを含んで構成されている。なお、パックグループヘッダ内のFIRST_PATS_EXTは、先頭のPacketに対するPATSの上位2バイトで構成されている。
【0033】
さらに、Packet Groupのステータス情報PKT_GRP_SS(図39)は、 スタッフィングが行われたかどうかを示すビットSTUF (このビット設定されている場合、Valid_PKT_Nsが0xAA以外の値を取る事を示している)、およびPATS_SSを含んで構成されている。ここで、 PATS_SS(図11の説明参照)は、PATSの精度を示す値(00=PATS, FIRST_PATS_EXTの両方が有効で精度6バイト;01=PATSのみ有効で精度4バイト;10=PATS, FIRST_PATS_EXTの両方が無効で精度無し)である。
【0034】
図40は、パケットグループヘッダに含まれるコピー管理情報CCI#がどのように構成されるかの例を説明する図である。CCIは、デジタルコピー制御(00=コピー禁止、01=1回コピー許可、11=コピー禁止)とアナログコピー制御(00=APS無し、01=APSタイプ1、10=APSタイプ2、11=APSタイプ3)とEPN(0=コンテンツ保護、1=コンテンツ保護無し)とICT(0:アナログビデオ出力解像度制限、1=制限無し)で構成されている場合と、さらに、リテンション情報(コピー禁止の場合、Retention=0で、Retention_stateが示す時間だけコピー制御されるコンテンツを含むデータの一時保存を許可する)が入っている場合が考えられる。ここで、APSとはAnalog Protection SYSTEMのことで、この発明の一実施の形態ではマクロビジョンを想定している。
【0035】
図41は、先頭パケットのPATSの拡張バイトFIRST_PATS_EXTの具体例を説明する図である。FIRST_PATS_EXTはPacket Groupの先頭にあるPacketの到着時間の上位2バイトで、残り4バイトは各Packetの前に付けられている。これにより、より正確な時間の再生処理が可能となる。
【0036】
図42は、製造業者情報(MNIあるいはMNFI)の具体例を説明する図である。 MNIあるいはMNFIは、MNF_IDとMNF_DATAで構成されている。NMF_IDは各製造業者(メーカー)を表す値である。その後のMNF_DATAは各メーカー毎に自由に設定可能なデータ領域となっている。
【0037】
ここで、管理情報について、図3〜図37等を参照して説明する。図3は、この発明の一実施の形態に係るファイル構造を説明する図である。HDVRディレクトリには、図3に示されるように、DVDの管理情報ファイルであるHR_MANGER.IFOとアナログビデオオブジェクトファイルであるVROファイルとデジタル放送対応用のSROファイルで構成されている。
【0038】
図4は、AVデータ管理情報記録領域130に記録される管理情報の一部(HDVR_MGI)がどのように構成されるかの一例を説明する図である。管理情報であるVMGファイルは、図4に示されるように、従来のDVD−VR規格の管理情報にESTR_FIT(Extended Stream File Information table)が追加されている。
【0039】
図5は、DISC_RSM_MRKIの具体例を説明する図である。ディスク全体のレジュームマーク情報(DISC_RSM_MRKI)は、中断された再生を再開するための情報として、プログラムチェーン番号PGCN、プログラム番号PGN、セル番号CN、再生開始PTMなどを含むマークポインタMRK_PT(目的のESOB上のPTM/PATS/S_ESOB_ENT番号などを含む)、再生するビデオストリームのESI番号V_ESN、再生するオーディオストリームのESI番号A_ESN 、Dual-Monoの場合の主副情報(音声の主/副切替フラグ)、そのマーカーを作成した日時情報MRK_TMなどを設定している。
【0040】
図6は、EX_DISC_REP_PICIの具体例を説明する図である。ディスクの代表画像情報(EX_DISC_REP_PICI)は、その代表画像のプログラムチェーン番号PGCN、プログラム番号PGN、セル番号CNの他に、その代表画像の開始PTMなどを含むピクチャポインタPIC_PT(目的のESOB上のPTM/PATS/S_ESOB_ENT番号などを含む)、再生するビデオストリームのESI番号V_ESN、その代表画像の再生時間および/または再生終了時間、その代表画像を作成した日時情報PIC_CL_TMなどを設定している。
【0041】
図7は、EX_PL_SRPTの具体例を説明する図である。EX_PL_SRPTには、各プレイリストへのサーチポインタがあるが、ここに、PL_RSM_MRKIが存在し、各プレイリスト毎のレジュームマーカー(再生中断時にどこまで再生したかを示すマーカー)を設けている。このPL_RSM_MRKIには、再生を再開するための情報として、レジュームマーカーに対応するセル番号CN、レジュームマーカーに対応するピクチャポインタPIC_PT(再生開始PTM等に対応)、そのマーカーを作成した日時情報MRK_TM、再生するビデオストリーム(デフォルトのストリーム)のESI番号V_ESN、再生するオーディオストリームのESI番号A_ESN、レジュームマーカーに対応するオーディオストリームに含まれる音声情報の主/副切り替えフラグ(Dual-Monoの場合の主副情報)を設定している。
【0042】
さらに、EX_PL_SRPTにはPL_REP_PICTIが存在し、各プレーリスト毎の代表画像情報(タイトルメニューなどでサムネールとして表示する画像のマーカー)を設けている。このPL_REP_PICTIには、目的のセル番号CN、目的のEVOB上のピクチャポインタPIC_PT(該当する代表画像の開始PTM、PATS、S_EVOB_ENT番号等)、再生するビデオストリーム(デフォルトのストリーム)のESI番号V_ESN、該当する代表画像の再生時間またはその再生終了時間、および該当する代表画像そのマーカーを作成した日時情報PIC_CL_TMなどを設定している。
【0043】
さらに、自録再用のVideo Recoding(VR)用のTMAP(Time Map)であるVTMAPTの更新日時情報とデジタル放送記録用のStream Recoding(SR)用のTMAPであるSTMAPTの更新日時情報を記載し、この値と各TMAPTファイルに記載されている更新日時情報を比較し、同じ値であれば整合性が取れているとして処理を行うようにする。また、ストリームデータの管理は図3に示す様にVMG内に保存され、VRデータと同列に管理される。
【0044】
ストリームの管理情報はESTR_FIT(Extended Stream File Information table)に保存されている。ESTR_FITはESTR_FITI(ESTR_FIT Information)と1以上のESTR_FI_SRPとそのSRPで示されるESTR_FI(Extended Stream File Information)で構成される。ESTR_FITIは、ESTR_FIの総数とこのテーブルの終了アドレスで構成され、ESTR_FIは、ESTR_FI_GI(ESTR_FI General Information)、1以上のESOBI_SRP(Extended Stream Object information Search Pointer)とSRPと同数でその値で示されるESOBI(ESOB Information)で構成される。
【0045】
ESTR_FI_GIには、該ESTR_FIの管理するオブジェクトのファイル名/ファイル番号と該ESTR_FI内のESOBI_SRPの数、記録されるコンテンツのソースであるデジタル放送の種類(AP_FORMAT_1)、録画した国コード:Country code(国コード:JPN=日本)、PKT_TY(1=MPEG-TS)、PKT_GP_SZ(16Logical Blockで固定)、PKT_Ns(0xAA:170TSパケットで固定)で構成されている。
【0046】
図12は、 図11のESOBIに含まれるESOBI_GIがどのように構成されるかの一例を説明する図である。ESOBI_GIは、例えば図示の順番で図示する各種情報をを含んでいる。すなわち、ESOBIは、ESOBI_GIと、ESOB_V_ESI(Extended Video Elementary Information)および/またはESOB_A_ESI(Extended Audio Elementary Information)に対応するESOB_ESIと、ESOB_DCNI(Discontinuity Information)と、ESOB_SMLI(ESOB Seamless Information)と、ESOB_AGAPI(ESOB Audio GAP Information)と、ESOB_TMAP(ESOB Time Map)と、ESOB_ES_GPI(ESOB_ES Group Information)などを含んで構成されている。
【0047】
図13は、ESOBI_GIに含まれる種々な情報を説明する図である。図13は、図12の各種情報の中身を示している。すなわち、ESOBI_GIは、AP_FORMAT(1=ISDB-S:BS/CS放送、2=ISDB-T:地上デジタル放送)、録画開始時間/録画時間(ESOB_REC_TM他)、先頭のPresentation Time(ESOB_S_PTM)、終了Presentation Time(ESOB_E_PTM)を含み、さらに、PSI(Program Specific Information)/SI(Service Information)の値を元に、PROGRAM_NUMBER(SERVICE_ID)、PMT_PID、NETWORK_ID、TS_ID、FORMAT_IDを含み、録画するデータを元に、SOB_ES_Ns(録画のために選択したESの数)、SOB_V_ES_Ns(録画したビデオESの内、TMAPを作ったESの数)、SOB_A_ES_Ns(録画したオーディオESの内、TMAPを作ったESの数)、CP_CTL_IFO(コピー制御情報CCIに対応)、録画レート等を含んで構成されている。
【0048】
ESOBI_GIに含まれるESOB_REC_MODEは、ストリームのTYPEを示しており、01でType AのESOB、02でType BのESOBを示している。TYPE Aはストリームの構造が解析可能なストリームであり、管理情報がPTMベースで管理されている。一方、TYPE Bはストリームの構造が解析できず、そのため管理情報がPATSベースで管理されている。そのため、TMAPもType AはPTMベース、Type BはPATSベースとなっている。
【0049】
ここで、ESOB_ES_NsとESOB_V_ES_Nsと、ESOB_A_Es_NsとES_TMAP_Nsの関係は、以下の式で表すことができる:
ESOB_ES_Ns≧ESOB_V_ES_Ns+ESOB_A_Es_Ns
ESOB_V_ES_Ns+ESOB_A_Es_Ns≧ES_TMAP_Ns
リージョン番号は、00で日本(ARIB)、01で米国(ATSC)、02で欧州(DVB)と示される。これにより、録画されたコンテンツは、対応された地域のデータが再生可能となる。
【0050】
図14は、ESOB_ESIがどのように構成されるかの一例を説明する図である。図14に示すように、ESOB_ESIは3種類に分けられる(図15のESOB_V_ESIと、図16のESOB_A_ESIと、図17のESOB_OTHER_ESI)。
【0051】
図15は、ESOB_V_ESIがどのように構成されるかの一例と、このESOB_V_ESIに含まれるビデオ属性V_ATTRがどのように構成されるかの一例を説明する図である。ESOB_ES_PID(ESのPID)と、STREAM_TYPE(PMT内で示されるSTREAM type)と、STREAM_CONTENT(コンポーネント記述子で示されるSTREAM_CONTENTの値)と、COMPONENT_TYPE(コンポーネント記述子で示されるCOMPONENT_TYPEの値)と、COMPONENT_TAG(コンポーネント記述子で示されるCOMPONENT_TAGの値)と、CP_CTL_INFORが3種類に共通で、V_ESI(図15)ではさらに、V_ATRが追加されている。
【0052】
V_ATRには、Application flag(0=Aspect比率を該V_ATRで指定、1=Aspect比率を該V_ATRで指定してもよい。実際のAspect比率は、ストリームに記録)、Aspect Ratio(0=4:3、1=16:9)、Horizontal resolution(00=1920、01=1440、02=1280、03=720、04=544、05=480)、Vertical resolution(00=1080、01=720、02=480)が設定されている。なお、ESOB_V_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(コピー制御情報)を適宜記載することも可能である。
【0053】
図16は、ESOB_A_ESIがどのように構成されるかの一例と、このESOB_A_ESIに含まれるオーディオ属性AUDIO_ATTRがどのように構成されるかの一例を説明する図である。
【0054】
A_ESI(図16)はさらに、SIMULCAST_GP_TAG(マルチ放送時、開始時のオーディオフレームのズレ値)と、AUDIO_ATR(AUDIOの属性値)とで構成されている。さらにAUDIO_ATRは、Simulcast_GP_tg(0=サイマルキャストでない。1=サイマルキャスト)、Multi_Ing(1=DUAL mono、0=それ以外)と、Main_Comp(1=主音声、0=それ以外)と、Quality_Indicator(音質表示を示す)と、Sampling_Rate(001=16KHz、010=22.05KHz、011=24KHz、101=32KHz、111=48KHz)で構成されている。この値は、音声コンポーネント記述子の値より設定される。なお、ESOB_A_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(言語コード、コピー制御情報など)を適宜記載することも可能である。
【0055】
図17は、ESOB_OTHER_ESIがどのように構成されるかの一例を説明する図である。ESOB_OTHER_ESIは、図15のESOB_V_ESIあるいは図16のESOB_A_ESIと同様に、ES_TY、ES_PID、STREAM_TYPE、COMPONENT_TAGを含んで構成されている。なお、ESOB_OTHER_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(データ符号化識別子、この識別子の付加情報、コピー制御情報など)を適宜記載することも可能である。
【0056】
図18は、コピー制御情報(著作権保護情報)CP_CTL_INFOがどのように構成されるかの例を説明する図である。コピー制御情報(CP_CTL_INFO)などの著作権保護情報は、Packet Group HeaderのCCI(Copy Control Information)等にあり、各Packet Groupのコピー制御をPacket Group HeaderのCCIで行う。この値は、デジタルコピー制御記述子、コンテント利用記述子により設定される。その内容は、CGMS(0=禁止;1=無制限許可)と、APS(0=APS無し、1=APSタイプ1付加、2=APSタイプ2付加、3=APSタイプ3付加)と、EPN(0=コンテンツ保護(インターネット出力保護)、1=コンテンツ保護無し)と、ICT(0:解像度制限、1=制限無し)である。
【0057】
図19は、ESOB_DCNIの具体例を説明する図である。このESOB_DCNI(Discontinue Information)は、DCNI_GIとCNT_SEGI#1〜#nで構成され、DCNI_GIはCNT_SEGIの数情報(CNT_SEGI_Ns)で構成され、各CNT_SEGIはCNT_SEG_SZ(CNT_SEGのサイズ:Packet Group数)およびCNT_SEG_PKT_POS(Packet Group内でのCNT_SEGの先頭のPacket数)で構成されている。これらの情報から、記録/再生装置のシステムタイムカウンタSTCのカウント動作が1周した(Wrap-aroundした)か否かを示すことができる。これにより、例えば時間情報PTMにESOB先頭からのCNT_SEG数を入れ、事前にSTCのWrap-aroundが発生している事を確認し、TMAPの計算などに使用することができる(このPTMの構成については図37参照)。
【0058】
図22は、ESOB_SMLIがどのように構成されるかの一例を説明する図である。ESOB_SMLI(Seamless Information)の構造は図22に示すように4種類が考えられる。4種類のいずれの場合もシームレス一般情報SML_GIを含んでいる。例1のSML_GI221は、このESOBが前のESOB(ESOB_IDの1つ小さいESOB)から連続して記録された事を示す連続記録フラグだけで構成される場合で、この場合、連続で再生する事は出来るがシームレス再生の保証はない。例2のSML_GI222では、さらに、STCが連続するかどうかのフラグを設けている。このSTC連続フラグには、2つのESOBのSTCが連続しない場合に、不連続となっている期間に対応したオフセット値を設定する。例3のSML_GI223では、さらに、PATSが連続するかどうかのフラグを設けている。このPATS連続フラグには、2つのESOBのPATSが連続しない場合に、不連続となっている期間に対応したオフセット値を設定する。最後に、例4のSML_GI224では、PATSのみが連続するかどうかのフラグを設け、連続しない場合そのオフセット値を設定する。
【0059】
図23は、ESOB_TMAP(タイプA)がどのように構成されるかの一例を説明する図である。ESOB_TMAPは、ESOB_TMAP_GIと1以上のES_TMAPIで構成され、ESOB_TMAP_GIはADR_OFS(ファイル先頭からのESOB先頭までのPacket Group番号(又はLBアドレス))と、
PTMベースの場合、ESOBU_PB_TM_RNG(ESOBUの再生時間の範囲:1=0.4s〜1.2s、2=1s〜2s、3=2s〜3s)と、ESOB_S_PKT_POS(ESOBの先頭のPacket group内での始まり:1≦ESOB_S_PKT_POS≦170)と、ESOB_E_PKT_POS(ESOBの先頭のPacket group内での終わり:1≦ESOB_E_PKT_POS≦170)を含んで構成される。
【0060】
ES_TMAPI_GI#は、ES_PID(該当TMAPの対象ESのPID:PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)、ES_S_ADR_OFS(ESOBファイル先頭から該当ESの先頭までの論理アドレス)、ES_S_PTM(スタートPTM)、ES_E_PTM(エンドPTM)、ES_ESOBU_ENT_Ns(ESOBU_ENTの数)、LAST_ESOBU_E_PKT_POS(最後のESOBUのPacket Group内での位置)、STMAP_N(該当ESに属するSTMAPT内のTMAPの番号:ただし、STMAPTがSTR_FI毎にそれぞれ別ファイルに記録されている場合、各STMAPTに順番に記録されている場合はこの番号は無くても良い)を含んで構成される。
【0061】
図24は、ESOB_TMAP(タイプB)がどのように構成されるかの一例を説明する図である。図24は、PATSベースの実際のTMAPの構造例である。ESOB_SZは、ESOBの先頭が属するPacket GroupからESOBの最後が属するPacket GroupまでのPacket Group数である。ESOB_TMAP_GI(図24)には、ADR_OFSとESOB_SZおよびESOB_E_PKT_POSがESOB全体の値に関した値として記されている。また、各ES用のTMAPIとして、ES_TMAPI(図23)には、ES_S_ADR_OFS(ESOBの先頭から該ESの先頭のESOBUまでのアドレス(Packet Group数))と、ES_E_ADR_OFS(該ESの最後のESOBUからESOBの最後までのアドレス(Packet Group数))と、ES_LAST_SOBU_E_PKT_POS(最後のESOBUのPacket Group内での最後のPacketまでのPacket数)と、ES_ESOBU_ENT_Ns(ESOBU_ENTの総数)と、該ESのデフォルトのPID(PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)等が、ES_TMAP全体の値として記されいる。
【0062】
図25は、DVD_HDVRディレクトリに含まれるHR_VTMAP.IFOおよびHR_STMAPx.IFOがどのように構成されるかの一例を説明する図である。STMAPTは、VTMAPTとは別領域(別ファイル)に記録される。このSTMAPTは、図25に示すように、STMAPTIと1以上のSTMAPI_SRPと、それと同数のSTMAPIを含んで構成される。
【0063】
図28は、STMAPT(タイプA)に含まれる各種情報がどのように構成されるかの一例を説明する図である。また、図29は、STMAPT(タイプB)に含まれる各種情報がどのように構成されるかの一例を説明する図である。
【0064】
STMAPTI(図28または図29)は、STMAPTの識別情報STM_IDおよびそのエンドアドレス情報STMAPT_EA、該TMAPのバージョン情報VERN、STMAPサーチポインタの数STMAP_SRP_Ns(TAMP_SRPIの数=TMAPIの数と同じ)、STMAPの更新日時情報STMAP_LAST_MOD_TM(VMGIの更新日時情報の値と同じ)などを含んで構成されている。ここで、STMAP_SRPは各STMAPTの要素であるSTMAPIへのアドレス情報を含んで構成され、各STMAPIはETMAPI_GIとESOBU_ENTを必要数含んで構成されている。STMAPI_GIは、ESOBU_ENT_Ns(エントリ数)を含んで構成される。ただし、ESOBU_ENT間にごみデータが有っても良い。
【0065】
PATSベースの場合、STMAPTI(図29)は、図示しないが、ESOBUの到着時間間隔ESOBU_PATS_TM_RNG(ESOBU_PATS_TM_RNGが1=0.5s、 ESOBU_PATS_TM_RNGが2=1s、又は27MHzの場合のカウント値がESOBU_PATS_TM_RNG)、ESOB_S_PAT/ESOB_E_PATS(先頭/最後のPacketの到着時間)、先頭のESOBUの到着時間間隔(TM_RNG)との差分時間TM_OFS(無い例も考えられる)などを含んで構成することができる。この場合では、編集はESOBU単位で行い、PATS開始/終了時間(セル情報CI)で編集時の調整を行うことができる。なお、TM_OFSについては図9に類似の開示がある。
【0066】
上述したESOBU_PATS_TM_RNGは、概念的には図23のESOBU再生時間範囲ESOBU_PB_TM_RNGに類似している。ここで、ESOBU/EVOBU_PB_TM_RNGを設定する事により、録画時間が増えても、TMAPI情報が極端に大きくなることが防ぐことが可能となる。ただし、各エントリの時間間隔が広がる為、2倍速再生等がスムーズにできない可能性が増える。
【0067】
ESOBU/EVOBUの間隔は、TM_RNGの値がある場合は、例えばこの値が示す時間間隔を最大とし、この前にGOPの切れ目がある場合は、そこでSOBUを切ることができる。また、シーケンスヘッダ(SH)とI-PICがある場合には、そのSHの先頭で切ることができる。
【0068】
図8は、この発明の一実施の形態に係るデータ構造において、管理情報の1つ(HDVR_MG)の他部(EX_M_AVFIT)がどのように構成されるかの一例を説明する図である。EX_M_AVFITには、EX_M_AVFIが存在し、その中に各EVOB毎の管理情報であるEVOBIがEVOBの数分存在している。EVOBI内には、図8に示すようにEVOBのTMAPを管理するためのEVOB_TMAPIが存在する。
【0069】
図9は、EVOB_TMAP_GIの具体例を説明する図である。EVOB_TMAPIには、図9に示すように、EVOB_TMAP_GIが入っている。EVOB_TMAP_GIは別ファイルのVTMAPTを管理するための一般情報が記録されている。EVOB_TMAP_GIは、該EVOBにあるエントリ(EVOBU_ENT)の総数(EVOBU_ENT_Ns)、リザーブエリア(必要に応じて該EVOBの先頭の時間のオフセット値TM_OFSなどの格納に利用できる)、該EVOBの先頭アドレス(ADR_OFS)、該EVOBのサイズ(EVOB_SZ)、該EVOBのエントリの時間間隔を決めるEVOBU_PB_TM_RNG、VTMAPファイル内でのTMAPの番号(EX_VTMAP_N:EVOBの先頭から一対一で決まる場合、無い事も考えられる)などを含んで構成されている。
【0070】
前記EVOB_TMAP_GIは、TMAPが別ファイルに分かれている(図3参照)ため、そのファイルを読み出さなくても、EVOBの情報が判るようになっている。特に、EVOB_TMAP_GI内にあるEVOBの先頭アドレスADR_OFS、EVOBのサイズEVOB_SZおよびEVOBのエントリ総数EVOBU_ENT_Nsから、ディスク100の何処からどのくらいのデータ量を読み出すか、ワークRAMをどのくらい確保すべきかなどを、TMAPのファイル本体を読み込む前に知る事により、読み出し準備が楽になる。
【0071】
図26は、EX_VTMAPTI、各EX_VTMAP_SRP#、および各EX_VTMAPIがどのように構成されるかの一例を説明する図である。VTMAPT(図25)はVTMAPTIとVTMAP_SRPTとVTMAP#1〜#nで構成されており、このVTMAPTI(図26)は、VMG_ID(VMGIの先頭に在るVMG_IDと同じ値)、VTMAPT_EA(VTMAPのエンドアドレス)、VERN(TMAPのバージョン情報)、IFO_LAST_MOD_TM (TMAPTの更新日時情報、HR_MANGR.IFOと同じ値)、VTMAP_SRPNs(サーチ情報の総数)で構成され、VTMAP_SRPTは1以上のVTMAP_SRP(各VTMAPのサーチ情報)で構成され、さらに、VTMAP_SRPはVTMAP_SA(VTMAPのスタートアドレス)と、EVOBU_ENT_Ns(EVOBU_ENTの総数)で構成され、VTMAPは、1以上のEVOBU_ENT(図27のEVOBU_ENT相当)で構成されている。
【0072】
図27は、各EVOBU_ENTの中身がどのように構成されるかの一例を説明する図である。各EVOBU_ENTは、該当エントリ内で最初の基準画像(I-pic)のサイズ1stREF_SZと、該当EVOBUの再生時間EVOBU_PB_TM(フィールド数で表示できる)と、該当EVOBUのサイズEVOBU_SZとを含んで構成されている。
【0073】
図30は、図28のETMAPI_GIおよびETMAPIがどのような情報を格納するのかの一例を説明する図である。各ETMAPI_GIはESOBUのエントリ数ESOBU_ENT_Nsを格納でき、各ETMAPIは1以上のESOBUのエントリESOBU_ENT#1〜#qを格納できるように構成されている。
【0074】
図31は、ESOBU_ENTの中身がどのように構成されるかの一例(タイプAの例)を示す。各STMAPI(図28)内のESOBU_ENTには、ESOBU_S_PKT_POS、ESOBU_SZなどがESOBUに属する値として記載されている。図31に示される様に、PTMベースの場合、ESOUB_ENTは、1st_Ref_PIC_SZ(論理ブロック(LB)単位で表され、エントリ内で最初のリファレンスピクチャ(Iピクチャ等)のESOBU先頭からの最終アドレス情報)、ESOBU_PB_TM(フィールド数で表されるESOBUの再生時間)、ESOBU_SZ(ESOBUに属するパケットグループの数で表されるESOBUサイズ)、ESOBU_S_PKT_POS(パケットグループ先頭からのパケット数で表され、ESOBUの先頭が入っているパケット位置)などを含んで構成される。
【0075】
なお、図31の各ESOBU_ENTは、上記の他にリザーブエリアを持っていてもよく、このリザーブエリアに例えばSH情報(ESOBU内にシーケンスヘッダSHが存在するか否かを示すフラグなど)を適宜記載することが可能である。このSH情報は、SHが番組内(ESOB内)で一定の場合、もしくはESOBUが必ずSHで始まるようにESOBUを区切る場合に採用できる。これにより、ESOBU内のSHを利用した再生が可能となる。
【0076】
タイムサーチの場合、PB_TMの累積で目的の時間のESOBUを求め、そのESOBUの先頭からのフィールド数で再生開始PTMを換算する。ここで、アドレスは目的のESOBUをK、目的のアドレスをAとすると、
A=ESOB__ADR_OFS
+目的のESのES_ADR_OFS+Σk-1N=1ESOBU_SZ(N)×16+1
となり、さらに、先頭のパケットはESOBU_S_PKT_POSの値のパケットとなり、このアドレスにアクセスすることになる。
【0077】
PATSベースのESOBU_ENT(図32のAT_ESOBU_ENT相当)は、Packet単位の場合とPacket Group単位の2種類が考えられる。Packet単位の場合、より正確なアドレスが得られるが、ESOBU_ENTのデータが増える。一方、Packet Group単位の場合はESOBU_ENTのデータは少ないが、Packet Group単位でしかアドレスを取れない。
【0078】
また、Packet単位の場合は、PATSベースのESOBU_ENTはAT_ESOBU_SZとAT_ESOBU_S_PKT_POSで構成でき、この場合は、AT_ESOBU_S_PKT_POSはPacket_Group内でのESOBUの先頭の位置をPacket数で示している。一方、Packet Group単位の場合は、PATSベースのESOBU_ENTはAT_ESOBU_SZで構成でき、この場合は、ESOB_S_PKT_POS、ESOB_E_PKT_POSは0に固定される。
【0079】
さらに、図23に例示されるようにESOB_SZがある場合、ES_E_ADR_OFSは以下の計算で求められるため、ES_S_ADR_OFSまたはES_E_ADR_OFSのどちらかが有れば良い。
【0080】
ES_E_ADR_OFS
=ESOB_SZ−(ES_S_ADR_OFS+Σk-1N=1ESOBU_SZ(N)+1)
ここで、ESOB_SZ>ES_S_ADR_OFS、ESOB_SZ>ESOBU_SZ等の式も成り立つ。
【0081】
図32はAT_ESOBU_ENT#の中身がどのように構成されるかの一例(タイプBの例)を示す。図32は、PATSベースの実際のESOBUの構造例である。各STMAPI(図29)内のAT_ESOBU_ENTには、AT_ESOBU_S_PKT_POS、AT_ESOBU_SZなどがAT_ESOBUに属する値として記載されている。図24のESOB_SZはESOBの先頭が属するPacket GroupからESOBの最後が属するPacket GroupまでのPacket Group数であったが、図32のAT_ESOBU_SZはESOBUの先頭のPacket GroupからESOBU最後のPacket Groupまでの数となる。また、図32のAT_ESOBU_S_PKT_POSは、ESOBUの切れ目とPacket Groupの切れ目の差をPacket数で表している。
【0082】
ここで、時間情報はPATSベースのため、ESOBの開始時間としてESOB_S_PATS、終了時間をESOB_E_PATSとし、PATSで表している。ただし、ESOB_E_PATSに関しては、最後のPacket Groupの最後のPacketのPATS(到着開始時間)であり、最終受信終了時間では無い。
【0083】
編集はESOBU毎に行い、再生開始時間(CIのCELL_S_PATS)を指定する。ESOBU毎の編集のため、ESOB_S_PATSは必ずESOBUの先頭と一致する。ただし、PATSはPATS_SSにより精度が示される。
【0084】
図32では図示しないが、ESOBの先頭のPATSと、所定の時間間隔情報TM_RNGで指定されたTMレンジ(時間間隔)との実際の差を27MHzのカウント値で表した時間オフセットTM_OFSをAT_ESOBU_ENTが持つような実施の形態も、可能である。ただし、このTM_OFS値が無い実施の形態も考えられる。
【0085】
なお、Packet Group単位で処理を行う場合では、ESOBUとPacket Groupの切れ目が一致するため、AT_ESOBU_S_PKT_POSは省略可能となる。さらに、ESOBにおいては、マルチビュー放送や降雨対応放送、さらに、複数番組同時録画対応として、ESOB_ES_GPI(Group Information)がある。
【0086】
図20は、ESOB_GPIがどのように構成されるかの一例を説明する図である。そのGPIは、ESOB_GPI_GI、1以上のGPI_SRP、および1以上のGPIなどを含んで構成される。
【0087】
図21は、ESOB_GPI_GI、GPI_SRP#、およびGPI#がどのように構成されるかの一例を説明する図である。ESOB_GPI_GIには、GPI_TY(0=レコーダ内で作成、1=放送時に定義)と、GPI_SRP_Ns(ES_GPI_SRPの数)が入り、GPI_SRPは、GPI_SA(GPIのスタートアドレス)で構成され、各GPIは、GPI_GI、各ES_PIDで構成され、GPI_GIはPIORITY(優先度:指定しない場合は全て0、1が最優先)と、ES_PID_Ns(該グループのESの数)で構成されている。ただし、ビデオPIDがある場合、同じGPには属さない。
【0088】
図33は、HDVR_VMGに含まれるPGC情報(EX_ORG_PGC情報およびEXプレイリスト情報/EX_UD_PGC情報)が、どのように構成されるかの一例を説明する図である。再生情報はEX_PGC情報で、通常のVRフォーマットと同じで、ORG_EX_PGC情報は録画時に機器が自動で作成し、録画順に設定し、UD_EX_PGC情報は、ユーザが自由に追加する再生順番に従って作成され、プレイリストと呼ばれている。この二つのフォーマットはEX_PGCレベルで共通で、そのEX_PGCフォーマットは図34〜図36に示される。
【0089】
図34は、EX_PGIの具体例を説明する図である。ここで、EX_PG情報には、このEX_PGが更新された日時情報が保存される。これにより、該EX_PGが何時編集されたかがわかる。また、テキスト情報として番組名用には、PRM_TXTが使用され、その他のテキスト情報を保存するためにIT_TXT領域にその他の情報(監督名、主演名、…)を保存し、該EX_PGIにはその保存したIT_TXTのSRP番号を設定して、リンクさせ、さらに、IT_TXTデータの方にもPG番号を設定している。ここで、EX_PG番号はこのディスクに記録し初めてからの絶対番号で、他のEX_PGを削除しても変わらないインデックス番号としている。
【0090】
さらに、EX_PGには、RSM_MRKIが存在し、各プログラム毎のレジュームマーカー(再生中断時にどこまで再生したかを示すマーカー)を設けており、再生を再開するための情報として、EX_CELL番号、再生開始PTMとそのマーカーを作成した日時情報、再生するビデオストリームのESI番号、再生するオーディオストリームのESI番号、Dual-Monoの場合の主副情報を設定している。これをタイトルレジュームとして使用する。
【0091】
また、さらに、PG_REP_PICTIが存在し、各PG毎の代表画像情報(タイトルメニューなどでサムネールとして表示する画像のマーカー)を設けており、セル番号、開始PTMとそのマーカーを作成した日時情報、再生するビデオストリームのESI番号を設定している。
【0092】
また、メーカー特有の機能を実現させるために設けられた製造業者情報(図4等のEX_MNFIT内に格納されるMNFI)を利用するため、図34のEX_PGIにMNFIのサーチポインタ番号(図示せず)を設定し、さらにMNFI情報でもEX_PG番号を設定することもできる。これにより、図34のEX_PGCI/EX_PGIと図示しないMNFI情報内のデータとのリンクを図ることができる。
【0093】
さらに、MNFI、IT_TXTの両方にPGの更新日時情報(図34のPGI内で末尾のプログラム更新日情報)を設定しておけば、メニュー表示時にその時刻(設定された更新日時と現在時刻)の一致をチェックする事により、他社メーカーの装置による編集かどうかを検証できる。
【0094】
図35は、EX_CIの具体例を説明する図である。EX_CELL情報(EX_CI)では、セルタイプにESOBの種別(STRA_CELL、STRB_CELL)が加わっており、ESOB番号、開始時間、終了時間、再生するパケットグループ番号(GP番号)などを指定できる。ここで、開始時間、終了時間は、再生時間(PTMベースの場合)またはPATS時間(PATSベースの場合)のどちらかで表すことができる。
【0095】
ここで、時間指定を再生時間=再生時の実時間にすると、送られてくるビットストリームをそのまま記録するストリームレコーディングでありながら、既存のDVDビデオレコーダ(DVD−VR)と同じアクセス方法が可能となる。すると、ユーザが再生時間で記録場所を指定できるため、ユーザ希望が完全に反映されることになる。ただし、この方法は、ストリームの内容が十分に解析可能な場合に採用できる方法であり、記録されたストリームの内容が十分にわからない場合には、ストリームパケット(デジタル放送録画ではMPEG−TSパケット)の転送時間単位で指定せざるを得ない。
【0096】
記録されたストリームの内容が十分にわからない状態で記録場所を再生時間で指定した場合、必ずしもIピクチャの先頭から再生を開始できるとは限らない。そこで、再生開始のフレームがIピクチャのフレームで無い場合は、その直前のIピクチャよりデコードを開始し、目的のフレームまでデコードをした所で再生映像の表示を開始する。こうすることで、ユーザには、あたかもユーザが時間指定したフレームから再生開始されたように見せることができる。
【0097】
なお、再生処理時などにおいて参照するIDは、再生するストリームを代表するストリームのPIDを設定する方法と、マルチビューTVなどの場合などで、コンポーネントグループのIDを設定する方法が考えられる(PIDの設定には、13ビットの実データで記載する方法、PMT内の順番を記載する方法、またはコンポーネントタグの値を記載する方法などがある)。また、参照するGRP番号(GRP_SRP番号)を入れ、切り換える方法も考えられる。なお、EX_PG、EX_CELLに特有のID番号(図35のEX_PGI#p、EX_CI#qなど)を付けることで、途中のプログラムやセルを削除しても変わらない番号でEX_PG、EX_CELLを指定できるようにしている。また、EX_CELL情報(EX_CI)には、再生するストリームのファイル番号(ESTR_FILE番号)、対応ESOBのESOBI_SRP番号を設定している。さらに、EX_CELL情報にはチャプターに相当するセルエントリポイントの情報C_EPI(Entry Point Information)がある。
【0098】
図36は、C_EPIの具体例を説明する図である。 C_EPIには、各セルタイプ毎に2種類あり、合計8種類となる。M_CELL_EPI_TY_Aは、EPI_TY(EPIのタイプ情報)とEPのついているPTMで構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。S_CELL_EPI_TY_Aは、EPI_TY(EPIのタイプ情報)、EPのついているS_EVOB_ENT番号で構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)で構成されている。
【0099】
STR_A_CELL_EPI_TY_A(ESOBのTYPE A)は、EPI_TY(EPIのタイプ情報)、EPのついているPTM、そのEPのついているESのESI番号、オーディオESのESI番号、Dual-Monoの場合のその主/副情報で構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。
【0100】
STR_B_CELL_EPI_TY_A(ESOBのTYPE B)は、EPI_TY(EPIのタイプ情報)、EPのついているPATS、そのEPのついているESのPIDで構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。
【0101】
図37は、ESOB(またはEVOB)のPTM(Presentation Time)がどのように構成されるかの一例を説明する図である。この時間情報PTMは、図19に示した連続セグメントCNT_SEGの数(ESOB先頭からのCNT_SEGの数)を示す情報CNT_SEGNと、90kHzベースで粗くカウントするPMT_baseと、27MHzベースで細かくカウントするPMT_extensionを含んで構成されている。PTMによる実際の時間は、PMT_baseにPMT_extensionを足した値で表現される。 ESOBには、このPTM(PMT_base+PMT_extension)をベースに再生管理されるタイプAと、PATS(Packet Arrival Time)をベースに再生管理されるタイプBがある。
【0102】
ESOB先頭からのCNT_SEGの数を示す情報CNT_SEGNは、例えば次のように設定できる。すなわち、タイプAのESOBの場合、CNT_SEGNの値が有効となるが、ESOB以外ではCNT_SEGNに0を設定する。有効となる場合のCNT_SEGNの値は、例えばCNT_SEGN=4で該当ESOB内のCNT_SEGが0個であることを表し、CNT_SEGN=5で該当ESOB内のCNT_SEGが1個であることを表し、CNT_SEGN=6で該当ESOB内のCNT_SEGが2個であることを表し、CNT_SEGN=7で該当ESOB内のCNT_SEGが3個であることを表すことができる。
【0103】
上記はESOBの場合の例であるが、EVOBの場合についてもPTMを同様のデータ構造で構成できる。
【0104】
図43は、この発明の一実施の形態に係るデータ構造を利用して、情報記録媒体(光ディスク、ハードディスク等)にAV情報(デジタルTV放送プログラム等)を記録し再生する装置の一例を説明するブロック図である。この録再装置は、図43に示すように、MPU部、表示部、デコーダ部、エンコーダ部、TVチューナ部、STC部(System Time Counter)、D−PRO部、一時記憶部、ディスクドライブ部、キー入力部、Vミキシング部、フレームメモリ部、TV用D/A部と、地上波デジタルチューナ部と、1394I/F部、イーサネット(登録商標)I/F部、リモコン受信部と、さらに、STB部(BSデジタルチューナ等)、緊急放送検出部、HDD部により構成されている。この構成では、録再DVDレコーダにストリーマの機能を追加する形で構成している。
【0105】
エンコーダ部内には、A/D部、ビデオエンコード部、オーディオエンコード部、SPエンコード部、フォーマット部、バッファメモリ部より構成され、デコード部は、分離部、ビデオデコード部、SPデコード部、オーディオデコード部、TSパケット転送部、V−PRO部、オーディオ用D/A部より構成されている。さらに、STB部には、デジタル放送を受信するためのアンテナが付いている。なお、STC部は27MHzベースでカウントするように構成されている。
【0106】
記録時の信号の流れは、STB部(または地上波デジタルチューナ)で受け取ったTSパケットデータは、フォーマッタ部で、パケットグループ化されワークRAMへ保存し、一定量たまった時点でディスクに記録される。また、このフォーマッタ部90には、PATS用の内部カウンタ90aが接続されている。TSパケットの到着時間はPATS用のカウンタ90aでカウントし、そのカウント値を各TSパケットの先頭に付けて、バッファリングされる。このカウンタ90aはPCR(またはSCR)によりカウント間隔の微調整は行うことができるが、STC102のようにPCR(またはSCR)の値をロードする事は無い。この時の動作は、TSパケットを受信すると170パケットづつグルーピング化し、パケットグループヘッダを作成する。
【0107】
その場合、Packet Groupの先頭のPacketのPATSの上位2バイトのみヘッダに入れ、それ以外のPATSは下位4バイトのみがTSパケットとともに(TSパケットの前に)保存される。また、地上波チューナやライン入力から入力されたアナログ信号は、A/D部でデジタル変換される。そのデジタル信号は、各エンコーダ部へ入力される。ビデオ信号はビデオエンコード部へ、オーディオ信号はオーディオエンコード部へ、文字放送などの文字データはSPエンコード部へ入力され、ビデオ信号はMPEG圧縮され、オーディオ信号はAC3圧縮またはMPEGオーディオ圧縮がなされ、文字データはランレングス圧縮される。
【0108】
各エンコーダ部(VR用)から、圧縮データがパック化された場合に2048バイトになるようにパケット化されて、フォーマッタ部へ入力される。フォーマッタ部では、各パケットがパック化され、さらに、プログラムストリームとして、多重化され、D−PRO部へ送られる。
【0109】
D−PRO部では、16Logical Bock毎にECCブロックを形成し、エラー訂正データを付け、ドライブ部によりディスクに記録される。ここで、ドライブ部がシーク中やトラックジャンプなどの場合のため、ビジィー状態の場合には、HDDバッファ部へ入れられ、DVD-RAMドライブ部の準備ができるまで待つこととなる。さらに、フォーマッタ部では、録画中、各切り分け情報を作成し、定期的にMPU部へ送る(GOP先頭割り込みなど)。切り分け情報としては、EVOBU(ESOBU)のパック数、EVOBU(ESOBU)先頭からのIピクチャのエンドアドレス、EVOBU(ESOBU)の再生時間などである。
【0110】
また、再生時の信号の流れは、ディスクからドライブ部よりデータを読み出し、D−PRO部でエラー訂正を行い、デコード部へ入力される。MPU部は入力されるデータがVRデータか、SRデータかの種別を判定し(Cell TYPEより判定する)、デコーダ部に再生前にその種別を設定する。SRデータの場合、MPU部は再生するEX_CELLIより、再生するPIDを決め、PMTより、再生する各アイテム(ビデオ、オーディオ等)のPIDを決め、デコーダ部へ設定する。デコーダ部は、そのPIDを元に、分離部で各TSパケットを各デコード部へ送る。さらに、TSパケット転送部へおくり、到着時間にしたがって、STB部(1394I/F部)へTSパケットの形で送信する。各デコード部は、デコードを行い、D/A部でアナログ信号に変換し、TVで表示する。VRデータの場合、分離部は、固定のIDに従い、各デコード部へ送る。各デコード部は、デコードを行い、D/A部でアナログ信号に変換し、TVで表示する。
【0111】
なお、再生時は、ディスクから読み出したパックデータを分離部で解析し、TSパケットが入っているパックの場合には、TSパケット転送部へ送り、さらに、その後、各デコーダへ送って、再生を行う。STBへ転送する場合(あるいはデジタルTV等の外部機器へ送信する場合)は、TSパケット転送部は、そのデータを到着時と同じ時間間隔で、TSパケットのみを転送する。STB部は、デコードを行い、AV信号を発生させ、そのAV信号をストリーマ内ビデオエンコーダ部を通して、TVへ表示する。
【0112】
図43の装置で用いる媒体100(100a)の特徴を簡単に纏めると、次のようになる。すなわち、この媒体は、管理領域130とデータ領域131で構成され、データ領域にはデータが複数のオブジェクトデータ(ESOB)に分かれて記録され、それぞれのオブジェクトデータはデータユニット(ESOBU)の集まりで構成される。そして、1つのデータユニット(ESOBU)は、MPEG−TSに準じたデジタル放送信号をTSパケット毎に複数パケットでパケットグループ化したパケットグループにより構成される(図1、図33参照)。一方、前記管理領域130は再生手順を管理する情報としてEX_PGC情報(EX_PGCI)を持ち、このEX_PGC情報はEX_CELL情報(EX_CI)を含んで構成される。さらに、管理領域130内にオブジェクトデータ(ESOB)を管理する情報を持つ。
【0113】
図43の装置は、上記のようなデータ構造を持つ媒体100(100a)に対して、ビデオレコーディングの他にストリームレコーディングを行うことができる。その際、TSパケットのストリーム内からプログラムマップテーブルPMTやサービス情報SIを取り出すために、MPU部80はサービス情報取り出し部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。またこのサービス情報取り出し部で取り出した情報を元に、属性情報(PCRのパック番号あるいはPCRのLB数番号など)を作成する属性情報作成部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。
【0114】
図44は、図43の装置の全体の動作の一例を説明するフローチャート図(全体動作処理フロー)である。ここでのデータ処理は、図42に示すように録画処理、再生処理、データ転送処理(STBへのデジタル出力処理など)、番組設定処理、編集処理の5通りとなる。例えば図43の装置の電源がオンされると、MPU部80は、(工場出荷時またはユーザが設定した後の)初期設定を行い(ステップST10)、表示設定を行って(ステップST12)、ユーザ操作を待つ。ユーザがキー入力部103またはリモコン103aからキー入力を行うと(ステップST14)、MPU部80はそのキー入力の内容を解釈する(ステップST16)。この入力キー解釈の結果に応じて、以下の4つのデータ処理が、適宜実行される。
【0115】
すなわち、キー入力が例えばタイマ予約録画設定のキー操作であれば、番組設定処理に入る(ステップST20)。キー入力が録画開始のキー操作であれば、録画処理に入る(ステップST22)。キー入力が再生開始のキー操作であれば、再生処理に入る(ステップST24)。キー入力がSTBへデジタル出力させるキー操作であれば、デジタル出力処理に入る(ステップST26)。編集処理のキー操作であれば、編集処理に入る(ステップST28)。
【0116】
ステップST20〜ST28の処理は、そのタスク毎に適宜並列処理される。例えば、再生処理中(ST24)にSTBへデジタル出力する処理(ST26)が並列に実行される。あるいは、タイマ予約録画でない録画処理中(ST22)に新たな番組設定処理(ST20)を並列に処理するように構成することができる。あるいは、高速アクセス可能なディスク記録の特徴を生かし、録画処理(ST22)中に再生処理(ST24)とデジタル出力処理(ST26)を並列処理するように構成することもできる。HDDへの録画中にディスクの編集処理(ステップST28)を行うように構成することも可能である。
【0117】
図45は、編集処理(ST28)の一例を説明するフローチャート図(編集動作処理フロー)である。編集処理に入ると、編集内容に応じて、4つの処理(A〜Dのいずれか)に入ることができる(ステップST280)。エントリポイント編集処理(ステップST282A)、コピー/移動処理(ステップST282B)、削除処理(ステップST282C)、あるいはプレイリスト作成処理(ステップST282D)が済むと、この編集によるプログラム更新の日時が、各管理情報(EX_PGI、EX_IT_TXT、EX_MNFI)に設定される(ステップST284)。
【0118】
なお、プログラム情報EX_PGI、セル情報EX_CI、あるいはEVOB、ESOBのどれかが変更されたときに、このプログラム更新日時(図32)の設定を行うようにしてもよい。ここで、EVOBIおよび/またはESOBIが変更された場合は、EVOBIおよび/またはESOBIの編集時間(EDIT_TIME)をESOB_EDIT_TIME等(図示せず)に設定できる。もしくは、このプログラム更新日時(図32)の設定を行うようにしてもよい。
【0119】
ついでながら、ST284の処理において、ST282A〜ST282Dの何れかの操作を行った機器のメーカーIDを、図32の編集者ID(LAST_MNF_ID)13326に設定してもよい。この編集者IDは、PGI、CI、SOB(またはVOB)のどれかが変更されると、その都度、その時に用いた機器のID情報により、設定(または更新)できる。
【0120】
図46および図47は、図43の装置の録画動作の一例を説明するフローチャート図である。ストリーム録画時のデータ処理は、以下のようになる:
d1)まず、番組設定処理でEPG(Electronic Program Guide)を使用して録画する番組を決めておき、受信を開始し、その決めた番組の録画を行う;
d2)MPU部80は、キー入力部103より録画命令受けると、ドライブ部51を介してディスク100(またはHDD部100a)から管理データを読み込み、書き込む領域を決定する。このとき、ファイルシステムをチェックし、録画可能かどうかを判断し、録画可能でない場合はその旨をユーザに示して、処理を中止する。録画可能の場合は、録画前処理を行う(図46のステップST105)。これにより、MPU部80は、記録する位置を決定し、管理情報(HDVR_MG等)を作成して、各管理領域に必要な情報の書き込みを行なう。その際、録画対象がデジタル放送でない(例えばアナログビデオ入力またはアナログTV放送)ときは(ステップST106ノー)、録画フォーマットとしてはストリームレコーディング(SR)でなくビデオレコーディング(VR)が採用できる。この場合はVR録画処理へ移行する。
【0121】
d3)録画対象がデジタル放送の場合は(ステップST106イエス)、MPU部80は録画対象のストリームが解析可能か否かチェックする。MPU部80は、解析可能な場合は(ステップST107イエス)PTMベースのタイプAストリームとして管理情報が作成されるような設定を行ない(ステップST109A)、解析不能な場合は(ステップST107ノー)PATSベースのタイプBストリームとして管理情報が作成されるような設定を行なう(ステップST109B)。しかる後、ストリームデータ(ビデオデータ)の書き込みスタートアドレスをドライブ部51に設定し、データを記録する準備を行う(ステップST112);
d4)この準備段階で、STC部102に対してカウント時間のリセットを行う。ここで、STC部102はシステムのタイマーであり、このSTCの値を基準に録画および/または再生が行われる。
【0122】
d5)録画する番組のPATを読み込み、目的の番組のPMTを取り込むためのPIDを決定し、目的のPMTを読み込み、デコードすべき(録画すべき)各データ(ビデオ、オーディオ)のPIDを決定する。このとき、MPU部80のワークRAM部80AにPATおよびPMTを保存し、かつこれら(PAT、PMT)を管理情報(HDVR_MG)に書き込む。その際、ファイルシステム(図3参照)に、VMGファイルのデータを書き込み、VMGI(図4ではHDVR_MGI)に必要な情報を書き込む;
d6)各部へ録画設定を行う(ステップST114)。このとき、フォーマッタ部90へ、各データの切り分けの設定や、TSパケットの受け取り設定を行う。また、このとき、記録すべきデータのPIDを設定し、目的のビデオストリームのみ記録するようにする。また、バッファ91へTSパケットの保持を開始するように設定する(ステップST116)。すると、フォーマッタ部90は次のように動作を開始する。
【0123】
d7)PMTよりESOB_ESIを作成する(図47のステップST120);
d8)続いて録画対象のTSパケットのストリームをバッファ91に取り込む(ステップST130)。バッファ91内のデータが一定量たまった場合は(ステップST140イエス)、D−PRO部52を通してECC処理を行い、ECC処理されたデータをディスク100(および/または100a)に記録する(ステップST142);
d9)録画中、定期的に(フォーマッタ部90のバッファRAM91が一杯になる前に)、切り分け情報をMPU部80のワークRAM80Aに保存する(ステップST144イエス;ステップST146)。ここでの切り分け情報は、ESOBUの切り分け情報で、ESOBUの先頭のアドレス、ESOBUのパック長、I-Picの終了アドレス、ESOBUの到着時間(ATS)等である。
【0124】
d10)切り分け情報をワークRAM80Aに保存(ステップST146)したあと、あるいは切り分け情報を保存するタイミングでないときは(ステップST144ノー)、MPU部80はESOBを切るかどうかを判断し、切る場合(ステップST147イエス)はESOB切り処理(図48)を実行する。
【0125】
d11)録画終了かどうか(録画終了キーが入力されたかどうか、またはディスク(100/100a)の残り容量が無くなったかどうか)をチェックし、終了時には(ステップST148イエス)、フォーマッタ部90より残りの切り分け情報を取り込み、ワークRAM80Aへ追加し、それらのデータを管理データ(VMGIまたはHDVR_MGI)に記録し、録画時の平均の録画レートを記録し、さらに、ファイルシステムに残りの情報を記録する(ステップST150);
d12)終了で無い場合は(ステップST148ノー)、d8)に移行し、データの取り込み及び再生を続けて行うようにする。
【0126】
ここで、録画中のストリームデータの内容をTV等に表示するために、録画対象のストリームデータをD−PRO部52へ転送すると同時にデコーダ部59へも送り、同時録画モニタを行なうように構成してもよい。この場合、MPU部80はデコーダ部59へ再生時の設定を行い、その後はデコーダ部59が自動的に再生処理を行う。D−PRO部52は、録画対象のストリームデータを16パック毎にまとめてECCグループとし、ECCをつけてドライブ部51(および/またはHDD100a)へ送る。ただし、ドライブ部51がディスク100への記録準備が出来ていない場合には、一時記憶部53へ転送し、データを記録する準備が出来るまで待ち、用意が出来た段階でディスク100への記録を開始する。ここで、一時記憶部53は高速アクセスで数分以上の記録データを保持するため、大容量メモリが想定される。なお、MPU部80は、ディスク100のファイル管理領域などを読み書きするために、D−PRO部52へマイコンバスを通して直結されている。
【0127】
記録時の信号の流れを簡単に整理すると、次のようになる。すなわち、STB83(または地上波デジタルチューナ89)で受信されたMPEG−TSパケットのデータは、フォーマッタ部90でパケットグループ化されてバッファ91へ保存され、このバッファ91にデータが一定量たまった時点(1またはその整数倍のCDA分がたまった段階で)で、ディスク(100および/または100a)に記録される。
【0128】
図48は、ESOB切り処理(ST160)の一例を説明するフローチャート図(ESOB切り処理フロー)である。ESOB切り処理の一例を以下に説明する:
e1)連続して記録するかどうかをチェックし、連続して記録しない場合は(ST1600ノー)この処理を終了する;
e2)STCが連続するかどうかをチェックし、連続しない場合は(ST1602ノー)、連続記録フラグをセットし、STC連続フラグはリセットし、STC_OFSにそのときのオフセット値を設定する(ST1610)。連続する場合は(ST1602イエス)、e5)へ移行する。
【0129】
e3)PATSが連続するかどうかをチェックし、連続しない場合は(ST1612ノー)、PATS連続フラグはリセットし、PATS_OFSにそのときのオフセット値を設定し(ST1614)、e7)へ移行する。
【0130】
e4)PATSが連続する場合は(ST1612イエス)、PATS連続フラグをセットし、STC_OFSに0を設定し(ST1616)、e7)へ移行する;
e5)PATSが連続するかどうかをチェックし、連続しない場合は(ST1604ノー)、連続記録フラグをセット、STC連続フラグをセット、PATS連続フラグはリセットし、STC_OFSに0を、PATS_OFSにオフセット値をそれぞれセットし(ST1608)、e8)へ移行する。
【0131】
e6)PATSが連続する場合は(ST1604イエス)、連続記録フラグをセット、STC連続フラグをセット、PATS連続フラグはセットし、STC_OFSに0を、PATS_OFSに0をそれぞれセットし、e7)へ移行する;
e7)該当ESOBのESTR_FIを設定し(ST1618)、この処理を終了する。
【0132】
図49は、バッファ取り込み処理(ST130)の一例を説明するフローチャート図(PATSを6バイト管理する場合のバッファ取り込み処理フロー)である。記録時は、STB部(または地上波デジタルチューナ)で受け取ったTSパケットデータは、フォーマッタ部でパケットグループ化され、ワークRAMへ保存され、一定量たまった時点(1またはその整数倍のCDA分がたまった段階で)でディスクに記録される。この時の動作は、TSパケットを受信すると170パケットづつグルーピング化し、パケットグループヘッダを作成する。具体的には以下のようになる。
【0133】
f1)TSパケットを受信する(ステップST1300);
f2)STCが1周(Wrap-around)したか否かをチェックし、1周した場合(ステップST1301イエス)は、その1周した時点でのTSパケットの位置情報より、CNT_SEGを作成する。これにより、STC部102のタイムカウントが1周した時点でのTSパケットの位置情報CNT_SEG_S_PKT_POS(図19参照)が管理情報CNT_SEGIに登録される(ステップST1303)。1周していない(STCは連続カウント中)場合(ステップST1301ノー)、あるいはCNT_SEGIの登録が済むと、次の処理に移る。
【0134】
f3)パケットグループの先頭の場合(ステップST1306イエス)は、Sync_Pattern:00ffa5a5を設定し(図49のステップST1308Aまたは図50のステップST1308B)、先頭でない場合(ステップST1306ノー)はf6)へ移行する;
f4)図49のステップST1308Aにおいて、TSパケットの到着時間をPATSとして、PATSの下位4バイトをTSパケットの前に配置し、先頭のPATSの上位2バイトをFIRST_PATS_EXTとしてPacket Group Headerに設定する。
【0135】
f5)また、図49のステップST1308Aにおいて、PATS_SSに0を設定し、f7)へ移行する;
f6)TSパケットデータエリアに取り込んだTSパケットにおいて、PATSの下位4バイトをTSパケットの前に付け(ステップST1317C)、Packet Groupのデータリアに設定する(ステップST1317D)。
【0136】
f7)パケットグループが終わったかどうか(170個のTSパケットをグルーピングし終えたかどうか)を判定し、終わってない場合(ステップST1322ノー)はf1)へ戻る。パックグループが終わった場合(ステップST1322イエス)は、PKT_GRP_GI設定処理(ステップST1340)、CCI処理(ステップST1330)、MNFI処理(ステップST1350)を行い、1パケットグループ分のグループデータをバッファRAM91内に一時保存する(ステップST1332)。
【0137】
図50は、図49の別例を説明するフローチャート図(PATSを4バイト管理する場合のバッファ取り込み処理フロー)である。図49と異なる処理は、以下の部分である。すなわち、PATSの精度が4バイトの場合、図50のステップST1308Bで示すように、f4)、f5)でのFIRST_PATS_EXTの処理が無くなり(又はFIRST_PATS_EXTに0が設定され)、PATS_SSの値が01となる。
【0138】
図51は、パケットグループ一般情報設定処理(ST1340)の一例を説明するフローチャート図(PKT_GRP_GI設定処理フロー)である。このPKT_GRP_GI設定処理を図51に従って説明する:
g1)パケットタイプを調べ、MPEG−TSパケットの場合はPKT_GRP_TYに01を設定し、それ以外の場合は、そのタイプにあった値をPKT_GRP_TYに設定する(ステップST13400);
g2)該当規格のBOOKバージョンに対応した値(例えば“11”)をVERSIONに設定し、スタッフィングが行われたかどうかを示すSTUFビットを(例えば“0”に)設定する(ステップST13400);
g3)STUFビットに“0”が設定されているときは、Valid_PKT_Ns(Packet Group内の有効Packet数と先頭のPacketに対するPATSの上位2バイトで構成されている)に“0xaa”を設定する(ステップST13406)。
【0139】
図52はストリーム情報(ESI)作成処理(ST120)の一例を説明するフローチャート図(ESI設定処理フロー)である。以下、ESOB_ESIの設定処理例を説明する:
h1)PSI、SIを調べ、設定されているストリーム数を調べる(ステップST1201);
h2)設定されているストリーム数の数だけh4)〜h5)を繰り返す(ステップST1230イエスの場合);
h3)PSI、SIよりストリームタイプを調べ(ステップST1203)、ビデオストリームか、オーディオストリームか、その他のストリームかどうかを判定し、次のストリームチェックに移行する;
h4)その際、ストリームタイプをMPEG1ビデオ、MPEG2ビデオ、MPEG1オーディオ、MPEG2オーディオ…等の種別に分け、それぞれの種別応じて、内部のデータをチェックし、各属性情報を読み出す。
【0140】
h5)ビデオストリームの場合(ステップST1213A)、ES_TY=0とし、各属性情報を設定し、特に解像度データ、アスペクト情報等を取り出し、V_ATRを作成し(ステップST1213C)、h8)へ移行する;
h6)オーディオストリームの場合(ステップST1215A)、ES_TY=0x40とし、各属性情報を設定し、特にサンプリング周波数、チャンネル数等を取り出し、A_ATRを作成し(ステップST1215C)、h8)へ移行する;
h7)その他のストリームの場合(ステップST1217A)、ES_TY=0x80とし、各属性情報を設定し(ステップST1217C)、h8)へ移行する;
h8)コピー情報を取り出し、CP_CTL_INFORMATION(CCI)を作成する(ステップST1220);
h9)属性情報を元に新たにESIを設定し、次のストリームチェックに移行する(ステップST1230ノーの場合)。
【0141】
次に、ESTR_FIの作成処理例を説明する。図53は、録画終了処理(ST150)におけるストリームファイル情報(ESTR_FI)作成処理の一例を説明するフローチャート図である;
j1)ESOBIを1つ増やすため、サーチポインタ(ESOBI_SRP)を1つ増やし、そのための領域を確保し、PKT_TYに0:MPEG_TSを設定する(ステップST1500);
j2)録画時間をESOB_REC_TMに設定する(ステップST1502A)。ここで、装置内部の時計は、TDT(Time Data Table)により設定・補正が行なわれ、常に正確な時間が得られる;
j3)その際、ESOB_S_PTMおよびESOB_E_PTMをストリーム内より取り出し、STCの不連続情報(例えば図19のCNT_SEGN)を調べて、j1)で増やしたESOBIに対応するESOBの、スタートPTMおよびエンドPTMを設定する(ステップST1502A)。
【0142】
j4)ストリームの種類がTSストリーム(ARIB、DVB)の場合は(ステップST1506イエス)、AP_PKT_SZに188を設定し、PKT_GRP_SZに16を設定する(ステップST1508A)。そうでない場合は(ステップST1506ノー)、放送方式にあった値をAP_PKT_SZに設定する(ステップST1510);
j5)PKT_TYにMPEG_TSを設定する(ステップST1514);
j6)PATより、TS_ID、NETWORK_PID、PMT_ID(該ESOBで使用しているPMTのPID:PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)を設定する(ステップST1514);
j7)PMTより、Program_Number(PMT内のSERVICE_ID)、PCR_PID、を設定し、さらに、FORMAT_ID、VERSIONに付いては、内部チューナの場合は、機器内でデフォルトの方式とし、外部デジタル入力の場合は、デジタル入力より送られてくるRegistration_Descriptorの値を設定する。TMAPタイプに従ってESOB_TYを設定する(ステップST1516A)。
【0143】
j8)さらに、録画したESの数を設定する。(PMTには放送している全てのESの情報:数が設定されているが、録画時に全てのESを記録しているとは限らないため、記録したESの数を設定する。)
j9)録画を開始したLBアドレスをADR_OFSに設定し(ステップST1550A)、デフォルトのPIDを設定する。ここで、デフォルトのビデオのPIDとは、コンポーネントタグ値が一番若いビデオの値のもの、もしくは、マルチビューTVの場合、メインのコンポーネントグループに記載されているコンポーネントタグに相当するストリームのPIDが相当する;
j10)GPI設定処理(ステップST1530)、TMAP設定処理(ステップST1540)等を行い、各切りわけ情報を元にストリーム毎にTMAPIを作成する;
j11)PATSの精度に従い、PATS_SSを設定する(Packet_Group Header内の値と同じ値に設定)(ステップST1551);
j12)編集日時を設定する(ステップST1554)。
【0144】
図54は、GPI設定処理ST1530の一例を説明するフローチャート図である。このGPI設定処理は、以下のように行なうことができる:
k1)ストリームのタイプを調べる(ステップST15300B);
k2)複数番組を1ストリームにした場合(ステップST15300Bイエス)、ESOB_TYにGPIありとし、GPI_TYに0、全PRIORITY=0と設定し、1番組を1GPIで構成し、グループ数を設定して(ステップST15302B)、k5)へ移行する;
k3)降雨対応放送の場合(ステップST15300Bイエス)(ステップST15304Bイエス)、ESOB_TYにGPIありとし、GPI_TYに40h、高階層をPRIORITY:1とし、そのほかをPRIORITY:2と設定する。階層毎に1GPIで構成しグループ数を設定して(ステップST15306B)、k5)へ移行する。
【0145】
k4)マルチビュー放送の場合(ステップST15308Bイエス)、ESOB_TYにGPIありとし、GPI_TYに40h、高階層をPRIORITY:1とし、そのほかをPRIORITY:2と設定し、1ビューに1GPIで構成する(ステップST15310B)。マルチビュー放送でない場合は(ステップST15308Bノー)、ES_TMAP_Nsに1を設定し、ESOB_TYにGPIなしを設定する(ステップST15321B)。そして、まだ他にグループ(GP)とすべきESがあるかどうかを判断し、ある場合(ステップST15314Bイエス)はk1)へ移行し、無い場合は(ステップST15314Bノー)グループ数を設定し、k5)へ移行する;
k5)他のグループ(GP)があるかどうかをチェックし、ある場合はk1)へ移行し、無い場合は現在選択されているPIDのグループでプレイリストを作って登録し(ステップST15316B)、この処理を終了する;
k6)これにより、現在選択されているグループで再生をする場合には、ステップST15316Bで自動作成されたプレイリストを再生することが可能となる。
【0146】
図55は、のTMAP設定処理ST1540を説明するフローチャート図である。TMAP設定処理の一例について、以下に説明する:
m1)ESOB/EVOBの構造を決定する(ステップST15400);
m2)ESOBの場合、TMAP_TYを決定する(ステップST15403)。このESOBがPTMベースの場合は、GP数を考慮し、STMAPを作成するESを決定し、そのESの数(ビデオのESの数)をTMAP数とし、TMAP毎に作成するES_PIDを設定する。(ただし、1GPに必ず1TMAPが付く必要は無い。このTMAPを付け無い場合は同じESOBの他のES_TMAPを利用し、再生、サーチ、特殊再生等を行う。)一方、PATSベースのESOB(AT_ESOB)あるいはEVOBの場合、1つTMAPを追加する(PATSベースのTMAPのデータ構造については図24参照);
m3)切り分け情報よりESOB(PTMベース)/EVOB開始時間終了時間、TMAP毎の開始時間終了時間、エントリ数、ESOB(PATSベース)の先頭のPacketの到着時間、最終Packetの到着時間等を設定する(ステップST15405)。
【0147】
m4)TMAPTを追加し、切り分け情報を元にエントリ情報の作成処理を行なう(ステップST15407)。すなわち、ESOBのTYPE Aの場合は、1st_REF_PIC_SZ(先頭のI-Picの終了アドレス、I-Picが無い場合は0をセット)、ESOBU_SZ(ESOBUのサイズをPacket Group単位で示す)、ESOBU_S_PKT_POS(Packet Group内でのESOBUの先頭の位置)等を設定する。一方、ESOBUのTYPE_Bの場合は、ESOBU_SZ(ESOBUのサイズをPacket Group単位で示す)、ESOBU_S_PKT_POS(ESOBUの先頭のPacket Group内での位置(PKT単位))を設定する;
m5)ESOBU_SZ、ESOBU_PB_TMを作成する。ここで、TMAPT情報は別ファイルの場合とIFOファイルの最後に追加する場合が考えられる;
m6)編集が行われた場合は編集したTMAPの更新日時情報をSTMAP_LAST_MOD_TM(またはVTMAP_LAST_MOD_TM)に設定する(ステップST15409)。
【0148】
図56は、EVOB/ESOB構造設定処理ST15400を説明するフローチャート図である。このEVOB/ESOB構造設定処理の一例を以下に説明する:
n1)録画した録画時間を調べ(ステップST154000)、録画時間が2時間以下の場合はn2)に移行し、2時間から4時間の場合はn3)へ移行し、4時間以上はn4)へ移行する(ステップST154001);
n2)EVOB/ESOB_PB_TM_RNGに0を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが0.4s〜1.0sになる様にEVOBU/ESOBU_ENTを作成し(ステップST154002)、n5)へ移行する;
n3)EVOB/ESOB_PB_TM_RNGに1を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが1.0s〜2.0sになる様にEVOBU/ESOBU_ENTを作成し(ステップST154003)、n5)へ移行する;
n4)EVOB/ESOB_PB_TM_RNGに2を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが2.0s〜3.0sになる様にEVOB/ESOBU_ENTを作成する(ステップST154004);
n5)この処理を終了する。
【0149】
図57は、CP_CTL_INFO(CCI)作成処理ST1220を説明するフローチャート図である。このCP_CTL_IFOの設定処理の一例を以下に説明する:
p1)最新のPMT、EIT内にコピー情報があるかどうか調べ、ある場合は(ステップST12200イエス)そのコピー制御記述子を取り出し(ステップST12204)、その情報を元にコピー情報を構成して設定し(ステップST12206)、p3)へ移行する;
p2)コピー情報がない場合は(ステップST12200ノー)、コピーフリーとして設定する(ステップST12202);
p3)最新のPMT、EIT内にコンテンツ利用記述子があるかどうか調べ、ある場合は(ステップST12208イエス)そのコンテンツ利用記述子を取り出し(ステップST12212)、その情報を元にICT、EPNを設定する(ステップST12214A);
p4)コンテンツ利用記述子がない場合は(ステップST12208ノー)、コピーフリーとしてICT、EPNを構成する(ステップST12210)。なお、ステップST12214AあるいはステップST12210におけるICT、EPN、リテンションなどについては、図40を参照したCCIの説明でも述べている。
【0150】
さらに、CCI設定処理の別例について、図57を用いて説明する:
1)最新のPMT、EIT内にコピー情報があるかどうか調べ、ある場合は、その情報を元にコピー情報を構成して設定し(ステップST12206)、3)へ移行する;
2)受信したTSパケット内にコピー情報がない場合は、前回のパックと同じ情報をコピー情報として構成する(ここはステップST12202と異なる);
3)最新のPMT、EIT内にコンテンツ利用記述子があるかどうか調べ、ある場合は、パケットグループの途中で変化した場合、その変化した所から新たなパケットグループとするように前のパケットグループにダミーデータを挿入し、変化後からを新たなパケットグループとするようにし、その情報を元にCCIを設定する(ここはステップST12214Aと異なる)。このとき、PKT_GRP_GI:STUFに1を設定し、有効なPacketの数をPKT_GRP_GI:VALID_PKT_Nsに設定する;
4)受信したTSパケット内にコピー情報がない場合は、コピーフリーとしてCCIを構成する。
【0151】
図58は、録画終了処理(ST150)におけるプログラムチェーン(PGC)作成処理(プログラム設定処理を含む)の一例を説明するフローチャート図(プログラム設定処理フロー)である。以下、PGC作成処理例を説明する:
q1)ディスクの最初の記録かどうかをチェックし、最初の場合は(ステップST1600Zイエス)新たにORG_PGCを作成し(ステップST1602Z)、最初で無い場合は(ステップST1600Zノー)既に記録してあるPGC(ORG_PGC)の後にプログラムPGを追加する様に設定する(ステップST1604Z);
q2)PG_TYに消去許可:0を設定し、Cell_NsにCELLの数を設定し、ビデオのESI番号も設定する(ステップST1700Z)。
【0152】
q3)ステップST1700Zの設定において、記録するデジタル放送がARIBの場合、EIT内の短形式イベント記述子のlanguage_codeが"jpn"のときは、VMG_MATのCHRに0x12を設定し、PRM_TXTIの第二領域にEVENT_NAMEに設定し、REP_PICTIに代表画像の情報を設定する;
q4)LAST_MNF_IDに該当機器のメーカーIDを設定する(ステップST1702Z)。このメーカーIDの値は、PGI、CI、EVOBなどの変更があった場合に、その変更を行った機器のメーカーIDを設定し、最後に編集、記録したのがどのメーカーであるかを判別するために設定するものである。このメーカーIDにより、違うメーカーの機器でPGI、CI、EVOBなどが変更された場合の対応が取りやすくなる。
【0153】
q5)ステップST1700Zの設定において、さらに、PG_INDEXにPGの絶対番号を設定し、他のアプリケーションソフトウエアなどから参照する場合にPG単位での参照が可能にしている。さらに、該PG更新日時情報を記録する。この時、該当機器で対応している(メーカーのコードが一致した)MNFIおよび/またはIT_TXTがある場合には、その対応するデータの更新日時情報も設定する;
q6)MNFIに各メーカー独自の情報を設定する。
【0154】
q7)CELL_TY(例えば図35のセル情報EX_CI内に含まれるセルタイプ)にストリーマであることを示す情報を設定する(ステップST1704Z);
q8)ステップST1704Zの設定において、さらに、参照するESOB番号を設定し、再生するIDとして代表(ビデオの)PIDまたは、Component_Group_Idを設定し、エントリポイント情報EPI(図36)の数、再生開始PTM、終了PTM、エントリポイントEPをそれぞれ設定する。さらに、図19に例示されるような不連続セグメントCNT_SEGを読み取り、その回数を例えば図37のCNT_SEGNに設定し、その他に再生するESOBのブロック番号を設定する。
【0155】
q9)さらに、ステップST1704Zの設定において、PG_RSM_INF(再生開始PTM、ビデオのESI番号、オーディオのESI番号、Dual-Monoの主副情報等)に、頭から再生できるように先頭の情報を設定する。なお、EPを自動でつける場合の要因としては、映像及び時間関係では、一定時間と映像のモード変化(アスペクト比、動きベクトルの大きい場合)でその条件に映像フレームの先頭Packet(Unit Start Indicator)GOPの先頭Packet(シーケンスヘッダの先頭、I-PICの先頭)を組み合わせた場合が考えられる。さらに、音声関係では音声の変化(音量の変化等)/音声モード(ST/MONO)でその条件に音声フレームの先頭Packet(Unit Start Indicator、フレームヘッダ)の組み合わせた場合が考えられる。
【0156】
図59は、再生動作の一例を説明するフローチャート図(全体の再生動作フロー)である。再生時のデータ処理は、例えば以下のようになる(図59〜図66参照):
r1)まず、ディスクチェックし、rewritable Disc(R、RW、RAM)かどうかをチェックし、rewritable Discで無い場合には、その旨を返して終了する;
r2)rewritable Discであれば、ディスクのファイルシステムを読み出し(ステップST207)、録画されたデータがあるかどうかチェックし、無い場合には、“録画されていません”と表示して終了する;
r3)VMGファイルを読み込み(ステップST207)、再生するプログラム、セルを決定する(デフォルトで決定するか、ユーザに選ばせる)(ステップST208)。ここで、記録順の再生選択した場合には、ORG_PGCIに従って再生を行い、番組毎の再生を行う場合には、再生したい番組に相当する番号のUD_PGC(プレイリスト)に従って再生を行う;
r4)PKT_TYの値を読み出し、対応可能な放送方式かどうかチェックし、対応可能で無い場合は、その旨を表示して処理を終了する(もしくは次のセルへ移行する)。
【0157】
r5)再生するタイトル情報、レジューム情報(PL_RSM_IFO, PG_RSM_IFO)、セル情報(EX_CI)等により再生するESOB/EVOB、再生開始PTM等を決定し、再生開始PTMより、再生を開始するファイルポインタ(論理アドレス)および再生するストリームのESIを決定する。さらにSTI、ESIの値により、各デコーダ部設定を行い再生の準備を行う(ステップST211)。また、先頭のパケットグループヘッダ内のCCIより、APSの設定をビデオデコーダにAPSのON/OFF、APSのタイプ等を設定し、デジタルコピー制御によりCGMSAの設定をビデオデコーダに行う。さらに、デジタル出力(IEEE1394、インターネット等)がある場合:EPNの値により、0:スクランブルon又は出力禁止、1:そのまま出力に出力ICに設定し、ICTが0の場合、画像の解像度を制限を加え、HDをSDに変換し、1の場合はそのまま出力に出力ICに設定する。この時、再生を開始するフレームがIピクチャで無い場合、その直前のIピクチャを読み出しそこからデコードを開始し、目的のフレームまできた所で表示を開始し、通常再生を開始する。
【0158】
r6)再生開始時の処理を行う。まず再生対象がESOBかどうかチェックし、ESOBであっても(ステップST213イエス)再生禁止のESOBであれば(ステップST215イエス)PGCIより次のセルを設定して(ステップST232)、ステップST211へ戻る;
r7)再生対象がEVOBであったり(ステップST213ノー)再生可能なESOBである場合は(ステップST215ノー)、各デコーダの設定を行う(ステップST217);
r8)続いてセルの再生処理を行い(ステップST220)、再生終了かどうかをチェックし、終了の場合には(ステップST230イエス)、エラーチェックを行なう。エラーの場合には(ステップST240イエス)、その旨を表示し(ステップST242)、再生終了処理を行なう(ステップST244)。エラーでない場合には(ステップST240ノー)、その他の再生終了時の処理を行い(ステップST246)、この動作を終了する;
r9)再生終了でない場合には(ステップST230ノー)、PGCIより次のセルを決定し(ステップST232)、ステップST211へ戻る。そして、デコーダ部59の設定(ステップST217)が変更されたかどうかをチェックし、変更された場合には、次のシーケンスエンドコードにデコーダの設定が変更されるようにデコーダ部59に変更属性を設定する;
10)以後、再生が終了したかどうかをチェックしつつ(ステップST230)同様な処理(ステップST211〜ST232)を繰り返す。
【0159】
図60は、デコーダ設定処理(ST217)を説明するフローチャート図である。デコーダの設定例を以下に説明する:
s1)再生対象がESOBである場合(ステップST2170イエス)、再生するグループを決め、GPIに従い、再生するESを決める(ステップST2171)。再生対象がEVOBである場合は(ステップST2170ノー)、ステップST2171はスキップする;
s2)再生するESOB(またはEVOB)の属性情報(STI、ESI)を読み込む(ステップST2172);
s3)再生するESOB(またはEVOB)が、レコーダ(図43の装置など)が対応できるフォーマットかどうかをチェックする。対応不能の場合(ステップST2173ノー)は、再生しないよう機器設定をおこない、表示ミュートを設定する(ステップST2175)。
【0160】
s4)再生するビデオが再生可能な場合は(ステップST2173イエス)、再生準備を行なう(ステップST2174A)。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める;
s5)再生するオーディオが再生可能かどうかをチェックし、可能な場合(ステップST2176イエス)は、再生準備を行なう(ステップST2177A)。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める。不能の場合(ステップST2176ノー)は、再生しないよう機器設定をおこない、音声ミュートを設定する(ステップST2178);
s6)例えば図57の処理で作成した内容を含むCCI情報を元に、コピー管理処理を行う(ステップST2179)。
【0161】
図61は、セル再生時の処理の一例を説明するフローチャート図である。セルの再生処理は、例えば以下のようになる:
t1)TMAPIの内容よりEX_CELLの開始ファイルポインタFP(論理ブロック番号LBN)、終了ファイルポインタFP(論理ブロック番号LBN)を決定し、さらに、EX_CI内の開始時間、終了時間より開始のESOBU_ENTRY、終了のESOBU_ENTRYを決定し、ADR_OFSに目的のESOBU_ENTRYまでのエントリのデータ長を累積し、開始アドレス(LB=FP)、終了アドレスを求める。残りEX_CELL長は終了アドレスより開始アドレスを引いた値とし、再生開始時間をSTCへセットする(ステップST2200)。さらに、再生するPIDを決定し、デコーダ(STB、デジタルチューナ)に設定する。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める。
【0162】
t2)ESOBの連続チェック処理を行う(ステップST2201);
t3)再生中の読み出し処理を実行し、開始ファイルポインタより読み出しアドレス、読み出しサイズを決定する(ステップST2206);
t4)読み出す読み出し単位サイズと残りセル長を比べ、残りセル長が大きい場合には(ステップST2207イエス)、残りセル長に残りセル長より読み出す読み出し単位サイズを引いた値を設定する(ステップST2208)。小さい場合には(ステップST2207ノー)、読み出し長を残りセル長にセットし、残りセル長を0にセットする(ステップST2209);
t5)読み出し長を読み出し単位の長さに設定し、ドライブ部へ読み出しアドレス、読み出し長、読み出し命令を設定する(ステップST2210)。
【0163】
t6)データ転送が開始したら(ステップST2212イエス)、バッファに1ESOBU分たまるのを待つ。1ESOBU分たまったら(ステップST2214イエス)、1ESOBU分のデータをバッファから読み込み(ステップST2216)、バッファデコーダ転送処理を行なう(ステップST2220)。そして、読み出しファイルポインタFPのインクリメントとMPEGデコーダの通常モードへの設定(ステップST2224)を行ったのち、t7)へ移行する。
【0164】
t7)転送が終了したかどうかをチェックし、終了した場合には(ステップST2226イエス)、t8)移行する;
t8)アングルキー等が押されたかどうかをチェックし、押された場合は(ステップST2238イエス)、GPIがあるかどうかチェックする。GPIがある場合は(ステップST2239イエス)GP切り替え処理を行い(ステップST2240)、無い場合は(ステップST2239ノー)、何もせずにステップST2228の処理へ移行する;
t9)アングルキー等が押されていない場合は(ステップST2238ノー)、Skip SWが押されたかどうかをチェックする。Skip SWが押された場合は(ステップST2248イエス)、SKIP処理(ステップST2250)を行う。
【0165】
t10)Skip SWが押されていない場合は(ステップST2248ノー)、STOP SWが押されたかどうかをチェックする。Stop SWが押された場合は(ステップST2258イエス)、中断情報(RSM_IFO)を、タイトル再生の場合はPG_RSM_IFOに、プレイリスト再生の場合はPL_RSM_IFOに保存し、終了処理を行う(ステップST2260A);
t11)Stop SWが押されていない場合は(ステップST2258ノー)、残りセル長をチェックする。残りセル長が“0”でない、つまり現在のセルが最後のセルでない場合には(ステップST2228ノー)ステップST2206へ戻る。残りセル長が“0”の場合には(ステップST2228イエス)、この処理を終了する。
【0166】
図62は、ESOB連続チェック処理(ST2201)を説明するフローチャート図である。再生時のESOB連続チェック処理は、例えば次ぎのようになる;
u1)前のESOBと連続記録したかどうかをチェックし(図22の連続記録フラグ)、連続記録していない場合は(ステップST22010ノー)、この処理を終了する;
u2)ESOBが連続記録している場合は(ステップST22010イエス)、STCが連続して入るかどうかをチェックし(図22のSTC連続フラグ)、連続している場合は(ステップST22012イエス)、STC_OFSの値をSTCの値に加算して設定する(ステップST22014)。
【0167】
u3)STC_OFSの値をSTCの値に加算設定(ステップST22014)した後、あるいはSTCが連続していない場合(ステップST22012ノー)は、PATSが連続して入るかどうかをチェックする(図22のPATS連続フラグ)。 PATSが連続している場合は(ステップST22016イエス)、PATS_OFSの値の時間分、デコーダへのデータ転送を待つ(ステップST22018)。例えばSTBの場合では、PATS_OFSの値の時間分、データ送信を待つ。 (もしくは、PATS_OFS時間分を加算して)PATSが連続記録していない場合は(ステップST22016ノー)、この処理を終了する。
【0168】
図63は、バッファRAMからデコーダへのデータ転送処理の一例を説明するフローチャート図である。バッファデータデコーダ転送処理例を以下に説明する:
v1)バッファRAM内のパケットグループの数をチェックし、1パケットグループが無い場合は図63の処理をスキップする。バッファRAM内にパケットグループが1以上ある場合は、最初のパケットグループを処理する様設定する(ステップST22200);
v2)目的のパケットグループをバッファRAM内より読み出す(ステップST22201)。パケットグループの先頭は、パケットグループ長とSync_Patternにより検出する;
v3)パケットグループヘッダのSTUFビット(図39)を調べ、1がセットされている場合は、VALID_PKT_Nsの値に従って、有効なPacketを取り出す(ステップST22202A)。STUFビットに1が設定されていない場合は、170Packetが有効パケット数であるとする。
【0169】
v4)PATS_SSによりPATSの精度を検出し、その精度情報を元に、PATS(FIRST_PATS_EXT+直前のTSパケットのPATS:精度4バイトの場合)とPATS_SSより、TSパケットの転送時間を計算し(ステップST22202B)、その時間に各TSパケットをデコーダ部(STB部)に送る(ステップST22203)。なお、精度6バイトの場合は、FIRST_PATS_EXTをPacket Groupの先頭のPacketのPATSの上位2バイトとし、そこから直前のTSパケットのPATSの下位4バイトとしてTSパケットの転送時間を計算する。なお、精度4バイトの場合は、直前のPATSより、桁上がりを考慮してPATSを計算する。また、精度無しの場合は、Packetデータを取り出すと、リクエストが有り次第直ちにTSパケットを出力する。
【0170】
v5)デコーダ部へのパケット転送が終了すると(ステップST22204イエス)、コピー制御の設定(CCI処理)を行なう(ステップST22205);
v6)その後、メーカー情報MNFがあるかどうかをチェックし、ある場合、そのメーカーIDが該当機器のメーカーと一致するかどうかを判断し、一致している場合は、そのデータを読み込み、所定の処理を行う(各社独自の処理)(ステップST22270);
v7)続いて、ディスコンティニュー処理を行う(ステップST22280);
v8)転送終了まで待ち、パックグループがバッファRAMに残っているかどうかをチェックする。パックグループがバッファRAMに残っていない場合は(ステップST22206ノー)この処理を終了する;
v9)パックグループがバッファRAMに残っている場合は(ステップST22206イエス)、次のパケットグループを処理する様設定し(ステップST22207)、ステップST22201に戻る。
【0171】
図64は、GP切り替え処理の一例を説明するフローチャート図である。GP切り替え処理は、例えば以下のようになる:
x1)切り替えスイッチSWの種別を調べる(ステップST22400X);
x2)現在再生しているパケットグループGPのグルーピング情報GPIを読み込む(ステップST22401X);
x3)GPIがあるかどうかを調べ、無い場合は(ステップST22403Xノー)、この処理を終了する;
x4) GPIがある場合は(ステップST22403Xイエス)、そのほかのGPに切り替えるためにGPI情報を読み込み(ステップST22405X)、デコーダ設定処理を行う(ステップST22410)。
【0172】
図65は、ディスコンティニュー処理の一例を説明するフローチャート図である。ディスコンティニュー処理例を以下に説明する:
y1)不連続性情報DCNIを読み出してチェックし(ステップST22800)、再生中の位置にCNT_SEGの切れ目がある場合は(ステップST22802イエス)、デコーダの再生モードを内部クロックモード(PTSの値を無視し、内部のクロックの値のみで再生を行い、PCRがきた段階でPTSを再び有効にする動作モード:外部同期モード)に移行させ(ステップST22804)、この処理を終了させる;
y2)再生中の位置にCNT_SEGの切れ目がない場合は(ステップST22802ノー)、何もぜずにこの処理を終了させる。
【0173】
図66は、スキップ処理の一例を説明するフローチャート図である。スキップ処理は以下のように行うことができる:
z1)エントリポイントの情報テーブルEPITを読み込む(ステップST22500);
z2)SKIPの方向(SKIPキーの種類で決定)を調べ、フォワードの場合(ステップST22502イエス)は、現在再生している位置よりも後ろのエントリポイントEPで、現在再生ているPIDと同じPIDをもつEPを検索して、その情報を読み込む(ステップST22504)。一方、バックワードの場合(ステップST22502ノー)は、現在再生している位置よりも前のEPで、現在再生ているPIDと同じPIDをもつEPを検索して、その情報を読み込む(ステップST22506);
z3)検出されたEPIより、再生するESOBU_ENTを決定する(ステップST22508);
z4)ESOBU_ENT情報を読み込み、再生を開始する時間(STC)を決定する(ステップST22510)。
【0174】
z5)目的のESOBU_ENTにI-PICがあるかどうかを調べ(1ST_REF_SZ=0か否か調べる)、ない場合は(ステップST22512ノー)1つ前の同じグループのESOBU_ENTの情報を読み(ステップST22514)、ステップST22512〜ST22514の処理を繰り返す;
z6)目的のESOBU_ENTにI-PICがある場合は(ステップST22512イエス)、ESOBU_ENT内のシーケンスヘッダSHを読み込み、デコーダへ設定する(ステップST22522)。そして、先ほど見つけたI-PICを読み出し、その位置よりデコードを開始し、EPで指定された再生時間より表示を開始するようデコーダを設定し(ステップST22514)、通常の再生処理に移行する;
以上により、デジタル放送に対応した木目細かい制御動作が実現できる。
【0175】
<まとめ>
1.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、STCのWrap-aroundが発生したとき、その位置をCNT_SEGとしてESOBIに設定し、各PMTにESOB先頭からのCNT_SEG数情報を付加する。
【0176】
2.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、ビデオストリームを特定するために、各代表ピクチャ情報に、再生時にビデオで使用するESIの番号を付加する。
【0177】
3.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、再生するストリームを特定するために、各リジューム情報に、再生時にビデオで使用するESIの番号と、オーディオストリームで使用するESIの番号と、オーディオがデュアルモノの場合にその種副情報を付加する。
【0178】
4.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、再生するストリームを特定するために、各EP情報に、再生時にビデオで使用するESIの番号と、オーディオストリームで使用するESIの番号と、オーディオがデュアルモノの場合にその種副情報を付加する。
【0179】
5.論理的に繋がっているESOB間の連続性を示すシームレス情報として、連続記録フラグの他に、STC連続フラグ、および/またはPATS連続フラグとそのオフセット値を付加する。
【0180】
<実施の形態の効果>
・再生情報のみでSTCがWrap-aroundしているかが、再生実行前にわかる。
【0181】
・複数ESOB間の連続性が分かり、連続している場合には複数ESOB間をシームレスに接続可能なケースが増える。つまり、連続していることが判っている複数ESOB間の繋ぎ部分で再生処理待ち(静止画が挟まる)ような事態の発生頻度を、この発明が実施されない場合よりも、下げることができる。
【0182】
なお、この発明は前述した実施の形態に限定されるものではなく、現在または将来の実施段階では、その時点で利用可能な技術に基づき、その要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題が解決でき、発明の効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【0183】
【図1】この発明の一実施の形態に係るデータ構造を説明する図。
【図2】この発明の一実施の形態に係るデータ構造における再生管理情報層とオブジェクト管理情報層とオブジェクト層との関係を説明する図。
【図3】この発明の一実施の形態に係るファイル構造を説明する図。
【図4】AVデータ管理情報記録領域130に記録される管理情報の一部(HDVR_MGI)がどのように構成されるかの一例を説明する図。
【図5】DISC_RSM_MRKIの具体例を説明する図。
【図6】EX_DISC_REP_PICIの具体例を説明する図。
【図7】EX_PL_SRPTの具体例を説明する図。
【図8】この発明の一実施の形態に係るデータ構造において、管理情報の1つ(HDVR_MG)の他部(EX_M_AVFIT)がどのように構成されるかの一例を説明する図。
【図9】EVOB_TMAP_GIの具体例を説明する図。
【図10】ESTR_FITがどのように構成されるかの一例を説明する図。
【図11】HR_SFIxx.IFOの具体例を説明する図。
【図12】ESOBI_GIがどのように構成されるかの一例を説明する図。
【図13】ESOBI_GIに含まれる種々な情報を説明する図。
【図14】ESOB_ESIがどのように構成されるかの一例を説明する図。
【図15】ESOB_V_ESIがどのように構成されるかの一例と、このESOB_V_ESIに含まれるビデオ属性V_ATTRがどのように構成されるかの一例を説明する図。
【図16】ESOB_A_ESIがどのように構成されるかの一例と、このESOB_A_ESIに含まれるオーディオ属性AUDIO_ATTRがどのように構成されるかの一例を説明する図。
【図17】ESOB_OTHER_ESIがどのように構成されるかの一例を説明する図。
【図18】コピー制御情報(著作権保護情報)CP_CTL_INFOがどのように構成されるかの例を説明する図。
【図19】ESOB_DCNIの具体例を説明する図。
【図20】ESOB_GPIがどのように構成されるかの一例を説明する図。
【図21】ESOB_GPI_GI、GPI_SRP#、およびGPI#がどのように構成されるかの一例を説明する図。
【図22】ESOB_SMLIがどのように構成されるかの一例を説明する図。
【図23】ESOB_TMAP(タイプA)がどのように構成されるかの一例を説明する図。
【図24】ESOB_TMAP(タイプB)がどのように構成されるかの一例を説明する図。
【図25】DVD_HDVRディレクトリに含まれるHR_VTMAP.IFOおよびHR_STMAPx.IFOがどのように構成されるかの一例を説明する図。
【図26】EX_VTMAPTI、各EX_VTMAP_SRP#、および各EX_VTMAPIがどのように構成されるかの一例を説明する図。
【図27】各EVOBU_ENT#の中身がどのように構成されるかの一例を説明する図。
【図28】STMAPT(タイプA)に含まれる各種情報がどのように構成されるかの一例を説明する図。
【図29】STMAPT(タイプB)に含まれる各種情報がどのように構成されるかの一例を説明する図。
【図30】ETMAPI_GIおよびETMAPI#がどのような情報を格納するのかの一例を説明する図。
【図31】ESOBU_ENT#の中身がどのように構成されるかの一例(タイプAの例)を説明する図。
【図32】AT_ESOBU_ENT#の中身がどのように構成されるかの一例(タイプBの例)を説明する図。
【図33】HDVR_VMGに含まれるPGC情報(EX_ORG_PGC情報およびEXプレイリスト情報/EX_UD_PGC情報)が、どのように構成されるかの一例を説明する図。
【図34】EX_PGC情報がどのように構成されるかの一例を説明する図。
【図35】EX_CIの具体例を説明する図。
【図36】C_EPIの具体例を説明する図。
【図37】ESOB(またはEVOB)のPTMがどのように構成されるかの一例を説明する図。
【図38】ストリームオブジェクト用のデータユニット(ESOBU)がどのように構成されるかの一例を説明する図。
【図39】PKT_GRP_GIの具体例を説明する図。
【図40】パケットグループヘッダに含まれるコピー管理情報CCI#がどのように構成されるかの例を説明する図。
【図41】FIRST_PATS_EXTの具体例を説明する図。
【図42】MNIの具体例を説明する図。
【図43】この発明の一実施の形態に係るデータ構造を利用して、情報記録媒体(光ディスク、ハードディスク等)にAV情報(デジタルTV放送プログラム等)を記録し再生する装置の一例を説明するブロック図。
【図44】図43の装置の全体の動作の一例を説明するフローチャート図(全体動作処理フロー)。
【図45】編集処理(ST28)の一例を説明するフローチャート図(編集動作処理フロー)。
【図46】録画動作の一例(その1)を説明するフローチャート図。
【図47】の録画動作の一例(その2)を説明するフローチャート図。
【図48】ESOB切り処理(ST160)の一例を説明するフローチャート図(ESOB切り処理フロー)。
【図49】バッファ取り込み処理(ST130)の一例を説明するフローチャート図(バッファ取り込み処理フロー)。
【図50】図49の別例を説明するフローチャート図(バッファ取り込み処理フロー)。
【図51】パケットグループ一般情報設定処理(ST1340)の一例を説明するフローチャート図(PKT_GRP_GI設定処理フロー)。
【図52】ストリーム情報(ESI)作成処理(ST120)の一例を説明するフローチャート図(ESI設定処理フロー)。
【図53】録画終了処理(ST150)におけるストリームファイル情報(ESTR_FI)作成処理の一例を説明するフローチャート図。
【図54】GPI設定処理ST1530の一例を説明するフローチャート図。
【図55】のTMAP設定処理ST1540を説明するフローチャート図。
【図56】EVOB/ESOB構造設定処理ST15400を説明するフローチャート図。
【図57】CP_CTL_INFO(CCI)作成処理ST1220を説明するフローチャート図。
【図58】録画終了処理(ST150)におけるプログラムチェーン(PGC)作成処理(プログラム設定処理を含む)の一例を説明するフローチャート図(プログラム設定処理フロー)。
【図59】再生動作の一例を説明するフローチャート図(全体の再生動作フロー)。
【図60】デコーダ設定処理(ST217)を説明するフローチャート図。
【図61】セル再生時の処理の一例を説明するフローチャート図。
【図62】ESOB連続チェック処理(ST2201)を説明するフローチャート図。
【図63】バッファRAMからデコーダへのデータ転送処理の一例を説明するフローチャート図。
【図64】GP切り替え処理の一例を説明するフローチャート図。
【図65】ディスコンティニュー処理の一例を説明するフローチャート図。
【図66】スキップ処理の一例を説明するフローチャート図。
【符号の説明】
【0184】
100…情報記録媒体(DVD−RAMディスク等);121…AVデータ記録領域;122…VRオブジェクト群記録領域;130…AVデータ管理情報記録領域(HDVR_VMG);131…ストリームオブジェクト群記録領域;132…エストリームオブジェクト(ESOB);134…ストリームオブジェクトユニット(ESOBU);140…パケットグループ;160…DVDトランスポートストリームパケット記録領域;161…パケットグループヘッダ;163…MPEGトランスポートストリーム(MPEG−TS)パケット;162…パケット到着時間(PATS);10…再生情報管理層;11…プログラムチェーン(PGC);12…プログラム(PG);13…セル;20…ストリームオブジェクト管理情報層;21…ストリームオブジェクト情報(ESOBI);22…ストリームオブジェクトユニット情報(ESOBUI;グローバル情報);23…ビデオオブジェクト管理情報層;24…ビデオオブジェクト情報(EVOBI);25…ビデオオブジェクトユニット情報(EVOBUI);30…ストリームオブジェクト(ESOB)層;51…ディスクドライブ部(波長が例えば650nm〜405nmのレーザを用いた光ディスクドライブ等);59…デコーダ部;74…デジタルインターフェイス(IEEE1394I/F等);79…エンコーダ部;80…メインMPU部(制御部);83…セットトップボックス部(衛星デジタルチューナ);89…地上波デジタルチューナ;100a…情報記録媒体(ハードディスクドライブ等)。
【技術分野】
【0001】
この発明は、デジタルTV放送などで用いられるデジタルストリーム信号の記録再生に適した、情報記録媒体(あるいはデータ構造)、情報記録/再生方法、および情報記録/再生装置に関する。
【背景技術】
【0002】
近年、TV放送は、ハイビジョン番組(高精細AV情報の番組)を主な放送コンテンツとするデジタル放送の時代に突入してきた。現在実施されているBSデジタルTV放送(および近々実施が開始される地上波デジタルTV放送)では、MPEG2のトランスポートストリーム(以下、適宜MPEG−TSと略記する)が採用されている。動画を使用したデジタル放送の分野では、今後もMPEG−TSが標準的に用いられると考えられる。このようなデジタルTV放送の開始に伴って、デジタルTV放送のコンテンツをそのまま録画できるストリーマのマーケットニーズが高まってきている。
【0003】
DVD−RAM等の光ディスクを利用したストリーマの例として、下記特許文献1に開示された「記録再生装置」がある(特許文献1)。
【特許文献1】特開2002−84479号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
例えば途中に短いニュースが挿入された長時間音楽番組(年末にBSデジタル放送されるNHK紅白歌合戦など)をニュースカット(ニュース部分で録画を一旦止める)でストリーム録画した場合では、ニュースをカットした部分で録画番組のストリームオブジェクトが2つに分かれる。このような場合、2つのストリームオブジェクトは、記録媒体上で物理的に隣接して連続するのが普通であるが、物理的に離れた場所に不連続記録されていてもよい。この例では、2つのストリームオブジェクトが物理的に連続していようがいまいが、そのコンテンツの再生時間に関しては、論理的に連続している。CMが挿入された1本の映画をCMカットでストリーム録画した場合も同様で、CMカット部分で複数ストリームオブジェクト間に物理的な不連続が生じたとしても、1本の映画コンテンツ全体としての再生時間は論理的に連続している。
【0005】
一方、例えばチャネルXの番組Aをストリーム録画し、その後チャネルYの番組Bをストリーム録画したような場合、番組Aのストリームオブジェクトと番組Bのストリームオブジェクトは、たとえ記録位置が物理的に連続していても、それらのコンテンツの再生時間に関しては連続していない(論理的に不連続)。
【0006】
このように、複数のストリームオブジェクトによりストリーム録画がなされている場合において、隣接するストリームオブジェクト間に、物理的な連続性ではなく、論理的な連続性(同一番組内での再生時間の連続性)があるかどうかは、再生時のデコード処理(システムタイムクロックSTCの設定処理など)に影響する。具体的には、再生時間の連続性が分からずにSTCの設定が不適切に行われる(STCのリセットなど)と、同一番組の前半ストリームオブジェクトの末尾から後半ストリームオブジェクトの先頭に再生が移る際に、静止画表示による待ち時間が長めに生じる可能性が出てくる。
【0007】
この発明の目的の1つは、MPEG−TSなどのストリーム記録において記録されたオブジェクトが複数になる場合、それらのオブジェクト間で論理的な連続性があるか否かがわかるような仕組みを提供することである。
【課題を解決するための手段】
【0008】
この発明の一実施の形態では、記録媒体の管理情報(図11のHR_SFIxx.IFO内のESOBI)が、複数のオブジェクト間の連続性を示す情報(図22のESOB_SMLI)を含むように構成されている。この構成において、前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合、前記連続性を示す情報(図22のESOB_SMLI)は、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含むことができる。
【0009】
また、前記複数のオブジェクトの内容がMPEGエンコードされたトランスポートストリームのパケット(図38のMPEG−TSパケット)に含まれ、このトランスポートストリームのパケットがシステムタイムクロック(STC)に対応する時間情報(PCRなど)を含む場合において、前記連続性を示す情報(図22のESOB_SMLI)は、隣接する前記複数のオブジェクトの間で前記システムタイムクロック(STC)が連続しているか否かを示すシステムタイムクロック連続フラグを含むことができる。さらに、前記トランスポートストリームのパケットがそのパケットの到着時間情報(PATS)を含む場合において、前記連続性を示す情報(図22のESOB_SMLI)は、隣接する前記複数のオブジェクトの間で前記パケットの到着時間情報(PATS)が連続しているか否かを示すパケット到着時間連続フラグを含むこともできる。
【発明の効果】
【0010】
MPEG−TSなどのストリーム記録において記録されたオブジェクトが複数になる場合、それらのオブジェクト間で論理的な連続性があるか否かは、前記連続性を示す情報(図22のESOB_SMLI)によりわかる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照してこの発明の種々な実施の形態を説明する。デジタルTV放送などやインターネットなどの有線を使用した放送などの圧縮動画を放送(配信)を行うための方式において、共通の基本フォーマットであるMPEG−TS方式は、パケットの管理データ部分とペイロードに分かれる。
【0012】
ペイロードには、再生されるべき対象のデータがスクランブルの掛かった状態で含まれている。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)を利用してさまざまな管理情報を作成する。
【0013】
再生対象としては、MPEGビデオデータやDolby AC3オーディオデータやMPEGオーディオデータ、データ放送データなど、さらに、直接、再生対象には関係ないが、再生する上で必要なPAT、PMT、SIなどの情報(番組情報等)などがある。PATには、番組毎のPMTのPID(Packet Identification)が含まれており、さらにPMTにはビデオデータやオーディオデータのPIDが記録されている。
【0014】
これにより、STBの通常の再生手順としては、EPG情報により、ユーザが番組を決定すると、目的の番組の開始時間に、PATを読み込み、そのデータを元に、希望の番組に属するPMTのPIDを決定し、そのPIDに従って、目的のPMTを読み出し、そこに含まれる再生すべきビデオ、オーディオパケットのPIDを決定し、PMTやSIにより、ビデオ、オーディオの属性を読み出し、各デコーダへセットし、前記ビデオ、オーディオデータをPIDに従って切り出して、再生を行う。ここで、PAT、PMT、SI等は途中再生にも使用するために、数100ms毎に、送信されてくる。
【0015】
ここで、デジタル放送は国毎に放送方式がちがう。たとえば、ヨーロッパではDVB(Digital Video Broadcasting)、米国ではATSC(Advanced Television Systems Committee)、日本ではARIB(Association of Radio Industries and Businesses)となっている。
【0016】
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となっている。
【0017】
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となっている。
【0018】
ARIBでは、ビデオはMPEG2であり、解像度は1080i、720p、480i、480pでフレームレートは29.97Hz、59.94Hzとなり、オーディオはAAC(MPEG-2 Advanced Audio Coding)でサンプリング周波数が48kHz、44.1kHz、32kHz、24kHz、22.05kHz、16kHzとなっている。
【0019】
このように各国により、デジタ放送の方式は違い、また、放送局毎にも違う可能性がある。そのため、レコーダでは、それぞれの使用する方式に応じてオブジェクトを1または複数のファイルとして記録する必要がある。このことから、現行のVRファイル構成に対してさらに追加されるファイルは、図3に示すように、HR_SFIx.IFOおよびHR_SFIx.bupというファイル名において“x”が複数存在可能なように構成される。このように構成された1以上のファイルが、各放送方式毎に追加される。また、たとえば“x”=00の場合は、放送方式が不明な場合や該当レコーダがその放送方式に対応していない場合に使用できる。この場合は、放送方式不明のストリームまたはレコーダが非対応の放送方式のストリームは、TYPE Bのストリーム(SOB_STRB)として保存できる。そこで、放送局毎(または放送方式毎)にデジタル放送用の管理用情報であるESTR_FIを変更するため、複数のESTR_FIが存在する事になる。
【0020】
図10は、ESTR_FITがどのように構成されるかの一例を説明する図である。ここでは、使用するESTR_FIファイルを指定するために、1以上のファイルサーチポインタESTR_FI_SRPの情報が存在する。各ESTR_FI_SRPの構造は、図10に示すように、ESTR_FIのファイルネームESTR_FI_FN、ESTR_FIファイルの更新日時情報ESTR_FI_LAST_MOD_TM、ESTR_FIのファイルサイズESTR_FI_SZ、放送方式情報であるAP_FORMAT-1、国コードCountry code、パケットタイプPKT__TY、SOBIの数ESOBI_Nsなどにより構成される。ここで、更新日時情報はESTR_FIファイル内にも設定されており、編集時ESTR_FIを変更した場合、その値も更新し、再生時、この値とESTR_FIファイル内の値を比べ、同じ値の場合に、再生可能とする。また、ESTR_FIの数は7個以下とし、SOBIの数も999個以下としている。さらに、ESTR_FI file name:HR_SFInn.IFOのnnの部分がSTMAPのFile Name:HR_STMnn、IFOに反映され、STMAPのファイル名が決定される。
【0021】
図11は、HR_SFIxx.IFOの具体例を説明する図である。ESTR_FIファイル(HR_SFIxx.IFO)は、図11に示すように、通常のESTR_FIと同じ構成とする。さらに、解析可能な場合(TYPE AのSTRA)はPTMベースでTMAPが作成可能であるが、解析できない場合(スクランブルが解けない場合や、想定している放送局とは違う方式のデータが入力された場合等:TYPE BのSTRB)、TMAPをPTMベースでは無く受信時間(PATS)ベースで作成する事が考えられる。ただし、 PATSは再生時間では無いので、時間的に正確な特殊再生等はできないが、大体の特殊再生(録画内容を大まかに確認する程度の早送り再生や早戻し再生など)は可能となる。
【0022】
図11において、PATS_SSはPATSの精度を示す値で構成されている。例えば後述する図43の装置において、ネットワークやIEEE1394等のデータそのものを取り込む場合、PATSが4バイトあるいはPATSがダミーなどのときがある。そのような場合に対応するため、PATS_SSの値として、“00=PATS, FIRST_PATS_EXT(図41参照)の両方が有効:精度6バイト”、“01=PATSのみ有効:精度4バイト”、“10=PATS, FIRST_PATS_EXTの両方が無効:精度無し)”を用意している。
【0023】
また、デジタル放送において、特徴としてあげられるのがマルチビュー放送などに代表される複数の映像を同時に(タイムシェアリングして)流し、その内、必要なものだけを選んで再生することにより、複数のコンテンツをユーザの好み等により選択するものである。たとえば、マルチアングル放送でX、Y、Zのストリームと降雨対応としてUがひとつのTSとしてレコーダが受け取った場合、再生時に必要なストリームを選択して再生し、キーにより自由に切り替える必要があり得る。これに対応するため、グルーピング情報(GPI)を追加して、この目的を可能にしている。
【0024】
さらに、DVDレコーダでは通常、VOBの管理情報として、TMAPIを持っている。この情報はVOB/SOBをVOBU/SOBU毎に分けて、その単位で再生、特殊再生等を行えるようにするための情報であるが、最大0.5s毎に1件の情報が必要になるため、将来、ディスクの容量が増えたり、圧縮効率の高い圧縮方式を採用した場合、TMAPIが増え、編集などを行った場合に煩雑になり、IFO内にあるとTMAPIを変更するだけで、関係のない他の領域のデータを移動、書き換え等を行う必要がでてきて、効率が悪い。その状況を改善するためにTMAPIを別領域に記録するようにして対応している。
【0025】
さらに、録画する機器はメーカーや機種により、DVDフォーマットには記載されていない独自の機能をもち、他社との差別化を行うことが考えられる。その場合、メーカー独自の情報をオブジェクトデータに埋め込む必要がある場合がある。そこで、この発明の一実施の形態ではそれに対応するために、Packet Group Headerにその領域としてMNFI(Manufacturer's Information)を設ける。
【0026】
図1は、この発明の一実施の形態に係るデータ構造を説明する図である。DVDディスクは図1に示す様に、ディスク内のデータは、ファイルシステムが入っているボリューム/ファイル構造情報領域とデータファイルを実際に記録するデータ領域で構成されている。ファイルシステムは、どのファイルがどこに記録されているかを示す情報で構成されている。データ領域には一般のコンピュータが記録する領域とAVデータを記録する領域にわけられる。AVデータ記録領域は、AVデータの管理をするためのVMGファイルがあるAVデータ管理情報領域とビデオレコーディング規格のオブジェクトデータ(EVOBS)ファイル(VROファイル)の記録されるVRオブジェクト群記録領域とデジタル放送に対応したオブジェクト(ESOBS:Extended Stream Object Set)が記録されているストリームオブジェクトデータ(ESOBS)ファイル(SROファイル)が記録される記録領域で構成されている。ここで、DVD-Video(ROM Video)はVIDEO-TS、DVD-RTR(録再DVD)はDVD-RTAVとフォーマット毎にディレクトリをわけており、今回のデジタル放送対応のDVD規格も例えばDVD_HDVRというディレクトリに記録される。
【0027】
図2は、この発明の一実施の形態に係るデータ構造における再生管理情報層とオブジェクト管理情報層とオブジェクト層との関係を説明する図である。つまり、DVD_HDVRというディレクトリ(図3を参照して後述)に、データの管理を行うためのVMGファイルとアナログ放送及びラインインなどのアナロク記録用のオブジェクトファイルであるVROと、デジタル放送のオブジェクトであるSROファイルが記録され、そのSROファイルはSOBS(Stream object Set)とし、図2に示される様に管理データはVRと共通のVMGファイルに記録され、VRと共通に制御され、セル単位でリンクされ、再生場所の指定は再生時間単位で指定される。この管理データはVR_MANEGER.IFOと称している。ここで、TMAPTを別ファイルにする場合、図3に示すように、HR_VTMAP.IFO、HR_STMAP.IFOとそのバックアップファイルであるHR_VTMAP.BUP、HR_STMAP.BUPが追加されている。
【0028】
ESOBSの構造は、1以上のESOBで構成され、ESOBは、例えば、一番組に相当する。ESOBは1以上のESOBU(Extended Stream object unit)で構成され、ESOBUは、一定時間間隔(ESOBU_PB_TM_RNGの値により変化する)分のオブジェクトデータもしくは、1以上のGOPデータに相当する。ただし、転送レートが低い場合1s(1秒)以内で1GOPが送られない場合が考えられる(VRでは内部エンコードであるため自由に設定できるがデジタル放送の場合エンコードが放送局であるため、どんなデータがくるか不明な可能性がある)。また、レートが高く、Iピクチャが頻繁に送られた場合などが考えられる。その場合、ESOBUが頻繁に区切られ、それに伴いESOBUの管理情報が増え、全体の管理情報が肥大化するおそれがある。そこで、ESOBUは総録画時間により決めた一定時間間隔(最小の制限はESOB最後のESOBU以外、ただし、区切りはピクチャ単位:例1s毎)または1以上GOPで区切るのが適当となる。ここで、解析不能時にPATSベースで管理情報を構築する場合、ESOBUはSOBU_PATS_TM_RNGに示される時間間隔で区切られる。SOBU_PATS_TM_RNGは秒単位で指定する場合と27MHzのカウント値で指定する場合の2種類が考えられる。
【0029】
この一実施の形態では、1つのESOBUは1以上のPacket Groupで構成され、1つのPacket Groupは16(あるいは32)Logical Block(1LB=2048バイト;16LB=32640バイト)に対応させることができる。各Packet GroupはPacket Group HeaderとTSパケット(170個)で構成されている。各TSパケットの到着時間(Arrival Time)は、各TSパケットの前に配置されたPATS(Packet Arrival Time:4バイト)で表すことができる。
【0030】
ここで、TSパケットの到着時間は、録画開始を0(または所定の値)とし、録画終了までリニアにカウントアップさせる必要がある。ただし、STCとPATSは同じ値を示すとは限らない(初期値の違いなどのため)。しかしながら、PATS用カウンタのカウント間隔は、再生同期が合っている状態で、PCR取り込みと次のPCR取り込みの間隔に対応したSTC用カウンタのカウント間隔に対して、同期させる必要がある。なお、PCRは図38のMPEG−TS内の、図示しないアダプテーションフィールドに含まれている。但し、Packet Groupには2つまでのESOBが混在する事を許可する。つまり、ESOB毎にPacket Groupをアラインしなくてもよいと言うことである。
【0031】
図38は、ストリームオブジェクト用のデータユニット(ESOBU)がどのように構成されるかの一例を説明する図である。Packet Group Headerは、図38〜図42に示す様に、Packet Groupの先頭にSync Patternを設定し、続いてパケットグループ一般情報PKT_GRP_GI、コピー管理情報CCI(Copy Control Information)、先頭パケットのPATSの拡張バイトFIRST_PATS_EXT、および製造業者情報MNI(あるいはMNFI:Manufacturer's information)を含んで構成されている。
【0032】
図39は、PKT_GRP_GIの具体例を説明する図である。PKT_GRP_GIは、 Packet種別PKT_GRP_TY(=01でMPEG−TSのパケットグループであることが示される)、 パケットグループが準拠しているDVD BOOKバージョン番号VERSION、 Packet Groupのステータス情報PKT_GRP_SS、 およびPacket Group内の有効Packet数Valid_PKT_Nsを含んで構成されている。なお、パックグループヘッダ内のFIRST_PATS_EXTは、先頭のPacketに対するPATSの上位2バイトで構成されている。
【0033】
さらに、Packet Groupのステータス情報PKT_GRP_SS(図39)は、 スタッフィングが行われたかどうかを示すビットSTUF (このビット設定されている場合、Valid_PKT_Nsが0xAA以外の値を取る事を示している)、およびPATS_SSを含んで構成されている。ここで、 PATS_SS(図11の説明参照)は、PATSの精度を示す値(00=PATS, FIRST_PATS_EXTの両方が有効で精度6バイト;01=PATSのみ有効で精度4バイト;10=PATS, FIRST_PATS_EXTの両方が無効で精度無し)である。
【0034】
図40は、パケットグループヘッダに含まれるコピー管理情報CCI#がどのように構成されるかの例を説明する図である。CCIは、デジタルコピー制御(00=コピー禁止、01=1回コピー許可、11=コピー禁止)とアナログコピー制御(00=APS無し、01=APSタイプ1、10=APSタイプ2、11=APSタイプ3)とEPN(0=コンテンツ保護、1=コンテンツ保護無し)とICT(0:アナログビデオ出力解像度制限、1=制限無し)で構成されている場合と、さらに、リテンション情報(コピー禁止の場合、Retention=0で、Retention_stateが示す時間だけコピー制御されるコンテンツを含むデータの一時保存を許可する)が入っている場合が考えられる。ここで、APSとはAnalog Protection SYSTEMのことで、この発明の一実施の形態ではマクロビジョンを想定している。
【0035】
図41は、先頭パケットのPATSの拡張バイトFIRST_PATS_EXTの具体例を説明する図である。FIRST_PATS_EXTはPacket Groupの先頭にあるPacketの到着時間の上位2バイトで、残り4バイトは各Packetの前に付けられている。これにより、より正確な時間の再生処理が可能となる。
【0036】
図42は、製造業者情報(MNIあるいはMNFI)の具体例を説明する図である。 MNIあるいはMNFIは、MNF_IDとMNF_DATAで構成されている。NMF_IDは各製造業者(メーカー)を表す値である。その後のMNF_DATAは各メーカー毎に自由に設定可能なデータ領域となっている。
【0037】
ここで、管理情報について、図3〜図37等を参照して説明する。図3は、この発明の一実施の形態に係るファイル構造を説明する図である。HDVRディレクトリには、図3に示されるように、DVDの管理情報ファイルであるHR_MANGER.IFOとアナログビデオオブジェクトファイルであるVROファイルとデジタル放送対応用のSROファイルで構成されている。
【0038】
図4は、AVデータ管理情報記録領域130に記録される管理情報の一部(HDVR_MGI)がどのように構成されるかの一例を説明する図である。管理情報であるVMGファイルは、図4に示されるように、従来のDVD−VR規格の管理情報にESTR_FIT(Extended Stream File Information table)が追加されている。
【0039】
図5は、DISC_RSM_MRKIの具体例を説明する図である。ディスク全体のレジュームマーク情報(DISC_RSM_MRKI)は、中断された再生を再開するための情報として、プログラムチェーン番号PGCN、プログラム番号PGN、セル番号CN、再生開始PTMなどを含むマークポインタMRK_PT(目的のESOB上のPTM/PATS/S_ESOB_ENT番号などを含む)、再生するビデオストリームのESI番号V_ESN、再生するオーディオストリームのESI番号A_ESN 、Dual-Monoの場合の主副情報(音声の主/副切替フラグ)、そのマーカーを作成した日時情報MRK_TMなどを設定している。
【0040】
図6は、EX_DISC_REP_PICIの具体例を説明する図である。ディスクの代表画像情報(EX_DISC_REP_PICI)は、その代表画像のプログラムチェーン番号PGCN、プログラム番号PGN、セル番号CNの他に、その代表画像の開始PTMなどを含むピクチャポインタPIC_PT(目的のESOB上のPTM/PATS/S_ESOB_ENT番号などを含む)、再生するビデオストリームのESI番号V_ESN、その代表画像の再生時間および/または再生終了時間、その代表画像を作成した日時情報PIC_CL_TMなどを設定している。
【0041】
図7は、EX_PL_SRPTの具体例を説明する図である。EX_PL_SRPTには、各プレイリストへのサーチポインタがあるが、ここに、PL_RSM_MRKIが存在し、各プレイリスト毎のレジュームマーカー(再生中断時にどこまで再生したかを示すマーカー)を設けている。このPL_RSM_MRKIには、再生を再開するための情報として、レジュームマーカーに対応するセル番号CN、レジュームマーカーに対応するピクチャポインタPIC_PT(再生開始PTM等に対応)、そのマーカーを作成した日時情報MRK_TM、再生するビデオストリーム(デフォルトのストリーム)のESI番号V_ESN、再生するオーディオストリームのESI番号A_ESN、レジュームマーカーに対応するオーディオストリームに含まれる音声情報の主/副切り替えフラグ(Dual-Monoの場合の主副情報)を設定している。
【0042】
さらに、EX_PL_SRPTにはPL_REP_PICTIが存在し、各プレーリスト毎の代表画像情報(タイトルメニューなどでサムネールとして表示する画像のマーカー)を設けている。このPL_REP_PICTIには、目的のセル番号CN、目的のEVOB上のピクチャポインタPIC_PT(該当する代表画像の開始PTM、PATS、S_EVOB_ENT番号等)、再生するビデオストリーム(デフォルトのストリーム)のESI番号V_ESN、該当する代表画像の再生時間またはその再生終了時間、および該当する代表画像そのマーカーを作成した日時情報PIC_CL_TMなどを設定している。
【0043】
さらに、自録再用のVideo Recoding(VR)用のTMAP(Time Map)であるVTMAPTの更新日時情報とデジタル放送記録用のStream Recoding(SR)用のTMAPであるSTMAPTの更新日時情報を記載し、この値と各TMAPTファイルに記載されている更新日時情報を比較し、同じ値であれば整合性が取れているとして処理を行うようにする。また、ストリームデータの管理は図3に示す様にVMG内に保存され、VRデータと同列に管理される。
【0044】
ストリームの管理情報はESTR_FIT(Extended Stream File Information table)に保存されている。ESTR_FITはESTR_FITI(ESTR_FIT Information)と1以上のESTR_FI_SRPとそのSRPで示されるESTR_FI(Extended Stream File Information)で構成される。ESTR_FITIは、ESTR_FIの総数とこのテーブルの終了アドレスで構成され、ESTR_FIは、ESTR_FI_GI(ESTR_FI General Information)、1以上のESOBI_SRP(Extended Stream Object information Search Pointer)とSRPと同数でその値で示されるESOBI(ESOB Information)で構成される。
【0045】
ESTR_FI_GIには、該ESTR_FIの管理するオブジェクトのファイル名/ファイル番号と該ESTR_FI内のESOBI_SRPの数、記録されるコンテンツのソースであるデジタル放送の種類(AP_FORMAT_1)、録画した国コード:Country code(国コード:JPN=日本)、PKT_TY(1=MPEG-TS)、PKT_GP_SZ(16Logical Blockで固定)、PKT_Ns(0xAA:170TSパケットで固定)で構成されている。
【0046】
図12は、 図11のESOBIに含まれるESOBI_GIがどのように構成されるかの一例を説明する図である。ESOBI_GIは、例えば図示の順番で図示する各種情報をを含んでいる。すなわち、ESOBIは、ESOBI_GIと、ESOB_V_ESI(Extended Video Elementary Information)および/またはESOB_A_ESI(Extended Audio Elementary Information)に対応するESOB_ESIと、ESOB_DCNI(Discontinuity Information)と、ESOB_SMLI(ESOB Seamless Information)と、ESOB_AGAPI(ESOB Audio GAP Information)と、ESOB_TMAP(ESOB Time Map)と、ESOB_ES_GPI(ESOB_ES Group Information)などを含んで構成されている。
【0047】
図13は、ESOBI_GIに含まれる種々な情報を説明する図である。図13は、図12の各種情報の中身を示している。すなわち、ESOBI_GIは、AP_FORMAT(1=ISDB-S:BS/CS放送、2=ISDB-T:地上デジタル放送)、録画開始時間/録画時間(ESOB_REC_TM他)、先頭のPresentation Time(ESOB_S_PTM)、終了Presentation Time(ESOB_E_PTM)を含み、さらに、PSI(Program Specific Information)/SI(Service Information)の値を元に、PROGRAM_NUMBER(SERVICE_ID)、PMT_PID、NETWORK_ID、TS_ID、FORMAT_IDを含み、録画するデータを元に、SOB_ES_Ns(録画のために選択したESの数)、SOB_V_ES_Ns(録画したビデオESの内、TMAPを作ったESの数)、SOB_A_ES_Ns(録画したオーディオESの内、TMAPを作ったESの数)、CP_CTL_IFO(コピー制御情報CCIに対応)、録画レート等を含んで構成されている。
【0048】
ESOBI_GIに含まれるESOB_REC_MODEは、ストリームのTYPEを示しており、01でType AのESOB、02でType BのESOBを示している。TYPE Aはストリームの構造が解析可能なストリームであり、管理情報がPTMベースで管理されている。一方、TYPE Bはストリームの構造が解析できず、そのため管理情報がPATSベースで管理されている。そのため、TMAPもType AはPTMベース、Type BはPATSベースとなっている。
【0049】
ここで、ESOB_ES_NsとESOB_V_ES_Nsと、ESOB_A_Es_NsとES_TMAP_Nsの関係は、以下の式で表すことができる:
ESOB_ES_Ns≧ESOB_V_ES_Ns+ESOB_A_Es_Ns
ESOB_V_ES_Ns+ESOB_A_Es_Ns≧ES_TMAP_Ns
リージョン番号は、00で日本(ARIB)、01で米国(ATSC)、02で欧州(DVB)と示される。これにより、録画されたコンテンツは、対応された地域のデータが再生可能となる。
【0050】
図14は、ESOB_ESIがどのように構成されるかの一例を説明する図である。図14に示すように、ESOB_ESIは3種類に分けられる(図15のESOB_V_ESIと、図16のESOB_A_ESIと、図17のESOB_OTHER_ESI)。
【0051】
図15は、ESOB_V_ESIがどのように構成されるかの一例と、このESOB_V_ESIに含まれるビデオ属性V_ATTRがどのように構成されるかの一例を説明する図である。ESOB_ES_PID(ESのPID)と、STREAM_TYPE(PMT内で示されるSTREAM type)と、STREAM_CONTENT(コンポーネント記述子で示されるSTREAM_CONTENTの値)と、COMPONENT_TYPE(コンポーネント記述子で示されるCOMPONENT_TYPEの値)と、COMPONENT_TAG(コンポーネント記述子で示されるCOMPONENT_TAGの値)と、CP_CTL_INFORが3種類に共通で、V_ESI(図15)ではさらに、V_ATRが追加されている。
【0052】
V_ATRには、Application flag(0=Aspect比率を該V_ATRで指定、1=Aspect比率を該V_ATRで指定してもよい。実際のAspect比率は、ストリームに記録)、Aspect Ratio(0=4:3、1=16:9)、Horizontal resolution(00=1920、01=1440、02=1280、03=720、04=544、05=480)、Vertical resolution(00=1080、01=720、02=480)が設定されている。なお、ESOB_V_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(コピー制御情報)を適宜記載することも可能である。
【0053】
図16は、ESOB_A_ESIがどのように構成されるかの一例と、このESOB_A_ESIに含まれるオーディオ属性AUDIO_ATTRがどのように構成されるかの一例を説明する図である。
【0054】
A_ESI(図16)はさらに、SIMULCAST_GP_TAG(マルチ放送時、開始時のオーディオフレームのズレ値)と、AUDIO_ATR(AUDIOの属性値)とで構成されている。さらにAUDIO_ATRは、Simulcast_GP_tg(0=サイマルキャストでない。1=サイマルキャスト)、Multi_Ing(1=DUAL mono、0=それ以外)と、Main_Comp(1=主音声、0=それ以外)と、Quality_Indicator(音質表示を示す)と、Sampling_Rate(001=16KHz、010=22.05KHz、011=24KHz、101=32KHz、111=48KHz)で構成されている。この値は、音声コンポーネント記述子の値より設定される。なお、ESOB_A_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(言語コード、コピー制御情報など)を適宜記載することも可能である。
【0055】
図17は、ESOB_OTHER_ESIがどのように構成されるかの一例を説明する図である。ESOB_OTHER_ESIは、図15のESOB_V_ESIあるいは図16のESOB_A_ESIと同様に、ES_TY、ES_PID、STREAM_TYPE、COMPONENT_TAGを含んで構成されている。なお、ESOB_OTHER_ESIは、その他にリザーブエリアを持っていてもよく、このリザーブエリアに図示するような情報(データ符号化識別子、この識別子の付加情報、コピー制御情報など)を適宜記載することも可能である。
【0056】
図18は、コピー制御情報(著作権保護情報)CP_CTL_INFOがどのように構成されるかの例を説明する図である。コピー制御情報(CP_CTL_INFO)などの著作権保護情報は、Packet Group HeaderのCCI(Copy Control Information)等にあり、各Packet Groupのコピー制御をPacket Group HeaderのCCIで行う。この値は、デジタルコピー制御記述子、コンテント利用記述子により設定される。その内容は、CGMS(0=禁止;1=無制限許可)と、APS(0=APS無し、1=APSタイプ1付加、2=APSタイプ2付加、3=APSタイプ3付加)と、EPN(0=コンテンツ保護(インターネット出力保護)、1=コンテンツ保護無し)と、ICT(0:解像度制限、1=制限無し)である。
【0057】
図19は、ESOB_DCNIの具体例を説明する図である。このESOB_DCNI(Discontinue Information)は、DCNI_GIとCNT_SEGI#1〜#nで構成され、DCNI_GIはCNT_SEGIの数情報(CNT_SEGI_Ns)で構成され、各CNT_SEGIはCNT_SEG_SZ(CNT_SEGのサイズ:Packet Group数)およびCNT_SEG_PKT_POS(Packet Group内でのCNT_SEGの先頭のPacket数)で構成されている。これらの情報から、記録/再生装置のシステムタイムカウンタSTCのカウント動作が1周した(Wrap-aroundした)か否かを示すことができる。これにより、例えば時間情報PTMにESOB先頭からのCNT_SEG数を入れ、事前にSTCのWrap-aroundが発生している事を確認し、TMAPの計算などに使用することができる(このPTMの構成については図37参照)。
【0058】
図22は、ESOB_SMLIがどのように構成されるかの一例を説明する図である。ESOB_SMLI(Seamless Information)の構造は図22に示すように4種類が考えられる。4種類のいずれの場合もシームレス一般情報SML_GIを含んでいる。例1のSML_GI221は、このESOBが前のESOB(ESOB_IDの1つ小さいESOB)から連続して記録された事を示す連続記録フラグだけで構成される場合で、この場合、連続で再生する事は出来るがシームレス再生の保証はない。例2のSML_GI222では、さらに、STCが連続するかどうかのフラグを設けている。このSTC連続フラグには、2つのESOBのSTCが連続しない場合に、不連続となっている期間に対応したオフセット値を設定する。例3のSML_GI223では、さらに、PATSが連続するかどうかのフラグを設けている。このPATS連続フラグには、2つのESOBのPATSが連続しない場合に、不連続となっている期間に対応したオフセット値を設定する。最後に、例4のSML_GI224では、PATSのみが連続するかどうかのフラグを設け、連続しない場合そのオフセット値を設定する。
【0059】
図23は、ESOB_TMAP(タイプA)がどのように構成されるかの一例を説明する図である。ESOB_TMAPは、ESOB_TMAP_GIと1以上のES_TMAPIで構成され、ESOB_TMAP_GIはADR_OFS(ファイル先頭からのESOB先頭までのPacket Group番号(又はLBアドレス))と、
PTMベースの場合、ESOBU_PB_TM_RNG(ESOBUの再生時間の範囲:1=0.4s〜1.2s、2=1s〜2s、3=2s〜3s)と、ESOB_S_PKT_POS(ESOBの先頭のPacket group内での始まり:1≦ESOB_S_PKT_POS≦170)と、ESOB_E_PKT_POS(ESOBの先頭のPacket group内での終わり:1≦ESOB_E_PKT_POS≦170)を含んで構成される。
【0060】
ES_TMAPI_GI#は、ES_PID(該当TMAPの対象ESのPID:PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)、ES_S_ADR_OFS(ESOBファイル先頭から該当ESの先頭までの論理アドレス)、ES_S_PTM(スタートPTM)、ES_E_PTM(エンドPTM)、ES_ESOBU_ENT_Ns(ESOBU_ENTの数)、LAST_ESOBU_E_PKT_POS(最後のESOBUのPacket Group内での位置)、STMAP_N(該当ESに属するSTMAPT内のTMAPの番号:ただし、STMAPTがSTR_FI毎にそれぞれ別ファイルに記録されている場合、各STMAPTに順番に記録されている場合はこの番号は無くても良い)を含んで構成される。
【0061】
図24は、ESOB_TMAP(タイプB)がどのように構成されるかの一例を説明する図である。図24は、PATSベースの実際のTMAPの構造例である。ESOB_SZは、ESOBの先頭が属するPacket GroupからESOBの最後が属するPacket GroupまでのPacket Group数である。ESOB_TMAP_GI(図24)には、ADR_OFSとESOB_SZおよびESOB_E_PKT_POSがESOB全体の値に関した値として記されている。また、各ES用のTMAPIとして、ES_TMAPI(図23)には、ES_S_ADR_OFS(ESOBの先頭から該ESの先頭のESOBUまでのアドレス(Packet Group数))と、ES_E_ADR_OFS(該ESの最後のESOBUからESOBの最後までのアドレス(Packet Group数))と、ES_LAST_SOBU_E_PKT_POS(最後のESOBUのPacket Group内での最後のPacketまでのPacket数)と、ES_ESOBU_ENT_Ns(ESOBU_ENTの総数)と、該ESのデフォルトのPID(PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)等が、ES_TMAP全体の値として記されいる。
【0062】
図25は、DVD_HDVRディレクトリに含まれるHR_VTMAP.IFOおよびHR_STMAPx.IFOがどのように構成されるかの一例を説明する図である。STMAPTは、VTMAPTとは別領域(別ファイル)に記録される。このSTMAPTは、図25に示すように、STMAPTIと1以上のSTMAPI_SRPと、それと同数のSTMAPIを含んで構成される。
【0063】
図28は、STMAPT(タイプA)に含まれる各種情報がどのように構成されるかの一例を説明する図である。また、図29は、STMAPT(タイプB)に含まれる各種情報がどのように構成されるかの一例を説明する図である。
【0064】
STMAPTI(図28または図29)は、STMAPTの識別情報STM_IDおよびそのエンドアドレス情報STMAPT_EA、該TMAPのバージョン情報VERN、STMAPサーチポインタの数STMAP_SRP_Ns(TAMP_SRPIの数=TMAPIの数と同じ)、STMAPの更新日時情報STMAP_LAST_MOD_TM(VMGIの更新日時情報の値と同じ)などを含んで構成されている。ここで、STMAP_SRPは各STMAPTの要素であるSTMAPIへのアドレス情報を含んで構成され、各STMAPIはETMAPI_GIとESOBU_ENTを必要数含んで構成されている。STMAPI_GIは、ESOBU_ENT_Ns(エントリ数)を含んで構成される。ただし、ESOBU_ENT間にごみデータが有っても良い。
【0065】
PATSベースの場合、STMAPTI(図29)は、図示しないが、ESOBUの到着時間間隔ESOBU_PATS_TM_RNG(ESOBU_PATS_TM_RNGが1=0.5s、 ESOBU_PATS_TM_RNGが2=1s、又は27MHzの場合のカウント値がESOBU_PATS_TM_RNG)、ESOB_S_PAT/ESOB_E_PATS(先頭/最後のPacketの到着時間)、先頭のESOBUの到着時間間隔(TM_RNG)との差分時間TM_OFS(無い例も考えられる)などを含んで構成することができる。この場合では、編集はESOBU単位で行い、PATS開始/終了時間(セル情報CI)で編集時の調整を行うことができる。なお、TM_OFSについては図9に類似の開示がある。
【0066】
上述したESOBU_PATS_TM_RNGは、概念的には図23のESOBU再生時間範囲ESOBU_PB_TM_RNGに類似している。ここで、ESOBU/EVOBU_PB_TM_RNGを設定する事により、録画時間が増えても、TMAPI情報が極端に大きくなることが防ぐことが可能となる。ただし、各エントリの時間間隔が広がる為、2倍速再生等がスムーズにできない可能性が増える。
【0067】
ESOBU/EVOBUの間隔は、TM_RNGの値がある場合は、例えばこの値が示す時間間隔を最大とし、この前にGOPの切れ目がある場合は、そこでSOBUを切ることができる。また、シーケンスヘッダ(SH)とI-PICがある場合には、そのSHの先頭で切ることができる。
【0068】
図8は、この発明の一実施の形態に係るデータ構造において、管理情報の1つ(HDVR_MG)の他部(EX_M_AVFIT)がどのように構成されるかの一例を説明する図である。EX_M_AVFITには、EX_M_AVFIが存在し、その中に各EVOB毎の管理情報であるEVOBIがEVOBの数分存在している。EVOBI内には、図8に示すようにEVOBのTMAPを管理するためのEVOB_TMAPIが存在する。
【0069】
図9は、EVOB_TMAP_GIの具体例を説明する図である。EVOB_TMAPIには、図9に示すように、EVOB_TMAP_GIが入っている。EVOB_TMAP_GIは別ファイルのVTMAPTを管理するための一般情報が記録されている。EVOB_TMAP_GIは、該EVOBにあるエントリ(EVOBU_ENT)の総数(EVOBU_ENT_Ns)、リザーブエリア(必要に応じて該EVOBの先頭の時間のオフセット値TM_OFSなどの格納に利用できる)、該EVOBの先頭アドレス(ADR_OFS)、該EVOBのサイズ(EVOB_SZ)、該EVOBのエントリの時間間隔を決めるEVOBU_PB_TM_RNG、VTMAPファイル内でのTMAPの番号(EX_VTMAP_N:EVOBの先頭から一対一で決まる場合、無い事も考えられる)などを含んで構成されている。
【0070】
前記EVOB_TMAP_GIは、TMAPが別ファイルに分かれている(図3参照)ため、そのファイルを読み出さなくても、EVOBの情報が判るようになっている。特に、EVOB_TMAP_GI内にあるEVOBの先頭アドレスADR_OFS、EVOBのサイズEVOB_SZおよびEVOBのエントリ総数EVOBU_ENT_Nsから、ディスク100の何処からどのくらいのデータ量を読み出すか、ワークRAMをどのくらい確保すべきかなどを、TMAPのファイル本体を読み込む前に知る事により、読み出し準備が楽になる。
【0071】
図26は、EX_VTMAPTI、各EX_VTMAP_SRP#、および各EX_VTMAPIがどのように構成されるかの一例を説明する図である。VTMAPT(図25)はVTMAPTIとVTMAP_SRPTとVTMAP#1〜#nで構成されており、このVTMAPTI(図26)は、VMG_ID(VMGIの先頭に在るVMG_IDと同じ値)、VTMAPT_EA(VTMAPのエンドアドレス)、VERN(TMAPのバージョン情報)、IFO_LAST_MOD_TM (TMAPTの更新日時情報、HR_MANGR.IFOと同じ値)、VTMAP_SRPNs(サーチ情報の総数)で構成され、VTMAP_SRPTは1以上のVTMAP_SRP(各VTMAPのサーチ情報)で構成され、さらに、VTMAP_SRPはVTMAP_SA(VTMAPのスタートアドレス)と、EVOBU_ENT_Ns(EVOBU_ENTの総数)で構成され、VTMAPは、1以上のEVOBU_ENT(図27のEVOBU_ENT相当)で構成されている。
【0072】
図27は、各EVOBU_ENTの中身がどのように構成されるかの一例を説明する図である。各EVOBU_ENTは、該当エントリ内で最初の基準画像(I-pic)のサイズ1stREF_SZと、該当EVOBUの再生時間EVOBU_PB_TM(フィールド数で表示できる)と、該当EVOBUのサイズEVOBU_SZとを含んで構成されている。
【0073】
図30は、図28のETMAPI_GIおよびETMAPIがどのような情報を格納するのかの一例を説明する図である。各ETMAPI_GIはESOBUのエントリ数ESOBU_ENT_Nsを格納でき、各ETMAPIは1以上のESOBUのエントリESOBU_ENT#1〜#qを格納できるように構成されている。
【0074】
図31は、ESOBU_ENTの中身がどのように構成されるかの一例(タイプAの例)を示す。各STMAPI(図28)内のESOBU_ENTには、ESOBU_S_PKT_POS、ESOBU_SZなどがESOBUに属する値として記載されている。図31に示される様に、PTMベースの場合、ESOUB_ENTは、1st_Ref_PIC_SZ(論理ブロック(LB)単位で表され、エントリ内で最初のリファレンスピクチャ(Iピクチャ等)のESOBU先頭からの最終アドレス情報)、ESOBU_PB_TM(フィールド数で表されるESOBUの再生時間)、ESOBU_SZ(ESOBUに属するパケットグループの数で表されるESOBUサイズ)、ESOBU_S_PKT_POS(パケットグループ先頭からのパケット数で表され、ESOBUの先頭が入っているパケット位置)などを含んで構成される。
【0075】
なお、図31の各ESOBU_ENTは、上記の他にリザーブエリアを持っていてもよく、このリザーブエリアに例えばSH情報(ESOBU内にシーケンスヘッダSHが存在するか否かを示すフラグなど)を適宜記載することが可能である。このSH情報は、SHが番組内(ESOB内)で一定の場合、もしくはESOBUが必ずSHで始まるようにESOBUを区切る場合に採用できる。これにより、ESOBU内のSHを利用した再生が可能となる。
【0076】
タイムサーチの場合、PB_TMの累積で目的の時間のESOBUを求め、そのESOBUの先頭からのフィールド数で再生開始PTMを換算する。ここで、アドレスは目的のESOBUをK、目的のアドレスをAとすると、
A=ESOB__ADR_OFS
+目的のESのES_ADR_OFS+Σk-1N=1ESOBU_SZ(N)×16+1
となり、さらに、先頭のパケットはESOBU_S_PKT_POSの値のパケットとなり、このアドレスにアクセスすることになる。
【0077】
PATSベースのESOBU_ENT(図32のAT_ESOBU_ENT相当)は、Packet単位の場合とPacket Group単位の2種類が考えられる。Packet単位の場合、より正確なアドレスが得られるが、ESOBU_ENTのデータが増える。一方、Packet Group単位の場合はESOBU_ENTのデータは少ないが、Packet Group単位でしかアドレスを取れない。
【0078】
また、Packet単位の場合は、PATSベースのESOBU_ENTはAT_ESOBU_SZとAT_ESOBU_S_PKT_POSで構成でき、この場合は、AT_ESOBU_S_PKT_POSはPacket_Group内でのESOBUの先頭の位置をPacket数で示している。一方、Packet Group単位の場合は、PATSベースのESOBU_ENTはAT_ESOBU_SZで構成でき、この場合は、ESOB_S_PKT_POS、ESOB_E_PKT_POSは0に固定される。
【0079】
さらに、図23に例示されるようにESOB_SZがある場合、ES_E_ADR_OFSは以下の計算で求められるため、ES_S_ADR_OFSまたはES_E_ADR_OFSのどちらかが有れば良い。
【0080】
ES_E_ADR_OFS
=ESOB_SZ−(ES_S_ADR_OFS+Σk-1N=1ESOBU_SZ(N)+1)
ここで、ESOB_SZ>ES_S_ADR_OFS、ESOB_SZ>ESOBU_SZ等の式も成り立つ。
【0081】
図32はAT_ESOBU_ENT#の中身がどのように構成されるかの一例(タイプBの例)を示す。図32は、PATSベースの実際のESOBUの構造例である。各STMAPI(図29)内のAT_ESOBU_ENTには、AT_ESOBU_S_PKT_POS、AT_ESOBU_SZなどがAT_ESOBUに属する値として記載されている。図24のESOB_SZはESOBの先頭が属するPacket GroupからESOBの最後が属するPacket GroupまでのPacket Group数であったが、図32のAT_ESOBU_SZはESOBUの先頭のPacket GroupからESOBU最後のPacket Groupまでの数となる。また、図32のAT_ESOBU_S_PKT_POSは、ESOBUの切れ目とPacket Groupの切れ目の差をPacket数で表している。
【0082】
ここで、時間情報はPATSベースのため、ESOBの開始時間としてESOB_S_PATS、終了時間をESOB_E_PATSとし、PATSで表している。ただし、ESOB_E_PATSに関しては、最後のPacket Groupの最後のPacketのPATS(到着開始時間)であり、最終受信終了時間では無い。
【0083】
編集はESOBU毎に行い、再生開始時間(CIのCELL_S_PATS)を指定する。ESOBU毎の編集のため、ESOB_S_PATSは必ずESOBUの先頭と一致する。ただし、PATSはPATS_SSにより精度が示される。
【0084】
図32では図示しないが、ESOBの先頭のPATSと、所定の時間間隔情報TM_RNGで指定されたTMレンジ(時間間隔)との実際の差を27MHzのカウント値で表した時間オフセットTM_OFSをAT_ESOBU_ENTが持つような実施の形態も、可能である。ただし、このTM_OFS値が無い実施の形態も考えられる。
【0085】
なお、Packet Group単位で処理を行う場合では、ESOBUとPacket Groupの切れ目が一致するため、AT_ESOBU_S_PKT_POSは省略可能となる。さらに、ESOBにおいては、マルチビュー放送や降雨対応放送、さらに、複数番組同時録画対応として、ESOB_ES_GPI(Group Information)がある。
【0086】
図20は、ESOB_GPIがどのように構成されるかの一例を説明する図である。そのGPIは、ESOB_GPI_GI、1以上のGPI_SRP、および1以上のGPIなどを含んで構成される。
【0087】
図21は、ESOB_GPI_GI、GPI_SRP#、およびGPI#がどのように構成されるかの一例を説明する図である。ESOB_GPI_GIには、GPI_TY(0=レコーダ内で作成、1=放送時に定義)と、GPI_SRP_Ns(ES_GPI_SRPの数)が入り、GPI_SRPは、GPI_SA(GPIのスタートアドレス)で構成され、各GPIは、GPI_GI、各ES_PIDで構成され、GPI_GIはPIORITY(優先度:指定しない場合は全て0、1が最優先)と、ES_PID_Ns(該グループのESの数)で構成されている。ただし、ビデオPIDがある場合、同じGPには属さない。
【0088】
図33は、HDVR_VMGに含まれるPGC情報(EX_ORG_PGC情報およびEXプレイリスト情報/EX_UD_PGC情報)が、どのように構成されるかの一例を説明する図である。再生情報はEX_PGC情報で、通常のVRフォーマットと同じで、ORG_EX_PGC情報は録画時に機器が自動で作成し、録画順に設定し、UD_EX_PGC情報は、ユーザが自由に追加する再生順番に従って作成され、プレイリストと呼ばれている。この二つのフォーマットはEX_PGCレベルで共通で、そのEX_PGCフォーマットは図34〜図36に示される。
【0089】
図34は、EX_PGIの具体例を説明する図である。ここで、EX_PG情報には、このEX_PGが更新された日時情報が保存される。これにより、該EX_PGが何時編集されたかがわかる。また、テキスト情報として番組名用には、PRM_TXTが使用され、その他のテキスト情報を保存するためにIT_TXT領域にその他の情報(監督名、主演名、…)を保存し、該EX_PGIにはその保存したIT_TXTのSRP番号を設定して、リンクさせ、さらに、IT_TXTデータの方にもPG番号を設定している。ここで、EX_PG番号はこのディスクに記録し初めてからの絶対番号で、他のEX_PGを削除しても変わらないインデックス番号としている。
【0090】
さらに、EX_PGには、RSM_MRKIが存在し、各プログラム毎のレジュームマーカー(再生中断時にどこまで再生したかを示すマーカー)を設けており、再生を再開するための情報として、EX_CELL番号、再生開始PTMとそのマーカーを作成した日時情報、再生するビデオストリームのESI番号、再生するオーディオストリームのESI番号、Dual-Monoの場合の主副情報を設定している。これをタイトルレジュームとして使用する。
【0091】
また、さらに、PG_REP_PICTIが存在し、各PG毎の代表画像情報(タイトルメニューなどでサムネールとして表示する画像のマーカー)を設けており、セル番号、開始PTMとそのマーカーを作成した日時情報、再生するビデオストリームのESI番号を設定している。
【0092】
また、メーカー特有の機能を実現させるために設けられた製造業者情報(図4等のEX_MNFIT内に格納されるMNFI)を利用するため、図34のEX_PGIにMNFIのサーチポインタ番号(図示せず)を設定し、さらにMNFI情報でもEX_PG番号を設定することもできる。これにより、図34のEX_PGCI/EX_PGIと図示しないMNFI情報内のデータとのリンクを図ることができる。
【0093】
さらに、MNFI、IT_TXTの両方にPGの更新日時情報(図34のPGI内で末尾のプログラム更新日情報)を設定しておけば、メニュー表示時にその時刻(設定された更新日時と現在時刻)の一致をチェックする事により、他社メーカーの装置による編集かどうかを検証できる。
【0094】
図35は、EX_CIの具体例を説明する図である。EX_CELL情報(EX_CI)では、セルタイプにESOBの種別(STRA_CELL、STRB_CELL)が加わっており、ESOB番号、開始時間、終了時間、再生するパケットグループ番号(GP番号)などを指定できる。ここで、開始時間、終了時間は、再生時間(PTMベースの場合)またはPATS時間(PATSベースの場合)のどちらかで表すことができる。
【0095】
ここで、時間指定を再生時間=再生時の実時間にすると、送られてくるビットストリームをそのまま記録するストリームレコーディングでありながら、既存のDVDビデオレコーダ(DVD−VR)と同じアクセス方法が可能となる。すると、ユーザが再生時間で記録場所を指定できるため、ユーザ希望が完全に反映されることになる。ただし、この方法は、ストリームの内容が十分に解析可能な場合に採用できる方法であり、記録されたストリームの内容が十分にわからない場合には、ストリームパケット(デジタル放送録画ではMPEG−TSパケット)の転送時間単位で指定せざるを得ない。
【0096】
記録されたストリームの内容が十分にわからない状態で記録場所を再生時間で指定した場合、必ずしもIピクチャの先頭から再生を開始できるとは限らない。そこで、再生開始のフレームがIピクチャのフレームで無い場合は、その直前のIピクチャよりデコードを開始し、目的のフレームまでデコードをした所で再生映像の表示を開始する。こうすることで、ユーザには、あたかもユーザが時間指定したフレームから再生開始されたように見せることができる。
【0097】
なお、再生処理時などにおいて参照するIDは、再生するストリームを代表するストリームのPIDを設定する方法と、マルチビューTVなどの場合などで、コンポーネントグループのIDを設定する方法が考えられる(PIDの設定には、13ビットの実データで記載する方法、PMT内の順番を記載する方法、またはコンポーネントタグの値を記載する方法などがある)。また、参照するGRP番号(GRP_SRP番号)を入れ、切り換える方法も考えられる。なお、EX_PG、EX_CELLに特有のID番号(図35のEX_PGI#p、EX_CI#qなど)を付けることで、途中のプログラムやセルを削除しても変わらない番号でEX_PG、EX_CELLを指定できるようにしている。また、EX_CELL情報(EX_CI)には、再生するストリームのファイル番号(ESTR_FILE番号)、対応ESOBのESOBI_SRP番号を設定している。さらに、EX_CELL情報にはチャプターに相当するセルエントリポイントの情報C_EPI(Entry Point Information)がある。
【0098】
図36は、C_EPIの具体例を説明する図である。 C_EPIには、各セルタイプ毎に2種類あり、合計8種類となる。M_CELL_EPI_TY_Aは、EPI_TY(EPIのタイプ情報)とEPのついているPTMで構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。S_CELL_EPI_TY_Aは、EPI_TY(EPIのタイプ情報)、EPのついているS_EVOB_ENT番号で構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)で構成されている。
【0099】
STR_A_CELL_EPI_TY_A(ESOBのTYPE A)は、EPI_TY(EPIのタイプ情報)、EPのついているPTM、そのEPのついているESのESI番号、オーディオESのESI番号、Dual-Monoの場合のその主/副情報で構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。
【0100】
STR_B_CELL_EPI_TY_A(ESOBのTYPE B)は、EPI_TY(EPIのタイプ情報)、EPのついているPATS、そのEPのついているESのPIDで構成され、TY_Bはさらに、PRM_TXTI(テキスト情報)、REP_PIC_PTM(サムネール用ポインタ)で構成されている。
【0101】
図37は、ESOB(またはEVOB)のPTM(Presentation Time)がどのように構成されるかの一例を説明する図である。この時間情報PTMは、図19に示した連続セグメントCNT_SEGの数(ESOB先頭からのCNT_SEGの数)を示す情報CNT_SEGNと、90kHzベースで粗くカウントするPMT_baseと、27MHzベースで細かくカウントするPMT_extensionを含んで構成されている。PTMによる実際の時間は、PMT_baseにPMT_extensionを足した値で表現される。 ESOBには、このPTM(PMT_base+PMT_extension)をベースに再生管理されるタイプAと、PATS(Packet Arrival Time)をベースに再生管理されるタイプBがある。
【0102】
ESOB先頭からのCNT_SEGの数を示す情報CNT_SEGNは、例えば次のように設定できる。すなわち、タイプAのESOBの場合、CNT_SEGNの値が有効となるが、ESOB以外ではCNT_SEGNに0を設定する。有効となる場合のCNT_SEGNの値は、例えばCNT_SEGN=4で該当ESOB内のCNT_SEGが0個であることを表し、CNT_SEGN=5で該当ESOB内のCNT_SEGが1個であることを表し、CNT_SEGN=6で該当ESOB内のCNT_SEGが2個であることを表し、CNT_SEGN=7で該当ESOB内のCNT_SEGが3個であることを表すことができる。
【0103】
上記はESOBの場合の例であるが、EVOBの場合についてもPTMを同様のデータ構造で構成できる。
【0104】
図43は、この発明の一実施の形態に係るデータ構造を利用して、情報記録媒体(光ディスク、ハードディスク等)にAV情報(デジタルTV放送プログラム等)を記録し再生する装置の一例を説明するブロック図である。この録再装置は、図43に示すように、MPU部、表示部、デコーダ部、エンコーダ部、TVチューナ部、STC部(System Time Counter)、D−PRO部、一時記憶部、ディスクドライブ部、キー入力部、Vミキシング部、フレームメモリ部、TV用D/A部と、地上波デジタルチューナ部と、1394I/F部、イーサネット(登録商標)I/F部、リモコン受信部と、さらに、STB部(BSデジタルチューナ等)、緊急放送検出部、HDD部により構成されている。この構成では、録再DVDレコーダにストリーマの機能を追加する形で構成している。
【0105】
エンコーダ部内には、A/D部、ビデオエンコード部、オーディオエンコード部、SPエンコード部、フォーマット部、バッファメモリ部より構成され、デコード部は、分離部、ビデオデコード部、SPデコード部、オーディオデコード部、TSパケット転送部、V−PRO部、オーディオ用D/A部より構成されている。さらに、STB部には、デジタル放送を受信するためのアンテナが付いている。なお、STC部は27MHzベースでカウントするように構成されている。
【0106】
記録時の信号の流れは、STB部(または地上波デジタルチューナ)で受け取ったTSパケットデータは、フォーマッタ部で、パケットグループ化されワークRAMへ保存し、一定量たまった時点でディスクに記録される。また、このフォーマッタ部90には、PATS用の内部カウンタ90aが接続されている。TSパケットの到着時間はPATS用のカウンタ90aでカウントし、そのカウント値を各TSパケットの先頭に付けて、バッファリングされる。このカウンタ90aはPCR(またはSCR)によりカウント間隔の微調整は行うことができるが、STC102のようにPCR(またはSCR)の値をロードする事は無い。この時の動作は、TSパケットを受信すると170パケットづつグルーピング化し、パケットグループヘッダを作成する。
【0107】
その場合、Packet Groupの先頭のPacketのPATSの上位2バイトのみヘッダに入れ、それ以外のPATSは下位4バイトのみがTSパケットとともに(TSパケットの前に)保存される。また、地上波チューナやライン入力から入力されたアナログ信号は、A/D部でデジタル変換される。そのデジタル信号は、各エンコーダ部へ入力される。ビデオ信号はビデオエンコード部へ、オーディオ信号はオーディオエンコード部へ、文字放送などの文字データはSPエンコード部へ入力され、ビデオ信号はMPEG圧縮され、オーディオ信号はAC3圧縮またはMPEGオーディオ圧縮がなされ、文字データはランレングス圧縮される。
【0108】
各エンコーダ部(VR用)から、圧縮データがパック化された場合に2048バイトになるようにパケット化されて、フォーマッタ部へ入力される。フォーマッタ部では、各パケットがパック化され、さらに、プログラムストリームとして、多重化され、D−PRO部へ送られる。
【0109】
D−PRO部では、16Logical Bock毎にECCブロックを形成し、エラー訂正データを付け、ドライブ部によりディスクに記録される。ここで、ドライブ部がシーク中やトラックジャンプなどの場合のため、ビジィー状態の場合には、HDDバッファ部へ入れられ、DVD-RAMドライブ部の準備ができるまで待つこととなる。さらに、フォーマッタ部では、録画中、各切り分け情報を作成し、定期的にMPU部へ送る(GOP先頭割り込みなど)。切り分け情報としては、EVOBU(ESOBU)のパック数、EVOBU(ESOBU)先頭からのIピクチャのエンドアドレス、EVOBU(ESOBU)の再生時間などである。
【0110】
また、再生時の信号の流れは、ディスクからドライブ部よりデータを読み出し、D−PRO部でエラー訂正を行い、デコード部へ入力される。MPU部は入力されるデータがVRデータか、SRデータかの種別を判定し(Cell TYPEより判定する)、デコーダ部に再生前にその種別を設定する。SRデータの場合、MPU部は再生するEX_CELLIより、再生するPIDを決め、PMTより、再生する各アイテム(ビデオ、オーディオ等)のPIDを決め、デコーダ部へ設定する。デコーダ部は、そのPIDを元に、分離部で各TSパケットを各デコード部へ送る。さらに、TSパケット転送部へおくり、到着時間にしたがって、STB部(1394I/F部)へTSパケットの形で送信する。各デコード部は、デコードを行い、D/A部でアナログ信号に変換し、TVで表示する。VRデータの場合、分離部は、固定のIDに従い、各デコード部へ送る。各デコード部は、デコードを行い、D/A部でアナログ信号に変換し、TVで表示する。
【0111】
なお、再生時は、ディスクから読み出したパックデータを分離部で解析し、TSパケットが入っているパックの場合には、TSパケット転送部へ送り、さらに、その後、各デコーダへ送って、再生を行う。STBへ転送する場合(あるいはデジタルTV等の外部機器へ送信する場合)は、TSパケット転送部は、そのデータを到着時と同じ時間間隔で、TSパケットのみを転送する。STB部は、デコードを行い、AV信号を発生させ、そのAV信号をストリーマ内ビデオエンコーダ部を通して、TVへ表示する。
【0112】
図43の装置で用いる媒体100(100a)の特徴を簡単に纏めると、次のようになる。すなわち、この媒体は、管理領域130とデータ領域131で構成され、データ領域にはデータが複数のオブジェクトデータ(ESOB)に分かれて記録され、それぞれのオブジェクトデータはデータユニット(ESOBU)の集まりで構成される。そして、1つのデータユニット(ESOBU)は、MPEG−TSに準じたデジタル放送信号をTSパケット毎に複数パケットでパケットグループ化したパケットグループにより構成される(図1、図33参照)。一方、前記管理領域130は再生手順を管理する情報としてEX_PGC情報(EX_PGCI)を持ち、このEX_PGC情報はEX_CELL情報(EX_CI)を含んで構成される。さらに、管理領域130内にオブジェクトデータ(ESOB)を管理する情報を持つ。
【0113】
図43の装置は、上記のようなデータ構造を持つ媒体100(100a)に対して、ビデオレコーディングの他にストリームレコーディングを行うことができる。その際、TSパケットのストリーム内からプログラムマップテーブルPMTやサービス情報SIを取り出すために、MPU部80はサービス情報取り出し部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。またこのサービス情報取り出し部で取り出した情報を元に、属性情報(PCRのパック番号あるいはPCRのLB数番号など)を作成する属性情報作成部(図示せず;管理データ作成部80Bの一部を構成するファームウエア)を持つように構成される。
【0114】
図44は、図43の装置の全体の動作の一例を説明するフローチャート図(全体動作処理フロー)である。ここでのデータ処理は、図42に示すように録画処理、再生処理、データ転送処理(STBへのデジタル出力処理など)、番組設定処理、編集処理の5通りとなる。例えば図43の装置の電源がオンされると、MPU部80は、(工場出荷時またはユーザが設定した後の)初期設定を行い(ステップST10)、表示設定を行って(ステップST12)、ユーザ操作を待つ。ユーザがキー入力部103またはリモコン103aからキー入力を行うと(ステップST14)、MPU部80はそのキー入力の内容を解釈する(ステップST16)。この入力キー解釈の結果に応じて、以下の4つのデータ処理が、適宜実行される。
【0115】
すなわち、キー入力が例えばタイマ予約録画設定のキー操作であれば、番組設定処理に入る(ステップST20)。キー入力が録画開始のキー操作であれば、録画処理に入る(ステップST22)。キー入力が再生開始のキー操作であれば、再生処理に入る(ステップST24)。キー入力がSTBへデジタル出力させるキー操作であれば、デジタル出力処理に入る(ステップST26)。編集処理のキー操作であれば、編集処理に入る(ステップST28)。
【0116】
ステップST20〜ST28の処理は、そのタスク毎に適宜並列処理される。例えば、再生処理中(ST24)にSTBへデジタル出力する処理(ST26)が並列に実行される。あるいは、タイマ予約録画でない録画処理中(ST22)に新たな番組設定処理(ST20)を並列に処理するように構成することができる。あるいは、高速アクセス可能なディスク記録の特徴を生かし、録画処理(ST22)中に再生処理(ST24)とデジタル出力処理(ST26)を並列処理するように構成することもできる。HDDへの録画中にディスクの編集処理(ステップST28)を行うように構成することも可能である。
【0117】
図45は、編集処理(ST28)の一例を説明するフローチャート図(編集動作処理フロー)である。編集処理に入ると、編集内容に応じて、4つの処理(A〜Dのいずれか)に入ることができる(ステップST280)。エントリポイント編集処理(ステップST282A)、コピー/移動処理(ステップST282B)、削除処理(ステップST282C)、あるいはプレイリスト作成処理(ステップST282D)が済むと、この編集によるプログラム更新の日時が、各管理情報(EX_PGI、EX_IT_TXT、EX_MNFI)に設定される(ステップST284)。
【0118】
なお、プログラム情報EX_PGI、セル情報EX_CI、あるいはEVOB、ESOBのどれかが変更されたときに、このプログラム更新日時(図32)の設定を行うようにしてもよい。ここで、EVOBIおよび/またはESOBIが変更された場合は、EVOBIおよび/またはESOBIの編集時間(EDIT_TIME)をESOB_EDIT_TIME等(図示せず)に設定できる。もしくは、このプログラム更新日時(図32)の設定を行うようにしてもよい。
【0119】
ついでながら、ST284の処理において、ST282A〜ST282Dの何れかの操作を行った機器のメーカーIDを、図32の編集者ID(LAST_MNF_ID)13326に設定してもよい。この編集者IDは、PGI、CI、SOB(またはVOB)のどれかが変更されると、その都度、その時に用いた機器のID情報により、設定(または更新)できる。
【0120】
図46および図47は、図43の装置の録画動作の一例を説明するフローチャート図である。ストリーム録画時のデータ処理は、以下のようになる:
d1)まず、番組設定処理でEPG(Electronic Program Guide)を使用して録画する番組を決めておき、受信を開始し、その決めた番組の録画を行う;
d2)MPU部80は、キー入力部103より録画命令受けると、ドライブ部51を介してディスク100(またはHDD部100a)から管理データを読み込み、書き込む領域を決定する。このとき、ファイルシステムをチェックし、録画可能かどうかを判断し、録画可能でない場合はその旨をユーザに示して、処理を中止する。録画可能の場合は、録画前処理を行う(図46のステップST105)。これにより、MPU部80は、記録する位置を決定し、管理情報(HDVR_MG等)を作成して、各管理領域に必要な情報の書き込みを行なう。その際、録画対象がデジタル放送でない(例えばアナログビデオ入力またはアナログTV放送)ときは(ステップST106ノー)、録画フォーマットとしてはストリームレコーディング(SR)でなくビデオレコーディング(VR)が採用できる。この場合はVR録画処理へ移行する。
【0121】
d3)録画対象がデジタル放送の場合は(ステップST106イエス)、MPU部80は録画対象のストリームが解析可能か否かチェックする。MPU部80は、解析可能な場合は(ステップST107イエス)PTMベースのタイプAストリームとして管理情報が作成されるような設定を行ない(ステップST109A)、解析不能な場合は(ステップST107ノー)PATSベースのタイプBストリームとして管理情報が作成されるような設定を行なう(ステップST109B)。しかる後、ストリームデータ(ビデオデータ)の書き込みスタートアドレスをドライブ部51に設定し、データを記録する準備を行う(ステップST112);
d4)この準備段階で、STC部102に対してカウント時間のリセットを行う。ここで、STC部102はシステムのタイマーであり、このSTCの値を基準に録画および/または再生が行われる。
【0122】
d5)録画する番組のPATを読み込み、目的の番組のPMTを取り込むためのPIDを決定し、目的のPMTを読み込み、デコードすべき(録画すべき)各データ(ビデオ、オーディオ)のPIDを決定する。このとき、MPU部80のワークRAM部80AにPATおよびPMTを保存し、かつこれら(PAT、PMT)を管理情報(HDVR_MG)に書き込む。その際、ファイルシステム(図3参照)に、VMGファイルのデータを書き込み、VMGI(図4ではHDVR_MGI)に必要な情報を書き込む;
d6)各部へ録画設定を行う(ステップST114)。このとき、フォーマッタ部90へ、各データの切り分けの設定や、TSパケットの受け取り設定を行う。また、このとき、記録すべきデータのPIDを設定し、目的のビデオストリームのみ記録するようにする。また、バッファ91へTSパケットの保持を開始するように設定する(ステップST116)。すると、フォーマッタ部90は次のように動作を開始する。
【0123】
d7)PMTよりESOB_ESIを作成する(図47のステップST120);
d8)続いて録画対象のTSパケットのストリームをバッファ91に取り込む(ステップST130)。バッファ91内のデータが一定量たまった場合は(ステップST140イエス)、D−PRO部52を通してECC処理を行い、ECC処理されたデータをディスク100(および/または100a)に記録する(ステップST142);
d9)録画中、定期的に(フォーマッタ部90のバッファRAM91が一杯になる前に)、切り分け情報をMPU部80のワークRAM80Aに保存する(ステップST144イエス;ステップST146)。ここでの切り分け情報は、ESOBUの切り分け情報で、ESOBUの先頭のアドレス、ESOBUのパック長、I-Picの終了アドレス、ESOBUの到着時間(ATS)等である。
【0124】
d10)切り分け情報をワークRAM80Aに保存(ステップST146)したあと、あるいは切り分け情報を保存するタイミングでないときは(ステップST144ノー)、MPU部80はESOBを切るかどうかを判断し、切る場合(ステップST147イエス)はESOB切り処理(図48)を実行する。
【0125】
d11)録画終了かどうか(録画終了キーが入力されたかどうか、またはディスク(100/100a)の残り容量が無くなったかどうか)をチェックし、終了時には(ステップST148イエス)、フォーマッタ部90より残りの切り分け情報を取り込み、ワークRAM80Aへ追加し、それらのデータを管理データ(VMGIまたはHDVR_MGI)に記録し、録画時の平均の録画レートを記録し、さらに、ファイルシステムに残りの情報を記録する(ステップST150);
d12)終了で無い場合は(ステップST148ノー)、d8)に移行し、データの取り込み及び再生を続けて行うようにする。
【0126】
ここで、録画中のストリームデータの内容をTV等に表示するために、録画対象のストリームデータをD−PRO部52へ転送すると同時にデコーダ部59へも送り、同時録画モニタを行なうように構成してもよい。この場合、MPU部80はデコーダ部59へ再生時の設定を行い、その後はデコーダ部59が自動的に再生処理を行う。D−PRO部52は、録画対象のストリームデータを16パック毎にまとめてECCグループとし、ECCをつけてドライブ部51(および/またはHDD100a)へ送る。ただし、ドライブ部51がディスク100への記録準備が出来ていない場合には、一時記憶部53へ転送し、データを記録する準備が出来るまで待ち、用意が出来た段階でディスク100への記録を開始する。ここで、一時記憶部53は高速アクセスで数分以上の記録データを保持するため、大容量メモリが想定される。なお、MPU部80は、ディスク100のファイル管理領域などを読み書きするために、D−PRO部52へマイコンバスを通して直結されている。
【0127】
記録時の信号の流れを簡単に整理すると、次のようになる。すなわち、STB83(または地上波デジタルチューナ89)で受信されたMPEG−TSパケットのデータは、フォーマッタ部90でパケットグループ化されてバッファ91へ保存され、このバッファ91にデータが一定量たまった時点(1またはその整数倍のCDA分がたまった段階で)で、ディスク(100および/または100a)に記録される。
【0128】
図48は、ESOB切り処理(ST160)の一例を説明するフローチャート図(ESOB切り処理フロー)である。ESOB切り処理の一例を以下に説明する:
e1)連続して記録するかどうかをチェックし、連続して記録しない場合は(ST1600ノー)この処理を終了する;
e2)STCが連続するかどうかをチェックし、連続しない場合は(ST1602ノー)、連続記録フラグをセットし、STC連続フラグはリセットし、STC_OFSにそのときのオフセット値を設定する(ST1610)。連続する場合は(ST1602イエス)、e5)へ移行する。
【0129】
e3)PATSが連続するかどうかをチェックし、連続しない場合は(ST1612ノー)、PATS連続フラグはリセットし、PATS_OFSにそのときのオフセット値を設定し(ST1614)、e7)へ移行する。
【0130】
e4)PATSが連続する場合は(ST1612イエス)、PATS連続フラグをセットし、STC_OFSに0を設定し(ST1616)、e7)へ移行する;
e5)PATSが連続するかどうかをチェックし、連続しない場合は(ST1604ノー)、連続記録フラグをセット、STC連続フラグをセット、PATS連続フラグはリセットし、STC_OFSに0を、PATS_OFSにオフセット値をそれぞれセットし(ST1608)、e8)へ移行する。
【0131】
e6)PATSが連続する場合は(ST1604イエス)、連続記録フラグをセット、STC連続フラグをセット、PATS連続フラグはセットし、STC_OFSに0を、PATS_OFSに0をそれぞれセットし、e7)へ移行する;
e7)該当ESOBのESTR_FIを設定し(ST1618)、この処理を終了する。
【0132】
図49は、バッファ取り込み処理(ST130)の一例を説明するフローチャート図(PATSを6バイト管理する場合のバッファ取り込み処理フロー)である。記録時は、STB部(または地上波デジタルチューナ)で受け取ったTSパケットデータは、フォーマッタ部でパケットグループ化され、ワークRAMへ保存され、一定量たまった時点(1またはその整数倍のCDA分がたまった段階で)でディスクに記録される。この時の動作は、TSパケットを受信すると170パケットづつグルーピング化し、パケットグループヘッダを作成する。具体的には以下のようになる。
【0133】
f1)TSパケットを受信する(ステップST1300);
f2)STCが1周(Wrap-around)したか否かをチェックし、1周した場合(ステップST1301イエス)は、その1周した時点でのTSパケットの位置情報より、CNT_SEGを作成する。これにより、STC部102のタイムカウントが1周した時点でのTSパケットの位置情報CNT_SEG_S_PKT_POS(図19参照)が管理情報CNT_SEGIに登録される(ステップST1303)。1周していない(STCは連続カウント中)場合(ステップST1301ノー)、あるいはCNT_SEGIの登録が済むと、次の処理に移る。
【0134】
f3)パケットグループの先頭の場合(ステップST1306イエス)は、Sync_Pattern:00ffa5a5を設定し(図49のステップST1308Aまたは図50のステップST1308B)、先頭でない場合(ステップST1306ノー)はf6)へ移行する;
f4)図49のステップST1308Aにおいて、TSパケットの到着時間をPATSとして、PATSの下位4バイトをTSパケットの前に配置し、先頭のPATSの上位2バイトをFIRST_PATS_EXTとしてPacket Group Headerに設定する。
【0135】
f5)また、図49のステップST1308Aにおいて、PATS_SSに0を設定し、f7)へ移行する;
f6)TSパケットデータエリアに取り込んだTSパケットにおいて、PATSの下位4バイトをTSパケットの前に付け(ステップST1317C)、Packet Groupのデータリアに設定する(ステップST1317D)。
【0136】
f7)パケットグループが終わったかどうか(170個のTSパケットをグルーピングし終えたかどうか)を判定し、終わってない場合(ステップST1322ノー)はf1)へ戻る。パックグループが終わった場合(ステップST1322イエス)は、PKT_GRP_GI設定処理(ステップST1340)、CCI処理(ステップST1330)、MNFI処理(ステップST1350)を行い、1パケットグループ分のグループデータをバッファRAM91内に一時保存する(ステップST1332)。
【0137】
図50は、図49の別例を説明するフローチャート図(PATSを4バイト管理する場合のバッファ取り込み処理フロー)である。図49と異なる処理は、以下の部分である。すなわち、PATSの精度が4バイトの場合、図50のステップST1308Bで示すように、f4)、f5)でのFIRST_PATS_EXTの処理が無くなり(又はFIRST_PATS_EXTに0が設定され)、PATS_SSの値が01となる。
【0138】
図51は、パケットグループ一般情報設定処理(ST1340)の一例を説明するフローチャート図(PKT_GRP_GI設定処理フロー)である。このPKT_GRP_GI設定処理を図51に従って説明する:
g1)パケットタイプを調べ、MPEG−TSパケットの場合はPKT_GRP_TYに01を設定し、それ以外の場合は、そのタイプにあった値をPKT_GRP_TYに設定する(ステップST13400);
g2)該当規格のBOOKバージョンに対応した値(例えば“11”)をVERSIONに設定し、スタッフィングが行われたかどうかを示すSTUFビットを(例えば“0”に)設定する(ステップST13400);
g3)STUFビットに“0”が設定されているときは、Valid_PKT_Ns(Packet Group内の有効Packet数と先頭のPacketに対するPATSの上位2バイトで構成されている)に“0xaa”を設定する(ステップST13406)。
【0139】
図52はストリーム情報(ESI)作成処理(ST120)の一例を説明するフローチャート図(ESI設定処理フロー)である。以下、ESOB_ESIの設定処理例を説明する:
h1)PSI、SIを調べ、設定されているストリーム数を調べる(ステップST1201);
h2)設定されているストリーム数の数だけh4)〜h5)を繰り返す(ステップST1230イエスの場合);
h3)PSI、SIよりストリームタイプを調べ(ステップST1203)、ビデオストリームか、オーディオストリームか、その他のストリームかどうかを判定し、次のストリームチェックに移行する;
h4)その際、ストリームタイプをMPEG1ビデオ、MPEG2ビデオ、MPEG1オーディオ、MPEG2オーディオ…等の種別に分け、それぞれの種別応じて、内部のデータをチェックし、各属性情報を読み出す。
【0140】
h5)ビデオストリームの場合(ステップST1213A)、ES_TY=0とし、各属性情報を設定し、特に解像度データ、アスペクト情報等を取り出し、V_ATRを作成し(ステップST1213C)、h8)へ移行する;
h6)オーディオストリームの場合(ステップST1215A)、ES_TY=0x40とし、各属性情報を設定し、特にサンプリング周波数、チャンネル数等を取り出し、A_ATRを作成し(ステップST1215C)、h8)へ移行する;
h7)その他のストリームの場合(ステップST1217A)、ES_TY=0x80とし、各属性情報を設定し(ステップST1217C)、h8)へ移行する;
h8)コピー情報を取り出し、CP_CTL_INFORMATION(CCI)を作成する(ステップST1220);
h9)属性情報を元に新たにESIを設定し、次のストリームチェックに移行する(ステップST1230ノーの場合)。
【0141】
次に、ESTR_FIの作成処理例を説明する。図53は、録画終了処理(ST150)におけるストリームファイル情報(ESTR_FI)作成処理の一例を説明するフローチャート図である;
j1)ESOBIを1つ増やすため、サーチポインタ(ESOBI_SRP)を1つ増やし、そのための領域を確保し、PKT_TYに0:MPEG_TSを設定する(ステップST1500);
j2)録画時間をESOB_REC_TMに設定する(ステップST1502A)。ここで、装置内部の時計は、TDT(Time Data Table)により設定・補正が行なわれ、常に正確な時間が得られる;
j3)その際、ESOB_S_PTMおよびESOB_E_PTMをストリーム内より取り出し、STCの不連続情報(例えば図19のCNT_SEGN)を調べて、j1)で増やしたESOBIに対応するESOBの、スタートPTMおよびエンドPTMを設定する(ステップST1502A)。
【0142】
j4)ストリームの種類がTSストリーム(ARIB、DVB)の場合は(ステップST1506イエス)、AP_PKT_SZに188を設定し、PKT_GRP_SZに16を設定する(ステップST1508A)。そうでない場合は(ステップST1506ノー)、放送方式にあった値をAP_PKT_SZに設定する(ステップST1510);
j5)PKT_TYにMPEG_TSを設定する(ステップST1514);
j6)PATより、TS_ID、NETWORK_PID、PMT_ID(該ESOBで使用しているPMTのPID:PIDは13ビットの実データで記載する方法とPMT内の順番を記載する方法の2通りが考えられる)を設定する(ステップST1514);
j7)PMTより、Program_Number(PMT内のSERVICE_ID)、PCR_PID、を設定し、さらに、FORMAT_ID、VERSIONに付いては、内部チューナの場合は、機器内でデフォルトの方式とし、外部デジタル入力の場合は、デジタル入力より送られてくるRegistration_Descriptorの値を設定する。TMAPタイプに従ってESOB_TYを設定する(ステップST1516A)。
【0143】
j8)さらに、録画したESの数を設定する。(PMTには放送している全てのESの情報:数が設定されているが、録画時に全てのESを記録しているとは限らないため、記録したESの数を設定する。)
j9)録画を開始したLBアドレスをADR_OFSに設定し(ステップST1550A)、デフォルトのPIDを設定する。ここで、デフォルトのビデオのPIDとは、コンポーネントタグ値が一番若いビデオの値のもの、もしくは、マルチビューTVの場合、メインのコンポーネントグループに記載されているコンポーネントタグに相当するストリームのPIDが相当する;
j10)GPI設定処理(ステップST1530)、TMAP設定処理(ステップST1540)等を行い、各切りわけ情報を元にストリーム毎にTMAPIを作成する;
j11)PATSの精度に従い、PATS_SSを設定する(Packet_Group Header内の値と同じ値に設定)(ステップST1551);
j12)編集日時を設定する(ステップST1554)。
【0144】
図54は、GPI設定処理ST1530の一例を説明するフローチャート図である。このGPI設定処理は、以下のように行なうことができる:
k1)ストリームのタイプを調べる(ステップST15300B);
k2)複数番組を1ストリームにした場合(ステップST15300Bイエス)、ESOB_TYにGPIありとし、GPI_TYに0、全PRIORITY=0と設定し、1番組を1GPIで構成し、グループ数を設定して(ステップST15302B)、k5)へ移行する;
k3)降雨対応放送の場合(ステップST15300Bイエス)(ステップST15304Bイエス)、ESOB_TYにGPIありとし、GPI_TYに40h、高階層をPRIORITY:1とし、そのほかをPRIORITY:2と設定する。階層毎に1GPIで構成しグループ数を設定して(ステップST15306B)、k5)へ移行する。
【0145】
k4)マルチビュー放送の場合(ステップST15308Bイエス)、ESOB_TYにGPIありとし、GPI_TYに40h、高階層をPRIORITY:1とし、そのほかをPRIORITY:2と設定し、1ビューに1GPIで構成する(ステップST15310B)。マルチビュー放送でない場合は(ステップST15308Bノー)、ES_TMAP_Nsに1を設定し、ESOB_TYにGPIなしを設定する(ステップST15321B)。そして、まだ他にグループ(GP)とすべきESがあるかどうかを判断し、ある場合(ステップST15314Bイエス)はk1)へ移行し、無い場合は(ステップST15314Bノー)グループ数を設定し、k5)へ移行する;
k5)他のグループ(GP)があるかどうかをチェックし、ある場合はk1)へ移行し、無い場合は現在選択されているPIDのグループでプレイリストを作って登録し(ステップST15316B)、この処理を終了する;
k6)これにより、現在選択されているグループで再生をする場合には、ステップST15316Bで自動作成されたプレイリストを再生することが可能となる。
【0146】
図55は、のTMAP設定処理ST1540を説明するフローチャート図である。TMAP設定処理の一例について、以下に説明する:
m1)ESOB/EVOBの構造を決定する(ステップST15400);
m2)ESOBの場合、TMAP_TYを決定する(ステップST15403)。このESOBがPTMベースの場合は、GP数を考慮し、STMAPを作成するESを決定し、そのESの数(ビデオのESの数)をTMAP数とし、TMAP毎に作成するES_PIDを設定する。(ただし、1GPに必ず1TMAPが付く必要は無い。このTMAPを付け無い場合は同じESOBの他のES_TMAPを利用し、再生、サーチ、特殊再生等を行う。)一方、PATSベースのESOB(AT_ESOB)あるいはEVOBの場合、1つTMAPを追加する(PATSベースのTMAPのデータ構造については図24参照);
m3)切り分け情報よりESOB(PTMベース)/EVOB開始時間終了時間、TMAP毎の開始時間終了時間、エントリ数、ESOB(PATSベース)の先頭のPacketの到着時間、最終Packetの到着時間等を設定する(ステップST15405)。
【0147】
m4)TMAPTを追加し、切り分け情報を元にエントリ情報の作成処理を行なう(ステップST15407)。すなわち、ESOBのTYPE Aの場合は、1st_REF_PIC_SZ(先頭のI-Picの終了アドレス、I-Picが無い場合は0をセット)、ESOBU_SZ(ESOBUのサイズをPacket Group単位で示す)、ESOBU_S_PKT_POS(Packet Group内でのESOBUの先頭の位置)等を設定する。一方、ESOBUのTYPE_Bの場合は、ESOBU_SZ(ESOBUのサイズをPacket Group単位で示す)、ESOBU_S_PKT_POS(ESOBUの先頭のPacket Group内での位置(PKT単位))を設定する;
m5)ESOBU_SZ、ESOBU_PB_TMを作成する。ここで、TMAPT情報は別ファイルの場合とIFOファイルの最後に追加する場合が考えられる;
m6)編集が行われた場合は編集したTMAPの更新日時情報をSTMAP_LAST_MOD_TM(またはVTMAP_LAST_MOD_TM)に設定する(ステップST15409)。
【0148】
図56は、EVOB/ESOB構造設定処理ST15400を説明するフローチャート図である。このEVOB/ESOB構造設定処理の一例を以下に説明する:
n1)録画した録画時間を調べ(ステップST154000)、録画時間が2時間以下の場合はn2)に移行し、2時間から4時間の場合はn3)へ移行し、4時間以上はn4)へ移行する(ステップST154001);
n2)EVOB/ESOB_PB_TM_RNGに0を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが0.4s〜1.0sになる様にEVOBU/ESOBU_ENTを作成し(ステップST154002)、n5)へ移行する;
n3)EVOB/ESOB_PB_TM_RNGに1を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが1.0s〜2.0sになる様にEVOBU/ESOBU_ENTを作成し(ステップST154003)、n5)へ移行する;
n4)EVOB/ESOB_PB_TM_RNGに2を設定し、切り分け情報(0.4s〜1.0sの情報)より、ESOBUが2.0s〜3.0sになる様にEVOB/ESOBU_ENTを作成する(ステップST154004);
n5)この処理を終了する。
【0149】
図57は、CP_CTL_INFO(CCI)作成処理ST1220を説明するフローチャート図である。このCP_CTL_IFOの設定処理の一例を以下に説明する:
p1)最新のPMT、EIT内にコピー情報があるかどうか調べ、ある場合は(ステップST12200イエス)そのコピー制御記述子を取り出し(ステップST12204)、その情報を元にコピー情報を構成して設定し(ステップST12206)、p3)へ移行する;
p2)コピー情報がない場合は(ステップST12200ノー)、コピーフリーとして設定する(ステップST12202);
p3)最新のPMT、EIT内にコンテンツ利用記述子があるかどうか調べ、ある場合は(ステップST12208イエス)そのコンテンツ利用記述子を取り出し(ステップST12212)、その情報を元にICT、EPNを設定する(ステップST12214A);
p4)コンテンツ利用記述子がない場合は(ステップST12208ノー)、コピーフリーとしてICT、EPNを構成する(ステップST12210)。なお、ステップST12214AあるいはステップST12210におけるICT、EPN、リテンションなどについては、図40を参照したCCIの説明でも述べている。
【0150】
さらに、CCI設定処理の別例について、図57を用いて説明する:
1)最新のPMT、EIT内にコピー情報があるかどうか調べ、ある場合は、その情報を元にコピー情報を構成して設定し(ステップST12206)、3)へ移行する;
2)受信したTSパケット内にコピー情報がない場合は、前回のパックと同じ情報をコピー情報として構成する(ここはステップST12202と異なる);
3)最新のPMT、EIT内にコンテンツ利用記述子があるかどうか調べ、ある場合は、パケットグループの途中で変化した場合、その変化した所から新たなパケットグループとするように前のパケットグループにダミーデータを挿入し、変化後からを新たなパケットグループとするようにし、その情報を元にCCIを設定する(ここはステップST12214Aと異なる)。このとき、PKT_GRP_GI:STUFに1を設定し、有効なPacketの数をPKT_GRP_GI:VALID_PKT_Nsに設定する;
4)受信したTSパケット内にコピー情報がない場合は、コピーフリーとしてCCIを構成する。
【0151】
図58は、録画終了処理(ST150)におけるプログラムチェーン(PGC)作成処理(プログラム設定処理を含む)の一例を説明するフローチャート図(プログラム設定処理フロー)である。以下、PGC作成処理例を説明する:
q1)ディスクの最初の記録かどうかをチェックし、最初の場合は(ステップST1600Zイエス)新たにORG_PGCを作成し(ステップST1602Z)、最初で無い場合は(ステップST1600Zノー)既に記録してあるPGC(ORG_PGC)の後にプログラムPGを追加する様に設定する(ステップST1604Z);
q2)PG_TYに消去許可:0を設定し、Cell_NsにCELLの数を設定し、ビデオのESI番号も設定する(ステップST1700Z)。
【0152】
q3)ステップST1700Zの設定において、記録するデジタル放送がARIBの場合、EIT内の短形式イベント記述子のlanguage_codeが"jpn"のときは、VMG_MATのCHRに0x12を設定し、PRM_TXTIの第二領域にEVENT_NAMEに設定し、REP_PICTIに代表画像の情報を設定する;
q4)LAST_MNF_IDに該当機器のメーカーIDを設定する(ステップST1702Z)。このメーカーIDの値は、PGI、CI、EVOBなどの変更があった場合に、その変更を行った機器のメーカーIDを設定し、最後に編集、記録したのがどのメーカーであるかを判別するために設定するものである。このメーカーIDにより、違うメーカーの機器でPGI、CI、EVOBなどが変更された場合の対応が取りやすくなる。
【0153】
q5)ステップST1700Zの設定において、さらに、PG_INDEXにPGの絶対番号を設定し、他のアプリケーションソフトウエアなどから参照する場合にPG単位での参照が可能にしている。さらに、該PG更新日時情報を記録する。この時、該当機器で対応している(メーカーのコードが一致した)MNFIおよび/またはIT_TXTがある場合には、その対応するデータの更新日時情報も設定する;
q6)MNFIに各メーカー独自の情報を設定する。
【0154】
q7)CELL_TY(例えば図35のセル情報EX_CI内に含まれるセルタイプ)にストリーマであることを示す情報を設定する(ステップST1704Z);
q8)ステップST1704Zの設定において、さらに、参照するESOB番号を設定し、再生するIDとして代表(ビデオの)PIDまたは、Component_Group_Idを設定し、エントリポイント情報EPI(図36)の数、再生開始PTM、終了PTM、エントリポイントEPをそれぞれ設定する。さらに、図19に例示されるような不連続セグメントCNT_SEGを読み取り、その回数を例えば図37のCNT_SEGNに設定し、その他に再生するESOBのブロック番号を設定する。
【0155】
q9)さらに、ステップST1704Zの設定において、PG_RSM_INF(再生開始PTM、ビデオのESI番号、オーディオのESI番号、Dual-Monoの主副情報等)に、頭から再生できるように先頭の情報を設定する。なお、EPを自動でつける場合の要因としては、映像及び時間関係では、一定時間と映像のモード変化(アスペクト比、動きベクトルの大きい場合)でその条件に映像フレームの先頭Packet(Unit Start Indicator)GOPの先頭Packet(シーケンスヘッダの先頭、I-PICの先頭)を組み合わせた場合が考えられる。さらに、音声関係では音声の変化(音量の変化等)/音声モード(ST/MONO)でその条件に音声フレームの先頭Packet(Unit Start Indicator、フレームヘッダ)の組み合わせた場合が考えられる。
【0156】
図59は、再生動作の一例を説明するフローチャート図(全体の再生動作フロー)である。再生時のデータ処理は、例えば以下のようになる(図59〜図66参照):
r1)まず、ディスクチェックし、rewritable Disc(R、RW、RAM)かどうかをチェックし、rewritable Discで無い場合には、その旨を返して終了する;
r2)rewritable Discであれば、ディスクのファイルシステムを読み出し(ステップST207)、録画されたデータがあるかどうかチェックし、無い場合には、“録画されていません”と表示して終了する;
r3)VMGファイルを読み込み(ステップST207)、再生するプログラム、セルを決定する(デフォルトで決定するか、ユーザに選ばせる)(ステップST208)。ここで、記録順の再生選択した場合には、ORG_PGCIに従って再生を行い、番組毎の再生を行う場合には、再生したい番組に相当する番号のUD_PGC(プレイリスト)に従って再生を行う;
r4)PKT_TYの値を読み出し、対応可能な放送方式かどうかチェックし、対応可能で無い場合は、その旨を表示して処理を終了する(もしくは次のセルへ移行する)。
【0157】
r5)再生するタイトル情報、レジューム情報(PL_RSM_IFO, PG_RSM_IFO)、セル情報(EX_CI)等により再生するESOB/EVOB、再生開始PTM等を決定し、再生開始PTMより、再生を開始するファイルポインタ(論理アドレス)および再生するストリームのESIを決定する。さらにSTI、ESIの値により、各デコーダ部設定を行い再生の準備を行う(ステップST211)。また、先頭のパケットグループヘッダ内のCCIより、APSの設定をビデオデコーダにAPSのON/OFF、APSのタイプ等を設定し、デジタルコピー制御によりCGMSAの設定をビデオデコーダに行う。さらに、デジタル出力(IEEE1394、インターネット等)がある場合:EPNの値により、0:スクランブルon又は出力禁止、1:そのまま出力に出力ICに設定し、ICTが0の場合、画像の解像度を制限を加え、HDをSDに変換し、1の場合はそのまま出力に出力ICに設定する。この時、再生を開始するフレームがIピクチャで無い場合、その直前のIピクチャを読み出しそこからデコードを開始し、目的のフレームまできた所で表示を開始し、通常再生を開始する。
【0158】
r6)再生開始時の処理を行う。まず再生対象がESOBかどうかチェックし、ESOBであっても(ステップST213イエス)再生禁止のESOBであれば(ステップST215イエス)PGCIより次のセルを設定して(ステップST232)、ステップST211へ戻る;
r7)再生対象がEVOBであったり(ステップST213ノー)再生可能なESOBである場合は(ステップST215ノー)、各デコーダの設定を行う(ステップST217);
r8)続いてセルの再生処理を行い(ステップST220)、再生終了かどうかをチェックし、終了の場合には(ステップST230イエス)、エラーチェックを行なう。エラーの場合には(ステップST240イエス)、その旨を表示し(ステップST242)、再生終了処理を行なう(ステップST244)。エラーでない場合には(ステップST240ノー)、その他の再生終了時の処理を行い(ステップST246)、この動作を終了する;
r9)再生終了でない場合には(ステップST230ノー)、PGCIより次のセルを決定し(ステップST232)、ステップST211へ戻る。そして、デコーダ部59の設定(ステップST217)が変更されたかどうかをチェックし、変更された場合には、次のシーケンスエンドコードにデコーダの設定が変更されるようにデコーダ部59に変更属性を設定する;
10)以後、再生が終了したかどうかをチェックしつつ(ステップST230)同様な処理(ステップST211〜ST232)を繰り返す。
【0159】
図60は、デコーダ設定処理(ST217)を説明するフローチャート図である。デコーダの設定例を以下に説明する:
s1)再生対象がESOBである場合(ステップST2170イエス)、再生するグループを決め、GPIに従い、再生するESを決める(ステップST2171)。再生対象がEVOBである場合は(ステップST2170ノー)、ステップST2171はスキップする;
s2)再生するESOB(またはEVOB)の属性情報(STI、ESI)を読み込む(ステップST2172);
s3)再生するESOB(またはEVOB)が、レコーダ(図43の装置など)が対応できるフォーマットかどうかをチェックする。対応不能の場合(ステップST2173ノー)は、再生しないよう機器設定をおこない、表示ミュートを設定する(ステップST2175)。
【0160】
s4)再生するビデオが再生可能な場合は(ステップST2173イエス)、再生準備を行なう(ステップST2174A)。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める;
s5)再生するオーディオが再生可能かどうかをチェックし、可能な場合(ステップST2176イエス)は、再生準備を行なう(ステップST2177A)。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める。不能の場合(ステップST2176ノー)は、再生しないよう機器設定をおこない、音声ミュートを設定する(ステップST2178);
s6)例えば図57の処理で作成した内容を含むCCI情報を元に、コピー管理処理を行う(ステップST2179)。
【0161】
図61は、セル再生時の処理の一例を説明するフローチャート図である。セルの再生処理は、例えば以下のようになる:
t1)TMAPIの内容よりEX_CELLの開始ファイルポインタFP(論理ブロック番号LBN)、終了ファイルポインタFP(論理ブロック番号LBN)を決定し、さらに、EX_CI内の開始時間、終了時間より開始のESOBU_ENTRY、終了のESOBU_ENTRYを決定し、ADR_OFSに目的のESOBU_ENTRYまでのエントリのデータ長を累積し、開始アドレス(LB=FP)、終了アドレスを求める。残りEX_CELL長は終了アドレスより開始アドレスを引いた値とし、再生開始時間をSTCへセットする(ステップST2200)。さらに、再生するPIDを決定し、デコーダ(STB、デジタルチューナ)に設定する。この場合、PIDは13ビットのPIDが設定されている場合はそのまま使用できるが、PMT内の順番で設定されている場合はPMTを参照してPIDを決める。
【0162】
t2)ESOBの連続チェック処理を行う(ステップST2201);
t3)再生中の読み出し処理を実行し、開始ファイルポインタより読み出しアドレス、読み出しサイズを決定する(ステップST2206);
t4)読み出す読み出し単位サイズと残りセル長を比べ、残りセル長が大きい場合には(ステップST2207イエス)、残りセル長に残りセル長より読み出す読み出し単位サイズを引いた値を設定する(ステップST2208)。小さい場合には(ステップST2207ノー)、読み出し長を残りセル長にセットし、残りセル長を0にセットする(ステップST2209);
t5)読み出し長を読み出し単位の長さに設定し、ドライブ部へ読み出しアドレス、読み出し長、読み出し命令を設定する(ステップST2210)。
【0163】
t6)データ転送が開始したら(ステップST2212イエス)、バッファに1ESOBU分たまるのを待つ。1ESOBU分たまったら(ステップST2214イエス)、1ESOBU分のデータをバッファから読み込み(ステップST2216)、バッファデコーダ転送処理を行なう(ステップST2220)。そして、読み出しファイルポインタFPのインクリメントとMPEGデコーダの通常モードへの設定(ステップST2224)を行ったのち、t7)へ移行する。
【0164】
t7)転送が終了したかどうかをチェックし、終了した場合には(ステップST2226イエス)、t8)移行する;
t8)アングルキー等が押されたかどうかをチェックし、押された場合は(ステップST2238イエス)、GPIがあるかどうかチェックする。GPIがある場合は(ステップST2239イエス)GP切り替え処理を行い(ステップST2240)、無い場合は(ステップST2239ノー)、何もせずにステップST2228の処理へ移行する;
t9)アングルキー等が押されていない場合は(ステップST2238ノー)、Skip SWが押されたかどうかをチェックする。Skip SWが押された場合は(ステップST2248イエス)、SKIP処理(ステップST2250)を行う。
【0165】
t10)Skip SWが押されていない場合は(ステップST2248ノー)、STOP SWが押されたかどうかをチェックする。Stop SWが押された場合は(ステップST2258イエス)、中断情報(RSM_IFO)を、タイトル再生の場合はPG_RSM_IFOに、プレイリスト再生の場合はPL_RSM_IFOに保存し、終了処理を行う(ステップST2260A);
t11)Stop SWが押されていない場合は(ステップST2258ノー)、残りセル長をチェックする。残りセル長が“0”でない、つまり現在のセルが最後のセルでない場合には(ステップST2228ノー)ステップST2206へ戻る。残りセル長が“0”の場合には(ステップST2228イエス)、この処理を終了する。
【0166】
図62は、ESOB連続チェック処理(ST2201)を説明するフローチャート図である。再生時のESOB連続チェック処理は、例えば次ぎのようになる;
u1)前のESOBと連続記録したかどうかをチェックし(図22の連続記録フラグ)、連続記録していない場合は(ステップST22010ノー)、この処理を終了する;
u2)ESOBが連続記録している場合は(ステップST22010イエス)、STCが連続して入るかどうかをチェックし(図22のSTC連続フラグ)、連続している場合は(ステップST22012イエス)、STC_OFSの値をSTCの値に加算して設定する(ステップST22014)。
【0167】
u3)STC_OFSの値をSTCの値に加算設定(ステップST22014)した後、あるいはSTCが連続していない場合(ステップST22012ノー)は、PATSが連続して入るかどうかをチェックする(図22のPATS連続フラグ)。 PATSが連続している場合は(ステップST22016イエス)、PATS_OFSの値の時間分、デコーダへのデータ転送を待つ(ステップST22018)。例えばSTBの場合では、PATS_OFSの値の時間分、データ送信を待つ。 (もしくは、PATS_OFS時間分を加算して)PATSが連続記録していない場合は(ステップST22016ノー)、この処理を終了する。
【0168】
図63は、バッファRAMからデコーダへのデータ転送処理の一例を説明するフローチャート図である。バッファデータデコーダ転送処理例を以下に説明する:
v1)バッファRAM内のパケットグループの数をチェックし、1パケットグループが無い場合は図63の処理をスキップする。バッファRAM内にパケットグループが1以上ある場合は、最初のパケットグループを処理する様設定する(ステップST22200);
v2)目的のパケットグループをバッファRAM内より読み出す(ステップST22201)。パケットグループの先頭は、パケットグループ長とSync_Patternにより検出する;
v3)パケットグループヘッダのSTUFビット(図39)を調べ、1がセットされている場合は、VALID_PKT_Nsの値に従って、有効なPacketを取り出す(ステップST22202A)。STUFビットに1が設定されていない場合は、170Packetが有効パケット数であるとする。
【0169】
v4)PATS_SSによりPATSの精度を検出し、その精度情報を元に、PATS(FIRST_PATS_EXT+直前のTSパケットのPATS:精度4バイトの場合)とPATS_SSより、TSパケットの転送時間を計算し(ステップST22202B)、その時間に各TSパケットをデコーダ部(STB部)に送る(ステップST22203)。なお、精度6バイトの場合は、FIRST_PATS_EXTをPacket Groupの先頭のPacketのPATSの上位2バイトとし、そこから直前のTSパケットのPATSの下位4バイトとしてTSパケットの転送時間を計算する。なお、精度4バイトの場合は、直前のPATSより、桁上がりを考慮してPATSを計算する。また、精度無しの場合は、Packetデータを取り出すと、リクエストが有り次第直ちにTSパケットを出力する。
【0170】
v5)デコーダ部へのパケット転送が終了すると(ステップST22204イエス)、コピー制御の設定(CCI処理)を行なう(ステップST22205);
v6)その後、メーカー情報MNFがあるかどうかをチェックし、ある場合、そのメーカーIDが該当機器のメーカーと一致するかどうかを判断し、一致している場合は、そのデータを読み込み、所定の処理を行う(各社独自の処理)(ステップST22270);
v7)続いて、ディスコンティニュー処理を行う(ステップST22280);
v8)転送終了まで待ち、パックグループがバッファRAMに残っているかどうかをチェックする。パックグループがバッファRAMに残っていない場合は(ステップST22206ノー)この処理を終了する;
v9)パックグループがバッファRAMに残っている場合は(ステップST22206イエス)、次のパケットグループを処理する様設定し(ステップST22207)、ステップST22201に戻る。
【0171】
図64は、GP切り替え処理の一例を説明するフローチャート図である。GP切り替え処理は、例えば以下のようになる:
x1)切り替えスイッチSWの種別を調べる(ステップST22400X);
x2)現在再生しているパケットグループGPのグルーピング情報GPIを読み込む(ステップST22401X);
x3)GPIがあるかどうかを調べ、無い場合は(ステップST22403Xノー)、この処理を終了する;
x4) GPIがある場合は(ステップST22403Xイエス)、そのほかのGPに切り替えるためにGPI情報を読み込み(ステップST22405X)、デコーダ設定処理を行う(ステップST22410)。
【0172】
図65は、ディスコンティニュー処理の一例を説明するフローチャート図である。ディスコンティニュー処理例を以下に説明する:
y1)不連続性情報DCNIを読み出してチェックし(ステップST22800)、再生中の位置にCNT_SEGの切れ目がある場合は(ステップST22802イエス)、デコーダの再生モードを内部クロックモード(PTSの値を無視し、内部のクロックの値のみで再生を行い、PCRがきた段階でPTSを再び有効にする動作モード:外部同期モード)に移行させ(ステップST22804)、この処理を終了させる;
y2)再生中の位置にCNT_SEGの切れ目がない場合は(ステップST22802ノー)、何もぜずにこの処理を終了させる。
【0173】
図66は、スキップ処理の一例を説明するフローチャート図である。スキップ処理は以下のように行うことができる:
z1)エントリポイントの情報テーブルEPITを読み込む(ステップST22500);
z2)SKIPの方向(SKIPキーの種類で決定)を調べ、フォワードの場合(ステップST22502イエス)は、現在再生している位置よりも後ろのエントリポイントEPで、現在再生ているPIDと同じPIDをもつEPを検索して、その情報を読み込む(ステップST22504)。一方、バックワードの場合(ステップST22502ノー)は、現在再生している位置よりも前のEPで、現在再生ているPIDと同じPIDをもつEPを検索して、その情報を読み込む(ステップST22506);
z3)検出されたEPIより、再生するESOBU_ENTを決定する(ステップST22508);
z4)ESOBU_ENT情報を読み込み、再生を開始する時間(STC)を決定する(ステップST22510)。
【0174】
z5)目的のESOBU_ENTにI-PICがあるかどうかを調べ(1ST_REF_SZ=0か否か調べる)、ない場合は(ステップST22512ノー)1つ前の同じグループのESOBU_ENTの情報を読み(ステップST22514)、ステップST22512〜ST22514の処理を繰り返す;
z6)目的のESOBU_ENTにI-PICがある場合は(ステップST22512イエス)、ESOBU_ENT内のシーケンスヘッダSHを読み込み、デコーダへ設定する(ステップST22522)。そして、先ほど見つけたI-PICを読み出し、その位置よりデコードを開始し、EPで指定された再生時間より表示を開始するようデコーダを設定し(ステップST22514)、通常の再生処理に移行する;
以上により、デジタル放送に対応した木目細かい制御動作が実現できる。
【0175】
<まとめ>
1.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、STCのWrap-aroundが発生したとき、その位置をCNT_SEGとしてESOBIに設定し、各PMTにESOB先頭からのCNT_SEG数情報を付加する。
【0176】
2.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、ビデオストリームを特定するために、各代表ピクチャ情報に、再生時にビデオで使用するESIの番号を付加する。
【0177】
3.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、再生するストリームを特定するために、各リジューム情報に、再生時にビデオで使用するESIの番号と、オーディオストリームで使用するESIの番号と、オーディオがデュアルモノの場合にその種副情報を付加する。
【0178】
4.デジタルストリームを記録可能なデジタルレコーダ(DVDストリーマなど)において、再生するストリームを特定するために、各EP情報に、再生時にビデオで使用するESIの番号と、オーディオストリームで使用するESIの番号と、オーディオがデュアルモノの場合にその種副情報を付加する。
【0179】
5.論理的に繋がっているESOB間の連続性を示すシームレス情報として、連続記録フラグの他に、STC連続フラグ、および/またはPATS連続フラグとそのオフセット値を付加する。
【0180】
<実施の形態の効果>
・再生情報のみでSTCがWrap-aroundしているかが、再生実行前にわかる。
【0181】
・複数ESOB間の連続性が分かり、連続している場合には複数ESOB間をシームレスに接続可能なケースが増える。つまり、連続していることが判っている複数ESOB間の繋ぎ部分で再生処理待ち(静止画が挟まる)ような事態の発生頻度を、この発明が実施されない場合よりも、下げることができる。
【0182】
なお、この発明は前述した実施の形態に限定されるものではなく、現在または将来の実施段階では、その時点で利用可能な技術に基づき、その要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。さらに、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題が解決でき、発明の効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【0183】
【図1】この発明の一実施の形態に係るデータ構造を説明する図。
【図2】この発明の一実施の形態に係るデータ構造における再生管理情報層とオブジェクト管理情報層とオブジェクト層との関係を説明する図。
【図3】この発明の一実施の形態に係るファイル構造を説明する図。
【図4】AVデータ管理情報記録領域130に記録される管理情報の一部(HDVR_MGI)がどのように構成されるかの一例を説明する図。
【図5】DISC_RSM_MRKIの具体例を説明する図。
【図6】EX_DISC_REP_PICIの具体例を説明する図。
【図7】EX_PL_SRPTの具体例を説明する図。
【図8】この発明の一実施の形態に係るデータ構造において、管理情報の1つ(HDVR_MG)の他部(EX_M_AVFIT)がどのように構成されるかの一例を説明する図。
【図9】EVOB_TMAP_GIの具体例を説明する図。
【図10】ESTR_FITがどのように構成されるかの一例を説明する図。
【図11】HR_SFIxx.IFOの具体例を説明する図。
【図12】ESOBI_GIがどのように構成されるかの一例を説明する図。
【図13】ESOBI_GIに含まれる種々な情報を説明する図。
【図14】ESOB_ESIがどのように構成されるかの一例を説明する図。
【図15】ESOB_V_ESIがどのように構成されるかの一例と、このESOB_V_ESIに含まれるビデオ属性V_ATTRがどのように構成されるかの一例を説明する図。
【図16】ESOB_A_ESIがどのように構成されるかの一例と、このESOB_A_ESIに含まれるオーディオ属性AUDIO_ATTRがどのように構成されるかの一例を説明する図。
【図17】ESOB_OTHER_ESIがどのように構成されるかの一例を説明する図。
【図18】コピー制御情報(著作権保護情報)CP_CTL_INFOがどのように構成されるかの例を説明する図。
【図19】ESOB_DCNIの具体例を説明する図。
【図20】ESOB_GPIがどのように構成されるかの一例を説明する図。
【図21】ESOB_GPI_GI、GPI_SRP#、およびGPI#がどのように構成されるかの一例を説明する図。
【図22】ESOB_SMLIがどのように構成されるかの一例を説明する図。
【図23】ESOB_TMAP(タイプA)がどのように構成されるかの一例を説明する図。
【図24】ESOB_TMAP(タイプB)がどのように構成されるかの一例を説明する図。
【図25】DVD_HDVRディレクトリに含まれるHR_VTMAP.IFOおよびHR_STMAPx.IFOがどのように構成されるかの一例を説明する図。
【図26】EX_VTMAPTI、各EX_VTMAP_SRP#、および各EX_VTMAPIがどのように構成されるかの一例を説明する図。
【図27】各EVOBU_ENT#の中身がどのように構成されるかの一例を説明する図。
【図28】STMAPT(タイプA)に含まれる各種情報がどのように構成されるかの一例を説明する図。
【図29】STMAPT(タイプB)に含まれる各種情報がどのように構成されるかの一例を説明する図。
【図30】ETMAPI_GIおよびETMAPI#がどのような情報を格納するのかの一例を説明する図。
【図31】ESOBU_ENT#の中身がどのように構成されるかの一例(タイプAの例)を説明する図。
【図32】AT_ESOBU_ENT#の中身がどのように構成されるかの一例(タイプBの例)を説明する図。
【図33】HDVR_VMGに含まれるPGC情報(EX_ORG_PGC情報およびEXプレイリスト情報/EX_UD_PGC情報)が、どのように構成されるかの一例を説明する図。
【図34】EX_PGC情報がどのように構成されるかの一例を説明する図。
【図35】EX_CIの具体例を説明する図。
【図36】C_EPIの具体例を説明する図。
【図37】ESOB(またはEVOB)のPTMがどのように構成されるかの一例を説明する図。
【図38】ストリームオブジェクト用のデータユニット(ESOBU)がどのように構成されるかの一例を説明する図。
【図39】PKT_GRP_GIの具体例を説明する図。
【図40】パケットグループヘッダに含まれるコピー管理情報CCI#がどのように構成されるかの例を説明する図。
【図41】FIRST_PATS_EXTの具体例を説明する図。
【図42】MNIの具体例を説明する図。
【図43】この発明の一実施の形態に係るデータ構造を利用して、情報記録媒体(光ディスク、ハードディスク等)にAV情報(デジタルTV放送プログラム等)を記録し再生する装置の一例を説明するブロック図。
【図44】図43の装置の全体の動作の一例を説明するフローチャート図(全体動作処理フロー)。
【図45】編集処理(ST28)の一例を説明するフローチャート図(編集動作処理フロー)。
【図46】録画動作の一例(その1)を説明するフローチャート図。
【図47】の録画動作の一例(その2)を説明するフローチャート図。
【図48】ESOB切り処理(ST160)の一例を説明するフローチャート図(ESOB切り処理フロー)。
【図49】バッファ取り込み処理(ST130)の一例を説明するフローチャート図(バッファ取り込み処理フロー)。
【図50】図49の別例を説明するフローチャート図(バッファ取り込み処理フロー)。
【図51】パケットグループ一般情報設定処理(ST1340)の一例を説明するフローチャート図(PKT_GRP_GI設定処理フロー)。
【図52】ストリーム情報(ESI)作成処理(ST120)の一例を説明するフローチャート図(ESI設定処理フロー)。
【図53】録画終了処理(ST150)におけるストリームファイル情報(ESTR_FI)作成処理の一例を説明するフローチャート図。
【図54】GPI設定処理ST1530の一例を説明するフローチャート図。
【図55】のTMAP設定処理ST1540を説明するフローチャート図。
【図56】EVOB/ESOB構造設定処理ST15400を説明するフローチャート図。
【図57】CP_CTL_INFO(CCI)作成処理ST1220を説明するフローチャート図。
【図58】録画終了処理(ST150)におけるプログラムチェーン(PGC)作成処理(プログラム設定処理を含む)の一例を説明するフローチャート図(プログラム設定処理フロー)。
【図59】再生動作の一例を説明するフローチャート図(全体の再生動作フロー)。
【図60】デコーダ設定処理(ST217)を説明するフローチャート図。
【図61】セル再生時の処理の一例を説明するフローチャート図。
【図62】ESOB連続チェック処理(ST2201)を説明するフローチャート図。
【図63】バッファRAMからデコーダへのデータ転送処理の一例を説明するフローチャート図。
【図64】GP切り替え処理の一例を説明するフローチャート図。
【図65】ディスコンティニュー処理の一例を説明するフローチャート図。
【図66】スキップ処理の一例を説明するフローチャート図。
【符号の説明】
【0184】
100…情報記録媒体(DVD−RAMディスク等);121…AVデータ記録領域;122…VRオブジェクト群記録領域;130…AVデータ管理情報記録領域(HDVR_VMG);131…ストリームオブジェクト群記録領域;132…エストリームオブジェクト(ESOB);134…ストリームオブジェクトユニット(ESOBU);140…パケットグループ;160…DVDトランスポートストリームパケット記録領域;161…パケットグループヘッダ;163…MPEGトランスポートストリーム(MPEG−TS)パケット;162…パケット到着時間(PATS);10…再生情報管理層;11…プログラムチェーン(PGC);12…プログラム(PG);13…セル;20…ストリームオブジェクト管理情報層;21…ストリームオブジェクト情報(ESOBI);22…ストリームオブジェクトユニット情報(ESOBUI;グローバル情報);23…ビデオオブジェクト管理情報層;24…ビデオオブジェクト情報(EVOBI);25…ビデオオブジェクトユニット情報(EVOBUI);30…ストリームオブジェクト(ESOB)層;51…ディスクドライブ部(波長が例えば650nm〜405nmのレーザを用いた光ディスクドライブ等);59…デコーダ部;74…デジタルインターフェイス(IEEE1394I/F等);79…エンコーダ部;80…メインMPU部(制御部);83…セットトップボックス部(衛星デジタルチューナ);89…地上波デジタルチューナ;100a…情報記録媒体(ハードディスクドライブ等)。
【特許請求の範囲】
【請求項1】
所定のデジタルストリーム信号を記録するように構成された情報記録媒体において、
前記情報記録媒体は管理領域とデータ領域を持ち、
前記データ領域は前記デジタルストリーム信号のデータが複数のオブジェクトに分かれて記録できるように構成され、
前記管理領域は所定の管理情報を記録できるように構成され、この管理情報が、前記複数のオブジェクト間の連続性を示す情報を含むように構成した情報記録媒体。
【請求項2】
前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合において、前記連続性を示す情報が、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含む請求項1に記載の情報記録媒体。
【請求項3】
前記複数のオブジェクトの内容はMPEGエンコードされたトランスポートストリームのパケットに含まれ、このトランスポートストリームのパケットはシステムタイムクロックに対応する時間情報を含み、
前記連続性を示す情報が、隣接する前記複数のオブジェクトの間で前記システムタイムクロックが連続しているか否かを示すシステムタイムクロック連続フラグを含む請求項1または請求項2に記載の情報記録媒体。
【請求項4】
前記複数のオブジェクトの内容はMPEGエンコードされたトランスポートストリームのパケットに含まれ、このトランスポートストリームのパケットはそのパケットの到着時間情報を含み、
前記連続性を示す情報が、隣接する前記複数のオブジェクトの間で前記パケットの到着時間情報が連続しているか否かを示すパケット到着時間連続フラグを含む請求項1ないし請求項3のいずれか1項に記載の情報記録媒体。
【請求項5】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる記録方法において、
前記データ領域に前記所定のデジタルストリーム信号を記録する情報記録方法。
【請求項6】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる再生方法において、
前記データ領域から前記所定のデジタルストリーム信号を再生する情報再生方法。
【請求項7】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる記録装置であって、
前記データ領域に前記所定のデジタルストリーム信号を記録する手段を備えた情報記録装置。
【請求項8】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる再生装置であって、
前記データ領域から前記所定のデジタルストリーム信号を再生する手段を備えた情報再生装置。
【請求項1】
所定のデジタルストリーム信号を記録するように構成された情報記録媒体において、
前記情報記録媒体は管理領域とデータ領域を持ち、
前記データ領域は前記デジタルストリーム信号のデータが複数のオブジェクトに分かれて記録できるように構成され、
前記管理領域は所定の管理情報を記録できるように構成され、この管理情報が、前記複数のオブジェクト間の連続性を示す情報を含むように構成した情報記録媒体。
【請求項2】
前記複数のオブジェクトが先行オブジェクトと後続オブジェクトを含む場合において、前記連続性を示す情報が、前記後続オブジェクトが前記先行オブジェクトと連続で記録されたことを示す連続記録フラグを含む請求項1に記載の情報記録媒体。
【請求項3】
前記複数のオブジェクトの内容はMPEGエンコードされたトランスポートストリームのパケットに含まれ、このトランスポートストリームのパケットはシステムタイムクロックに対応する時間情報を含み、
前記連続性を示す情報が、隣接する前記複数のオブジェクトの間で前記システムタイムクロックが連続しているか否かを示すシステムタイムクロック連続フラグを含む請求項1または請求項2に記載の情報記録媒体。
【請求項4】
前記複数のオブジェクトの内容はMPEGエンコードされたトランスポートストリームのパケットに含まれ、このトランスポートストリームのパケットはそのパケットの到着時間情報を含み、
前記連続性を示す情報が、隣接する前記複数のオブジェクトの間で前記パケットの到着時間情報が連続しているか否かを示すパケット到着時間連続フラグを含む請求項1ないし請求項3のいずれか1項に記載の情報記録媒体。
【請求項5】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる記録方法において、
前記データ領域に前記所定のデジタルストリーム信号を記録する情報記録方法。
【請求項6】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる再生方法において、
前記データ領域から前記所定のデジタルストリーム信号を再生する情報再生方法。
【請求項7】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる記録装置であって、
前記データ領域に前記所定のデジタルストリーム信号を記録する手段を備えた情報記録装置。
【請求項8】
請求項1ないし請求項4のいずれか1項に記載の情報記録媒体を用いる再生装置であって、
前記データ領域から前記所定のデジタルストリーム信号を再生する手段を備えた情報再生装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【図62】
【図63】
【図64】
【図65】
【図66】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【図62】
【図63】
【図64】
【図65】
【図66】
【公開番号】特開2006−164378(P2006−164378A)
【公開日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願番号】特願2004−353392(P2004−353392)
【出願日】平成16年12月6日(2004.12.6)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願日】平成16年12月6日(2004.12.6)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]