JP4997720B2 - 多重化装置、多重化方法、プログラム、および記録媒体 - Google Patents

多重化装置、多重化方法、プログラム、および記録媒体 Download PDF

Info

Publication number
JP4997720B2
JP4997720B2 JP2005197051A JP2005197051A JP4997720B2 JP 4997720 B2 JP4997720 B2 JP 4997720B2 JP 2005197051 A JP2005197051 A JP 2005197051A JP 2005197051 A JP2005197051 A JP 2005197051A JP 4997720 B2 JP4997720 B2 JP 4997720B2
Authority
JP
Japan
Prior art keywords
stream
packets
basic
packet
audio
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005197051A
Other languages
English (en)
Other versions
JP2006197543A (ja
Inventor
綾子 岩瀬
元樹 加藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2005197051A priority Critical patent/JP4997720B2/ja
Publication of JP2006197543A publication Critical patent/JP2006197543A/ja
Application granted granted Critical
Publication of JP4997720B2 publication Critical patent/JP4997720B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、多重化装置多重化方法プログラム、および記録媒体に関し、特に、基本ストリームと拡張ストリームからなる、階層符号化されたオーディオストリームを、受信側の能力を考慮して多重化することができるようにした多重化装置多重化方法プログラム、および記録媒体に関する。
ビデオストリームやオーディオストリームをパケット化して符号化(多重化)する方式のひとつに、MPEG(Moving Picture Experts Group)トランスポートストリーム(以下、MPEG2-TSと称する)がある。
図1は、送信装置11がMPEG2-TSを用いて符号化する場合における制約を説明する図である。送信装置11は、ビデオストリームやオーディオストリームを、MPEG2-TSの方式で符号化し、送信する。このとき、送信装置11は、仮想的な受信装置12を想定し、送信装置11が送信したMPEG2-TSをその仮想的な受信装置12が有する仮想デコーダ21で復号できるように、MPEG2-TSのビデオストリームやオーディオストリームをパケット化するタイミングを決定する。ここで、仮想的な受信装置12は、例えば、ISO/IEC 13818-1 MPEG2 systems規格で規定されているところのT-STD(Transport stream Standard Target Decoder)である仮想デコーダ21を有している。
図2は、図1の仮想デコーダ21の構成例を示す図である。すなわち、図2の仮想デコーダ21は、MPEG2 systems規格で規定されているT-STDモデルである。
MPEG2 systems規格では、MPEG1ビデオ、MPEG2ビデオ、およびMPEG4 AVCなどのMPEG規格で規定されているビデオストリームと、MPEG1オーディオ、MPEG2 AACオーディオなどのMPEG規格で規定されているオーディオストリームとを、MPEG2-TSの方式で符号化する場合の制限を定めている。すなわち、送信装置11(図1)は、図2の仮想デコーダ21でデコード可能となるように、ビデオストリームやオーディオストリームをエンコードする。換言すれば、送信装置11は、図2の仮想デコーダ21のモデルの制限に収まるように、ビデオストリームやオーディオストリームをデコードするとともにパケット化する。
仮想的な受信装置12(図1)に送信されてきたMPEG2-TSは、仮想デコーダ21に供給される。仮想デコーダ21に供給されたMPEG2-TSは、図2に示されるように、フィルタ41によって、パケットの種類ごとにフィルタリングされる。
具体的には、MPEG2-TSは、複数のパケットにより構成されており、各パケットには、そのパケットを識別するためのPID(Packet Identification)が付されている。フィルタ41は、MPEG2-TSを構成する各パケットに付されたPIDに基づいて、ビデオストリームを構成するTSパケットを、ビデオストリームを処理するためのビデオデータデコード処理部50に供給し、オーディオストリームを構成するTSパケットを、オーディオストリームを処理するためのオーディオデータデコード処理部60に供給し、システムに関するTSパケットを、システムに関するデータを処理するためのシステムデータデコード処理部70に供給する。
ビデオストリーム処理部50には、トランスポートバッファ(図中、TBvと記述する)51、マルチプレクスバッファ(図中、MBvと記述する)52、エレメンタリバッファ(図中、EBvと記述する)53、ビデオデコーダ(図中、Dvと記述する)54、およびアウトプットリオーダリングバッファ(図中、Ovと記述する)55が設けられている。
ビデオストリームを構成するTSパケットが、フィルタ41を介してビデオストリーム処理部50に供給されると、トランスポートバッファ51に蓄積される。トランスポートバッファ51に蓄積されたTSパケットは、所定のタイミングでマルチプレクスバッファ52に供給されてスムージングされた後、エレメンタリバッファ53に供給される。ビデオデコーダ54は、エレメンタリバッファ53に蓄積されているビデオアクセスユニットを所定のタイミングで引き抜き、それを復号して出力する。復号されたデータのうちの一部は、アウトプットリオーダリングバッファ55を介して端子56から出力され、それ以外のデータは、端子57から出力されて再生される。
オーディオストリーム処理部60には、トランスポートバッファ(図中、TBnと記述する)61、エレメンタリバッファ(図中、Bnと記述する)62、およびオーディオデコーダ(図中、Dnと記述する)63が設けられている。
オーディオストリームを構成するTSパケットが、フィルタ41を介してオーディオストリーム処理部60に供給されると、トランスポートバッファ61に蓄積される。このトランスポートバッファ61のサイズ(容量)は512バイトとされる。エレメンタリバッファ62のサイズは、オーディオ符号化方法(MPEG1オーディオやMPEG2 AACオーディオなど)によって異なるものとされている。ここで、Rxnは、トランスポートバッファ61からのリークレートであり、トランスポートバッファ61にデータが入っている場合、トランスポートバッファ61からのデータは、Rxnのレート(速度)でエレメンタリバッファ62に供給され、トランスポートバッファ61にデータが入っていない場合、トランスポートバッファ61からのデータは、エレメンタリバッファ62には供給されない(すなわちRxn=0となる)。
オーディオデコーダ63は、エレメンタリバッファ62に蓄積されているオーディオアクセスユニットを所定のタイミングで引き抜き復号するとともに、端子64を介して出力し、再生する。具体的には、オーディオデコーダ63は、オーディオアクセスユニットのPTS(Presentation Time Stamp)が、T-STDのシステムタイムクロック上の時間に等しくなったときに、そのオーディオアクセスユニットをエレメンタリバッファ62から引き抜く。ここで、オーディオアクセスユニットとは、オーディオストリームを構成する符号化単位であり、また、それが復号単位となる。
また、システムデータデコード処理部70には、トランスポートバッファ(図中、TBsysと記述する)71、エレメンタリバッファ(図中、Bsys記述する)72、およびシステムデコーダ(図中、Dsysと記述する)73が設けられている。
システムに関するTSパケットが、フィルタ41を介してシステムデータデコード処理部70に供給されると、トランスポートバッファ71に蓄積される。トランスポートバッファ71に蓄積されたデータは、エレメンタリバッファ72に供給される。システムデコーダ73は、エレメンタリバッファ72に蓄積されているシステムアクセスユニットを所定のタイミングで引き抜き復号し、端子74を介して出力する。
このような図2の仮想デコーダ21を有する仮想的な受信装置12によって正しくデコードできるように、図1の送信装置11は、ビデオストリームやオーディオストリームをパケット化し、送信するタイミングを決定して符号化する必要がある。
すなわち、送信装置11は、例えば図2の仮想デコーダ21(T-STD)の中のオーディオデコーダモデルでいえば、トランスポートバッファ61がオーバーフローすることなく、かつ、エレメンタリバッファ62がオーバーフローおよびアンダーフローすることがないように、オーディオストリームのパケット化タイミングを決定し、符号化しなければならない。
ところで、受信装置(再生装置)には、特許文献1に示されるような基本ストリームと、基本ストリームに対して拡張性を有する拡張ストリームを処理して再生するものが提案されている。
特開平11−31362号公報
しかしながら、送信装置11が、基本ストリームに対して拡張性を有する拡張ストリームからなる階層符号化されたストリームを多重化して送信する場合、図2の仮想デコーダ21を有する仮想的な受信装置12を想定したとき、基本ストリームと拡張ストリームの両方に対応した受信装置(実際の図示せぬ受信装置)ではデコード可能であるが、基本ストリームのみに対応した受信装置(実際の図示せぬ受信装置)においては、必ずしもデコード可能ではなく、トランスポートバッファ61がオーバーフローしたり、エレメンタリバッファ62がオーバーフローおよびアンダーフローする可能性があった。
すなわち、送信装置11が基本ストリームと拡張ストリームからなる階層符号化されたストリームを送信する場合、仮想的な受信装置12が有する仮想デコーダ21を図2のように想定しただけであると、基本ストリームのみを受信する受信装置で十分にデコードできない場合があった。
本発明はこのような状況に鑑みてなされたものであり、基本ストリームと拡張ストリームからなる、階層符号化されたオーディオストリームを、受信側で確実にデコードできるように、受信側の能力を考慮してエンコードし、多重化して送信するものである。
本発明の一側面の多重化装置は、入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコード手段と、前記エンコード手段によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化手段と、前記TSパケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御手段と、前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化手段とが設けられている。
前記基本ストリームのTSパケットのトランスポートプライオリティと、前記拡張ストリームのTSパケットのトランスポートプライオリティは異なるようにすることができる。
前記基本ストリームのストリームIDと、前記拡張ストリームのストリームIDは異なるようにすることができる。
前記エンコード手段によりエンコードされた前記基本ストリームの1アクセスユニットは固定長とされるようにすることができる。
前記制御手段は、前記エンコード手段によりエンコードされた前記基本ストリームのTSパケットの再生単位の時間に基づいて、配置する前記基本ストリームのTSパケットの間隔を算出させ、算出した前記間隔で、前記基本ストリームのTSパケットを配置するよう制御させた後、配置した前記基本ストリームのTSパケットと対となる前記拡張ストリームのTSパケットをさらに配置するよう制御させるようにすることができる。
前記基本ストリームは、基本オーディオストリームであるとともに、前記拡張ストリームは、拡張オーディオストリームであり、前記制御手段は、前記エンコード手段によりエンコードされた前記基本オーディオストリームの周波数と、前記基本オーディオストリームの1アクセスユニットのサンプル数に基づいて、配置する前記基本オーディオストリームのTSパケットの間隔を算出し、算出した前記間隔で、前記基本オーディオストリームのTSパケットを配置するよう制御させた後、配置した前記基本オーディオストリームのTSパケットと対となる前記拡張オーディオストリームのTSパケットをさらに配置するよう制御させるようにすることができる。
前記エンコード手段によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれPESパケットにパケット化させるとともに、PTSを付すPESパケット化手段をさらに設け、前記TSパケット化手段は、前記PESパケット化手段によりパケット化された複数の前記PESパケットを、それぞれTSパケットにパケット化させ、前記制御手段は、前記TSパケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するとともに、同じPTS(Presentation Time Stamp)を持つPESパケットがパケット化されたTSパケットについて、前記基本ストリームのTSパケットの後に、前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御させ、前記多重化手段は、前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化させるようにすることができる。
前記多重化手段により多重化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを、記録媒体に記録させるよう制御する記録制御手段をさらに設けるようにすることができる。
前記入力したストリームには、オーディオストリームとビデオストリームのうちの少なくとも一方が含まれるようにすることができる。
前記制御手段は、エレメンタリバッファの容量が第1の容量、前記エレメンタリバッファへの入力ビットレートが第1のレートと想定した、前記基本ストリームのみに対応している第1の仮想デコーダを有する第1の仮想的な受信装置と、エレメンタリバッファの容量が第2の容量、前記エレメンタリバッファへの入力ビットレートが第2のレートと想定した、前記基本ストリームと前記拡張ストリームとに対応している第2の仮想デコーダを有する第2の仮想的な受信装置との2つの仮想的な受信装置のそれぞれの前記エレメンタリバッファがオーバーフローおよびアンダーフローしないように、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットの配置を制御させるようにすることができる。
前記エレメンタリバッファの第1の容量は、第2の容量より小さく、前記エレメンタリバッファへの入力ビットレートである第1のレートは、第2のレートより遅いようにすることができる。
本発明の一側面の多重化方法(またはプログラム)は、入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップと、前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTSパケットにパケット化するTSパケット化ステップと、前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御ステップと、前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップとを含む(または含む処理をコンピュータに実行させる)多重化方法(またはプログラム)である。
本発明の一側面の記録媒体は、入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップと、前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化ステップと、前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御ステップと、前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップとを含む処理により生成された、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットの多重化結果が記録されている記録媒体である。
本発明の一側面においては、入力したストリームが基本ストリームと拡張ストリームとを含むようにエンコードされて同一のパケットIDのTSパケットにパケット化され、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置が制御され、制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとが多重化される。
多重化装置は、独立した装置であってもよいし、送信装置の多重化処理を行うブロックであってもよい。
本発明の一側面によれば、ストリームを、受信側の能力を考慮してエンコードし、多重化することができる。特に、本発明の一側面によれば、基本ストリームと拡張ストリームからなる、階層符号化されたオーディオストリームを、受信側で円滑にデコードできるように、エンコードして多重化することができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の一側面の多重化装置(例えば、図4の送信装置111または図15の送信装置111)は、第1に、入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコード手段(例えば、図4または図15のオーディオエンコーダ132)と、前記エンコード手段によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化手段(例えば、図4のTSパケット化部137、または、図15の基本TSパケット化部402−1と拡張TSパケット化部402−2)と、前記TSパケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御手段(例えば、図4または図15の制御部135)と、前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化手段(例えば、図4のTSパケット化部137、または、図15の多重化処理部403)を備える。
この多重化装置の前記制御手段は、前記エンコード手段によりエンコードされた前記基本ストリームのTSパケットの再生単位の時間に基づいて、配置する前記基本ストリームのTSパケットの間隔を算出し(例えば、図21のステップS251の処理で時間T41を算出し)、算出した前記間隔で、前記基本ストリームのTSパケットを配置するよう制御した後(例えば、図21のステップS252)、配置した前記基本ストリームのTSパケットと対となる前記拡張ストリームのTSパケットをさらに配置するよう制御する(例えば、図21のステップS254)。
この多重化装置は、前記エンコード手段によりエンコード前記基本ストリームと前記拡張ストリームとを、それぞれPES(Packetized Elementarty Stream)パケットにパケット化するとともに、PTS(Presentation Time Stamp)を付すPESパケット化手段(例えば、図4または図15のPESパケット化部136)をさらに設け、前記TSパケット化手段は、前記PESパケット化手段によりパケット化された複数の前記PESパケットを、それぞれTSパケットにパケット化し(例えば、図19のステップS217)、前記制御手段は、前記パケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後(例えば、図21のステップS252)、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するとともに(例えば、図21のステップS254)、同じPTS(Presentation Time Stamp)を持つPESパケットがパケット化されたTSパケットについて、前記基本ストリームのTSパケットの後に、前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御し、前記多重化手段は、前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する(例えば、図21のステップS258)。
この多重化装置の前記制御手段は、エレメンタリバッファの容量が第1の容量(例えば、bn0)、前記エレメンタリバッファへの入力ビットレートが第1のレート(例えば、rxn0)と想定した、前記基本ストリームのみに対応している第1の仮想デコーダを有する第1の仮想的な受信装置(例えば、bn0,rxn0と想定された仮想的な受信装置112)と、エレメンタリバッファの容量が第2の容量(例えば、bn1)、前記エレメンタリバッファへの入力ビットレートが第2のレート(例えば、rxn1)と想定した、前記基本ストリームと前記拡張ストリームとに対応している第2の仮想デコーダを有する第2の仮想的な受信装置(例えば、bn1,rxn1と想定された仮想的な受信装置112)との2つの仮想的な受信装置のそれぞれの前記エレメンタリバッファがオーバーフローおよびアンダーフローしないように、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットの配置を制御する(例えば、図9のステップS18または図21の処理)。
本発明の一側面の多重化方法またはプログラムは、入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップ(例えば、図8のステップS12または図19のステップS212)と、前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化ステップ(例えば、図8のステップS17または図19のステップS217)と、前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後(例えば、図21のステップS252)、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置する(例えば、図21のステップS254)よう、TSパケットの配置を制御する制御ステップ(例えば、図9のステップS18または図21のステップS251乃至ステップS257)と、前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップ(例えば、図9のステップS19または図21のステップS258)とを含む(または含む処理をコンピュータに実行させる)。
以下、図を参照して、本発明の第1実施の形態について説明する。
図3は、本発明を適用した送信装置111がMPEG(Moving Picture Experts Group)2-TS(Transport stream)(以下、MPEG2-TSと称する)の方式を用いてオーディオストリームを符号化する場合の制約を説明する図である。
この送信装置111は、例えば、放送局などのように複数のMPEG2-TSパケットからなるストリームを送信する装置である。例えば、送信装置111は、ビデオストリームやオーディオストリームを、受信側の仮想的な受信装置112を想定しながらMPEG2-TSの方式を用いて符号化し、実際の受信装置(図示せず)に送信する。また、例えば、送信装置111は、仮想的な受信装置112を想定しながらMPEG2-TSの方式を用いて符号化(TSパケットを多重化し)、このストリームを、ドライブを介して磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどにより構成されるリムーバブルメディアに記録させる(すなわち、この例の場合、送信装置111は、リムーバブルメディアにストリームを送信する)。リムーバブルメディアに記録されたストリームは、例えば、実際の受信装置(図示せず)に読み出される。すなわち、送信装置111は、リムーバブルメディアを介して図示せぬ受信装置にストリームを送信することも可能な構成とされている。
なお、本実施の形態においては、送信装置111が、オーディオストリームを符号化し、これをTSパケット化(MPEG2-TSパケットと)し、多重化して送信するものとして説明する。また、本実施の形態では、基本ストリームに対して拡張性を有する拡張ストリームからなる階層符号化されたオーディオストリームを符号化して送信する場合について説明する。ここで、基本オーディオストリームと拡張オーディオストリームの関係としては、基本オーディオストリーム単体だけでオーディオを再生することができ、基本オーディオストリームと拡張オーディオストリームの両方をデコードすると、基本オーディオストリームのみを再生した場合よりも、オーディオの再生品質が高くなったり、また、機能性が高くなったりするものとする。また、基本オーディオストリームの1アクセスユニットは固定長とされる。拡張オーディオストリームの1アクセスユニットは、固定長とは限らず、可変長であることもあり得る。
送信装置111は、オーディオストリームを、MPEG2-TSの方式を用いて符号化する。このとき、送信装置111は、自分自身のなかで仮想的な受信装置112を想定し、送信装置111が送信するMPEG2-TSをその仮想的な受信装置112が有する仮想デコーダ121で復号できるように、MPEG2-TSのオーディオストリームをパケット化し、送信するタイミングを決定する。なお、仮想デコーダ121の構成例は、図7を用いて後述する。
図4は、図3の送信装置111の構成例を示すブロック図である。
送信装置111には、入力部131、オーディオエンコーダ132、バッファ133、抽出情報付加部134、制御部135、PESパケット化部136、TSパケット化部137、および送信部138が設けられている。また、バッファ133には、基本バッファ141と拡張バッファ142が設けられている。
入力部131には、送信対象のオーディオストリームが入力される。入力部131に入力されたオーディオストリームはオーディオエンコーダ132に供給される。
オーディオエンコーダ132は、入力部131から供給されたオーディオストリームをエンコード(符号化)し、バッファ133に供給する。図4のオーディオエンコーダ132は、階層符号化に対応したエンコーダである。すなわち、オーディオエンコーダ132は、入力されたオーディオストリームを、基本オーディオストリームと拡張オーディオストリームとを含むようにエンコードすることができる。詳細には、オーディオエンコーダ132は、オーディオストリームを、基本オーディオストリームと拡張オーディオストリームとを含むようにエンコードし、エンコードした基本オーディオストリームをバッファ133の基本バッファ141に供給するとともに、拡張オーディオストリームをバッファ133の拡張バッファ142に供給する。
基本バッファ141は、基本オーディオストリームを格納(バッファリング)し、拡張バッファ142は、拡張オーディオストリームを格納(バッファリング)する。そして、基本バッファ141と拡張バッファ142のそれぞれは、制御部135からの制御に基づいて、自分自身に格納されているオーディオストリームを読み出し、PESパケット化部136に供給する。
制御部135は、バッファ133に格納(バッファリング)されたオーディオストリーム(基本オーディオストリームと拡張オーディオストリーム)を監視したり、PESパケット化部136、TSパケット化部137、および送信部138の各部を制御したりする。また、制御部135は、PTS(Presentation Time Stamp)を管理する。さらに、制御部135は、後述する図7の仮想デコーダ121のバッファ占有量の計算を行い、TSパケットの送信タイミングを決定(調整)する。すなわち、制御部135は、仮想デコーダ121のバッファ占有量の計算に基づいて、送信部138が送信するTSパケットの送信タイミングを調整(制御)する。
PESパケット化部136は、基本バッファ141と拡張バッファ142のそれぞれから供給されるオーディオストリームを、制御部135からの制御に基づいてPESパケット化する。具体的には、PESパケット化部136は、基本バッファ141と拡張バッファ142のそれぞれを制御して基本オーディオストリームと拡張オーディオストリームのそれぞれを取得し、それぞれのオーディオストリームをPESパケットにそれぞれパケット化する。このとき、PESパケット化部136は、制御部135から供給されてきたPTSを、各PESパケットに格納する。すなわち、PESパケット化部136から出力されるPESパケットには、それぞれPTSが格納されている。
なお、PESパケット化部136は、抽出情報付加部134からストリームID(例えば、stream_id_extension)が供給されてきた場合には、取得した基本オーディオストリームと拡張オーディオストリームのそれぞれを、抽出情報付加部134から供給されたストリームID(例えば、stream_id_extension)のうちの対応する1つを持つPESパケットにそれぞれパケット化するようにすればよい。各PESパケットのそれぞれのストリームIDは、対応するPESパケットの種類を識別するためのものである。PESパケットの種類とは、基本オーディオストリームと拡張オーディオストリームのうちのいずれかとなる。例えば、基本オーディオストリームの種類のPESパケットとは、基本オーディオストリームのうちの少なくとも一部のデータが含まれているPESパケットを指す。従って、受信側の図3の仮想的な受信装置112で、所望のオーディオストリームの種類のPESパケットを選択するためには、そのPESパケットに付されているストリームIDの値を認識すればよい。
本実施の形態では、上述した各PESパケットのそれぞれが所定の順番で連続してPESパケット化部136からTSパケット化部137に供給されるとする。この場合、結果として複数のPESパケットからなる1つのストリーム(以下、PESまたはPESパケットストリームと称する)がPESパケット化部136からTSパケット化部137に供給されることになる。なお、PESパケットストリームの具体例については、図5と図6を参照して後述する。
TSパケット化部137は、制御部135からの制御に基づいて、PESパケット化部136から供給されたPESパケットストリームをTSパケット(トランスポートストリームパケット)にパケット化する。
抽出情報付加部134は、基本オーディオストリームと拡張オーディオストリームのそれぞれの種類のストリームの抽出がデコード側(図3の仮想的な受信装置112側)で可能となるように、基本オーディオストリームと拡張オーディオストリームのそれぞれの種類に対して一意に付されたユニークな値のID(Identification)を、TSパケット化部137に供給する。すなわち、抽出情報付加部134は、基本オーディオストリームと拡張オーディオストリームのそれぞれを識別するための識別情報(ID)を、TSパケット化部137に供給する。
このIDには、例えば、トランスポートパケットヘッダにあるTransport_priorityフラグを用いることができる。抽出情報付加部134は、基本オーディオストリームを伝送するトランスポートパケットには、Transport_priority=1をセットし、拡張オーディオストリームを伝送するトランスポートパケットには、Transport_priority=0をセットするような情報(抽出情報)を、TSパケット化部137に供給する。
なお、抽出情報付加部134は、TSパケット化部137に抽出情報としてIDを供給するだけでなく、PESパケット化部136にさらに抽出情報を送信するようにしてもよい。例えば、抽出情報付加部134は、基本オーディオストリームと拡張オーディオストリームのそれぞれの種類のストリームの抽出がデコード側(例えば、図3の仮想的な受信装置112側)で可能となるように、基本オーディオストリームと拡張オーディオストリームのそれぞれの種類に対して一意に付されたユニークな値のIDを、PESパケット化部146に供給する。PESパケット化部146は、生成したPESパケットのそれぞれに、抽出情報付加部134から供給されたIDを付す。
このIDについて、本実施の形態では、Stream_idまたはStream_id_extensionを用いる。Stream_idは、MPEG2 systems規格で規定されているPESパケットヘッダにあるStream_idを指す。また、Stream_id_extensionは、MPEG2 systems規格Amendment2(2003)で規定されているPESパケットヘッダにあるStream_id_extensionを指す。オーディオストリームがMPEG Audio(MPEG-1/-2 Audio, MPEG AAC)以外のストリームである場合、Stream_id_extensionを採用すると好適である。Stream_id_extensionを用いる場合、MPEG2 systems規格Amendment2(2003)は、Stream_idに「1111 1101」(extended_stream_idを意味する値)をセットすることを規定している。また、MPEG2 systems規格Amendment2(2003)は、ストリームの種類(基本オーディオストリームと拡張オーディオストリーム)を識別するユニークな値のStream_id_extensionの使用ができることを規定している。
なお、実際には、図4の送信装置111がオーディオストリーム以外のデータとして、システムデータやビデオデータもデコードしているが、ここでは、オーディオストリームを送信する場合についてのみ説明した。
以上、図4を参照して、送信装置111の構成例について説明した。
次に、図5と図6を参照して、図4の送信装置111から送信されるTS、即ち、本発明が適用されるTSの一例として、基本オーディオストリームと拡張オーディオストリームが多重化されたTS(トランスポートストリーム)の構造を説明する。図5の例において、1段目の基本オーディオストリーム181と拡張オーディオストリーム182は、図4のオーディオエンコーダ132によりエンコードされて出力された状態を示しており、2段目のPESパケットストリーム191は、図4のPESパケット化部136によりPESパケット化されて出力された状態を示しており、3段目のTS201は、図4のTSパケット化部137によりTSパケット化されて出力された状態を示している。
図5の例において、TS(MPEG2-TS)は、PAT(Program Association Table)に対応するTSパケット221およびPMT(Program Map Table)に対応するTSパケット222、並びに、基本オーディオストリーム181および拡張オーディオストリーム182に対応するTSパケット241乃至250を含むように構成されている。
基本オーディオストリーム181と拡張オーディオストリーム182とは何れも、所定のオーディオサンプル数を1つの単位として符号化されており、それぞれの単位毎に括弧で示す添え字で区切って示されている。具体的には例えば、基本オーディオストリーム181は、BS(1),BS(2),・・・,BS(n)というように、複数の単位(オーディオアクセスユニット)に分離されて符号化されている。同様に例えば、拡張オーディオストリーム182は、Ext1(1),Ext1(2),・・・,Ext1(n)というように、複数の単位(オーディオアクセスユニット)に分離されて符号化されている。係る基本オーディオストリーム181と(第1の)拡張オーディオストリーム182とにおいて、添え字の同じもの同士、例えば、BS(1)とExt1(1)とは、同期して図4のオーディオエンコーダ132によりエンコードされるとともに、同期して図示せぬ受信装置により再生(デコード)される。なお、nは任意の自然数とされる。
図4のPESパケット化部136は、基本オーディオストリーム181と拡張オーディオストリーム182とを、図5に示されるように、それぞれ別のストリームIDのPESパケットにパケット化する。具体的には、図5の例では、基本オーディオストリーム181に対応するPESパケットのストリームIDは、「PESH Id_ex=b1」と記述されているように「Stream_id_extension=b1」とされ、一方、拡張オーディオストリーム182に対応するPESパケットのストリームIDは、「PESH Id_ex=b2」と記述されているように「Stream_id_extension=b2」とされている。なお、n'は任意の自然数とされる。
このようにして、PESパケット化部136は、図5に示されるPESパケットストリーム191を生成して、TSパケット化部137に供給する。
これに対して、TSパケット化部137は、PESパケットストリーム191を構成する各PESパケットのそれぞれを、図5の3段目に示されるように、同一のPIDのTSパケットのそれぞれにパケット化して多重化する。具体的には、TSパケット化部137は、基本オーディオストリーム181と拡張オーディオストリーム182のそれぞれのPESパケットを、図5に示されるように、それぞれ別のIDを持つトランスポートパケットにパケット化する。図5の例では、基本オーディオストリーム181のトランスポートパケットのIDは、「PID=a0,tp=1」と記述されているように「transport_priority=1」とされ、一方、拡張オーディオストリーム182のトランスポートパケットのIDは、「PID=a0,tp=0」と記述されているように、「transport_priority=0」とされている。これにより、TSパケット化部137により、トランスポートストリーム(TS)201が生成される(TSパケット化される)。
このように、1本のストリームに対しては同一のPIDが付され、1本のストリームに含まれる基本オーディオストリームおよび拡張オーディオストリームを識別するために、それぞれ異なるtp(transport_priority)が付される。
なお、本実施の形態においては、トランスポートストリームの中で、基本オーディオストリーム、そして拡張オーディオストリームの順番に、同期して再生される符号化単位が並んで符号化されていなければならない(すなわち、トランスポートストリームの中で、BS(1), Ext1(1),BS(2),Ext1(2)・・・,BS(n)Ext1(n)の順番に並んで符号化されていなければならない)。
図6は、TS281が、PATに対応するTSパケット221およびPMTに対応するTSパケット222、並びに、基本オーディオストリーム181を含むように構成されている場合の例である。すなわち、図6の例においては、TS281は、基本オーディオストリーム181のみを多重化したトランスポートストリームの構造を示している。図5と図6を比較するに、図5から基本オーディオストリームのみを抜き出したものが図6とされている。なお、図中、図5と対応する部分については同一の符号を付してあり、その説明は繰り返しになるので省略する。
図6の例において、1段目の基本オーディオストリーム181は、図4のオーディオエンコーダ132によりエンコードされて出力された状態を示しており、2段目のPESパケットストリーム271は、図4のPESパケット化部136によりPESパケット化されて出力された状態を示しており、3段目のTS281は、図4のTSパケット化部137によりTSパケット化されて出力された状態を示している。
図4のPESパケット化部136は、基本オーディオストリーム181を、図6に示されるように、同一のストリームIDのPESパケットにパケット化する。具体的には、図6の例では、基本オーディオストリーム181に対応するPESパケットのストリームIDは、「PESH Id_ex=b1」と記述されているように「Stream_id_extension=b1」とされる。このように、PESパケット化部136は、図6に示されるPESパケットストリーム271を生成して、TSパケット化部137に供給する。
これに対して、TSパケット化部137は、PESパケットストリーム271を構成する各PESパケットのそれぞれを、図6の3段目に示されるように、同一のPIDのTSパケットのそれぞれにパケット化して多重化し、トランスポートストリーム281とする。TSパケット化部137は、基本オーディオストリーム181のそれぞれのPESパケットを、図6に示されるように、同一のIDを持つトランスポートパケット291乃至296にパケット化する。具体的には、図6の例では、基本オーディオストリーム181のトランスポートパケットのIDは、「PID=a0,tp=1」と記述されているように「transport_priority=1」とされる。
このように、1本のストリームに対して同一のPIDが付されるとともに、そのストリームに含まれるストリームの種類が基本オーディオストリームのみである場合には、同じtp(transport_priority)が付される。
本実施の形態においては、送信装置111が、基本オーディオストリームと拡張オーディオストリームの構造を有する階層化符号化されたオーディオストリームを送信する場合に、仮想的な受信装置112(図3)の能力に応じてTSパケットの送信のタイミングを調整するようにする。すなわち、仮想的な受信装置112が基本オーディオストリームと拡張オーディオストリームの両方に対応した(基本オーディオストリームと拡張オーディオストリームの両方をデコード可能な)仮想的な受信装置である場合であっても、仮想的な受信装置112が基本オーディオストリームのみに対応した(基本オーディオストリームのみデコード可能な)受信装置である場合であっても、それらの仮想的な受信装置112のバッファがオーバーフローおよびアンダーフローせずにデコード可能となるように、送信装置111側で、エンコードしたTSパケットを送信するタイミングを調整するようにする。
具体的には、送信装置111は、図5に示されるTS201をデコード可能な仮想的な受信装置(第1の仮想的な受信装置)と、図6に示されるTS281のみをデコード可能な受信装置(第2の仮想的な受信装置)とに対応するように、タイミングを調整して、図5に示されるTS201を構成するTSパケットを送信するようにする。すなわち、送信装置111は、仮想的な受信装置112が基本オーディオストリームのみを抽出して復号する場合に、所定のサイズの基本オーディオストリーム用のデコーダバッファをオーバーフローおよびアンダーフローすることがないように、階層化符号化されたオーディオストリームのパケット化タイミング(パケットの送信タイミング)を調整する。
そのために、仮想的な受信装置112が、基本オーディオストリームのデコード能力しか持たない場合、すなわち、図6に示される基本オーディオストリーム181のTS281のみをデコードする能力を有する場合に、仮想的な受信装置112が有するオーディオバッファの最低限必要なサイズ(容量)を決め、さらに、そのオーディオバッファへの入力ビットレートの値を決める。
また、仮想的な受信装置112が、基本オーディオストリームと拡張オーディオストリームの両方のデコード能力を持つ場合、すなわち、図5に示される基本オーディオストリーム181と拡張オーディオストリーム182の両方をデコードする能力を有する場合に、仮想的な受信装置112が有するオーディオバッファの最低限必要なサイズ(容量)を決め、さらに、そのオーディオバッファへの入力ビットレートの値を決める。
なお、ここで、オーディオバッファのサイズは、図2のエレメンタリバッファ62のサイズに対応し、オーディオバッファへの入力ビットレートの値は、図2のRxnに対応する。
すなわち、仮想的な受信装置112が、基本オーディオストリームをデコードする能力しか有していない場合、または、基本オーディオストリームと拡張オーディオストリームの両方をデコードする能力を有する場合の、2種類の仮想的な受信装置のそれぞれについて、オーディオバッファのサイズとオーディオバッファへの入力ビットレートの値を設定する。
本実施の形態においては、基本オーディオストリームのデコード能力しか有さない仮想的な受信装置112のエレメンタリバッファのサイズをBn=bn0、オーディオバッファへの入力ビットレートの値(オーディオバッファへのリークレート)をRxn=rxn0とする。また、基本オーディオストリームと拡張オーディオストリームの両方をデコードする能力を有する仮想的な受信装置112のエレメンタリバッファのサイズをBn=bn1、オーディオバッファへの入力ビットレートの値(オーディオバッファへのリークレート)をRxn=rxn1とする。また、bn0<bn1、rxn0<rxn1が成立するものとする。すなわち、エレメンタリバッファの容量bn0は、容量bn1より小さく、エレメンタリバッファへの入力ビットレートの値rxn0は、値rxn1より小さいことが成立するものとする。
図7は、基本オーディオストリームと拡張オーディオストリームとを多重化するトランスポートストリームの符号化制約のための仮想的なデコーダ121のモデルを説明する図である。すなわち、送信装置111が、基本オーディオストリームと拡張オーディオストリームを、MPEG2-TSの方式でエンコードして送信する場合に想定する仮想的な受信装置112が有する仮想デコーダ121(図3)モデルの構成例が、図7に示されている。換言すれば、図7は、送信装置111が基本オーディオストリームと拡張オーディオストリームとをデコードし、パケット化して送信する場合に想定する仮想デコーダ121のモデルとされる。
仮想的な受信装置112に送信されてきたMPEG2-TSは、仮想デコーダ121に供給される。仮想デコーダ121に供給されたMPEG2-TSは、図7に示されるように、フィルタ141によって、パケットの種類ごとにフィルタリングされる。
具体的には、MPEG2-TSは、複数のパケットにより構成されており、各パケットには、そのパケットを識別するためのPID(Packet Identification)が付されている。フィルタ141は、MPEG2-TSを構成する各パケットに付されたPIDに基づいて、ビデオストリームを構成するTSパケットを、ビデオストリームを処理するためのビデオデータデコード処理部350に供給し、オーディオストリームを構成するTSパケットを、オーディオストリームを処理するためのオーディオデータデコード処理部360に供給し、システムに関するTSパケットを、システムに関するデータを処理するためのシステムデータデコード処理部370に供給する。
ビデオストリーム処理部350には、トランスポートバッファ(図中、TBvと記述する)351、マルチプレクスバッファ(図中、MBvと記述する)352、エレメンタリバッファ(図中、EBvと記述する)353、ビデオデコーダ(図中、Dvと記述する)354、およびアウトプットリオーダリングバッファ(図中、Ovと記述する)355が設けられている。
ビデオストリームを構成するTSパケットが、フィルタ341を介してビデオストリーム処理部350に供給されると、トランスポートバッファ351に蓄積される。そして、所定のビットレートでマルチプレクスバッファ352にデータが供給される。マルチプレクスバッファ352は、供給されたデータを蓄積してスムージングした後、所定のビットレートでエレメンタリバッファ353にデータを供給する。ビデオデコーダ354は、エレメンタリバッファ353に蓄積されているビデオアクセスユニットを所定のタイミングで引き抜き、それを復号して出力する。復号されたデータのうちの一部は、アウトプットリオーダリングバッファ355を介して端子356から出力され、その他のデータは、端子357から出力され、再生される。
オーディオデータデコード処理部360には、トランスポートプリオリティフィルタ(Transport priority filter)361、トランスポートバッファ(図中、TBnと記述する)362、エレメンタリバッファ(図中、Bnと記述する)363、およびオーディオデコーダ(図中、Dnと記述する)364が設けられている。
オーディオストリームを構成するTSパケットが、フィルタ341を介してオーディオデータデコード処理部360に供給されると、トランスポートプリオリティフィルタ361は、仮想デコーダ121の能力に応じて、TSパケットのフィルタリングを行う。例えば、トランスポートプリオリティフィルタ361は、TSパケットに付されたtpの値(図5参照)に基づいて、フィルタリングを行う。トランスポートプリオリティフィルタ361によりフィルタリングされたTSパケットは、後段のトランスポートバッファ362に供給される。トランスポートバッファ362は、トランスポートプリオリティフィルタ361によりフィルタリングされて供給されてきたTSパケットを蓄積する。ここで、トランスポートバッファ362のサイズ(容量)は、512バイトである。
トランスポートバッファ362に蓄積されたTSパケットは、仮想デコーダ121の能力に応じたレートRxnでエレメンタリバッファ363に供給される。Rxnは、トランスポートバッファ362からのLeak rate(リークレート)であり、トランスポートバッファ362にデータが入っている場合、データはRxnのレートでトランスポートバッファ362からエレメンタリバッファ363へ入力される。また、トランスポートバッファ362にデータが入っていない場合、Rxnは0となる。
エレメンタリバッファ363は、トランスポートバッファ362からRxnのビットレートで供給されたデータを蓄積する。ここで、エレメンタリバッファ363のサイズは、オーディオ符号化方法(MPEG1オーディオやMPEG2 AACオーディオなど)によって異なるものとされている。なお、トランスポートバッファ362にデータが入っている場合にはトランスポートバッファ362から、Rxnのビットレート(速度)でエレメンタリバッファ363に供給されるが、トランスポートバッファ362にデータが入っていない場合には、トランスポートバッファ362からのデータは、エレメンタリバッファ363には供給されない(すなわちRxn=0となる)。
オーディオデコーダ364は、エレメンタリバッファ363に蓄積されているオーディオアクセスユニットを所定のタイミングで引き抜き、それを復号し、端子365を介して出力し、再生する。具体的には、オーディオデコーダ364は、オーディオアクセスユニットのPTS(Presentation Time Stamp)が、T-STDのシステムタイムクロック上の時間に等しくなったときに、そのオーディオアクセスユニットをエレメンタリバッファ363から引き抜く。ここで、オーディオアクセスユニットとは、オーディオストリームを構成する符号化単位であり、また、それが復号単位となる。
ここで、図7のオーディオデコード処理部360において、仮想デコーダ121の能力に応じて変更する値について説明する。
(1)基本オーディオストリームと拡張オーディオストリームを多重化するトランスポートストリームから基本オーディオストリームを抽出してデコードする場合、または、基本オーディオストリームだけを多重化するトランスポートストリームをデコードする場合に、仮想デコーダ121(第1の仮想的な受信装置の第1の仮想デコーダ)は、以下を満たすものとする。
(1−1)トランスポートプリオリティフィルタ361は、tp=1(Transport_priority=1)のTSパケットだけを選択し、トランスポートバッファ362へ供給する。
(1−2)トランスポートバッファ362からエレメンタリバッファ363への入力ビットレートの値Rxnをrxn0とする。
(1−3)エレメンタリバッファ363の容量Bnをbn0とする。
(2)基本オーディオストリームと拡張オーディオストリームを多重化するトランスポートストリームから基本オーディオストリームと拡張オーディオストリームの両方をデコードする場合、仮想デコーダ121(第2の仮想的な受信装置の第2の仮想デコーダ)は、以下を満たすものとする。
(2−1)トランスポートプリオリティフィルタ361は、すべてのトランスポートパケット(tp=0およびtp=1(Transport_priority=0,1)のTSパケット)をトランスポートバッファ362へ供給する。
(2−2)トランスポートバッファ362からエレメンタリバッファ363への入力ビットレートの値Rxnをrxn1とする。
(2−3)エレメンタリバッファ363の容量Bnをbn1とする。
このように、トランスポートプリオリティフィルタ361のフィルタ条件((1−1)および(2−1)、エレメンタリバッファ363への入力ビットレートの値((1−2)および(2−2))、並びに、エレメンタリバッファ363の容量((1−3)および(2−3))が、仮想デコーダ121の能力によって異なるものとなる。送信装置111は、この(1)で想定された第1の仮想的な受信装置と、(2)で想定された第2の仮想的な受信装置で、エレメンタリバッファの容量がオーバーフローおよびアンダーフローしないように、送信タイミングを制御してTSパケットを送信するようにする。なお、以下において、仮想的な受信装置112に含まれる仮想デコーダ121に(1)の条件を当てはめたものを、第1の仮想的な受信装置112と第1の仮想デコーダ121と称し、仮想的な受信装置112に含まれる仮想デコーダ121に(2)の条件を当てはめたものを、第2の仮想的な受信装置112と第2の仮想デコーダ121と称する。
また、システムデータデコード処理部370には、トランスポートバッファ(図中、TBsysと記述する)371、エレメンタリバッファ(図中、Bsys記述する)372、およびシステムデコーダ(図中、Dsysと記述する)373が設けられている。
システムに関するTSパケットが、フィルタ341を介してシステムデータデコード処理部370に供給されると、トランスポートバッファ371に蓄積される。トランスポートバッファ371に蓄積されたデータは、エレメンタリバッファ372に供給される。システムデコーダ373は、エレメンタリバッファ72に蓄積されているシステムアクセスユニットを所定のタイミングで引き抜き、それを復号し、端子374を介して出力する。
なお、システムに関するTSパケットには、例えば、図5や図6のPATのTSパケット221やPMTのTSパケット222が含まれる。
このような図7の仮想デコーダ121を有する仮想的な受信装置112によって正しくデコードされるように、図4の送信装置111は、基本オーディオストリームと拡張オーディオストリームのトランスポートストリームをパケット化し、送信するタイミングを決定して符号化する必要がある。
すなわち、送信装置111は、例えば図7の仮想デコーダ121の中のトランスポートバッファ362がオーバーフローすることなく、かつ、エレメンタリバッファ363がオーバーフローおよびアンダーフローすることがないように、オーディオストリームのパケット化タイミングを決定し、符号化しなければならない。
そのため、送信装置111は、図5の基本オーディオストリームと拡張オーディオストリームとを多重化したトランスポートストリームを、上述した(1)と(2)の条件を満たすように、オーディオストリームのパケット化タイミングを調整する。すなわち、送信装置111は、第1の仮想的な受信装置と第2の仮想的な受信装置のそれぞれのバッファがオーバーフローおよびアンダーフローしないようなタイミングで、TSパケットの送信のタイミングを制御する。換言すれば、図7のオーディオデコーダ121モデルの、トランスポートバッファ362がオーバーフローすることなく、また、エレメンタリバッファ363がオーバーフローおよびアンダーフローすることがないように、送信装置111は、オーディオストリームのパケット化タイミングを決定し、符号化する。
次に、これまでに説明した送信装置111が、仮想的な受信装置112の能力を考慮して、オーディオストリームをエンコードおよびパケット化し、送信する場合の処理を説明する。図8と図9は、図4の送信装置111における、TSパケット送信処理を説明するフローチャートである。なお、この処理は、送信装置111の電源がオンされ、入力部131にオーディオストリームが入力されたとき開始される。
ステップS11において、入力部131は、オーディオストリームの入力を受け付け、受け付けたオーディオストリームをオーディオエンコーダ132に出力する。
ステップS12において、オーディオエンコーダ132は、オーディオストリームを、基本オーディオストリームと(基本オーディオストリームに対して拡張性を有する)拡張オーディオストリームとを含むようにエンコードする。その結果、オーディオエンコーダ132からは、図5に示される基本オーディオストリーム181と拡張オーディオストリーム182が(縦に)同期して出力される。
ステップS13において、オーディオエンコーダ132は、エンコードしたオーディオストリームをレベル(ストリームの種類)ごとに分けてそれぞれ出力する。具体的には、オーディオエンコーダ132は、基本オーディオストリームをバッファ133の基本バッファ141に出力し、拡張オーディオストリームをバッファ133の拡張バッファ142に出力する。
ステップS14において、基本バッファ141と拡張バッファ142は、オーディオエンコーダ132から供給されたオーディオストリームをそれぞれ格納(バッファリング)する。具体的には、基本バッファ141は、オーディオエンコーダ132から供給されてきた、エンコードされている基本オーディオストリームを格納し、拡張バッファ142は、オーディオエンコーダ132から供給されてきた、エンコードされている拡張オーディオストリームを格納する。
ステップS15において、制御部135は、送るべきPTSのオーディオアクセスユニットがあるか否かを判定し、送るべきPTSのオーディオアクセスユニットがバッファ133にあると判定するまで処理を待機する。制御部135は、バッファ133に格納されたオーディオストリーム(基本オーディオストリームと拡張オーディオストリーム)を監視するとともに、PTSを管理しているので、これらに基づいてステップS15の判定を行う。オーディオアクセスユニット(例えば、BS(1)、BS(2)、・・・、BS(n))のそれぞれは固定長(例えば、時間T0)とされているので、制御部135は、例えば、PTS=T0×j(jは図5の括弧で示される添え字の数)に対応するオーディオアクセスユニット(図5の括弧で示される添え字jに対応するオーディオアクセスユニット)が、バッファ133に格納されたか否かを判定する。ステップS15において、送るべきPTSのオーディオアクセスユニットがあると判定された場合、制御部135は、そのオーディオアクセスユニットに対応するPTSをPESパケット化部136に供給するとともに、PESパケット化部136にPESパケット化を指令し、処理をステップS16に進める。
PESパケット化部136は、ステップS16において、オーディオアクセスユニットをPESパケット化する。例えば、PESパケット化部136は、基本バッファ141と拡張バッファ142のそれぞれを制御して基本オーディオストリームと拡張オーディオストリームを取得し(PTSに対応するオーディオアクセスユニットを取得し)、それぞれのオーディオストリームを、PESパケットにそれぞれパケット化する。このとき、PESパケット化部136は、制御部135から供給されてきたPTSを、PESパケットストリームを構成するPESパケットのそれぞれに格納する。PESパケット化部136は、生成したPESパケット(例えば、図5のPESパケットストリーム191の中で、このステップS16の処理でPESパケット化したPESパケット)を、TSパケット化部137に供給する。
ステップS17において、TSパケット化部137は、PESパケット化部136から供給されてきたPESパケットをTSパケット化し、TSパケット化したTSパケットを送信部138に供給する。具体的には、TSパケット化部137は、基本オーディオストリーム181と拡張オーディオストリーム182のそれぞれのPESパケットを、図5の3段目に示されるように、それぞれ別のIDを持つTSパケットにパケット化する。これにより、図5に示されるように、基本オーディオストリーム181のTSパケットには「PID=a0,tp=1」が含まれ、拡張オーディオストリーム182のTSパケットには「PID=a0,tp=0」が含まれる。
ステップS18において、制御部135は、図7の仮想デコーダ121のバッファ占有量の計算に基づいて、TSパケットの送信タイミングを決定する。具体的には、制御部135は、第1の仮想デコーダと第2の仮想デコーダのバッファ占有量の計算に基づいて(すなわち、2つの条件下における仮想デコーダ121のバッファ占有量の計算に基づいて)、TSパケットの送信タイミングを決定し、その送信タイミングでTSパケットを送信するよう、送信部138を制御する。なお、この図7の仮想デコーダ121(第1の仮想デコーダと第2の仮想デコーダ)のバッファ占有量の計算の処理については、図10と図12を参照して後述する。
ステップS19において、送信部138は、制御部135によるステップS18の処理で決定された送信タイミングで、TSパケット化部137から供給されたTSパケットを受信側の受信装置に送信する。この受信装置は、図3の仮想的な受信装置112ではなく、実際にTSパケットを受信する(デコーダを有する)図示せぬ受信装置である。なお、この例では、図示せぬ受信装置に送信するようにしたが、送信部138がドライブに送信し、リムーバブルメディアに記録させるようにしてもよい。
ステップS20において、制御部135は、終了するか否かを判定する。例えば、制御部135は、入力部131へのオーディオストリームの入力が終了した場合や、ユーザによりTSパケット送信処理の終了が指令された場合や、1本のオーディオストリームの送信が終了した場合などに、処理を終了すると判定する。ステップS20において、終了しないと判定された場合、処理はステップS11に戻り、それ以降の処理が繰り返される。すなわち、再びオーディオストリームの入力が受け付けられてTSパケット化され、仮想デコーダ121のバッファ占有量の計算に基づいて送信タイミングが制御されたTSパケットが送信される。ステップS20において、終了すると判定された場合、処理は終了される。
図8と図9の処理により、図7の仮想デコーダ121の(2つの条件下における)バッファ占有量の計算に基づいて、送信タイミングが制御されたTSパケットが送信されるので、図7の仮想デコーダ121モデルに対応するデコーダを有する受信装置(図示せず)であれば、この処理で送信されたTSパケットを確実にデコードすることができる。
次に、図9のステップS18で制御部135により実行される、仮想デコーダ(2つの条件下における仮想デコーダ121)のバッファ占有量の計算を、図10乃至図13を参照して説明する。
最初に、図10のフローチャートを参照して、基本オーディオストリームに対するバッファ占有量の計算処理を説明する。なお、この処理は、図4の制御部135が、受信側の仮想デコーダ121が基本オーディオストリームのみをデコード可能であると想定して、すなわち、受信側の仮想デコーダ121が、第1の仮想デコーダであると想定して実行する処理である。換言すれば、制御部135は、図6の基本オーディオストリーム181のみを送信することを仮定してTSパケットのデコード(送信)タイミングを計算する処理である。
ステップS41において、制御部135は、図7の仮想デコーダ121(第1の仮想デコーダ)のトランスポートバッファ362にtp=1のTSパケットを入れる空きがあれば、TSパケットを送信するよう送信部138を制御する。すなわち、トランスポートバッファ362に基本オーディオストリームに対応するTSパケットを入れる空きがあれば、TSパケットを送信するよう送信部138を制御する。
ステップS42において、制御部135は、図7の仮想デコーダ121のエレメンタリバッファ363(Bn=bn0)に空きがあれば、トランスポートバッファ362からRxn(=rxn0)のビットレートでデータを引き抜き、これをエレメンタリバッファ363に供給するものとして計算する。上述したように、第1の仮想デコーダのエレメンタリバッファ363への入力ビットレートはRxn=rxn0であるので、rxn0のレートでデータが引き抜かれるものとして計算され、エレメンタリバッファ363の記憶容量はBn=bn0であるものとして計算される。
ステップS43において、制御部135は、オーディオアクセスユニットのPTSが、仮想デコーダ121のシステムタイムクロック上の時間に等しくなったとき、そのオーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給するものとして計算する。例えば、仮想デコーダ121のシステムタイムクロックが、図11に示されるようにt=PTS0(横軸tは時刻を示す)となった場合、制御部135は、PTS=PTS0とされるオーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給されるものとして計算する。同様に、図11においてt=PTS1となった場合、制御部135は、PTS=PTS1とされる(PTS1が付された)オーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給されるものとして計算する。その後、処理は終了される。
なお、図10の処理は、図9のステップS18の処理を実行する場合に実行される処理であって、繰り返し実行されるものである。
このように、制御部135は、基本オーディオストリームのみをデコード可能なデコーダ(第1の仮想デコーダ)を想定してデコーダのバッファ占有量を計算する。すなわち、制御部135は、図7を用いて上述した条件(1)の3つの項目を想定して、第1の仮想デコーダ121のバッファ占有量を計算し、TSパケットの送信タイミングを決定する。これにより、基本オーディオストリームのみをデコード可能なデコーダ(実際のデコーダ)は、バッファ占有量をオーバーフローやアンダーフローすることなく、確実に基本オーディオストリームをデコードすることができる。
次に、図12のフローチャートを参照して、基本オーディオストリームと拡張オーディオストリームに対するバッファ占有量の計算処理を説明する。なお、この処理は、図4の制御部135が、受信側の仮想デコーダ121が基本オーディオストリームと拡張オーディオストリームをデコード可能であると想定して、すなわち、受信側の仮想デコーダ121が、第2の仮想デコーダであると想定して実行する処理である。換言すれば、制御部135は、図5の基本オーディオストリーム181および拡張オーディオストリーム182を送信することを仮定してTSパケットのデコード(送信)タイミングを計算する処理である。
ステップS81において、制御部135は、図7の仮想デコーダ121(第2の仮想デコーダ)のトランスポートバッファ362にtp=1のTSパケットを入れる空きがあれば、TSパケットを送信するよう送信部138を制御し、その上でトランスポートバッファ362にtp=0のTSパケットを入れる空きがあれば、そのTSパケットを送信するよう送信部138を制御する。すなわち、トランスポートバッファ362に基本オーディオストリームに対応するTSパケットを入れる空きがあれば、TSパケットを送信するよう送信部138を制御し(図10のステップS41の条件を満たし)、さらに、トランスポートバッファ362に拡張オーディオストリームのTSパケットを入れる空きがあれば、そのTSパケットを送信するよう送信部138を制御する。
ステップS82において、制御部135は、図7の仮想デコーダ121のエレメンタリバッファ363(Bn=bn1)に空きがあれば、トランスポートバッファ362からRxn(=rxn1)のビットレートでデータを引き抜き、これをエレメンタリバッファ363に供給するものとして計算する。上述したように、第2の仮想デコーダのエレメンタリバッファ363への入力ビットレートはRxn=rxn1であるので、rxn1のレートでデータが引き抜かれるものとして計算され、エレメンタリバッファ363の記憶容量はBn=bn1であるものとして計算される。
ステップS83において、制御部135は、オーディオアクセスユニットのPTSが、仮想デコーダ121のシステムタイムクロック上の時間に等しくなったとき、そのオーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給するものとして計算する。例えば、仮想デコーダ121のシステムタイムクロックが、図11に示されるようにt=PTS0(横軸tは時刻を示す)となった場合、制御部135は、PTS=PTS0とされるオーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給されるものとして計算する。同様に、図11においてt=PTS1となった場合、制御部135は、PTS=PTS1とされる(PTS1が付された)オーディオアクセスユニットをエレメンタリバッファ363から引き抜き、オーディオデコーダ364に供給されるものとして計算する。その後、処理は終了される。
なお、図12の処理は、図9のステップS18の処理を実行する場合に実行される処理であって、繰り返し実行されるものである。すなわち、図9のステップS18の処理を実行する場合に、図10と図12の処理が並行して実行される。より具体的には、図9のステップS19の処理を実行する場合に、制御部135は、最初に、図10の処理により基本オーディオストリームに対応するTSパケットの送信のタイミングを計算し、さらに、図12の処理により、基本オーディオストリームおよび拡張オーディオストリームに対応するTSパケットの送信のタイミングを計算し、このような処理を繰り返し実行する(再び図10の処理が実行され、その後、再び図12の処理が実行される)。
換言すれば、制御部135は、第1の仮想デコーダを有する第1の仮想的な受信装置のエレメンタリバッファがオーバーフローおよびアンダーフローしないようなタイミングを計算した後、さらに、第2の仮想デコーダを有する第2の仮想的な受信装置のエレメンタリバッファがオーバーフローおよびアンダーフローしないようなタイミングを計算し、これらのタイミングを満たすように、TSパケットを送信するよう制御する。
このように、制御部135は、基本オーディオストリームと拡張オーディオストリームをデコード可能な仮想デコーダ(第2の仮想デコーダ)を想定してデコーダのバッファ占有量を計算する。すなわち、制御部135は、図7を用いて上述した条件(2)の3つの項目を想定して、第2の仮想デコーダ121のバッファ占有量を計算し、TSパケットの送信タイミングを決定する。これにより、基本オーディオストリームと拡張オーディオストリームをデコード可能なデコーダ(実際のデコーダ)は、バッファ占有量をオーバーフローやアンダーフローすることなく、確実に基本オーディオストリームと拡張オーディオストリームをデコードすることができる。
送信装置111の制御部135は、図10と図12の処理を並行して繰り返し実行し、仮想デコーダ121のバッファ占有量を計算することで、TSパケットの送信タイミングを調整(決定する)ようにしたので、基本オーディオストリームのみに対応する第1の仮想デコーダ121であっても、基本オーディオストリームと拡張オーディオストリームの両方に対応する第2の仮想デコーダ121であっても、デコードを行うことができる。すなわち、実際に送信装置111から送信されたTSパケットを受信する受信装置が、基本オーディオストリームのみしかデコードできない場合であっても、基本オーディオストリームと拡張オーディオストリームの両方デコードできる場合であっても、それぞれの受信装置が有するバッファをオーバーフローおよびアンダーフローさせることなく、円滑にデコードすることができる。
例えば、図4の送信装置111が基本オーディオストリームと拡張オーディオストリームとに対応するTSパケットを実際の図示せぬ受信装置に送信する場合に、制御部135が図9のステップS18の処理として図12の処理のみを実行した場合(すなわち、第2の仮想デコーダを想定した場合)、TSパケットは、図13Aに示されるようなタイミングで送信される。図13Aの例では、時刻t1,t4,t7で基本オーディオストリームのTSパケットが送信され、時刻t2,t5,t8で拡張オーディオストリームのTSパケットが送信され、時刻t3,t6,t9でその他のTSパケット(図中、ETCで記述されているパケット)が送信される。このとき、1番目の基本オーディオストリームのTSパケット(図5の例の場合、TSパケット241)が送信された後、2番目の基本オーディオストリームのTSパケット(図5の例の場合、TSパケット242)が送信されるまでの時間は時間T1とされる。
一方、図4の送信装置111が基本オーディオストリームと拡張オーディオストリームとに対応するTSパケットを実際の図示せぬ受信装置に送信する場合に、制御部135が図9のステップS18の処理として図12の処理と並行して、さらに図10の処理を実行した場合(すなわち、第1と第2の仮想デコーダを想定した場合)、TSパケットは、図13Bに示されるようなタイミングで送信される。図13Bの例では、時刻t11,t14,t17で基本オーディオストリームのTSパケットが送信され、時刻t12,t15,t18で拡張オーディオストリームのTSパケットが送信され、時刻t13,t16,t19でその他のTSパケット(図中、ETCで記述されているパケット)が送信される。このとき、1番目の基本オーディオストリームのTSパケット(図5の例の場合、TSパケット241)が送信された後、2番目の基本オーディオストリームのTSパケット(図5の例の場合、TSパケット242)が送信されるまでの時間は時間T11とされる。
図13Aと図13Bを比較するに、基本オーディオストリームを送信した後、次の基本オーディオストリームを送信するまでの時間に差(時間T11−T1)が出ている。図13Bに示されるようなタイミングで送信した場合、基本オーディオストリームのみにしか対応していないデコーダであってもバッファ(エレメンタリバッファ363)のオーバーフローやアンダーフローが生じることなく、円滑にデコードを行うことができるが、図13Aに示されるようなタイミングで送信した場合、基本オーディオストリームのみにしか対応していないデコーダでは、バッファ(エレメンタリバッファ363)のオーバーフロー(図13の例ではオーバーフロー)が生じることがある。このことは、図13Aのタイミングで送信するための仮想デコーダ121として、基本オーディオストリームと拡張オーディオストリームに対応しているデコーダのみを想定したためである。基本オーディオストリームと拡張オーディオストリームに対応しているデコーダでは、そのエレメンタリバッファ363のデータ容量(bn1)やエレメンタリバッファ363への入力ビットレートの値(rxn1)が、基本オーディオストリームのみに対応しているデコーダのそれ(bn0,rxn0)と比較して大きい。そのため、基本オーディオストリームのみに対応しているデコーダに、図13AのタイミングでTSパケットが送信されてきた場合に、TSパケットのオーバーフローやアンダーフローが生じることになるが、図12の条件に加えて、図10を用いて上述した基本オーディオストリームのみに対応する第1の仮想デコーダのバッファ占有量を考慮することで、基本オーディオストリームのみにしか対応していないデコーダであっても円滑にデコードを行うことができる。
以上により、基本オーディオストリームと拡張オーディオストリームからなる階層化符号化されたオーディオストリームをMPEG2-TSに符号化して送信する場合に、基本オーディオストリームのみにしか対応していないデコーダを有する第1の仮想的な受信装置112でも復号できるように、受信側の受信装置の能力を考慮してTSパケットを送信することができる。すなわち、仮想的な受信装置112が基本オーディオストリームのみしかデコードできないデコーダ(第1の仮想デコーダ)を有していたり、仮想的な受信装置112が基本オーディオストリームのみを抽出したデコードする場合に、所定のサイズの基本オーディオストリーム用のデコーダバッファをオーバーフローおよびアンダーフローすることがないように、送信装置111側で、階層化符号化されたオーディオストリーム(基本オーディオストリームと拡張オーディオストリームからなるオーディオストリーム)のパケット化(パケットの送信)タイミングを決定するようにしたので、基本オーディオストリームのみを受信側でデコードする場合であっても、円滑にデコードすることができる。
すなわち、送信装置111は、基本オーディオストリームのみしかデコードできないデコーダ(第1の仮想デコーダ)を有する仮想的な第1の受信装置と、基本オーディオストリームおよび拡張オーディオストリームをデコードできるデコーダ(第2の仮想デコーダ)を有する仮想的な第2の受信装置との両方で、トランスポートバッファ362がオーバーフローしないように、かつ、エレメンタリバッファの容量がオーバーフローおよびアンダーフローしないように、階層化符号化されたオーディオストリームのTSパケットの送信タイミングを決定するようにしたので、基本オーディオストリームのみを受信側でデコードする場合であっても、円滑にデコードすることができる。
なお、以上の例では、TSパケット化部137がTSパケット化して多重化し、送信部138が、制御部135からの制御に基づくタイミングで、多重化されたトランスポートストリームを順次送信するようにしたが、TSパケット化部137がTSパケット化した複数のTSパケットを、制御部135からの制御に基づくタイミングで多重化し、送信部は、単にその多重化されたトランスポートストリームを順次送信するようにしてもよい。すなわち、多重化されたTSの送信タイミングを制御するようにしてもよいし、TSパケットを多重化するときにその配置(タイミング)を制御するようにしても、同様のTSが送信されることになり、このことは等価と考えられる。
次に、TSパケットを多重化してトランスポートストリームとする場合の他の方法について、第2実施の形態として説明する。この実施の形態では、送信装置のTSパケット化部がTSパケット化し、多重化するときに、多重化のタイミングを調整するものとして説明する。
基本オーディオストリームが固定長符号化方式により符号化されている場合、すなわち1アクセスユニットが固定長である場合、基本オーディオストリームをTSパケット化したTSパケットと、ビデオストリームのTSパケットと、その他のストリームのTSパケットとを多重化するとき、例えば、図14に示されるような多重化の方法が用いられることがある。
図14においては、まず、オーディオストリームの1アクセスユニット(固定長である1アクセスユニット)が、十分広い間隔で等間隔になるように時間軸上に配置される。図14の例の場合、その間隔は、時間T31とされる。そして、配置されたオーディオストリームの間(時間軸上で空いている空間)に、ビデオストリームやその他のデータが配置される。このようにすることで、簡単に多重化するためのTSパケットの配置を決定し、多重化することができる。
図14の例では、オーディオストリームが基本オーディオストリームのみにエンコードされて出力される場合であるが、次に、オーディオストリームが、基本オーディオストリームと拡張オーディオストリームとにエンコードされて出力される場合の多重化方法について、以下に説明していく。
図15は、本発明を適用した他の送信装置111の構成例である。図中、図4と対応する部分については、同一の符号を付してあり、その説明は繰り返しになるので省略する。この図15の送信装置111は、複数のTSパケットからなるトランスポートストリーム(TS)を送信する装置である。例えば、送信装置111は、仮想的な受信装置112を想定しながらMPEG2-TSの方式を用いて符号化(TSパケットを多重化し)、このストリームを、ドライブを介して磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどにより構成されるリムーバブルメディアに記録させる(すなわち、この例の場合、送信装置111は、ドライブにストリームを送信する)。図15の送信装置111は、予め多重化する対象となるオーディオストリームが決まっている場合に、多重化を行い、トランスポートストリームを送信(ドライブに送信、または受信装置に送信)する装置である。
図15と図4とを比較するに、図15においては、PESパケット化部136に、基本PESパケット化部401−1と拡張PESパケット化部401−2とが設けられている。また、図15においては、TSパケット化部137に、基本TSパケット化部402−1、拡張TSパケット化部402−2、および、多重化処理部403が設けられている。
基本PESパケット化部401−1は、基本バッファ141に格納されている基本オーディオストリームを取得し、これをPESパケット化してTSパケット化部137に供給する。拡張PESパケット化部401−2は、拡張バッファ142に格納されている拡張オーディオストリームを取得し、これをPESパケット化してTSパケット化部137に供給する。すなわち、PESパケット化部136では、基本オーディオストリームと拡張オーディオストリームとが、別々にPESパケット化される。その結果、PESパケット化部136からは、基本オーディオストリームのPESパケットストリーム(以下、基本オーディオPESとも称する)と、拡張オーディオストリームのPESパケットストリーム(以下、拡張オーディオPESとも称する)との2本のPES(PESパケットストリーム)が出力される。基本オーディオPESは、TSパケット化部137の基本TSパケット化部402−1に供給され、拡張オーディオPESパケットストリームは、TSパケット化部137の拡張TSパケット化部402−2に供給される。
基本TSパケット化部402−1は、基本オーディオPESを、制御部135からの制御に基づいてTSパケット化し、これを、多重化処理部403に供給する。また、拡張TSパケット化部402−2は、拡張オーディオPESを、制御部135からの制御に基づいてTSパケット化し、これを、多重化処理部403に供給する。多重化処理部403は、基本TSパケット化処理部402−1から供給された基本オーディオストリームのTSパケット(以下、基本オーディオTSパケットと称する)と、拡張TSパケット化処理部402−2から供給された拡張オーディオストリームのTSパケット(以下、拡張オーディオTSパケットと称する)とを、制御部135からの制御に基づいて多重化することで、TS(トランスポートストリーム)とし、送信部138に供給する。
なお、図15の送信装置111において、PESパケット化部136とTSパケット化部137以外の構成は、上述した図4と同様であるので、その説明は省略する。また、本実施の形態では、送信装置111の送信部138が受信装置に対してMPEG2-TSを送信するものとして説明しているが、送信部138がドライブを介して、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどにより構成されるリムーバブルメディアに記録させるようにしてもよい。例えば、送信部138がリムーバブルメディアにMPEG2-TSを記録させ、受信装置がリムーバブルメディアからMPEG2-TSを読み出すことで、受信装置にMPEG2-TSが送信される。
次に、図16を参照して、オーディオストリームがTSパケット化されて多重化されるまでの流れについて説明する。なお、図中、図5と対応する部分については、同一の符号を付してあり、その説明は繰り返しになるので省略する。
図16の例において、1段目の基本オーディオストリーム181と拡張オーディオストリーム182は、図15のオーディオエンコーダ132によりエンコードされて出力された状態を示しており、2段目の基本オーディオPES411と拡張オーディオPES412は、図15のPESパケット化部136の基本PESパケット化部401−1と拡張PESパケット化部401−2とによりそれぞれPESパケット化されて出力された状態を示しており、3段目の基本オーディオTS413と拡張オーディオTS414は、図15の基本TSパケット化部402−1と拡張TSパケット化部402−2とにそれぞれTSパケット化されて出力された状態を示しており、4段目のTS201は、図15の多重化処理部403により多重化されて出力された状態を示している。
すなわち、基本オーディオストリーム181は、基本PESパケット化部401−1によりPESパケット化されて基本オーディオPES411とされ、これがさらに基本TSパケット化部402−1によりTSパケット化されて基本オーディオTS413とされる。また、拡張オーディオストリーム182は、拡張PESパケット化部401−2によりPESパケット化されて拡張オーディオPES412とされ、これがさらに拡張TSパケット化処理部402−2によりTSパケット化されて拡張オーディオTS414とされる。そして、基本オーディオTS413と、拡張オーディオTS414とが多重化処理部403により多重化されることで、TS201が生成される。ここで、基本オーディオTS413は、複数の基本オーディオTSパケットにより構成され、拡張オーディオTS414は、複数の拡張オーディオTSパケットにより構成される。
多重化処理部403は、複数の基本オーディオTSパケット(基本オーディオTS413)と複数の拡張オーディオTSパケット(拡張オーディオTS414)とを、制御部135が決定した配置に基づいて多重化し、TS201を生成する。このとき、制御部135は、基本オーディオTSパケットを配置した後、基本オーディオTSパケットに対応する拡張オーディオTSパケットを、基本オーディオTSパケットと対となるようにTSパケットの配置を制御する。
このように、図5では、基本オーディオストリーム181と拡張オーディオストリーム182とが1本のPES(PESパケットストリーム)191とされたが、図16においては、基本オーディオストリーム181と拡張オーディオストリーム182とが別々にPESパケット化され、基本オーディオPESストリーム411と拡張オーディオPESストリーム412とされる。すなわち、PESパケット化部136は、基本オーディオストリームと拡張オーディオストリームの順番を考えずに、取得した基本オーディオストリームと拡張オーディオストリームとをそれぞれPESパケット化する。
なお、図15と図16では、オーディオストリームについて説明したが、実際には、ビデオストリームやその他のデータ(システムデータ)のTSパケットも多重化され、TSとして送信される。この例を、図17を参照して簡単に説明する。
オーディオストリームは、上述したように、ステップS101でオーディオエンコーダ132(図15)に入力されると、ステップS102でオーディオエンコーダ132により符号化され(エンコードされ)、ステップS103で、基本オーディオES(基本オーディオエレメンタリストリーム)と、拡張オーディオES(拡張オーディオエレメンタリストリーム)とにわかれてPESパケット化部136の基本PESパケット化部401−1と拡張PESパケット化部401−2とにそれぞれ出力される。基本PESパケット化部401−1と拡張PESパケット化部401−2は、ステップS104において、基本オーディオESと拡張オーディオESとをそれぞれPESパケット化し、基本オーディオPESと拡張オーディオPESとを、ステップS105においてTSパケット化部137の基本TSパケット化部402−1と拡張TSパケット化部402−2とにそれぞれ供給する。
基本TSパケット化部402−1と拡張TSパケット化部402−2は、ステップS106において、基本オーディオPESと拡張オーディオPESとをそれぞれTSパケット化し、ステップS107において、複数の基本オーディオTSパケット(基本オーディオTS)と複数の拡張オーディオTSパケット(拡張オーディオTS)とをそれぞれ多重化処理部403に供給する。
ここで、ステップS103でオーディオエンコーダ132から出力される基本オーディオESと拡張オーディオESとは、図16の基本オーディオストリーム181と拡張オーディオストリーム182とにそれぞれ対応している。また、ステップS105でPESパケット化部136の基本PESパケット化部401−1と拡張PESパケット化部401−2からそれぞれ出力される基本オーディオPESと拡張オーディオPESは、図16の基本オーディオPES411と拡張オーディオPES412とにそれぞれ対応している。また、ステップS107でTSパケット化部137の基本TSパケット化部402−1と拡張TSパケット化部401−2からそれぞれ出力される基本オーディオTSと拡張オーディオTSとは、図16の基本オーディオTS413と拡張オーディオTS414とにそれぞれ対応している。
なお、ビデオストリームやその他のESも、オーディオストリームと同様にTSパケット化される。ビデオストリームは、例えば、MPEG2,MPEG4-AVCなどMPEGの規格で想定されているストリームである。その他のESには、例えば、グラフィックスストリームやテキストサブタイトル(テキスト字幕データ)などのストリームが含まれる。
具体的には、ビデオストリームの場合、ステップS111でビデオストリームがビデオエンコーダ(図示せず)に入力されると、ステップS112でビデオエンコーダにより符号化され、ステップS113で出力される。そして、ステップS114において、ビデオESがPESパケット化され、ビデオPESがステップS115で出力される。また、ステップS116において、ビデオPESがTSパケット化され、ステップS117において、複数のTSパケットがTSパケット化部137の多重化処理部403に供給される。
また、その他のESの場合、ステップS131でその他のES(既に符号化されているその他のデータのES)がPESパケット化部(図示せず)に入力されると、ステップS132でその他のESがPESパケット化され、その他のPESがステップS133で出力される。また、ステップS134において、その他のPESがTSパケット化され、ステップS135において、複数のTSパケットがTSパケット化部137の多重化処理部403に供給される。
そして、TSパケット化部137の多重化処理部403は、ステップS107で供給された基本オーディオTSと拡張オーディオTS、ステップS117で供給された複数のビデオのTSパケット(ビデオのTS)、およびステップS135で供給された複数のその他のTSパケット(その他のTS)にそれぞれ含まれるTSパケットを、ステップS141において、制御部135からの制御に基づくタイミングで多重化し、多重化して生成したMPEG2-TS(TS)を、ステップS142において出力する。このとき、図7に示されるような仮想デコーダ121(図3)モデルを満たすようにMPEG2-TSが生成される。
このようにして、オーディオ、ビデオ、およびその他のデータのTSパケットが多重化され、MPEG2-TSとして出力される。
なおこのとき、図16を用いて説明したように、PAT221とPMT222も、多重化されるTSパケットに含まれる。この場合、PAT221とPMT222には、ビデオ、オーディオ、および、その他のデータに対応するデータが含まれる。
次に、多重化されるTSパケット、すなわち、図17のステップS107、ステップS117、およびステップS135の処理で出力されるTSパケットの例について、図18を参照して説明する。
図18において、ビデオのTS(複数のビデオのTSパケット)431は、図17のステップS117の処理で出力されるものであり、基本オーディオTS(複数の基本オーディオTSパケット)432と拡張オーディオTS(複数の拡張オーディオTSパケット)433は、図17のステップS107の処理で出力されるものであり、その他のTS(複数のその他のTSパケット)434は、図17のステップS135の処理で出力されるものである。ここで、基本オーディオTS(複数の基本オーディオTSパケット)432と拡張オーディオTS(複数の拡張オーディオTSパケット)433は、上述した図16の基本オーディオTS413,拡張オーディオTS414にそれぞれ対応している。
図18に示されるように、ビデオのTS431を構成する複数のTSパケットのそれぞれのヘッダには、同一のPIDが付されている。具体的には、ビデオのTS431を構成する複数のTSパケットのそれぞれのPIDは、PID=V0とされている。
また、基本オーディオTS432と拡張オーディオTS433とを構成する複数のTSパケットのそれぞれのヘッダには、同一のPIDが付されているとともに、異なるIDが付されている。具体的には、基本オーディオTS432と拡張オーディオTS433を構成する複数のTSパケットのそれぞれのPIDは、PID=a0が付されている。また、基本オーディオTS432を構成する複数のTSパケットのそれぞれのヘッダには、「tp=1」が付され、拡張オーディオTS433を構成する複数のTSパケットのそれぞれのヘッダには「tp=0」が付されている。(上述した図5と同様)。このように、オーディオストリームに対して同一のPIDが付され、基本オーディオストリームおよび拡張オーディオストリームを識別するために、それぞれ異なるtp(transport_priority)が付される。
さらに、その他のTS434を構成する複数のTSパケットのそれぞれのヘッダには、同一のPIDが付されている。具体的には、その他のTS434を構成する複数のTSパケットのそれぞれのPIDは、PID=E0とされている。なお、図18においては、その他のTSパケットのPIDを1つ(PID=E0)としているが、例えば、その他のTSパケットに、インタラクティブグラフィックスストリームと、プレゼンテーショングラフィックスストリームなどの2種類のストリームが含まれていた場合には、それぞれの種類のストリームに対して、別々のPIDが割り当てられる。すなわち、その他のTSに2種類のストリームが含まれている場合には、その他のTSパケットの中で2種類のPIDが割り当てられる。
このように、ビデオストリームとオーディオストリーム(基本および拡張オーディオストリーム)とその他のESとで、異なるPIDを付してTSパケット化するようにしているので、PIDを確認するだけで、そのTSパケットの種類(ビデオであるかオーディオであるかその他のESであるか)を識別することができる。また、オーディオストリームのTSパケットが、基本オーディオTSパケットであるか拡張オーディオTSパケットであるか(すなわち、基本オーディオストリーム181であるか拡張オーディオストリーム182であるか)も、TSパケットのヘッダに付されているtpフラグを確認するだけで、識別することができる。
このようなビデオのTS431、基本オーディオTS432、拡張オーディオTS433、およびその他のTS434が、図17のステップS141の処理で多重化され、1本のトランスポートストリームとされる。すなわち、図13までに記載した第1実施の形態とは異なり(図13までの例では、基本オーディオTSと拡張オーディオTSが1本のTSとされて多重化されたが)、第2実施の形態においては、基本オーディオTS432と拡張オーディオTS433とは、別々のTSとして多重化部403に入力される。
上述したように、図15の送信装置111は、トランスポートストリームを送信する場合に、仮想的な受信装置112(図3)の能力に応じてTSパケットの送信(多重化)のタイミングを調整するようにする。すなわち、仮想的な受信装置112が基本オーディオストリームと拡張オーディオストリームの両方に対応した(基本オーディオストリームと拡張オーディオストリームの両方をデコード可能な)仮想的な受信装置である場合であっても、仮想的な受信装置112が基本オーディオストリームのみに対応した(基本オーディオストリームのみデコード可能な)受信装置である場合であっても、それらの仮想的な受信装置112のバッファがオーバーフローおよびアンダーフローせずにデコード可能となるように、送信装置111側で、エンコードしたTSパケットを多重化するタイミングを調整するようにする。
ここで、図15の送信装置111が想定する仮想的な受信装置112については、図4の送信装置111と同様に、図7に示されるような仮想デコーダ121(図3)モデルを想定する。すなわち、図15の送信装置111は、基本オーディオストリームと拡張オーディオストリームとをデコードし、パケット化する場合に、図7の仮想デコーダ121のモデルを想定する。なお、図7の説明および図7の内部の条件(1)と(2)については上述したので省略する。
図15の送信装置111は、図7の仮想デコーダ121を満たすように、すなわち、図16の基本オーディオTS413を構成する複数の基本オーディオTSパケットと、拡張オーディオTS414を構成する複数の拡張オーディオTSパケットとを、上述した(1)と(2)の条件を満たすように、多重化してトランスポートストリーム201を生成する。換言すれば、送信装置111は、第1の仮想的な受信装置と第2の仮想的な受信装置のそれぞれのバッファがオーバーフローおよびアンダーフローしないようなタイミングで、TSパケットの多重化のタイミングを制御する。つまり、図7のオーディオデコーダ121モデルの、トランスポートバッファ362がオーバーフローすることなく、また、エレメンタリバッファ363がオーバーフローおよびアンダーフローすることがないように、送信装置111は、多重化するTSパケットを順次決定し、多重化し、これを送信する。
次に、図15の送信装置が、仮想的な受信装置112の能力を考慮して、オーディオストリームをエンコードしてPESパケット化してTSパケット化し、多重化して送信する場合の処理を説明する。図19と図20は、図15の送信装置111における、TSパケット送信処理を説明するフローチャートである。なお、この処理は、送信装置111の電源がオンされ、入力部131にオーディオストリームが入力されたとき開始される。
ステップS211乃至ステップS215の処理は、上述した図8のステップS11乃至ステップS15の処理と同様であるので、その説明は省略し、ステップS216以降について説明する。
ステップS215において送るべきPTSのオーディオアクセスユニットがあると判定された場合、処理はステップS216に進み、PESパケット化部136は、オーディオアクセスユニットをPESパケット化する。具体的には、PESパケット化部136の基本PESパケット化部401−1と拡張PESパケット化部401−2が、基本オーディオストリームと拡張オーディオストリームとをそれぞれ取得し、PESパケット化する。
より詳細には、PESパケット化部136の基本PESパケット化部401−1は、基本バッファ141を制御して、基本オーディオストリームを取得し(PTSに対応するオーディオアクセスユニットを取得し)、取得したオーディオストリームを、PESパケットにパケット化する。このとき、基本PESパケット化部401−1は、制御部135から供給されてきたPTSを、基本オーディオPESを構成するPESパケットのそれぞれに格納する(図16の基本オーディオPES411参照)。また、PESパケット化部136の拡張PESパケット化部401−2は、拡張バッファ142を制御して、拡張オーディオストリームを取得し(PTSに対応するオーディオアクセスユニットを取得し)、取得したオーディオストリームを、PESパケットにパケット化する。このとき、拡張PESパケット化部401−2は、制御部135から供給されてきたPTSを、拡張オーディオPESを構成するPESパケットのそれぞれに格納する(図16の拡張オーディオPES412参照)。
基本PESパケット化部401−1は、生成したPESパケット(例えば、図16の基本オーディオPES411の中で、このステップS216の処理でPESパケット化したPESパケット)を、TSパケット化部137の基本TSパケット化部402−1に供給する。また、拡張PESパケット化部401−2は、生成したPESパケット(例えば、図16の拡張オーディオPES412の中で、このステップS216の処理でPESパケット化したPESパケット)を、TSパケット化部137の拡張TSパケット化部402−2に供給する。
ステップS217において、TSパケット化部137の基本TSパケット化部402−1と拡張TSパケット化部402−2は、基本PESパケット化部401−1と拡張PESパケット化部401−2からそれぞれ供給されてきた基本オーディオPESパケットと拡張オーディオPESパケットをそれぞれTSパケット化し、生成したTSパケットを、多重化処理部403に供給する。すなわち、基本TSパケット化部402−1は、PESパケット化部136の基本PESパケット化部401−1から供給されてきた基本オーディオPESパケットをTSパケット化し、TSパケット化して生成した基本オーディオTSパケットを、多重化処理部403に供給する。また、拡張TSパケット化部402−2は、PESパケット化部136の拡張PESパケット化部401−2から供給されてきた拡張オーディオPESパケットをTSパケット化し、TSパケット化して生成した拡張オーディオTSパケットを、多重化処理部403に供給する。
このとき、TSパケット化された基本オーディオTSパケットと、拡張オーディオTSパケットの各TSヘッダには、図16に示されるように、同一のPIDが付されているとともに、異なるtransport_priorityの値が付されている。図16の例の場合、基本オーディオTSパケット(基本オーディオTS411を構成する複数の基本オーディオTSパケット)の各ヘッダには「PID=a0,tp=1」が含まれ、拡張オーディオTSパケット(拡張オーディオTS412を構成する複数の拡張オーディオTSパケット)の各ヘッダには、「PID=a0,tp=0」が含まれる。
ステップS218において、多重化処理部403は、制御部135からの制御に基づいて、TSパケット多重化処理を実行する。具体的には、制御部135は、第1の仮想デコーダと第2の仮想デコーダのバッファ占有量の計算(2つの条件下における図7の仮想デコーダ121のバッファ占有量の計算)に基づいて、多重化するTSパケット(基本オーディオTSパケットと拡張オーディオTSパケットとのうちのいずれかのTSパケット)を決定し、多重化すると決定されたTSパケットを多重化するよう、多重化部138を制御する。そして、多重化処理部403は、この制御部135からの制御に基づいて、TSパケットを多重化し、トランスポートストリーム201を生成する。多重化処理部403は、多重化して生成したトランスポートストリーム201を、送信部138に供給する。なお、TSパケット多重化処理の詳細については、図21を参照して後述する。
なお、多重化できるTSパケットが複数ある場合、制御部135は、多重化できるTSパケットの中でDTS(Decoding Time Stamp)が早いものから順に多重化するよう制御してもよいし、仮想デコーダ121のバッファ占有量が少ない方のTSパケットから順に多重化するよう制御してもよい。
また、多重化するTSパケットの中に、図18に示されるようなビデオのTS431を構成するビデオのTSパケットやその他のTS434を構成するその他のTSパケットが含まれる場合には、制御部135は、基本オーディオTSパケット、拡張オーディオTSパケット、ビデオのTSパケット、および、その他のTSパケットの中から、多重化するTSパケットを決定する。
ステップS219において、送信部138は、TSパケット化部137の多重化処理部403から供給されてきたトランスポートストリーム201(図16)を送信する。送信部138は、例えば、図示せぬドライブを制御して、リムーバブルメディアにトランスポートストリーム(MPEG2-TS)を送信したり、図示せぬ通信部を制御して、ネットワークを介して、受信装置にトランスポートストリームを送信したりする。この受信装置は、図7を参照して説明した仮想的な受信装置120ではなく、実際にMPEG2-TSを受信する(デコーダを有する)受信装置である。
ステップS220において、制御部135は、終了するか否かを判定する。例えば、制御部135は、入力部131へのオーディオデータの入力が終了した場合や、ユーザによりTSパケット送信処理の終了が指令された場合や、1本のオーディオストリームの送信が終了した場合などに、処理を終了すると判定する。ステップS220において、終了しないと判定された場合、処理はステップS211に戻り、それ以降の処理が繰り返される。すなわち、再びオーディオデータの入力が受け付けられてTSパケット化され、仮想デコーダ121のバッファ占有量の計算に基づいて多重化するTSパケットが決定されて多重化され、多重化された結果生成されたトランスポートストリームが送信される。ステップS220において、終了すると判定された場合、処理は終了される。
図19と図20の処理により、第1の仮想デコーダと第2の仮想デコーダ(条件(1)と条件(2)における図7の仮想デコーダ121)のバッファ占有量の計算に基づいて、TSパケットが多重化されるので、図7の仮想デコーダ121のモデルに対応するデコーダを有する受信装置(図示せず)であれば、確実にデコード(復号)することができる。
次に、図21のフローチャートを参照して、図20のステップS218で実行される、TSパケット多重化処理の詳細な例を説明する。なお、この処理は、送信するストリームが決定されている状態で開始される。
ステップS251において、制御部135は、基本オーディオストリームの周波数とオーディオストリームの1アクセスユニットのサンプル数(オーディオフレームのサンプル数)に基づいて、基本オーディオTSパケットを時間軸上に等間隔に配置する間隔(時間)を算出する。
例えば、基本オーディオストリームのサンプリング周波数が48KHzであり、1アクセスユニット(オーディオフレーム)のサンプル数が512である場合、1アクセスユニットは、約10ミリ秒とされるので、1アクセスユニットをひとつのまとまりとして配置する場合、等間隔に配置する間隔は、時間10ミリ秒とされる。なお、ここでは、基本オーディオストリームの周波数と基本オーディオストリームの1アクセスユニットのサンプル数に基づいて、基本オーディオTSパケットを時間軸上に等間隔に配置する間隔(時間)を算出するようにしたが、これに限らず、基本オーディオストリームのTSパケットの再生単位の時間に基づいて、基本オーディオTSパケットを時間軸上に等間隔に配置する間隔(時間)を算出するようにしてもよい。具体的な例としては、上述した例(基本オーディオストリームのサンプリング周波数が48KHzであり、1アクセスユニット(オーディオフレーム)のサンプル数が512である例)において、1アクセスユニットを10個のTSパケットとして送信する場合には、1つのTSパケットを、1ミリ秒の間隔で配置するようにしてもよい。なお、以下において、このとき算出された間隔を時間T41とする。
ステップS252において、制御部135は、基本オーディオTSパケットを、ステップS251の処理で算出した間隔(時間)T41で配置する。例えば、制御部135は、図22に示されるように、基本オーディオTSパケットを、時間T41の間隔で配置する。なお、この間隔(時間T41)は、拡張オーディオTSパケット、ビデオのTSパケット、およびその他のTSパケットが配置されうるだけの広さを有する間隔とされる。
なお、この実施の形態において、基本オーディオストリームの1アクセスユニットは固定長であるものとしていたが、基本オーディオストリームの1アクセスユニットが可変長である場合、アクセスユニットのサイズが異なってくるため、その場合には、等間隔ではなく、ほぼ等間隔で配置されることになる。
図22において、Audio BSは、基本オーディオTSパケットを示し、Audio Extは、拡張オーディオTSパケットを示し、Videoは、ビデオのTSパケットを示し、Etcは、その他のTSパケットを示している。また、横軸は時刻を示しており、図中右側に行くほど時刻が経過している。
図22に示されるように、基本オーディオTSパケット451−1乃至451−4が、時間T41の間隔で配置されている。ここで、基本オーディオTSパケット451−1乃至451−4については、付された符号が大きい方が、後(時間的に後)に符号化されたパケットであることを示している。すなわち、基本オーディオTSパケット451−1より基本オーディオTSパケット451−2の方が後に符号化されたパケットであり、基本オーディオTSパケット451−2より基本オーディオTSパケット451−3の方が後に符号化されたパケットであり、基本オーディオTSパケット451−3より基本オーディオTSパケット451−4の方が後に符号化されたパケットである。
図21に戻って、ステップS253において、制御部135は、基本オーディオTSパケットを全て配置し終えたか否かを判定し、基本オーディオTSパケットを全て配置し終えたと判定されるまでこの処理は繰り返される。例えば、制御部135は、図16の基本オーディオTS413を構成する複数の基本オーディオTSパケットを、図22に示されるように、時間T41の間隔で全て配置し終えたか否かを判定する。ステップS253において、基本オーディオTSパケットを全て配置し終えたと判定された場合、処理はステップS254に進む。
ステップS254において、制御部135は、基本オーディオTSパケットに対応する拡張オーディオTSパケットを、基本オーディオTSパケットの対になるように配置する。基本オーディオストリームと拡張オーディオストリームとの関係については、拡張オーディオストリームをデコード(再生)する場合に、それに対応するPTSを有する基本オーディオストリームが必要である関係がある。また、各オーディオストリームのPESパケットに付されたPTS(プレゼンテーションタイムスタンプ)について、基本オーディオストリームのPESパケットがTSパケット化された基本オーディオTSパケットの後に、拡張オーディオストリームのPESパケットがTSパケット化された拡張オーディオTSパケットが配置される必要がある。すなわち、ここで、基本オーディオTSパケットに対応する拡張オーディオTSパケットとは、同じPTSを有するPESパケットがTSパケット化されたTSパケットのことを示す。
なお、このとき、同じPTSを有する基本オーディオTSパケットと拡張オーディオTSパケットとの間に、ビデオのTSパケットやその他のTSパケットは配置されうるが、異なるPTSを有する基本オーディオTSパケットや拡張オーディオTSパケットは配置されないものとする。すなわち、基本オーディオTSパケットと拡張オーディオTSパケットに格納されているPTSを取り出したときに、そのPTSが時系列に並んでいるものとされる。
図22の例の場合、基本オーディオTSパケット451−1には、拡張オーディオTSパケット452−1が対応しており、基本オーディオTSパケット451−2には、拡張オーディオTSパケット452−2が対応しており、基本オーディオTSパケット451−3には、拡張オーディオTSパケット452−3が対応している。このように、制御部135は、基本オーディオTSパケットに対応する拡張オーディオTSパケットを、基本オーディオTSパケットの後に配置する。
ステップS255において、制御部135は、拡張オーディオTSパケットを全て配置し終えたか否かを判定し、拡張オーディオTSパケットを全て配置し終えたと判定されるまでこの処理は繰り返される。例えば、制御部135は、図16の拡張オーディオTS414を構成する複数の拡張オーディオTSパケットを、図22に示されるように、全て配置し終えたか否かを判定する。ステップS255において、拡張オーディオTSパケットを全て配置し終えたと判定された場合、処理はステップS256に進む。なお、基本オーディオストリームの1アクセスユニットは固定長であるが、拡張オーディオストリームの1アクセスユニットは固定長であるとは限らない。また、オーディオストリームのビットレートはビデオストリームに比べて十分低いものとされる。
ステップS256において、制御部135は、空いている箇所にビデオのTSパケットやその他のTSパケットを配置する。具体的には、基本オーディオTSパケットと拡張オーディオTSパケットとを、ステップS255までの処理で配置し終えたので、残りの空間(時間軸上の空間)に、送信するビデオストリームのTSパケットやその他のTSパケットを配置する。例えば、制御部135は、図18のビデオのTS431を構成する複数のTSパケットや、その他のTS434を構成する複数のTSパケットを、基本オーディオTSパケット451−1乃至451−4,並びに、拡張オーディオTSパケット452−1乃至452−3が配置された後の空いた空間に配置する。なお、ビデオのTSパケットやその他のTSパケットを送信しない場合、すなわち、ストリームにビデオストリームやその他のストリームが含まれない場合には、ステップS256とステップS257の処理は省略される。
図22の例の場合、拡張オーディオTSパケット452−1の後に、ビデオのTSパケット453−1,453−2が配置され、基本オーディオTSパケット451−2の後にビデオのTSパケット453−3が配置され、拡張オーディオTSパケット452−2の後にビデオのTSパケット453−4が配置されている。また、拡張オーディオTSパケット452−3の後に、ビデオのTSパケット453−5,その他のTSパケット454−1が配置されている。このようにして、制御部135は、送信する複数のTSパケットの多重化の配置(多重化のタイミング)を決定する。
ステップS257において、制御部135は、ビデオのTSパケットとその他のTSパケットを全て配置し終えたか否かを判定し、ビデオのTSパケットとその他のTSパケットを全て配置し終えたと判定されるまでこの処理は繰り返される。例えば、制御部135は、図18のビデオのTS431を構成する複数のTSパケットと、図18のその他のTS434を構成する複数のTSパケットとを、図22に示されるように、全て配置し終えたか否かを判定する。ステップS257において、ビデオのTSパケットとその他のTSパケットを全て配置し終えたと判定された場合、処理はステップS258に進む。
ステップS258において、TSパケット化部137の多重化処理部403は、制御部135により決定された配置に基づいて、各TSパケットを多重化する。これにより、図22に示されるような配置に基づいて、各TSパケットが多重化され、トランスポートストリーム(TS)が生成される。
ステップS259において、制御部135は、ステップS258の処理で多重化して生成したトランスポートストリームが、想定している図7の仮想デコーダ121のモデルを満たすことを確認する。具体的には、制御部135は、第1の仮想デコーダと第2の仮想デコーダ(図7の仮想デコーダ121に条件(1)と条件(2)を当てはめることにより想定される2つの仮想デコーダ)で、ステップS258の処理で生成したトランスポートストリームをデコードするよう想定し、デコード可能であるか否かを確認する。このようにすることで、生成したトランスポートストリームが、仮想デコーダ121で確実に再生可能であることを確認することができる。ステップS259の処理の後、処理は終了される。
図21の処理により、基本オーディオTSパケットを等間隔(時間T41)で配置した後、対応する拡張オーディオTSパケットを配置し、さらに残りのTSパケットを配置して多重化するようにしたので、TSパケットの多重化のための配置を容易に算出し、多重化することができる。
なお、図22の例においては、拡張オーディオTSパケットが、対応する基本オーディオTSパケットの後ろであれば、基本オーディオTSパケットと拡張オーディオTSパケットとの間にビデオのTSパケットやその他のTSパケットが配置されていてもよい例を示しているが、図23に示されるように、対となるオーディオTSパケットを連続して配置するようにしてもよい。なお、図中、図22と対応する部分については同一の符号を付してあり、その説明は繰り返しになるので省略する。また、図23において、Audio BSは、基本オーディオTSパケットを示し、Audio Extは、拡張オーディオTSパケットを示し、Videoは、ビデオのTSパケットを示し、Etcは、その他のTSパケットを示している。また、横軸は時刻を示しており、図中右側に行くほど時刻が経過している。
図23においては、基本オーディオTSパケット(図中、Audio BSと記述されている)451−1乃至451−4が、時間T41の間隔で配置されており、基本オーディオTSパケット451−1の後に拡張オーディオTSパケット452−1が配置され、基本オーディオTSパケット451−2の後に拡張オーディオTSパケット452−2が配置され、基本オーディオTSパケット451−3の後に拡張オーディオTSパケット452−3が配置されている。また、基本オーディオTSパケット451−1の前にビデオのTSパケット453−1が配置され、拡張オーディオTSパケット452−1の後にビデオのTSパケット453−2乃至453−4が配置されている。また、拡張オーディオTSパケット452−2の後にビデオのTSパケット453−5,453−6が配置され、拡張オーディオTSパケット452−3の後に、ビデオのTSパケット453−7とその他のTSパケット454−1が配置されている。
図23に示すように、同じPTSを有する基本オーディオTSパケットと拡張オーディオTSパケットとを並んで配置するようにしてもよいし、図22に示すように、同じPTSを有する基本オーディオTSパケットと拡張オーディオTSパケットの間に、ビデオのTSパケットやその他のTSパケットを配置するようにしてもよい。すなわち、オーディオのPTSの値が逆にならなければ、その詳細な配置は自由とすることができる。
このように、第2実施の形態においては、図21に示されるように、固定長符号化方式によりエンコードされた基本オーディオストリームのTSパケットを等間隔で配置した後、それに対応する拡張オーディオストリームのTSパケットを配置するようにしたので、簡単な方法で、多重化の配置を求めることができ、より容易に多重化を行うことができる。
また、基本オーディオストリームと拡張オーディオストリームのTSパケットを、多重化するときに、多重化のタイミングが、仮想的な受信装置の能力を考慮して調整されるようにすることで、受信側の能力を考慮したTSを送信するようにしたので、受信側において、円滑にデコードすることができる。
なお、本発明は、オーディオエンコーダを有する送信装置111に限らず、エンコードを行う全ての情報処理装置に適用することができる。また、送信装置111に限らず、TSパケット化を行い、多重化して、TSを生成する多重化装置に適用することもできる。すなわち、送信装置111の多重化処理を行うブロックであってもよいし、独立した多重化装置であってもよい。
さらに、以上の例では、本発明をオーディオストリームのエンコード、デコードに適用した場合について説明したが、これに限らず、ビデオストリームのエンコード、デコードに適用することもできる。すなわち、本発明は、オーディオストリームまたはビデオストリームなどの各種のストリームに適用することができる。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。この場合、上述した処理は、図24に示されるようなパーソナルコンピュータ500により実行される。
図24において、CPU501は、ROM502に記憶されているプログラム、または、記憶部508からRAM503にロードされたプログラムに従って各種の処理を実行する。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなどが適宜記憶される。
CPU501、ROM502、およびRAM503は、内部バス504を介して相互に接続されている。この内部バス504にはまた、入出力インターフェース505も接続されている。
入出力インターフェース505には、キーボード、マウスなどよりなる入力部506、CRT,LCDなどよりなるディスプレイ、スピーカなどよりなる出力部507、ハードディスクなどより構成される記憶部508、並びに、モデム、ターミナルアダプタなどより構成される通信部509が接続されている。通信部509は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行う。
入出力インターフェース505にはまた、必要に応じてドライブ510が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどによりなるリムーバブルメディア521が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部508にインストールされる。
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、図24に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア521よりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM502や記憶部508が含まれるハードディスクなどで構成される。
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
従来、送信装置がMPEG2-TSを用いて符号化する場合における制約を説明する図である。 図1のデコーダの構成例を示す図である。 本発明を適用した送信装置がMPEG2-TSの方式を用いてオーディオストリームを符号化する場合の制約を説明する図である。 図3の送信装置の構成例を示す図である。 基本オーディオストリームと拡張オーディオストリームが多重化されたTSの構造を説明する図である。 基本オーディオストリームが多重化されたTSの構造を説明する図である。 図3の仮想的なデコーダのモデルを説明する図である。 TSパケット送信処理を説明するフローチャートである。 TSパケット送信処理を説明するフローチャートである。 基本オーディオストリームに対するバッファ占有量の計算処理を説明するフローチャートである。 デコーダのシステムタイムクロックを説明する図である。 基本オーディオストリームと拡張オーディオストリームに対するバッファ占有量の計算処理を説明するフローチャートである。 TSパケットの送信タイミングを説明する図である。 TSパケットの配置を説明する図である。 本発明を適用した他の送信装置の構成例を示す図である。 基本オーディオストリームと拡張オーディオストリームが多重化されたTSの構造を説明する図である。 ビデオストリーム、オーディオストリーム、およびその他のESが多重化されるまでの流れを説明する図である。 ビデオストリーム、オーディオストリーム、およびその他のESがそれぞれTSパケット化された例を説明する図である。 TSパケット送信処理の他の例を説明するフローチャートである。 TSパケット送信処理の他の例を説明するフローチャートである。 TSパケット多重化処理の詳細な例を説明するフローチャートである。 ビデオストリーム、オーディオストリーム、およびその他のESを多重化する配置の例を示す図である。 ビデオストリーム、オーディオストリーム、およびその他のESを多重化する配置の他の例を示す図である。 パーソナルコンピュータの構成例を示す図である。
符号の説明
111 送信装置, 112 仮想的な受信装置, 121 仮想デコーダ, 131 入力部, 132 オーディオエンコーダ, 133 バッファ, 134 抽出情報付加部, 135 制御部, 136 PESパケット化部, 137 TSパケット化部, 138 送信部, 141 基本バッファ, 142 拡張バッファ, 181 基本オーディオストリーム, 182 拡張オーディオストリーム, 191 PES, 201 トランスポートストリーム, 341 PIDフィルタ, 361 トランスポートプリオリティフィルタ, 362 トランスポートバッファ, 363 エレメンタリバッファ, 364 オーディオデコーダ, 401−1 基本PESパケット化部, 401−2 拡張PESパケット化部, 402−1 基本TSパケット化部, 402−2 拡張TSパケット化部, 403 多重化部, 411 基本オーディオPES, 412 拡張オーディオPES, 413 基本オーディオTS, 414 拡張オーディオTS, 431 ビデオのTS, 432 基本オーディオTS, 433 拡張オーディオTS, 434 その他のTS, 451 基本オーディオTSパケット, 452 拡張オーディオTSパケット

Claims (14)

  1. 入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコード手段と、
    前記エンコード手段によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化手段と、
    前記TSパケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御手段と、
    前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化手段と
    を備える多重化装置。
  2. 前記基本ストリームのTSパケットのトランスポートプライオリティと、前記拡張ストリームのTSパケットのトランスポートプライオリティは異なる
    請求項1に記載の多重化装置。
  3. 前記基本ストリームのストリームIDと、前記拡張ストリームのストリームIDは異なる
    請求項1に記載の多重化装置。
  4. 前記エンコード手段によりエンコードされた前記基本ストリームの1アクセスユニットは固定長とされる
    請求項1に記載の多重化装置。
  5. 前記制御手段は、
    前記エンコード手段によりエンコードされた前記基本ストリームのTSパケットの再生単位の時間に基づいて、配置する前記基本ストリームのTSパケットの間隔を算出し、
    算出した前記間隔で、前記基本ストリームのTSパケットを配置するよう制御した後、
    配置した前記基本ストリームのTSパケットと対となる前記拡張ストリームのTSパケットをさらに配置するよう制御する
    請求項1に記載の多重化装置。
  6. 前記基本ストリームは、基本オーディオストリームであるとともに、前記拡張ストリームは、拡張オーディオストリームであり、
    前記制御手段は、
    前記エンコード手段によりエンコードされた前記基本オーディオストリームの周波数と、前記基本オーディオストリームの1アクセスユニットのサンプル数に基づいて、配置する前記基本オーディオストリームのTSパケットの間隔を算出し、
    算出した前記間隔で、前記基本オーディオストリームのTSパケットを配置するよう制御した後、
    配置した前記基本オーディオストリームのTSパケットと対となる前記拡張オーディオストリームのTSパケットをさらに配置するよう制御する
    請求項1に記載の多重化装置。
  7. 前記エンコード手段によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれPES(Packetized Elementary Stream)パケットにパケット化するとともに、PTS(Presentation Time Stamp)を付すPESパケット化手段をさらに備え、
    前記TSパケット化手段は、前記PESパケット化手段によりパケット化された複数の前記PESパケットを、それぞれTSパケットにパケット化し、
    前記制御手段は、前記TSパケット化手段によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するとともに、同じPTS(Presentation Time Stamp)を持つPESパケットがパケット化されたTSパケットについて、前記基本ストリームのTSパケットの後に、前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御し、
    前記多重化手段は、前記制御手段により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する
    請求項1に記載の多重化装置。
  8. 前記多重化手段により多重化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを、記録媒体に記録させるよう制御する記録制御手段を
    さらに備える請求項1に記載の多重化装置。
  9. 前記入力したストリームには、オーディオストリームとビデオストリームのうちの少なくとも一方が含まれる
    請求項1に記載の多重化装置。
  10. 前記制御手段は、
    エレメンタリバッファの容量が第1の容量、前記エレメンタリバッファへの入力ビットレートが第1のレートと想定した、前記基本ストリームのみに対応している第1の仮想デコーダを有する第1の仮想的な受信装置と、エレメンタリバッファの容量が第2の容量、前記エレメンタリバッファへの入力ビットレートが第2のレートと想定した、前記基本ストリームと前記拡張ストリームとに対応している第2の仮想デコーダを有する第2の仮想的な受信装置との2つの仮想的な受信装置のそれぞれの前記エレメンタリバッファがオーバーフローおよびアンダーフローしないように、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットの配置を制御する
    請求項1に記載の多重化装置。
  11. 前記エレメンタリバッファの第1の容量は、第2の容量より小さく、
    前記エレメンタリバッファへの入力ビットレートである第1のレートは、第2のレートより遅い
    請求項10に記載の多重化装置。
  12. 入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップと、
    前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化ステップと、
    前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御ステップと、
    前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップと
    を含む多重化方法。
  13. 入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップと、
    前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化ステップと、
    前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御ステップと、
    前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップと
    を含む処理をコンピュータに実行させるプログラム。
  14. 入力したストリームを、基本ストリームと基本ストリームに対して拡張性を有する拡張ストリームとを含むようにエンコードするエンコードステップと、
    前記エンコードステップの処理によりエンコードされた前記基本ストリームと前記拡張ストリームとを、それぞれ同一のパケットIDのTS(Transport Stream)パケットにパケット化するTSパケット化ステップと、
    前記TSパケット化ステップの処理によりパケット化された前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとのうち、前記基本ストリームのTSパケットを配置した後、配置した前記基本ストリームのTSパケットに対となる前記拡張ストリームのTSパケットを配置するよう、TSパケットの配置を制御する制御ステップと、
    前記制御ステップの処理により制御された前記TSパケットの配置に基づいて、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットとを多重化する多重化ステップと
    を含む処理により生成された、前記基本ストリームのTSパケットと前記拡張ストリームのTSパケットの多重化結果が記録されている
    記録媒体。
JP2005197051A 2004-12-16 2005-07-06 多重化装置、多重化方法、プログラム、および記録媒体 Expired - Fee Related JP4997720B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005197051A JP4997720B2 (ja) 2004-12-16 2005-07-06 多重化装置、多重化方法、プログラム、および記録媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004363959 2004-12-16
JP2004363959 2004-12-16
JP2005197051A JP4997720B2 (ja) 2004-12-16 2005-07-06 多重化装置、多重化方法、プログラム、および記録媒体

Publications (2)

Publication Number Publication Date
JP2006197543A JP2006197543A (ja) 2006-07-27
JP4997720B2 true JP4997720B2 (ja) 2012-08-08

Family

ID=36803207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005197051A Expired - Fee Related JP4997720B2 (ja) 2004-12-16 2005-07-06 多重化装置、多重化方法、プログラム、および記録媒体

Country Status (1)

Country Link
JP (1) JP4997720B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6571314B2 (ja) * 2013-06-18 2019-09-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 送信方法
WO2015050175A1 (ja) * 2013-10-04 2015-04-09 ソニー株式会社 受信装置および受信方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7212872B1 (en) * 2000-05-10 2007-05-01 Dts, Inc. Discrete multichannel audio with a backward compatible mix
JP3923783B2 (ja) * 2001-11-02 2007-06-06 松下電器産業株式会社 符号化装置及び復号化装置
JP3913664B2 (ja) * 2001-11-14 2007-05-09 松下電器産業株式会社 符号化装置、復号化装置およびこれらを用いたシステム
WO2005076622A1 (ja) * 2004-02-06 2005-08-18 Sony Corporation 情報処理装置および情報処理方法、プログラム、並びにデータ構造
JP4872253B2 (ja) * 2004-10-12 2012-02-08 ソニー株式会社 多重化装置、多重化方法、プログラム、および記録媒体

Also Published As

Publication number Publication date
JP2006197543A (ja) 2006-07-27

Similar Documents

Publication Publication Date Title
JP4872253B2 (ja) 多重化装置、多重化方法、プログラム、および記録媒体
KR101073950B1 (ko) 정보 처리 장치 및 정보 처리 방법, 및 기록 매체
KR101967818B1 (ko) 수신 장치 및 그 수신 방법
US7881584B2 (en) Reproducing apparatus and method, and recording medium
JP5059301B2 (ja) 同期再生装置および同期再生方法
JP4678486B2 (ja) 多重化装置および多重化方法、プログラム、並びに記録媒体
JP5843856B2 (ja) ビットストリーム送信装置、ビットストリーム送受信システム、ビットストリーム受信装置、ビットストリーム送信方法及びビットストリーム受信方法
EP1162845A2 (en) Apparatus and method for information processing, and recording medium
JP4997720B2 (ja) 多重化装置、多重化方法、プログラム、および記録媒体
EP1753235A2 (en) Apparatus and method for displaying a secondary video signal with a primary video signal
CA2490879C (en) Reproducing apparatus and method, and recording medium
JP4850041B2 (ja) 映像再生システム、映像再生の同期方法および映像再生端末
JP5168105B2 (ja) 音声再生装置、及び音声再生方法
JP4357578B1 (ja) 音声データ処理装置および音声データ処理方法
JP2009111608A (ja) 再生装置および再生方法
JP2007311847A (ja) 再生システム
JP2006014180A (ja) データ処理装置、データ処理方法及びそのプログラム
JP2005276246A (ja) 情報再生方法および情報再生装置
JP2005348160A (ja) ストリーム復号装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110927

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111118

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120430

R151 Written notification of patent or utility model registration

Ref document number: 4997720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20150525

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees