JP4994698B2 - 情報伝送装置及び情報伝送方法 - Google Patents

情報伝送装置及び情報伝送方法 Download PDF

Info

Publication number
JP4994698B2
JP4994698B2 JP2006111360A JP2006111360A JP4994698B2 JP 4994698 B2 JP4994698 B2 JP 4994698B2 JP 2006111360 A JP2006111360 A JP 2006111360A JP 2006111360 A JP2006111360 A JP 2006111360A JP 4994698 B2 JP4994698 B2 JP 4994698B2
Authority
JP
Japan
Prior art keywords
data
frame
code amount
encoded
amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006111360A
Other languages
English (en)
Other versions
JP2007288364A (ja
JP2007288364A5 (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2006111360A priority Critical patent/JP4994698B2/ja
Priority to US11/689,338 priority patent/US8923410B2/en
Priority to KR20070032217A priority patent/KR100883811B1/ko
Priority to EP07106115.4A priority patent/EP1845690B1/en
Priority to CNB2007100982128A priority patent/CN100559876C/zh
Publication of JP2007288364A publication Critical patent/JP2007288364A/ja
Priority to KR1020080101418A priority patent/KR100920195B1/ko
Publication of JP2007288364A5 publication Critical patent/JP2007288364A5/ja
Application granted granted Critical
Publication of JP4994698B2 publication Critical patent/JP4994698B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、単位時間当たりの発生量が変化するデータを送信する情報伝送装置及び方法に関し、特にデータを効率よく送信可能な情報伝送装置及び方法に関する。
データの符号化効率は、符号化するデータの特性と、利用する符号化方式の特性に応じて少なからず変化する。しかし、符号化データを利用する装置の能力を超える量の符号化データを送信することは望ましくない。そのため、符号化の品質等を制御して、符号化データ量の変動を抑制し、安定したデータ送信を実現するなどの方法が提案されている。
例えば、特許文献1においては、画像をフレーム単位で符号化する際、符号化データの閾値を超過した部分を、時間的に先行する、符号量が閾値を超過していないフレームの符号化データに多重化して送信する。そして、閾値を超えない量の残りの符号化データを、通常通りに送信することで、符号化データ量の多いフレームの画質劣化を抑制しながら、伝送されるデータ量を閾値内に収めることのできる画像データ転送装置が開示されている。
図4は、従来の画像データ転送装置の構成例を示すブロック図である。
入力端子4101から入力されたアナログ原画像データ(動画像)をA/D変換器4102にてディジタル動画像データに変換して、フレームメモリ4103に蓄積する。フレームメモリ4103に蓄積されたディジタル動画像データは、適宜読み出され、符号化器4104へ入力される。
符号化器4104は、入力されるディジタル動画像データを所定の方法で符号化する。同時に、符号化フレーム毎にフレーム番号を生成し、スイッチ4108と主フレーム番号生成装置4112へ出力する。
符号化データは、フレーム単位で、スイッチ(SW)4108を介して、メモリ1〜N(4109〜4111)の1つに記憶される。ここで、スイッチ4108は、符号化器4104にて符号化されたフレームの番号をXとし、X/Nの剰余をnとすると、フレーム番号Xの符号化データがメモリn+1に記憶されるように切り替わる。
つまり、現在メモリに記憶されようとしている最新の符号化フレームの番号が、33(X=33)、メモリの総数5(N=5)と仮定すると、n+1=4となる。従って、スイッチ4108は、フレーム番号33に対応する符号化データが、メモリ4に記憶されるように切り替わる。
上述の規則で記憶先のメモリを切り替えた場合、フレーム番号33の符号化データがメモリ4に記憶された時点では、メモリ3にはフレーム番号32、メモリ2にはフレーム番号31、メモリ1にはフレーム番号30、メモリ5にはフレーム番号29の符号化フレームがそれぞれ記憶されている。
以上説明したように、符号化フレーム毎に符号化器4104にて生成されるフレーム番号Xとメモリの総数Nとからn+1が演算され、n+1の値により、スイッチ4108が切り替わる。これにより、符号化フレームが、メモリ1〜メモリNに順次記憶される。
メモリ1〜メモリN(4109〜4111)から読み出され、多重化装置4116へ出力される符号化フレームのフレーム番号は、主フレーム番号生成装置4112から出力された主フレーム番号Xnextで表される。
フレーム番号Xnextに対応する符号化フレームは、m+1番目のメモリに格納されている符号化フレームに該当する。
mは、主フレーム番号XnextをN(メモリの数)で割った剰余である。また、主フレーム番号Xnextは、現在のフレーム番号Xと(N-1)との差分で表されるので、X=33,N=5と仮定すると、Xnext=29となる。
つまり、主フレームは、メモリ1〜Nの中で、最初に記憶された(あるいは最古の)符号化フレームとなる。
シーンチェンジ・フレーム番号生成回路4115では、符号化器4104で符号化され、メモリ1〜N(ここでは、N=5とする)に記憶される現在の符号化フレームの符号量を閾値と比較し、閾値を超過する符号量を持つフレームを検出する。
閾値を超過する符号量を持つフレームを検出した場合、シーンチェンジ・フレーム番号生成回路4115は、そのフレームをシーンチェンジ・フレームであると判定する。そして、そのフレームのフレーム番号Xcをシーンチェンジ・フレーム番号生成回路4115にNフレーム(の例では、N=5)期間保持する。さらに、シーンチェンジ・フレーム番号Xcを、セレクタ・スイッチ4114と、多重化装置4116へ出力する。
セレクタ・スイッチ4114では、シーンチェンジ・フレーム番号Xcから算出されるメモリk+1の内容がシーンチェンジ・フレームに対応する符号化フレームであると解釈する。そして、メモリ1〜Nの中からメモリk+1の内容の任意の一部分を読み出す。
なお、ここで、kはシーンチェンジ・フレーム番号Xcをメモリの総数Nで割った剰余である。
ここで、図5(a)に示すようにXc=33と仮定すると、フレーム番号33に対応する符号化フレームが、シーンチェンジ・フレームの符号化データと判定されたことになる。従って、その格納先であるメモリ4(k+1=4)の内容の一部分が、主フレーム番号Xnextに該当する符号化フレームのデータ(メモリ5の内容)と並行して、同時に読み出される。
読み出されたメモリ4の内容とメモリ5の内容は、多重化装置4116にて多重化され、バッファメモリ4105に格納される。そして、順次読み出されて記録装置4106へ入力される。
記録装置4106へ入力された多重化データは、記録装置4106の制御により、記録メディア4107へ記録される。
シーンチェンジ・フレーム(フレーム番号Xc=33)と判定されたフレームの符号化データの分割と、分割された符号化データの主フレーム(フレーム番号Xnext=29)への多重化は、シーンチェンジ・フレーム番号生成回路4115がシーンチェンジを検出してから(N−1)回実施される。
従って、フレーム番号33に対応する符号化データの一部(メモリ4の内容の一部)は、図5(b)に示すように、フレーム番号29(メモリ5の内容)に引き続く他のフレームの符号化データにも多重化される。具体的には、フレーム番号30(メモリ1の内容)、フレーム番号31(メモリ2の内容)、フレーム番号32(メモリ3の内容)と同時に読み出され、多重化装置4116へ入力される。
4つの主フレームと組み合わされる、シーンチェンジ・フレームの符号化データのうち、他フレームの符号化データと多重化される部分をどのようにして決定するかには特に制限はない。
シーンチェンジ・フレームであるフレーム番号33に対応する符号化データが、主フレーム(Xnextに該当)として出力される際には、先行フレームに多重化されて既に送信された部分を除いた残りの符号化データが、主フレームの符号化データとして送信される。
特許第2675130号公報
このような従来の画像データ転送装置では、書き込みデータ速度が固定で、かつ安定している記録メディアへ記録を行う際の伝送データ量制御を目的としたものである。そのため、バッファメモリ4108から読み出された符号化データが記録装置に至るまでの伝送路の品質が動的に変化するような環境については想定されていない。
そのため、シーンチェンジフレームを検出するための閾値は固定とされている。伝送路の品質が良い場合にはそれでも問題がないが、品質が低下した状態では、閾値未満の符号化データ量であってもバッファメモリがオーバフローしてしまう可能性がある。
また、閾値から超過した分の符号量は、先行する複数のフレームに均等に割り振っている(図5(b)参照)。そのため、先行するフレームの符号化データ量が少なく、より多くの符号化データを多重化可能であっても、決まった量の符号化データのみしか多重化できない。従って、伝送帯域の利用効率を常時高いレベルに維持することができない。また、多重化先のフレームの符号化データ量が閾値に近い場合には、多重化できない符号化データが存在する可能性もある。
このように、従来技術の伝送制御方法を、伝送品質が動的に変化する伝送路、例えば無線通信回線を利用してデータ伝送を行う通信装置のデータ伝送制御にそのまま適用することは困難であった。
本発明はこのような従来技術の問題点に鑑みなされたものであり、その目的は、時間当たりの発生量が変化するデータを効率よく伝送することのできる情報伝送装置及び情報伝送方法を提供することにある。
上述の目的は、単位時間当たりの発生量が変化するデータを伝送する情報伝送装置であって、単位時間毎に発生するデータを記憶単位として複数単位記憶する記憶手段と、複数の記憶単位に記憶されたデータの、所定の閾値からの符号量余裕を算出する算出手段と、閾値を超えるデータ量を有する記憶単位について、閾値を超える分のデータを、記憶手段に記憶されている複数記憶単位のうち、符号量余裕が大きいものから順に分配するデータ量制御手段と、記憶手段に記憶されたデータを送信する通信手段とを有することを特徴とする本発明の情報伝送装置によって達成される。
また、上述の目的は、単位時間当たりの発生量が変化するデータを伝送する情報伝送方法であって、記憶手段が、単位時間毎に発生するデータを記憶単位として記憶装置に複数単位記憶する記憶ステップと、複数の記憶単位に記憶されたデータの、所定の閾値からの符号量余裕を算出する算出ステップと、分配手段が、閾値を超えるデータ量を有する記憶単位について、閾値を超える分のデータを、記憶装置に記憶されている複数記憶単位のうち、符号量余裕が大きいものから順に分配するデータ量制御ステップと、通信手段が、記憶手段に記憶されたデータを送信する通信ステップとを有することを特徴とする本発明の情報伝送方法によっても達成される。
このような構成により、本発明による情報伝送装置は、時間当たりの発生量が変化するデータを効率よく伝送することができる。
以下、図面を参照して本発明をその好適な実施形態に基づき詳細に説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態に係る情報伝送装置の一例としての画像符号化伝送装置の構成例と、画像符号化伝送装置を用いた情報伝送システムの構成例を示すブロック図である。すなわち、本実施形態では、単位時間当たりの発生量が変化するデータとして、画像データを伝送する情報伝送装置を説明する。
画像符号化伝送装置100の入力端子1001に入力された動画像信号(アナログ原画像)は、A/D変換器1002にてディジタル動画像データに変換された後、一時的にフレームメモリ1003に蓄積される。ここで、入力端子1001にディジタル動画像データが入力される場合は、A/D変換器1002をバイパスしたり、A/D変換器1002を削除した構成としたりすることができる。
フレームメモリ1003に蓄積されたディジタル動画像データは、フレーム等の単位で読み出されて、符号化器1004へ入力される。符号化器1004は、ディジタル動画像データを所定の符号化方法に従って圧縮・符号化し、符号化フレームとして、スイッチ1008と、符号量検出回路1016へ出力する。ここで、フレームメモリ1003から読み出され、符号化器1004にて符号化される画像データの単位は、フレームの他、スライスやマクロブロック単位であっても良い。
また、符号化器1004は、符号化フレームを出力する際、同時に符号化フレームに対するフレーム番号を生成し、主フレーム番号生成装置1012、スイッチ(SW)1008、および符号量検出回路1016へそれぞれ出力する。
スイッチ1008は、符号化器1004から出力されたフレーム番号に基づいて、符号化器1004から出力された符号化フレームを、N個のメモリ1009〜1011のうち、1つを選択する。これにより、符号化フレームは、メモリ1009〜1011のいずれかに記憶される。
ここで、スイッチ1008がメモリ1(1009)〜メモリN(1011)の1つをどのようにして選択するかについて説明する。
本実施形態においてメモリ1〜N(1009〜1011)は、それぞれが符号化フレーム1枚分を記憶するように構成される。換言すれば、メモリ1〜Nの各々は、単位時間毎(ここではフレーム毎)に発生するデータを記憶単位として記憶する。符号化器1004から出力される符号化フレームのフレーム番号をXとすると、その符号化フレームが記憶されるメモリ番号Lは、(X/N)の剰余に1を加算したものに等しい。すなわち、L=(X mod N)+1である。
以後、図11に示すフローチャートを用いて、本実施形態における多重化ファイル生成処理について説明する。なお、以下では、説明及び理解を容易にするため、メモリの総数Nを5とする。この場合、例えば、符号化器1004から出力された符号化フレームに対応するフレーム番号Xが41であれば、41/5の剰余は、1であるから、L=1+1=2となる。従って、スイッチ1008は、符号化器1004の出力をメモリ2(1100)の入力に接続し、フレーム番号41の符号化フレームは、メモリ2に記憶される。
一方、符号量検出回路1016では、符号化器1004に於ける発生符号量と比較を行う為の閾値T(又は送信ビットレートR)を、制御装置1006から取得する(ステップS101)。本実施形態において、この閾値Tは、後述するように、制御装置1006が動的に決定する符号量の最適値である。そして、符号量検出回路1016は、入力された符号化フレームの符号量Sを算出し、符号量Sを閾値Tと比較する(ステップS103)。
比較の結果、S≦Tと判定された場合(ステップS105,N)、符号量検出回路1016は、閾値Tと符号化フレームの符号量Sとの差分値(T−S)を算出する。そして、符号化フレームに対応するフレーム番号と共に、差分値を差分マップ1017へ符号量余裕として記憶する(ステップS113)。
一方、比較の結果、S>Tと判定された場合(ステップS105,Y)、符号量検出回路1016は、フレーム番号をセレクタスイッチ1014と、多重化・ファイル化装置1015へ出力する。同時に、差分マップ1017に対して、フレーム番号と、(符号量余裕無しを意味する)任意に定義した数値を記憶する。そして、後述するように、閾値Tを超過した部分の割り当て処理を行なう(ステップS107)。
ここで、説明の便宜上、
メモリ1:フレーム番号40に該当する符号化フレーム
メモリ2:フレーム番号41に該当する符号化フレーム
メモリ3:フレーム番号37に該当する符号化フレーム
メモリ4:フレーム番号38に該当する符号化フレーム
メモリ5:フレーム番号39に該当する符号化フレーム
をそれぞれ記憶しているものとする。
つまり、現在(最新)のフレームは、フレーム番号41の符号化フレームで、メモリ2に記憶されている。
最新の符号化フレームに対応するフレーム番号X(=41)が符号化器1004から主フレーム番号生成装置1012へ入力されると、次に読み出されるメモリ番号Xnextが算出される。
次に読み出されるメモリは、最も過去に書き込まれた符号化フレームを記憶するメモリである。メモリ番号Xnextの計算式は、
Xnext = (最新の符号化フレームのフレーム番号X)−(N−1)---(1)
で表される。
従って、X=41、N=5の場合、Xnext = 37となり、フレーム番号X=37に該当する符号化フレームが格納されているメモリが次に読み出される。前述したように、メモリ番号Lは、L=(X mod N)+1で求まるから、次はメモリ3が読み出されることになる。
ここで、最新の符号化フレームの符号量、即ちフレーム番号41に対応する符号化フレームの符号量Sが、符号量検出回路1016にて閾値Tの比較の結果、S≦Tであると判定されたとする(ステップS105,N)。この場合、符号量検出回路1016は、セレクタスイッチ1013に対して、メモリ3を選択する指示し、セレクタスイッチ1014に対しては、GND(レベル0)を出力するように指示する。また、符号量検出回路1016は、(T−S)を符号量余裕として算出し、フレーム番号41と対応付けて差分マップ1007に記憶する(ステップS113)。
セレクタスイッチ1013を介して出力されたメモリ3の内容、即ちフレーム番号37に対応する符号化フレームは、多重化・ファイル化装置1015へ入力される。
一方、セレクタスイッチ1014からの出力はゼロなので、セレクタスイッチ1013からの出力(メモリ3の内容)であるフレーム番号37に対応する符号化フレームのみが多重化ファイル化装置1015へ供給される。多重化ファイル化装置1015は、この符号化フレームをメディアデータとしてISOファイル形式に準拠したファイル化(パッキング)を行い、送信バッファ1005に一時記憶する(ステップS115)。
一方、即ちフレーム番号41に対応する符号化フレームの符号量Sが、符号量検出回路1016にて閾値Tの比較の結果、S>Tであると判定されたとする(ステップS105,Y)。この場合、符号量検出回路1016は、少なくとも(S−T)に相当する符号量を、フレーム番号41よりも先に表示される先行フレームの1つ以上に多重化して送信するための割り当て処理を行なう(ステップS107)。
以下、符号量が閾値を超過した符号化フレームの分割、割り当て処理について詳細に説明する。
符号量検出回路1016は、次に読み出されるフレーム番号Xnext(ここでは37)を取得する。フレーム番号Xnextは、上述の式(1)から符号量検出回路1016が求めてもよいし、主フレーム番号生成装置1012から取得しても良い。或いは、制御装置1006から通知されても良い。
そして、符号量検出回路1016は、取得したXnextから、出力の順序で(N−1)フレーム分の、符号量余裕(MX)とフレーム番号Xとを差分マップ1017から読み出す。すなわち、ここでは、Xnext=37、N−1=4であるから、フレーム番号37〜40の符号量余裕を読み出す。
メモリ番号と記憶するフレーム番号X、符号量余裕と出力順序との関係を以下に示す。
メモリ番号 フレーム番号 符号量余裕 出力順序
1 40 M1 4
2 41 ---- 5(現在のフレーム)
3 37 M3 1
4 38 M4 2
5 39 M5 3
更に、符号量検出回路1016は、差分マップ1017に記憶されている符号量余裕M1,M3,M4,M5を持つフレーム番号Xに対応する符号化フレームが記憶されているメモリ番号Lを算出する。
そして、符号量が閾値Tを超過したフレーム番号41の符号化フレームの分割量を決定する。以下、図2を参照して、本実施形態の画像符号化伝送装置における符号化フレーム分割、割り当て方法について更に詳細に説明する。この分割、割り当て処理は、符号量検出回路1016が実施する。
図2(a)は、フレーム番号41の符号化フレームの符号量Sが、閾値Tを超過すると判定され、先行するフレーム37〜40については、符号量Sが閾値T未満である状況を模式的に示す図である。
このような場合、フレーム番号41の符号化フレームの、閾値Tを超える符号化データ(超過データ)を、以下のような手順により分割し、先行する符号化フレームに割り当てる。
(1):超過データを、その先頭から、フレーム番号37の符号量余裕M3に等しいかそれ以下のサイズG1(図2(b)、2001)で分割し、分割点S1を記憶する。
(2):(1)で分割した残りの符号量が、依然として閾値Tを超過する場合、(1)と同様にして、超過データの残りを、その先頭(分割点S1)から、フレーム番号38の符号量余裕M4に等しいかそれ以下のサイズG2(図2(b)、2002)で分割する。そして、分割点S2を記憶する。
(3):以下、超過データが無くなり、フレーム番号41の符号化フレームの符号量が閾値T以下となるまで、手順(1),(2)を繰り返す。
分割点は、通常、フレームを構成するスライスやマクロブロックの単位で設定されるが、その他の方法(バイト単位等)で分割しても良い。分割点の情報と、対応する割当先フレームの情報とは、分割情報として例えば内部メモリに記憶する(ステップS109)とともに、制御装置1006に通知される。この分割情報を用いてセレクタスイッチ1013、1014やメモリ読み出しやファイル化処理を制御することで、符号量余裕のあるフレームのファイル化時に、符号量が閾値を超えるフレームの符号データの一部を多重化することが可能となる。
このように、図2(a),(b)に示した例の場合では、符号量Sが閾値Tを超過する符号化フレームについて3分割(2001〜2003)した。そして、超過データの一部2001はフレーム番号37の符号化フレームと、2002はフレーム番号38の符号化フレームとそれぞれ多重化する。このようにして、閾値T以下の符号化量で、フレーム番号37〜41の全ての符号化フレームを伝送することが可能となる。
このように、本実施形態では、符号化フレーム毎に閾値Tに対する符号量余裕を算出、記憶しておく。そして、閾値Tを超える符号量の符号化フレームが発生した場合には、この符号化フレームを、これから読み出される先行符号化フレームの符号量余裕に基づいて分割する。そして、先行符号化フレームの送信時に多重化して送信する。
従って、図2(a)、(b)で説明したような分割が行われた場合、
(1)主フレーム番号Xnext=37の時には、フレーム番号41の符号化フレームの、図2(b)の2001に示す部分が、メモリ2から読み出され、セレクタスイッチ1014を介して、多重化・ファイル化装置1015へ入力される。そして、メモリ3からは、制御装置1006の制御に従って読み出された、フレーム番号37の符号化フレームがセレクタスイッチ1013を介して多重化・ファイル化装置1015へ入力される。多重化・ファイル化装置1015は、これらの符号化フレームを多重化し、ISOファイル化する(ステップS111)。
(2)そして、主フレーム番号Xnext=38の時には、フレーム番号41の符号化フレームの、図2(b)の2002に示す部分が、メモリ2から読み出され、セレクタスイッチ1014を介して、多重化・ファイル化装置1015へ入力される。そして、メモリ4からは、制御装置1006の制御に従って読み出された、フレーム番号38の符号化フレームがセレクタスイッチ1013を介して多重化・ファイル化装置1015へ入力される。多重化・ファイル化装置1015は、これらの符号化フレームを多重化し、ISOファイル化する。なお、並行して、(1)でフレーム番号37の符号化フレームを読み出したメモリ3には、フレーム番号42の符号化フレームが書き込まれる。
多重化・ファイル化装置1015が生成したISOファイルは、上述のように、送信バッファ1005に一時格納される。
主フレーム番号Xnext=38の際の、メモリ番号と記憶するフレーム番号X、符号量余裕と出力順序との関係を以下に示す。
メモリ番号 フレーム番号 符号量余裕 出力順序
1 40 M1 3
2 41 ---- 4
3 42 ---- 5(現在のフレーム)
4 38 M4 1
5 39 M5 2
ここで、図2(c)に示すように、フレーム番号42の符号化フレームの符号量Sが、閾値Tを超えたものとする
この場合、符号量検出回路1016は、取得したXnextから、出力の順序で(N−2)フレーム分の、符号量余裕(MX)とフレーム番号Xとを差分マップ1017から読み出す。すなわち、ここでは、Xnext=38、N−2=3であるから、フレーム番号38〜40の符号量余裕M4,M5,M1を読み出す。
更に、符号量検出回路1016は、差分マップ1017に記憶されているM1,M4,M5の符号量余裕を持つフレーム番号Xに対応する符号化フレームが記憶されているメモリ番号Lを算出する。
次に、制御装置1006の制御により、フレーム番号42の符号化フレームの、閾値Tを超える符号化データ(超過データ)を上述のようにして分割し、先行する符号化フレームに割り当てる。ただし、フレーム番号38の符号量余裕M4は、既にフレーム番号41の符号化フレームによって占有されている。そのため、超過データを、その先頭から、フレーム番号39の符号量余裕M5に等しいかそれ以下のサイズG3(図2(c)、2004)で分割し、分割点S3を記憶する。分割した残りの符号量が、閾値T以下の場合は、ここで分割を打ち切り、残りの符号量が、閾値Tを超過する場合は、残りの符号量が閾値T以下となるまで、上記の操作を繰り返す。
このように、本実施形態の画像符号化伝送装置では、符号量が閾値を超える符号化フレームについては、これから伝送される符号化フレームの符号量と閾値との差に応じたサイズで分割する。そのため、常に閾値に近い量のデータを伝送することが可能であり、伝送容量の利用効率を高めることが可能となる。
なお、本例では説明の便宜上N=5、即ち5フレーム分のメモリが実装されている装置を例に説明を行った。伝送容量の利用効率を高めるという上述の効果は、閾値が固定値であっても達成される効果である。しかし、本実施形態では、さらに閾値Tを通信回線の利用効率を最大限向上させるために変動させる。そのため、符号化フレームの符号量が連続して閾値Tを超過する可能性が、閾値Tを固定値とする場合よりも高くなる。
従って、回線利用効率を高めつつ、安定した伝送処理を行なうために、Nの値(メモリの総数)はある程度多い方がよい。例えば、符号化器1004が、MPEG2方式のような、複数のフレーム単位(GOP)単位で符号化を行う符号化方式を用いるような場合には、GOPを構成するフレーム数以上(例えば15以上)のメモリを設けることが好ましい。
送信バッファ1005に格納された、ISOファイル形式にパッキングされた符号化フレーム群は、制御装置1006の制御により、随時通信装置1007へ出力される。
通信装置1007では、入力されたISOファイル形式のパケットを参照し、後述する'User Data Box'に送信タイムスタンプ(ST)が記述されているかどうか検出する。記述されている場合は、送信タイムスタンプ(ST)に準拠して、ISOファイル形式のパケットを通信回線1018に出力する(図10(b)参照)。一方、'User Data Box'に送信タイムスタンプ(ST)が記述されていない場合は、送信対象パケットに対する最適な送信開始時刻を算出し、算出された最適な送信開始時刻に従って、送信対象パケットを通信回線1018に出力する(図10(a)参照)。送信開始時刻は、例えば、今回送信対象となっているパケットのデータ構成(例えば、パケットを構成する符号化データの復号化処理開始時刻(DT))と、直前に出力されたパケットの送信開始時刻とから算出することができる。
なお、'User Data Box'に送信タイムスタンプ(ST)が記述されていない場合で、かつ、他の符号化フレームの超過データの一部が多重化されている場合には、1つのパケットの中に2つの独立した復号化処理開始時間が存在する。この場合、単純に復号化処理開始時間(DT)を参照しただけでは、送信開始時刻を決定できない。例えば、複数個存在する復号化処理開始時間(DT)のうち、最も早い時刻を示すものと、直前に出力したパケットの送信開始時刻から、通信回線1018の利用効率が最も高くなるように、送信開始時刻を算出することができる。
通信回線1018に出力されたパケットは、アクセスポイント1020および通信回線1019経由で、受信側へ送信される。
制御装置1006は、多重化・ファイル化装置1015において、符号化フレームをISOファイル化する際、そのファイルが送信開始される時刻を算出し、必要に応じて、送信開始時刻情報(1021)を多重化・ファイル化装置1015へ出力する。
多重化・ファイル化装置1015は、制御装置1006から入力された送信開始時刻情報を、付加情報として、図7の7010で示される'User Data Box'(Type = udta) 内に任意の書式で書き込み、ISOファイルとしてパッキングして出力するこも可能である。
なお、多重化・ファイル化装置1015で追加可能な付加情報は、送信開始時刻情報に限定されるものではない。
図6は、ISOファイル形式で定義されているBoxの一覧を示す表である。
図6において、左から6列目までの列は、ISOファイル形式で定義されているBoxの種類と、その包含関係を示す。一番右の列には、該当する行のBoxの説明が示される。
各Boxには、その種類を識別するための4バイトのTypeが割り当てられており、通常は4文字の英数字で表現される。この4文字のtypeが左6列中に記載されている。以降の説明では、特定のBoxを示すためにこのTypeを用いて表現する。
あるBoxが他のBoxを包含する関係は、列同士の位置関係によって示している。図6では、ある列のBoxは、その列よりも右側に位置する列で示されるBoxを包含していることを表している。例えば、上から二番目の行で示される'moov'は、'mvhd'、'trak'、'mvex'、'udta'等を含んでいることを意味する。
図7は、ISOファイル形式のデータ構造を単純化して示す図である。
ISOファイル形式のBox構成は通常、図7で示されるように、メディアデータのメタデータを格納するためのmoov7001と、実際のメディアデータを格納するmdat7002とから構成される。ここで、メディアデータとは例えば動画像や音声のサンプルデータであり、メディアデータのメタデータとは動画像や音声サンプルの管理情報のような、メディアデータに関する情報である。
moov7001内には、個々のメディアデータに対応するBoxである、trak7003が包含される。また、mdat7002内のメディアデータは、動画像や音声の連続する複数サンプルのセット(チャンク)に分割されて格納されており、mdat7002のdataフィールドにはチャンクの配列が格納される。
なお、このチャンクのサイズや含まれるサンプルの個数に制約はなく、環境や状況に応じて任意の大きさやサンプル数を持つチャンクを構成し、格納することが出来る。'udta'7010は、図6におけるBox一覧の'udta'(User Data Box)に該当し、ISOファイル形式では、moov7001の直下に存在する。
'User Data Box' (Type = udta)の内容、書式は、ISO/IECの規格書上で定義されておらず、その機能をサポートしない再生装置においては無視される。そのため、'udta'の存在がType='udta'のBoxに未対応な再生装置に影響を与えることはない。
上述のように、多重化・ファイル化装置1015において、'User Data Box'に格納する付加情報の内容は、送信開始時刻情報に限定されるものではなく、任意の情報を任意の書式で格納することが可能である。
制御装置1006はまた、通信装置1007を介して、受信装置のバッファ容量やデータ処理性能等の仕様情報を取得し、処理可能な最大ビットレート及び、ビットレートに対して許容可能な遅延時間等を算出する。更に、回線容量の瞬時値を検出し、任意に定義された期間の平均回線容量と、算出された平均回線容量に対する瞬時回線容量の変動幅を算出する。そして、これらの取得もしくは算出した値をパラメータとして、回線容量の利用効率が所定割合以上で、かつ受信側での処理が破綻しないという条件の下に、任意の単位表示時間に相当する符号量(例えば、1フレーム単位の符号量)の最適値Wを算出する。算出された符号量の最適値(1022)は、符号化器1004と符号量検出回路1016へ出力される。
符号化器1004では、発生符号量の目標(上限)値を、入力された符号量の最適値(1022)に設定して、符号量制御を実施する。
符号量検出回路1016では、符号化器1004に於ける発生符号量と比較を行う為の閾値T(図8参照)を、入力された符号量の最適値(1022)に設定する。
また、通信回線上のアクセスポイント1020が、IEEE802.11e等のQoS(Quality of Service)機能に対応している場合、制御装置1006は、アクセスポイント1020に対して回線容量の割り当て要求を実施することができる。具体的には、上述の符号量の最適値Wに、多重化・ファイル化装置1015でISOファイル化した場合のオーバーヘッドVの予測値を加算した値(W+V)を必要符号量Uとして、回線容量の割り当てを要求する。そして、アクセスポイント1020からの回線容量の割り当て値Aを取得する。
この場合、制御装置1006は、アクセスポイント1020から割り当てられた回線容量Aから、ISOファイル化に伴うオーバーヘッドVを減算した値(A−V)を、符号量の最適値Wとして符号量検出回路1016および符号化器1004へ出力する。
受信装置が、RTCP(RTP Control Protocol)、RTSP(Real-Time Streaming Protocol)等の機能を利用して、画像符号化伝送装置100に情報をフィードバックする機能を具備している場合、制御装置1006は、通信装置1007を経由して、受信装置からの情報を受信することが可能である。
制御装置1006は、エラーレートや配信停止要求等の情報を受信した場合、符号化器1004に対して、符号量の増減指示や符号化処理の停止等の制御情報を出力し、受信側からのリクエストに応じて、符号化処理を制御することも可能である。
以上説明したように、本実施形態によれば、符号量が閾値を超えるフレームについては超過分の符号化データを、先行して表示され、かつ符号量が閾値未満の他のフレームの符号化データに多重化して送信する。そして、多重化先の他のフレームの符号量と閾値との差の大きさに応じて、多重化する符号化データの量を増減させることにより、画質の劣化を抑制しながら、回線の利用効率を向上させることが可能になる。
さらに、回線の状態に応じて閾値を動的に変更することで、通信品質が動的に変化する回線を通じて送信する場合でも、通信バッファのオーバフローを防止しながら高い回線利用効率を実現することが可能となる。
また、ISOファイル形式を採用することにより、送信パケットサイズをその時々の事情に合わせてフレキシブルに変更可能である。さらに、パケット単位の付加情報として、パケットの送信時刻を埋め込むことができる。従って、送信サーバーは、付加情報として付与された送信時刻に従ってパケットを送出することができ、パケット送出時刻を算出するためのサーバ負荷が軽減される。
さらに、ISOファイル形式を用いると、Hintingを利用可能となる。従って、受信装置が HintSampleEntry()の内容を参照すれば、後続フレームの符号量を予測し、受信装置の受信バッファのオーバーフローやアンダーフロー等を予測することが可能となる。
更に、受信装置が、変更要求を送信する手段を具備していれば、予測した後続フレームの符号量によりバッファオーバフロー、アンダーフローが生じる虞のある場合、符号化レート(送信ビットレート)の変更要求を送信(符号化)側へ送信することができる。この変更要求により、制御装置1006が閾値Tを制御することで、受信装置におけるバッファオーバーフローやアンダーフロー等の処理破綻を回避できる可能性を高めることができる。
<第2の実施形態>
次に、本発明の第2の実施形態について、図3を用いて説明する。
第1の実施形態は、動画像データを符号化して伝送する装置に本発明を適用した例であったが、本実施形態は、既に符号化された動画像データを配信する動画像配信システムに本発明を適用した例を説明する。既に符号化された動画像データを読み出す場合も、単位時間当たりのデータ発生量が変化する点では第1の実施形態と共通であるから、本発明を同様に適用可能であることを容易に理解されよう。
図3は、本発明の第2の実施形態に係る情報伝送装置の一例としての動画像配信装置の構成例と、それを用いた情報伝送システムの構成例を示すブロック図である。
例えばハードディスクドライブである蓄積メディア1(3000)には、所定の方式で符号化済みの複数の動画コンテンツが格納されている。
蓄積メディア1(3000)内のコンテンツが更新(追加)されると、コンテンツサーバー3002は、更新されたコンテンツに対して、単位表示時間あたりの符号量、又はフレーム毎の符号量を検出し、コンテンツ全体の符号量マップを作成する。そして、符号量マップ記憶装置3003に、コンテンツを特定する情報(例えばコンテンツID)と関連付けて記憶する。
図8(a)に、フレーム毎の符号量から作成した符号量マップを模式的に示す。なお、図8(a)では符号量が視覚的に把握し易いよう棒グラフを用いてマップを示しているが、実際にはフレーム毎の符号量を数値で表した型式で記録される。
制御装置3006は、図示しない受信装置からコンテンツの配信要求を受信すると、その時点で確保した回線容量や、受信装置の能力を考慮して最適な送信ビットレートRを算出する。そして、配信要求されたコンテンツID、ビットレートRと共に、コンテンツサーバー3002に対して、配信開始命令を出力する。
配信開始命令を受信したコンテンツサーバー3002は、指定されたコンテンツIDに対応する符号量マップを符号量マップ記憶装置3003から読み出して参照する。そして、各フレームの符号量と、算出された最適な送信ビットレートRとから、各フレームの符号量余裕を算出するとともに、ビットレートRで所定のフレーム時間内に送信しきれない符号量を有するフレーム(超過フレーム)を検出する。符号量余裕の算出はどのように行なっても良いが、30フレーム/秒で表示するとすれば、1フレーム当たりのビットレートは、例えば、R[ビット/秒]/30[枚/秒]=R/30[ビット/枚]として求めることができる。
そして、符号量超過フレームについては、最適な送信ビットレートRに対する超過分を蓄積メディア1(3000)から読み出して、蓄積メディア2(3001)へ一時記憶する。なお、一時記憶する符号化データの量は、少なくともビットレートR(に対応する符号量)を超過する量であればよい。例えば、フレーム中のブロックを単位として一時記憶する場合、純粋な超過分よりも多めに一時記憶することが起こりうる。ここで、符号量超過フレームについては、ビットレートRに対応する符号量以下のサイズに分割しても良い。
次に、超過フレームに対し、(受信装置における表示の順序で)先行する複数フレーム(フレーム数は任意)の符号量余裕を参照し、符号量余裕内に収まるように超過フレームの少なくとも符号量超過分を分割する。換言すれば、超過フレームとそれに先行する各フレームの符号量がビットレートRに対応する符号量以下となるよう、蓄積メディア2(3001)へ一時記憶した符号量超過分の分割数と分割比、および多重化先のフレーム(フレーム番号)を決定する。そして、決定した分割数と分割比、多重化先のフレーム番号を、符号量超過分に対応付けて蓄積メディア2(3001)へ記憶する。
図8においては、最適な送信ビットレートRに対応した符号量を、第1の実施形態での表現に合わせて閾値Tとして示している。図8(a)において、最初に出現する超過フレームはフレーム番号7である。この場合、コンテンツサーバ3002は、フレーム番号7に先行するフレーム番号1〜6の符号量余裕を読みだす。そして、相対的に符号量余裕が、大きい順(本例の場合:例えば4,5,6,1,2,3)に並べ、フレーム番号7の符号量超過分とフレーム番号4,5,6,1,2,3の各符号量余裕とを比較して、符号量超過分の分割数及び多重化先を決定する。
分割数=3(フレーム番号4,5,6の符号量余裕を選択)に決定したと仮定すると、少なくとも符号量超過分を、選択されたフレーム番号4,5,6の符号量余裕に収まるサイズに3分割する。なお、図8(b)の例では、フレーム番号7の(符号量超過分+α)を3等分しているが、フレーム番号16のように、等分割しないでもよい。本実施形態に於いて、他の符号化フレームに多重化する符号量超過分の分割数、分割比、又は分割された個々の符号量(サイズ)については、任意に定めることができる。
本実施形態では、上述のように、蓄積メディア2(3001)には、フレーム番号7の符号量超過分とともに、その超過分のどの部分を他のどのフレームに多重化するかを特定可能な情報を記憶する。具体的には、多重化先のフレーム番号と、多重化する超過分が記憶された蓄積メディア2(3001)の開始アドレスとデータ量の組み合わせであって良い。
コンテンツサーバ3002は、制御装置3006から配信が要求されたコンテンツの全フレームに対して上述の処理を行ない、完了した時点で、要求されたコンテンツの配信を開始する。
この時点で、符号量が閾値Tを超過したフレームの符号量の超過分は、全て蓄積メディア1(3000)から蓄積メディア2(3001)に書き移されている。そのため、蓄積メディア1(3000)に格納されている、配信を要求されたコンテンツの各フレームの符号量は、最適な送信ビットレートR以下である。
配信が開始されると、蓄積メディア1(3000)から、配信リクエストされたコンテンツの各フレームが、所定の順序で読み出されて、コンテンツサーバー3002へ入力される。
コンテンツサーバ3002は、蓄積メディア1(3000)から読み出されるフレームのフレーム番号を監視する。そして、蓄積メディア2(3001)へ記憶した分割済みの符号量超過分を多重化するフレームが蓄積メディア1(3000)から読み出されると、対応する符号量超過分を、蓄積メディア2(3001)から読み出す。そして、両方の符号化データを多重化(結合)してファイル化装置3008へ出力する。
現在、蓄積メディア1(3000)からフレーム番号4が読み出されると仮定する。この場合、フレーム番号4に対応する符号量超過分(分割済み)が、蓄積メディア2(3001)から並行して読み出され、コンテンツサーバ3002でフレーム番号4の符号化データと多重化され、ファイル化装置3008へ入力される。
同様にして、フレーム番号5が読み出されると、フレーム番号5に対応する符号量超過分(分割済み)が、蓄積メディア2(3001)から並行して読み出される。そして、コンテンツサーバ3002で、フレーム番号5の符号化データと多重化され、ファイル化装置3008へ入力される。
これらの読み込み処理は、コンテンツサーバ3002自体の制御により行われても良いし、制御装置3006の制御下に行われても良い。
なお、常に一定量の回線容量が確保可能で、エラーも殆ど発生しない通信回路を用いる場合には、配信要求の受信時に確保されている回線容量に基づく上述の分割処理を行なわなくてもよい。このような場合には、回線容量が変動しないと見なすことができるため、一定量の回線容量(ビットレート)Rtを想定して予め分割処理を行なっておくことができる。従って、配信要求があった場合には、直ちに蓄積メディア1(3000)から順次符号化フレームを読み出し始めるとともに、蓄積メディア2(3001)に記録された内容に従って超過分の符号化データを順次読み出して、直ちに配信を開始できる。
なお、各符号化フレームには、図9(a)及び図9(b)に示すように、受信装置に於いて、その符号化フレームの復号化処理を開始する時刻を示すDecoding Time Stamp(DT)が付与される。そして、蓄積メディア1(3000)からコンテンツサーバー3002へ入力された各符号化フレームは、必要に応じて後続フレームの符号量の一部(分割された符号量超過分)およびフレーム番号や復号化開始時刻(DT)、表示開始時刻等(CT)等の情報と共に多重化され、ファイル化装置3008へ入力される。
図9(b)のフレーム1と4を例として説明すると、フレーム1は、後続フレームの符号量超過分を割り当てられていない(単一のDecoding Time Stamp(DT)を持つデータのみで構成されている)。そのため、ファイル化装置3008は、図10(a)の10001で示すように、フレーム1の符号化データのみで、ISOファイル形式に於ける1ファイル(1パケット)を生成する。一方、フレーム4では、符号量超過が発生したフレーム7の符号量の一部を割り当てられているので、図10(a)の10002で示すように、フレーム4の符号化データと、フレーム7の符号化データの一部との多重化データで1パケットを生成する。従って、多重化データから生成されたバケットには、符号化開始時間(DT)が複数含まれる。
ファイル化装置3008へ入力され、ISOファイル形式でパッキング(ファイル化)された符号化データは、送信バッファ3005に一時記憶される。
なお、第1の実施形態と同様に、制御装置3006は、符号化フレームがファイル化装置3008に入力された時点で、ISOファイル形式にパッキング(パケット化)されて、通信装置3007から送信される時刻を予測することができる。そして、予測された時間を送信タイムスタンプ(ST)として、ISOファイル形式の'User Data Box'(図7の7010参照)に格納することが可能である。図10(b)に、送信タイムスタンプ(ST)を格納した例を示す。
送信バッファ3005に一時記憶された各パケット(符号化コンテンツ)は、制御装置3006の制御により、適宜読み出されて、通信装置3007へ入力される。
ここで、各パケットの'User Data Box'に送信タイムスタンプ(ST)が書き込まれている場合は、送信タイムスタンプが指示する時刻にしたがって、パケットを通信路3018へ出力する。
一方、各パケットの'User Data Box'に送信タイムスタンプ(ST)が書き込まれていない場合は、制御装置3006が、パケットを通信路3018へ出力する時刻を算出し、その時刻に従って、パケットを通信路3018へ出力する。この時刻は、例えば、送信バッファ3005の空き容量、通信路3018の状態、直前のパケットを送出した時間等から算出することができる。
通信路3018に出力されたパケットは、アクセスポイント3020、通信路3019を介して、図示しない受信装置へ配信される。
以上説明したように、本実施形態によれば、蓄積された符号化済みの動画像データを送信する場合においても、第1の実施形態と同様の効果を得ることが可能である。
<他の実施形態>
上述の実施形態は、システム或は装置のコンピュータ(或いはCPU、MPU等)によりソフトウェア的に実現することも可能である。
従って、上述の実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線/無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、MO、CD、DVD等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。
有線/無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムファイル)をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
つまり、上述の実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
また、上述の実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体をユーザに配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを可能とすることも可能である。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
また、上述の実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するOSの機能を利用するものであってもよい。
さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるCPUで実行するようにしてもよい。
本発明の第1の実施形態に係る情報伝送装置の一例としての画像符号化伝送装置の構成例と、画像符号化伝送装置を用いた情報伝送システムの構成例を示すブロック図である。 本発明の第1の実施形態に係る画像符号化伝送装置における符号化フレーム分割、割り当て方法を模式的に示す図である。 本発明の第2の実施形態に係る情報伝送装置の一例としての動画像配信装置の構成例と、それを用いた情報伝送システムの構成例を示すブロック図である。 従来の従来の画像データ転送装置の構成例を示すブロック図である。 従来の符号量超過フレームの符号量分割および割り当て方法を説明する図である。 ISOファイル形式で定義されているBoxの一覧を示す図である。 ISOファイル形式のデータ構造を単純化して示す図である。 第2の実施形態に係る動画像配信装置が用いる符号量マップの一例と、超過符号量の割り当て方法の例を示す図である。 図8の例において、各符号化フレームに復号化処理を開始する時刻の情報を付与した状態の例を示す図である。 ISOファイル形式(フラグメント形式)にパケット化された各符号化フレームと、送信タイムスタンプを付与した状態とを模式的に示す図である。 本発明の第1の実施形態に係る画像符号化伝送装置におけるファイル生成処理を説明するフローチャートである。

Claims (8)

  1. 単位時間当たりの発生量が変化するデータを伝送する情報伝送装置であって、
    前記単位時間毎に発生するデータを記憶単位として複数単位記憶する記憶手段と、
    前記複数の記憶単位に記憶されたデータの、所定の閾値からの符号量余裕を算出する算出手段と、
    前記閾値を超えるデータ量を有する記憶単位について、前記閾値を超える分のデータを、前記記憶手段に記憶されている複数の記憶単位のうち、前記符号量余裕が大きいものから順に分配するデータ量制御手段と、
    前記記憶手段に記憶されたデータを送信する通信手段とを有することを特徴とする情報伝送装置。
  2. 前記送信手段が送信する伝送路の品質を検出する検出手段と、
    前記検出した品質から、前記閾値として、前記伝送路で通信可能な最大データ速度を算出する閾値決定手段とをさらに有することを特徴とする請求項1記載の情報伝送装置。
  3. さらに、前記伝送路の帯域を割り当てる外部装置に対し、前記閾値に対応するデータ量を通信するのに必要な帯域の割り当てを要求する要求手段を更に有することを特徴とする請求項1又は請求項2記載の情報伝送装置。
  4. 前記通信手段が、
    前記データを前記記憶単位毎にISOファイル形式に変換して送信バッファに記憶するファイル生成手段と、
    前記送信バッファからファイルを読み出して送信する送信手段とを有することを特徴とする請求項1乃至請求項3のいずれか1項に記載の情報伝送装置。
  5. 前記ファイル生成手段が、前記記憶単位毎に送信時刻を付加することを特徴とする請求項4記載の情報伝送装置。
  6. 前記単位時間当たりの発生量が変化するデータがフレーム、スライス又はマクロブロック単位で符号化された画像データであることを特徴とする請求項1乃至請求項5のいずれか1項に記載の情報伝送装置。
  7. 単位時間当たりの発生量が変化するデータを伝送する情報伝送方法であって、
    記憶手段が、前記単位時間毎に発生するデータを記憶単位として記憶装置に複数単位記憶する記憶ステップと、
    前記複数の記憶単位に記憶されたデータの、所定の閾値からの符号量余裕を算出する算出ステップと、
    分配手段が、前記閾値を超えるデータ量を有する記憶単位について、前記閾値を超える分のデータを、前記記憶装置に記憶されている複数記憶単位のうち、前記符号量余裕が大きいものから順に分配するデータ量制御ステップと、
    通信手段が、前記記憶装置に記憶されたデータを送信する通信ステップとを有することを特徴とする情報伝送方法。
  8. 請求項7に記載の情報伝送方法の各ステップをコンピュータに実行させるためのプログラム。
JP2006111360A 2006-04-13 2006-04-13 情報伝送装置及び情報伝送方法 Expired - Fee Related JP4994698B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006111360A JP4994698B2 (ja) 2006-04-13 2006-04-13 情報伝送装置及び情報伝送方法
US11/689,338 US8923410B2 (en) 2006-04-13 2007-03-21 Information transmission apparatus and information transmission method
KR20070032217A KR100883811B1 (ko) 2006-04-13 2007-04-02 정보 전송 장치 및 정보 전송 방법
CNB2007100982128A CN100559876C (zh) 2006-04-13 2007-04-13 信息传送设备和信息传送方法
EP07106115.4A EP1845690B1 (en) 2006-04-13 2007-04-13 Information-transmission apparatus and information-transmission method
KR1020080101418A KR100920195B1 (ko) 2006-04-13 2008-10-16 정보 전송 장치 및 정보 전송 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006111360A JP4994698B2 (ja) 2006-04-13 2006-04-13 情報伝送装置及び情報伝送方法

Publications (3)

Publication Number Publication Date
JP2007288364A JP2007288364A (ja) 2007-11-01
JP2007288364A5 JP2007288364A5 (ja) 2009-05-28
JP4994698B2 true JP4994698B2 (ja) 2012-08-08

Family

ID=38255311

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006111360A Expired - Fee Related JP4994698B2 (ja) 2006-04-13 2006-04-13 情報伝送装置及び情報伝送方法

Country Status (5)

Country Link
US (1) US8923410B2 (ja)
EP (1) EP1845690B1 (ja)
JP (1) JP4994698B2 (ja)
KR (2) KR100883811B1 (ja)
CN (1) CN100559876C (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5236332B2 (ja) * 2008-03-28 2013-07-17 アイベックステクノロジー株式会社 符号化装置、符号化方法および符号化プログラム
EP2107811A1 (en) * 2008-03-31 2009-10-07 British Telecmmunications public limited campany Encoder
EP2129130A1 (fr) * 2008-05-26 2009-12-02 THOMSON Licensing Procédé de transmission simplifié d'un flux de signaux entre un émetteur et un appareil électronique
US9380091B2 (en) * 2012-06-12 2016-06-28 Wi-Lan Labs, Inc. Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network
JP5199219B2 (ja) * 2009-11-17 2013-05-15 株式会社日立国際電気 デジタル放送装置、デジタル放送方法、および、デジタル放送プログラム
WO2011108893A2 (en) 2010-03-05 2011-09-09 Samsung Electronics Co., Ltd. Method and apparatus for generating and reproducing adaptive stream based on file format, and recording medium thereof
KR101967818B1 (ko) * 2011-08-12 2019-04-10 삼성전자주식회사 수신 장치 및 그 수신 방법
US9772958B2 (en) * 2011-10-31 2017-09-26 Hewlett Packard Enterprise Development Lp Methods and apparatus to control generation of memory access requests
KR102181776B1 (ko) * 2012-06-05 2020-11-24 삼성전자주식회사 범용 디바이스에서의 파일 송/수신 장치 및 방법
US10063606B2 (en) 2012-06-12 2018-08-28 Taiwan Semiconductor Manufacturing Co., Ltd. Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network
JP5947641B2 (ja) * 2012-07-06 2016-07-06 キヤノン株式会社 動画像符号化装置及びその制御方法、コンピュータプログラム
TWI505699B (zh) * 2012-11-23 2015-10-21 Inst Information Industry 資料串流傳輸方法
JP6801539B2 (ja) * 2017-03-17 2020-12-16 株式会社リコー 情報処理システム、情報処理装置、情報処理プログラム及び情報処理方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2675130B2 (ja) * 1989-03-29 1997-11-12 株式会社日立製作所 画像データ転送再生方法および転送再生装置
US5473569A (en) * 1994-08-01 1995-12-05 Motorola, Inc. Method for operating a flash memory
JP3156705B1 (ja) * 1995-06-14 2001-04-16 松下電器産業株式会社 データ送信方法
JPH09149066A (ja) * 1995-11-21 1997-06-06 Hitachi Cable Ltd スイッチングハブ
US6115420A (en) * 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
KR100231924B1 (ko) 1997-03-21 1999-12-01 윤종용 가변 블럭 기반 색도 상관성을 이용한 영상 부호화 방법
GB2324668A (en) * 1997-04-21 1998-10-28 Racal Communications Syst Ltd Error resilient video processing technique
KR100266590B1 (ko) * 1997-12-11 2000-09-15 구자홍 디지탈스틸카메라의화상압축제어방법
KR100258563B1 (ko) 1997-12-30 2000-06-15 김덕중 비동기 전송 모드 수신 시스템의 메모리 할당 방법
JP3560217B2 (ja) * 1998-04-30 2004-09-02 ソニー株式会社 データ符号化装置、データ符号化方法及びデータ伝送方法
JP3147862B2 (ja) 1998-07-08 2001-03-19 日本電気株式会社 複数オンライン制御プログラムのトレース採取方法
JP4362793B2 (ja) * 1999-07-05 2009-11-11 日本ビクター株式会社 動画像符号化装置及びその方法
US20020080267A1 (en) * 2000-11-28 2002-06-27 Allan Moluf High capacity, low-latency multiplexer
JP4016647B2 (ja) * 2001-05-17 2007-12-05 日本電気株式会社 移動通信システム、基地局、移動局及びそれらに用いるしきい値設定方法並びにそのプログラム
JP4432284B2 (ja) * 2001-06-26 2010-03-17 ソニー株式会社 記録装置および方法
KR100438069B1 (ko) * 2001-12-04 2004-07-02 엘지전자 주식회사 이동통신시스템에서의 데이터전송율 설정 방법
US7292690B2 (en) * 2002-01-02 2007-11-06 Sony Corporation Video scene change detection
KR20040020638A (ko) * 2002-08-31 2004-03-09 삼성전자주식회사 무선 채널 특성을 반영한 동적 패킷 세그먼트 임계치관리방법
US7957486B2 (en) * 2002-09-30 2011-06-07 Intel Corporation Transmission link adaptation
JP4110521B2 (ja) * 2002-11-21 2008-07-02 ソニー株式会社 情報処理システムおよび方法、情報処理装置および方法、プログラム、並びにデータ構造
KR20060036922A (ko) * 2003-06-06 2006-05-02 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 압축
JP2005191933A (ja) * 2003-12-25 2005-07-14 Funai Electric Co Ltd 送信装置、送受信システム
CN101366227A (zh) * 2006-02-07 2009-02-11 艾利森电话股份有限公司 用于高速分组数据通信中的扩展控制面信令的装置和方法

Also Published As

Publication number Publication date
KR100883811B1 (ko) 2009-02-16
US8923410B2 (en) 2014-12-30
JP2007288364A (ja) 2007-11-01
CN101056401A (zh) 2007-10-17
EP1845690A2 (en) 2007-10-17
CN100559876C (zh) 2009-11-11
EP1845690B1 (en) 2018-07-25
KR20070102393A (ko) 2007-10-18
US20070286279A1 (en) 2007-12-13
EP1845690A3 (en) 2016-04-13
KR20080103483A (ko) 2008-11-27
KR100920195B1 (ko) 2009-10-06

Similar Documents

Publication Publication Date Title
JP4994698B2 (ja) 情報伝送装置及び情報伝送方法
US6327421B1 (en) Multiple speed fast forward/rewind compressed video delivery system
JP6225446B2 (ja) 動画像データ配信装置、方法、プログラム、及びシステム
JP4508422B2 (ja) 情報分散システムの可変ビットレ−ト情報を処理する方法および装置
JP4643988B2 (ja) ビデオ・オン・デマンド・サーバのシステムおよび方法
KR101510822B1 (ko) 적응적 트릭 플레이 스트리밍
WO2009096366A1 (ja) 動画像符号化・復号システム、並びにそれに用いる動画像符号化装置および動画像復号装置
JPH09510069A (ja) 結合ビットレート制御を用いるディジタルビデオ信号エンコーダのバッファリング
JP5064305B2 (ja) ビットレート変換装置及び変換方法
JP4846002B2 (ja) ファイル転送システムおよびファイル転送方法
US7031259B1 (en) Method and system for scheduling a transmission of compressible and non-compressible packets
US10652166B2 (en) Non-real time adaptive bitrate recording scheduler
JP4526294B2 (ja) ストリームデータ送信装置、受信装置、プログラムを記録した記録媒体、およびシステム
JP6258168B2 (ja) 配信装置、再生装置および配信システム
JP2008067102A (ja) コンテンツ配信サーバ
US20090175356A1 (en) Method and device for forming a common datastream according to the atsc standard
WO2013005478A1 (ja) コンテンツ配信システム、コンテンツ配置決定装置、コンテンツ配置決定方法およびプログラム
CN113747209B (zh) 多路ts流节目的重组方法及装置
JPH1141608A (ja) 画像伝送装置および画像符号化方法および画像符号化装置
JP3584787B2 (ja) マルチメディアデータ再生/送出装置
JP2001502125A (ja) データ伝送における又はデータ伝送に関する改良
JP5171593B2 (ja) 画像送信装置
JP4461875B2 (ja) 映像配信システム及び方法
CN115695846A (zh) 一种连续隧道场景下优化自适应码率视频调度方法和***

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090410

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110819

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111014

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

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

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

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4994698

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees