JP2017508375A - 完璧な接合のためのトランスポート・ストリームへのエンコードされたオーディオの埋め込み - Google Patents

完璧な接合のためのトランスポート・ストリームへのエンコードされたオーディオの埋め込み Download PDF

Info

Publication number
JP2017508375A
JP2017508375A JP2016550643A JP2016550643A JP2017508375A JP 2017508375 A JP2017508375 A JP 2017508375A JP 2016550643 A JP2016550643 A JP 2016550643A JP 2016550643 A JP2016550643 A JP 2016550643A JP 2017508375 A JP2017508375 A JP 2017508375A
Authority
JP
Japan
Prior art keywords
transport stream
program
frame
video
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016550643A
Other languages
English (en)
Other versions
JP6438040B2 (ja
Inventor
ローズラー,マルク
シュミット,マルテ
Original Assignee
ドルビー・インターナショナル・アーベー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ドルビー・インターナショナル・アーベー filed Critical ドルビー・インターナショナル・アーベー
Publication of JP2017508375A publication Critical patent/JP2017508375A/ja
Application granted granted Critical
Publication of JP6438040B2 publication Critical patent/JP6438040B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6112Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving terrestrial transmission, e.g. DVB-T
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • H04N21/2335Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2362Generation or processing of Service Information [SI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6143Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a satellite
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6168Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving cable transmission, e.g. using a cable modem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6181Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via a mobile phone network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6187Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via a telephone network, e.g. POTS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/6473Monitoring network processes errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64776Control signals issued by the network directed to the server or the client directed to the server for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

トランスポート・ストリームが少なくとも一つの完璧接合属性をもつよう、および/またはトランスポート・ストリームが少なくとも一つのオーディオ/ビデオ・プログラムを示し、該プログラムが完璧接合属性をもつかどうかを示すメタデータを含むよう、トランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法。他の側面は、そのようなトランスポート・ストリームを接合する方法、本発明の方法の任意の実施形態を実行するよう構成されたオーディオ/ビデオ処理ユニット(たとえばスプライサー)および本発明の方法の任意の実施形態に従って生成されたトランスポート・ストリームの少なくとも一つのセグメントを記憶するバッファ・メモリを含むオーディオ/ビデオ処理ユニットである。

Description

関連出願への相互参照
本願は2014年2月10日に出願された米国仮特許出願第61/938,067号の優先権を主張するものである。
技術分野
本発明は、オーディオおよびビデオ信号処理に関し、より詳細には、ビデオ・データおよびエンコードされたオーディオ・データを含み、任意的にはトランスポート・ストリームによって満たされる少なくとも一つの接合〔スプライシング〕属性を示すメタデータをも含むトランスポート・ストリーム(ビットストリーム)の生成および接合に関する。本発明のいくつかの実施形態は、エンコードされたオーディオ・データをAC-4として知られるフォーマットで含むMPEG-2トランスポート・ストリーム・フォーマットをもつトランスポート・ストリームを生成または接合する。
MPEG-2トランスポート・ストリーム・フォーマットは、ビデオ・データ、エンコードされたオーディオ・データおよび関係するデータの伝送および記憶のための標準フォーマットである。MPEG-2トランスポート・ストリーム・フォーマットは、MPEG-2 Part 1, Systems(ISO/IEC規格13818-1またはITU-T Rec.H.222.0)として知られる標準において規定されている。MPEG-2トランスポート・ストリームは、パケット化されたエレメンタリー・ストリームをカプセル化する指定されたコンテナ・フォーマットをもつ。
ETSI TS 103 190 V1.1.1 (2014-04), Digital Audio Compression (AC-4) Standard、2014年4月
MPEG-2トランスポート・ストリームは、たとえばDVB(Digital Video Broadcasting[デジタルビデオ放送])またはATSC(Advanced Television Systems Committee[先進テレビジョン・システム委員会])TV放送の形でオーディオおよびビデオ・コンテンツを放送するために一般に使われている。二つのMPEG-2トランスポート・ストリームの間で接合を実装することが望ましいことがしばしばある。
本発明は、MPEG-2トランスポート・ストリーム・フォーマットをもつトランスポート・ストリームの生成および/または接合に限定されないが、典型的な実施形態はMPEG-2トランスポート・ストリームを生成および/または接合するための方法およびシステムである。他のフォーマットをもつトランスポート・ストリームでも、そのような各トランスポート・ストリームが本稿に記載されるある種の属性を満たすビデオ・データの(Iフレームを含む)フレームおよびエンコードされたオーディオ・データの(Iフレームを含む)フレームを含むなら、本発明の他の実施形態に従って生成および/または接合されてもよい。本発明のあるクラスの典型的な実施形態に従って生成および/または接合されたトランスポート・ストリームは、トランスポート・ストリームによって満たされる少なくとも一つの接合属性を示すメタデータをも含んでいてもよい。
MPEG-2トランスポート・ストリームは、パケットの形でエレメンタリー・ストリーム(たとえば、ビデオ・エンコーダから出力されるビデオ・データのエレメンタリー・ストリームおよびオーディオ・エンコーダから出力されるエンコードされたオーディオ・データの少なくとも一つの対応するエレメンタリー・ストリーム)を搬送する(すなわち、それを示すデータを含む)。各エレメンタリー・ストリームは、該エレメンタリー・ストリームからの逐次のデータ・バイトを、PESパケット・ヘッダをもつパケット化されたエレメンタリー・ストリーム(PES: packetized elementary stream)パケット中にカプセル化することによって、パケット化される。典型的には、(ビデオ・エンコーダおよびオーディオ・エンコーダから出力される)エレメンタリー・ストリーム・データはPESパケットとしてパケット化され、それらのPESパケットが次いでトランスポート・ストリーム(TS)パケット内部にカプセル化され、それらのTSパケットが次いで多重化されてトランスポート・ストリームをなす。典型的には、各PESパケットはTSパケットのシーケンスにカプセル化される。
MPEG-2トランスポート・ストリームは、一つまたは複数のオーディオ/ビデオ・プログラムを示しうる。それぞれの単一のプログラムは、一意的な識別値(PID)をもつプログラム・マップ・テーブル(PMT: Program Map Table)によって記述され、そのプログラムに関連するエレメンタリー・ストリーム(単数または複数)はPMT内にリストされているPIDをもつ。たとえば、トランスポート・ストリームは三つのテレビ番組を示し、各番組が異なるテレビジョン・チャネルに対応していてもよい。今の例では、各プログラム(チャネル)は、一つのビデオ・エレメンタリー・ストリームおよびいくつかの(たとえば一つまたは複数の)エンコードされたオーディオ・エレメンタリー・ストリームならびにもしあれば必要なメタデータからなっていてもよい。特定のプログラム(チャネル)をデコードしたい受領器は、そのプログラムに関連付けられたPIDをもつそれぞれのエレメンタリー・ストリームのペイロードをデコードしなければならない。
MPEG-2トランスポート・ストリームは、典型的には四つのPSIテーブル:プログラム関連付けテーブル(PAT: program association table)、各プログラムについてのプログラム・マップ・テーブル(PMT: program map table)、条件付きアクセス・テーブル(CAT: conditional access table)およびネットワーク情報テーブル(NIT: network information table)を示すデータを有するプログラム固有情報(PSI: Program Specific Information)を含む。プログラム関連付けテーブルは、トランスポート・ストリームによって示される(に含まれる)すべてのプログラムをリストし、各プログラムはそのプログラム・マップ・テーブル(PMT)についてPIDの関連付けられた値をもつ。あるプログラムについてのPMTは、そのプログラムの各エレメンタリー・ストリームをリストし、そのプログラムに関する他の情報を示すデータを含む。
MPEG-2は、トランスポート・ストリームのプログラムの別々のエレメンタリー・ストリーム(たとえばビデオおよびエンコードされたオーディオのエレメンタリー・ストリーム)の同期を達成するために使われる呈示タイムスタンプ(PTS: presentation time stamp)マップを含む。PTS値は、プログラムの全体的なクロック基準に関係した単位で与えられる。該クロック基準もトランスポート・ストリームにおいて伝送される。(PESパケットによって示される)オーディオまたはビデオ・フレームを含むすべてのTSパケットは、同じPTSタイムスタンプ値をもつ。
典型的なトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)は、エンコードされたオーディオ・データ(典型的には、オーディオ・コンテンツの一つまたは複数のチャネルを示す圧縮されたオーディオ・データ)と、ビデオ・データと、エンコードされたオーディオ(またはエンコードされたオーディオおよびビデオ)コンテンツの少なくとも一つの特性を示すメタデータとを含む。本発明は、AC-4フォーマットに従ってエンコードされたオーディオ・データ(「AC-4エンコードされたオーディオ・データ」)をオーディオ・コンテンツとしてもつトランスポート・ストリームの生成に限定されないが、典型的な実施形態は、AC-4エンコードされたオーディオ・データを含むトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)の生成および/または接合のための方法およびシステムである。
オーディオ・データをエンコードするためのAC-4フォーマットはよく知られており、非特許文献1において公開された。
MPEG-2トランスポート・ストリームは、たとえばDVB(Digital Video Broadcasting[デジタルビデオ放送])またはATSC(Advanced Television Systems Committee[先進テレビジョン・システム委員会])TV放送の形でオーディオおよびビデオ・コンテンツを放送するために一般に使われている。二つのMPEG-2(またはその他の)トランスポート・ストリームの間で接合を実装することが望ましいことが時折ある。たとえば、第一のトランスポート・ストリームの二つのセグメントの間に広告(たとえば別のストリームのセグメント)を挿入するために、送信機が第一のトランスポート・ストリームにおいて接合を実装することが望ましいことがありうる。トランスポート・ストリーム・スプライサーとして知られる通常のシステムが、そのような接合を実装するために利用可能である。通常のスプライサーの洗練度は多様で、通常のトランスポート・ストリームは通例、それらのトランスポート・ストリームに対して接合を実行するためにそれらのトランスポート・ストリームに含まれているすべてのコーデックをスプライサーが認識し、理解できる(すなわちそれらのトランスポート・ストリームのビデオおよびエンコードされたオーディオ・コンテンツならびにメタデータをパースできる)との想定で生成される。これは、接合の実装について大いにエラーの余地を残し、(トランスポート・ストリームを生成するための多重化を実行する)マルチプレクサーとスプライサーの間の相互運用性に関して多くの問題を生じさせる。
MPEG-2トランスポート・ストリームにおいて、該ストリームによって示される各プログラムについて利用可能な接合点(所望される仕方で接合する機会がある特定の時点、たとえば直前(または直後)に所望される仕方で接合する機会がある特定の時間コードをもつサンプルまたはパケット)を特定的に同定するメタデータを含めることが通常である。そのようなメタデータは、エンコード・プロセスの間にトランスポート・ストリームに挿入されている必要がある。しかしながら、トランスポート・ストリームにおける特定の利用可能な接合点を同定し、指示する必要をなくすことによってトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法(およびシステム)の複雑さを低減することが望ましい。本発明の典型的な実施形態によれば、トランスポート・ストリームの中で特定の利用可能な接合点を同定および指示する必要なしに、どのトランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームの修正も全く必要なしに、多様な機能の任意のものをもつスプライサー(非常に限定された機能をもつ単純なスプライサーを含む)が、結果として得られる接合されたストリームにおいてオーディオ/ビデオ同期(「A/V」同期)が維持されることを保証する仕方で、トランスポート・ストリームを接合できるよう、トランスポート・ストリームが生成される。
いくつかの通常のオーディオ・コーデックは、エンコードされたオーディオ・データを含むプログラムの接合時に完璧なA/V同期を維持することをサポートするフォーマットでオーディオをエンコードする。しかしながら、(そのようなエンコードされたオーディオまたは他のフォーマットでエンコードされたオーディオを含む)トランスポート・ストリームどうしを接合することが必要になるときには、各トランスポート・ストリームの準備および各接合の実行において特別な注意を払う必要がある。接合の実行中に(トランスポート・ストリームによって示される)オーディオ・エレメンタリー・ストリームを破損することがたやすいからである。(各トランスポート・ストリームを生成するための多重化を実行する)マルチプレクサーおよび下流のスプライサーは、良好な接合を生成するために黙示的に、協働し、マルチプレクサーは何らかの仕方で多重化し、スプライサーはトランスポート・ストリームが特定の属性をもつことを期待する。本発明の典型的な実施形態は、(非常に単純なスプライサーによるものであっても)トランスポート・ストリームの接合を助ける(トランスポート・ストリームの)一組の特徴を定義し、典型的にはまた、そのような特徴の組をスプライサーに通信するメタデータをトランスポート・ストリーム中に含める。
第一のクラスの実施形態では、本発明は、トランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法であって、エンコードされたオーディオ・データ(本稿では時に「CA」と称される)およびビデオ・データをトランスポート・ストリーム中にパッケージ化する(すなわち、含める)段階であって、該トランスポート・ストリームが少なくとも一つの完璧接合属性を(すなわち、下記で定義する「本質的な」完璧接合属性を、任意的には少なくとも一つの追加的な完璧接合属性も)もつようにする段階を含む、方法である。このコンテキストにおいて、「完璧接合属性」とは、本稿で定義される完璧接合属性のうちの一つを表わし、「本質的な」完璧接合属性は、そのトランスポート・ストリームを接合するとき、そのトランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームのスプライサーによる修正も必要なしに、オーディオ/ビデオ同期(「A/V」同期)が維持されることを保証する。この第一のクラスの実施形態に従って生成されたトランスポート・ストリームは、少なくとも一つのオーディオ/ビデオ・プログラム(「プログラム」)を示し、(それによって示される各プログラムについて)(少なくとも一つのビデオ・エレメンタリー・ストリームを決定する)ビデオ・データのフレームおよび(少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する)対応するエンコードされたオーディオ・データのフレームを含む。ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含む。
ここで、「Iフレーム」とは、それ自身の中からの情報のみを使ってエンコードされた、独立して復号可能なフレームを表わす。対照的に、通常の「Pフレーム」または予測エンコードされたフレームはIフレームではない。いくつかのビデオおよびオーディオ・コーデック・フォーマットでは、そのような独立して復号可能なフレームは公式には「Iフレーム」として定義されていない(あるいは、通常はそう称されない)。しかしながら、それにもかかわらず、そのようなコーデックに従って生成される独立して復号可能なフレームは、(請求項も含めて)本稿では「Iフレーム」と称される。いくつかのコーデックでは、すべてのビデオ・フレームおよび/またはすべてのオーディオ・フレームが独立して復号可能であり、よってそのような各フレームは本稿では「Iフレーム」と称される。
第一のクラスのある実施形態に従って生成されたトランスポート・ストリームは、少なくとも以下の完璧接合属性をもつ(これらは本稿ではしばしば「本質的な」完璧接合属性と称される):
当該トランスポート・ストリームによって示される各プログラムについて、そのプログラムのビデオおよびエンコードされたオーディオのエレメンタリー・ストリームについての同一のフレーム・レート(当該トランスポート・ストリームの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームは、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがある);および
Iフレーム同期(すなわち、当該トランスポート・ストリームの各プログラムについて、そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレーム(すなわち、そのビデオIフレームと同期した少なくとも一つのオーディオIフレーム)がある)。
第一のクラスのある実施形態に従って生成されたトランスポート・ストリームは、一つのプログラムまたは二つ以上のプログラムを示しうる。各プログラムは、ビデオ・エレメンタリー・ストリームを決定する(Iフレームを含む)ビデオ・データのフレームと、少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する(Iフレームを含む)対応するエンコードされたオーディオ・データのフレームとを含む。第一のクラスにおけるある実施形態に従って生成された各トランスポート・ストリームは、そのトランスポート・ストリームによって示される各プログラムについて、そのプログラムを示す当該トランスポート・ストリームのデータが前記完璧接合属性をもつという意味で、本質的な完璧接合属性(たとえば前記の本質的な完璧接合属性)をもつ(すなわち満たす)と言われる。
第一のクラスのある実施形態に従って生成されるトランスポート・ストリームは、次の特性をもつ:
1.当該トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームのスプライサーによる修正もなしに、任意のトランスポート・ストリーム・スプライサーを使って当該トランスポート・ストリームを接合するときに、完璧なA/V同期が維持できる。
2.当該トランスポート・ストリームの接合が(低洗練度をもつスプライサーによる当該トランスポート・ストリームの単純な接合さえも)、当該トランスポート・ストリームのエンコードされたオーディオ・コンテンツを損傷したりA/V同期を乱したりすることなく、可能である。
上記で定義した本質的な完璧接合属性(ビデオおよびエンコードされたオーディオについての同一フレーム・レートならびにIフレーム同期)に加えて、第一のクラスのある実施形態に従って生成されるトランスポート・ストリームは、少なくとも一つの追加的な完璧接合属性(たとえば、後述する完璧接合属性のうちの一つまたは複数)をもっていてもよい。少なくとも一つのそのような追加的な完璧接合属性を満たすようトランスポート・ストリームを生成するオプションは、トランスポート・ストリーム作成者(たとえばネットワーク事業者)がどの完璧接合属性(単数または複数)が満たされるべきかを選ぶことを許容する。より多くの完璧接合属性を満たすことは、典型的には、トランスポート・ストリーム生成についてのさらなるオーバーヘッドを要するが、より単純なスプライサー実装を許容する。より少数の完璧接合属性をもつトランスポート・ストリームの生成は、典型的には、より単純なトランスポート・ストリーム生成を許容するが、より複雑なスプライサー実装を必要とする。典型的には、トランスポート・ストリーム生成器は、特定の使用モードを受け入れることを強制されるのではなく、トランスポート・ストリーム生成の複雑さとスプライサー実装の複雑さとの間の所望されるトレードオフを達成するよう、(本発明の実施形態に基づく)より多数の完璧接合属性を満たすようトランスポート・ストリームを生成するかより少数の完璧接合属性を満たすようトランスポート・ストリームを生成するかを自由に選べる。トランスポート・ストリームが特定の完璧接合属性を満たすことが望ましいまたは必須であるかどうかは、そのトランスポート・ストリームを接合するために使うことが考えられているスプライサー(単数または複数)の機能に依存する。非常に巧妙なスプライサーは典型的には、完璧接合属性のより少数を必要とし、一方、非常に単純なスプライサーはより多くの完璧接合属性をもつトランスポート・ストリームを要求することがある。
第一のクラスの実施形態に従って生成されたトランスポート・ストリームは本質的な完璧接合属性を満たすので、スプライサーは、トランスポート・ストリームのどのプログラムのどのオーディオ・エレメンタリー・ストリームも修正することなく、トランスポート・ストリームをシームレスに接合できる。しかしながら、スプライサーは、シームレスな接合を実行するために、トランスポート・ストリームの再多重化または他の修正を実行する必要があることはある(たとえば、接合されたトランスポート・ストリームを生成するために、オーディオ・エレメンタリー・ストリームをなすパケットのシーケンスが、トランスポート・ストリームの他のパケットと再多重化される必要があることがある)。スプライサーは、接合されたトランスポート・ストリームを受領する受領器(たとえば下流のデコーダ)のバッファのアンダーフローまたはオーバーフローを防止するような仕方で接合を実行(して接合されたトランスポート・ストリームを生成)する必要があることがある。接合されるべき各トランスポート・ストリームを、(上記で定義した本質的な完璧接合属性に加えて)一つまたは複数の追加的な完璧接合属性をもつよう生成することによって、スプライサーのタスクは簡単化できる。このように、いくつかの実施形態では、本発明は、前記本質的な完璧接合属性を満たし、次の追加的な完璧接合属性のうちの少なくとも一つをも満たすトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法である。
1.A/V IフレームのPES整列。トランスポート・ストリームがこの属性をもつのは、当該トランスポート・ストリームの各プログラムについて、そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームがそのプログラムのエンコードされたオーディオIフレームとPESパケット整列されている(すなわち、エンコードされたオーディオIフレームの最初のバイトが新たなPESパケットの先頭にあり、ビデオIフレームの最初のバイトが新たなPESパケットの先頭にある)場合である。次のマッチするIフレームの先頭まで、プログラムの後続のエンコードされたオーディオ・フレームは、PESパケット整列される必要はない。
2.A/V Iフレーム対のPTS値のマッチ。トランスポート・ストリームがこの属性をもつのは、当該トランスポート・ストリームの各プログラムについて、各ビデオIフレームについて少なくとも一つのマッチするオーディオIフレームがあり(上記の本質的な完璧接合属性のIフレーム同期要求において述べたのと同様で、一つの前記ビデオIフレームおよび該ビデオIフレームにマッチするオーディオIフレームを含む各Iフレーム対は本稿では時に「A/V Iフレーム対」と称される)、各A/V Iフレーム対のIフレームはマッチする(たとえば同一の)呈示タイムスタンプ(PTS)値をもつ場合である。
3.一定ハイパーフレーム・ビットレート。ここで、用語「ハイパーフレーム」は、(トランスポート・ストリームのあるプログラムの)あるA/V Iフレーム対のオーディオIフレームに始まり、(そのプログラムの)次のA/V Iフレーム対の直前のオーディオ・フレームで終わるオーディオ・フレームのシーケンスを表わす。トランスポート・ストリームが「一定ハイパーフレーム・ビットレート」完璧接合属性をもつのは、トランスポート・ストリームの各プログラムについて、すべてのハイパーフレームについての平均ビットレートが一定である場合である。一定ビットレート(CBR: constant bit rate)は「一定ハイパーフレーム・ビットレート」属性の特殊な場合であり、「一定ハイパーフレーム・ビットレート」属性は、等しいエンコードされたオーディオ・ビットレートをもつストリームどうしが一緒に接合されるときに受領器バッファ(単数または複数)が接合後にオーバーフローやアンダーフローしないことを保証する。
4.トランスポート・ストリームにおけるデータ整列。トランスポート・ストリームが「トランスポート・ストリームにおけるデータ整列」の完璧接合属性をもつのは、そのトランスポート・ストリームの各プログラムについて、A/V Iフレーム対および次のA/V Iフレーム対までの後続するA/Vフレームを含むA/Vフレームのシーケンスが、一緒に送られるようそのトランスポート・ストリームに多重化される(すなわち、そのトランスポート・ストリームの単一の連続的なセグメントにおいて生起するよう時間多重される)場合である。
5.トランスポート・ストリームにおける保護帯〔保護バンド〕。トランスポート・ストリームが「トランスポート・ストリームにおける保護帯」完璧接合属性をもつのは、そのトランスポート・ストリームの各プログラムについて、そのプログラムの各A/V Iフレーム対について、当該A/V Iフレーム対のエンコードされたオーディオ・データを担持するトランスポート・ストリーム・パケットの送信が、当該A/V Iフレーム対のビデオ・データを担持するトランスポート・ストリーム・パケットの送信が始まるより前には始まらない場合である。また、そのプログラムの各A/V Iフレーム対の直前に生起するオーディオ・フレームについて、当該オーディオ・フレームについてのすべてのオーディオ・データ・トランスポート・ストリーム・パケットは、そのA/V Iフレーム対に先行する最後のビデオ・データ・トランスポート・ストリーム・パケットの送信前に送られる場合である。そのような保護帯の重要な恩恵は、どこで接合するかを決定するためにビデオしか見ないよう実装されているトランスポート・ストリーム・スプライサーが、どのオーディオ・フレームも決して損なわないことを保証することである。
6.トランスポート・ストリームにおいてマークされる接合点。トランスポート・ストリームが「トランスポート・ストリームにおいてマークされる接合点」の完璧接合属性をもつのは、そのトランスポート・ストリームが、そのトランスポート・ストリームにおける(たとえばISO/IEC 13818-1の付属書Aにおいて記載されるような)好適な接合点を明示的に指示するメタデータを含み、該メタデータが好適なA/V Iフレーム対の直前に生起する接合点のみを指示する場合である。そのような指示された接合点は、トランスポート・ストリームにおける潜在的なシームレスな接合点である。任意的に、ビデオのフォーマットは、シームレスな接合点のためのさらなる要件を含意してもよく(たとえば、そのトランスポート・ストリームを生成するために使用されたビデオ・エンコードのフォーマットに依存して、すべてのビデオIフレームがシームレスな接合点として好適でないことがある)、メタデータは、好適なA/V Iフレーム対の直前に生起し、かつそのようなさらなる要件をも満たす接合点のみを(好適な接合点として)指示する。
典型的には、第六の追加的な完璧接合属性(「トランスポート・ストリームにおいてマークされる接合点」)をもつトランスポート・ストリームは、第一ないし第五の追加的な完璧接合属性のそれぞれをももち、第五の追加的な完璧接合属性(「トランスポート・ストリームにおける保護帯」)をもつトランスポート・ストリームは、第一ないし第四の追加的な完璧接合属性のそれぞれをももち、第四の追加的な完璧接合属性(「トランスポート・ストリームにおけるデータ整列」)をもつトランスポート・ストリームは、第一ないし第三の追加的な完璧接合属性のそれぞれをももち、第三の追加的な完璧接合属性(「一定ハイパーフレーム・ビットレート」)をもつトランスポート・ストリームは、第一および第二の追加的な完璧接合属性のそれぞれをももち、第二の追加的な完璧接合属性(「A/V Iフレーム対のPTS値のマッチ」)をもつトランスポート・ストリームは、第一の追加的な完璧接合属性をももつ。
第一のクラスの実施形態のいくつかの実施形態に従って生成されたトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)は、そのトランスポート・ストリーム(またはそれによって示されるプログラム)が少なくとも一つの完璧接合属性をもつかどうかを示すメタデータ(「接合メタデータ」)(たとえば、そのトランスポート・ストリームまたはプログラムが、本質的な完璧接合属性および追加的な完璧接合属性のそれぞれをもつかどうかを示すメタデータ)を含む。
第二のクラスの実施形態では、本発明は、トランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法であって、前記トランスポート・ストリームは、少なくとも一つのオーディオ/ビデオ・プログラム(「プログラム」)を示し、プログラムが完璧接合属性をもつかどうかを示すメタデータ(「接合メタデータ」)(たとえば、そのプログラムが、本質的な完璧接合属性および/または少なくとも一つの他の完璧接合属性をもつかどうかを示すメタデータ)を含む。トランスポート・ストリームが少なくとも二つのプログラムを示す場合、接合メタデータは、それらのプログラムのそれぞれが完璧接合属性をもつかどうか(たとえば、それらのプログラムのそれぞれの個々のものが該完璧接合属性をもつかどうか)を示してもよい。接合メタデータは、集団的に、そのトランスポート・ストリームによって示されるすべてのプログラムを示してもよい(すなわち、それに関わってもよい)(よって、そのトランスポート・ストリーム自身が前記完璧接合属性をもつかどうかを示してもよい)し、あるいは、そのトランスポート・ストリームによって示される個々の各プログラム(またはすべてのプログラムの部分集合)を特定的に示してもよい。
第二のクラスの実施形態に従って生成されたトランスポート・ストリームの接合メタデータは、そのトランスポート・ストリームによって示される少なくとも一つのプログラム(たとえば各プログラム)が「本質的」完璧接合属性(第一のクラスの実施形態を参照して上記で定義)をもつかどうかおよび/またはそのトランスポート・ストリームによって示される少なくとも一つのプログラムが(第一のクラスの実施形態を参照して上記で定義したいずれかの型の)少なくとも一つの追加的な完璧接合属性をもつかどうかを示してもよい。
第二のクラスの実施形態を参照するに、トランスポート・ストリームによって示されるプログラムが完璧接合属性を「もつ」(すなわち、満たす)という表現は、そのプログラムを示すそのトランスポート・ストリームのデータ(たとえば、そのプログラムの少なくとも一つのビデオ・エレメンタリー・ストリームを決定する、ビデオ・データのIフレームを含むビデオ・データのフレームならびにそのプログラムの少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する、エンコードされたオーディオ・データのIフレームを含む、エンコードされたオーディオ・データのフレーム)がその完璧接合属性をもつことを表わす(たとえば、少なくとも一つの他のプログラムを示す当該トランスポート・ストリームの他のデータはその完璧接合属性をもたなくてもよい)。
第二のクラスの典型的な実施形態に従って生成されたトランスポート・ストリームは、(そのトランスポート・ストリームによって示される各プログラムについて、)(そのプログラムの少なくとも一つのビデオ・エレメンタリー・ストリームを決定する)ビデオ・データのフレームならびに(そのプログラムの少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する)エンコードされたオーディオ・データのフレームを含む。ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含む。
トランスポート・ストリームのプログラムを示す(第二のクラスのある実施形態に従って生成されたトランスポート・ストリーム中の)データは、上記で定義した本質的な完璧接合属性をもっていてもよく、上記の追加的な完璧接合属性の一つまたは複数をももっていてもよい。少なくとも一つのそのような追加的な完璧接合属性を満たすよう(前記プログラムを示す)前記データを生成するオプションにより、トランスポート・ストリームの作成者は、どの完璧接合属性(単数または複数)が満たされるべきかを選ぶことができる。より多くの完璧接合属性を満たすことは、典型的には、トランスポート・ストリーム生成のためのより多くのオーバーヘッドを要求するが、より単純なスプライサー実装の使用を許容する。
(トランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性のそれぞれを満たすかどうかを示す)トランスポート・ストリーム中の接合メタデータを含めることにより、スプライサーは、そのようなメタデータをトランスポート・ストリームからパースして、そのプログラムのエレメンタリー・ストリームを示す(そのトランスポート・ストリームの)データが期待される仕方で接合(および他の処理)をされることができるかどうかを判定し、トランスポート・ストリーム(またはプログラムのエレメンタリー・ストリームを示す該トランスポート・ストリームのデータ)がそのスプライサーによってサポートされるものに準拠していない(たとえば、完璧接合属性のフルセットより少ないものをもつ)場合には操作者に警告を発することができる(ここで、フルセットは、完璧な接合であることが保証される接合を実行するためにスプライサーのために必要とされるものである)。
少なくとも二つのプログラムを示すよう第二のクラスのある実施形態に従って生成されたトランスポート・ストリームは、各プログラムについて接合メタデータを含んでいてもよい。各プログラムについての接合メタデータは、そのプログラムが少なくとも一つの完璧接合属性を満たすかどうかを示してもよい。たとえば、接合メタデータは、そのプログラムが本質的な完璧接合属性および本稿で定義された六つの追加的な完璧接合属性のそれぞれを満たすかどうかを示してもよい。
上記のように、トランスポート・ストリームは複数のプログラムを示してもよい。各プログラムは、複数のエレメンタリー・ストリーム(たとえば、ビデオ・エレメンタリー・ストリームおよび一つまたは複数のエンコードされたオーディオ・エレメンタリー・ストリーム)を含んでいてもよい。典型的には、各エレメンタリー・ストリームは、そのエレメンタリー・ストリームを特徴付けるまたは他の仕方でそれに関係した情報を含む関連した記述子(本稿では時に「エレメンタリー・ストリーム記述子」と称される)を有する。各エレメンタリー・ストリームの記述子を解析することにより、スプライサーは、そのトランスポート・ストリーム(または該トランスポート・ストリームのプログラム)が該スプライサーが接合を実施するために要求する属性をもつかどうかを判定できる(そして任意的には、少なくとも一つの期待される属性が満たされないことを判別したときに警告またはエラーを発することができる)。本発明の典型的な実施形態に従ってトランスポート・ストリームに含められる接合メタデータは、トランスポート・ストリームのエレメンタリー・ストリーム記述子に含められてもよい(そして該エレメンタリー・ストリームを含むプログラムの各完璧接合属性を示してもよい)。あるいはまた、接合メタデータはトランスポート・ストリームの他の部分(セグメント)に含められてもよい(そして集団的にトランスポート・ストリームのすべてのプログラムを示してもよく、あるいは個々にトランスポート・ストリームの各プログラムを示してもよい)
典型的な実施形態では、トランスポート・ストリームはトランスポート・ストリームの各プログラムについての接合メタデータを含み、各プログラムについての接合メタデータは、そのプログラムのエレメンタリー・ストリーム(単数または複数)によって満たされる各完璧接合属性を示し、トランスポート・ストリームによって示される各プログラムのエレメンタリー・ストリーム(単数または複数)は完璧接合属性の異なる、異なるセットを満たしてもよい(または満たさなくてもよい)。たとえば、第二のクラスのある実施形態に従って生成されたトランスポート・ストリームは、一つのビデオ・エレメンタリー・ストリームおよび二つのオーディオ・エレメンタリー・ストリームをもつプログラムを含んでいてもよい(すなわち、それらを示すデータを含んでいてもよい)。この例では、プログラムを決定するトランスポート・ストリームのデータは完璧接合属性をもっていてもよく、トランスポート・ストリームは、そのプログラムのエレメンタリー・ストリームによって満たされる完璧接合属性を示す(そのプログラムについての)接合メタデータを含んでいてもよい。
第二のクラスのある実施形態に従って生成されるトランスポート・ストリームに含まれる接合メタデータの例は、次のうちの全部または一部を含む(または、それらからなる):
そのトランスポート・ストリームの少なくとも一つのプログラム(すなわち、そのトランスポート・ストリームの、各前記プログラムを示すデータ)がビデオおよびエンコードされたオーディオについての同一フレーム・レートの属性を満たすかどうかを示すメタデータ(たとえば、同一フレーム・レート属性が満たされる場合に、トランスポート・ストリームの記述子におけるframerate_match〔フレーム・レート一致〕ビットが(「1」の値に)セットされる。そうでない場合には、かかるビットは(たとえば「0」の値として)セットされないままである。);
そのトランスポート・ストリームの少なくとも一つのプログラムがIフレーム同期属性を満たすかどうかを示すメタデータ(たとえば、Iフレーム同期属性が満たされる場合に、トランスポート・ストリームの記述子におけるiframes_synced〔Iフレーム同期〕ビットが(「1」の値に)セットされる。そうでない場合には、かかるビットは(たとえば「0」の値として)セットされないままである。);
そのトランスポート・ストリームの少なくとも一つのプログラムが「A/V IフレームのPES整列」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、iframes_pes_aligned〔IフレームPES整列〕ビット)。そのようなiframes_pes_alignedビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「A/V Iフレーム対PTS値マッチ」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、iframes_pts_match〔IフレームPTSマッチ〕ビット)。そのようなiframes_pts_matchビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「一定ハイパーフレーム・ビットレート」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、constant_hyperframe_bitrate〔一定ハイパーフレーム・ビットレート〕ビット)。そのようなconstant_hyperframe_bitrateビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおけるデータ整列」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、avdata_aligned〔A/Vデータ整列〕ビット)。そのようなavdata_alignedビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおける保護帯」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、guardband〔保護帯〕ビット)。そのようなguardbandビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;および/または
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおいてマークされた接合点」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、splicemarkers〔接合マーカー〕ビット)。そのようなsplicemarkersビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。
プログラムについての接合メタデータがframerate_matchビットおよびiframes_syncedビットを含む上記の例において、両方のかかるビットがセットされている(両方が論理的な値「1」をもつ)場合、接合メタデータは、そのプログラムが(ビデオおよびエンコードされたオーディオについて同一のフレーム・レートをもち、Iフレーム同期属性を満たすという点で)本質的な完璧接合属性を満たすことを示す。
いくつかの実施形態では、本発明は、本質的な完璧接合属性をもつあるトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を接合〔スプライシング〕し、それにより、トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、接合されたトランスポート・ストリームを生成する方法である。任意的に、トランスポート・ストリームは、上記の追加的な完璧接合属性の少なくとも一つをも含む(たとえば、該ストリームは、本質的な完璧接合属性および上記の追加的な完璧接合属性全部をもっていてもよい)。トランスポート・ストリームは本質的な完璧接合属性をもつので、接合は、接合されたトランスポート・ストリームにおいてトランスポート・ストリームにおけるオーディオ/ビデオ同期が維持されるよう、実行される。
いくつかの実施形態では、本発明は、接合メタデータを含むよう第二のクラスのいずれかの実施形態に従って生成されたトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を接合する方法である。本方法は:(a)トランスポート・ストリームの少なくとも一部をパースして接合メタデータ(たとえば、トランスポート・ストリームのエレメンタリー・ストリーム記述子にある接合メタデータ)を同定する段階と;(b)前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメント(たとえば前記トランスポート・ストリーム全体または前記トランスポート・ストリームによって示されるプログラム)が、本質的な完璧接合属性を含む少なくとも一つの完璧接合属性をもつことを示すことを判別する際、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成する段階とを含む。トランスポート・ストリーム(または接合される該トランスポート・ストリームのセグメント)が本質的な完璧接合属性をもつ場合、段階(b)は、トランスポート・ストリームにおけるオーディオ/ビデオ同期が、接合されたトランスポート・ストリームにおいて維持されるように実行される。
本発明のもう一つの側面は、本発明の方法(たとえば本質的な完璧接合属性をもつおよび/または接合メタデータを含むトランスポート・ストリームの生成または接合)のいずれかの実施形態を実行するよう構成されたオーディオ/ビデオ処理ユニット(AVPU: audio/video processing unit)である。たとえば、AVPUは、本発明のトランスポート・ストリーム接合方法のいずれかの実施形態を実行するよう構成されたスプライサーであってもよい。別のクラスの実施形態では、本発明は、本発明の方法のいずれかの実施形態によって生成されたトランスポート・ストリーム(たとえば、少なくとも本稿で定義された本質的な完璧接合属性を、任意的にはまた本稿で定義されたいずれかの型の少なくとも一つの追加的な完璧接合属性をも満たすトランスポート・ストリームであって、その記憶されたセグメントがこれらを満たすもの)の少なくとも一つのセグメントを(たとえば非一時的な仕方で)記憶するバッファ・メモリ(バッファ)を含むAVPUである。バッファに記憶される前記セグメントは、接合メタデータ(これは本発明の方法のいずれかの実施形態に従ってトランスポート・ストリームに含められている)を含んでいてもよい。AVPUの例は、これに限定されないが、エンコーダ(たとえばトランスコーダ)、デコーダ(たとえばトランスポート・ストリームのコンテンツをデコードする、および/または接合されたトランスポート・ストリームを生成するよう接合を実行する、および接合されたトランスポート・ストリームのコンテンツをデコードするよう構成されたデコーダ)、コーデック、スプライサー、前処理システム(前処理器)、後処理システム(後処理器)、トランスポート・ストリーム処理システムおよびそのような要素の組み合わせを含む。
本発明の諸側面は、本発明の方法のいずれかの実施形態を実行するよう構成された(たとえばプログラムされた)システムまたは装置ならびに本発明の方法のいずれかの実施形態またはその段階を実施するためのコードを(たとえば非一時的な仕方で)記憶しているコンピュータ可読媒体(たとえばディスク)を含む。たとえば、本発明のシステムは、プログラム可能な汎用プロセッサ、デジタル信号プロセッサまたはマイクロプロセッサであって、ソフトウェアまたはファームウェアによりプログラムされたまたは他の仕方でデータに対して本発明の方法の実施形態またはその段階を含む多様な動作の任意のものを実行するよう構成されたものであるまたはそれを含むことができる。そのような汎用プロセッサは、入力装置、メモリおよび処理回路を含むコンピュータ・システムであって、それに呈されたデータに応答して本発明の方法(またはその段階)の実施形態を実行するようプログラムされた(および/または他の仕方で構成された)ものであるまたはそれを含むのであってもよい。
それぞれ異なるトランスポート・ストリームにある三つの接合点の図である。各トランスポート・ストリームはTSパケット(エンコードされたオーディオ・データを含むTSパケットは「A」でラベル付けされ、ビデオ・データを含むTSパケットは「V」でラベル付けされている)の異なるシーケンスを含む。 本質的な完璧接合属性および五つの追加的な完璧接合属性(「A/V IフレームのPES整列」「A/V Iフレーム対のPTS値のマッチ」「一定ハイパーフレーム・ビットレート」「トランスポート・ストリームにおけるデータ整列」「トランスポート・ストリームにおける保護帯」)をもつMPEG-2トランスポート・ストリームの例の図である。 要素の一つまたは複数が本発明のある実施形態に従って構成されうるシステムのある実施形態のブロック図である。 図3の捕捉ユニット1および制作ユニット3の実装であるシステムのブロック図である。
〈記法および命名法〉
請求項を含む本開示を通じて、信号またはデータ「に対して」動作を実行する(たとえば信号またはデータをフィルタリングする、スケーリングする、変換するまたは利得を適用する)という表現は、信号またはデータに対して直接的に、または信号またはデータの処理されたバージョンに対して(たとえば、予備的なフィルタリングまたは前処理を該動作の実行に先立って受けている前記信号のバージョンに対して)該動作を実行することを表わすために広義で使用される。
請求項を含む本開示を通じて、「システム」という表現は、装置、システムまたはサブシステムを表わす広義で使用される。たとえば、エンコードを実装するサブシステムはエンコーダ・システムと称されてもよく、そのようなサブシステムを含むシステム(たとえば、複数の入力に応答してX個の出力信号を生成するシステムであって、前記サブシステムが入力のうちのM個を生成し、他のX−M個の入力は外部源から受領されるもの)もエンコーダ・システムと称されることがある。
請求項を含む本開示を通じて、「トランスポート・ストリーム」(または「転送ストリーム」)という表現は、ビットストリームを示す信号であって、前記ビットストリームはビデオ・データおよびエンコードされたオーディオ・データならびにまた任意的にはメタデータを含むものを表わす。表現「AVデータ」は本稿では時に、そのようなビデオ・データおよび/またはそのようなエンコードされたオーディオ・データを表わすために使われる。典型的には、トランスポート・ストリームは、エンコードされたオーディオ・データのセグメント(たとえばパケット)、ビデオ・データのセグメント(たとえばパケット)およびメタデータ(たとえば接合をサポートするメタデータを含む)のセグメント(たとえばヘッダまたは他のセグメント)のシーケンスを含むシリアル・ビットストリームを示す信号である。トランスポート・ストリームは複数のプログラムを示してもよく、各プログラムは複数のエレメンタリー・ストリーム(たとえば、ビデオ・エレメンタリー・ストリームおよび二つ以上のオーディオ・エレメンタリー・ストリーム)を含んでいてもよい。典型的には、トランスポート・ストリームの各エレメンタリー・ストリームは、そのエレメンタリー・ストリームに関係した情報を含む関連した記述子をもつ。
請求項を含む本開示を通じて、用語「プロセッサ」は、データ(たとえばオーディオおよび/またはビデオまたは他の画像データ)に対して動作を実行するよう(たとえばソフトウェアまたはファームウェアを用いて)プログラム可能または他の仕方で構成可能であるシステムまたは装置を表わす広義で使用される。プロセッサの例は、フィールド・プログラム可能なゲート・アレイ(または他の構成可能な集積回路またはチップセット)、オーディオまたは他のサウンド・データに対してパイプライン化された処理を実行するようプログラムされたおよび/または他の仕方で構成されたデジタル信号プロセッサ、プログラム可能な汎用プロセッサもしくはコンピュータおよびプログラム可能なマイクロプロセッサ・チップまたはチップセットを含む。
請求項を含む本開示を通じて、表現「オーディオ・ビデオ受領器(audio video receiver)(または「AVR」)」は、たとえばホームシアターにおけるオーディオおよびビデオ・コンテンツの再生を制御するために使われる消費者電子装置のクラスの受領器を表わす。
請求項を含む本開示を通じて、表現「オーディオ/ビデオ処理ユニット」(または「AV処理ユニット」または「AVPU」)および「AVプロセッサ」は、トランスポート・ストリーム(またはトランスポート・ストリームのビデオ・データおよび/またはエンコードされたオーディオ・データ)を処理するよう構成されたシステムを表わすために、交換可能に、広義で使われる。AV処理ユニットの例は、これに限られないが、エンコーダ(たとえばトランスコーダ)、デコーダ、コーデック、スプライサー、前処理システム、後処理システムおよびビットストリーム処理システム(時にビットストリーム処理ツールと称される)を含む。一例では、AV処理ユニットは、第一のトランスポート・ストリームの出口点(すなわち時刻)および第二のトランスポート・ストリーム(これは第一のトランスポート・ストリームまたは第一のトランスポート・ストリームではない異なるトランスポート・ストリームであることができる)の入口点(すなわち別の時刻)を決定し、接合されたトランスポート・ストリーム(たとえば、前記出口点より前に生起する第一のビットストリームのデータおよび前記入口点より後に生起する第二のビットストリームのデータを含む接合されたビットストリーム)を生成するよう構成されたスプライサー(splicer)である。
請求項を含む本開示を通じて、表現「メタデータ」は、対応するオーディオ・データおよび/またはビデオ・データ(メタデータをも含むビットストリームのオーディオおよび/またはビデオ・コンテンツ)とは別個の異なるデータを指す。メタデータは、オーディオおよび/またはビデオ・データ(「AV」データ)に関連付けられ、該AVデータの少なくとも一つの特徴または特性(たとえばそのAVデータに対してどの型(単数または複数)の処理がすでに実行されているか、あるいは実行されるべきかまたはそのAVデータのオーディオ・データによって示されるオブジェクトの軌跡)を示す。メタデータのAVデータとの関連付けは、時間同期的である。このように、現在の(最も最近受領または更新された)メタデータは、対応するAVデータが同時的に、示される特徴をもつおよび/または示される型のオーディオおよび/またはビデオ・データ処理の結果を含むことを示しうる。
請求項を含む本開示を通じて、表現「接合メタデータ」は、対応するトランスポート・ストリーム(典型的には当該メタデータが含まれているトランスポート・ストリーム)またはそのようなトランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性のそれぞれを満たすかどうか(たとえば、そのトランスポート・ストリームが少なくとも二つの完璧接合属性のそれぞれを満たすかどうか)を示すメタデータを表わす。たとえば、トランスポート・ストリームの接合メタデータは、トランスポート・ストリーム(またはプログラムまたはトランスポート・ストリームのデータによって示される少なくとも二つのプログラムのそれぞれのそれぞれ)が少なくとも一つの完璧接合属性(たとえば、少なくとも二つの完璧接合属性のそれぞれ)を満たすことを示してもよい。
請求項を含む本開示を通じて、「結合する」または「結合される」という用語は、直接的または間接的な接続を意味するために使われる。よって、第一の装置が第二の装置に結合する場合、その接続は、直接接続を通じてであってもよいし、他の装置および接続を介した間接的な接続を通じてであってもよい。
〈本発明の例示的実施形態の詳細な説明〉
図3は、オーディオ処理チェーン(オーディオ・データ処理システム)の例のブロック図である。ここで、このシステムの要素の一つまたは複数が本発明の実施形態に従って構成されていてもよい。このシステムは、図のように結合された以下の要素:捕捉ユニット1、制作ユニット3(これはエンコード・サブシステムを含む)、送達サブシステム5および接合ユニット(スプライサー)7を含む。図示したシステムに対する変形では、これらの要素の一つまたは複数が省略されてもよく、あるいは追加的な処理ユニットが含められてもよい。
捕捉ユニット1は典型的には、オーディオ・コンテンツおよびビデオ・データ・サンプルを含むPCM(時間領域)サンプルを生成し、該PCMオーディオ・サンプルおよびビデオ・データ・サンプルを出力するよう構成される。たとえば、PCMサンプルは、マイクロフォンによって捕捉されたオーディオの複数のストリームを示していてもよい。典型的には放送局によって運用される制作ユニット3は、上記PCMオーディオ・サンプルおよびビデオ・サンプルを入力として受け入れ、オーディオおよびビデオ・コンテンツを示すトランスポート・ストリームを生成し、出力するよう構成される。図3のシステムの典型的な実装では、制作ユニット3は、MPEG-2トランスポート・ストリーム(たとえば、オーディオ・コンテンツがAC-4規格に従ってエンコードされたMPEG-2トランスポート・ストリーム;よってMPEG-2トランスポート・ストリームの各オーディオ・エレメンタリー・ストリームはAC-4フォーマットをもつ圧縮されたオーディオ・データを含む)を出力するよう構成される。制作ユニット3が本発明のある実施形態を実行するよう構成されるいくつかの実施形態では、ユニット3から出力されるトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)は、本発明のある実施形態に従って生成される、本稿に記載されるいずれかの型の接合メタデータをも示す(すなわち、含む)。
本発明のさまざまな実施形態のいずれかに従って生成されたトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)のオーディオ・コンテンツに対して実行されるエンコードは、AC-4エンコードであってもよく、あるいはビデオとフレーム整列された(よって、ビデオの各フレームがエンコードされたオーディオの整数個(すなわち半端でない数)のフレームに対応する(AC-4エンコードはこの属性をもつよう実行できる))他の任意のオーディオ・エンコードであってもよい。
ユニット3から出力されるトランスポート・ストリームは、オーディオ・コンテンツの少なくとも一部を示すエンコードされた(たとえば圧縮された)オーディオ・ビットストリーム(本稿では時に「メイン混合」と称される)と、ビデオ・コンテンツを示すビデオ・ビットストリームと、任意的にはまたオーディオ・コンテンツの一部を示す少なくとも一つの追加的なビットストリームまたはファイル(本稿では時に「サイド混合」)を含んでいてもよい。トランスポート・ストリームの(およびもし生成されるとしたら生成された各サイド混合の)、オーディオ・コンテンツを示すデータは本稿では時に「オーディオ・データ」と称される。
トランスポート・ストリームのオーディオ・データ(たとえばそのメイン混合)は、スピーカー・チャネルの一つまたは複数の集合および/またはオブジェクト・チャネルを示すオーディオ・サンプルのストリームを示していてもよい。
図4に示されるように、図3の制作ユニット3の実装は、ビデオおよびオーディオ・データをユニット1から受領するよう結合されたエンコード・サブシステム3Bを含む。サブシステム3Bは、エンコードされたオーディオ・データを、任意的にはエンコードされたビデオ・データをも生成するよう、オーディオ・データに対して(任意的にはビデオ・データに対しても)必要なエンコードを実行するよう構成されている。(図4の)ユニット3の多重化サブシステム3Cは、サブシステム3Bの出力を(パケット化し、多重化することによることを含め)トランスポート・ストリーム(たとえば、オーディオ・コンテンツがAC-4規格に従ってエンコードされていてもよいMPEG-2トランスポート・ストリームであって、該MPEG-2トランスポート・ストリームの各オーディオ・エレメンタリー・ストリームはAC-4フォーマットをもつ圧縮されたオーディオ・データを含むようにされたもの)としてパッケージ化するよう結合され、構成される。(図4の)ユニット3が本発明の方法のある実施形態を実行するよう構成されているいくつかの実装では、サブシステム3Cは、本発明の実施形態に従って生成される本稿に記載されるいずれかの型の接合メタデータをトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)に含めるよう構成される。(図4の)ユニット3が本発明の方法のある実施形態を実行するよう構成されている典型的な実装では、サブシステム3Cは、本質的な完璧接合属性(本稿で定義される)と、任意的にはまた少なくとも一つの追加的な完璧接合属性を満たすようトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成するよう構成される。サブシステム3Cにおいて生成されるトランスポート・ストリームのセグメントは、バッファ3Aにおいてバッファリングされ(非一時的な仕方で記憶され)、トランスポート・ストリームは送達サブシステム5に呈される。
図3の送達サブシステム5は、ユニット3によって生成されたトランスポート・ビットストリーム(もしサイド混合が生成されるとしたらその各サイド混合を含む)を記憶するおよび/または送信する(たとえば放送する)よう構成される。
捕捉ユニット1′、制作ユニット3′(バッファ3A′を含む)および送達サブシステム5′はそれぞれ捕捉ユニット1、制作ユニット3および送達サブシステム5と同一である。それらは、制作ユニット3において(本発明の実施形態に従って)生成され、スプライサー7の入力8Aに送達される第一のトランスポート・ストリームとスプライサー7によって接合されるべき、(やはり本発明の実施形態に従って生成された)第二のトランスポート・ストリームを生成する(そしてスプライサー7の入力8Bに送達する)よう動作してもよい。
図3のスプライサー7は、入力8Aおよび8Bを含む。入力8Aは、送達サブシステム5によってスプライサー7に送達される少なくとも一つのトランスポート・ストリームを受領する(たとえば読む)よう結合され、入力8Bは、送達サブシステム5′によってスプライサー7に送達される少なくとも一つのトランスポート・ストリームを受領する(たとえば読む)よう結合される。スプライサー7はバッファ・メモリ(バッファ)7A、バッファ・メモリ(バッファ)7D、パース・サブシステム7E、パース・サブシステム7Bおよびスプライス・サブシステム7Cをも、図3に示されるように結合されて含む。任意的には、パース・サブシステム7Bおよび7Eは(下記で説明する理由により)省略され、その場合は、バッファ7Aおよび7Dおよび任意的にはメモリ9の出力は直接、スプライス・サブシステム7Cに結合される。任意的に、スプライサー7は、接合されるべきトランスポート・ストリームを記憶するよう(図のように)結合され、構成されたメモリ9を含む。スプライサー7の典型的な動作の間、入力8Aおよび/または8Bにおいて受領される少なくとも一つの選択されたトランスポート・ストリームのセグメント(たとえば、入力8Aおよび/または8Bにおいて受領される諸トランスポート・ストリームの選択されたシーケンスのセグメントのシーケンス)は、バッファ7Aおよび/またはバッファ7Dにバッファリングされる(非一時的な仕方で記憶される)。バッファリングされたセグメントは、バッファ7Aからパース・サブシステム7Bにパースのために呈され、バッファリングされたセグメントは、バッファ7Dからパース・サブシステム7Eに呈される。あるいはまた、メモリ9に記憶された少なくとも一つのトランスポート・ストリームのセグメントがパースのためにパース・サブシステム7Bに呈される(あるいは、メモリ9に記憶されたおよび/または入力8Aにおいて受領された諸トランスポート・ストリームの選択されたストリームのセグメントがパースのためにパース・サブシステム7Bに呈される)。典型的には、(サブシステム7Bまたは7Eにおいて)パースされ、(接合サブシステム7Cにおいて)接合されるべき各トランスポート・ストリームは、本発明の実施形態に従って生成されている。
(トランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性のそれぞれを満たすかどうかを示す)接合メタデータが、パース・サブシステム7Bに呈されるトランスポート・ストリーム(またはその少なくとも一つのセグメント)に(本発明のある実施形態に従って)含まれる場合、サブシステム7Bは、そのようなメタデータをトランスポート・ストリーム(またはセグメント)からパースして、プログラムのエレメンタリー・ストリームを示す(トランスポート・ストリームの)データが期待される仕方で接合(または他の仕方で処理)されることができるかどうかを決定し、典型的にはまた、トランスポート・ストリーム(またはプログラムのエレメンタリー・ストリームを示すそのデータ)がスプライサー7によってサポートされているものに準拠していない場合には操作者に警告を発するよう構成され、動作可能である。
(トランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性のそれぞれを満たすかどうかを示す)接合メタデータが、パース・サブシステム7Eに呈されるトランスポート・ストリーム(またはその少なくとも一つのセグメント)に(本発明のある実施形態に従って)含まれる場合、サブシステム7Eは、そのようなメタデータをトランスポート・ストリーム(またはセグメント)からパースして、プログラムのエレメンタリー・ストリームを示す(トランスポート・ストリームの)データが期待される仕方で接合される(または他の仕方で処理される)ことができるかどうかを決定し、典型的にはまた、トランスポート・ストリーム(またはプログラムのエレメンタリー・ストリームを示すそのデータ)がスプライサー7によってサポートされているものに準拠していない場合には操作者に警告を発するよう構成され、動作可能である。
いくつかの場合(たとえば、スプライサー7によって接合されるべきトランスポート・ストリームが第一のクラスの実施形態に従って、本稿で定義される「本質的な」完璧接合属性および任意的にはまた少なくとも一つの追加的な完璧接合属性をもつよう生成されているとき)には、パース・サブシステム7Bおよび7Eは省略されてもよい。パース・サブシステム7Bおよび7Eが省略されるとき、スプライサー7の実装は、完璧な接合を実行するためにスプライサー7の関連する実装によって要求される「本質的な」完璧接合属性およびもしあれば追加的な完璧接合属性をもつよう(第一のクラスの実施形態に従って)生成されているトランスポート・ストリームに対して完璧な接合を実行することができる。
スプライサー7(たとえばそのサブシステム7Bおよび/または7Eおよび/またはサブシステム7C)は、接合されるべき各トランスポート・ストリーム(たとえば、送達サブシステム5によってスプライサー7に送達される第一のトランスポート・ストリームおよび/または送達サブシステム5′によってスプライサー7に送達される第二のトランスポート・ストリームまたはメモリ9に記憶されている第一のトランスポート・ストリームおよび/または送達サブシステム5または5′によってスプライサー7に送達される第二のトランスポート・ストリーム)中の接合点を決定するようにも結合され、構成されており、サブシステム7Cはストリーム(単数または複数)を接合して少なくとも一つの接合されたトランスポート・ストリーム(図3の「接合された出力」)を生成するよう構成されている。いくつかの場合には、接合は、単一のトランスポート・ストリームのあるセグメントを省略し、スプライサー7はそのトランスポート・ストリームの出口点(すなわち時刻)およびそのトランスポート・ストリームの入口点(のちの時刻)を決定し、出口点より前に生起するストリーム・セグメントを入口点より後に生起するストリーム・セグメントと連結することによって接合されたトランスポート・ストリームを生成するよう構成される。他の場合では、接合は第一のトランスポート・ストリームのセグメント間に(または第一のトランスポート・ストリームと第三のトランスポート・ストリームのセグメントどうしの間に)第二のトランスポート・ストリームを挿入するものであり、スプライサー7は、第一のトランスポート・ストリームの出口点(すなわち時刻)、第一(または第三)のトランスポート・ストリームの入口点(のちの時刻)、第二のトランスポート・ストリームの入口点(すなわち時刻)および第二のトランスポート・ストリームの出口点(のちの時刻)を決定し、第一のトランスポート・ストリームの出口点より前に生起する第一のトランスポート・ストリームのデータと、第二のトランスポート・ストリームの入口点と出口点の間に生起する第二のトランスポート・ストリームのデータと、第一(または第三)のトランスポート・ストリームの入口点より後に生起する第一(または第三)のトランスポート・ストリームのデータとを含む接合されたトランスポート・ストリームを生成するよう構成される。
いくつかの実装では、スプライサー7は、それぞれ本発明のある実施形態に従って生成されたトランスポート・ストリーム(単数または複数)を、本発明の接合方法のある実施形態に従って接合して、前記少なくとも一つの接合されたトランスポート・ストリーム(図3の「接合された出力」)を生成するよう構成される。
典型的には、スプライサー7から出力された接合されたトランスポート・ストリームを、再生システムがデコードし、レンダリングする。再生システムは、典型的には、トランスポート・ストリームのオーディオ・コンテンツおよびビデオ・コンテンツをパースするサブシステムと、オーディオ・コンテンツをデコードおよびレンダリングするよう構成されたサブシステムと、ビデオ・コンテンツをデコードおよびレンダリングするよう構成された別のサブシステムとを含む。
第一のクラスの実施形態では、本発明は、トランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を(たとえば図3の制作ユニット3において)生成する方法であって、エンコードされたオーディオ・データ(本稿では時に「CA」と称される)およびビデオ・データをトランスポート・ストリーム中にパッケージ化して、該トランスポート・ストリームが少なくとも一つの完璧接合属性を(すなわち、本稿で定義する「本質的な」完璧接合属性を、任意的には本稿で定義される追加的な完璧接合属性の少なくとも一つをも)もつようにすることによることを含む、方法である。これらの追加的な完璧接合属性は:「A/V IフレームのPES整列」完璧接合属性、「A/V Iフレーム対のPTS値のマッチ」完璧接合属性、「一定ハイパーフレーム・ビットレート」完璧接合属性、「トランスポート・ストリームにおけるデータ整列」完璧接合属性、「トランスポート・ストリームにおける保護帯」完璧接合属性、「トランスポート・ストリームにおいてマークされた接合点」完璧接合属性である。「本質的な」完璧接合属性は、トランスポート・ストリームを接合するとき(たとえば、該トランスポート・ストリームの、該完璧接合属性をもつプログラムを示すセグメントを接合するとき)、トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームのスプライサーによる修正も必要なしに、オーディオ/ビデオ同期(「A/V」同期)が維持されることを保証する。
第一のクラスの実施形態に従って生成されるトランスポート・ストリームは、少なくとも一つのオーディオ/ビデオ・プログラム(「プログラム」)を示し、(それによって示される各プログラムについて)(少なくとも一つのビデオ・エレメンタリー・ストリームを決定する)ビデオ・データのフレームおよび(少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する)対応するエンコードされたオーディオ・データのフレームを含む。ビデオ・データのフレーム(たとえば図2のビデオ・フレーム#1、#2、#3、#4、#5、#6)はビデオ・データのIフレーム(図2のビデオIフレーム#1および#5)を含み、エンコードされたオーディオ・データのフレーム(たとえば図2のAC-4フレーム#1、AC-4フレーム#2、AC-4フレーム#3、AC-4フレーム#4、AC-4フレーム#5、AC-4フレーム#6として同定されたオーディオ・フレーム)はエンコードされたオーディオ・データのIフレーム(たとえば図2のオーディオIフレーム、AC-4フレーム#1、AC-4フレーム#3、AC-4#5)を含む。ここで、「Iフレーム」とは、それ自身の中からの情報のみを使ってエンコードされた、独立して復号可能なフレームを表わす。対照的に、「Pフレーム」(予測エンコードされたフレーム)はIフレームではない。
前記トランスポート・ストリームは、少なくとも以下の完璧接合属性をもつ(これらは本稿では時に「本質的な」完璧接合属性と称される):
当該トランスポート・ストリームによって示される各プログラムについて、そのプログラムのビデオおよびエンコードされたオーディオのエレメンタリー・ストリームについての同一のフレーム・レート(当該トランスポート・ストリームの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームは、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがある);および
Iフレーム同期(すなわち、当該トランスポート・ストリームの各プログラムについて、そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレーム(すなわち、そのビデオIフレームと同期した少なくとも一つのオーディオIフレーム)がある)。
トランスポート・ストリームを生成するために(たとえば図3の制作ユニット3によって)用いられるワークフローに依存して、(トランスポート・ストリームによって示されるあるプログラムについて)同一フレーム・レート属性を達成することは、そのプログラムの別のエレメンタリー・ストリームのフレーム・レートが変わったときに、そのプログラムの少なくとも一つのエレメンタリー・ストリームの再エンコードを必要とすることがある。それにより(再エンコード後の)エレメンタリー・ストリームのフレーム・レートが同じになるようにするのである。たとえば、オーディオ・エレメンタリー・ストリームは、対応するビデオ・エレメンタリー・ストリームのフレーム・レートが変更されたとき、再エンコードされる必要があることがある。通例、そのような再エンコードの必要性は、トランスポート・ストリームの生成を実装する好適な作業フローを選ぶことによって回避できる。
第一のクラスのある実施形態に従って生成されるトランスポート・ストリームは、一つのプログラムまたは二つ以上のプログラムを示しうる。各プログラムは、ビデオ・エレメンタリー・ストリームを決定する(Iフレームを含む)ビデオ・データのフレームと、少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する(Iフレームを含む)対応するエンコードされたオーディオ・データのフレームとを含む。第一のクラスにおけるある実施形態に従って生成された各トランスポート・ストリームは、そのトランスポート・ストリームによって示される各プログラムについて、そのプログラムを示す当該トランスポート・ストリームのデータが完璧接合属性をもつという意味で、本質的な完璧接合属性(たとえば前記の本質的な完璧接合属性)をもつ(すなわち満たす)と言われる。
第一のクラスのある実施形態に従って生成されるトランスポート・ストリームは、次の特性をもつ:
1.当該トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームのスプライサーによる修正もなしに、任意のトランスポート・ストリーム・スプライサー(たとえば図3のスプライサー7)を使って当該トランスポート・ストリームを接合するときに、完璧なA/V同期が維持できる。
2.当該トランスポート・ストリームの接合が(低洗練度をもつスプライサーによる当該トランスポート・ストリームの単純な接合さえも)、当該トランスポート・ストリームのエンコードされたオーディオ・コンテンツを損なったりA/V同期を乱したりすることなく、可能である。
上記で定義した本質的な完璧接合属性(ビデオおよびエンコードされたオーディオについての同一フレーム・レートならびにIフレーム同期)に加えて、第一のクラスのある実施形態に従って生成されるトランスポート・ストリームは、少なくとも一つの追加的な完璧接合属性(たとえば、後述する完璧接合属性のうちの一つまたは複数)をもっていてもよい。少なくとも一つのそのような追加的な完璧接合属性を満たすようトランスポート・ストリームを生成するオプションは、トランスポート・ストリーム作成者(たとえばネットワーク事業者)がどの完璧接合属性(単数または複数)が満たされるべきかを選ぶことを許容する。より多くの完璧接合属性を満たすことは、典型的には、トランスポート・ストリーム生成についてのさらなるオーバーヘッドを要するが、より単純なスプライサー実装を許容する。より少数の完璧接合属性をもつようトランスポート・ストリームを生成することは、典型的には、より単純なトランスポート・ストリーム生成を許容するが、より複雑なスプライサー実装を必要とする。典型的には、トランスポート・ストリーム生成器は、特定の使用モードを受け入れることを強制されるのではなく、トランスポート・ストリーム生成の複雑さとスプライサー実装の複雑さとの間の所望されるトレードオフを達成するよう、(本発明の実施形態に基づく)より多数の完璧接合属性を満たすようトランスポート・ストリームを生成するかより少数の完璧接合属性を満たすようトランスポート・ストリームを生成するかを自由に選べる。トランスポート・ストリームが特定の完璧接合属性を満たすことが望ましいまたは必須であるかどうかは、そのトランスポート・ストリームを接合するために使うことが考えられているスプライサー(単数または複数)の機能に依存する。非常に巧妙なスプライサーは典型的には、完璧接合属性のより少数を必要とし、一方、非常に単純なスプライサーはより多くの完璧接合属性をもつトランスポート・ストリームを要求することがある。
第一のクラスの実施形態に従って生成されたトランスポート・ストリームは本質的な完璧接合属性を満たすので、スプライサー(たとえば図3のスプライサー7)は、トランスポート・ストリームのどのプログラムのどのオーディオ・エレメンタリー・ストリームを修正することもなく、トランスポート・ストリームをシームレスに接合できる。しかしながら、スプライサーは、シームレスな接合を実行するために、トランスポート・ストリームの再多重化または他の修正を実行する必要があることがある(たとえば、接合されたトランスポート・ストリームを生成するために、オーディオ・エレメンタリー・ストリームをなすパケットのシーケンスが、トランスポート・ストリームの他のパケットと再多重化される必要があることがある)。スプライサーは、接合されたトランスポート・ストリームを受領する受領器(たとえば下流のデコーダ)のバッファのアンダーフローまたはオーバーフローを防止するような仕方で接合を実行する必要があることがある。接合されるべき各トランスポート・ストリームを、(上記で定義した本質的な完璧接合属性に加えて)一つまたは複数の追加的な完璧接合属性をもつよう生成することによって、スプライサーのタスクは簡単化できる。このように、いくつかの実施形態では、本発明は、前記本質的な完璧接合属性を満たし、次の追加的な完璧接合属性のうちの少なくとも一つをも満たすトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を生成する方法である。
1.A/V IフレームのPES整列。トランスポート・ストリームがこの属性をもつのは、当該トランスポート・ストリームの各プログラムについて、そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームがそのプログラムのエンコードされたオーディオIフレームとPESパケット整列されている(すなわち、エンコードされたオーディオIフレームの最初のバイトが新たなPES(Packetized Elementary Stream[パケット化エレメンタリー・ストリーム])パケットの先頭にあり、ビデオIフレームの最初のバイトが新たなPESパケットの先頭にある)場合である。次のマッチするIフレームの先頭まで、プログラムの後続のエンコードされたオーディオ・フレームは、PESパケット整列される必要はない。パケット化エレメンタリー・ストリーム(PES)パケットの例は図2を参照して記述され、MPEG-2トランスポート・ストリーム・フォーマットの上記の記述はMPEG-2トランスポート・ストリームのPESパケットを指す。各PESパケットは典型的には、MPEG-2トランスポート・ストリームに含められるTSパケットのシーケンスにカプセル化される。そのようなTSパケットの例示的なシーケンスは図2の中段に示される。
2.A/V Iフレーム対のPTS値のマッチ。トランスポート・ストリームがこの属性をもつのは、当該トランスポート・ストリームの各プログラムについて、各ビデオIフレームについて少なくとも一つのマッチするオーディオIフレームがあり(上記の本質的な完璧接合属性のIフレーム同期要求において述べたのと同様で、一つの前記ビデオIフレームおよび該ビデオIフレームにマッチするオーディオIフレームを含む各Iフレーム対は本稿では時に「A/V Iフレーム対」と称される)、各A/V Iフレーム対のIフレームはマッチする(たとえば同一の)呈示タイムスタンプ(PTS)値をもつ場合である。MPEG-2トランスポート・ストリーム・フォーマットの上記の記述は通常のMPEG-2トランスポート・ストリームのPTS値を指し、(PESパケットによって示される)オーディオまたはビデオ・フレームをなすすべてのTSパケットは同じPTSタイムスタンプ値をもつ。
3.一定ハイパーフレーム・ビットレート。ここで、用語「ハイパーフレーム」は、(トランスポート・ストリームのあるプログラムの)あるA/V Iフレーム対のオーディオIフレームに始まり、(そのプログラムの)次のA/V Iフレーム対の直前のオーディオ・フレームで終わるオーディオ・フレームのシーケンスを表わす。トランスポート・ストリームが「一定ハイパーフレーム・ビットレート」完璧接合属性をもつのは、トランスポート・ストリームの各プログラムについて、すべてのハイパーフレームについての平均ビットレートが一定である場合である。一定ビットレート(CBR: constant bit rate)は「一定ハイパーフレーム・ビットレート」属性の特殊な場合であり、「一定ハイパーフレーム・ビットレート」属性は、等しいエンコードされたオーディオ・ビットレートをもつストリームどうしが一緒に接合されるときに受領器バッファ(単数または複数)が接合後にオーバーフローやアンダーフローしないことを保証する。
4.トランスポート・ストリームにおけるデータ整列。トランスポート・ストリームが「トランスポート・ストリームにおけるデータ整列」の完璧接合属性をもつのは、そのトランスポート・ストリームの各プログラムについて、A/V Iフレーム対および次のA/V Iフレーム対の手前までの後続するA/Vフレームを含むA/Vフレームのシーケンスが、一緒に送られるようそのトランスポート・ストリームに多重化される(すなわち、そのトランスポート・ストリームの単一の連続的なセグメントにおいて生起するよう時間多重される)場合である。
5.トランスポート・ストリームにおける保護帯〔保護バンド〕。トランスポート・ストリームが「トランスポート・ストリームにおける保護帯」完璧接合属性をもつのは、そのトランスポート・ストリームの各プログラムについて、そのプログラムの各A/V Iフレーム対について、当該A/V Iフレーム対のエンコードされたオーディオ・データを担持するトランスポート・ストリーム・パケットの送信が、当該A/V Iフレーム対のビデオ・データを担持するトランスポート・ストリーム・パケットの送信が始まるより前には始まらない場合である。また、そのプログラムの各A/V Iフレーム対の直前に生起するオーディオ・フレームについて、当該オーディオ・フレームについてのすべてのオーディオ・データ・トランスポート・ストリーム・パケットが、そのA/V Iフレーム対に先行する最後のビデオ・データ・トランスポート・ストリーム・パケットの送信前に送られる場合である。そのような保護帯の重要な恩恵は、どこで接合するかを決定するためにビデオしか見ないよう実装されているトランスポート・ストリーム・スプライサーが、どのオーディオ・フレームも決して損なわないことを保証することである。
6.トランスポート・ストリームにおいてマークされる接合点。トランスポート・ストリームが「トランスポート・ストリームにおいてマークされる接合点」の完璧接合属性をもつのは、そのトランスポート・ストリームが、そのトランスポート・ストリームにおける(たとえばISO/IEC 13818-1の付属書Aにおいて記載されるような)好適な接合点を明示的に指示するメタデータを含み、該メタデータが好適なA/V Iフレーム対の直前に生起する接合点のみを指示する場合である。そのような指示された接合点は、トランスポート・ストリームにおける潜在的なシームレスな接合点である。任意的に、ビデオのフォーマットは、シームレスな接合点のためのさらなる要件を含意してもよく(たとえば、そのトランスポート・ストリームを生成するために使用されたビデオ・エンコードのフォーマットに依存して、すべてのビデオIフレームがシームレスな接合点として好適ではないことがある)、メタデータは、好適なA/V Iフレーム対の直前に生起し、かつそのようなさらなる要件をも満たす接合点のみを(好適な接合点として)指示する。
第一のクラスの実施形態のいくつかの実施形態に従って(たとえば図3のユニット3によって)生成されたトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)は、そのトランスポート・ストリーム(またはそれによって示されるプログラム)が完璧接合属性をもつかどうかを示すメタデータ(「接合メタデータ」)(たとえば、そのトランスポート・ストリームまたはプログラムが、本質的な完璧接合属性および少なくとも一つの他の追加的な完璧接合属性をもつかどうかを示すメタデータ)を含む。たとえば、そのような接合メタデータは、本発明の第二のクラスの実施形態を参照して記述される接合メタデータの具体例のいずれかを含んでいてもよく、あるいはそのような具体例からなっていてもよい。
図1は、それぞれ異なるトランスポート・ストリームにある三つの接合点の図である。各トランスポート・ストリームはTSパケット(エンコードされたオーディオ・データを含むTSパケットは「A」でラベル付けされ、ビデオ・データを含むTSパケットは「V」でラベル付けされている)の異なるシーケンスを含む。図1の例では、処理は、メモリが少なく、接合されるべきトランスポート・ストリーム中のオーディオに対してどんなエンコード(たとえばAC-4)が実行されているかを認識しない、単純な実装をもつスプライサーによってなされると想定される。動作では、このスプライサーは、単に、あるビデオ・フレームが完了したが次のビデオ・フレームはまだ始まっていない、ビデオ・ストリーム中の位置を位置特定する(そしてそのような点を潜在的な接合点と考える)ことによって、潜在的な接合点を決定する。
図1の例を参照するに、図1の三つのトランスポート・ストリームのうち下のものは、上記の「トランスポート・ストリームにおける保護帯」完璧接合属性をもつが、図1の上の二つのトランスポート・ストリームのそれぞれはそのような「トランスポート・ストリームにおける保護帯」完璧接合属性をもたない。図1のトランスポート・ストリームのそれぞれにおいて、接合点より前の(すなわち図1において左側の)各ビデオTSパケットは、A/V Iフレーム対番号nのTSパケットであり、接合点より後の(すなわち図1において右側の)各ビデオTSパケットは、次のA/V Iフレーム対(A/V Iフレーム対番号n+1)のTSパケットである。スプライサーは、これらのトランスポート・ストリームのどれのオーディオに対してもどのようなエンコードが実行されているのかは認識しない。
(「トランスポート・ストリームにおける保護帯」完璧接合属性を満たさない)図1の上の二つのトランスポート・ストリームのいずれかを接合するとき、スプライサーは、(その先頭および終端をスプライサーが潜在的な接合点として識別した)ビデオ・フレームの隣であるオーディオ・フレームの中間で接合し、そのオーディオ・フレームを損なってしまうことがある。たとえ接合がそのオーディオ・フレームを傷つけなかったとしても、他の問題を引き起こすことがある。たとえば、図1の上のトランスポート・ストリームにおいて、感嘆符の上のオーディオTSパケット(接合点後の最初のオーディオTSパケット)はそれに先行するビデオTSパケットのビデオ・フレームに対応するとする。すなわち、それら二つのTSパケットは同時に呈示されるものであり、不可分の単位として扱われるべきである。この場合、(図1の上段のトランスポート・ストリームにおいて)示される接合点における接合は、接合点に先行する接合されたストリームからオーディオ・パケットが欠けているという望ましくない結果を生じるという意味で、間違っている。
同様に、図1の中段のトランスポート・ストリームでは、感嘆符の上のオーディオTSパケット(接合点前の最後のオーディオTSパケット)はそれに後続するビデオTSパケットのビデオ・フレームに対応するとする。すなわち、それら二つのTSパケットは同時に呈示されるものであり、不可分の単位として扱われるべきである。この場合、(図1の中段のトランスポート・ストリームにおいて)示される接合点における中段のトランスポート・ストリームにおける接合は、接合点に後続する接合されたストリームからオーディオ・パケットが欠けているという結果を生じるという意味で、間違っている。
図1の下段のトランスポート・ストリームでは、スプライサーは、接合点が、二つのビデオ・フレームの間で生起するように選び、オーディオはその潜在的な接合点から遠く隔たっているようトランスポート・ストリーム中に多重化されているので、この点における接合はオーディオをいかなる仕方であれ損なうはずはない(たとえスプライサーが各ビデオ・フレームにどのオーディオ・データが対応するかを認識しないとしても)。
図2は、上記で定義した本質的な完璧接合属性と、上記に列挙し、定義した六つの追加的な完璧接合属性のうちの最初の五つの追加的な完璧接合属性(「A/V IフレームのPES整列」「A/V Iフレーム対のPTS値のマッチ」「一定ハイパーフレーム・ビットレート」「トランスポート・ストリームにおけるデータ整列」「トランスポート・ストリームにおける保護帯」)をもつMPEG-2トランスポート・ストリームの例の図である。図2のMPEG-2トランスポート・ストリームを生成するためには、オーディオ・フレームがPESパケット(図2の上段において拡大バージョンで示されている)にパッケージ化され、ビデオ・フレームがPESパケット(図2の下段において拡大バージョンで示されている)にパッケージ化される。オーディオ・フレームを示す各PESパケットは、PTS値0、3600、7200、10800、14400、18000のうちの異なるものをもち、ビデオ・フレームを示す各PESパケットは、PTS値0、3600、7200、10800、14400、18000のうちの異なるものをもつ。
各PESパケットは、トランスポート・ストリーム(TS)パケットの集合としてパッケージ化され、MPEG-2トランスポート・ストリームは、(図2の中段に示される)TSパケットの示されるシーケンスを含む。トランスポート・ストリームを処理するトランスポート・ストリーム・スプライサーは、バーS1およびS2でマークされた位置で潜在的に接合することができる。それらの各位置はビデオIフレームの直前に生起し、よってオーディオを乱さずにすむ。今の例を簡単にするため、図2に示されるすべてのフレームはPESパケット整列されている(必要でないIフレームとIフレームの中間でも)。
第二のクラスの実施形態では、本発明は、トランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を(たとえば図3のユニット3において)生成する方法であって、前記トランスポート・ストリームは、少なくとも一つのオーディオ/ビデオ・プログラム(「プログラム」)を示し、プログラムが完璧接合属性をもつかどうかを示すメタデータ(「接合メタデータ」)(たとえば、そのプログラムが、本質的な完璧接合属性および/または少なくとも一つの他の完璧接合属性をもつかどうかを示すメタデータ)を含む。トランスポート・ストリームが少なくとも二つのプログラムを示す場合、接合メタデータは、それらのプログラムのそれぞれが完璧接合属性をもつかどうか(たとえば、それらのプログラムのそれぞれの個々のものが該完璧接合属性をもつかどうか)を示してもよい。接合メタデータは、集団的に、そのトランスポート・ストリームによって示されるすべてのプログラムを示してもよい(すなわち、それに関わってもよい)し、あるいは、そのトランスポート・ストリームによって示される個々の各プログラム(またはすべてのプログラムの部分集合)を特定的に示してもよい。
第二のクラスの実施形態に従って生成されたトランスポート・ストリームの接合メタデータは、そのトランスポート・ストリームによって示される少なくとも一つのプログラム(たとえば各プログラム)が「本質的」完璧接合属性(第一のクラスの実施形態を参照して上記で定義)をもつかどうかおよび/またはそのトランスポート・ストリームによって示される少なくとも一つのプログラムが(第一のクラスの実施形態を参照して上記で定義したいずれかの型の)少なくとも一つの追加的な完璧接合属性をもつかどうかを示してもよい。
第二のクラスの実施形態を参照するに、トランスポート・ストリームによって示されるプログラムが完璧接合属性を「もつ」(すなわち、満たす)という表現は、そのプログラムを示すそのトランスポート・ストリームのデータ(たとえば、そのプログラムの少なくとも一つのビデオ・エレメンタリー・ストリームを決定する、ビデオ・データのIフレームを含むビデオ・データのフレームならびにそのプログラムの少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する、エンコードされたオーディオ・データのIフレームを含む、エンコードされたオーディオ・データのフレーム)がその完璧接合属性をもつことを表わす(たとえば、少なくとも一つの他のプログラムを示す当該トランスポート・ストリームの他のデータはその完璧接合属性をもたなくてもよい)。
第二のクラスの典型的な実施形態に従って生成されたトランスポート・ストリームは、(そのトランスポート・ストリームによって示される各プログラムについて)、(そのプログラムの少なくとも一つのビデオ・エレメンタリー・ストリームを決定する)ビデオ・データのフレームならびに(そのプログラムの少なくとも一つのオーディオ・エレメンタリー・ストリームを決定する)エンコードされたオーディオ・データのフレームを含む。ビデオ・データのフレーム(たとえば図2のビデオ・フレーム#1、#2、#3、#4、#5、#6)はビデオ・データのIフレーム(たとえば図2のビデオIフレーム#1および#5)を含み、エンコードされたオーディオ・データのフレーム(たとえば図2のAC-4フレーム#1、AC-4フレーム#2、AC-4フレーム#3、AC-4フレーム#4、AC-4フレーム#5、AC-4フレーム#6として同定されているオーディオ・フレーム)はエンコードされたオーディオ・データのIフレーム(たとえば図2のオーディオIフレーム、AC-4フレーム#1、AC-4フレーム#3、AC-4フレーム#5)を含む。
トランスポート・ストリームのプログラムを示す(第二のクラスのある実施形態に従って生成されたトランスポート・ストリーム中の)データは、上記で定義した本質的な完璧接合属性をもっていてもよく、上記の追加的な完璧接合属性の一つまたは複数をももっていてもよい。少なくとも一つのそのような追加的な完璧接合属性を満たすよう(前記プログラムを示す)前記データを生成するオプションにより、トランスポート・ストリームの作成者は、どの完璧接合属性(単数または複数)が満たされるべきかを選ぶことができる。より多くの完璧接合属性を満たすことは、典型的には、トランスポート・ストリーム生成のためのより多くのオーバーヘッドを要求するが、より単純なスプライサー実装の使用を許容する。
(トランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性のそれぞれを満たすかどうかを示す)トランスポート・ストリーム中の接合メタデータを含めることにより、スプライサーは、そのようなメタデータをトランスポート・ストリームからパースして、そのプログラムのエレメンタリー・ストリームを示す(そのトランスポート・ストリームの)データが期待される仕方で接合(および他の処理)をされることができるかどうかを判定し、トランスポート・ストリーム(またはプログラムのエレメンタリー・ストリームを示す該トランスポート・ストリームのデータ)がそのスプライサーによってサポートされるものに準拠していない場合には操作者に警告を発することができる。
少なくとも二つのプログラムを示すよう第二のクラスのある実施形態に従って生成されたトランスポート・ストリームは、各プログラムについて接合メタデータを含んでいてもよい。各プログラムについての接合メタデータは、そのプログラムが少なくとも一つの完璧接合属性を満たすかどうかを示してもよい。たとえば、接合メタデータは、そのプログラムが少なくとも二つの完璧接合属性のそれぞれを満たすかどうかを示してもよい。
上記のように、トランスポート・ストリームは複数のプログラムを示してもよい。各プログラムは、複数のエレメンタリー・ストリーム(たとえば、ビデオ・エレメンタリー・ストリームおよび一つまたは複数のエンコードされたオーディオ・エレメンタリー・ストリーム)を含んでいてもよい。典型的には、各エレメンタリー・ストリームは、そのエレメンタリー・ストリームを特徴付けるまたは他の仕方でそれに関係した情報を含む関連した記述子(本稿では時に「エレメンタリー・ストリーム記述子」と称される)を有する。各エレメンタリー・ストリームの記述子を解析することにより、スプライサーは、そのトランスポート・ストリーム(または該トランスポート・ストリームのプログラム)が該スプライサーが要求する属性をもつかどうかを判定できる(そして任意的には、期待される属性一部がない場合には警告またはエラーを発することができる)。本発明の典型的な実施形態に従ってトランスポート・ストリームに含められる接合メタデータは、トランスポート・ストリームのエレメンタリー・ストリーム記述子に含められてもよい(そして該エレメンタリー・ストリームを含むプログラムの各完璧接合属性を示してもよい)。あるいはまた、接合メタデータはトランスポート・ストリームの他の部分(セグメント)に含められてもよい(そして集団的にトランスポート・ストリームのすべてのプログラムを示してもよく、あるいは個々にトランスポート・ストリームの各プログラムを示してもよい)
典型的な実施形態では、トランスポート・ストリームの各完璧接合属性は、そのトランスポート・ストリームによって示されるプログラムのエレメンタリー・ストリーム(単数または複数)に関するものであり、トランスポート・ストリームはそのトランスポート・ストリームの各プログラムについての接合メタデータを含み、各プログラムについての接合メタデータは、そのプログラムのエレメンタリー・ストリーム(単数または複数)によって満たされる各完璧接合属性を示す。たとえば、第二のクラスのある実施形態に従って生成されたトランスポート・ストリームは、一つのビデオ・エレメンタリー・ストリームおよび二つのオーディオ・エレメンタリー・ストリームをもつプログラムを含んでいてもよい(すなわち、それらを示すデータを含んでいてもよい)。この例では、プログラムを決定するトランスポート・ストリームのデータは完璧接合属性をもっていてもよく、トランスポート・ストリームは、そのプログラムのエレメンタリー・ストリームによって満たされる完璧接合属性を示す(そのプログラムについての)接合メタデータを含んでいてもよい。
次に、第二のクラスの実施形態に従って生成されるトランスポート・ストリームに含まれる接合メタデータの例を述べる。そのようなトランスポート・ストリームに含まれる接合メタデータは、次のうちの全部または一部を含む(または、それらからなる):
そのトランスポート・ストリームの少なくとも一つのプログラム(すなわち、そのトランスポート・ストリームの、各前記プログラムを示すデータ)がビデオおよびエンコードされたオーディオについての同一フレーム・レートの属性を満たすかどうかを示すメタデータ(たとえば、同一フレーム・レート属性が満たされる場合に、トランスポート・ストリームの記述子におけるframerate_match〔フレーム・レート一致〕ビットが(「1」の値に)セットされる。そうでない場合には、かかるビットは(たとえば「0」の値として)セットされないままである。);
そのトランスポート・ストリームの少なくとも一つのプログラムがIフレーム同期属性を満たすかどうかを示すメタデータ(たとえば、Iフレーム同期属性が満たされる場合に、トランスポート・ストリームの記述子におけるiframes_synced〔Iフレーム同期〕ビットが(「1」の値に)セットされる。そうでない場合には、かかるビットは(たとえば「0」の値として)セットされないままである。);
そのトランスポート・ストリームの少なくとも一つのプログラムが「A/V IフレームのPES整列」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、iframes_pes_aligned〔IフレームPES整列〕ビット)。そのようなiframes_pes_alignedビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「A/V Iフレーム対PTS値マッチ」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、iframes_pts_match〔IフレームPTSマッチ〕ビット)。そのようなiframes_pts_matchビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「一定ハイパーフレーム・ビットレート」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、constant_hyperframe_bitrate〔一定ハイパーフレーム・ビットレート〕ビット)。そのようなconstant_hyperframe_bitrateビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおけるデータ整列」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、avdata_aligned〔A/Vデータ整列〕ビット)。そのようなavdata_alignedビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおける保護帯」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、guardband〔保護帯〕ビット)。そのようなguardbandビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。;および/または
そのトランスポート・ストリームの少なくとも一つのプログラムが「トランスポート・ストリームにおいてマークされた接合点」完璧接合属性を満たすかどうかを示すメタデータ。たとえば、接合メタデータは、この属性を満たすトランスポート・ストリームの各プログラムについての、トランスポート・ストリームの記述子中のビットであってもよい(すなわち、splicemarkers〔接合マーカー〕ビット)。そのようなsplicemarkersビットは、そのプログラムについてこの属性が満たされる場合に、(「1」の値に)セットされる。そうでない場合には、該ビットは(たとえば「0」の値として)セットされないままである。
プログラムについての接合メタデータがframerate_matchビットおよびiframes_syncedビットを含む上記の例において、両方のかかるビットがセットされている(両方が論理的な値「1」をもつ)場合、接合メタデータは、そのプログラムが(ビデオおよびエンコードされたオーディオについて同一のフレーム・レートをもち、Iフレーム同期属性を満たすという点で)本質的な完璧接合属性を満たすことを示す。
いくつかの実施形態では、本発明は、本質的な完璧接合属性をもつあるトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を接合〔スプライシング〕し、それにより、トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、接合されたトランスポート・ストリーム(たとえば、そのような接合方法を実行するよう構成されている図3のスプライサー7の実装の出力)を生成する方法である(ただし、場合によっては、スプライサーは、トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームのデータの修正も含まない仕方で、トランスポート・ストリームの再多重化または他の修正を実行する必要があることがある)。任意的に、トランスポート・ストリームは、上記の追加的な完璧接合属性の少なくとも一つをも含む(たとえば、該ストリームは、本質的な完璧接合属性および上記の追加的な完璧接合属性全部をもっていてもよい)。トランスポート・ストリームが本質的な完璧接合属性をもつならば、接合は、接合されたトランスポート・ストリームにおいてトランスポート・ストリームにおけるオーディオ/ビデオ同期が維持されるよう、実行される。
いくつかの実施形態では、本発明は、接合メタデータを含むよう第二のクラスのいずれかの実施形態に従って生成されたトランスポート・ストリーム(たとえばMPEG-2トランスポート・ストリーム)を接合する方法である。本方法は:(a)トランスポート・ストリームの少なくとも一部を(たとえば図3のスプライサー7において)パースして接合メタデータ(たとえば、トランスポート・ストリームのエレメンタリー・ストリーム記述子にある接合メタデータ)を同定する段階と;(b)前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメント(たとえば前記トランスポート・ストリーム全体または前記トランスポート・ストリームによって示されるプログラム)が、本質的な完璧接合属性を含む少なくとも一つの完璧接合属性をもつことを示すことを判別する際、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリーム(たとえば、そのような接合方法を実行するよう構成されている図3のスプライサー7の実装の出力)を生成する段階とを含む。トランスポート・ストリーム(または接合される該トランスポート・ストリームのセグメント)が本質的な完璧接合属性をもつ場合、段階(b)は、トランスポート・ストリームにおけるオーディオ/ビデオ同期が、接合されたトランスポート・ストリームにおいて維持されるように実行される。
図3のユニット3および7のそれぞれはハードウェア・システムとして実装される。
典型的には、図3のユニット3は少なくとも一つのバッファ3Aを含み、図3のユニット3′は少なくとも一つのバッファ3A′を含み、図3のスプライサー7は少なくとも一つのバッファ(7Aおよび/または7E)を含む。典型的には、バッファ3A、3A′、7Aおよび7Eのそれぞれは、トランスポート・ストリームのパケットのシーケンスを受領するよう結合されたバッファ・メモリであり、動作では、バッファ・メモリはトランスポート・ストリームの少なくとも一つのセグメントを(たとえば非一時的な仕方で)記憶する。ユニット3(または3′)の典型的な動作では、トランスポート・ストリームのセグメントのシーケンスは、バッファ3Aから送達サブシステム5に(またはバッファ3A′から送達サブシステム5′に)呈される。スプライサー7の典型的な動作では、接合されるべきトランスポート・ストリームのセグメントのシーケンスは、バッファ7Aからスプライサー7のパース・サブシステム7Bに、バッファ7Dからスプライサー7のパース・サブシステム7Eに呈される。
図3のユニット3および/またはスプライサー7(またはその任意のコンポーネントまたは要素)は、一つまたは複数のプロセスおよび/または一つまたは複数の回路(たとえばASIC、FPGAまたは他の集積回路)として、ハードウェア、ソフトウェアまたはハードウェアとソフトウェアの組み合わせにおいて、実装されうる。
本発明のもう一つの側面は、本発明の方法(たとえば本質的な完璧接合属性をもつおよび/または接合メタデータを含むトランスポート・ストリームの生成または接合)のいずれかの実施形態を実行するよう構成された処理ユニット(AVPU: audio/video processing unit)である。たとえば、AVPUは、本発明のトランスポート・ストリーム接合方法のいずれかの実施形態を実行するよう構成されたスプライサー(たとえば、図3のスプライサー7の適切に構成された実施形態)であってもよい。別のクラスの実施形態では、本発明は、本発明の方法のいずれかの実施形態によって生成されたトランスポート・ストリーム(たとえば、少なくとも本稿で定義された本質的な完璧接合属性を、任意的にはまた本稿で定義されたいずれかの型の少なくとも一つの追加的な完璧接合属性をも満たすトランスポート・ストリームであって、その記憶されたセグメントがこれらを満たすもの)の少なくとも一つのセグメントを(たとえば非一時的な仕方で)記憶する少なくとも一つのバッファ・メモリ(たとえば、図3のユニット3におけるバッファ3Aまたは図3のスプライサー7のバッファ7Aまたは7E)を含むAVPU(たとえば、図3のユニット3またはスプライサー7)である。バッファに記憶される前記セグメントは、接合メタデータ(これは本発明の方法のいずれかの実施形態に従ってトランスポート・ストリームに含められている)を含んでいてもよい。AVPUの例は、これに限定されないが、エンコーダ(たとえばトランスコーダ)、デコーダ(たとえばトランスポート・ストリームのコンテンツをデコードする、および/または接合されたトランスポート・ストリームを生成するよう接合を実行する、および接合されたトランスポート・ストリームのコンテンツをデコードするよう構成されたデコーダ)、コーデック、スプライサー、前処理システム(前処理器)、後処理システム(後処理器)、トランスポート・ストリーム処理システムおよびそのような要素の組み合わせを含む。
本発明の諸側面は、本発明の方法のいずれかの実施形態を実行するよう構成された(たとえばプログラムされた)システムまたは装置ならびに本発明の方法のいずれかの実施形態またはその段階を実施するためのコードを(たとえば非一時的な仕方で)記憶しているコンピュータ可読媒体(たとえばディスク)を含む。たとえば、本発明のシステムは、プログラム可能な汎用プロセッサ、デジタル信号プロセッサまたはマイクロプロセッサであって、ソフトウェアまたはファームウェアによりプログラムされたまたは他の仕方でデータに対して本発明の方法の実施形態またはその段階を含む多様な動作の任意のものを実行するよう構成されたものであるまたはそれを含むことができる。そのような汎用プロセッサは、入力装置、メモリおよび処理回路を含むコンピュータ・システムであって、それに呈されたデータに応答して本発明の方法(またはその段階)の実施形態を実行するようプログラムされた(および/または他の仕方で構成された)ものであるまたはそれを含むのであってもよい。
本発明の実施形態は、ハードウェア、ファームウェア、ソフトウェアまたはそれらの組み合わせにおいて(たとえばプログラム可能な論理アレイとして)実装されうる。たとえば、図3のユニット3および/またはスプライサー7は、適切にプログラムされた(または他の仕方で構成された)ハードウェアまたはファームウェアにおいて、たとえばプログラムされた汎用プロセッサ、デジタル信号プロセッサまたはマイクロプロセッサとして、実装されてもよい。特に断わりのない限り、本発明の一部として含まれるアルゴリズムまたはプロセスは、いかなる特定のコンピュータまたは他の装置にも本来的に関係するものではない。特に、さまざまな汎用機械が本稿の教示に従って書かれたプログラムと一緒に使用されてもよいし、あるいは要求される方法段階を実行するようより特化した装置(たとえば集積回路)を構築することがより便利であることもありうる。このように、本発明は、それぞれ少なくとも一つのプロセッサと、少なくとも一つのデータ記憶システム(揮発性および不揮発性メモリおよび/または記憶要素)と、少なくとも一つの入力装置またはポートと、少なくとも一つの出力装置またはポートとを有する一つまたは複数のプログラム可能なコンピューティング・システム(たとえば、図3のユニット3および/またはスプライサー7の要素の全部または一部の実装)で実行される一つまたは複数のコンピュータ・プログラムにおいて実装されてもよい。プログラム・コードは、本稿に記載される機能を実行して出力情報を生成するよう、入力データに適用される。出力情報は、既知の仕方で一つまたは複数の出力装置に加えられる。
そのような各プログラムは、コンピュータ・システムと連絡するために、いかなる所望されるコンピュータ言語(マシン、アセンブリまたは高レベル手続き型、ロジカルまたはオブジェクト指向プログラミング言語を含む)で実装されてもよい。いずれの場合にも、言語はコンパイルされる言語でもインタープリットされる言語でもよい。
たとえば、コンピュータ・ソフトウェア命令シーケンスによって実装されるとき、本発明の実施形態のさまざまな機能および段階は、好適なデジタル信号処理ハードウェアにおいて走るマルチスレッド・ソフトウェア命令シーケンスによって実装されてもよく、その場合、諸実施形態のさまざまな装置、段階および機能はソフトウェア命令の一部に対応してもよい。
そのような各コンピュータ・プログラムは、好ましくは、汎用または特殊目的のプログラム可能なコンピュータによって読み取り可能な記憶媒体またはデバイス(たとえば、半導体メモリまたはメディアまたは磁気もしくは光学式メディア)に記憶されるまたはダウンロードされて、該記憶媒体またはデバイスが該コンピュータ・システムによって読み取られるときに前記コンピュータを、本稿に記載される手順を実行するよう構成し、動作させる。本発明のシステムは、コンピュータ・プログラムで構成された(すなわちコンピュータ・プログラムを記憶している)コンピュータ読み取り可能な記憶媒体として実装されてもよい。ここで、そのように構成された該記憶媒体は、コンピュータ・システムに、本稿に記載される機能を実行するよう特定の、あらかじめ定義された仕方で動作させる。
本発明のいくつかの実施形態が記述されてきた。本発明の精神および範囲から外れることなく、さまざまな修正がなされうることが理解されるべきである。上記の教示に照らして、本発明の数多くの修正および変形が可能である。付属の請求項の範囲内で、本発明は、本稿に具体的に記載される以外の仕方で実施されてもよいことは理解される。

