JP4835651B2 - 多重化制御装置および多重化制御方法 - Google Patents

多重化制御装置および多重化制御方法 Download PDF

Info

Publication number
JP4835651B2
JP4835651B2 JP2008150321A JP2008150321A JP4835651B2 JP 4835651 B2 JP4835651 B2 JP 4835651B2 JP 2008150321 A JP2008150321 A JP 2008150321A JP 2008150321 A JP2008150321 A JP 2008150321A JP 4835651 B2 JP4835651 B2 JP 4835651B2
Authority
JP
Japan
Prior art keywords
data
multiplexing
attribute data
video
time
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.)
Active
Application number
JP2008150321A
Other languages
English (en)
Other versions
JP2009296501A (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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2008150321A priority Critical patent/JP4835651B2/ja
Publication of JP2009296501A publication Critical patent/JP2009296501A/ja
Application granted granted Critical
Publication of JP4835651B2 publication Critical patent/JP4835651B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、映像や音声等の符号化データと、その符号化データの属性データとを多重化する多重化制御装置および多重化制御方法に関する。
映像や音声等の符号化データとその属性データとを多重化する際、属性データは符号化データの再生にとって重要なデータであるので、符号化データよりも属性データを優先的に多重化するようにした多重化制御装置がある(例えば、特許文献1参照)。
特開2001−144711号公報
しかし、上述の多重化制御装置では、単に、符号化データよりも属性データを優先的に多重化することしか開示されていないので、属性データを確実に符号化できなかったり、受信側において属性データを取りこぼすおそれがある、という課題があった。
そこで、本発明は、符号化データの属性データを確実に多重化して、受信側における属性データの取りこぼしを低減することができる多重化制御装置および多重化制御方法を提供することを目的とする。
上記目的を達成するため、本発明の多重化制御装置は、複数のフレームからなるビデオ符号化データと、前記ビデオ符号化データのコーディングタイプ、PTSの時刻情報、DTSの時刻情報、フレームレート、及び表示情報のうちの少なくとも一つを含む属性データとを多重化する多重化制御装置であって、前記ビデオ符号化データの符号化レートに基づいて、符号化データ仮想バッファの充足量を求める符号化データ充足量演算部と、前記ビデオ符号化データのフレームレートに対する前記属性データの符号化レートの倍率としてN(Nは2以上の自然数)倍を設定する属性データ符号化レート倍率設定部と、前記属性データの符号化レートの倍率に基づいて、属性データ仮想バッファの充足量を演算する属性データ充足量演算部と、前記ビデオ符号化データの多重化時刻と、前記属性データの符号化レートの倍率とに基づいて、前記ビデオ符号化データの各フレームの開始時点以降の(N−1)/(2N)の期間および終了時点以前の(N−1)/(2N)の期間を除く前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるように、前記属性データの多重化時刻を設定する属性データ多重化時刻設定部と、前記ビデオ符号化データの多重化時刻と、前記属性データの多重化時刻と、前記符号化データ仮想バッファの充足量と、前記属性データ仮想バッファの充足量とに基づいて、前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるよう、前記ビデオ符号化データと前記属性データとの多重化を制御する多重化制御部と、を有する。
また、本発明の多重化制御方法は、複数のフレームからなるビデオ符号化データと、前記ビデオ符号化データのコーディングタイプ、PTSの時刻情報、DTSの時刻情報、フレームレート、及び表示情報のうちの少なくとも一つを属性データとを多重化する多重化制御方法であって、前記ビデオ符号化データの符号化レートに基づいて、符号化データ仮想バッファの充足量を求めるステップと、前記ビデオ符号化データのフレームレートに対する前記属性データの符号化レートの倍率としてN(Nは2以上の自然数)倍を設定するステップと、前記属性データの符号化レートの倍率に基づいて、属性データ仮想バッファの充足量を演算するステップと、前記ビデオ符号化データの多重化時刻と、前記属性データの符号化レートの倍率とに基づいて、前記ビデオ符号化データの各フレームの開始時点以降の(N−1)/(2N)の期間および終了時点以前の(N−1)/(2N)の期間を除く前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるように、前記属性データの多重化時刻を設定するステップと、前記ビデオ符号化データの多重化時刻と、前記属性データの多重化時刻と、前記符号化データ仮想バッファの充足量と、前記属性データ仮想バッファの充足量とに基づいて、前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるよう、前記ビデオ符号化データと前記属性データとの多重化を制御するステップと、を有する。
本発明では、ビデオ符号化データの符号化レートに対する前記属性データの符号化レートの倍率を設定し、その倍率に基づいて、属性データ仮想バッファの充足量を演算し、ビデオ符号化データの多重化時刻と属性データの符号化レートの倍率とに基づいて、属性データの多重化時刻を設定し、ビデオ符号化データの多重化時刻と、属性データの多重化時刻と、符号化データ仮想バッファの充足量と、属性データ仮想バッファの充足量とに基づいて、ビデオ符号化データの各フレームの前後除外期間に属性データが多重化されるよう、ビデオ符号化データと属性データとの多重化を制御するので、ビデオ符号化データの属性データを確実に多重化できる共に、受信側における属性データの取りこぼしを低減することができる。
実施形態1.
以下、本発明の実施形態1として、ビデオ符号化データと、ビデオ符号化データの符号化属性を記述した属性データを多重化する多重化装置を一例に説明する。本実施形態1では、ビデオ符号化データに含まれるビデオ符号化のデコード時刻(DTS=Decoding Time Stamp)やプレゼンテーション時刻(PTS=Presentation Time Stamp)の時刻情報を基準にしてビデオ属性データの多重化時刻を管理する方法について説明する。
図1は、本発明に係る実施形態1の多重化装置の全体構成図を示すブロック図である。
図1において、多重化装置は、符号化制御部101、ヘッダ生成部102、ビデオ符号化部103、ビデオ属性データ生成部104、音声符号化部105、音声属性データ生成部106、PSIデータ生成部107、ヘッダデータバッファ108、ビデオ符号化データバッファ109、ビデオ属性データバッファ110、音声符号化データバッファ111、音声属性データバッファ112、PSIデータバッファ113、本発明の多重化制御装置に相当する多重化制御装置114、多重化部115およびストリームバッファ116を有している。
次に、図1に示す多重化装置の動作を説明する。
多重化制御装置114は、MPEGシステム規格およびそれに類するシステム規格に適合するトランスポートストリーム(TS)を生成するために多重化装置の全体制御を行っており、まずは、記録するメディアの形態、画像や音声の品質、記録残量時間、記録モード、符号化レート等の条件を勘案して、本装置の記録レートを設定する。次に、本装置の記録レートを基にして多重化ストリームを構成するビデオや音声の符号化データ、映像データや音声データの属性データ、PSI(Program Specific Information)など、符号化ストリームを構成するすべてのデータ種別の記録レートを決定する。
符号化制御部101は、ビデオ符号化部103や音声符号化部105の制御、符号化されたビデオおよび音声データの属性を記載する属性データ生成部104,106の制御、PSIデータ生成部107の制御を行う。
ビデオ符号部103は、ビデオフレーム(29.97Hz)毎にビデオエレメンタリーの符号化が行われるように制御される。また生成されたビデオ符号化データはリングバッファ形式のビデオ符号化データバッファ109に順次書き込まれる。ビデオ符号化部103へは符号化される前のYUV形式のビデオ画像が入力されてMPEG符号化方式(MPEG2、H.264など)で圧縮される。
音声符号化部105も同様に音声フレーム毎に音声エレメンタリーの符号化が行われ、出力される音声符号化データは音声符号化データバッファ112に書き込まれる。音声符号化部105へはマイク音声やライン入力音声をA/D変換したPCMデジタルデータが入力され、MPEG符号化方式(MP2,MP3)で音声圧縮される。
本装置では、ビデオ符号化のコーディングタイプやPTS/DTSの時刻情報、フレームレートや画像サイズなどの表示情報を記載したビデオ属性データをビデオ符号化データと共に多重化することで、ストリーム再生時にランダムアクセスを効率的に行ったり、ビデオ編集において属性の異なるストリームを連結して編集する場合に属性の変化点が検索しやすくなるので効率的な編集作業が可能となるなどの理由により、ビデオ属性を示すビデオ属性データをトランスポートストリーム(TS)に多重化する。ビデオ属性データ生成部104は、このようなビデオ符号化に関する属性データをビデオ符号化部103や符号化制御部101から収集して属性データのパケットデータに構築してビデオ属性データバッファ110に格納する。
音声の属性データには、PTSなどの時刻情報、サンプリング周期、符号化ビットレートなどの情報がある。音声属性データ生成部106は、これらの情報を収集して音声属性データバッファ112に書き込む。
PSIデータ生成部107は、トランスポートストリーム(TS)に必須のPAT(Program Associatin Table)、PMT(Program MAP Table)、時刻情報であるPCR(Program Clock Reference)パケットを生成してPSIデータバッファ113に書き込む。
ヘッダ生成部102は、多重化のソースデータとなるビデオや音声の符号化データを分割して188バイトのTSパケット(TS)を生成する場合、TSパケットの先頭に付加するTSヘッダを生成してヘッダデータバッファ108に書きこむ。
多重化部115は、後述する多重化制御部114から多重化が指示されたビデオや音声の符号化データおよび属性データをDMA転送等により多重化するため、送信元アドレスや送信先アドレスの管理やTSヘッダを付加するための制御を行う。また、多重化部115は、パケッタイズされた符号化データおよび属性データの先頭にTSヘッダを付加してTSパケットを生成し、ストリームバッファ116へ順次書き込む。
すると、ストリームバッファ116に蓄積されたTSパケットデータは、メディアI/F(図示せず)やファイルシステムマネージャ(図示せず)を経由して、ファイルとして記録媒体に記録されたり、通信I/F(図示せず)を介して多重化ビットストリームとして本装置外へ送信または伝送される。
図2は、図1に示す本実施形態1の多重化制御装置114の詳細な構成を示すブロック図である。
図2において、多重化制御装置114は、符号化データレート算出部201、属性データ多重化レート倍率設定部202、符号化データ仮想バッファ増加量演算部203、属性データ仮想バッファ増加量演算部204、システム時刻生成部205、符号化データ充足量演算部206、属性データ充足量演算部207、符号化データ読取部208、多重化制御部209、符号化データ多重化時刻算出部210、時刻および属性情報記憶部211、属性データ多重化時刻算出部212、VBVバッファモデル管理部213を有する。
符号化データレート算出部201は、ユーザやアプリケーションが指定する記録モード、例えば、高画質記録モード、長時間記録モードなどから装置の記録レートである、TSストリームの記録レートを決定し、この記録レートを基準にしてビデオ符号化データ、音声符号化データ、PSIデータ、ビデオ属性データ、音声属性データ、PCRクロックデータなど多重化するすべてのデータの符号化レートを決定するものである。
符号化データ仮想バッファ増加量演算部203は、符号化データレート算出部201により設定されたビデオ符号化データの符号化レートを基に、符号化データを1TSパケット間隔に相当するシステムクロックの時間経過ごとに仮想バッファ(図示せず)へ蓄積していく符号化データの仮想バッファの増加量を算出するものである。
符号化データ充足量演算部206は、仮想バッファのバッファ占有量を管理し、1TPパケット相当のシステムクロック期間毎に仮想バッファ増加量演算部203で算出された増加量ずつ仮想バッファにおける充足量が増加していくが、その充足量がビデオ仮想バッファのサイズに達するとビデオ符号化データの多重化が実行されるとともに、仮想バッファのサイズの分だけ仮想バッファの占有量を減少させるよう制御するものである。
図3は、仮想バッファのバッファ占有量の遷移を例示する図である。
本実施形態1では、ビデオ符号化データを実際のメモリに記憶してメモリ占有量を求めるのではなく、図3に示すように、仮想的に想定する仮想バッファを用いてビデオ符号化データの1パケットの占有量を演算で求め、仮想バッファが満杯になったら、1パケットに相当するビデオ符号化データを多重化する、ということを繰り返し行う方式が仮想バッファ方式による多重化の特徴である。
属性データ多重化レート倍率設定部202は、ビデオ符号化データのフレームレートを基準にして、符号化データのフレームレートより高いレートでビデオ属性データの多重化時刻を発生するように、属性データの符号化レート(以下、属性符号化レート)の倍率を設定するものである。
属性データ仮想バッファ増加量演算部204は、1TPパケットに相当するシステムクロック期間毎に属性データ仮想バッファの増加量を算出するものである。
属性データ充足量演算部207は、属性データ仮想バッファのバッファ蓄積量の増減を管理するものである。
システム時刻生成部205は、システムクロックの増加や初期化を管理するものである。MPEGシステムでは、PCR(Program Clock Reference)と呼ばれるシステム時刻が定義されており、27MHzの精度でシステムクロックが増加していく。ビデオや音声の符号化データの時刻情報であるPTS(Presentation Time Stamp)やDTS(Decoding Time Stamp)は、このシステムクロックを90KHz精度に換算した時刻である。多重化する時刻の管理もこのシステムクロックを基準にして行われる。
なお、説明を簡単にするために、多重化制御装置114の詳細構成を示す図2には、ビデオ符号化データと、ビデオ属性データの多重化管理に必要な構成しか記載していないが、実際には音声符号化データ、音声属性データ、PSIデータ、PCRクロックデータの仮想バッファ増加量演算部および仮想バッファの充足量演算部が必要である。これらの演算部の処理内容はビデオ符号化データと同じなので説明は省略する。
多重化制御部209は、各々独立して動作するビデオ符号化データとその属性データ双方の仮想バッファの充足量演算部206,207の演算結果を収集して、仮想バッファが一杯になったデータを検出して、符号化データおよび属性データの多重化を行うように多重化部115に対し多重化指示を送るものである。
符号化データ読み取り部208は、ビデオや音声の符号化データを読み出して、PTSやDTSの時刻情報を取得し、時刻および属性情報記憶部211に記憶するものである。
符号化データ多重化時刻算出部210は、ビデオ符号化データの多重化時刻を、例えば、下記式(1)により求める。
ビデオ符号化データの多重化時刻(90KHzクロック単位)
=DTS(PTS)−(VBVバッファの占有量/符号化レート)×90000
…式(1)
ここでVBVバッファ(Video Buffering Verifier)とはMPEG2規格で規定するビデオ符号化データである。
VBVバッファはビデオ記録レートが決まると一定の増量で増加するが、ビデオのデコードを行う毎にVBVバッファから1ピクチャのデータ量が減少するようにモデル化されている。そのため、多重化制御装置114においてもVBVバッファの占有量をモデル化して管理する。これを行うのがVBVバッファモデル管理部213である。なお、Intra-PictureやPredictive-PictureはDTS時刻、Bi-directional-PictureはPTS時刻を使って多重化時刻を決定する。Bi-directional-PictureのようにDTS時刻を持たないパケットは、PTS=DTSとみなして処理する。上式(1)は、システムクロックが90KHzクロックでカウントした時間単位で表現している。
多重化制御部209は、仮想バッファの充足量に基づき、多重化すべきデータが設定された場合、上記式(1)で算出した符号化データの多重化時刻と、現在のシステム時刻とを比較し、多重化時刻が現在の時刻に到達していれば、多重化すべきデータの多重化を決定するものである。
ここで、属性データを多重化する時刻は、図4に示すように2通りのケースが想定される。なお、図4、図5では、符号化データおよびその属性データとして、ビデオ符号化データと、ビデオ属性データを一例にして説明している。
本実施形態1ではGOP(Group Of Picture)を構成するピクチャー数を15、Intra-Picture間隔を15、Intra-PictureまたはPredictive-Pictuteの間隔を3として説明するがこれに限定されるものではない。またIntra-PictureおよびPredictive-Pictureの属性を示す属性データのみを多重化する例として説明するがこれに限定されない。
図4は、属性データの多重化時刻が「ビデオ符号化データ<ビデオ属性データ」の場合、つまりビデオ符号化データの多重化を行う時刻よりビデオ属性データの多重化を行う時刻が遅い場合について示す説明図である。
この場合、符号化データ読み取り部208は、ビデオ符号化データバッファ109に格納されたビデオ符号化データからPTSやDTSの時刻情報を読み取り、例えば、そのDTS時刻情報から例えば3フレーム早い時刻に属性データの多重化を行うので、属性データの多重化時刻がビデオ符号化データの多重化時刻より十分遅い時刻であれば、ビデオ符号化データを多重化した時に符号化データ読み取り部208でDTS時刻情報およびビデオ符号化のコーディングタイプやフレームレートなどの属性情報を時刻およぼ属性情報記憶部211に蓄積しておくと、属性データの多重化時刻が発生する都度に時刻およぼ属性情報記憶部211にすでに蓄積された属性データを用いて、次に発生する属性データの多重化時刻を算出することができる。なお本実施形態1では属性データを多重化する時刻を(ビデオ符号化データのDTS−3フレーム)として説明しているがこれに限定されない。
符号化データ多重化時刻算出部210は、符号化データの多重化が実行される毎に呼び出され、次に多重化するビデオ符号化データのDTS時刻を符号化データ読み取り部208で取得して式(1)に従って符号化データの多重化時刻を算出し、符号化データの多重化時刻を多重化制御部209に設定するものである。
属性データ多重化時刻算出部212は、次に多重化する属性データが参照するビデオ符号化データのDTS時刻を用いて、以下の式(2)により、属性データの多重化時刻を決定し、多重化制御部209に時刻を設定するものである。
属性データの多重化時刻=(DTS−3フレーム)+1/4フレームの時刻
…式(2)
図5は、属性データの多重化時刻が「ビデオ符号化データ>ビデオ属性データ」の場合、つまりビデオ符号化データの多重化を行う時刻よりビデオ属性データの多重化を行う時刻が早い場合の説明図である。
この場合は、属性データの多重化時刻に属性データの属性を示すビデオ符号化データがまだ多重化されていないので、図4に示した方法(ビデオ符号化データ<属性データの場合)に従うと時刻および属性情報記憶部211に該当するPTS時刻情報が記憶されていない結果となる。よって、属性データ多重化時刻算出部212は、時刻情報記憶部211を検索しても該当するPTS情報が見つからないので、期待する時刻に属性データを多重化することはできない。
そこで、このような場合に備えてビデオ符号化データバッファ109は、常に4フレーム以上、ビデオ符号化データに蓄えるよう制御する。
そして、この場合、多重化部115は、記録開始時はビデオ符号化データバッファ109に4フレームのビデオ符号化データが蓄積された状態になってから多重化を開始する。多重化処理はビデオ符号化処理に比べて処理が簡単なので短い時間で多重化処理が完了する。そこで、ビデオ1フレームの多重化を完了しても、蓄積された残りのビデオの多重化は行なわず、ビデオの符号化が完了するまで待ち、ビデオ符号化データバッファ109に常に4フレームのビデオ符号化データが蓄積される状態を保つように制御する。多重化部115で多重化されたストリームはストリームバッファ116に転送するようにする。
ここで、多重化部115が記録を開始して最初に多重化するフレームは、符号化ストリームの最小のDTSを持つIntra−Pictureのビデオフレームである。このフレームは、DTSを持つフレームなので、属性データの多重化も必要である。そのため、先頭のIntra-Pictureの多重化設定を行うのと同時にビデオ属性の多重化の多重化設定もこのタイミングで実行する。属性データの多重化設定とは属性データのパケットをビデオ属性データバッファ110に設定することと、属性データの多重化時刻を算出し、多重化制御部209に多重化時刻を設定することである。
図6は、従来の多重化制御方法に従って属性データの多重化を行った場合の多重化時刻の発生時刻をプロットした一例を示している。
図6に示すように従来は3フレームに1回の割合で属性データを多重化する場合において、多重化すべきフレーム位置を特定していなかった。
一方、本実施形態では、仮想バッファによる多重化データのバッファ蓄積量を演算で求める場合、ビデオ1フレームに必ず2回の多重化時刻を発生させるために符号化レートを計算上ピッタリのレートではなく、それよりも若干大きめのレートにする。そうすることで1フレームに少なくとも2回は多重化の機会が与えられることになるが、若干レートが高いために多重化時刻が1フレーム期間の遅い時刻から早い時刻に多重化毎に移動する現象が発生する。
本実施形態においては、属性データ多重化時刻算出部212は、1フレームに2回の多重化機会を与えるようにし、ビデオフレームの多重化期間の開始時刻からフレーム期間の1/4までの時刻の多重化時刻は無効とし、フレーム期間の1/4以降の期間を有効と判断するように制御すると1フレーム期間の1/4〜3/4に、属性データの多重化時刻が少なくとも1回発生するようにしている。
ビデオ符号化データに記載されたDTS時刻からマイナス3フレームからマイナス2フレームの期間に属性データを多重化すると定めた場合に、従来の方法であれば一定周期でビデオフレームの一番先頭の時刻に近い時刻に多重化が発生する状態からビデオフレームの一番遅い時刻に多重化が発生する状態が出現し、規定した時間範囲から余裕がないケースが周期的に発生するため、従来の方法によって多重化されたTSストリームの属性データを受信したり再生する場合に、データの時間管理が厳しくなるためにデータの取りこぼしが発生したり、取りこぼしを無くすために処理速度の高速化が必要である。
これに対して、本実施形態の場合は、図7に示すように、符号化データ仮想バッファ増加量演算部203は符号化データの符号化レートに基づいて、符号化データ仮想バッファの増加量を求め、符号化データ充足量演算部206はその増加量に基づいて、符号化データ仮想バッファの充足量を演算する一方、属性データ符号化レート倍率設定部202は符号化データのフレームレートに対する属性データの符号化レートの倍率を設定し、属性データ仮想バッファ増加量演算部204はその倍率(図7の場合、2倍。)に基づいて、属性データ仮想バッファの増加量を求め、属性データ充足量演算部207はその増加量に基づいて、属性データ仮想バッファの充足量を演算し、多重化制御部209は、システム時刻に基づいて、符号化データ仮想バッファの充足量と、属性データ仮想バッファの充足量とが各仮想バッファの最大値に達すると、符号化データ多重化時刻算出部210からの符号化データの多重化時刻と、属性データ多重化時刻算出部212からの属性データの多重化時刻とに基づいて、符号化データの各フレームの前後除外期間に属性データが多重化されるよう、符号化データと属性データとの多重化を制御するので、1フレーム期間の1/4〜3/4に少なくとも1回の多重化時刻が発生するので、従来のような問題は発生しない良好な結果となる。
次に、本実施形態1の多重化の処理手順をフローチャートを用いて説明する。
図8は、本実施形態1の多重化の処理手順を示すフローチャートである。
まず、符号化データレート算出部201は、多重化を開始する前に各機能ブロックに対して初期設定を行うため、指定された記録モードからトランスポートストリーム(TS)の記録レートであるTSレートと、各符号化データの符号化レートを算出する(S801)。例えば、ピクチャ毎に発生符号量が異なるビデオ符号データ等の符号化データの場合、最大符号量が発生しても多重化が適切に行われるように各符号化データの最大レートを算出し、各符号化データの最大符号化レートの総和がTSレートを超えないように算出する。
次に、符号化データ仮想バッファ増加量演算部203および属性データ多重化レート倍率設定部202は、符号化データのフレームレートから仮想バッファ増加量を算出する(S802)。つまり、仮想バッファは、TSパケットを送信する/送信しないを決定するための仮想的なバッファであり、TSパケット送信間隔で一定量のバッファ増加を行い、バッファが一杯になるとTSパケットの送信を決定する。符号化データのレートに比例して仮想バッファ増加量を決定する。
仮想バッファのバッファ増加量は次式(3)で算出する。
仮想バッファの増加量=仮想バッファの最大値×TSパケットの送信周期/符号化データのパケット送信周期・・・式(3)
例えば、TSパケット10個に1回の割合で符号化データを多重化する場合は、バッファ増加量は仮想バッファの最大値の1/10の値に設定する。
次に、図1に示す多重化部115は、ヘッダバッファ108、ビデオ符号化データバッファ109、音声符号化データバッファ111の各領域のアドレスの初期化等の多重化開始設定を行う(S803)。また、多重化ストリームを出力するストリームバッファ116のアドレスの初期化や、パケットの全部あるいは一部が毎回同じデータを多重化するPSIデータバッファ113やビデオ属性データバッファ110、音声属性データバッファ112の初期化を行う。
次に、図2に示す多重化制御装置114の符号化データ読み取り部208は、多重化するビデオ符号化データが多重化対象に設定されているか確認する(ステップS804)。ここで、多重化対象に設定されている状態とは、多重化するデータがビデオ符号化データバッファ109に記憶されていると共に、符号化データ多重化時刻算出部210にて、多重化時刻も算出されて設定されて、多重化制御部209に設定されている状態であることをいう。符号化データ読み取り部208は、1ピクチャ毎に多重化対象を切り替えていく。音声の場合は音声フレーム毎に多重化対象を切り替えて設定する。
符号化データ読み取り部208は、ビデオ符号化データが多重化対象に設定されていないと判断した場合のみ(ステップS804“設定されていない")、ビデオ符号化データを読み出すための領域設定を行う(S805)。
次に、符号化データ多重化時刻算出部210は、符号化データ読み取り部208が読み取った多重化すべきビデオ符号化データに記載されているDTS(Decoding Time Stamp)時刻からビデオ符号化データの多重化時刻(以下、ビデオ多重化時刻という。)を算出する(S806)。ここで、符号化データ多重化時刻算出部210は、ビデオ多重化時刻を、VBVバッファモデル管理部213が算出するVBVバッファのモデルに従ったのビデオ符号化データバッファのデータ占有量から、先に示した(1)を用いて算出する。
ビデオ多重化時刻=ビデオのDTS − ビデオのVBVバッファ占有量/ビデオ符号化レート・・・式(3)
式(3)によれば、VBVバッファの占有量が大きいほど、ビデオ多重化時刻の値が小さな時刻を示すのでより早い時刻に多重化を開始することになる。
一方、時刻および属性情報記憶部211は、符号化データ読み取り部208が読み取ったビデオ符号化データより、ビデオ符号化データのピクチャタイプ、フレームレート、DTS/PTS時刻情報等を記憶する(S807)。ただし、本実施形態では、ビデオ属性データの多重化はIntra-PcitureとPredictive-Pictureに限定して多重化するので時刻および属性情報記憶部211は、Intra-PcitureとPredictive-PictureのDTS時刻や属性データのみを記憶する。
この時、属性データの多重化時刻設定がされているか判断を行い(S808)、設定されていない場合(S808の”設定なし”)は、属性データ多重化時刻算出部212は、時刻および属性情報記憶部211により記憶されたビデオ符号化データのピクチャタイプと、DTS/PTS情報とから、先に示した式(2)により、属性データの多重化時刻を決定して多重化制御部209に設定する(S809)。
属性データの多重化時刻=DTS時刻−3フレーム+1/4フレーム・・・(式4)
式(4)によれば、フレームの中央に属性データが多重化されるように多重化時刻は算出される。
次に符号化データ充足量演算部206と、属性データ充足量演算部207は、それぞれの仮想バッファの占有量に、S802にて算出した仮想バッファ増加量を加算して更新する(S810)。
多重化制御部209は、全仮想バッファのデータ占有量を調べ、仮想バッファ量が100%を超えている仮想バッファがあるか否かを判断し、多重化するデータを決定する(S811)。ここで、多重化制御部209は、仮想バッファ量が100%を超えている符号化データが1つである場合は、その符号化データの多重化機会を与えることに決定する
なお、複数の符号化データが同時にそれぞれの仮想バッファの100%を越えている場合、多重化制御部209は、例えば、仮想バッファの100%を越えている複数の符号化データの優先度等に従って、最適な1つの符号化データに多重化機会を与えるようにする。ここで、符号化データの優先度とは、例えば、多重化時刻の間隔を正確に制御する必要のあるPSIやPCRのパケットは、最も優先順位が高い。次に、属性データパケットも時間に対する制限が高いので優先順位は高く設定される。これに対して、多重化時刻の一番多いビデオパケットは、最も優先順位が低い。
そして、多重化制御部209は、仮想バッファのデータ占有量が100%を超えている仮想バッファがあれば、多重化データが存在すると判断して(S811 "占有量を超えている”)、以下のようにして多重化を実行する(S812〜S816)。
まず仮想バッファの占有量を超えた多重化要素において、システム時刻生成部205からのシステム時刻に基づき、設定されている多重化時刻と比較を行う。設定された多重化時刻がシステム時刻より小さい場合は多重化時刻が到来したと判断し、多重化を行うと判断する (S812の”時刻に達している”)。
多重化部115は、多重化制御部209からの多重化指示に従い、多重化すべき符号化データまたは属性データをビデオ符号化データバッファ109や、属性データバッファ110、音声符号化データバッファ111、音声属性データバッファ112から読み出しTSパケット化して、1TSパケットだけ多重化し、多重化したTSパケットをストリームバッファ116に出力する。このため、多重化されたデータのアドレスも増加するので、ストリームバッファ116に出力されたTSパケットのアドレスも1TSのデータ量だけ増加することになる(S813)。
多重化を行ったので仮想バッファの占有量から仮想バッファのサイズ値を減算して仮想バッファの占有量をゼロにリセットする(S814)。
この後続いて多重化制御部209は、まず、その多重化データが属性データであるか、あるいは符号化データであるかを判断する(S815)。
多重化したデータが属性データである場合(S815“属性データである”)、多重化制御部209は、属性データ多重化時刻算出部215によって設定された多重化時刻を無効化する。これは、属性データは、1TSパケットで完結するので、続けて多重化されることはないので、その多重化時刻を一度無効化することにする。さらにS809で説明したのと同じ手順で次に多重化する属性データの多重化時刻を再度設定する(S816)。
なお、属性データ多重化時刻算出部212は、この時刻時点で記憶された符号化データのPTS/DTS時刻を調べ、次に多重化するビデオパケットがまだ記憶されていないと判断した場合は、多重化時刻の算出はできないので多重化時刻は無効化したままでよい。
一方、S812で”時刻に達していない”と判断した場合はその要素が属性データであるかを判断する(S917)。属性データである場合は仮想バッファから仮想バッファのサイズと同じ値を減じて仮想バッファをゼロにクリアする(S818)。
そして、システム時刻生成部205は、システム時刻を1TSパケット分更新する(S819)。
そして、多重化制御部114は、多重化を終了するか否かを判断し(S820)、多重化を続ける場合は(S820“終了しない”)、S804の処理に戻る一方、多重化を終了する場合は(S820“終了する”)、多重化終了の設定を行う(S821)。つまり、多重化制御部114は、すべての多重化時刻を無効化し、ビデオ符号化や多重化を停止する。
従って、本実施形態1によれば、符号化データ仮想バッファ増加量演算部203は符号化データの符号化レートに基づいて、符号化データ仮想バッファの増加量を求め、符号化データ充足量演算部206はその増加量に基づいて、符号化データ仮想バッファの充足量を演算する一方、属性データ符号化レート倍率設定部202は符号化データのフレームレートに対する属性データの符号化レートの倍率を設定し、属性データ仮想バッファ増加量演算部204はその倍率に基づいて、属性データ仮想バッファの増加量を求め、属性データ充足量演算部207はその増加量に基づいて、属性データ仮想バッファの充足量を演算し、多重化制御部209は、システム時刻に基づいて、符号化データ仮想バッファの充足量と、属性データ仮想バッファの充足量とが各仮想バッファの最大値に達すると、符号化データ多重化時刻算出部210からの符号化データの多重化時刻と、属性データ多重化時刻算出部212からの属性データの多重化時刻とに基づいて、符号化データの各フレームの前後除外期間に属性データが多重化されるよう、符号化データと属性データとの多重化を制御する。
このため、本実施形態1の多重化制御装置によれば、ビデオや音声の符号化データの符号化属性を記載した属性データを多重化する際に、属性データの多重化時刻が各フレーム期間の中央に位置するように多重化されるので、各フレームの多重化期間の開始時刻ないし終了時刻に対して十分な余裕を持って多重化することができる。その結果、多重化されたトランスポートストリーム(TS)を受信して再生する受信側において属性データの取りこぼしや符号化データと属性データの関連付けを誤ったりすることが発生しない安定した多重化装置を提供できる。
本実施形態1ではビデオ属性データの多重化機会をビデオ符号化フレームのN=2倍の例で説明した。N=2の場合はビデオフレームの1/4から3/4の期間に属性データの符号化を有効にすることができる。前半の無効化期間および後半の無効化期間は1/4である。これを図9(1)に示す。
ビデオ属性データの多重化機会をビデオ符号化フレームのN=3倍に設定すると図9(2)のように1/3から2/3の期間に属性データの符号化を有効にすることができる。
前半の無効化期間および後半の無効化期間は1/3である。
さらにビデオ属性データの多重化機会をビデオ符号化フレームのN=4倍に設定すると図9(3)のように3/8から6/8の期間に属性データの符号化を有効にすることができる。前半の無効化期間および後半の無効化期間は3/8である。
これらをまとめると、符号化データのフレームレートに対して属性データの符号化レートの倍率N(Nは2以上の自然数)とすると、有効期間はフレーム中央の1/Nとなる。また無効期間のフレーム前半部あるいはフレーム後半部の期間は(N−1)/(2N)として一般化して表現できる。
本発明は、MPEG等の高能率符号化を用いて符号化されたビデオや音声データの多重化を行ってトランスポートストリーム(TS)を生成してファイル蓄積したりネットワーク経由で送信したりするデジタルレコーダ機器やデジタルビデオカメラ等の多重化装置および多重化制御方法に適用できる。
本発明に係る多重化制御装置と、多重化装置の全体構成例を示す図である。 実施形態1の多重化制御装置114の詳細構成例を示すブロック図である。 実施形態1の仮想バッファのバッファ占有量を示す図である。 ビデオ符号化データ<ビデオ属性データの場合の属性データの多重化時刻の例を示す図である。 ビデオ属性データ<ビデオ符号化データの場合の属性データの多重化時刻の例を示す図である。 従来の属性データの多重化時刻の例を示す図である。 実施形態1の属性データの多重化時刻の例を示す図である。 実施形態1における多重化制御の手順を示すフローチャートである。 実施形態1の符号化レートN倍の有効無効期間を示す図である。
符号の説明
100 多重化装置
101 符号化装置
102 ヘッダー生成部
103 ビデオ符号化部
104 ビデオ属性データ生成部
105 音声符号化部
106 音声属性データ生成部
107 PSIデータ生成部
108 ヘッダーデータバッファ
109 ビデオ符号化データバッファ
110 ビデオ属性データバッファ
111 音声符号化データバッファ
112 音声属性データバッファ
113 PSIデータバッファ
114 多重化制御装置
115 多重化部
116 ストリームバッファ
201 符号化レート算出部
202 属性データ多重化レート倍率設定部
203 符号化データ仮想バッファ増加量演算部
204、属性データ仮想バッファ増加量演算部
205 システム時刻生成部
206 符号化データ充足量演算部
207 属性データ充足量演算部
208 符号化データ読取部
209、多重化制御部
210 符号化データ多重化時刻算出部
211 時刻および属性情報記憶部
212 属性データ多重化時刻算出部
213 VBVバッファモデル管理部

Claims (2)

  1. 複数のフレームからなるビデオ符号化データと、前記ビデオ符号化データのコーディングタイプ、PTSの時刻情報、DTSの時刻情報、フレームレート、及び表示情報のうちの少なくとも一つを含む属性データとを多重化する多重化制御装置であって、
    前記ビデオ符号化データの符号化レートに基づいて、符号化データ仮想バッファの充足量を求める符号化データ充足量演算部と、
    前記ビデオ符号化データのフレームレートに対する前記属性データの符号化レートの倍率としてN(Nは2以上の自然数)倍を設定する属性データ符号化レート倍率設定部と、
    前記属性データの符号化レートの倍率に基づいて、属性データ仮想バッファの充足量を演算する属性データ充足量演算部と、
    前記ビデオ符号化データの多重化時刻と、前記属性データの符号化レートの倍率とに基づいて、前記ビデオ符号化データの各フレームの開始時点以降の(N−1)/(2N)の期間および終了時点以前の(N−1)/(2N)の期間を除く前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるように、前記属性データの多重化時刻を設定する属性データ多重化時刻設定部と、
    前記ビデオ符号化データの多重化時刻と、前記属性データの多重化時刻と、前記符号化データ仮想バッファの充足量と、前記属性データ仮想バッファの充足量とに基づいて、前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるよう、前記ビデオ符号化データと前記属性データとの多重化を制御する多重化制御部と、
    を有する多重化制御装置。
  2. 複数のフレームからなるビデオ符号化データと、前記ビデオ符号化データのコーディングタイプ、PTSの時刻情報、DTSの時刻情報、フレームレート、及び表示情報のうちの少なくとも一つを属性データとを多重化する多重化制御方法であって、
    前記ビデオ符号化データの符号化レートに基づいて、符号化データ仮想バッファの充足量を求めるステップと、
    前記ビデオ符号化データのフレームレートに対する前記属性データの符号化レートの倍率としてN(Nは2以上の自然数)倍を設定するステップと、
    前記属性データの符号化レートの倍率に基づいて、属性データ仮想バッファの充足量を演算するステップと、
    前記ビデオ符号化データの多重化時刻と、前記属性データの符号化レートの倍率とに基づいて、前記ビデオ符号化データの各フレームの開始時点以降の(N−1)/(2N)の期間および終了時点以前の(N−1)/(2N)の期間を除く前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるように、前記属性データの多重化時刻を設定するステップと、
    前記ビデオ符号化データの多重化時刻と、前記属性データの多重化時刻と、前記符号化データ仮想バッファの充足量と、前記属性データ仮想バッファの充足量とに基づいて、前記ビデオ符号化データの各フレームの前後除外期間に、前記属性データが多重化されるよう、前記ビデオ符号化データと前記属性データとの多重化を制御するステップと、
    を有する多重化制御方法。
JP2008150321A 2008-06-09 2008-06-09 多重化制御装置および多重化制御方法 Active JP4835651B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008150321A JP4835651B2 (ja) 2008-06-09 2008-06-09 多重化制御装置および多重化制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008150321A JP4835651B2 (ja) 2008-06-09 2008-06-09 多重化制御装置および多重化制御方法

Publications (2)

Publication Number Publication Date
JP2009296501A JP2009296501A (ja) 2009-12-17
JP4835651B2 true JP4835651B2 (ja) 2011-12-14

Family

ID=41544220

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008150321A Active JP4835651B2 (ja) 2008-06-09 2008-06-09 多重化制御装置および多重化制御方法

Country Status (1)

Country Link
JP (1) JP4835651B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02272851A (ja) * 1989-04-14 1990-11-07 Oki Electric Ind Co Ltd 画像パケット組立方式及び分解方式
JPH06253282A (ja) * 1993-03-01 1994-09-09 Hitachi Ltd 画像信号の符号化・復号化装置
JPH1174868A (ja) * 1996-09-02 1999-03-16 Toshiba Corp 情報伝送方法およびその方法が適用される情報伝送システムにおける符号化装置/復号化装置、並びに符号化・多重化装置/復号化・逆多重化装置

Also Published As

Publication number Publication date
JP2009296501A (ja) 2009-12-17

Similar Documents

Publication Publication Date Title
JP4221676B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4515465B2 (ja) 動画撮影装置および動画撮影方法、記録媒体に記録された映像信号を再生する動画再生装置および動画再生方法
JP6225446B2 (ja) 動画像データ配信装置、方法、プログラム、及びシステム
JP2005318502A (ja) 可変フレームレート記録のための映像記録装置、多重方法、映像符号化方法、プログラム、及び記録媒体
JPH1188874A (ja) 符号化装置における編集可能点挿入方法および符号化装置
JP2006203910A (ja) 同期化イーサネット(登録商標)システムにおいてジッターなしにデータを伝送する方法
WO2003079195A1 (fr) Appareil et procede de traitement d'information
JP4835651B2 (ja) 多重化制御装置および多重化制御方法
US6999090B2 (en) Data processing apparatus, data processing method, information storing medium, and computer program
JP5046907B2 (ja) 記録装置、その制御方法、プログラム
US20040091159A1 (en) Image compression device and method for performing a frame skipping process
JP2006303611A (ja) 映像処理装置,映像処理方法,およびコンピュータプログラム
JP2003052040A (ja) Mpegデータ再生装置
JP2004048103A (ja) 画像データ処理装置及び方法
JP3897783B2 (ja) 画像処理装置及びその制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP2008177874A (ja) 記録装置、記録方法、プログラム、及び記憶媒体
JP2009038704A (ja) 撮影データ記録装置
JP2009049855A (ja) コンテンツ再生装置
JP2007325304A (ja) Mpegデータ記録再生方法
JP2008005520A (ja) Mpegデータ記録再生装置
JP2003092733A (ja) Mpegデータ記録装置
JP2003235011A (ja) プログラムストリーム生成装置およびこれを用いた記録再生装置
JP2003116106A (ja) Mpegデータ記録方法
JP2002158968A (ja) 映像音声信号再生装置及び方法並びに映像音声信号記録再生装置及び方法
JP2003052021A (ja) Mpegデータ再生方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110812

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

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

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4835651

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

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

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350