JP2004289629A - Apparatus and method for sending image data out - Google Patents

Apparatus and method for sending image data out Download PDF

Info

Publication number
JP2004289629A
JP2004289629A JP2003080750A JP2003080750A JP2004289629A JP 2004289629 A JP2004289629 A JP 2004289629A JP 2003080750 A JP2003080750 A JP 2003080750A JP 2003080750 A JP2003080750 A JP 2003080750A JP 2004289629 A JP2004289629 A JP 2004289629A
Authority
JP
Japan
Prior art keywords
stream
moving image
frame
image stream
trick play
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003080750A
Other languages
Japanese (ja)
Other versions
JP3749715B2 (en
Inventor
Isao Imai
功 今井
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003080750A priority Critical patent/JP3749715B2/en
Publication of JP2004289629A publication Critical patent/JP2004289629A/en
Application granted granted Critical
Publication of JP3749715B2 publication Critical patent/JP3749715B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To easily realize special playback of a moving image stream without preparing a moving image stream formed exclusively for special playback in a storage medium such as a disk storage or the like beforehand. <P>SOLUTION: When a compression-coded moving image stream from an encoder 13 is inputted, the moving image stream is analyzed by a CPU 101, and metadata representing the starting position of a frame and its kind are formed for each frame contained in the moving image stream. The formed metadate are stored in a disk storage 12 together with the moving image stream. When a special playback is required, the CPU 101 refers to the metadata, acquires frames of a specified kind comprising at least inside-a-frame coded frames selectively from the moving image stream, forms a moving image stream for special playback by the use of these, and sends it out to a decoder 14 or 15. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は記憶メディアに格納された動画像ストリームを送出する画像データ送出装置および画像データ送出方法に関する。
【0002】
【従来の技術】
現在、動画像圧縮方式として一般的となっているMPEG2規格においては、フレーム内符号化およびフレーム間予測符号化を用いた圧縮符号化方式が用いられている。圧縮符号化によって得られるピクチャは3種類である。すなわちイントラピクチャ(Iピクチャ)と呼ばれる単独で再生可能なピクチャ、Iピクチャからの順方向差分データにより生成されるPピクチャ、前後の双方の画像との差分情報を用いて生成されるBピクチャである。
【0003】
MPEG2が高品質の動画圧縮技術の標準として普及するにしたがって、MPEG2で圧縮符号化された動画像ストリームの早送り、巻き戻し、スキップなどの特殊再生(トリックプレイ)を行いたいという要求が発生するようになっている。
【0004】
圧縮符号化された動画像ストリームを送出するシステムとしては、例えば、所定の画面から再生を開始できるようにするために、圧縮データとは別のサブデータ(GOPデータやインデックスデータ)を作成するシステムが知られている(例えば、特許文献1参照。)。
【0005】
また、例えば、2倍速再生用や3倍速再生用といった特殊再生専用の動画像ストリームを予め個々に作成し、それを通常再生用の動画像ストリームと共にビデオサーバのディスクストレージに予め蓄積しておくという手法も知られている。
【0006】
【特許文献1】
特開平11−341437号公報
【0007】
【発明が解決しようとする課題】
しかし、特殊再生専用の動画像ストリームを通常再生用の動画像ストリームと共にディスクストレージに予め蓄積しておく方式では、大容量のディスクストレージが必要となるという問題が生じる。
【0008】
本発明は上述の事情を考慮してなされたものであり、特殊再生専用に生成された動画像ストリームを予めディスクストレージなどの記憶メディアに用意しておくことなく、動画像ストリームの特殊再生を実現することが可能な動画像送出装置および動画像送出方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
上述の課題を解決するため、本発明は、記憶メディアに格納された動画像ストリームを送出する画像データ送出装置において、フレーム内符号化およびフレーム間予測符号化を用いて圧縮符号化された動画像ストリームを入力する手段と、前記入力された動画像ストリームを解析して、当該動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報を生成する手段と、前記入力された動画像ストリームおよび前記生成された制御情報を前記記憶メディアに格納する手段と、前記動画像ストリームの特殊再生要求に応答して、前記動画像ストリームに対応する制御情報に基づき、前記記憶メディアに格納された動画像ストリームから少なくともフレーム内符号化フレームを含む所定のフレーム種別のフレームを選択的に取得することにより、特殊再生用の動画像ストリームを生成するストリーム生成手段とを具備することを特徴とする。
【0010】
この画像データ送出装置においては、圧縮符号化された動画像ストリームの入力時には、当該動画像ストリームの解析が行われ、その動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報が生成される。生成された制御情報と動画像ストリームは記憶メディアに格納される。そして、特殊再生が要求されると、制御情報に基づいて、動画像ストリームから少なくともフレーム内符号化フレームを含む所定のフレーム種別のフレームが選択的に取得され、これによって特殊再生用の動画像ストリームが生成される。よって、特殊再生専用の動画像ストリームを予め記憶メディアに用意しておく必要が無くなるので、放送番組などの動画像ストリームを多数記憶する場合であっても、記憶メディアの容量不足などの問題は生じない。さらに、出力時には、既に生成されている制御情報に従って必要なフレーム群を容易に取り出すことができるので、特殊再生要求を受けてから特殊再生専用の動画像ストリームを送出するまでの応答性も改善される。
【0011】
また、ストリーム生成手段によって生成された特殊再生用の動画像ストリームについては、特殊再生要求で指定された倍速率と前記生成された特殊再生用の動画像ストリームのデータ量とに基づいて規定される所定の送出速度で送出されるように、その送出速度を制御することが好ましい。これにより、抽出するフレーム群と送出速度との組み合わせによって、様々な倍速率の特殊再生を容易に実現することが可能となる。
【0012】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を説明する。
【0013】
図1には、本発明の一実施形態に係るビデオサーバ11の構成が示されている。このビデオサーバ11は、ディスク記憶装置12に格納されたMPEG2の動画像ストリームを送出する画像データ送出装置である。ビデオサーバ11は、例えば放送局において放送番組の自動送出装置として用いられる。送出対象の各放送番組は、MPEG2によって圧縮符号化された動画像ストリームとしてディスク記憶装置12に蓄積される。
【0014】
ビデオサーバ11はコンピュータによって実現されており、図示のように、CPU101、システムコントローラ102、メモリ103、ネットワークインタフェースユニット104、エンコーダインタフェースユニット105、ディスクインタフェースユニット106、および複数のデコーダインタフェースユニット107,108を備えている。
【0015】
CPU101はビデオサーバ11の動作を制御するプロセッサであり、メモリ103にロードされたオペレーティングシステムおよびビデオ送出制御プログラムを実行する。ビデオ送出制御プログラムは動画像ストリームの蓄積および送出を制御するプログラムである。このビデオ送出制御プログラムには、早送り再生、逆戻し再生などの特殊再生(以下、トリックプレイと称する)を実現するための機能も含まれており、トリックプレイ時にはそのトリックプレイ用の動画像ストリームの生成および送出処理が実行される。
【0016】
システムコントローラ102はCPU101のプロセッサバスとPCIバスのようなシステムバス100とを接続するブリッジデバイスであり、ここにはメモリ103を制御するメモリコントローラも内蔵されている。ネットワークインタフェースユニット104はLANなどのネットワーク10との通信を行う通信デバイスであり、ネットワーク10上の操作端末16との通信を行う。操作端末16は、ビデオサーバ11に対して動画像ストリームの蓄積要求および再生要求(通常再生要求、トリックプレイ要求)を送信する。通常再生要求は、例えば番組送出予定情報に従って定期的に操作端末16からビデオサーバ11に送信される。また、トリックプレイ要求は、必要に応じて操作端末16からビデオサーバ11に送信される。トリックプレイ要求には、再生対象の動画像ストリームを識別する情報の他、倍速率、再生方向(順方向、逆方向)、送出チャネル番号を指定する情報も含まれている。
【0017】
エンコーダインタフェースユニット105はMPEG2エンコーダ13との通信を行い、MPEG2エンコーダ13から圧縮符号化された動画像ストリームを受信する。MPEG2エンコーダ13は、例えばVTRなどから出力される動画像データをMPEG2の動画像圧縮符号化方式で圧縮符号化することにより、圧縮符号化された動画像ストリーム(MPEG2ストリーム)を生成する。MPEG2の動画像圧縮符号化方式ではフレーム内符号化(イントラ符号化)とフレーム間予測符号化(インター符号化)とが併用される。圧縮符号化された動画像ストリームには、上述したように、イントラ符号化で得られるIピクチャと、インター符号化で得られるPピクチャおよびBピクチャとの3種類のフレームが含まれている。
【0018】
ディスクインタフェースユニット106は、ディスク記憶装置12との間のデータの入出力を行う。デコーダインタフェースユニット107,108は、それぞれ動画像ストリームの送出チャネルとして使用されるものであり、これらデコーダインタフェースユニット107,108にはそれぞれMPEG2デコーダ14,15が接続されている。デコーダインタフェースユニット107,108の各々は、例えばSCSIインタフェースなどから構成されている。
【0019】
MPEG2デコーダ14,15の各々は、圧縮符号化された動画像ストリーム(MPEG2ストリーム)をデコードする。MPEG2デコーダ14,15の各々は、通常は、MPEG2動画像ストリームに埋め込まれているタイムスタンプ情報で指定されるタイミングに従ってその動画像ストリーム内の各フレームをデコードおよび再生出力する処理を実行するが(以下、通常モードと云う)、タイムスタンプ情報とは無関係に、動画像ストリームに含まれる各フレームを受信する度にそのフレームを順次デコードおよび再生出力することもできる(以下、プッシュモードと云う)。
【0020】
MPEG2においては、タイムスタンプ情報としては、例えば、PTS(表示タイミングを扱う)、DTS(デコードを行うタイミングを扱う)、PCR(ストリームの中でのPCRが埋められたパケットの時刻位置をあらわす)などが規定されている。これらタイムスタンプ情報はビデオサーバ11から送出される動画像ストリームをリアルタイムに再生するために用いられるものである。プッシュモードにおいては、MPEG2デコーダ14,15の各々は、タイムスタンプ情報を無視してデコード動作を行う(ビデオサーバ11からプッシュ型で送られてくるストリームを順次デコードおよび再生する)。この場合、動画像ストリームに含まれる各フレームはその受信の度に順次デコードおよび再生出力され、次のフレームが受信されるまでは前のフレームに対応する映像が出力され続ける。
【0021】
MPEG2デコーダ14,15の各々によってデコードおよび再生出力された動画像データは、それらMPEG2デコーダ14,15にそれぞれ対応して設けられた番組送信装置に映像データとして送られる。
【0022】
次に、トリックプレイを実現するためにビデオサーバ11に設けられた機能について説明する。
【0023】
A) メタデータ作成
ビデオサーバ11は、エンコーダ13からの動画像ストリーム(MPEG2ストリーム)の入力時に、その入力された動画像ストリームを解析(パース)することによってオペレーショナルメタデータを作成する。オペレーショナルメタデータは、入力される動画像ストリームに含まれる各フレーム毎にその開始位置とフレーム種別(Iフレーム、Pフレーム、Bフレーム)を示す制御情報である(以下、メタデータと云う)。
【0024】
作成されたメタデータは、動画像ストリームに対応付けられた状態でディスク記憶装置12に格納される。これにより、ディスク記憶装置12には、複数の動画像ストリームとそれら動画像ストリームそれぞれに対応する複数のメタデータとが一対一に関係付けられて記憶される。
【0025】
ある動画像ストリームとそれに対応するメタデータとの関係を図2に示す。
【0026】
図2(a)はMPEG2の動画像ストリームに含まれるフレーム群の構成を示している。Iピクチャのデータサイズは、Pピクチャ,Bピクチャよりも大きい。図2(b)はメタデータのデータ構造を示している。メタデータはMPEG2の動画像ストリームに含まれる各フレーム毎に、そのフレーム種別情報(I,P,B)と、フレームオフセット情報と、バイトオフセット情報とを含む。
【0027】
フレームオフセット情報は当該フレームがMPEG2動画像ストリームの先頭フレームから何番目のフレームであるかを示し、またバイトオフセット情報は当該フレームがMPEG2動画像ストリームの先頭から何バイト目のデータであるかを示す。これらフレームオフセット情報およびバイトオフセット情報は、動画像ストリームに含まれる各フレームの開始位置を示す情報として用いられる。
【0028】
ここで、MPEG2動画像ストリームのデコード順と再生(プレゼンテーション)順について説明する。
【0029】
Bピクチャはそれよりも時間的に後方のI,Pピクチャを参照が蔵して使用するので、Bピクチャを含むMPEG2ストリームにおいては、デコードを行うフレームの順番と再生(プレゼンテーション)を行うフレームの順番とが異なることになる。
【0030】
いま、MPEG2動画像ストリームが、そのストリーム順で
I,P,B,B,P,B,B,P,B,B,P,B,B,P,B,B I,P,B,B,P,B,B,P,B,B,P,B,B,P,B,B
というフレーム順で並んでいるとする(GOP=16フレーム)。
【0031】
この場合、そのデコード順は、
I,P,B,B,P,B,B,P,B,B,P,B,B,P,B,B
0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1 (順序10の桁)
1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6 (順序1の桁)
であり、再生順は、
I,P,B,B,P,B,B,P,B,B,P,B,B,P,B,B
0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1 (順序10の桁)
1,4,2,3,7,5,6,0,8,9,3,1,2,6,4,5 (順序1の桁)
となる。
【0032】
図2の例においては、フレーム番号はそのデコード順を表している。なお、IピクチャとPピクチャだけを対象とするストリームの場合には、デコード順と再生順とが逆転することはない。
【0033】
B)出力時のトリミング機能
ビデオサーバ11は、特殊再生要求(トリックプレイ要求)で再生指定されたMPEG2の動画像ストリームに対応するメタデータを参照することにより、その動画像ストリームから必要なフレームを選択的に取り出して、トリック再生用の動画像ストリームを生成する。例えば、Iピクチャだけを選んでトリック再生用の動画像ストリームを生成すれば、デコーダ14,15の各々はその動画像ストリームに含まれるIピクチャをビデオサーバ11の出力順番に合せて再生を行うことができる。順方向のトリックプレイにおいては、Iピクチャの他に、Pピクチャ,Bピクチャを含む場合も正しく再生することができる。
【0034】
C)ストリームの送出タイミング制御
ビデオサーバ11は、トリック再生用の動画像ストリームを任意の送出速度(bps)で送出チャネルから対応するデコーダに送出することができる。出力時のトリミングを行うフレームの選び方と出力するスピードの組み合わせにより、さまざまな倍速率での早送りや巻き戻しのトリックプレイ映像を得ることが出来る。もちろん、トリミング時のフレームの選び方によっては、元の動画像ストリームに対応する通常の送出速度で送出しても、所望の倍速率のトリックプレイ映像を得ることが出来る。
【0035】
次に、図3を参照して、ビデオサーバ11の動作の概要について説明する。
【0036】
入力時には、エンコーダ13によって得られた動画像ストリームのパースを行い、動画像ストリームに対応するメタデータの生成を行う。メタデータは動画像ストリームと一緒にディスク記憶装置12に格納されるが、メタデータのデータ量はストリーム本体と比較して十分に小さい。このため、倍速率が互いに異なる何種類ものトリックプレイ専用の動画像ストリームをディスク記憶装置12に予め保持しておく方式に比べ、必要なストレージサイズを大幅に低減することが可能となる。
【0037】
出力時には、メタデータを参照することにより、動画像ストリームから必要なフレームを取り出すトリミング処理を行って、たとえばIピクチャだけを取り出したストリームを作成して出力する。また、単純にIピクチャだけ取り出すだけではなく、Pピクチャについても動画像ストリームから取り出し、Bピクチャだけを取り除いたストリームを生成しても良い。
【0038】
高倍速率での早送りを行う場合などは、単に送出レートを高めるとデコーダ側の動作が追いつかずにオーバーフローが発生してしまうことがあるが、トリミング処理によってトリックプレイ用の送出ストリームに含まれるフレーム数自体(送出ストリームのデータ量)を削減することにより、デコーダ側の処理の破綻を未然に防止することができる。
【0039】
CPU101の使用についてはMPEG2ストリームのパースはCPU101に負担をかける作業ではあるが、入力時に一度パースを行っておけば、出力時には既に作成されているメタデータを用いて様々な倍速率のトリックプレイ用のストリームを容易に生成できるので、限られた一定の時間内にトリックプレイ用ストリームの送出を開始することが出来る。
【0040】
次に、図4を参照して、トリミング処理で生成されるトリックプレイ用ストリームの例を説明する。
【0041】
図4(a)は元の動画像ストリームに含まれるフレーム群の構成を示している。いま、3倍速で逆方向再生(リバース再生)を行う場合を想定する。トリックプレイ要求によってリバース再生の開始点と終了点が指定されたとする。トリミング処理では、指定された開始点のフレーム位置から逆方向にメタデータを順次辿ることにより、開始点から終了点までに属するフレームそれぞれのフレーム種別が調べられる。そして、指定された開始点から順にIピクチャの抽出が行われる。
【0042】
元の動画像ストリームにおいて、開始点と終了点との間にI,I,Iの3つのIピクチャが図4(a)のように配置されている場合、図4(b)に示すように、I,I,Iという並びの3つのIピクチャから構成されるトリックプレイ用のストリームが生成される。
【0043】
放送番組用のMPEG2動画像ストリームからIピクチャだけを抽出してトリックプレイ用のストリームを生成した場合、その生成されたストリームのデータサイズは元の動画像ストリームのデータサイズよりも大幅に低減される。データサイズの低減率は元の動画像ストリームに依存するが、いま、例えば元の動画像ストリームのデータサイズに対して1/6程度になったとする。この場合、もし、生成されたストリームを元の動画像ストリームに対応する送出速度で送出すると、デコーダからは6倍速のリバース再生に対応する映像が出力される。よって、生成されたストリームを元の動画像ストリームに対応する送出速度の1/2の速度で伝送すれば、3倍速のリバース再生に対応する映像が出力される。
【0044】
すなわち、デコーダは現在再生出力中のフレームの次のフレームが受信されるまでは現在再生出力中のフレームに対応する映像の出力を維持するので、送出速度を例えば通常レートの1/2に制御すれば、I,I,Iそれぞれの映像は、通常の1/30秒単位ではなく、その倍の1/15秒単位で切り替わることとなる。このように、生成されたトリックプレイ用のストリームの送出速度は、指定された倍速率と生成されたトリックプレイ用のストリームのデータ量とに基づいて決定される。
【0045】
なお、ストリームの平均送出速度を制御すればよいので、たとえば、I,I,Iそれぞれのデータの送出タイミングを制御して、それらI,I,Iそれぞれのデータを所定の時間間隔をあけて間欠的に送出するようにしてもよい。上述したようにトリックプレイで使用するプッシュモードにおいてはデコーダはタイムスタンプ情報を参照せずに受信フレームを順次デコードするので、トリックプレイ用のストリームにはタイムスタンプ情報などを埋め込む必要はない。
【0046】
生成されるトリックプレイ用ストリームのデータ量の値は、どのフレーム種別を選択するかに応じて、統計的に求めることが出来る。よって、図5のテーブル300に示すように、トリックプレイで使用される倍速率毎(−の倍速率はリバース再生を示す)に、選択すべきフレーム種別と送出スピードとの関係をトリックプレイ管理情報として予め規定しておくことことが出来る。入力時のパースによって動画像フレーム毎にその特性に応じたテーブル300を動的に生成することも可能であるが、プレビューや頭出しのような多くの一般的な用途においては、指定された倍速率と実際の再生速度とが多少ずれても問題は生じない。
【0047】
次に、図6を参照して、テーブル300を用いて実行されるトリミング処理とストリーム送出速度制御処理について説明する。
【0048】
図6に示されているように、ビデオ送出制御プログラム400には、トリミング処理部401、送出ストリーム組み立て部402、およびストリーム送信部403が設けられている。
【0049】
トリミング処理部401は、トリックプレイ要求で指定された倍速率に従ってテーブル300を参照することによって、選択対象とすべきフレーム種別を決定し、そしてそのフレーム種別のフレームを、メタデータを参照しながら動画像ストリームから順次取り出す。例えば、図5のテーブル300の例では、順方向の2倍速再生または3倍速再生の場合は元のMPEG2動画像ストリームからIピクチャとPピクチャとを取り出し、順方向の4倍速再生の場合には元のMPEG2動画像ストリームからIピクチャのみを取り出す。また、逆方向再生の場合には、常にIピクチャのみを取り出す。取り出された個々のフレームは送出フレーム組み立て部402に送られ、そしてその送出フレーム組み立て部402にてトリックプレイ用の送出ストリームの組み立てが行われる。
【0050】
ストリーム送信部403は、トリックプレイ要求で指定された倍速率に従ってテーブル300を参照することによって、送出フレームの送出速度を決定し、そして組み立て部402によって得られた送出ストリームをその速度で送出するための制御を行う。
【0051】
次に、図7および図8を参照して、ビデオ送出制御プログラム400によって実行される入力時および出力時それぞれの動作について説明する。
【0052】
図7のフローチャートは入力時の処理を示している。CPU101はビデオ送出制御プログラム400を実行することにより、以下の処理を行う。
【0053】
CPU101は、エンコーダ13から出力されるMPEG2動画像ストリームをエンコーダインタフェースユニット105を通じて入力しながらその動画像ストリームを解析し(ステップS101)、その動画像ストリームに含まれるフレーム毎にその開始位置(フレームオフセット、バイトオフセット)とフレーム種別(I,P,B)を示すメタデータを作成する(ステップS102)。そして、CPU101は、作成されたメタデータと動画像ストリームとを対応付けてディスク記憶装置12に格納する(ステップS103)。
【0054】
なお、実際にはトリックプレイ要求を受ける前までの期間にメタデータを作成すればよいので、エンコーダ13から出力されるMPEG2動画像ストリームをディスク記憶装置12に格納した後に、そのMPEG2動画像ストリームを解析してメタデータを作成するようにしても良い。
【0055】
図8のフローチャートは出力時の処理を示している。CPU101は、操作端末16から再生要求を受けると、それがトリックプレイ要求であるか、通常再生要求であるかを判別する(ステップS201)。通常再生要求であれば(ステップS201のNO)、CPU101は、その通常再生要求で指定された動画像ストリームをディスクインタフェースユニット106を通じてディスク記憶装置12からメモリ103上に読み出し、そしてデコーダインタフェースユニット107または108を通じて、その動画像ストリームのヘッダ部などに埋め込まれているビットレート情報等で指定される通常の送出速度でデコーダ14または15に送出する(ステップS202)。
【0056】
受信した再生要求がトリックプレイ要求であれば(ステップS201のYES)、CPU101は、トリックプレイ要求で指定された動画像ストリームからトリックプレイ用の送出ストリームを生成する処理を実行する(ステップS203)。このステップS203では、テーブル300を参照することによって、トリックプレイ要求で指定された倍速率に対応する選択フレーム種別が決定され、そしてそのフレーム種別のフレームを動画像ストリームから取り出す処理が、トリックプレイ要求で指定された動画像ストリームに対応するメタデータを用いて実行される。次いで、CPU101は、トリックプレイ要求で指定された倍速率に対応する送出速度を決定し、ステップS203で作成された送出ストリームをその送出速度で送出する(ステップS204)。なおステップS203において、トリックプレイ要求で指定された倍速率に対応する選択フレーム種別と送出速度の双方を決定しても良い。
【0057】
上述したように、トリックプレイ時にはデコーダをプッシュモードで動作させることが必要であるので、通常モードおよびプッシュモードそれぞれに対応するデコーダを使用する場合には、そのデコーダの動作モードを設定する処理が行われる。この様子を図9のフローチャートに示す。
【0058】
すなわち、図9のフローチャートに示されているように、受信した再生要求がトリックプレイ要求であれば(ステップS201のYES)、CPU101は、ストリーム送出先のデコーダに所定のモード設定コマンドを送信することにより、そのデコーダをプッシュモードに設定する(ステップS211)。また、受信した再生要求が通常再生要求であれば(ステップS201のNO)、CPU101は、ストリーム送出先のデコーダに別のモード設定コマンドを送信することにより、そのデコーダを通常モードに設定する(ステップS212)。
【0059】
図10のフローチャートには、図8のステップS203で実行される送出ストリーム生成処理の手順が示されている。
【0060】
CPU101は、選択対象とすべきフレーム種別を決定した後、トリックプレイ要求で指定されるトリックプレイ開始点から順にメタデータを参照することによって動画像ストリーム内のフレーム種別を検出し、当該フレームが送出ストリームの生成に必要なフレーム種別であるかどうかを判断する(ステップS301)。当該フレームが送出ストリームの生成に必要なフレーム種別であれば(ステップS301のYES)、CPU101は、メモリ103上に用意された送出ストリーム生成用のバッファ上に当該フレームのデータを追加する(ステップS302)。送出ストリームの生成に必要なフレーム種別ではない場合には(ステップS301のNO)、ステップS302の処理はスキップされる。
【0061】
この後、CPU101は、メタデータを参照するフレーム位置をインクリメント(リバース再生時はデクリメント)しながら(ステップS303)、終了点のフレームに対する処理が完了するまで上述のステップS301,S302の処理を繰り返し実行する(ステップS304)。
【0062】
以上のように、本実施形態によれば、入力時に動画像ストリームからメタデータを生成しておき、出力時にそのメタデータを用いてトリックプレイ用のストリームを生成するという仕組みを用いることにより、トリックプレイ専用の動画像データを予めストレージ上に用意しておくという方式に比し、必要なディスク容量を大幅に低減することが可能となる。また、トリミング処理と送出速度制御との併用によって倍速率を制御しているので、出力時には、特定のフレーム種別のフレームを元の動画像ストリームから抽出するという簡単なトリミング処理を行うのみで、様々な倍速率のトリックプレイを実現することが可能となる。
【0063】
なお、本例では、MPEG2ストリームの通常再生を時間情報に従って実行するという通常のMPEG2デコーダを用いることを前提にそのデコーダの動作モード設定を行ったが、トリックプレイ時には、受信フレームをその受信順に順次デコードするという動作を実行するトリックプレイ専用のデコーダにトリックプレイ用ストリームを送出するという方法を用いることにより、デコーダの動作モード設定を行わずとも、トリックプレイを実現することが出来る。
【0064】
次に、図11を参照して、通常再生とトリックプレイとの間の優先度制御について説明する。
【0065】
上述したように、ビデオデコーダ11は複数のストリーム送出チャネルを利用することにより、通常再生とトリックプレイとを同時並行して行うことが出来る。この場合、本実施形態においては、CPU101およびメモリ103を含むリソースの割り当てを制御することにより、トリックプレイ用のストリーム生成・送出処理よりも優先して、通常再生用のストリーム送出処理に対してリソースを割り当てるというリソース管理が行われる。
【0066】
すなわち、トリックプレイの映像については、たとえその画像の出力が遅れて、与えた倍速率よりも若干低くなって動作しても、それほど利用者に違和感を与えることはない。つまり3倍速の早送りがたとえば少し遅れ2.5倍速になってもそれが致命的な問題とはならない。一方、通常再生用の映像についてはその再生速度に遅れが生じることは実際上許されない。このようにトリックプレイ可能なビデオサーバ11においては、ストリーム種別によって優先度をコントロールことが重要である。
【0067】
ビデオサーバ11のビデオ送出制御プログラム400内またはOS内などにリソース割り当ての優先度制御機構を組み込むことにより、例えば、トリックプレイ用のI/Oの優先度を低くして出力を行うといった制御を行うことが出来る。すなわち、ビデオサーバ11ではストレージとして機能するディスク記憶装置12のI/Oの揺らぎを吸収するために大容量のバッファメモリをメモリ103上にまたは専用メモリ上に装備し、スレッドなどの動作単位ごとに優先度を設定し、I/Oを行うスレッドには高い優先度を設定して安定した送出を行う。複数の送出ストリーム間に優先度を設定し、トリックプレイ用の送出にはメモリバッファ領域使用をおさえ(あるいは空き領域を適時取得するようなメモリ管理をおこなって)、トリックプレイ用の送出スレッドについても通常のスレッドと比較して低い実行優先度を設定することで、トリックプレイ中でも他のストリーム入出力に影響を及ぼすことの少ない、安定動作のできるビデオサーバを構築することができる。
【0068】
なお、ビデオサーバ11の構成は、ネットワークを介してクライアント端末に動画像ストリームを配信するビデオオンデマンドシステムにも適用することが出来る。この場合、デコーダはクライアント端末内に設けることもできる。再生要求(通常再生要求、トリックプレイ要求)は、ネットワークを介してクライアント端末からビデオサーバ11に送信される。
【0069】
クライアント端末がトリックプレイ要求を送信したときは、そのクライアント端末のデコーダは自動的にプッシュモードに設定される。この場合、ビデオサーバ11は、デコーダの動作モードを考慮すること無く、生成したトリックプレイ用の動画像ストリームの送出速度を自由に制御することが出来る。
【0070】
また本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【0071】
【発明の効果】
以上詳述したように本発明によれば、特殊再生専用に生成された動画像ストリームを予めディスクストレージなどの記憶メディアに用意しておくことなく、動画像ストリームの特殊再生を容易に実現することが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るビデオサーバの構成を示すブロック図。
【図2】同実施形態のビデオサーバによって生成されるメタデータのデータ構造の例を示す図。
【図3】同実施形態のビデオサーバによって実行される入力時および出力時の動作を説明するための図。
【図4】同実施形態のビデオサーバによって生成されるトリックプレイ用ストリームの例を示す図。
【図5】同実施形態のビデオサーバ内に保持されている管理情報テーブルの例を示す図。
【図6】同実施形態のビデオサーバが図5の管理情報テーブルを用いて実行するストリーム生成および送出処理を説明するための図。
【図7】同実施形態のビデオサーバが入力時に実行する処理の手順を示すフローチャート。
【図8】同実施形態のビデオサーバが出力時に実行する処理の手順を示すフローチャート。
【図9】同実施形態のビデオサーバが出力時に実行するデコーダの動作モード設定処理を説明するフローチャート。
【図10】同実施形態のビデオサーバによって実行される送出ストリーム生成処理の手順を示すフローチャート。
【図11】同実施形態のビデオサーバによって実行される優先度制御処理を説明するための図。
【符号の説明】
11…ビデオサーバ、12…ディスク記憶装置、13…エンコーダ、14,15…デコーダ、16…操作端末、101…CPU、103…メモリ、105…エンコーダインタフェースユニット、106…ディスクインタフェースユニット、107,108…デコーダインタフェースユニット。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image data transmitting apparatus and an image data transmitting method for transmitting a moving image stream stored in a storage medium.
[0002]
[Prior art]
At present, in the MPEG2 standard, which is generally used as a moving image compression method, a compression coding method using intra-frame coding and inter-frame predictive coding is used. There are three types of pictures obtained by compression encoding. That is, a picture that can be reproduced independently, called an intra picture (I picture), a P picture generated by forward difference data from an I picture, and a B picture generated by using difference information between both preceding and succeeding images. .
[0003]
As MPEG2 spreads as a standard for high-quality moving image compression technology, a request for trick play such as fast-forward, rewind, and skip of a moving image stream compression-encoded by MPEG2 is generated. It has become.
[0004]
As a system for transmitting a compression-encoded moving image stream, for example, a system that creates sub data (GOP data or index data) different from compressed data so that reproduction can be started from a predetermined screen Is known (for example, refer to Patent Document 1).
[0005]
Also, for example, a moving image stream dedicated to special reproduction such as for 2 × speed reproduction or for 3 × speed reproduction is individually created in advance, and is stored in advance in a disk storage of a video server together with a moving image stream for normal reproduction. Techniques are also known.
[0006]
[Patent Document 1]
JP-A-11-341437
[0007]
[Problems to be solved by the invention]
However, in a method in which a moving image stream dedicated to special reproduction is stored in a disk storage together with a moving image stream for normal reproduction in advance, there is a problem that a large-capacity disk storage is required.
[0008]
The present invention has been made in consideration of the above circumstances, and realizes special reproduction of a moving image stream without preparing a moving image stream generated exclusively for special reproduction in a storage medium such as a disk storage in advance. It is an object of the present invention to provide a moving image transmitting apparatus and a moving image transmitting method that can perform the operation.
[0009]
[Means for Solving the Problems]
In order to solve the above-mentioned problems, the present invention provides a video data transmitting apparatus for transmitting a video stream stored in a storage medium, the video being compressed and encoded using intra-frame encoding and inter-frame prediction encoding. Means for inputting a stream, means for analyzing the input moving image stream and generating control information indicating a start position and a frame type for each frame included in the moving image stream, and the input moving image Means for storing the image stream and the generated control information in the storage medium; and responding to the special reproduction request for the moving image stream, storing the image stream and the generated control information in the storage medium based on the control information corresponding to the moving image stream. Frames of a predetermined frame type including at least an intra-coded frame from the By acquiring the 択的, characterized by comprising a stream generating means for generating a moving picture stream for special playback.
[0010]
In this image data transmitting apparatus, when a compression-encoded moving image stream is input, the moving image stream is analyzed, and control information indicating a start position and a frame type for each frame included in the moving image stream is provided. Is generated. The generated control information and the moving image stream are stored in a storage medium. When the special reproduction is requested, a frame of a predetermined frame type including at least an intra-coded frame is selectively obtained from the moving image stream based on the control information. Is generated. Therefore, it is not necessary to prepare a moving image stream dedicated to special reproduction on a storage medium in advance, and even when a large number of moving image streams such as broadcast programs are stored, a problem such as a shortage of storage medium capacity occurs. Absent. Further, at the time of output, a necessary frame group can be easily extracted according to the control information that has already been generated, so that the responsiveness from receiving a special reproduction request to transmitting a moving image stream dedicated to special reproduction is also improved. You.
[0011]
Further, the special reproduction moving image stream generated by the stream generation means is defined based on the double speed rate specified in the special reproduction request and the data amount of the generated special reproduction moving image stream. It is preferable to control the sending speed so that the sending is performed at a predetermined sending speed. This makes it possible to easily realize trick play at various speeds depending on the combination of the frame group to be extracted and the transmission speed.
[0012]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0013]
FIG. 1 shows a configuration of a video server 11 according to an embodiment of the present invention. The video server 11 is an image data transmitting device that transmits an MPEG2 moving image stream stored in the disk storage device 12. The video server 11 is used as, for example, a broadcast program automatic transmission device in a broadcasting station. Each broadcast program to be transmitted is stored in the disk storage device 12 as a moving image stream compressed and encoded by MPEG2.
[0014]
The video server 11 is realized by a computer, and includes a CPU 101, a system controller 102, a memory 103, a network interface unit 104, an encoder interface unit 105, a disk interface unit 106, and a plurality of decoder interface units 107 and 108, as illustrated. Have.
[0015]
The CPU 101 is a processor that controls the operation of the video server 11, and executes the operating system and the video transmission control program loaded into the memory 103. The video transmission control program is a program for controlling storage and transmission of a moving image stream. The video transmission control program also includes a function for realizing special playback (hereinafter, referred to as trick play) such as fast forward playback and reverse playback. At the time of trick play, a video stream for trick play is provided. Generation and transmission processing is performed.
[0016]
The system controller 102 is a bridge device that connects a processor bus of the CPU 101 and a system bus 100 such as a PCI bus, and also includes a memory controller that controls the memory 103. The network interface unit 104 is a communication device that communicates with the network 10 such as a LAN, and communicates with the operation terminal 16 on the network 10. The operation terminal 16 transmits a storage request and a reproduction request (normal reproduction request, trick play request) of a moving image stream to the video server 11. The normal reproduction request is periodically transmitted from the operation terminal 16 to the video server 11 in accordance with, for example, program transmission schedule information. The trick play request is transmitted from the operation terminal 16 to the video server 11 as needed. The trick play request includes, in addition to information for identifying a moving image stream to be reproduced, information for specifying a double speed ratio, a reproduction direction (forward direction, reverse direction), and a transmission channel number.
[0017]
The encoder interface unit 105 communicates with the MPEG2 encoder 13 and receives a compression-encoded moving image stream from the MPEG2 encoder 13. The MPEG2 encoder 13 generates a compression-encoded moving image stream (MPEG2 stream) by compressing and encoding moving image data output from, for example, a VTR using the moving image compression encoding method of MPEG2. In the moving picture compression coding method of MPEG2, intra-frame coding (intra coding) and inter-frame predictive coding (inter coding) are used together. As described above, the compression-encoded moving image stream includes three types of frames: an I picture obtained by intra coding, and a P picture and B picture obtained by inter coding.
[0018]
The disk interface unit 106 inputs and outputs data to and from the disk storage device 12. The decoder interface units 107 and 108 are used as transmission channels for moving image streams, respectively, and MPEG2 decoders 14 and 15 are connected to the decoder interface units 107 and 108, respectively. Each of the decoder interface units 107 and 108 includes, for example, a SCSI interface or the like.
[0019]
Each of the MPEG2 decoders 14 and 15 decodes a compression-encoded moving image stream (MPEG2 stream). Normally, each of the MPEG2 decoders 14 and 15 executes a process of decoding and reproducing and outputting each frame in the moving image stream in accordance with the timing specified by the time stamp information embedded in the MPEG2 moving image stream. In the following, each time a frame included in a moving image stream is received, the frame can be sequentially decoded, reproduced, and output regardless of the time stamp information (hereinafter, referred to as a push mode).
[0020]
In MPEG2, the time stamp information includes, for example, PTS (handles display timing), DTS (handles timing for decoding), and PCR (represents the time position of a packet in which a PCR is embedded in a stream). Is stipulated. The time stamp information is used for reproducing a moving image stream transmitted from the video server 11 in real time. In the push mode, each of the MPEG2 decoders 14 and 15 performs a decoding operation ignoring time stamp information (sequentially decodes and reproduces a push-type stream sent from the video server 11). In this case, each frame included in the moving image stream is sequentially decoded, reproduced and output each time it is received, and the video corresponding to the previous frame is continuously output until the next frame is received.
[0021]
The moving image data decoded and reproduced and output by each of the MPEG2 decoders 14 and 15 is transmitted as video data to a program transmission device provided corresponding to each of the MPEG2 decoders 14 and 15.
[0022]
Next, functions provided in the video server 11 for realizing trick play will be described.
[0023]
A) Metadata creation
When a video stream (MPEG2 stream) is input from the encoder 13, the video server 11 analyzes (parses) the input video stream to create operational metadata. Operational metadata is control information indicating a start position and a frame type (I frame, P frame, B frame) for each frame included in an input moving image stream (hereinafter, referred to as metadata).
[0024]
The created metadata is stored in the disk storage device 12 in a state of being associated with the moving image stream. Thereby, the plurality of moving image streams and the plurality of metadata corresponding to each of the moving image streams are stored in the disk storage device 12 in a one-to-one relationship.
[0025]
FIG. 2 shows the relationship between a certain moving image stream and the corresponding metadata.
[0026]
FIG. 2A shows a configuration of a frame group included in an MPEG2 moving image stream. The data size of the I picture is larger than the P picture and the B picture. FIG. 2B shows the data structure of the metadata. The metadata includes, for each frame included in the moving image stream of MPEG2, frame type information (I, P, B), frame offset information, and byte offset information.
[0027]
The frame offset information indicates the number of the frame from the start frame of the MPEG2 video stream, and the byte offset information indicates the byte of the frame from the start of the MPEG2 video stream. . These frame offset information and byte offset information are used as information indicating the start position of each frame included in the moving image stream.
[0028]
Here, the decoding order and the reproduction (presentation) order of the MPEG2 moving image stream will be described.
[0029]
Since the B picture uses the I and P pictures temporally behind it by reference, the order of the frames to be decoded and the order of the frames to be reproduced (presented) in the MPEG2 stream including the B picture. Will be different.
[0030]
Now, the MPEG2 video stream is in the order of the stream.
I, P, B, B, P, B, B, P, B, B, P, B, B, P, B, B I, P, B, B, P, B, B, P, B, B , P, B, B, P, B, B
(GOP = 16 frames).
[0031]
In this case, the decoding order is
I, P, B, B, P, B, B, P, B, B, P, B, B, P, B, B
0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1 (10th digit in order)
1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6 (digits in order 1)
And the playback order is
I, P, B, B, P, B, B, P, B, B, P, B, B, P, B, B
0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1 (10th digit in order)
1,4,2,3,7,5,6,0,8,9,3,1,2,6,4,5 (order 1 digit)
It becomes.
[0032]
In the example of FIG. 2, the frame number indicates the decoding order. In the case of a stream that targets only I and P pictures, the decoding order and the reproduction order do not reverse.
[0033]
B) Output trimming function
The video server 11 refers to the metadata corresponding to the MPEG2 moving image stream whose reproduction is designated by the trick play request (trick play request), and selectively extracts necessary frames from the moving image stream. Generate a video stream for playback. For example, if only an I picture is selected to generate a moving picture stream for trick reproduction, each of the decoders 14 and 15 reproduces the I pictures contained in the moving picture stream in accordance with the output order of the video server 11. Can be. In the trick play in the forward direction, a case where a P picture and a B picture are included in addition to an I picture can be correctly reproduced.
[0034]
C) Stream transmission timing control
The video server 11 can transmit a video stream for trick reproduction from a transmission channel to a corresponding decoder at an arbitrary transmission speed (bps). Depending on the combination of the method of selecting the frame to be trimmed at the time of output and the output speed, trick play images of fast forward and rewind at various double speeds can be obtained. Of course, depending on how to select a frame at the time of trimming, a trick play video with a desired double rate can be obtained even if the frame is transmitted at a normal transmission speed corresponding to the original moving image stream.
[0035]
Next, an outline of the operation of the video server 11 will be described with reference to FIG.
[0036]
At the time of input, the moving image stream obtained by the encoder 13 is parsed, and metadata corresponding to the moving image stream is generated. The metadata is stored in the disk storage device 12 together with the moving image stream, but the data amount of the metadata is sufficiently small as compared with the stream body. For this reason, the required storage size can be greatly reduced as compared with a method in which a number of types of moving image streams dedicated to trick play having different double speed ratios are stored in the disk storage device 12 in advance.
[0037]
At the time of output, by referring to the metadata, a trimming process for extracting a necessary frame from the moving image stream is performed, and a stream is extracted from, for example, only an I picture, and output. In addition to simply extracting only I pictures, a P picture may be extracted from a moving image stream to generate a stream from which only B pictures have been removed.
[0038]
In the case of fast-forwarding at a high speed, if the transmission rate is simply increased, the operation on the decoder side may not catch up and overflow may occur.However, the frame included in the transmission stream for trick play due to trimming processing By reducing the number itself (the amount of data of the transmission stream), it is possible to prevent a failure in the processing on the decoder side.
[0039]
Regarding the use of the CPU 101, parsing an MPEG2 stream is a task that places a burden on the CPU 101. However, once parsing is performed at the time of input, at the time of output, trick play at various speed ratios is performed using the already created metadata. , The transmission of the trick play stream can be started within a limited period of time.
[0040]
Next, an example of a trick play stream generated by the trimming process will be described with reference to FIG.
[0041]
FIG. 4A shows a configuration of a frame group included in the original moving image stream. Now, it is assumed that reverse playback (reverse playback) is performed at 3 × speed. It is assumed that the start point and the end point of the reverse reproduction are designated by the trick play request. In the trimming process, by sequentially tracing the metadata in the reverse direction from the frame position of the designated start point, the frame type of each frame belonging to the start point to the end point is checked. Then, I-pictures are extracted in order from the designated start point.
[0042]
In the original video stream, between the start point and the end point, 0 , I 1 , I 2 When the three I pictures are arranged as shown in FIG. 4A, as shown in FIG. 2 , I 1 , I 0 , A stream for trick play composed of three I-pictures is generated.
[0043]
When only I pictures are extracted from an MPEG2 video stream for a broadcast program to generate a trick play stream, the data size of the generated stream is significantly reduced from the data size of the original video stream. . Although the reduction rate of the data size depends on the original moving image stream, it is assumed that the data size is reduced to about 1/6 of the data size of the original moving image stream. In this case, if the generated stream is transmitted at a transmission speed corresponding to the original moving image stream, the decoder outputs a video image corresponding to the 6 × reverse reproduction. Therefore, if the generated stream is transmitted at half the transmission speed corresponding to the original moving image stream, a video image corresponding to triple speed reverse reproduction is output.
[0044]
That is, the decoder maintains the output of the video corresponding to the currently reproduced frame until the next frame of the currently reproduced frame is received, so that the transmission speed is controlled to, for example, の of the normal rate. If I 2 , I 1 , I 0 Each video is switched in units of 1/15 seconds, not in units of 1/30 seconds. As described above, the transmission speed of the generated trick play stream is determined based on the designated double speed ratio and the data amount of the generated trick play stream.
[0045]
Since the average transmission speed of the stream may be controlled, for example, 2 , I 1 , I 0 By controlling the transmission timing of each data, 2 , I 1 , I 0 Each data may be transmitted intermittently at predetermined time intervals. As described above, in the push mode used in trick play, the decoder sequentially decodes the received frames without referring to the time stamp information, so that it is not necessary to embed time stamp information or the like in the trick play stream.
[0046]
The value of the data amount of the generated trick play stream can be obtained statistically according to which frame type is selected. Therefore, as shown in the table 300 of FIG. 5, the relationship between the frame type to be selected and the transmission speed is indicated by the trick play management information at each of the double speed ratios used in the trick play (a double speed ratio of-indicates reverse playback). Can be specified in advance. Although it is possible to dynamically generate a table 300 according to the characteristics for each moving image frame by parsing at the time of input, in many general applications such as previewing and cueing, a specified double speed is used. Even if the ratio and the actual reproduction speed are slightly different, no problem occurs.
[0047]
Next, a trimming process and a stream sending speed control process performed using the table 300 will be described with reference to FIG.
[0048]
As shown in FIG. 6, the video transmission control program 400 includes a trimming processing unit 401, a transmission stream assembling unit 402, and a stream transmission unit 403.
[0049]
The trimming processing unit 401 determines the type of frame to be selected by referring to the table 300 according to the double speed rate specified in the trick play request, and converts the frame of that frame type into a moving image while referring to the metadata. Extracted sequentially from the image stream. For example, in the example of the table 300 in FIG. 5, in the case of double speed or triple speed reproduction in the forward direction, I and P pictures are extracted from the original MPEG2 video stream, and in the case of quadruple speed reproduction in the forward direction. Only I pictures are extracted from the original MPEG2 video stream. In the case of reverse reproduction, only I pictures are always taken out. The extracted frames are sent to the transmission frame assembling section 402, and the transmission frame assembling section 402 assembles a transmission stream for trick play.
[0050]
The stream transmission unit 403 determines the transmission speed of the transmission frame by referring to the table 300 according to the double speed ratio specified in the trick play request, and transmits the transmission stream obtained by the assembling unit 402 at that speed. Control.
[0051]
Next, the operations at the time of input and at the time of output executed by the video transmission control program 400 will be described with reference to FIGS.
[0052]
The flowchart of FIG. 7 shows the processing at the time of input. The CPU 101 performs the following processing by executing the video transmission control program 400.
[0053]
The CPU 101 analyzes the moving image stream while inputting the MPEG2 moving image stream output from the encoder 13 through the encoder interface unit 105 (step S101), and sets the start position (frame offset) for each frame included in the moving image stream. , Byte offset) and metadata indicating the frame type (I, P, B) (step S102). Then, the CPU 101 stores the created metadata and the moving image stream in the disk storage device 12 in association with each other (step S103).
[0054]
Since the metadata may be actually created before receiving the trick play request, the MPEG2 moving image stream output from the encoder 13 is stored in the disk storage device 12, and then the MPEG2 moving image stream is Analysis may be performed to create metadata.
[0055]
The flowchart of FIG. 8 shows a process at the time of output. When receiving a reproduction request from the operation terminal 16, the CPU 101 determines whether the request is a trick play request or a normal reproduction request (step S201). If the request is a normal reproduction request (NO in step S201), the CPU 101 reads out the moving image stream specified by the normal reproduction request from the disk storage device 12 to the memory 103 through the disk interface unit 106, and then reads the decoder interface unit 107 108, the video stream is transmitted to the decoder 14 or 15 at a normal transmission speed specified by bit rate information or the like embedded in the header portion or the like of the moving image stream (step S202).
[0056]
If the received reproduction request is a trick play request (YES in step S201), the CPU 101 executes a process of generating a transmission stream for trick play from the moving image stream specified by the trick play request (step S203). In step S203, by referring to the table 300, the selected frame type corresponding to the double speed rate specified in the trick play request is determined, and the process of extracting the frame of the frame type from the moving image stream is performed by the trick play request. This is executed using the metadata corresponding to the moving image stream designated by. Next, the CPU 101 determines a transmission speed corresponding to the double speed ratio specified in the trick play request, and transmits the transmission stream created in step S203 at the transmission speed (step S204). In step S203, both the selected frame type and the transmission speed corresponding to the double speed ratio specified in the trick play request may be determined.
[0057]
As described above, it is necessary to operate the decoder in the push mode at the time of trick play. Therefore, when the decoder corresponding to each of the normal mode and the push mode is used, a process of setting the operation mode of the decoder is performed. Is This is shown in the flowchart of FIG.
[0058]
That is, as shown in the flowchart of FIG. 9, if the received reproduction request is a trick play request (YES in step S201), the CPU 101 transmits a predetermined mode setting command to the stream transmission destination decoder. To set the decoder to the push mode (step S211). If the received reproduction request is a normal reproduction request (NO in step S201), the CPU 101 sets another decoder to the stream transmission destination to the normal mode by transmitting another mode setting command to the decoder (step S201). S212).
[0059]
The flowchart of FIG. 10 shows the procedure of the transmission stream generation processing executed in step S203 of FIG.
[0060]
After determining the frame type to be selected, the CPU 101 detects the frame type in the moving image stream by referring to the metadata in order from the trick play start point specified by the trick play request, and transmits the frame. It is determined whether the frame type is necessary for generating a stream (step S301). If the frame is a frame type necessary for generating a transmission stream (YES in step S301), the CPU 101 adds the data of the frame to a transmission stream generation buffer prepared in the memory 103 (step S302). ). If the frame type is not necessary for generating the transmission stream (NO in step S301), the processing in step S302 is skipped.
[0061]
Thereafter, the CPU 101 repeats the processing of the above-described steps S301 and S302 until the processing for the frame at the end point is completed while incrementing (decrementing at the time of reverse reproduction) the frame position referring to the metadata (step S303). (Step S304).
[0062]
As described above, according to the present embodiment, tricks are generated by using a mechanism in which metadata is generated from a moving image stream at the time of input, and a stream for trick play is generated at the time of output. The required disk capacity can be greatly reduced as compared with a method in which moving image data dedicated to play is prepared on a storage in advance. In addition, since the double speed ratio is controlled by using the trimming process and the transmission speed control together, at the time of output, a simple trimming process of extracting a frame of a specific frame type from the original moving image stream is performed. It is possible to realize trick play with a high speed ratio.
[0063]
In this example, the operation mode of the MPEG2 stream is set on the premise that a normal MPEG2 decoder that executes normal reproduction of the MPEG2 stream in accordance with time information is used. By using a method of transmitting a stream for trick play to a decoder dedicated to trick play that executes an operation of decoding, trick play can be realized without setting an operation mode of the decoder.
[0064]
Next, with reference to FIG. 11, priority control between normal reproduction and trick play will be described.
[0065]
As described above, the video decoder 11 can perform the normal reproduction and the trick play at the same time by using a plurality of stream transmission channels. In this case, in this embodiment, by controlling the allocation of resources including the CPU 101 and the memory 103, the resource generation and transmission processing for trick play is prioritized and the resource transmission processing for normal reproduction is performed. Resource management is performed.
[0066]
In other words, even if the output of the image of the trick play is delayed and operates slightly lower than the given double speed rate, the user does not feel much discomfort. That is, even if the 3 × fast forward is slightly delayed to 2.5 ×, for example, it does not become a fatal problem. On the other hand, a delay in the reproduction speed of a video for normal reproduction is not actually allowed. As described above, in the video server 11 capable of performing trick play, it is important to control the priority according to the stream type.
[0067]
By incorporating a priority control mechanism for resource allocation in the video transmission control program 400 of the video server 11 or in the OS, for example, control is performed to lower the priority of trick play I / O and output. I can do it. That is, the video server 11 is provided with a large-capacity buffer memory on the memory 103 or on a dedicated memory in order to absorb the fluctuation of the I / O of the disk storage device 12 functioning as a storage. Priority is set, and a high priority is set to a thread that performs I / O, and stable transmission is performed. Priority is set between multiple transmission streams, and the use of a memory buffer area is suppressed for transmission for trick play (or memory management is performed so that a free area is acquired in a timely manner). By setting the execution priority lower than that of a normal thread, it is possible to construct a stable video server that does not affect other stream input / output even during trick play.
[0068]
Note that the configuration of the video server 11 can also be applied to a video-on-demand system that distributes a moving image stream to a client terminal via a network. In this case, the decoder can be provided in the client terminal. The reproduction request (normal reproduction request, trick play request) is transmitted from the client terminal to the video server 11 via the network.
[0069]
When the client terminal sends a trick play request, the decoder of the client terminal is automatically set to the push mode. In this case, the video server 11 can freely control the transmission speed of the generated trick play moving image stream without considering the operation mode of the decoder.
[0070]
In addition, the present invention is not limited to the above embodiments as they are, and can be embodied by modifying constituent elements in an implementation stage without departing from the scope of the invention. Various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the above embodiments. For example, some components may be deleted from all the components shown in the embodiment. Further, components of different embodiments may be appropriately combined.
[0071]
【The invention's effect】
As described in detail above, according to the present invention, it is possible to easily realize trick play of a moving image stream without preparing a moving image stream generated exclusively for trick play in a storage medium such as a disk storage in advance. Becomes possible.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a video server according to an embodiment of the present invention.
FIG. 2 is an exemplary view showing an example of a data structure of metadata generated by the video server of the embodiment.
FIG. 3 is an exemplary view for explaining operations at the time of input and at the time of output executed by the video server of the embodiment.
FIG. 4 is an exemplary view showing an example of a trick play stream generated by the video server of the embodiment.
FIG. 5 is an exemplary view showing an example of a management information table held in the video server of the embodiment.
FIG. 6 is an exemplary view for explaining stream generation and transmission processing executed by the video server of the embodiment using the management information table of FIG. 5;
FIG. 7 is an exemplary flowchart illustrating the procedure of processing executed by the video server according to the embodiment at the time of input.
FIG. 8 is an exemplary flowchart illustrating the procedure of processing executed by the video server according to the embodiment at the time of output.
FIG. 9 is an exemplary flowchart describing the operation mode setting process of the decoder which is executed by the video server of the embodiment when outputting.
FIG. 10 is an exemplary flowchart illustrating the procedure of a transmission stream generation process executed by the video server of the embodiment.
FIG. 11 is an exemplary view for explaining a priority control process executed by the video server of the embodiment.
[Explanation of symbols]
11 video server, 12 disk storage device, 13 encoder, 14, 15 decoder, 16 operation terminal, 101 CPU, 103 memory, 105 encoder interface unit, 106 disk interface unit, 107, 108 Decoder interface unit.