Claims (73)

  1. トランスポート・ストリームを生成する方法であって:
    (a)少なくとも一つのオーディオ/ビデオ・プログラムを示すエンコードされたオーディオ・データおよびビデオ・データを提供する段階であって、前記プログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含む、段階と;
    (b)前記トランスポート・ストリームが本質的な完璧接合属性をもつよう、前記エンコードされたオーディオ・データおよび前記ビデオ・データを前記トランスポート・ストリーム中に含める段階とを含み、
    前記本質的な完璧接合属性は:
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    方法。
  2. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項1記載の方法。
  3. 前記エンコードされたオーディオ・データがAC-4フォーマットをもつ圧縮されたオーディオ・データである、請求項2記載の方法。
  4. 段階(b)が、前記トランスポート・ストリームが少なくとも一つの追加的な完璧接合属性をももつよう実行される、請求項1記載の方法。
  5. それぞれの前記ビデオ・エレメンタリー・ストリームおよびそれぞれの前記オーディオ・エレメンタリー・ストリームがパケット化エレメンタリー・ストリーム(PES)パケットにおいてパケット化されており、前記追加的な完璧接合属性が:
    前記トランスポート・ストリームの各プログラムについて、そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームがそのプログラムのエンコードされたオーディオIフレームとPESパケット整列されているということである、
    請求項4記載の方法。
  6. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項5記載の方法。
  7. 前記追加的な完璧接合属性が:
    前記トランスポート・ストリームの各プログラムについて、そのプログラムの各ビデオIフレームについて少なくとも一つのマッチするオーディオIフレームがあり、一つの前記ビデオIフレームおよび該ビデオIフレームにマッチするオーディオIフレームを含むIフレームの各対はA/V Iフレーム対であり、各前記A/V Iフレーム対のIフレームはマッチする呈示タイムスタンプ(PTS)値をもつ、ということである、
    請求項4記載の方法。
  8. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項7記載の方法。
  9. 前記追加的な完璧接合属性が:
    前記トランスポート・ストリームの各プログラムについて、そのプログラムの毎ハイパーフレームについての平均ビットレートが一定であるということであり、それぞれの前記ハイパーフレームは、そのプログラムのあるA/V Iフレーム対のオーディオIフレームに始まり、そのプログラムの次のA/V Iフレーム対の直前のオーディオ・フレームで終わるオーディオ・フレームのシーケンスである、
    請求項7記載の方法。
  10. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項9記載の方法。
  11. 前記追加的な完璧接合属性が:
    前記トランスポート・ストリームの各プログラムについて、そのプログラムのA/V Iフレーム対およびそのプログラムの次のA/V Iフレーム対までの後続するA/Vフレームを含むA/Vフレームの各シーケンスが、前記トランスポート・ストリームの単一の連続的なセグメントにおいて生起するよう時間多重される、ということである、請求項7記載の方法。
  12. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項11記載の方法。
  13. 前記追加的な完璧接合属性が:
    前記トランスポート・ストリームの各プログラムについて、そのプログラムの各A/V Iフレーム対について、前記A/V Iフレーム対のエンコードされたオーディオ・データを担持するトランスポート・ストリーム・パケットの送信が、前記A/V Iフレーム対のビデオ・データを担持するトランスポート・ストリーム・パケットの送信が始まるより前には始まらず、そのプログラムの各A/V Iフレーム対の直前に生起するオーディオ・フレームについて、前記オーディオ・フレームについてのすべてのオーディオ・データ・トランスポート・ストリーム・パケットが、前記A/V Iフレーム対に先行する最後のビデオ・データ・トランスポート・ストリーム・パケットの送信前に送られるということである、
    請求項7記載の方法。
  14. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項13記載の方法。
  15. 前記トランスポート・ストリーム内の好適な接合点を明示的に示すメタデータを前記トランスポート・ストリームに含める段階をさらに含み、前記メタデータは、好適なA/V Iフレーム対の直前に生起する接合点のみを示す、請求項7記載の方法。
  16. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項15記載の方法。
  17. 前記トランスポート・ストリームまたは前記トランスポート・ストリームによって示されるプログラムが少なくとも一つの完璧接合属性をもつかどうかを示すメタデータを前記トランスポート・ストリームに含める段階をさらに含む、
    請求項1記載の方法。
  18. トランスポート・ストリームを生成する方法であって、
    (a)少なくとも一つのオーディオ/ビデオ・プログラムを示すエンコードされたオーディオ・データおよびビデオ・データを提供する段階であって、それぞれの前記プログラムについて、エンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含む、段階と;
    (b)前記エンコードされたオーディオ・データ、前記ビデオ・データおよび接合メタデータを前記トランスポート・ストリームに含める段階であって、前記接合メタデータは、前記トランスポート・ストリームまたは前記トランスポート・ストリームによって示される少なくとも一つのプログラムが少なくとも一つの完璧接合属性をもつかどうかを示す、段階とを含む、
    方法。
  19. 前記接合メタデータは、前記トランスポート・ストリームが本質的な完璧接合属性をもつかどうかを示し、前記本質的な完璧接合属性は:
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項18記載の方法。
  20. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項18記載の方法。
  21. 前記エンコードされたオーディオ・データがAC-4フォーマットをもつ圧縮されたオーディオ・データである、請求項20記載の方法。
  22. 前記接合メタデータが、前記トランスポート・ストリームによって示される各プログラムについての接合メタデータを含み、前記各プログラムについての接合メタデータは、そのプログラムのエレメンタリー・ストリームによって満たされるそれぞれの完璧接合属性を示す、請求項18記載の方法。
  23. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが本質的な完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記本質的な完璧接合属性は:
    そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項18記載の方法。
  24. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項23記載の方法。
  25. それぞれの前記ビデオ・エレメンタリー・ストリームおよびそれぞれの前記オーディオ・エレメンタリー・ストリームがパケット化エレメンタリー・ストリーム(PES)パケットにおいてパケット化されており、前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記完璧接合属性が:
    そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームがそのプログラムのエンコードされたオーディオIフレームとPESパケット整列されているということである、
    請求項18記載の方法。
  26. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項25記載の方法。
  27. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記完璧接合属性が:
    そのプログラムの各ビデオIフレームについて少なくとも一つのマッチするオーディオIフレームがあり、一つの前記ビデオIフレームおよび該ビデオIフレームにマッチするオーディオIフレームを含むIフレームの各対はA/V Iフレーム対であり、各前記A/V Iフレーム対のIフレームはマッチする呈示タイムスタンプ(PTS)値をもつ、ということである、
    請求項18記載の方法。
  28. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項27記載の方法。
  29. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムの毎ハイパーフレームについての平均ビットレートが一定であるということであり、それぞれの前記ハイパーフレームは、そのプログラムのあるA/V Iフレーム対のオーディオIフレームに始まり、そのプログラムの次のA/V Iフレーム対の直前のオーディオ・フレームで終わるオーディオ・フレームのシーケンスである、
    請求項27記載の方法。
  30. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項29記載の方法。
  31. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムのA/V Iフレーム対およびそのプログラムの次のA/V Iフレーム対までの後続するA/Vフレームを含むA/Vフレームの各シーケンスが、前記トランスポート・ストリームの単一の連続的なセグメントにおいて生起するよう時間多重される、ということである、請求項27記載の方法。
  32. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項31記載の方法。
  33. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムの各A/V Iフレーム対について、前記A/V Iフレーム対のエンコードされたオーディオ・データを担持するトランスポート・ストリーム・パケットの送信が、前記A/V Iフレーム対のビデオ・データを担持するトランスポート・ストリーム・パケットの送信が始まるより前には始まらず、そのプログラムの各A/V Iフレーム対の直前に生起するオーディオ・フレームについて、前記オーディオ・フレームについてのすべてのオーディオ・データ・トランスポート・ストリーム・パケットが、前記A/V Iフレーム対に先行する最後のビデオ・データ・トランスポート・ストリーム・パケットの送信前に送られるということである、
    請求項27記載の方法。
  34. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項33記載の方法。
  35. 前記接合メタデータが、前記トランスポート・ストリーム内の好適な接合点を明示的に示す接合点メタデータを含み、前記接合点メタデータは、好適なA/V Iフレーム対の直前に生起する接合点のみを示す、請求項27記載の方法。
  36. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項35記載の方法。
  37. トランスポート・ストリーム接合を実行する方法であって:
    (a)本質的な完璧接合属性をもつトランスポート・ストリームを提供する段階であって、前記トランスポート・ストリームはエンコードされたオーディオ・データおよびビデオ・データを示し、前記エンコードされたオーディオ・データおよび前記ビデオ・データは少なくとも一つのオーディオ/ビデオ・プログラムを示し、それぞれの前記プログラムについて、そのプログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含み、前記本質的な完璧接合属性は:
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、段階と;
    (b)前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成する段階とを含む、
    方法。
  38. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項37記載の方法。
  39. 前記エンコードされたオーディオ・データがAC-4フォーマットをもつ圧縮されたオーディオ・データである、請求項38記載の方法。
  40. 前記トランスポート・ストリームが少なくとも一つの追加的な完璧接合属性をももつ、請求項37記載の方法。
  41. トランスポート・ストリーム接合を実行する方法であって:
    (a)トランスポート・ストリームの少なくとも一部分をパースする段階であって、前記トランスポート・ストリームはエンコードされたオーディオ・データ、ビデオ・データおよび接合メタデータを示し、前記エンコードされたオーディオ・データおよび前記ビデオ・データは少なくとも一つのオーディオ/ビデオ・プログラムを示し、それぞれの前記プログラムについて、そのプログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含み、前記パースすることは前記接合メタデータを同定する、段階と:
    (b)前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメントが、本質的な完璧接合属性を含む少なくとも一つの完璧接合属性をもつことを示すことを判別すると、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成する段階とを含む、
    方法。
  42. 前記接合メタデータが、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが前記本質的な完璧接合属性をもつかどうかを示し、前記本質的な完璧接合属性は:
    前記少なくとも一つのプログラムの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記少なくとも一つのプログラムの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項41記載の方法。
  43. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項42記載の方法。
  44. 前記エンコードされたオーディオ・データがAC-4フォーマットをもつ圧縮されたオーディオ・データである、請求項43記載の方法。
  45. 段階(b)が:
    前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメントが、前記本質的な完璧接合属性および少なくとも一つの追加的な完璧接合属性をもつことを示すことを判別すると、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成する段階を含む、
    請求項41記載の方法。
  46. 段階(b)が:
    前記接合メタデータが、前記トランスポート・ストリームが前記本質的な完璧接合属性をもつことを示すことを判別すると、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成する段階を含む、
    請求項41記載の方法。
  47. トランスポート・ストリームを生成するシステムであって:
    オーディオ・データをエンコードしてエンコードされたオーディオ・データを生成するよう結合され、構成されている第一のサブシステムと;
    ビデオ・データおよび前記エンコードされたオーディオ・データに応答して、前記トランスポート・ストリームが本質的な完璧接合属性をもつような仕方で前記ビデオ・データおよび前記エンコードされたオーディオ・データが前記トランスポート・ストリームに含まれるように前記トランスポート・ストリームを生成するよう結合され、構成されている第二のサブシステムとを有しており、前記ビデオ・データおよび前記エンコードされたオーディオ・データは少なくとも一つのオーディオ/ビデオ・プログラムを示し、それぞれの前記プログラムについて、そのプログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含み、前記本質的な完璧接合属性は:
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記トランスポート・ストリームによって示される各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    システム。
  48. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項47記載のシステム。
  49. 前記エンコードされたオーディオ・データがAC-4フォーマットをもつ圧縮されたオーディオ・データである、請求項47記載のシステム。
  50. 前記第二のサブシステムが、前記トランスポート・ストリームが少なくとも一つの追加的な完璧接合属性をももつよう前記トランスポート・ストリームを生成するよう構成されている、請求項47記載のシステム。
  51. トランスポート・ストリームを生成するシステムであって、
    オーディオ・データをエンコードしてエンコードされたオーディオ・データを生成するよう結合され、構成されている第一のサブシステムと;
    前記ビデオ・データ、前記エンコードされたオーディオ・データおよび接合メタデータを前記トランスポート・ストリームに含めることによることを含め、前記トランスポート・ストリームを生成し、前記トランスポート・ストリームの前記ビデオ・データおよび前記エンコードされたオーディオ・データが少なくとも一つのオーディオ/ビデオ・プログラムを示すようにするよう結合され、構成された第二のサブシステムとを有しており、前記プログラムの前記エンコードされたオーディオ・データおよび前記ビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含み、
    前記接合メタデータは、前記トランスポート・ストリームまたは前記トランスポート・ストリームによって示される少なくとも一つのプログラムが少なくとも一つの完璧接合属性をもつかどうかを示す、
    システム。
  52. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項51記載のシステム。
  53. 前記接合メタデータが、前記トランスポート・ストリームによって示される各プログラムについての接合メタデータを含み、前記各プログラムについての接合メタデータは、そのプログラムのエレメンタリー・ストリームによって満たされるそれぞれの完璧接合属性を示す、請求項51記載のシステム。
  54. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが本質的な完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記本質的な完璧接合属性は:
    そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項51記載のシステム。
  55. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項54記載のシステム。
  56. 前記トランスポート・ストリームにおけるそれぞれの前記ビデオ・エレメンタリー・ストリームおよびそれぞれの前記オーディオ・エレメンタリー・ストリームがパケット化エレメンタリー・ストリーム(PES)パケットにおいてパケット化されており、前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記完璧接合属性が:
    そのプログラムのビデオ・エレメンタリー・ストリームにおける各ビデオIフレームがそのプログラムのエンコードされたオーディオIフレームとPESパケット整列されているということである、
    請求項51記載のシステム。
  57. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記完璧接合属性が:
    そのプログラムの各ビデオIフレームについて少なくとも一つのマッチするオーディオIフレームがあり、一つの前記ビデオIフレームおよび該ビデオIフレームにマッチするオーディオIフレームを含むIフレームの各対はA/V Iフレーム対であり、各前記A/V Iフレーム対のIフレームはマッチする呈示タイムスタンプ(PTS)値をもつ、ということである、
    請求項51記載のシステム。
  58. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項57記載のシステム。
  59. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムの毎ハイパーフレームについての平均ビットレートが一定であるということであり、それぞれの前記ハイパーフレームは、そのプログラムのあるA/V Iフレーム対のオーディオIフレームに始まり、そのプログラムの次のA/V Iフレーム対の直前のオーディオ・フレームで終わるオーディオ・フレームのシーケンスである、
    請求項57記載のシステム。
  60. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムのA/V Iフレーム対およびそのプログラムの次のA/V Iフレーム対までの後続するA/Vフレームを含むA/Vフレームの各シーケンスが、前記トランスポート・ストリームの単一の連続的なセグメントにおいて生起するよう時間多重される、ということである、請求項57記載のシステム。
  61. 前記接合メタデータは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが追加的な完璧接合属性をもつかどうかを示すメタデータを含み、前記追加的な完璧接合属性が:
    そのプログラムの各A/V Iフレーム対について、前記A/V Iフレーム対のエンコードされたオーディオ・データを担持するトランスポート・ストリーム・パケットの送信が、前記A/V Iフレーム対のビデオ・データを担持するトランスポート・ストリーム・パケットの送信が始まるより前には始まらず、そのプログラムの各A/V Iフレーム対の直前に生起するオーディオ・フレームについて、前記オーディオ・フレームについてのすべてのオーディオ・データ・トランスポート・ストリーム・パケットが、前記A/V Iフレーム対に先行する最後のビデオ・データ・トランスポート・ストリーム・パケットの送信前に送られるということである、
    請求項57記載のシステム。
  62. 前記接合メタデータが、前記トランスポート・ストリーム内の好適な接合点を明示的に示す接合点メタデータを含み、前記接合点メタデータは、好適なA/V Iフレーム対の直前に生起する接合点のみを示す、請求項57記載のシステム。
  63. トランスポート・ストリーム接合を実行するシステムであって:
    エンコードされたオーディオ・データ、ビデオ・データおよび接合メタデータを示すトランスポート・ストリームを受領するよう結合された少なくとも一つの入力部であって、前記エンコードされたオーディオ・データおよび前記ビデオ・データは少なくとも一つのオーディオ/ビデオ・プログラムを示し、それぞれの前記プログラムについて、そのプログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含む、入力部と;
    前記トランスポート・ストリームの少なくとも一部分をパースして前記接合メタデータを同定し、前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメントが、本質的な完璧接合属性を含む少なくとも一つの完璧接合属性をもつことを示すことを判別すると、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成するよう構成されたサブシステムとを有する、
    システム。
  64. 前記接合メタデータが、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが前記本質的な完璧接合属性をもつかどうかを示し、前記本質的な完璧接合属性は:
    前記少なくとも一つのプログラムの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    前記少なくとも一つのプログラムの各プログラムについて、そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項63記載のシステム。
  65. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項63記載のシステム。
  66. 前記サブシステムが、前記トランスポート・ストリームのどのエンコードされたオーディオ・エレメンタリー・ストリームも修正することなく、前記トランスポート・ストリームを接合して、それにより接合されたトランスポート・ストリームを生成することを、前記接合メタデータが、前記トランスポート・ストリームの少なくともあるセグメントが、前記本質的な完璧接合属性および少なくとも一つの追加的な完璧接合属性をもつと判別したときにのみ行なうよう構成されている、請求項63記載のシステム。
  67. バッファ・メモリと;
    前記バッファ・メモリに結合された少なくとも一つのオーディオ/ビデオ処理サブシステムとを有するオーディオ/ビデオ処理ユニットであって:
    前記バッファ/メモリはトランスポート・ストリームの少なくとも一つのセグメントを記憶し、前記トランスポート・ストリームは、ビデオ・データ、エンコードされたオーディオ・データおよび接合メタデータを含み、前記トランスポート・ストリームの前記ビデオ・データおよび前記エンコードされたオーディオ・データは少なくとも一つのオーディオ/ビデオ・プログラムを示し、それぞれの前記プログラムについて、そのプログラムを示すエンコードされたオーディオ・データおよびビデオ・データは、少なくとも一つのビデオ・エレメンタリー・ストリームを決定するビデオ・データのフレームおよび少なくとも一つのオーディオ・エレメンタリー・ストリームを決定するエンコードされたオーディオ・データのフレームを含み、ビデオ・データのフレームはビデオ・データのIフレームを含み、エンコードされたオーディオ・データのフレームはエンコードされたオーディオ・データのIフレームを含み、前記接合メタデータは、前記トランスポート・ストリームまたは前記トランスポート・ストリームによって示される少なくとも一つのプログラムが少なくとも一つの完璧接合属性をもつかどうかを示し、前記バッファ・メモリに記憶される前記トランスポート・ストリームの前記少なくとも一つのセグメントが前記接合メタデータの少なくとも一部を含む、段
    オーディオ/ビデオ処理ユニット。
  68. 前記トランスポート・ストリームがMPGE-2トランスポート・ストリームである、請求項67記載のユニット。
  69. 前記バッファ・メモリに記憶される前記トランスポート・ストリームの前記少なくとも一つのセグメントは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが本質的な完璧接合属性をもつかどうかを示すメタデータからなるまたはかかるメタデータを含み、それぞれの前記プログラムについての前記本質的な完璧接合属性は:
    そのプログラムの各ビデオ・エレメンタリー・ストリームが、そのプログラムの各エンコードされたオーディオ・エレメンタリー・ストリームのフレーム・レートと同じフレーム・レートをもち、そのプログラムの各ビデオ・フレームについて、そのプログラムの少なくとも一つの対応するエンコードされたオーディオ・フレームがあり、
    そのプログラムの各ビデオ・エレメンタリー・ストリームにおける各ビデオIフレームについて、そのプログラムのオーディオ・エレメンタリー・ストリームにおいて少なくとも一つのマッチするオーディオIフレームがある、
    というものである、
    請求項67記載のユニット。
  70. 前記バッファ・メモリに記憶される前記トランスポート・ストリームの前記少なくとも一つのセグメントは、前記トランスポート・ストリームによって示される少なくとも一つのプログラムが少なくとも一つの追加的な完璧接合属性をももつかどうかを示す接合メタデータを含む、請求項69記載のユニット。
  71. 前記バッファ・メモリが前記トランスポート・ストリームの前記少なくとも一つのセグメントを非一時的な仕方で記憶する、請求項67記載のユニット。
  72. 当該オーディオ/ビデオ処理サブシステムはトランスポート・ストリーム・スプライサーである、請求項67記載のユニット。
  73. 当該オーディオ/ビデオ処理サブシステムは前記トランスポート・ストリームを生成するよう構成されている、請求項67記載のユニット。
