JP3543716B2 - ストリーム生成方法及び装置 - Google Patents
ストリーム生成方法及び装置 Download PDFInfo
- Publication number
- JP3543716B2 JP3543716B2 JP2000026777A JP2000026777A JP3543716B2 JP 3543716 B2 JP3543716 B2 JP 3543716B2 JP 2000026777 A JP2000026777 A JP 2000026777A JP 2000026777 A JP2000026777 A JP 2000026777A JP 3543716 B2 JP3543716 B2 JP 3543716B2
- Authority
- JP
- Japan
- Prior art keywords
- stream
- switching
- data
- output
- encoding
- 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 - Lifetime
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明は、例えばMPEG2のトランスポートストリーム等のような連続した映像や音声信号を符号化及び多重化して得られた複数のストリームを、切り替えて一つのストリームを生成するストリーム生成方法及び装置に関する。
【0002】
【従来の技術】
近年は、例えばいわゆるMPEG(Moving Picture Expert Group)2と呼ばれる映像、音声の圧縮符号化技術により、映像や音声からなる番組(以下、プログラムと呼ぶことにする。)の信号を圧縮符号化して伝送或いは放送する技術が実用化されている。
【0003】
また、近年は、同時に多数のプログラムを伝送或いは放送可能にすること、すなわち多チャンネル化が望まれている一方で、使用可能な伝送帯域には制限があり、そのため、MPEG2では、例えば限られた伝送帯域の有効利用を図ることなどを想定して、複数プログラムの複数の映像や音声信号を圧縮符号化したストリームを多重化して伝送する技術についても規定されている。なお、MPEG2では、当該多重化ストリームをトランスポートストリーム(Transport Stream)と呼んでいる。
【0004】
すなわち、MPEG2では、複数のプログラムの映像や音声を圧縮符号化した複数のストリームを伝送或いは放送する際に、それら複数のストリームを構成する各符号化データ列をパケット化して時分割多重化し、その時分割多重化により得られた多重化ストリーム(トランスポートストリーム)を伝送或いは放送することが行われている。
【0005】
ここで、MPEGでは、伝送するストリームとして、アクセスユニット(Access Unit)と呼ばれる映像、音声の符号化(及び復号再生)の単位毎に符号化し、符号化データ列であるPES(Packetized Elementary Stream)を生成し、さらに、アクセスユニット毎に、復号再生すべき時間を示すタイムスタンプと呼ばれる時間情報を付加するようになされている。
【0006】
タイムスタンプには、SCR(System Clock Reference)とよばれるシステム時刻基準参照値によって時間基準が与えられている。また、タイムスタンプには、2種類あり、その一方はPTS(Presentation Time Stamp)と呼ばれる再生出力の時刻管理情報で、他方はDTS(Decoding Time Stamp)と呼ばれる復号の時刻管理情報である。SCRは、各プログラム毎に固有のプログラム時刻基準参照値であるPCR(Program Clock Reference)と共に、MPEGの復号時に時刻基準となるSTC(System Time Clock)の値を符号化装置側で意図した値にセット及び校正するための情報となされている。また、PTS、DTSは、それぞれ復号を行う際の単位(アクセスユニット)や、表示する際の単位(Presentation Unit)を、どのタイミングで復号又は表示するかを示す情報であり、同期管理上重要な情報である。
【0007】
また、MPEG2では、複数のプログラムを圧縮符号化した複数のストリームが時分割多重されているトランスポートストリームから、所望のプログラムのパケットを取り出して復号化する際に必要となる情報として、PSI(Program Specific Information)と呼ばれるプログラム仕様情報が規定されている。PSIは、特定の識別コードをもったパケットや一次的なPSIで指し示されたパケットなどで伝送される。
【0008】
図8には、例えば、2つの入力信号101A、102Aをそれぞれ同期させて圧縮符号化したデータ列を多重化して多重化ストリームを生成し、同様に、2つの入力信号101B、102Bをそれぞれ同期させて圧縮符号化したデータ列を多重化して多重化ストリームを生成し、さらにそれら2つの多重化ストリームを切り替えて1つのトランスポートストリームを生成する、従来のストリーム生成装置の概略構成を示す。
【0009】
この図8において、入力信号101Aは入力端子111Aを介して符号化器121Aに供給され、入力信号101Bは入力端子111Bを介して符号化器121Bに供給される。また、入力信号102Aは入力端子112Aを介して符号化器122Aに供給され、入力信号102Bは入力端子112Bを介して符号化器122Bに供給される。
【0010】
端子104には時刻設定信号STが供給され、当該時刻設定信号STはSTC器106に入力する。端子103には切替え信号SEが供給され、当該切替え信号SEは切替えタイミング発生器107に入力する。さらに、端子105Aには同期信号SAが供給され、当該同期信号SAは符号化器121A及び符号化器122Aに入力する。端子105Bには同期信号SBが供給され、当該同期信号SBは符号化器121B及び符号化器122Bに入力する。
【0011】
各符号化器121A、121B、122A、122Bは、それぞれ対応する入力端子111A、111B、112A、112Bを介して供給された入力信号101A、101B、102A、102Bを、符号化の単位である時間(アクセスユニット(AU))毎に符号化する。
【0012】
ただし、符号化器121Aと符号化器122Aは、共に同じデータタイプの符号化を行い、同期信号SAに同期しているものとする。また、符号化器121Bと符号化器122Bは、共に同じデータタイプの符号化を行い、同期信号SBに同期しているものとする。なお、同じデータタイプとは、アクセスユニットが同じで、その符号化アルゴリズムも同じであることを意味する。
【0013】
すなわち、符号化器121Aと122Aは、外部から供給される同期信号SAに同期して、アクセスユニット単位毎に符号化を行い、符号化データ列であるPESを出力する。また、符号化器121Bと122Bは、外部から供給される同期信号SBに同期して、アクセスユニット単位毎に符号化を行い、符号化データ列であるPESを出力する。これら各符号化器121A、121B、122A、122Bから出力されるPESうち、符号化器121A及び121BからのPESは多重化器141に送られ、符号化器122A及び122BからのPESは多重化器142に送られる。
【0014】
ここで、各符号化器における符号化の際には、発生した符号化データを仮想的なバッファに蓄積し、さらに当該仮想的なバッファからデータを読み出した場合の充足量を計算し、その仮想バッファの充足量に基づいて、各フレーム毎の発生符号量を制御するようになされている。例えば、MPEGビデオ符号化の場合は、符号化により発生する符号量を、VBV(video buffer verifier)と呼ばれる仮想的なバッファ(以下、VBVバッファと呼ぶことにする。)の充足量に基づいて制御することが規定されている。すなわち、MPEGビデオ符号化方式においては、符号化器による符号化データが各アクセスユニット(AU)毎に瞬間的に発生してVBVバッファに入力され、一方、当該VBVバッファからは、あるビットレートで符号化データが読み出されるものと仮定し、そのときのVBVバッファの充足量に基づいて、符号化器での発生符号量を制御するようになされている。
【0015】
なお、VBVバッファの充足量を表す遷移図として、横軸を時間(例えば右へ向かうに従って時間が経過する軸)とし、縦軸をVBVバッファのデータ蓄積量(例えば上へ向かうに従ってバッファデータ蓄積量が増加する軸)とし、また、VBVバッファからの出力ビットレートが例えばいわゆるコンスタントビットレート(CBR)であるとした場合、当該VBVバッファの充足量の遷移図(すなわちデータ蓄積量の遷移図)は、符号化器による符号化データの入力時には瞬時に上昇し、一方、VBVバッファからの出力時には右下がりの傾きが一定となるような遷移図となる。
【0016】
図8の場合、上述したような各符号化器における発生符号量制御は、符号量制御器131,132が行う。すなわち、符号量制御器131は、符号化器121Aと121Bからそれぞれ出力されるPESのレートとVBVの充足量(データ蓄積量等のバッファサイズ)をパラメータとし、それらパラメータに基づいてVBVのシミュレーションを行い、符号化器121A及び121Bから出力する発生符号量を制御する。また、符号量制御器132は、符号化器122Aと122Bからそれぞれ出力されるPESのレートとVBVの充足量をパラメータとし、それらパラメータに基づいてVBVのシミュレーションを行い、符号化器122A及び122Bから出力する発生符号量を制御する。
【0017】
STC設定器106は、端子104を介して供給された時刻設定信号STに基づいてSTCを生成する。当該STCは多重化器141と142に送られる。
【0018】
多重化器141は、予め決められたレートで符号化器121Aより供給されたPESの符号化データ列からデータパケットを生成し、符号化器121Bより供給されたPESの符号化データ列からデータパケットを生成する。なお、多重化器141は、その時間に有効なデータ列がない場合、データパケットの代わりにヌルパケットを生成する。また、多重化器141は、STC設定器105より供給されたSTCからSCRパケットを生成する。当該多重化器141は、それらデータパケット或いはヌルパケットとSCRパケットを時分割多重し、トランスポートストリームを作成する。この多重化器141にて生成されたトランスポートストリームはストリーム切替え器108に送られる。
【0019】
同様に、多重化器142は、予め決められたレートで、符号化器122Aより供給されたPESの符号化データ列からデータパケットを生成し、符号化器122Bより供給されたPESの符号化データ列からデータパケットを生成する。なお、多重化器142は、その時間に有効なデータ列がない場合、データパケットの代わりにヌルパケットを生成する。また、多重化器142は、STC設定器105より供給されたSTCからSCRパケットを生成する。当該多重化器142は、それらデータパケット或いはヌルパケットとSCRパケットを時分割多重し、トランスポートストリームを作成する。この多重化器142にて生成されたトランスポートストリームはストリーム切替え器108に送られる。
【0020】
切替えタイミング発生器107は、端子103を介して供給された切替え信号SEを、各符号化器における符号化遅延、及び、各多重化器における多重化遅延を足した時間だけ遅延させ、切替えタイミング信号として出力する。この切替えタイミング信号は、ストリーム切替え器108に入力する。
【0021】
ストリーム切替え器108は、切替えタイミング信号発生器107からの切替えタイミング信号に基づき、多重化器141から供給されたトランスポートストリームと多重化器142から供給されたトランスポートストリームをパケットの境界で切り替えて出力する。
【0022】
図8のストリーム生成装置の出力端子109からは、当該ストリーム切替え器108での切り替えにより得られたストリームが、最終的に生成されたトランスポートストリームとして出力される。
【0023】
【発明が解決しようとする課題】
ところで、上述の図8に示したような複数の符号化器及び多重化器と、ストリーム切替え器等からなる従来のストリーム生成装置では、例えば、複数の各符号化器をそれぞれ同期させ、それぞれ同時に入力した信号を符号化したとしても、各符号化器からの符号化データを多重化器でパケット化してトランスポートストリームを構成する時に、そのパケット位置が入力時間によらず一定でないため、ストリーム切替え器においてトランスポートストリーム切り替える際に、後にデータが時間的に連続して再生できるように(すなわちシームレス)切り替えることが困難である。
【0024】
したがって、時間的に連続して再生可能なシームレスなトランスポートストリームを生成するためには、例えば、各多重化器において生成されたトランスポートストリームの中から、それぞれ対応した各符号化器で生成されたデータ列に対応するデータパケットを探し出し、さらにそのデータパケット内を走査することによって切替え点を決定する、といった処理が必要となる。なお、このような処理を行うことは、構成の複雑化やそれに伴う高コスト化を招きかねない。
【0025】
本発明は、上述の課題に鑑みてなされたものであり、例えば各符号化データのアクセスユニットが違っていたり、ストリーム切替え前後の符号化レートが違っていたりしたとしても、シームレスなストリーム切替えを容易に実現すること、すなわち、時間的に連続して再生可能なシームレスなトランスポートストリームの生成を容易に実現することが可能な、ストリーム生成方法及び装置の提供を目的とする。
【0026】
【課題を解決するための手段】
請求項1記載の本発明に係るストリーム生成方法は、上述の課題を解決するための手段として、複数の入力データをそれぞれ符号化して各入力データ毎に対応した複数のデータパケットを生成するステップと、前記複数のデータパケットを多重化して多重化ストリームを生成するステップと、前記符号化及び多重化による出力符号量を制御するステップと、少なくとも2つの多重化ストリームを切り替えるステップとを有する。そして、前記出力符号量を制御するステップでは、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、前記多重化ストリームを切り替えるステップでは、当該期間で前記多重化ストリームの切り替えを行う。
【0027】
請求項2記載の本発明に係るストリーム生成方法は、上述の課題を解決するために、前記出力符号量を制御するステップにおいて、全てのデータパケットを出力しない期間を設け、且つ、当該期間を前記符号化の際の符号化単位の境界となるよう出力符号量を制御し、前記多重化ストリームを切り替えるステップにおいて、当該期間で前記多重化ストリームの切り替えを行う。
【0028】
請求項3記載の本発明に係るストリーム生成装置は、上述の課題を解決するための手段として、複数の入力データをそれぞれ符号化して各入力データ毎に対応する複数のデータパケットを生成する符号化手段と、前記複数のデータパケットを多重化して多重化ストリームを生成する多重化手段と、前記符号化及び多重化による出力符号量を制御する符号量制御手段と、少なくとも2つの多重化ストリームを切り替えるストリーム切替え手段とを有する。そして、前記符号量制御手段では、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、前記ストリーム切替え手段では、当該期間で前記多重化ストリームの切り替えを行う。
【0029】
請求項4記載の本発明に係るストリーム生成装置は、前記符号量制御手段において、全てのデータパケットを出力しない期間を設け、且つ、当該期間を前記符号化の際の符号化単位の境界となるよう出力符号量を制御し、前記ストリーム切替え手段において、当該期間で前記多重化ストリームの切り替えを行う。
【0030】
このような本発明に係るストリーム生成方法及び装置は、符号量制御を、符号化の際のみならず多重化の際にも行い、符号化したデータパケットのストリーム化の際に全てのすべてのデータパケットが出力されない(ヌルパケットのみ出力される)期間を設け、且つ、その期間は符号化の際の符号化単の境となるようにし、その期間をストリーム切替え点とすることにより、切り替えをシームレスにかつ容易に実現している。
【0031】
【発明の実施の形態】
以下、本発明に係るストリーム生成方法及び装置の好ましい実施の形態について図面を参照しながら詳細に説明する。本発明に係るストリーム生成方法及び装置は、図1に示すようなストリーム生成装置に適用することができる。
【0032】
この本発明の実施の形態となるストリーム生成装置は、図1に示すように例えば2つの入力信号1A、2Aをそれぞれ同期させて圧縮符号化したデータ列を多重化して多重化ストリームを生成し、同様に、2つの入力信号1B、2Bをそれぞれ同期させて圧縮符号化したデータ列を多重化して多重化ストリームを生成し、さらにそれら2つの多重化ストリームを切り替えて1つのトランスポートストリームを生成するようになっている。
【0033】
この図1において、入力信号1A及び入力信号2Aは例えばビデオ信号であり、それぞれ入力端子11Aを介して符号化器21Aに供給され、また、入力端子12Aを介して符号化器22Aに供給される。
【0034】
また、入力信号1B及び入力信号2Bは例えばオーディオ信号であり、それぞれ入力端子11Bを介して符号化器21Bに供給され、また、入力端子12Bを介して符号化器22Bに供給される。
【0035】
端子4には、時刻設定信号STが供給されるようになっている。この時刻設定信号STは、端子4を介してSTC器6に供給される。また、端子3には切替え信号SEが供給されるようになっている。この切替え信号SEは、端子3介して符号量制御器31,32及び切替えタイミング発生器7にそれぞれ供給される。
【0036】
さらに、端子5Aには同期信号SAが供給されるようになっている。この同期信号SAは、端子5Aを介して符号化器21A,22A及び切替えタイミング発生器7にそれぞれ供給される。また、端子5Bには、同期信号SBが供給されるようになっている。この同期信号SBは、端子5Bを介してST英符号化器21B,22B及び切替えタイミング発生器7にそれぞれ供給される。
【0037】
各符号化器21A、21B、22A、22Bは、それぞれ対応する入力端子11A、11B、12A、12Bを介して供給された入力信号1A、1B、2A、2Bを、符号化の単位である時間(アクセスユニット(AU))毎に符号化する。
【0038】
ただし、符号化器21Aと符号化器22Aは、共に、同期信号SAに同期して同じデータタイプの符号化を行うようになっており、また、符号化器21Bと符号化器22Bは、共に、同期信号SBに同期して同じデータタイプの符号化を行うようになっている。なお、ここでいう「同じデータタイプ」とは、アクセスユニットが同じで、その符号化アルゴリズムも同じであることを意味する。さらに、各符号化器21A、21B、22A、22Bは、入力された信号を符号化して出力するまでの遅延時間は、それぞれ一定となっている。
【0039】
すなわち、符号化器21Aと22Aは、外部から供給される同期信号SAに同期して、アクセスユニット単位毎に符号化を行い、符号化データ列であるPESを同じタイミングで出力する。また、符号化器21Bと22Bは、外部から供給される同期信号SBに同期して、アクセスユニット単位毎に符号化を行い、符号化データ列であるPESを同じタイミングで出力する。
【0040】
これら各符号化器21A、21B、22A、22Bから出力されるPESのヘッダには、そのアクセスユニットが何時出力されるかを示すタイムスタンプ(PTS)及び何時デコードされるかを示すタイムスタンプ(DTS)が付加される。なお、同時に入力された信号が同一種のデータである場合、符号化器が異なっていても同じタイムスタンプが付加される。
【0041】
これら各符号化器21A、21B、22A、22Bから出力されるPESうち、符号化器21A及び21BからのPESは多重化器41に供給され、符号化器22A及び22BからのPESは多重化器42に供給される。
【0042】
STC設定器6は、そのクロックを27MHzとするカウンタであり、システムの時刻をカウントするものである。STC設定器6は、端子4を介して供給された時刻設定信号STに基づいてSTCを生成し、これを多重化器41及び42にそれぞれ供給する。
【0043】
多重化器41は、予め決められた一定のレート(CBR)で符号化器21Aより供給されたPESの符号化データ列からデータパケットを生成し、符号化器21Bより供給されたPESの符号化データ列からデータパケットを生成する。
【0044】
なお、多重化器41は、その時間に有効なデータ列がない場合、データパケットの代わりにヌルパケットを生成する。
【0045】
また、多重化器41は、STC設定器6から供給された時間情報であるSTCを元にPCRパケットを作成する。この多重化器41は、それらデータパケット或いはヌルパケットとSCRパケットを時分割多重してトランスポートストリームを作成し、これをストリーム切替え器8に供給する。
【0046】
同様に、多重化器42は、予め決められた一定のレート(CBR)で符号化器22Aより供給されたPESの符号化データ列からデータパケットを生成し、符号化器22Bより供給されたPESの符号化データ列からデータパケットを生成し、一方、その時間に有効なデータ列がない場合はデータパケットの代わりにヌルパケットを生成する。また、多重化器42は、時間情報であるSTCを元に、PCRパケットを作成する。当該多重化器42は、それらデータパケット或いはヌルパケットとSCRパケットを時分割多重し、トランスポートストリームを作成する。この多重化器42にて生成されたトランスポートストリームはストリーム切替え器8に供給される。
【0047】
切替えタイミング発生器7は、端子5Aを介して供給された同期信号SA及び端子5Bを介して供給された同期信号SBに基づいて、端子3を介して供給された切替え信号SEを、各符号化器における符号化遅延、及び各多重化器における多重化遅延を足した時間だけ遅延させ、切替えタイミング信号としてストリーム切替え器8に供給する。
【0048】
ここで、各符号化器21A、21B、22A、22Bにおける符号化の際、及び多重化器41、42における多重化の際には、仮想的なバッファ(MPEGビデオ符号化の場合、VBVバッファ)にデータ列を蓄積し、さらにこの仮想的なバッファからデータを読み出した場合の充足量を計算する。そして、この仮想バッファの充足量に基づいて、各フレーム(アクセスユニット)毎の符号量を制御するようになっている。
【0049】
すなわち、符号量制御器31は、符号化器21A及び21Bからそれぞれ出力されるPESのレート、及びVBVバッファの充足量(データ蓄積量等のバッファサイズ)をパラメータとし、これらのパラメータに基づいてVBVのシミュレーションを行い、符号化器21A及び21Bの発生符号量を制御する。
【0050】
同様に、符号量制御器32は、符号化器22A及び22Bからそれぞれ出力されるPESのレート、及びVBVの充足量(データ蓄積量等のバッファサイズ)をパラメータとし、これらのパラメータに基づいてVBVのシミュレーションを行い、符号化器22A及び22Bの発生符号量を制御する。
【0051】
また、符号量制御器31及び32は、端子3を介して切替え信号SEが供給されると、後述のように当該切替え信号SEによる切替え時刻でのVBVバッファ内データ停滞時間を制御し、その時刻でデータを出力しなくても、後の復号時に連続した再生を可能とするように符号量を制御する。
【0052】
ストリーム切替え器8は、切替えタイミング信号発生器7からの切替えタイミング信号に基づき、多重化器41から供給されたトランスポートストリームと、多重化器42から供給されたトランスポートストリームとを切り替え、これらを最終的に生成したトランスポートストリームとして出力端子9を介して出力する。
【0053】
なお、多重化器41及び42、ストリーム切替え器8は、バッファにデータを記憶する処理以外の処理の遅延時間はそれぞれ一定となっている。
【0054】
ここで、図2を用いて、切替え点付近での各符号化器のバッファ(VBVバッファ)のデータ蓄積量の遷移(VBVバッファのシミュレーション)について説明する。
【0055】
この図2に示す遷移図は、横軸が時間(右へ向かうに従って時間が経過する軸)、縦軸が符号化器におけるVBVバッファのデータ蓄積量(上へ向かうに従ってバッファデータ蓄積量が増加する軸)となされており、符号化器による符号化データ(PES)が1アクセスユニット(AU)毎に瞬間的に発生されてVBVバッファに蓄積されることでデータ蓄積量が瞬時に増加し、一方、一定のビットレート(CBR)で当該VBVバッファから符号化データ(PES)が読み出されることで右下がりの傾き(傾きはレートに相当する)が一定となるような、データ蓄積量の遷移を表している。
【0056】
当該実施の形態では、この図2に示すように、切替え点付近では、VBVバッファからPESを出力しない(PES無送出期間とする)ようになっている。このため、切替え点付近のPES無送出期間では、当該VBVバッファ内にはその時点での符号量相当分のデータが蓄積されたままとなる。
【0057】
また、例えばビデオ信号を符号化したPES(以下、ビデオPES(A)とする。)と、同じくビデオ信号を符号化したPES(以下、ビデオPES(B)とする。)とを繋ぐようにした場合における多重化器のVバッファのデータ蓄積量の遷移(VBVバッファのシミュレーション)は、図3に示すようになる。
【0058】
この図3の遷移図は、横軸が時間(右へ向かうに従って時間が経過する軸)、縦軸が多重化器におけるVBVバッファのデータ蓄積量(上へ向かうに従ってデータ蓄積量が増加する軸)となされており、符号化器から符号化データ(PES)がコンスタントビットレート(CBR)で供給されることにより右上がりの傾き(傾きはレートに相当する)が一定となるようにデータ蓄積量が増加し、一方、当該VBVバッファからは1アクセスユニット(AU)毎に瞬間的にデータが読み出されて瞬間的に減少するようなデータ蓄積量の遷移を表している。
【0059】
なお、図3(a)は、ビデオPES(A)に対応するバッファ(ビデオ(A)VBV)のデータ蓄積量の遷移を示し、図3(b)は、ビデオPES(B)に対応するバッファ(ビデオ(B)VBV)のデータ蓄積量の遷移を示している。この図3からわかるように、切り替えを行う場合には、VBVバッファ内に蓄積されているデータを引き継ぐことになる。
【0060】
このように、切替点付近では当該バッファ内のデータを引き継ぐために、VBVバッファの充足量を考慮する必要がある。すなわち、当該実施の形態では、多重化器における多重化の際にもVBVバッファの充足量に基づく符号量制御を行うようにしている。
【0061】
具体的には、図3中の切替え点付近において、ビデオ(A)VBVのデータ蓄積量(VBVサイズ)とビデオ(B)VBVのデータ蓄積量(VBVサイズ)を見て、それらVBVサイズが適当なサイズとなる点SWPのときに、ビデオPES(A)からビデオPES(B)に切り替え、当該点SWPからからビデオPES(B)のデータパケットが送出されるようなバッファ制御を行う。
【0062】
なお、図3の(a)中の点線は切替え後のビデオPES(B)を表している。ただし、例えばPID(Packet IDentifier)が変わるような場合には、そのようなVBVバッファの充足量を考慮する必要はなく、単に遅延(すなわちPTSとSTCの差)を合わせれば良い。
【0063】
この図3の例のように、VBVバッファへの入力VBVinよりも出力VBVoutの方が大きいときには(VBVout>VBVin)、PES無出力期間が生じ、このタイミングで切替えを行うことができる。なお、コンスタントビットレートの場合、VBVの入出力遅延(VBVディレイ)はDTSとSTCの差をビットレートで割った値と略々同じ値となる。
【0064】
次に、図4は、例えばビデオ信号を符号化したビデオPES(A)とオーディオ信号を符号化したオーディオPES(A)とを時分割多重したストリーム(A)から、ビデオ信号を符号化したビデオPES(B)とオーディオ信号を符号化したオーディオPES(B)とを時分割多重したストリーム(B)へ切り替えて出力ストリーム(A→B)を得る場合におけるストリーム切替え器8の切り替え時の様子を示した図である。
【0065】
この図4は、時分割多重した場合のそれぞれのPESに相当するデータパケットの位置をマクロ的に見たものである。また、各ビデオ信号及びオーディオ信号のPESは、MPEG符号化方式におけるVBVモデルによる規定により制御されてパケット化されたものである。各PESは、図3を用いて説明したように、切替え点付近でデータパケットを出力をしない制御(データパケット無送出期間を設ける)を行っているものとする。
【0066】
この図4から、PESの無出力期間を長くとることにより、トランスポートストリームにおいても、データパケット無出力期間が現れることがわかる。
【0067】
次に、図5及び図6は、図4と同様に、ストリーム(A)からストリーム(B)へ切り替えて出力ストリーム(A→B)を得る場合のストリームを、パケットの集合として見たときの様子を示した図である。
【0068】
このうち図5は、ストリーム(A)の切り替え直前のパケットの並びを示しており、図中のVEHは切替え点の直前のピクチャのピクチャヘッダを示し、AEHは切替え点の直前のオーディオアクセスユニットのヘッダをそれぞれ示している。
【0069】
また、図5中、TSVEHはVEHがあるビデオのパケットを、TSVEEはTSVEHから始まるピクチャの最後が含まれるパケットを、TSAEHはAEHを持ったオーディオのパケットを、TSAEEはAEHから始まるオーディオアクセスユニットの最後が含まれるパケットを、それぞれ示している。
【0070】
さらに、図5中、STCTSVEHはTSVEHを送出した時刻を、STCTSVEEはTSVEEを送出した時刻を、STCTSAEHはTSAEHを送出した時刻を、STCTSAEEはTSAEEを送出した時刻を示している。
【0071】
一方、図6は、ストリーム(B)の切り替え直後のパケットの並びを示しており、図中、VSHは切替え点の直後のMPEGビデオ符号化方式におけるsequence_header_codeがついているピクチャのピクチャヘッダを、ASHは切替え点の直後のオーディオアクセスユニットのヘッダを、TSVSHはVSHがあるビデオのトランスポートストリーム(TS)を、TSASHはASHを持ったオーディオのTSを、STCTSVSHはTSVSHの出力した時刻を、STCTSASHはTSASHの出力した時刻を、それぞれ示している。
【0072】
この図5及び図6から、STCTSVEEとTSCTSAEEがTSCTSVSHとTSCTSASHよりも前の時刻であるとき、すなわち下記の式の関係を全て満たすときは、データパケットが出力しない期間が存在することがわかる。
【0073】
STCTSVEE < STCTSVSH
STCTSVEE < STCTSASH
STCTSAEE < STCTSASH
STCTSAEE < STCTSVSH
ここで、Min(a,b)をaとbのうち、小さい値をとる関数とし、Max(a,b)をaとbのうち、大きい値をとる関数とすると、データパケットを出力しない期間は次式で与えられる。
【0074】
Min(STCTSVSH ,STCTSASH)− Max(STCTSVEE,STCTSAEE)
次に、図7に、当該実施の形態における符号多重化遅延モデルを示す。なお、図7の図中時間TINからT1まではあるアクセスユニットのデータ順序入れ替えに要する時間であり、また図中時間TINからT2までのdelayencは符号化処理に要する符号化遅延である。また、図7の図中時間T2からT3までのdelaybufはバッファ遅延を示し、図中T3からTOUTまでのdelaymuxは多重化遅延を示している。
【0075】
この図7において、delayencとdelaymuxは固定値であり、delaybufはバッファに蓄積する時間で決定する。これにより、バッファに蓄積する時間、すなわちdelaybufを切替え点に合わせて制御することで、切替え点を決定することができることがわかる。
【0076】
以上の説明から明らかなように、当該実施の形態のストリーム生成装置は、VBVモデルにより符号化を行うMPEGビデオ符号化、AAC(Advanced AudioCoder)、データ符号化において、各符号化器の同期と、発生符号量制御を符号化器のみならず多重化器でも行うことにより、ストリームの切替え点でのバッファの蓄積量を決定し、符号化したデータ列のトランスポートストリーム化の際に、全てのデータパケットが出力されない(ヌルパケットのみ出力される)期間を設け、且つ、その期間は符号化器での符号化単位であるアクセスユニットの境となるようにし、その期間をストリーム切替え点とすることにより、ストリームの切り替えをシームレスにかつ容易に実現することができる。
【0077】
最後に、上述の実施の形態の説明は本発明の一例である。このため、本発明は、上述の実施の形態に限定されることはなく、該実施の形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば種々の変更が可能であることは勿論である。
【0078】
【発明の効果】
請求項1記載の本発明に係るストリーム生成方法は、複数の入力データをそれぞれ符号化して各入力データ毎に対応する複数のデータパケットを生成する際、及び、それら複数のデータパケットから多重化ストリームを生成する際に、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、当該期間で少なくとも2つの多重化ストリームの切り替えを行うことにより、シームレスなストリーム切替えを容易に実現することができる。すなわち、時間的に連続して再生可能なシームレスなトランスポートストリームの生成を容易に実現可能とすることができる。
【0079】
請求項2記載の本発明に係るストリーム生成方法は、出力符号量を制御する際に、全てのデータパケットを出力しない期間を設け、且つ、当該期間を符号化の際の符号化単位の境界となるよう出力符号量を制御し、当該期間で前記多重化ストリームの切り替えを行うことにより、各符号化単位(アクセスユニット)やストリーム切替え前後の符号化レートが違う場合でも、シームレスなストリーム切替えを容易に実現することができる。
【0080】
請求項3記載の本発明に係るストリーム生成装置は、複数の入力データをそれぞれ符号化して各入力データ毎に対応する複数のデータパケットを生成する符号化手段と、符号化により得られた複数のデータパケットを多重化して多重化ストリームを生成する多重化手段と、符号化及び多重化による出力符号量を制御する符号量制御手段と、多重化ストリームを切り替えるストリーム切替え手段とを有し、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、当該期間で前記多重化ストリームの切り替えを行うことにより、シームレスなストリーム切替えを容易に実現することができる。すなわち、時間的に連続して再生可能なシームレスなトランスポートストリームの生成を容易に実現可能とすることができる。
【0081】
請求項4記載の本発明に係るストリーム生成装置は、符号量制御手段において、全てのデータパケットを出力しない期間を設け、且つ、当該期間を前記符号化の際の符号化単位の境界となるよう出力符号量を制御し、ストリーム切替え手段において、当該期間で前記多重化ストリームの切り替えを行うことにより、各符号化単位(アクセスユニット)やストリーム切替え前後の符号化レートが違う場合でも、シームレスなストリーム切替えを容易に実現することができる。
【図面の簡単な説明】
【図1】本発明に係るストリーム生成方法及び装置を適用した実施の形態となるストリーム生成装置のブロック図である。
【図2】ストリーム切替え点付近での各符号化器のバッファ内のデータ蓄積量の遷移を説明するための図である。
【図3】2つのビデオPES(A)とビデオPES(B)とを繋ぐようにした場合のVBVバッファのデータ蓄積量(充足量)の遷移を示す図である。
【図4】ストリーム(A)からストリーム(B)へ切り替えて出力ストリーム(A→B)を得る場合の様子を示す図である。
【図5】ストリーム(A)からストリーム(B)へ切り替えて出力ストリーム(A→B)を得る場合において、ストリーム(A)の切り替え直前のパケットの並びを示す図である。
【図6】ストリーム(A)からストリーム(B)へ切り替えて出力ストリーム(A→B)を得る場合において、ストリーム(B)への切り替え直後のパケットの並びを示す図である。
【図7】前記実施の形態における符号多重化遅延モデルを示す図である。
【図8】従来のストリーム生成装置のブロック図である。
【符号の説明】
1A,1B,2A,2B…入力信号、11A,11B,12A,12B…ストリーム入力端子、3…切替え信号入力端子、4…時刻設定信号入力端子、5A,5B…同期信号入力端子、6…STC設定器、7…切替えタイミング発生器、8…ストリーム切替え器、21A,21B,22A,22B…符号化器、31,32…符号量制御器、41,42…多重化器
Claims (4)
- 複数の入力データをそれぞれ符号化して各入力データ毎に対応する複数のデータパケットを生成するステップと、
前記複数のデータパケットを多重化して多重化ストリームを生成するステップと、
前記符号化及び多重化による出力符号量を制御するステップと、
少なくとも2つの多重化ストリームを切り替えるステップとを有し、
前記出力符号量を制御するステップでは、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、
前記多重化ストリームを切り替えるステップでは、当該期間で前記多重化ストリームの切り替えを行う
ことを特徴とするストリーム生成方法。 - 前記出力符号量を制御するステップでは、全てのデータパケットを出力しない期間を設け、且つ、当該期間を前記符号化の際の符号化単位の境界となるよう出力符号量を制御し、
前記多重化ストリームを切り替えるステップでは、当該期間で前記多重化ストリームの切り替えを行うことを特徴とする請求項1記載のストリーム生成方法。 - 複数の入力データをそれぞれ符号化して各入力データ毎に対応する複数のデータパケットを生成する符号化手段と、
前記複数のデータパケットを多重化して多重化ストリームを生成する多重化手段と、
前記符号化及び多重化による出力符号量を制御する符号量制御手段と、
少なくとも2つの多重化ストリームを切り替えるストリーム切替え手段とを有し、
前記符号量制御手段では、少なくとも1種類のデータパケットの送出しない期間を設けるよう出力符号量を制御し、
前記ストリーム切替え手段では、当該期間で前記多重化ストリームの切り替えを行う
ことを特徴とするストリーム生成装置。 - 前記符号量制御手段では、全てのデータパケットを出力しない期間を設け、且つ、当該期間を前記符号化の際の符号化単位の境界となるよう出力符号量を制御し、
前記ストリーム切替え手段では、当該期間で前記多重化ストリームの切り替えを行うことを特徴とする請求項3記載のストリーム生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000026777A JP3543716B2 (ja) | 2000-02-03 | 2000-02-03 | ストリーム生成方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000026777A JP3543716B2 (ja) | 2000-02-03 | 2000-02-03 | ストリーム生成方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001217793A JP2001217793A (ja) | 2001-08-10 |
JP3543716B2 true JP3543716B2 (ja) | 2004-07-21 |
Family
ID=18552466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000026777A Expired - Lifetime JP3543716B2 (ja) | 2000-02-03 | 2000-02-03 | ストリーム生成方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3543716B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003204482A (ja) * | 2001-10-22 | 2003-07-18 | Matsushita Electric Ind Co Ltd | 放送装置 |
-
2000
- 2000-02-03 JP JP2000026777A patent/JP3543716B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2001217793A (ja) | 2001-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7610605B2 (en) | Method and apparatus for conversion and distribution of data utilizing trick-play requests and meta-data information | |
CN102640511B (zh) | 视频信息再现方法和系统、以及视频信息内容 | |
US6542518B1 (en) | Transport stream generating device and method, and program transmission device | |
JP4481444B2 (ja) | 画像符号化装置 | |
US7379497B2 (en) | Encoded data outputting apparatus and method | |
US6584120B1 (en) | Data multiplexing apparatus and method | |
KR100482287B1 (ko) | 디지털 데이터 방송을 위한 동기화 스트림 데이터 삽입장치 및 그 방법 | |
JPH11205696A (ja) | 映像伝送装置及び映像伝送方法 | |
CN101106697A (zh) | 数据传输系统、接收装置和方法、以及发送装置和方法 | |
US8755413B2 (en) | Method and system for dynamically allocating video multiplexing buffer based on queuing theory | |
JPH11215083A (ja) | ディジタル信号多重化装置及び方法、ディジタル信号伝送装置及び方法、ディジタル信号記録装置及び方法、並びに、記録媒体 | |
US8837599B2 (en) | System, method and apparatus for clean channel change | |
KR20060065436A (ko) | 디지털 멀티미디어 방송 수신 장치에서의 오디오 및 비디오동기화 방법 및 장치 | |
JP3543716B2 (ja) | ストリーム生成方法及び装置 | |
KR100864009B1 (ko) | 오디오/비디오 동기화 방법 | |
US7269839B2 (en) | Data distribution apparatus and method, and data distribution system | |
JP4016215B2 (ja) | ディジタル信号符号化方法および装置、並びにディジタル信号伝送方法および装置 | |
JPH11112947A (ja) | データ多重化装置およびデータ多重化方法、データ処理装置およびデータ処理方法、並びに伝送媒体 | |
CN111988641B (zh) | 传输流复用音视频时间同步方法 | |
JP4168527B2 (ja) | データ多重化装置及びデータ多重化方法 | |
JP2002171529A (ja) | 映像符号化装置及び方法、記録媒体、並びに復号化装置 | |
JP2000049726A (ja) | 多重化装置及び方法 | |
JP3782006B2 (ja) | 放送データ伝送システム、放送データ伝送方法及びデータ変換装置 | |
JPH11340936A (ja) | データ多重化方法及び装置 | |
JPH099215A (ja) | データ多重方法、データ伝送方法、及び多重データ復号方法、多重データ復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040113 |
|
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: 20040316 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040329 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3543716 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: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120416 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120416 Year of fee payment: 8 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120416 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130416 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140416 Year of fee payment: 10 |
|
EXPY | Cancellation because of completion of term |