Claims (8)

記憶メディアに格納された動画像ストリームを送出する画像データ送出装置において、
フレーム内符号化およびフレーム間予測符号化を用いて圧縮符号化された動画像ストリームを入力する手段と、
前記入力された動画像ストリームを解析して、当該動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報を生成する手段と、
前記入力された動画像ストリームおよび前記生成された制御情報を前記記憶メディアに格納する手段と、
前記動画像ストリームの特殊再生要求に応答して、前記動画像ストリームに対応する制御情報に基づき、前記記憶メディアに格納された動画像ストリームから少なくともフレーム内符号化フレームを含む所定のフレーム種別のフレームを選択的に取得することにより、特殊再生用の動画像ストリームを生成するストリーム生成手段とを具備することを特徴とする画像データ送出装置。
In an image data transmitting apparatus for transmitting a moving image stream stored in a storage medium,
Means for inputting a video stream compressed and encoded using intra-frame encoding and inter-frame predictive encoding,
Means for analyzing the input video stream and generating control information indicating a start position and a frame type for each frame included in the video stream;
Means for storing the input video stream and the generated control information in the storage medium,
In response to a special playback request for the video stream, a frame of a predetermined frame type including at least an intra-coded frame from the video stream stored on the storage medium based on control information corresponding to the video stream. And a stream generating means for generating a moving image stream for special reproduction by selectively acquiring the image data.
前記ストリーム生成手段によって生成された特殊再生用の動画像ストリームが前記特殊再生要求で指定された倍速率と前記生成された特殊再生用の動画像ストリームのデータ量とに基づいて規定される所定の送出速度で送出されるように、前記特殊再生用の動画像ストリームの送出速度を制御する送出速度制御手段とをさらに具備することを特徴とする請求項1記載の画像データ伝送装置。A predetermined moving image stream for trick play generated by the stream generating means is specified based on a double speed rate specified in the trick play request and a data amount of the generated moving image stream for trick play. 2. The image data transmission apparatus according to claim 1, further comprising a transmission speed control unit that controls a transmission speed of the moving image stream for trick play so as to be transmitted at a transmission speed. 特殊再生で使用される倍速率毎に、送出対象とすべきフレーム種別とストリーム送出速度とを規定する管理情報を記憶する手段をさらに具備し、
前記ストリーム生成手段は、前記管理情報と前記特殊再生要求で指定された倍速率とに基づいて、前記記憶メディアに格納された動画像ストリームから取得すべきフレーム種別を決定する手段と、前記制御情報に基づいて、前記決定されたフレーム種別のフレーム群を前記動画像ストリームから取得することによって、前記特殊再生用の動画像ストリームを生成する手段とを含み、
前記送出速度制御手段は、前記管理情報と前記特殊再生要求で指定された倍速率とに基づいて、前記特殊再生用の動画像ストリームの送出速度を制御する手段とを含むことを特徴とする請求項2記載の画像データ送出装置。
Further comprising means for storing management information for defining a frame type to be transmitted and a stream transmission speed for each double speed rate used in the trick play;
The stream generation unit determines a frame type to be obtained from a moving image stream stored in the storage medium based on the management information and a double speed rate specified in the trick play request; Means for generating a video stream for the trick play by acquiring a frame group of the determined frame type from the video stream based on the
The transmission speed control unit includes a unit that controls a transmission speed of the moving image stream for trick play based on the management information and a double speed rate specified in the trick play request. Item 3. The image data transmitting device according to Item 2.
前記特殊再生用の送出ストリームに含まれるフレーム群がその受信タイミングに合わせて順次デコードされるように、前記特殊再生用の送出ストリームの送出先となるデコーダを制御する手段をさらに具備することを特徴とする請求項1記載の画像データ送出装置。Means for controlling a decoder to which the transmission stream for trick play is transmitted so that a frame group included in the transmission stream for trick play is sequentially decoded in accordance with its reception timing. 2. The image data transmitting device according to claim 1, wherein: 前記記憶メディアに格納された動画像ストリームをその動画像ストリームに対応する所定の送出速度で送出する通常送出処理を実行する手段と、
前記画像データ送出装置に設けられたプロセッサおよびメモリを含むリソースの割り当てを制御し、前記ストリーム生成手段による前記特殊再生用の動画像ストリームの生成処理よりも優先して前記通常送出処理に対して前記リソースを割り当てるリソース管理手段とをさらに具備することを特徴とする請求項1記載の画像データ送出装置。
Means for performing a normal transmission process of transmitting a moving image stream stored in the storage medium at a predetermined transmission speed corresponding to the moving image stream;
Controlling the allocation of resources including a processor and a memory provided in the image data transmission apparatus, and giving priority to the normal transmission processing with respect to the special reproduction moving image stream generation processing by the stream generation means. 2. The image data transmitting apparatus according to claim 1, further comprising a resource management unit for allocating resources.
記憶メディアに格納された動画像ストリームを送出する画像データ送出装置において、
フレーム内符号化およびフレーム間予測符号化を用いて圧縮符号化された動画像ストリームを入力する手段と、
前記入力された動画像ストリームを解析して、当該動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報を生成する手段と、
前記入力された動画像ストリームおよび前記生成された制御情報を前記記憶メディアに格納する手段と、
前記動画像ストリームの特殊再生で使用される倍速率毎に送出対象とすべきフレーム種別とストリーム送出速度との関係を示す管理情報を記憶する手段と、
前記動画像ストリームの特殊再生要求を受けた場合、その特殊再生要求で指定される倍速率と前記管理情報とに基づいて、前記動画像ストリームから取り出すべきフレーム種別およびストリーム送出速度を決定する手段と、
前記決定されたフレーム種別のフレームを前記制御情報に基づいて前記動画像ストリームから取り出すことにより、特殊再生用の動画像ストリームを生成する手段と、
前記生成された特殊再生用の動画像ストリームを前記決定されたストリーム送出速度で送出する手段とを具備することを特徴とする画像データ送出装置。
In an image data transmitting apparatus for transmitting a moving image stream stored in a storage medium,
Means for inputting a video stream compressed and encoded using intra-frame encoding and inter-frame predictive encoding,
Means for analyzing the input video stream and generating control information indicating a start position and a frame type for each frame included in the video stream;
Means for storing the input video stream and the generated control information in the storage medium,
Means for storing management information indicating a relationship between a frame type to be transmitted and a stream transmission speed for each double speed used in the trick play of the moving image stream;
Means for determining a frame type and a stream transmission speed to be taken out from the moving image stream based on the double speed rate and the management information specified in the special reproduction request when a special reproduction request for the moving image stream is received; ,
Means for generating a video stream for special reproduction by extracting a frame of the determined frame type from the video stream based on the control information;
Means for transmitting the generated special reproduction moving image stream at the determined stream transmission speed.
記憶メディアに格納された動画像ストリームを送出する画像データ送出方法であって、
フレーム内符号化およびフレーム間予測符号化を用いて圧縮符号化された動画像ストリームを入力するステップと、
前記入力された動画像ストリームを解析して、当該動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報を生成するステップと、
前記入力された動画像ストリームおよび前記生成された制御情報を前記記憶メディアに格納するステップと、
前記動画像ストリームの特殊再生要求に応答して、前記動画像ストリームに対応する制御情報に基づき、前記記憶メディアに格納された動画像ストリームから、少なくともフレーム内符号化フレームを含む所定のフレーム種別のフレームを選択的に取得することにより、特殊再生用の動画像ストリームを生成するストリーム生成ステップとを具備することを特徴とする画像データ送出方法。
An image data transmission method for transmitting a moving image stream stored in a storage medium, comprising:
Inputting a video stream compressed and encoded using intra-frame encoding and inter-frame predictive encoding;
Analyzing the input video stream, generating control information indicating the start position and frame type for each frame included in the video stream,
Storing the input video stream and the generated control information in the storage medium;
In response to a special playback request for the moving image stream, based on control information corresponding to the moving image stream, a predetermined frame type including at least an intra-coded frame from a moving image stream stored in the storage medium. A stream generating step of generating a moving image stream for special reproduction by selectively acquiring a frame.
記憶メディアに格納された動画像ストリームを送出する画像データ送出方法において、
フレーム内符号化およびフレーム間予測符号化を用いて圧縮符号化された動画像ストリームを入力するステップと、
前記入力された動画像ストリームを解析して、当該動画像ストリームに含まれるフレーム毎にその開始位置およびフレーム種別を示す制御情報を生成するステップと、
前記入力された動画像ストリームおよび前記生成された制御情報を前記記憶メディアに格納するステップと、
前記動画像ストリームの特殊再生要求を受けた場合、前記動画像ストリームの特殊再生で使用される倍速率毎に送出対象とすべきフレーム種別とストリーム送出速度との関係を示す管理情報と、前記特殊再生要求で指定された倍速率とに基づいて、前記動画像ストリームから取り出すべきフレーム種別およびストリーム送出速度を決定するステップと、
前記決定されたフレーム種別のフレームを前記制御情報に基づいて前記動画像ストリームから取り出すことにより、特殊再生用の動画像ストリームを生成するステップと、
前記生成された特殊再生用の動画像ストリームを前記決定されたストリーム送出速度で送出するステップとを具備することを特徴とする画像データ送出方法。
In an image data transmission method for transmitting a moving image stream stored in a storage medium,
Inputting a video stream compressed and encoded using intra-frame encoding and inter-frame predictive encoding;
Analyzing the input video stream, generating control information indicating the start position and frame type for each frame included in the video stream,
Storing the input video stream and the generated control information in the storage medium;
When a special playback request for the moving image stream is received, management information indicating a relationship between a frame type to be transmitted and a stream transmission speed for each double speed used in the special reproduction of the moving image stream; Determining a frame type and a stream transmission speed to be extracted from the moving image stream based on the double speed rate specified in the reproduction request;
Generating a video stream for special reproduction by extracting a frame of the determined frame type from the video stream based on the control information;
Transmitting the generated moving image stream for trick play at the determined stream transmission speed.
JP2003080750A 2003-03-24 2003-03-24 Image data transmitting apparatus and image data transmitting method Expired - Fee Related JP3749715B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003080750A JP3749715B2 (en) 2003-03-24 2003-03-24 Image data transmitting apparatus and image data transmitting method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003080750A JP3749715B2 (en) 2003-03-24 2003-03-24 Image data transmitting apparatus and image data transmitting method