JP2016550643A 2014-02-10 2015-02-10 完璧な接合のためのトランスポート・ストリームへのエンコードされたオーディオの埋め込み Active JP6438040B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461938067P 2014-02-10 2014-02-10
US61/938,067 2014-02-10
US201562108752P 2015-01-28 2015-01-28
US62/108,752 2015-01-28
PCT/EP2015/052732 WO2015118164A1 (en) 2014-02-10 2015-02-10 Embedding encoded audio into transport stream for perfect splicing

Publications (2)

Publication Number Publication Date
JP2017508375A true JP2017508375A (ja) 2017-03-23
JP6438040B2 JP6438040B2 (ja) 2018-12-12

Family

ID=52477793

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016550643A Active JP6438040B2 (ja) 2014-02-10 2015-02-10 完璧な接合のためのトランスポート・ストリームへのエンコードされたオーディオの埋め込み

Country Status (6)

Country Link
US (1) US9883213B2 (ja)
EP (1) EP3105938B1 (ja)
JP (1) JP6438040B2 (ja)
KR (1) KR101861941B1 (ja)
CN (1) CN105981397B (ja)
WO (1) WO2015118164A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021529478A (ja) * 2018-06-28 2021-10-28 ドルビー ラボラトリーズ ライセンシング コーポレイション 適応的なストリーミング整列のためのフレーム変換

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2978225B1 (en) * 2014-07-23 2017-11-08 Wildmoka Method for obtaining in real time a user selected multimedia content part
WO2016204490A1 (ko) * 2015-06-16 2016-12-22 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
CN106875952B (zh) * 2016-12-23 2021-02-26 伟乐视讯科技股份有限公司 基于fpga嵌入式系统的多路音频软编码机制
US9872062B1 (en) * 2017-02-22 2018-01-16 Wyse Technology L.L.C. Enforcing synchronization by embedding audio within video frame data
CN107147919B (zh) * 2017-06-19 2020-11-27 网宿科技股份有限公司 直播快速启播方法及系统
US11134279B1 (en) * 2017-07-27 2021-09-28 Amazon Technologies, Inc. Validation of media using fingerprinting
CN108769786B (zh) * 2018-05-25 2020-12-29 网宿科技股份有限公司 一种合成音视频数据流的方法和装置
CN110109636B (zh) * 2019-04-28 2022-04-05 华为技术有限公司 投屏方法、电子设备以及系统
WO2021179321A1 (zh) * 2020-03-13 2021-09-16 深圳市大疆创新科技有限公司 音频数据处理方法、电子设备及计算机可读存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11346348A (ja) * 1998-06-02 1999-12-14 Nec Corp 映像音声同期方法及び映像音声多重化装置
JPH11355722A (ja) * 1998-06-11 1999-12-24 Sharp Corp 高能率符号化データの多重化方法及び多重化装置
JP2000287178A (ja) * 1999-03-31 2000-10-13 Hitachi Software Eng Co Ltd Mpeg2データのインサート編集システム
JP2002300527A (ja) * 2001-03-30 2002-10-11 Toshiba Corp 多重化ストリームの記録方法、記録装置、記録媒体、編集方法、編集装置
US20020191107A1 (en) * 2001-06-14 2002-12-19 Sony Corporation Start/stop audio encoder apparatus and method for synchronizing digital audio and video signals
US6806909B1 (en) * 1997-03-03 2004-10-19 Koninklijke Philips Electronics N.V. Seamless splicing of MPEG-2 multimedia data streams
JP2007195208A (ja) * 2001-09-27 2007-08-02 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2013515401A (ja) * 2009-12-21 2013-05-02 エコスター アドバンスト テクノロジーズ エル.エル.シー. コーデック適用フレーム・サイズでの音声スプリッティング
US20130141643A1 (en) * 2011-12-06 2013-06-06 Doug Carson & Associates, Inc. Audio-Video Frame Synchronization in a Multimedia Stream

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181383B1 (en) * 1996-05-29 2001-01-30 Sarnoff Corporation Method and apparatus for preserving synchronization of audio and video presentation when splicing transport streams
US20020154694A1 (en) 1997-03-21 2002-10-24 Christopher H. Birch Bit stream splicer with variable-rate output
US6654933B1 (en) * 1999-09-21 2003-11-25 Kasenna, Inc. System and method for media stream indexing
US6298089B1 (en) 1998-12-10 2001-10-02 Viewgraphics, Inc. Method for seamless and near seamless audio and non-video splicing of a digital transport stream
US8065708B1 (en) * 1999-03-31 2011-11-22 Cox Communications, Inc. Method for reducing latency in an interactive information distribution system
US6993081B1 (en) * 1999-11-23 2006-01-31 International Business Machines Corporation Seamless splicing/spot-insertion for MPEG-2 digital video/audio stream
US6792047B1 (en) * 2000-01-04 2004-09-14 Emc Corporation Real time processing and streaming of spliced encoded MPEG video and associated audio
JP2001251616A (ja) * 2000-03-02 2001-09-14 Media Glue Corp 多重化音響・動画圧縮符号化信号変換方法、装置および変換プログラムを記録した媒体
GB0007868D0 (en) 2000-03-31 2000-05-17 Koninkl Philips Electronics Nv Methods and apparatus for editing digital video recordings and recordings made by such methods
JP4411499B2 (ja) * 2000-06-14 2010-02-10 ソニー株式会社 情報処理装置および情報処理方法、並びに記録媒体
US7068719B2 (en) 2001-06-01 2006-06-27 General Instrument Corporation Splicing of digital video transport streams
US7058054B2 (en) * 2001-08-20 2006-06-06 Skystream Networks Inc. Controlling multiple nodes to execute messages only once
US7058189B1 (en) * 2001-12-14 2006-06-06 Pixel Instruments Corp. Audio monitoring and conversion apparatus and method
US20040143675A1 (en) * 2003-01-16 2004-07-22 Aust Andreas Matthias Resynchronizing drifted data streams with a minimum of noticeable artifacts
US7142250B1 (en) * 2003-04-05 2006-11-28 Apple Computer, Inc. Method and apparatus for synchronizing audio and video streams
CN1914923A (zh) * 2004-01-29 2007-02-14 皇家飞利浦电子股份有限公司 具有快速频道冲浪的数字电视系统
US7873515B2 (en) * 2004-11-23 2011-01-18 Stmicroelectronics Asia Pacific Pte. Ltd. System and method for error reconstruction of streaming audio information
RU2420909C2 (ru) * 2005-12-23 2011-06-10 Конинклейке Филипс Электроникс Н.В. Разделение потока данных
DE602006020188D1 (de) * 2006-05-08 2011-03-31 Thomson Licensing Verfahren zur wiederaufnahme der inhaltswiedergabe über einrichtungen hinweg mittels lesezeichen.
CN100544439C (zh) * 2006-11-21 2009-09-23 华为技术有限公司 一种支持多种编码格式的媒体数据的方法及系统
CN101212679B (zh) * 2006-12-30 2010-04-14 凌阳科技股份有限公司 Avi文件播放时切换多路音频流的av同步方法及装置
US8379677B2 (en) * 2007-04-30 2013-02-19 Vixs Systems, Inc. System for combining a plurality of video streams and method for use therewith
CN101242510B (zh) * 2008-02-18 2012-08-08 华为技术有限公司 一种动态音视频菜单的播放方法与实现装置
JP2009290768A (ja) * 2008-05-30 2009-12-10 Toshiba Corp 映像処理装置および映像処理方法
US8781003B2 (en) 2008-07-17 2014-07-15 Cisco Technology, Inc. Splicing of encrypted video/audio content
US8743906B2 (en) * 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
US8655143B2 (en) * 2009-04-01 2014-02-18 Cisco Technology, Inc. Supplementary buffer construction in real-time applications without increasing channel change delay
WO2010125583A2 (en) * 2009-04-28 2010-11-04 Vubites India Private Limited Method and apparatus for coordinated splicing of multiple streams
GB2472264B (en) * 2009-07-31 2014-12-17 British Sky Broadcasting Ltd Media substitution system
US8925024B2 (en) * 2009-12-31 2014-12-30 The Nielsen Company (Us), Llc Methods and apparatus to detect commercial advertisements associated with media presentations
US8805963B2 (en) * 2010-04-01 2014-08-12 Apple Inc. Real-time or near real-time streaming
US20110293021A1 (en) 2010-05-28 2011-12-01 Jayant Kotalwar Prevent audio loss in the spliced content generated by the packet level video splicer
US20150309844A1 (en) * 2012-03-06 2015-10-29 Sirius Xm Radio Inc. Systems and Methods for Audio Attribute Mapping
JP6365537B2 (ja) * 2013-05-30 2018-08-01 ソニー株式会社 信号処理装置、信号処理方法、プログラム、及び、信号伝送システム
US20150062353A1 (en) * 2013-08-30 2015-03-05 Microsoft Corporation Audio video playback synchronization for encoded media

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6806909B1 (en) * 1997-03-03 2004-10-19 Koninklijke Philips Electronics N.V. Seamless splicing of MPEG-2 multimedia data streams
JPH11346348A (ja) * 1998-06-02 1999-12-14 Nec Corp 映像音声同期方法及び映像音声多重化装置
JPH11355722A (ja) * 1998-06-11 1999-12-24 Sharp Corp 高能率符号化データの多重化方法及び多重化装置
JP2000287178A (ja) * 1999-03-31 2000-10-13 Hitachi Software Eng Co Ltd Mpeg2データのインサート編集システム
JP2002300527A (ja) * 2001-03-30 2002-10-11 Toshiba Corp 多重化ストリームの記録方法、記録装置、記録媒体、編集方法、編集装置
US20020191107A1 (en) * 2001-06-14 2002-12-19 Sony Corporation Start/stop audio encoder apparatus and method for synchronizing digital audio and video signals
JP2007195208A (ja) * 2001-09-27 2007-08-02 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2013515401A (ja) * 2009-12-21 2013-05-02 エコスター アドバンスト テクノロジーズ エル.エル.シー. コーデック適用フレーム・サイズでの音声スプリッティング
US20130141643A1 (en) * 2011-12-06 2013-06-06 Doug Carson & Associates, Inc. Audio-Video Frame Synchronization in a Multimedia Stream

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021529478A (ja) * 2018-06-28 2021-10-28 ドルビー ラボラトリーズ ライセンシング コーポレイション 適応的なストリーミング整列のためのフレーム変換
US11368747B2 (en) 2018-06-28 2022-06-21 Dolby Laboratories Licensing Corporation Frame conversion for adaptive streaming alignment
JP7171772B2 (ja) 2018-06-28 2022-11-15 ドルビー ラボラトリーズ ライセンシング コーポレイション 適応的なストリーミング整列のためのフレーム変換
US11770582B2 (en) 2018-06-28 2023-09-26 Dolby Laboratories Licensing Corporation Frame conversion for adaptive streaming alignment

Also Published As

Publication number Publication date
JP6438040B2 (ja) 2018-12-12
EP3105938B1 (en) 2020-12-16
WO2015118164A1 (en) 2015-08-13
CN105981397B (zh) 2020-06-16
US20160366452A1 (en) 2016-12-15
EP3105938A1 (en) 2016-12-21
KR101861941B1 (ko) 2018-07-02
US9883213B2 (en) 2018-01-30
CN105981397A (zh) 2016-09-28
KR20160106150A (ko) 2016-09-09

Similar Documents

Publication Publication Date Title
JP6438040B2 (ja) 完璧な接合のためのトランスポート・ストリームへのエンコードされたオーディオの埋め込み
US11743553B2 (en) Data processor and transport of user control data to audio decoders and renderers
US11770582B2 (en) Frame conversion for adaptive streaming alignment
JP7238925B2 (ja) 送信装置、送信方法、受信装置および受信方法
CN109640162B (zh) 码流转换方法及系统
US20180322888A1 (en) Transmitting apparatus, transmitting method, receiving apparatus, and receiving method
US8155506B2 (en) System and method for transport PID version check
US20070165621A1 (en) System and method for transport PID broadcast scheme
CN108702533B (zh) 发送装置、发送方法、接收装置和接收方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171107

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180817

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20180828

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181115

R150 Certificate of patent or registration of utility model

Ref document number: 6438040

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250