Publications (2)

Publication Number Publication Date
JP2004289629A true JP2004289629A (en) 2004-10-14
JP3749715B2 JP3749715B2 (en) 2006-03-01

Family

ID=33294521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003080750A Expired - Fee Related JP3749715B2 (en) 2003-03-24 2003-03-24 Image data transmitting apparatus and image data transmitting method

Country Status (1)

Country Link
JP (1) JP3749715B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007082029A (en) * 2005-09-16 2007-03-29 Toshiba Corp Video server device and its reproduction method
KR100877077B1 (en) 2005-08-22 2009-01-07 한국전자통신연구원 Data Stream Generating and Receiving Method and Apparatus thereof
US8239895B2 (en) 2005-08-22 2012-08-07 Electronics And Telecommunications Research Institute PMCP extension metadata, data stream generating device, digital data broadcasting emission system and digital data broadcasting emission method thereof
JP2013222982A (en) * 2012-04-12 2013-10-28 Toshiba Corp Video server and video signal output control method thereof
CN116320431A (en) * 2023-03-20 2023-06-23 段俊杰 Video compression coding data dynamic wireless network transmission system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100877077B1 (en) 2005-08-22 2009-01-07 한국전자통신연구원 Data Stream Generating and Receiving Method and Apparatus thereof
US8239895B2 (en) 2005-08-22 2012-08-07 Electronics And Telecommunications Research Institute PMCP extension metadata, data stream generating device, digital data broadcasting emission system and digital data broadcasting emission method thereof
JP2007082029A (en) * 2005-09-16 2007-03-29 Toshiba Corp Video server device and its reproduction method
JP4718944B2 (en) * 2005-09-16 2011-07-06 株式会社東芝 Video server apparatus and reproducing method thereof
JP2013222982A (en) * 2012-04-12 2013-10-28 Toshiba Corp Video server and video signal output control method thereof
CN116320431A (en) * 2023-03-20 2023-06-23 段俊杰 Video compression coding data dynamic wireless network transmission system
CN116320431B (en) * 2023-03-20 2024-03-01 深圳市与众文化传播有限公司 Video compression coding data dynamic wireless network transmission system

Also Published As

Publication number Publication date
JP3749715B2 (en) 2006-03-01

Similar Documents

Publication Publication Date Title
JP4538908B2 (en) Data conversion apparatus and method
EP1239674B1 (en) Recording broadcast data
US8413197B2 (en) Video delivery device, video receiver and key frame delivery method
JP3825719B2 (en) Image reproduction method, image reproduction apparatus, and image recording apparatus
US20070217759A1 (en) Reverse Playback of Video Data
WO2005062614A1 (en) Video data processing method and vide data processing device
JP2000115772A (en) Method and device for adaptive synchronization for reproduction of digital video and audio data in multimedia reproduction system
JPH10200494A (en) Data transmission system and data transmitting method
US20200267423A1 (en) Method for initiating a transmission of a streaming content delivered to a client device and access point for implementing this method
JP2000125260A (en) Moving picture transmission server, moving picture transmission system using the server and moving picture transmission control method
JP2008029006A (en) Client device, communication system and data processing method
JP5282383B2 (en) Content reproduction apparatus, content reproduction method, program, and content reproduction system
CN115243074A (en) Video stream processing method and device, storage medium and electronic equipment
CN109845280A (en) Audio and video playing method and device based on Streaming Media
JP4613860B2 (en) MPEG encoded stream decoding apparatus
TW201138464A (en) Network device, information processing apparatus, stream switching method, information processing method, program, and content distribution system
JP2005303925A (en) Stream data transmission device, stream data receiving device, and recording medium storing processing programs making computer execute these programs
JP4373730B2 (en) Video data transmission apparatus, video data transmission / reception system, and method thereof
JP3749715B2 (en) Image data transmitting apparatus and image data transmitting method
JP2009111881A (en) Video reproducing apparatus, video reproducing method, and video reproduction-processing program
JP4295079B2 (en) Special video data processing method, special video data processing apparatus and special video data processing system
JP4491918B2 (en) Data distribution apparatus and method, data distribution system
US20070122123A1 (en) Data Transmission Method And Apparatus
JP4718944B2 (en) Video server apparatus and reproducing method thereof
JP2006339980A (en) Image reproducer

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050926

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051202

LAPS Cancellation because of no payment of annual fees