[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6271756B2 - ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット - Google Patents

ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット Download PDF

Info

Publication number
JP6271756B2
JP6271756B2 JP2016555917A JP2016555917A JP6271756B2 JP 6271756 B2 JP6271756 B2 JP 6271756B2 JP 2016555917 A JP2016555917 A JP 2016555917A JP 2016555917 A JP2016555917 A JP 2016555917A JP 6271756 B2 JP6271756 B2 JP 6271756B2
Authority
JP
Japan
Prior art keywords
frames
bit rate
frame
parameter
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016555917A
Other languages
English (en)
Other versions
JP2017504282A (ja
Inventor
ホーリッヒ,ホルガー
グロエシェル,アレクサンダー
ポップ,イェンス
ロエスレル,マルク
シュミット,マルテ
Original Assignee
ドルビー・インターナショナル・アーベー
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 ドルビー・インターナショナル・アーベー filed Critical ドルビー・インターナショナル・アーベー
Publication of JP2017504282A publication Critical patent/JP2017504282A/ja
Application granted granted Critical
Publication of JP6271756B2 publication Critical patent/JP6271756B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video 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/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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00014Time or data compression or expansion the compressed signal being an audio signal
    • G11B2020/00036AC-3, i.e. ATSC digital audio compression standard
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10703Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control processing rate of the buffer, e.g. by accelerating the data output

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

関連出願への相互参照
本願は2013年12月2日に出願された欧州特許出願第13195368.9号および2014年4月30日に出願された米国仮特許出願第61/986,351号の優先権の利益を主張するものである。両出願の内容はここに参照によって組み込まれる。
技術分野
本稿はエンコードされたビットストリームに関係したビットレートの判別に関する。
低ビットレート・チャネルを通じたエンコードされたビットストリームの伝送を容易にするために、送信装置は典型的には、前記ビットストリームをエンコードするときに適用されたビットレートについての情報を必要とする。さらに、エンコードされたビットストリームのビットレートに関する情報は、複数のエンコードされたビットストリームをジョイント・ビットストリームに多重化するよう構成されている多重化装置において必要とされることがある。そのような多重化装置のための例はMPEG-2トランスポート・ストリーム・マルチプレクサである。デコード装置も、前記ビットストリームをエンコードするときに適用されたビットレートについての情報を必要とすることがある。
適用されたビットレートの(いくぶん)粗い推定は、たとえば、エンコードされたビットストリームの受領されたフレームの実際のサイズから推定されうる。しかしながら、そのような推定の品質は、ビットストリームの型に依存する。ビットストリームの可能な型は、たとえば、一定ビットレート(CBR: constant bitrate)、可変ビットレート(VBR: variable bitrate)または平均ビットレート(ABR: average bitrate)ビットストリームである。CBRビットストリームは典型的には、ビットストリームのフレームが実質的に一定のサイズをもつので、ビットレートの明示的な信号伝達を要求しない。他方、VBRビットストリームの場合、瞬時ビットレートは実質的に変動することがあり、フレーム・サイズに基づくビットレートの推定の品質は典型的には比較的低い。
ABRビットストリームは、当該ビットストリームによって「平均的に」達成されるべきビットストリームを示す。ABRビットストリームの多重化装置および/またはデコード装置は、当該ビットレートの瞬間的な変動を扱うことができるために、典型的には所定のサイズの(たとえば、あらかじめ決められたフレーム数のおよび/または固定されたビットサイズの)バッファを有する。そのようなビットストリームは「バッファ・モデル」に従うと呼ばれる。本稿は、効率的かつ精密な仕方でそのようなビットストリームのビットレートを決定することの技術的問題に取り組むものである。このコンテキストにおいて、特にビットレート推定の正確さを高めるためにおよび/またはビットレート情報をエンコードするために必要とされるビット数を低減するために、ビットレートに関する情報を信号伝達するための効率的な方式を提供することが望ましいことがありうる。
記載される方法は、他の型のビットストリームにも適用されうる。例として、記載される方法は、VBRビットストリームの目標または平均ビットレートの指標を決定するためにVBRビットストリームに適用されてもよい。
ある側面によれば、ビットストリームのビットレートbrの推定値brestを決定するための方法が記述される。ビットストリームはフレームのシーケンスを含む。該フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応する。特に、フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、それらの抜粋(たとえばすべての抜粋)は一定の時間的長さをもつ。他方、フレームのシーケンスの諸フレームは、変動する数のビットを含んでいてもよい。つまり、ビットストリームの瞬時ビットレートは変動しうる。同時に、ビットストリームは、平均では一定だがバッファ・モデルに従うビットレートを示してもよい。そのようなビットレートをもつビットストリームは、平均ビットレート(ABR)ビットストリームと称されてもよい。ビットストリームはAC-4ビットストリームであってもよい。
フレームのシーケンスのうち少なくとも二つのフレームがwait_frames〔待ちフレーム数〕パラメータを有していてもよい。フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示しうる。特に、フレームのwait_framesパラメータは、対応するフレームが処理に先立って遅延されるフレーム数を示してもよい。よって、wait_framesパラメータは、当該ビットストリームを処理する多重化装置および/またはデコード装置にバッファリング命令を提供しうる。wait_framesパラメータは、バッファ・モデルの状態を信号伝達する一つの方法である。他の方法はたとえば、FIFOタイミングのbuffer_fullness〔バッファ充填度〕値を使うことである。
本方法は、ビットストリームからのフレームのサブシーケンスについて全ビット数または全サイズSTotを決定することを含む。特に、該サブシーケンスからのN個のフレームの全ビット数STotが決定されてもよい。サブシーケンスは、ビットストリームのフレームのいくつかの中に含まれる情報に基づいてビットストリームから選択されてもよい。特に、サブシーケンスは、フレームのシーケンスのうちの少なくとも二つのフレーム内に含まれるビットレート・コード・パラメータに基づいて選択されてもよい。
上記のように、フレームのビット数(サイズとも称される)は変動しうる。よって、全ビット数STotは、(当該サブシーケンスが相対的により大きなサイズまたは相対的により小さなサイズのどちらをもつフレームを含むかに依存して)フレーム毎の平均ビット数のN倍より多いまたは少ないことがありうる。フレームの平均サイズに対するサブシーケンスのフレームのサイズに関する情報は、バッファリング情報から、すなわちwait_framesパラメータから導出されてもよい。したがって、本方法は、サブシーケンス内に含まれるフレーム数に基づき(特に、全ビット数STotを決定するために使われたフレーム数Nに基づき)かつサブシーケンスの少なくとも二つのフレームのwait_framesパラメータに基づく補正されたフレーム数N'を決定することを含む。よって、フレームが変動するサイズをもつことの効果は、少なくとも部分的には補償されうる。
さらに、本方法は、全ビット数STotに基づき、補正されたフレーム数N'に基づき、かつビットストリームのフレーム・レートfframeに基づいて、ビットレートbrの下限brminおよび上限brmaxを決定することを含む。ビットストリームのフレーム・レートfframeは(少なくともその解析されるサブシーケンスについては)一定であってもよい。ビットレートが区間[brmin,brmax]内にあることは確証されうるので、下限brminおよび上限brmaxはビットレートbrについての推定値brestを提供する。
wait_framesパラメータを考慮に入れることによって、すなわちバッファリング情報を考慮に入れることによって、推定値brestの精度は、ビットレート情報を信号伝達するためのビットストリームの追加的なオーバーヘッドを使うことなく、改善されうる。AC-4ビットストリームの場合、wait_framesパラメータを考慮するとき、推定値brestの精度は因子1/6だけ改善されうることが示されることができる。典型的には、精度の可能な改善は、ビットストリームのフレームの平均フレーム・サイズおよび/またはバッファの最大サイズに依存する。
補正されたフレーム数N'は、当該サブシーケンスからの第一のフレームおよび第二のフレームのwait_framesパラメータの間の差に基づいて決定されてもよい。具体的には、第一のフレームはサブシーケンスの先頭のフレームに対応してもよく、および/または第二のフレームはサブシーケンスの末尾のフレームに対応してもよい。よって、サブシーケンスの伝送の間のバッファの「発展」が決定でき、ビットレート推定値brestの精度を高めるために考慮に入れられることができる。
典型的には、バッファリング情報、すなわちwait_framesパラメータは、ある数のフレームに対応するあらかじめ決定された分解能をもつ。結果として、補正された数N'は典型的には、1フレームの精度までしか補正され得ない。したがって、下限brminは補正された数N'に1を加えたものに基づいて決定されてもよく、上限brmaxは補正された数N'から1を引いたものに基づいて決定されてもよい。
フレームのサブシーケンスはN+1個のフレームnを含んでいてもよい。n=0,…,Nである。サブシーケンスの先頭のフレームn=0はwait_frames(0)と称されるwait_framesパラメータを含んでいてもよく、サブシーケンスの末尾のフレームn=Nはwait_frames(N)と称されるwait_framesパラメータを含んでいてもよい。全ビット数STotは、サブシーケンスのN個のフレームについて決定されうる(サブシーケンスの最初または最後のフレームはSTotを決定するときに考慮に入れられなくてもよい)。例として、フレームのwait_framesパラメータは、対応するフレームの末尾に対する処理遅延を示してもよい。そのような場合、全ビット数STot
Figure 0006271756
として決定されうる。ここで、Snはサブシーケンスのフレームnのビット数(またはサイズ)である。
補正されたフレーム数N'は次いで、wait_frames(0)とwait_frames(N)の間の差を使ってNをオフセットすることによって決定されてもよい。具体的には、補正されたフレーム数N'は
N'=N+wait_frames(0)−wait_frames(N)
として決定されてもよい。
全体として、下限は
Figure 0006271756
によって与えられてもよく、および/または上限は
Figure 0006271756
によって与えられてもよい。
フレームのシーケンスの少なくともいくつかのフレームは、ビットレート・コード・パラメータを含んでいてもよい。ビットレート・コード・パラメータの値(たとえば、ビットレート・コード・パラメータの特定のビット組み合わせ)は、開始コードおよび/または停止コードに対応してもよい。上限および下限を決定するために使われるビットストリームのサブシーケンスは、フレームのシーケンスから、開始コードおよび/または停止コードに基づいて決定されてもよい(たとえば、選択されてもよい)。具体的には、サブシーケンスは、サブシーケンスの先頭のフレームが開始コードに対応するビットレート・コード・パラメータを有し、サブシーケンスの末尾のフレームが停止コードに対応するビットレート・コード・パラメータを有し、サブシーケンスの他のどのフレームも開始コードまたは停止コードに対応するビットレート・コード・パラメータを有さないように決定されてもよい。
よって、ビットレート・コード・パラメータは、新しいビットレートbrが推定されるべきであるという事実を信号伝達するための効率的な手段を提供しうる。例として、開始コードおよび/または停止コードは、多重化装置および/またはデコード装置に、ビットストリームのビットレート(たとえばABRビットレート)が変化したことを通知するために、エンコード装置によって使用されてもよい。開始コードは停止コードに等しくてもよく、それにより新しいビットレートが推定されるべきであるという事実を信号伝達するために必要とされるオーバーヘッドをさらに低減しうる。
wait_framesパラメータがビットレートの(大まかな)推定値を決定するために使われるという事実に鑑み、wait_framesパラメータを有するフレームのみがビットレート・コード・パラメータを有していてもよい。結果として、ビットレート・コード・パラメータによって引き起こされるオーバーヘッドはさらに低減されうる。
よって、本方法は、ビットストリーム内に含まれるwait_framesパラメータに基づいて、ビットレートbrの(いくぶん)粗い推定値brest(特に、上限および下限brmin、brmaxを)を決定するための段階を含んでいてもよい。代替的または追加的に、本方法は、ビットレートのそのような初期の(たとえば粗い)推定値を提供する前記段階と、ビットストリーム内に含まれる追加的なビットレート情報を使って前記初期推定値の精度を高めるさらなる段階とを含んでいてもよい。具体的には、本方法は、ビットストリームの一つまたは複数のフレーム内に含まれるビットレート・コード・パラメータの値を使って初期の推定値の精度を高める段階を含んでいてもよい。よって、ビットレートの初期の推定値の精度を高めることに向けられる方法が記述される。そのような方法については、上述した方法段階は、ビットレートbrの初期の推定値brestを提供する(たとえば、ビットストリームのビットレートbrの上限および下限brmin、brmaxを提供する)全体的な段階によって要約されうる。
ビットストリームのビットレートbrの推定値brestは、仮数fbrCorrおよび指数kを有する浮動小数点表現において表現可能であってもよい。指数kは、ビットレートの下限brminおよび/または上限brmaxに基づいて決定されてもよい。仮数fbrCorrは、サブシーケンスの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて決定されてもよい。具体的には、浮動小数点表現は、brest=fbrCorr×2kとなるような二進浮動小数点表現であってもよい。そのような場合、仮数fbrCorrは1から2までの間の値を取ってもよい。よって、仮数(本稿ではビットレート補正因子とも称される)fbrCorrは指数kによって与えられる初期推定値の精度を高めるために使用されうる。
本方法は、
Figure 0006271756
となるよう少なくとも二つの潜在的な指数K1およびK2を決定することを含んでいてもよい。さらに、本方法は、x∈{1;2}として、brx=fbrCorr×2Kxとなるよう、少なくとも二つの中間推定値brxを決定することを含んでいてもよい。x∈{1;2}について、brmin≦brx<brmaxについて、前記少なくとも二つの中間的な推定値brxの一方が、ビットレートbrの推定値brestとして選択されてもよい。少なくとも二つの潜在的な指数K1およびK2の使用は、特にビットレートbrが数2kに近いまたは等しい場合に、ビットレート推定値brestの一意性を保証するために、有益である。
前記少なくとも二つの中間的な推定値brxのいずれも条件brmin≦brx<brmaxを満たさない場合には、ビットレートbrの推定値brestは区間[brmin,brmax]内に含まれるある値として決定されてもよい。そのような事例は、[brmin,brmax]によって与えられるビットレート推定値がすでに十分精密である場合に起こりうる。区間[brmin,brmax]内に含まれる前記値は、下限brminおよび上限brmaxの平均値であってもよい。代替的または追加的に、区間[brmin,brmax]の他の値に比べてビットレートbrである増大した確率をもつ値が選択されてもよい(たとえば、2kによって与えられるビットレートのような、ビットレートbrについての典型的な値)。
フレームのビットレート・コード・パラメータは、Lが1より大きな整数であるとして、L通りの異なるビットレート・コード値を取り得る。L個のビットレート・コード値は典型的には開始コードおよび/または停止コードとは異なる。よって、ビットレート・コード・パラメータは、L個の異なるビットレート・コード値のほか開始コードおよび/または停止コードに対応する値を取り得る。仮数fbrCorrは、サブシーケンスの一つまたは複数のフレームのビットレート・コード値に依存してもよい。換言すれば、一つまたは複数のフレームのビットレート・コード・パラメータのビットレート・コード値は、(区間[brmin,brmax]によって与えられる)初期推定値の精度を増すために、仮数fbrCorrの値を信号伝達するために使われてもよい。
仮数は、一つまたは複数のフレームのビットレート・コード・パラメータのビットレート・コード値から、仮数fbrCorrの精度が、ビットレート・コード値に対応するビットレート・コード・パラメータを含む当該サブシーケンスのフレームの数とともに増大するよう、決定されてもよい。特に、仮数fbrCorrの精度は、ビットレート・コード値に対応するビットレート・コード・パラメータを含む当該サブシーケンスの各フレームとともに因子Lだけ増大しうる。よって、ビットレート推定値の所望される精度と信号伝達レイテンシーおよび/またはオーバーヘッドとの間の直接的なリンクが提供されうる。こうすることにより、ビットレート信号伝達のための高度の柔軟性が与えられる。
サブシーケンスは、ビットレート・コード値に対応するビットレート・コード・パラメータを有するQ個のフレームqを有していてもよい。ここで、q=1,…,Qであり、Qは0より大きい整数である。パラメータQは本稿ではbr_digitsとも称される。パラメータcqはフレームqのビットレート・コード値であってもよい。ここで、cq∈{0;1;…;L−1}である。パラメータbr_corrは
Figure 0006271756
として決定される累積されたビットレート・コードであってもよい。すると、仮数fbrCorr
Figure 0006271756
によって与えられてもよい。Qが増大するにつれ、仮数fbrCorrの精度が増すことが見て取れる。
ある好ましい例では、Q=3、L=3、N=4である。さらに、ビットレート・コード・パラメータは二ビットのみを有していてもよく、それにより比較的少ない量のビットレート信号伝達オーバーヘッドを提供する。
上記のように、あるさらなる側面によれば、ビットレートの初期推定値の精度を高める方法が記述される。換言すれば、ビットストリームのビットレートbrの推定値brestを決定するためまたはビットレートbrの推定値brestの精度を高めるための方法が記述される。さらに、対応するビットレート推定器が記述される。ビットレートは、フレームのシーケンスを含む。ここで、該フレームのシーケンスの諸フレームは、変動する数のビットを含んでいてもよい。該フレームのシーケンスの諸フレームは、オーディオ信号および/またはビデオ信号の抜粋に対応する。本稿で概説されるように、ビットストリームのビットレートbrの推定値brestは、仮数fbrCorrおよび指数kを含む浮動小数点表現で表現可能であってもよい。フレームのシーケンスのうち少なくとも一つのフレームがビットレート・コード・パラメータを含んでいてもよい。本方法は、(ビットレートの初期推定値として)ビットレートbrの下限brminおよび上限brmaxを提供することを含む。さらに、本方法は、ビットレートbrの下限brminに基づきおよび/または上限brmaxに基づき、指数kを決定することを含む。さらに、本方法は、フレームのシーケンスのうちの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて仮数fbrCorrを決定することを含む。
あるさらなる側面によれば、たとえばプロセッサを有するビットレート推定器が記述される。ビットレート推定器は、ビットストリームのビットレートbrの推定値brestを決定するよう構成されている。ビットストリームはフレームのシーケンスを含み、該フレームのシーケンスの諸フレームは、変動する数のビットを含んでいてもよい。該フレームのシーケンスの諸フレームは、オーディオ信号および/またはビデオ信号の抜粋に対応する。フレームのシーケンスのうち少なくとも二つのフレームがwait_frames〔待ちフレーム数〕パラメータを有する。フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示しうる。ビットレート推定器、特にプロセッサは、ビットストリームからのフレームのサブシーケンスについて全ビット数STotを決定するよう構成されていてもよい。さらに、ビットレート推定器、特にプロセッサは、サブシーケンス内に含まれるフレーム数に基づきかつサブシーケンスの少なくとも二つのフレームのwait_framesパラメータに基づく補正されたフレーム数N'を決定するよう構成されていてもよい。加えて、ビットレート推定器、特にプロセッサは、全ビット数STotに基づき、補正されたフレーム数N'に基づき、かつビットストリームのフレーム・レートfframeに基づいて、ビットレートbrの下限brminおよび上限brmaxを決定するよう構成されていてもよい。
もう一つの側面によれば、一つまたは複数の個々のビットストリームから組み合わされたビットストリームを決定するよう構成された多重化装置が記述される。多重化装置は、前記一つまたは複数の個々のビットストリームのビットレートの推定値を決定するよう構成されている、本稿において記述されるビットレート推定器を有する。多重化装置は、前記一つまたは複数の個々のビットストリームのビットレートの推定値に基づいて前記組み合わされたビットストリームを決定するよう構成されていてもよい。多重化される前記一つまたは複数の個々のビットストリームは、エレメンタリー・ストリームであってもよく、前記組み合わされたビットストリームはMPEG-2トランスポート・ストリームであってもよい。
もう一つの側面によれば、ビットレートbrをもつビットストリームを提供する方法が記述される。本方法は、オーディオ信号からおよび/またはビデオ信号からフレームのシーケンスを生成することを含んでいてもよい。フレームのシーケンスの諸フレームは、オーディオ信号および/またはビデオ信号の抜粋に対応してもよく、あるいは該抜粋を示していてもよい。特に、フレームのシーケンスの諸フレームは、オーディオ信号および/またはビデオ信号の抜粋から導出されたエンコードされたデータを含んでいてもよい。
本方法はさらに、フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入することを含んでいてもよい。フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示しうる。上記で概説したように、wait_framesパラメータは、ビットレートbrの初期推定値を提供するために使われてもよい。
本方法は、フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入することを含む。ビットレート・コード・パラメータは、種々のビットレート・コード値を取りうる。挿入されるビットレート・コード・パラメータのビットレート・コード値は典型的にはビットストリームのビットレートbrに依存する。本稿で概説されているように、ビットレート・コード・パラメータのビットレート・コード値は、ビットレートbrの初期推定値の精度を高めるために使用されてもよい。よって、本方法は、比較的低い信号伝達オーバーヘッドでビットレートbrの精密な推定値の決定を許容するビットストリームを提供する。
ビットレート・コード・パラメータは、wait_framesパラメータをも含むフレームに中に挿入されるだけであってもよい。具体的には、wait_framesパラメータがフレームのシーケンスの諸フレームが変動する数のビットを含むことおよび/またはビットストリームが一定ビットレート(CBR)ビットストリームではないことを示す場合にのみ、ビットレート・コード・パラメータが挿入されてもよい。こうすることにより、信号伝達オーバーヘッドがさらに低減されうる。
すでに上記で概説したように、ビットレート・コード・パラメータは二つのビットのみを含んでいてもよい。代替的または追加的に、ビットレート・コード・パラメータは、二つ以上のビットレート・コード値に加えて、開始コードおよび/または停止コードを含んでいてもよい。よって、ビットレート信号伝達は、柔軟で、オーバーヘッド効率のよい仕方でなされうる。
もう一つの側面によれば、ビットレートbrを有するビットストリームが記述される。ビットストリームはフレームのシーケンスを含み、フレームのシーケンスの諸フレームはオーディオ信号および/またはビデオ信号の抜粋に対応してもよい。フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有していてもよい。ここで、フレームのwait_framesパラメータは対応するフレームについての処理遅延を示す。さらに、フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを含んでいてもよい。ビットレート・コード・パラメータは、種々のビットレート・コード値を取り、挿入されたビットレート・コード・パラメータのビットレート・コード値はビットストリームのビットレートbrに依存する。
あるさらなる側面によれば、ビットレートbrを有するビットストリームを生成するよう構成されたエンコード・システムが記述される。エンコード・システム(たとえば該エンコード・システムのプロセッサ)は、オーディオ信号からおよび/またはビデオ信号からフレームのシーケンスを生成するよう構成されている。ここで、フレームのシーケンスの諸フレームは、オーディオ信号および/またはビデオ信号の抜粋に対応する。加えて、エンコード・システム(たとえば該エンコード・システムのプロセッサ)は、フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入するよう構成されており、フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示す。さらに、エンコード・システム(たとえば該エンコード・システムのプロセッサ)は、フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入するよう構成されている。ビットレート・コード・パラメータは、種々のビットレート・コード値を取りうる。挿入されるビットレート・コード・パラメータの実際のビットレート・コード値はビットストリームのビットレートbrに依存する。
あるさらなる側面によれば、ソフトウェア・プログラムが記述される。ソフトウェア・プログラムはプロセッサ上での実行のためおよびプロセッサ上で実行されたときに本稿で概説される方法段階を実行するために適応されていてもよい。
もう一つの側面によれば、記憶媒体が記述される。本記憶媒体は、プロセッサ上での実行のために、該プロセッサ上で実行されたときに本稿で概説される方法段階を実行するために適応されているソフトウェア・プログラムを有していてもよい。
あるさらなる側面によれば、コンピュータ・プログラム・プロダクトが記述される。本コンピュータ・プログラムは、コンピュータ上で実行されたときに本稿で概説される方法段階を実行するための実行可能命令を含んでいてもよい。
本特許出願において概説される好ましい実施形態を含む方法およびシステムは、単独で、あるいは本稿に開示される他の方法およびシステムとの組み合わせで使われてもよいことを注意しておくべきである。さらに、本特許出願において概説される方法およびシステムのすべての側面は、任意に組み合わされうる。特に、請求項の特徴は、任意の仕方で互いに組み合わされうる。
本発明は、付属の図面を参照して例示的な仕方で下記に説明される。
例示的な符号化および/または伝送システムのブロック図である。 例示的な状態機械を示す図である。
上記で概説したように、本稿は、ビットストリームのビットレートの判別に関する。ビットレートは、たとえば、ビットストリームを一つまたは複数の他のビットストリームとマージするために多重化装置によって、判別される必要があることがある。そのような多重化装置の例はMPEG-2トランスポート・ストリーム(TS)マルチプレクサである。代替的または追加的に、デコード装置が、ビットストリームのデコードの準備において、受領されたビットストリームのビットレートを決定する必要があることがある。
図1は、例示的な符号化および/または伝送システム100のブロック図を示している。システム100は、それぞれの一つまたは複数のビットストリーム111を生成するよう構成されている一つまたは複数のエンコード装置またはエンコーダ101を有する。ビットストリーム111は、たとえばエンコードされたオーディオ信号を含んでいてもよい。ビットストリーム111は、フレームのシーケンスとして構成されていてもよい。ここで、各フレームはエンコードされたオーディオ信号の抜粋を表わしていてもよい。ビットストリーム111の各フレームはオーディオ信号のあらかじめ決定された(時間的)長さの抜粋を表わしていてもよい(たとえば、オーディオ信号のうちの20ms)。
ビットストリーム111は、多重化装置またはマルチプレクサ103に与えられる。多重化装置103は典型的には、多重化タスクの準備においてビットストリーム111の一つまたは複数のフレームを記憶するよう構成されているバッファ102を有する。多重化装置103は、複数のビットストリーム111を組み合わされたビットストリーム113にマージするよう構成されていてもよい。個々のビットストリーム111は、エレメンタリー・ストリーム(ES)であってもよく、組み合わされたビットストリーム113はトランスポート・ストリーム(TS)、たとえばMPEG-2規格(MPEG-2パート1)に基づくトランスポート・ストリームであってもよい。
組み合わされたビットストリーム113は、多重分離装置またはデマルチプレクサ104によって多重分離されてもよく、個々のビットストリーム111のうちの一つまたは複数はそれぞれの一つまたは複数のデコード装置またはデコーダ105に与えられてもよい。デコード装置105は、エンコードされたビットストリーム111からオーディオ信号を再構成するよう構成されていてもよい。この目的のために、デコード装置105はバッファ106を利用してもよい。
多重化装置103および/またはデコード装置105は、個別のビットストリーム111のビットレートを決定するよう構成されていてもよい。この目的のために、多重化装置103および/またはデコード装置105はビットレート推定器またはビットレート推定ユニットを有していてもよい。ビットレート推定器は、(ビットストリーム111内に含まれる追加的なオーバーヘッド情報の必要なしに)ビットストリーム111のビットレートを推定するために以下の情報の一つまたは複数を利用してもよい:
・n=0,…,Nとして、ビットストリーム111内に含まれる一つまたは複数のフレームnのフレーム・サイズSn(たとえばビット数)(N+1がビットレートを推定するために考慮されるフレームの数である);および/または
・たとえばあらかじめ決定された時間区間毎の(たとえば毎秒の)フレーム数を示すフレーム・レートfframe;および/または
・バッファ106の状態および/または前記一つまたは複数のフレームnがバッファ106によってバッファリングされる必要のある時間の量に関する指示。具体的には、バッファ106の充填状態(たとえば、バッファ106内に記憶されているフレームの数)が考慮されてもよい。代替的または追加的に、処理に先立ってフレームnがバッファリングされる必要のある時間区間の指示が考慮されてもよい。バッファ106の充填状態および/またはバッファリングのための時間区間の指示はいわゆるwait_framesパラメータである。このwait_framesパラメータは、特定のフレームが、処理されるのに先立ってバッファ106内で待たなければならない時間区間またはフレーム数を示す。wait_framesパラメータは典型的には、ビットストリーム111のフレームと一緒に情報として含まれる。
上述したパラメータの一つまたは複数が、ビットストリーム111のビットレートの推定値を決定するために、ビットレート推定器において使用されてもよい。典型的には、推定値の品質は、(特にABRビットストリーム111の場合)ビットレート推定器によって考慮されるフレームの数Nが増すにつれて高まる。
ビットレートの推定値brEstは、以下の方法を使って得られてもよい。推定値brEstを決定するために、実際のビットレートbrの上限brmaxおよび下限brminが複数のフレームのフレーム・サイズSnに基づき、フレーム・レートfframeに基づき、かつ前記複数のフレームの少なくともいくつかについてのwait_framesパラメータの値に基づいて決定されてもよい。限界値brminおよびbrmaxを使って、実際のビットレートbrの値についての可能なベース範囲VBase(k)(たとえば二つのベース範囲)が決定されてもよい。限界値brminおよびbrmaxおよび/またはベース範囲VBase(k)は、実際のビットレートbrの(いくぶん)粗い指示を与える。この指示は、ビットストリーム111内で伝送されるビットレート情報(ビットレート・コード)を使ってさらに洗練されてもよい。具体的には、ビットレート補正因子が、ビットストリーム111の一つまたは複数のフレーム内で伝送されるビットレート・コードから計算されてもよい。ビットストリーム補正因子は、ベース範囲VBase(k)との関連で使われて、複数の中間ビットレート推定値brx(たとえば、二つのベース範囲VBase(k)に基づく二つのビットレート推定値)を決定してもよい。その後、前記複数の中間的なビットレート推定値brxから、限界値brminおよびbrmaxを使って、ビットレートの正しい推定値brEstが選択されてもよい。
ビットレートの下限および上限brminおよびbrmaxは、n=0,…,NとしてN+1個のフレームnのシーケンスの諸フレーム・サイズを評価することによって決定されてもよい。具体的には、二つの隣り合う開始コードの間のN+1個のフレームが解析されてもよい。下記でさらに詳細に概説されるように、ビットストリーム111の少なくともいくつかのフレームはビットレート・コード(本稿においてbr_codeパラメータと称される)を含んでいてもよい。ビットレート・コードは、二ビットの長さを有していてもよい。ビットレート・コードのビット組み合わせの意味の例は表1に与えてある。ビットレート・コードが開始コードに対応してもよいことが見て取れる(ビット組み合わせ11b)。
Figure 0006271756
ビットレートの下限および上限brmin、brmaxを決定するために考慮されるN+1個のフレームは、ビットストリーム111のフレームのシーケンスからのサブシーケンスに対応してもよい。ここで、該サブシーケンスの最初と最後のフレームだけが開始コードを含む。よって、N+1個のフレームのこのサブシーケンスにおける最初のフレーム(すなわちn=0)は第一の開始コードを担持する。開始コード以外のビットレート・コードを担持する(またはビットレート・コードを全く担持しない)N−1個のフレームがそれに続く。サブシーケンスのN番目のフレームは第二の開始コードを含む。
Figure 0006271756

Figure 0006271756
表2は、ビットストリーム111のフレームの例示的シンタックスを示している。フレームはwait_framesパラメータに関する情報を含んでいることが見て取れる。wait_framesパラメータは、対応するフレームを待ち行列に入れるためにバッファ106によって使用されてもよい。具体的には、wait_framesパラメータは、対応するフレームがその後の装置によって(たとえばデコード装置105によって)処理されるのに先立ってバッファリングされる必要のあるフレーム数をバッファ106に示してもよい。多重化装置103も、多重化されたビットストリーム113中にフレームを挿入する前にバッファリングされるべきフレーム数を決定するために、wait_framesパラメータを利用してもよい。しかしながら、送信装置における(たとえば多重化装置103における)使用のためには、wait_framesパラメータは変換される必要があることがある。これは、送信装置103におけるバッファ102が、変動するフレーム・サイズをならすために、典型的には受信装置105におけるバッファ106と逆に動作するという事実のためである。
(フレームの平均サイズに比べて)相対的に大きなサイズをもつフレームの場合、フレームが処理されるのが遅すぎないことを保証するために、wait_framesパラメータは低減されてもよい。他方、(フレームの平均サイズに比べて)相対的に短いサイズをもつフレームの場合、フレームが処理されるのが早すぎないことを保証するために、wait_framesパラメータは増大されてもよい。
限界値brmin、brmaxを決定するために、N+1個のフレームのサブシーケンス内のフレームnのサイズSnが累計されて、全サイズ
Figure 0006271756
を決定してもよい。特にフレームのwait_framesパラメータが対応するフレームの終わりが受領される時点を指す場合、サブシーケンスにおける最初のフレーム(すなわちn=0)のサイズSnは典型的には無視される。あるいはまた、たとえば対応するフレームのwait_framesパラメータが当該フレームの先頭が受領される時点を指す場合、サブシーケンスにおける最後のフレーム(すなわちn=N)のサイズSnが無視されてもよい。
さらに、フレームのサブシーケンスの諸フレームの少なくともいくつかのフレームのwait_framesパラメータを評価することによって、補正されたフレーム数N'が決定されてもよい。補正されたフレーム数N'は、
N'=N+wait_frames(0)−wait_frames(N)
によって与えられてもよい。ここで、wait_frames(0)はサブシーケンスの最初のフレーム(n=0)のwait_framesパラメータの値であり、wait_frames(N)はサブシーケンスの最後のフレーム(n=N)のwait_framesパラメータの値である。上記で概説されたように、フレームnのサイズSnが(実際のビットレートbrに対応する)平均フレーム・サイズbr/fframeより大きい場合、フレームnのwait_frames(n)パラメータは(直前のフレームn−1のwait_frames(n)パラメータに比べて)低減する傾向がある。逆もまたしかりである。よって、差[wait_frames(0)−wait_frames(N)]>0ということはサブシーケンスのフレームの平均サイズが平均フレーム・サイズbr/fframeより大きかったこと(よって(平均で)より大きなフレーム数に対応すること)を示す。同様に、差[wait_frames(0)−wait_frames(N)]<0ということはサブシーケンスのフレームの平均サイズが平均フレーム・サイズbr/fframeより小さかったこと(よって(平均で)より少ないフレーム数に対応すること)を示す。差[wait_frames(0)−wait_frames(N)]の大きさは、サブシーケンスのフレームの平均サイズが平均フレーム・サイズbr/fframeよりどのくらい多かったまたは少なかったか示す。よって、補正されたフレーム数N'は、n=1,…,Nとして各フレームnが平均フレーム・サイズbr/fframeをもっていたとした場合に、フレームのサブシーケンスの決定された全サイズSTotが対応するであろうフレーム数の指示を与える。
wait_frames(n)パラメータは、典型的にはあからじめ決定された分解能をもつ。表2の例において示されるように、フレームのwait_frames(n)パラメータは全部で3ビットを含み、よって8通りの異なる値を取ることができる。典型的には、wait_frames(n)パラメータは、フレームの整数倍として、フレームの処理についての遅延を指示する。よって、n=1,…,Nとして各フレームnが平均フレーム・サイズbr/fframeをもっていたとした場合に、補正されたフレーム数N'は1フレームだけ、フレームのサブシーケンスの決定された全サイズSTotが対応するであろうフレーム数から異なっていてもよい(すなわち、N'−1またはN'+1)。よって、実際のビットレートbrの下限および上限が、STot、N'およびフレーム・レートfframeを使って、次の公式を使って決定されてもよい。
Figure 0006271756
実際のビットレートbr、すなわちABRビットストリーム111の平均ビットレートは、下の境界と上の境界の間にある。すなわち、brmin<br<brmaxである。
ビットレート情報を含むフレーム、特にビットレート・コードを含むフレームは、ビットストリーム内で必ず連続して現われる必要はないことを注意しておくべきである。表2に示されるように、ビットストリーム・フォーマットは、フレームごとにwait_framesパラメータを、よってbr_codeパラメータを送ることを許容する。br_codeパラメータの伝送によって引き起こされるオーバーヘッドが注意を要する因子であれば、ビットストリーム情報は2フレーム毎または3フレーム毎に送られるだけであってもよい。にもかかわらず、上記で概説したように、二つの隣り合う開始コードの間のサブシーケンス内のすべてのフレームが、実際のビットレートbrの上限および下限を決定するために使われてもよい。
よって、実際のビットレートbrが区間[brmin,brmax]内にあることが判定されてもよい。この区間は、実際のビットレートbrの(いくぶん)粗い推定値brestを与える。下記で概説されるように、br_codeパラメータは、実際のビットレートbrのこの(いくぶん粗い)推定値brestを洗練するために使われてもよい。具体的には、br_codeパラメータは、フレームごとに推定値brestを洗練するために使われてもよい。この目的のために、実際のビットレートbrの浮動小数点表現が使用されてもよい。そのような浮動小数点表現は指数k(たとえば2を底とする指数)および仮数fbrCorrを含む。指数は限界値brmin、brmaxに基づいて決定されてもよく、および/または仮数fbrCorrは、ビットストリーム111の一つまたは複数のフレーム内に含まれるbr_codeパラメータを使って決定されてもよい。
仮数fbrCorr(本稿ではビットレート補正因子とも称される)は、区間[1,2)内の値を取るよう定義されてもよく、指数kは2を底とする指数であってもよく、実際のビットレートの推定値は
brest=fbrCorr×2k
によって与えられてもよい。
以下では、指数kを決定するためおよび仮数fbrCorrを決定するための方法が記述される。
実際のビットレートは以下の値brmin<br<brmaxを取り得る。下限と上限についての公式から見て取れるように、区間[brmin,brmax]の幅は典型的には考慮されるフレーム数Nの増大とともに減少する。具体的には、差Δ=(brmax−brmin)は次式によって与えられる。
Figure 0006271756
最悪ケースでは(たとえばN=2または3フレームについて)、区間[brmin,brmax]は、kの二つの隣り合う整数値(ここではK1およびK2と称され、K2=K1+1)についての次のベース範囲の二つを含むことが示せる。
Figure 0006271756
よって、二つのベース範囲VBase(K1)およびVBase(K2)は、限界値brmin、brmaxの少なくとも一方に基づいて決定されてもよい。特に、二つのベース範囲は、次の条件が満たされるように決定されてもよい:
Figure 0006271756
K1およびK2を決定する代替的な方法は次によって与えられる:
Figure 0006271756
どちらの方法も、同じベース範囲、すなわち同じ指数K1およびK2を与える。
仮数またはビットレート補正因子fbrCorrは、ビットストリーム111の一つまたは複数のフレーム内に含まれる一つまたは複数のビットレート・コード(すなわち、br_codeパラメータ)を使って決定されてもよい。表1に示されるように、フレームのbr_codeパラメータは三つの異なる値、すなわち0,1,2を取ってもよい。一つまたは複数のフレームのサブシーケンスのbr_codeパラメータの値から、いわゆるbr_corr値が決定されてもよい。次いで、一つまたは複数のフレームのサブシーケンスのbr_corr値に基づいて、ビットレート補正因子fbrCorrが計算されてもよい。
具体的には、br_corr値は、上述したサブシーケンスのフレーム内に含まれるbr_codeパラメータの値に基づいて決定されてもよい。ここで、サブシーケンスの最初と最後のフレームは開始コードに対応するbr_codeパラメータを含み、最初と最後のフレームのほかはサブシーケンスは開始コードをもつさらなるフレームを含まない。
そのようなサブシーケンスのbr_corr値は、単一のフレームのbr_codeパラメータの値をMSBが先頭になっている三進数の数字として解釈することによって決定されてもよい。例として、フレームのサブシーケンスはbr_codeパラメータについて次の値のシーケンスを有していてもよい:11 01 10 00 11。これは二つの開始コードの間に囲まれたコード01 10 00を表わす。このコードは1*3^2+2*3^1+0*3^0=15というbr_corr値を表わす。
ビットレート補正因子は次の公式に従って計算されてもよい。
Figure 0006271756
ここで、br_digitsは、二つの隣り合うビットレート開始コードの間に送られたbr_codeパラメータの数を表わす。
上記の例について、この結果は次のようになる。
Figure 0006271756
代替的または追加的に、ビットレート補正因子fbrCorrは逐次反復式に、たとえばフレームごとに決定されてもよい。第一の開始コードを含むフレームn(たとえばn=0)の受領後、開始コードとは異なる値をもつbr_codeパラメータを有するフレームi(たとえばi=1)が同定されてもよい。パラメータiは、開始コードと異なる値をもつbr_codeパラメータを有するフレームの数を数える。よって、パラメータiは1で始まり、br_digitsまで進む。フレームiのbr_codeパラメータを使って、中間的なビットレート補正因子fbrCorr(i)が次のようにして再帰的に決定されてもよい。
Figure 0006271756
ここで、fbrCorr(0)=1であり、br_code(i)はフレームiのbr_codeパラメータの値を表わす。上記の漸化式を使って、中間的なビットレート補正因子fbrCorr(i)は、開始コードとは異なる値をもつbr_codeパラメータを有するフレーム一つごとに洗練されうる。第二の開始コードを有するフレームが受領されるとすぐ、中間的なビットレート補正因子fbrCorr(i)はビットレート補正因子fbrCorrに設定されうる。よって、ビットレート補正因子fbrCorrはフレームごとに洗練されうる。
図2の状態図200は、br_corrおよびbr_digits値がどのように逐次反復式に累計されうるかを示している。状態図または状態機械200は初期状態201を有する。初期状態内では、開始コードに対応するbr_codeパラメータ(すなわち、図示した例では値11bを有するbr_codeパラメータ)を有するフレームの存在がモニタリングされる。開始コード以外のbr_codeパラメータをもつフレームが検出されたら(遷移212)、状態機械200は初期状態201内に留まる。他方、開始コードに対応するbr_codeパラメータをもつフレーム(遷移211)が検出されたら、状態機械200は初期化状態202に移る。初期化状態202内では、パラメータbr_digitsおよびbr_corrは0に設定されうる。
開始コードに対応するbr_codeパラメータをもつその後のフレームの検出に際して(遷移211)、ットレートの現在の推定値がリセットされてもよい。開始コード以外の値に対応するbr_codeパラメータをもつその後のフレームの検出に際しては(遷移212)、パラメータbr_digitsおよびbr_corrの累積が累積状態203において起こりうる。パラメータbr_digitsおよびbr_corrの累積/決定は、開始コード以外の値に対応するbr_codeパラメータをもつフレーム(遷移212)が受領される限り、進行しうる。よって、パラメータbr_digitsおよびbr_corrはフレームごとに更新されることができ、それにより、(上記の公式を使って)ビットレート補正因子fbrCorrについてのより精密な値を与える。
新たな開始コードの検出(遷移211)は、新たなビットレート値が決定されるべきであることを示しうる。次いでパラメータbr_digitsおよびbr_corrは初期化状態202においてリセットされてもよい。
図2に示されるように、二つ以上の連続するビットレート開始コードが受領される場合には、ビットレート計算はリセットされてもよい。連続するビットレート開始コードは、ビットストリーム111のエンコーダ101がビットレート(たとえばABRビットレート)を修正することを明示的に信号伝達するために使われてもよい。
ビットストリーム111内に担持される(たとえばオーディオ信号の)プログラムの変化が、累積状態203における累積プロセスのリセットおよび状態201もしくは状態202へのリセットを引き起こしてもよいことを注意しておくべきである。
上記で概説したように、ビットレート補正因子fbrCorrは、フレームおよび/またはbr_codeパラメータの値が受領されるにつれて逐次的にデコードされてもよい。追加的な数字、すなわちbr_codeパラメータの追加的な値は、ビットレート補正因子fbrCorrはの精度を因子3だけ改善する。
推定値brEstはビットレート補正因子fbrCorrに基づき(すなわち、仮数に基づき)かつ指数K1およびK2の少なくとも一方に基づいて決定されてもよい。具体的には、K1およびK2についてビットレートの二つの中間的な推定値br1およびbr2がそれぞれ次式を使って計算されてもよい。
Figure 0006271756
正しい推定値(すなわちbr1またはbr2)は、推定値br1およびbr2を下限および上限brminおよびbrmaxとそれぞれ比較することによって決定されてもよい。次の条件:
brmin<brx<brmax x∈{1,2}
を満たすビットレート推定値が推定されたビットレートbrEst=brxに対応する。
上記の条件を満たすbrxがなければ、それは区間[brmin,brmax]によって与えられるビットレート推定が、ビットレート補正因子に基づいて決定できる推定値より正確であることを意味する。そのような場合、実際のビットレートbrは範囲[brmin,brmax]内にある。範囲[brmin,brmax]から典型的なビットレート値(たとえば丸められたビットレート値)が、推定されたビットレートbrEstとして選択されてもよい。あるいはまた、ビットレートの推定値はbrminおよびbrmaxの幾何平均として決定されてもよい。あるいは、ビットレートの上限の推定値が必要とされる場合には、brmaxが推定されたビットレートbrEstとして取られてもよい。
ある好ましい実施形態では、ビットレートを指定するために(特に、ビットレート補正因子fbrCorrを指定するために)三つのbr_digits(すなわち三つのフレーム)が使われてもよい。よって、開始コードをもつフレームを含めて、ビットレート計算は合計5個のフレームに基づくのであってもよい。第一の段階では、上限および下限が決定される。ビットレート・ベース範囲の選択は典型的には、限界が次の条件:brmax<2*brmin→brmax/brmin≦2を満たす場合にのみ一意的となる。上記の公式から、次のようになる。
Figure 0006271756
N=5については、上記は、平均で、3/2となる(これは2より小さく、[1,2]の範囲内にある)。3個の数字を使うことは、各ビットレート・ベース範囲内の27個の「ステップ」を与える。単一のステップは2^(1/27)=1.027に対応する。よって、(五つのフレームについて)本稿において記述される方法を使うビットレート推定値の正確さは、3%程度であると期待される。
上記で概説したように、(少なくとも)二つのベース範囲VBase(k)が、限界値brminおよびbrmaxに基づいて決定されてもよい。それらのベース範囲の一つのベース範囲の限界、すなわち2kkbit/s、たとえば128kbpsに対応する、あるいは該限界に近い実際のビットレートbrについては特に、限界値brminおよびbrmaxは変動するベース範囲につながりうる。あるフレームでは、限界値brminおよびbrmaxは[64,128[のベース範囲および次のフレームでは[128,256[のベース範囲を結果として与えることがある。フレームの各サブシーケンスについて(少なくとも)二つのベース範囲VBase(k)を決定することによって、正しいビットレート推定値を与える少なくとも一つのベース範囲が決定されることが保証される。さらに、これは、ビットレート補正因子が時間を追って安定したままであることを許容する(上記の例において理想的にはfbrCorr=0)。その際、[128,256[ベース範囲のみがビットレートを上限および下限brminおよびbrmaxの間にする。そのような論理を使うことで、エンコーダ101は、使用された実際のフレーム・サイズを参照しない一定の補正因子fbrCorrを送ることができる。
表2のシンタックスにおいて示されるビットレート・コード(すなわちbr_codeパラメータ)はVBRビットストリーム111について使用されてもよい。上記で概説したように、br_corrパラメータは、一つまたは複数のフレームのbr_codeパラメータの一つまたは複数の値から決定されてもよい。次いで、br_corrパラメータは、表3との関連で、VBRビットストリーム111のビットレートを決定するために使われてもよい。よって、VBRビットストリーム111の場合でも、記載されるbr_codeパラメータは、ビットストリーム111のビットレートの推定値を与えるために使用されうる。
Figure 0006271756
このように、本稿では、ABRビットストリームの初期ビットレート範囲を推定するためにフレームのシーケンスの諸フレーム・サイズおよびwait_framesパラメータを使うことが提案される。計算は、追加的な二つのビットを(ビットレート・コード・パラメータとして)送ることによってさらに洗練されてもよい。ビットレート・コード・パラメータは、ビットレートに関するより精密な情報を信号伝達するために、wait_framesパラメータを含むフレームにアペンドされてもよい。一定ビットレート(CBR、典型的にはwait_frames=0)ビットストリームについては、追加的な信号伝達は典型的には必要とされない。すべてのフレームが同じサイズ(±1バイト)をもつからである。可変ビットレート(VBR、典型的にはwait_frames=7)ビットストリームについては、ビットレート・コード・パラメータの二つのビットは、(表3のコンテキストにおいて概説されたように)情報提供目的のために絶対的な目標または平均ビットレートを信号伝達するために使われてもよい。
よって、本稿では、ビットストリームのビットレートを信号伝達するおよび/または推定するための方法が記述された。記述された方法は、ビットストリーム内のほんの限られた量のオーバーヘッド・データを使ってビットレートの精密な決定を許容する。さらに、記載された方法は、逐次反復的または逐次的な仕方でのビットレートの推定を許容する。特に、ビットレート推定値の正確さは、柔軟な仕方で(たとえばフレームごとに)向上させられうる。
本稿で記載された方法およびシステムは、ソフトウェア、ファームウェアおよび/またはハードウェアとして実装されてもよい。ある種のコンポーネントは、たとえばデジタル信号プロセッサまたはマイクロプロセッサ上で走るソフトウェアとして実装されてもよい。他のコンポーネントはたとえば、ハードウェアおよびまたは特定用途向け集積回路として実装されてもよい。記載される方法およびシステムにおいて遭遇される信号は、ランダム・アクセス・メモリまたは光学式記憶媒体のような媒体上に記憶されてもよい。そうした信号は、電波ネットワーク、衛星ネットワーク、無線ネットワークもしくは有線ネットワーク、たとえばインターネットのようなネットワークを介して転送されてもよい。本稿で記載される方法およびシステムを利用する典型的な装置は、オーディオ信号を記憶および/またはレンダリングするために使用されるポータブル電子装置または他の消費者装置である。
本稿のさらなる側面について以下で述べる。
本稿では、ビットレート情報を信号伝達するためにビットストリームにおいて所定数のビットをリザーブすることが提案される。そうしたリザーブされたビットは典型的にはメタデータ負荷を増すので、その数は比較的小さいように、たとえば[2,8]の範囲内に、好ましくは[2,4]、最も好ましくは2に選ばれるべきである。
少数の前記リザーブされたビットは、そのような限られた数の(少数の)ビットがエンコードできる数値範囲の不足のため、適用されるビットレートをエンコードできないことがありうる。よって、本稿は、ビットレート信号伝達をいくつかのその後のフレームにわたって分散させることを提案する。
さらに、本稿は、前記いくつかのその後のフレームにわたる前記所定数のビットの値が、前記いくつかのその後のフレーム内のある現在フレームの位置に依存して、前記ビットの意義〔表わす数〕にデコードされるような、ビットレートの間接的な符号化の備えもする。これは、ビットレートをエンコード/信号伝達するためのビット需要をさらに低減する。加えて、本稿は、ビットレートの推定値を決定するための測定および信号伝達の組み合わせの使用を記述する。こうすることにより、測定可能な正確さを超える精度をもつビットレートを信号伝達するために必要とされるビット数が低減できる。
前記その後のフレームの数は、たとえば、先行フレームであって該先行フレームの前記所定数のビットにおいてエンコードされた開始信号をもつものが検出されたのち、閉じフレームであって該閉じフレームの前記所定数のビットにおいてエンコードされた停止信号をもつものが検出される前に受領されるフレームの数である。前記先行および終結フレームはこのように前記いくつかのフレームのためのくくり〔ブラケット〕を提供する。
ある側面によれば、ビットストリームにおいてビットレートを信号伝達する方法が提案される。前記ビットストリームは複数のフレームと、ビットレート信号伝達を容易にするための所定数のビットとを含む。本方法は:
・第一のフレームにおいて、前記所定数のビットを介してビットレート開始コードを送信する段階と;
・その後の諸フレームを受領し、各その後のフレームの前記所定数のビットの値をバッファリングする段階と;
・前記その後の諸フレームに続く第二のフレームにおいて、前記所定数のビットを介してビットレート停止コードを送信する段階と;
・前記その後の諸フレームに含められた前記所定数のビットのバッファリングされた値を使って前記ビットレートの推定値を計算する段階とを含む。
ある好ましい例では、前記ビットレート開始コードおよび前記ビットレート停止コードは同一であり、たとえば二ビット形式で「11」である。
前記ビットレート推定値を直接エンコードして、該エンコードされたビットレートを前記いくつかのその後のフレームにわたって分配する代わりに、すべてのその後のフレームの前記所定数のビットの前記値は、離散的なビットレート値のあらかじめ決定されたテーブルにおいてエンコードされた離散的なビットレート値の位置を表わすことができる。この例では、すべてのその後の値にわたる前記所定数のビットの値は、あらかじめ決定されたテーブルにおいてエンコードされるある固定された離散的なビットレートの位置をエンコードする。これはビット要求について節約となる。
この例では、ほぼ対数的なスケール、たとえばbr〜2^(x/k)*br_min――ここで、kは2倍のビットレートの間のステップ数を定義する定数――が、たとえばビットレートを符号化するために提案される。xはビットストリームにおいて(前記あらかじめ定義された数のビットを介して)伝送されるコードの数値的な値である。理想的には、ビットレートは(利用可能な分解能に応じた)次の利用可能なステップに丸められる。これは、たとえばk=4について合理的な結果を与え、たとえばテーブルにおいて離散的な位置を割り当てられることのできる離散的なあらかじめ決定されたビットレート値:16,20,24,28,32,40,48,56,64,80,96,112,128,160,192などを提供する。たとえば、「16」はそのようなテーブルにおいて位置「0」を割り当てられることができ;「20」はそのようなテーブルにおいて位置「1」を割り当てられることができ;「24」はそのようなテーブルにおいて位置「2」を割り当てられることができ;「28はそのようなテーブルにおいて位置「3」を割り当てられることができる、などとなる。
ビットレートを直接符号化する代わりに、離散的なビットレート値の位置を符号化し、それにより要求されるビットを節約することができる。
さまざまな例において、ビットレートを信号伝達するためにリザーブされるビットの数は、ビットレート推定値をデコードするために必要なその後のフレームの数を決定する。ビットレート信号伝達のために二ビットを使うことで良好な結果が達成されている。ここで、ビットレートをデコードするためには5個のフレームが使われる。
上記の例示的なテーブルを使うと、たとえばテーブル中で位置13である160kbpsを信号伝達するために、13(テーブル中の160kbpsの位置を示す!)=1*9+1*3+1*1→11 01 01 01 11を伝送する必要があることがある。ここで、「11」は開始および停止コードである。開始および停止コードの中間で三つの「シンボル」:「01」→「01」→「01」が伝送される。結果として、(開始および停止コード・フレームを含めて)5フレーム後に、完全な結果を得る。ここで、実際のビットレート位置は、開始および停止コードをもつフレームの中間に伝送されるフレームにおいてエンコードされる。
あるいはまた、先に概説したあらかじめ定義された符号化テーブルのアプローチを使う代わりに、ビットレートの推定値の計算は、受領されたフレームの実際のサイズを使って第一のビットレート推定値を計算し、すべてのその後のフレームの前記所定数のビットの前記値に基づいてビットレート補正因子を計算することを含むことができる。ここで、前記ビットレート補正因子は、前記第一のビットレート推定値に適用されて、ビットレートの推定値を与えてもよい。この例では、前記所定数のビットはビットレートを直接または間接にエンコードする代わりに、――前記いくつかのその後のフレームにわたって分散されて――補正因子をエンコードする。ここで、ビットレートは、受領された諸フレームの実際のサイズから第一段階においておおまかに推定され、第二段階において、その後の諸フレームの前記所定数のビットにおいてエンコードされた補正因子を適用する。
前記ビットレート補正因子はたとえば、次式に従って計算されてもよい。
Figure 0006271756
ここで、brcorrは、すべてのその後のフレームの前記所定数のビットの前記値から導出され、brdigitsは受領されたその後のフレームの数を表わし、ビットの前記所定数は2である。
提案されるビットレート補正因子の指数における底の分母は「3」とは異なるように選ばれることもできる。ここで、それは、ビットレート補正因子が[1,2]の範囲内の値を与えるように選ばれる。
より一般には、前記ビットレート補正因子はたとえば、次式に従って計算されてもよい。
Figure 0006271756
ここで、br_corrは、すべてのその後のフレームの前記所定数のビットの前記値から導出され、brdigitsは受領されたその後のフレームの数を表わし、br_bitsはビットの前記所定数である。
また、提案されるビットレート補正因子の指数における底の分母は「(2br_bits−1)br_digits」(上記参照)とは異なるように選ばれることもできる。ここで、それは、信号伝達のために二ビットが使われ(br_bits=2)、ビットレート補正因子が[1,2]の範囲内の値を与えるように選ばれる。
この例では、第一のビットレート推定値の計算は、前記実際のフレーム・サイズに基づいて前記第一のビットレート推定値についての上限および下限を計算することを含んでいてもよく、前記上限および下限の計算は、受領されたフレームに関係するフレーム・レートおよびフレーム・バッファ充填レベルを表わす受領された値を使ってさらに洗練されることができる。
上記の例のさらなる改善において、第一および第二のベース範囲が次式を使って前記第一のビットレート推定値について決定される:
VBase(k)=[2kkbit/s, 2(k+1)kbit/s[
ここで、第一および第二のベース範囲(VBase(K1)およびVBase(K2))は次の条件:brmin∈VBase(K1)およびK2=K1+1を満たすものである。ここで、brminは前記下限を表わし、前記ビットレートの推定値の計算は好ましくは:
・前記第一のベース範囲に前記ビットレート補正因子を適用する第一段階;
・前記第二のベース範囲に前記ビットレート補正因子を適用する第二段階;および
・前記ビットレートの推定値を与えるべき前記第一段階の結果または前記第二段階の結果を決定する段階
をも含む。
そのような例では、前記第一のベース範囲に適用された前記ビットレート補正因子が前記上限と下限の間にあれば、第一段階の結果が前記ビットレートの推定値を与えてもよく、前記第二のベース範囲に適用された前記ビットレート補正因子が前記上限と下限の間にあれば、第二段階の結果が前記ビットレートの推定値を与えてもよい。
本稿に記載される何らかの方法を容易にするために、ビットストリーム・フォーマットが記述される。ここで、前記ビットストリーム・フォーマットは、前記ビットストリームに関係したビットレートをエンコードするための所定数のビットを含み、前記所定数のビットは前記ビットレートを部分的に反映し、それによりある数のその後のフレームの前記所定数のビットのすべての値が前記ビットレートを与える。
好ましくは、前記いくつかのその後のフレームは、前記いくつかのその後のフレームの前記所定数のビットにおいてエンコードされている開始ビットレート・コードおよび停止ビットレート・コードから決定される。
記数法(number system)においてある数の数字をもつ数値をエンコードするのと同様に、前記その後のフレームのシーケンスにおけるフレームの位置が、前記フレームに含まれる前記所定数のビットの意義〔表わす数〕に関係していてもよい。
あるさらなる例は二つの直接連続するフレームの前記所定数のビットにおいて「開始コード」および「停止コード」(「11」→「11」)を送ることをも含んでいてもよい。たとえば、たとえば異なるビットストリーム(たとえば、「広告挿入」またはプログラム変化に関係する)が受領されたあとに異なるビットレートが決定されるときに、ビットレート・デコードを明示的にリセットするためである。
いくつかの態様を記載しておく。
〔態様1〕
ビットストリームのビットレートbrの推定値br est を決定する方法であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、前記フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有し、フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示し、当該方法は:
・前記ビットストリームからのフレームのサブシーケンスについて全ビット数S Tot を決定する段階と;
・前記サブシーケンス内に含まれるフレーム数に基づきかつ前記サブシーケンスの少なくとも二つのフレームのwait_framesパラメータに基づいて、補正されたフレーム数N'を決定する段階と;
・全ビット数S Tot に基づき、補正されたフレーム数N'に基づき、かつ前記ビットストリームのフレーム・レートf frame に基づいて、ビットレートbrのビットレート下限br min およびビットレート上限br max を決定する段階とを含む、
方法。
〔態様2〕
・フレームのwait_framesパラメータは、対応するフレームが処理に先立って遅延されるフレーム数を示し;
・前記補正されたフレーム数N'は、前記サブシーケンスからの第一のフレームおよび第二のフレームのwait_framesパラメータの間の差に基づいて決定される、
態様1記載の方法。
〔態様3〕
・前記第一のフレームは前記サブシーケンスの先頭のフレームに対応し、
・前記第二のフレームは前記サブシーケンスの末尾のフレームに対応する、
態様2記載の方法。
〔態様4〕
・前記ビットレート下限br min は補正された数N'に1を加えたものに基づいて決定され;
・前記ビットレート上限br max は補正された数N'から1を引いたものに基づいて決定される、
態様1ないし3のうちいずれか一項記載の方法。
〔態様5〕
フレームの前記サブシーケンスはN+1個のフレームnを含み、n=0,…,Nであり、
・前記サブシーケンスの先頭のフレームn=0は、wait_frames(0)と称されるwait_framesパラメータを含み;
・前記サブシーケンスの末尾のフレームn=Nは、wait_frames(N)と称されるwait_framesパラメータを含み;
・前記全ビット数S Tot は、前記サブシーケンスのN個のフレームについて決定され;
・前記補正されたフレーム数N'は、wait_frames(0)とwait_frames(N)の間の差を使ってNをオフセットすることによって決定される、
態様1ないし4のうちいずれか一項記載の方法。
〔態様6〕
前記補正されたフレーム数N'は
N'=N+wait_frames(0)−wait_frames(N)
として決定される、態様5記載の方法。
〔態様7〕
・フレームのwait_framesパラメータは、対応するフレームの末尾に対する処理遅延を示し;
・前記全ビット数S Tot
Figure 0006271756
として決定され;
・S n は前記サブシーケンスのフレームnのビット数である、
態様5または6記載の方法。
〔態様8〕
・前記ビットレート下限が
Figure 0006271756
によって与えられる、および/または
・前記ビットレート上限が
Figure 0006271756
によって与えられる、
態様1ないし7のうちいずれか一項記載の方法。
〔態様9〕
・前記フレームのシーケンスの少なくともいくつかのフレームは、ビットレート・コード・パラメータを含み;
・前記ビットレート・コード・パラメータの値は、開始コードおよび/または停止コードに対応し;
・前記サブシーケンスは、前記フレームのシーケンスから、前記開始コードおよび/または前記停止コードに基づいて決定される、
態様1ないし8のうちいずれか一項記載の方法。
〔態様10〕
前記サブシーケンスは、
・前記サブシーケンスの先頭のフレームが前記開始コードに対応するビットレート・コード・パラメータを有し;
・前記サブシーケンスの末尾のフレームが前記停止コードに対応するビットレート・コード・パラメータを有し;
・サブシーケンスの他のどのフレームも前記開始コードまたは前記停止コードに対応するビットレート・コード・パラメータを有さないように決定される、
態様9記載の方法。
〔態様11〕
前記開始コードが前記停止コードに等しい、態様9または10記載の方法。
〔態様12〕
wait_framesパラメータを有するフレームのみがビットレート・コード・パラメータを有する、態様9ないし11のうちいずれか一項記載の方法。
〔態様13〕
・前記ビットストリームのビットレートbrの推定値br est が、仮数f brCorr および指数kを有する浮動小数点表現において表現可能であり;
・指数kは、ビットレートbrのビットレート下限br min に基づいておよび/またはビットレート上限br max に基づいて決定され;
・仮数f brCorr は、前記サブシーケンスの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて決定される、
態様9ないし12のうちいずれか一項記載の方法。
〔態様14〕
・前記浮動小数点表現は、br est =f brCorr ×2 k となるような二進浮動小数点表現であり;
・仮数f brCorr は1から2までの間の値を取る、
態様13記載の方法。
〔態様15〕
当該方法は、
・少なくとも二つの潜在的な指数K 1 およびK 2
Figure 0006271756
となるよう決定する段階と;
・少なくとも二つの中間推定値br x を、x∈{1;2}として、b rx =f brCorr ×2 Kx となるよう、決定する段階と;
・x∈{1;2}についてbr min ≦br x <br max となるよう、前記少なくとも二つの中間的な推定値br x の一方を、ビットレートbrの推定値br est として選択する段階とを含む、
態様14記載の方法。
〔態様16〕
前記少なくとも二つの中間的な推定値br x のいずれも条件br min ≦br x <br max を満たさない場合には、ビットレートbrの推定値br est を区間[br min ,br max ]内に含まれるある値として決定する、態様15記載の方法。
〔態様17〕
区間[br min ,br max ]内に含まれる前記値は、
・ビットレート下限br min およびビットレート上限br max の平均値である;および/または
・区間[br min ,br max ]の他の値に比べてビットレートbrである増大した確率をもつ値である;および/または
・安全な推定値としてのbrmaxに等しい、
態様16記載の方法。
〔態様18〕
・フレームの前記ビットレート・コード・パラメータは、Lが1より大きな整数であるとして、L通りの異なるビットレート・コード値を取り;
・L個の前記ビットレート・コード値は前記開始コードおよび/または停止コードとは異なり;
・仮数f brCorr は、前記サブシーケンスの一つまたは複数のフレームのビットレート・コード値に依存する、
態様14ないし17のうちいずれか一項記載の方法。
〔態様19〕
仮数f brCorr の精度が、ビットレート・コード値に対応するビットレート・コード・パラメータを含む前記サブシーケンスのフレームの数とともに増大する、態様18記載の方法。
〔態様20〕
仮数f brCorr の精度が、ビットレート・コード値に対応するビットレート・コード・パラメータを含む前記サブシーケンスの各フレームとともに因子Lだけ増大する、態様19記載の方法。
〔態様21〕
・前記サブシーケンスは、ビットレート・コード値に対応するビットレート・コード・パラメータを有するQ個のフレームqを有し、ここで、q=1,…,Qであり、Qは0より大きい整数であり;
・c q はフレームqのビットレート・コード値であり、c q ∈{0;1;…;L−1}であり、
・br_corrは
Figure 0006271756
として決定される累積されたビットレート・コードであり、
・仮数f brCorr
Figure 0006271756
によって与えられる、
態様18ないし20のうちいずれか一項記載の方法。
〔態様22〕
・Q=3、
・L=3、
・N=4である、
態様21記載の方法。
〔態様23〕
前記ビットレート・コード・パラメータが二ビットを有する、態様9ないし22のうちいずれか一項記載の方法。
〔態様24〕
・前記ビットストリームは、ABRと称される平均ビットレートを示す;および/または
・前記ビットストリームは、バッファ・モデルに従い、そのバッファ・モデルの状態を信号伝達するためにwait_framesパラメータを使う;および/または
・前記フレームのシーケンスの諸フレームが、一定の時間的長さをもつオーディオおよび/またはビデオ信号の抜粋に対応する;および/または
・前記ビットストリームのフレーム・レートf frame が一定である、
態様1ないし23のうちいずれか一項記載の方法。
〔態様25〕
ビットストリームのビットレートbrの推定値br est を決定するよう構成されている、プロセッサを有するビットレート推定器であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、前記フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有し、フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示し、前記プロセッサは、
・前記ビットストリームからのフレームのサブシーケンスについて全ビット数S Tot を決定し;
・前記サブシーケンス内に含まれるフレーム数に基づいてかつ前記サブシーケンスの少なくとも二つのフレームのwait_framesパラメータに基づいて、補正されたフレーム数N'を決定し;
・全ビット数S Tot に基づいて、補正されたフレーム数N'に基づいて、かつ前記ビットストリームのフレーム・レートf frame に基づいて、ビットレートbrのビットレート下限br min およびビットレート上限br max を決定するよう構成されている、
ビットレート推定器。
〔態様26〕
一つまたは複数の個々のビットストリームから組み合わされたビットストリームを決定するよう構成された多重化装置であって、当該多重化装置は、前記一つまたは複数の個々のビットストリームのビットレートの推定値を決定するよう構成されている態様25記載のビットレート推定器を有し、当該多重化装置は、前記一つまたは複数の個々のビットストリームのビットレートの推定値に基づいて前記組み合わされたビットストリームを決定するよう構成されている、多重化装置。
〔態様27〕
・前記一つまたは複数の個々のビットストリームは、エレメンタリー・ストリームであり;
・前記組み合わされたビットストリームはMPEG-2トランスポート・ストリームである、
態様26記載の多重化装置。
〔態様28〕
ビットレートbrをもつビットストリームを提供する方法であって、
・オーディオおよび/またはビデオ信号からフレームのシーケンスを生成する段階であって、前記フレームのシーケンスの諸フレームは、前記オーディオおよび/またはビデオ信号の抜粋に対応する、段階と;
・前記フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入する段階であって、フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示す、段階と;
・前記フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入する段階とを含み、前記ビットレート・コード・パラメータは、種々のビットレート・コード値を取り、挿入されるビットレート・コード・パラメータのビットレート・コード値は前記ビットストリームのビットレートbrに依存する、
方法。
〔態様29〕
ビットレート・コード・パラメータは、wait_framesパラメータをも含むフレームに中にのみ挿入される、態様28記載の方法。
〔態様30〕
wait_framesパラメータが前記フレームのシーケンスの諸フレームが変動する数のビットを含むことを示す場合のみビットレート・コード・パラメータが挿入される、態様29記載の方法。
〔態様31〕
前記ビットレート・コード・パラメータは二つのビットを有する、態様28ないし30のうちいずれか一項記載の方法。
〔態様32〕
前記ビットレート・コード・パラメータは、二つ以上のビットレート・コード値に加えて、開始コードおよび/または停止コードを含む、態様28ないし31のうちいずれか一項記載の方法。
〔態様33〕
ビットレートbrを有するビットストリームであって、当該ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームはオーディオおよび/またはビデオ信号の抜粋に対応し、前記フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有し、フレームのwait_framesパラメータは対応するフレームについての処理遅延を示し、前記フレームのシーケンスのうち少なくとも二つのフレームがビットレート・コード・パラメータを含み、前記ビットレート・コード・パラメータは、種々のビットレート・コード値を取り、挿入されたビットレート・コード・パラメータのビットレート・コード値は当該ビットストリームのビットレートbrに依存する、ビットストリーム。
〔態様34〕
ビットレートbrを有するビットストリームを生成するよう構成されたエンコード・システムであって、当該エンコード・システムは、
・オーディオおよび/またはビデオ信号からフレームのシーケンスを生成する段階であって、前記フレームのシーケンスの諸フレームは、前記オーディオおよび/またはビデオ信号の抜粋に対応する、段階と;
・前記フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入する段階であって、フレームのwait_framesパラメータは、対応するフレームについての処理遅延を示す、段階と;
・前記フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入する段階とを含み、前記ビットレート・コード・パラメータは種々のビットレート・コード値を取り、挿入されるビットレート・コード・パラメータのビットレート・コード値は前記ビットストリームのビットレートbrに依存する、
方法。
〔態様35〕
ビットストリームのビットレートbrの推定値br est を決定する方法であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、前記ビットストリームのビットレートbrの推定値br est は、仮数f brCorr および指数kを有する浮動小数点表現において表現可能であり、前記フレームのシーケンスのうち少なくとも一つのフレームがビットレート・コード・パラメータを有し、当該方法は:
・ビットレートbrのビットレート下限br min およびビットレート上限br max を提供する段階と;
・指数kを、ビットレートbrのビットレート下限br min に基づいておよび/またはビットレート上限br max に基づいて決定する段階と;
・仮数f brCorr を、前記フレームのシーケンスの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて決定する段階とを含む、
方法。
本稿の具体的な付番側面は次のとおり。
〔側面1〕ビットストリームにおいてビットレートを信号伝達する方法であって、前記ビットストリームは複数のフレームと、ビットレート信号伝達を容易にするための所定数のビットとを含み、当該方法は:
・第一のフレームにおいて、前記所定数のビットを介してビットレート開始コードを送信する段階と;
・その後の諸フレームを受領し、各その後のフレームの前記所定数のビットの値をバッファリングする段階と;
・前記その後の諸フレームに続く第二のフレームにおいて、前記所定数のビットを介してビットレート停止コードを送信する段階と;
・前記その後の諸フレームに含められた前記所定数のビットのバッファリングされた値を使って前記ビットレートの推定値を計算する段階とを含む、
方法。
〔側面2〕前記ビットレート開始コードおよび前記ビットレート停止コードが同一である、側面1記載の方法。
〔側面3〕すべてのその後のフレームの前記所定数のビットの前記値が、離散的なビットレート値のあらかじめ決定されたテーブルにおいてエンコードされた離散的なビットレート値の位置を表わす、側面1記載の方法。
〔側面4〕前記ビットレートの推定値の計算は:
受領されたフレームの実際のサイズを使って第一のビットレート推定値を計算し、
すべてのその後のフレームの前記所定数のビットの前記値に基づいてビットレート補正因子を計算することを含み、前記ビットレート補正因子は、前記第一のビットレート推定値に適用されて、ビットレートの推定値を与える、
方法。
〔側面5〕前記第一のビットレート推定値の計算は、前記実際のフレーム・サイズに基づいて前記第一のビットレート推定値についての上限および下限を計算することを含む、側面4記載の方法。
〔側面6〕前記上限および下限の計算は、フレーム・レートおよびフレーム・バッファ充填レベルを表わす受領された値にさらに基づく、側面5記載の方法。
〔側面7〕前記第一のビットレート推定値について第一および第二のベース範囲を、次式:
VBase(k)=[2kkbit/s, 2(k+1)kbit/s[
を使って決定する段階をさらに含み、ここで、前記第一および第二のベース範囲(VBase(K1)およびVBase(K2))は次の条件:
brmin∈VBase(K1)および
K2=K1+1
を満たすものであり、brminは前記下限を表わす、
側面5記載の方法。
〔側面8〕前記ビットレートの推定値は:
・前記第一のベース範囲に前記ビットレート補正因子を適用する第一段階;
・前記第二のベース範囲に前記ビットレート補正因子を適用する第二段階;および
・前記ビットレートの推定値を与えるべき前記第一段階の結果または前記第二段階の結果を決定する段階
を含む、側面7記載の方法。
〔側面9〕前記第一のベース範囲に適用された前記ビットレート補正因子が前記上限と下限の間にあれば、前記第一段階の結果が前記ビットレートの推定値を与える、側面8記載の方法。
〔側面10〕前記第二のベース範囲に適用された前記ビットレート補正因子が前記上限と下限の間にあれば、前記第二段階の結果が前記ビットレートの推定値を与える、側面8記載の方法。
〔側面11〕前記ビットレート補正因子は:
Figure 0006271756
に従って計算され、
brcorrは、すべてのその後のフレームの前記所定数のビットの前記値から導出され、brdigitsは受領されたその後のフレームの数を表わし、
ビットの前記所定数は2である、
側面4記載の方法。
〔側面12〕
ビットの前記所定数は2であり、前記ビットレート開始コードおよび前記ビットレート停止コードは「11」である、側面2記載の方法。
〔側面13〕ビットストリームに関係したビットレートをエンコードするための所定数のビットを含むビットストリーム・フォーマットであって、前記所定数のビットは前記ビットレートを部分的に反映し、ある数のその後のフレームの前記所定数のビットのすべての値が前記ビットレートを与える、ビットストリーム・フォーマット。
〔側面14〕前記いくつかのその後のフレームは、前記所定数のビットにおいてエンコードされている開始ビットレート・コードおよび停止ビットレート・コードから決定される、側面13記載のビットストリーム・フォーマット。
〔側面15〕前記その後のフレームのシーケンスにおけるフレームの位置が前記フレームに含まれる前記所定数のビットの意義に関係する、側面13記載のビットストリーム・フォーマット。

Claims (15)

  1. ビットストリームのビットレートbrの推定値brestを決定する方法であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、それらの抜粋は一定の時間的長さをもち、前記フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有し、フレームのwait_framesパラメータは、対応するフレームが多重化装置によっておよび/またはデコード装置によって、該多重化装置および/または該デコード装置によるそのフレームの処理に先立って遅延されるフレーム数を示し、当該方法は、プロセッサが
    ・前記ビットストリームからのフレームのサブシーケンスのN個フレームについて全ビット数STotを決定する段階と;
    ・フレーム数Nに基づきかつ前記サブシーケンスの第一のフレームおよび第二のフレームのwait_framesパラメータの間の差に基づいて、補正されたフレーム数N'を決定する段階であって、前記第一のフレームは前記サブシーケンスの先頭のフレームに対応し、前記第二のフレームは前記サブシーケンスの末尾のフレームに対応する、段階と;
    ・全ビット数STotに基づき、補正されたフレーム数N'に基づき、かつ前記ビットストリームのフレーム・レートfframeに基づいて、ビットレートbrのビットレート下限brminおよびビットレート上限brmaxを決定する段階とを実行することを含む、
    方法。
  2. ・前記ビットレート下限brminは補正された数N'に1を加えたものに基づいて決定され;
    ・前記ビットレート上限brmaxは補正された数N'から1を引いたものに基づいて決定される、
    請求項1記載の方法。
  3. フレームの前記サブシーケンスはN+1個のフレームnを含み、n=0,…,Nであり、
    ・前記サブシーケンスの先頭のフレームn=0は、wait_frames(0)と称されるwait_framesパラメータを含み;
    ・前記サブシーケンスの末尾のフレームn=Nは、wait_frames(N)と称されるwait_framesパラメータを含み;
    ・前記補正されたフレーム数N'は、wait_frames(0)とwait_frames(N)の間の差を使ってNをオフセットすることによって決定される、
    請求項1または2記載の方法。
  4. ・フレームのwait_framesパラメータは、対応するフレームの末尾に対する処理遅延を示し;
    ・前記全ビット数STot
    Figure 0006271756
    として決定され;
    ・Snは前記サブシーケンスのフレームnのビット数である、
    請求項3記載の方法。
  5. ・前記ビットレート下限が
    Figure 0006271756
    によって与えられる、および/または
    ・前記ビットレート上限が
    Figure 0006271756
    によって与えられる、
    請求項1ないし4のうちいずれか一項記載の方法。
  6. ・前記フレームのシーケンスの少なくともいくつかのフレームは、ビットレート・コード・パラメータを含み;
    ・前記ビットレート・コード・パラメータの値は、開始コードおよび/または停止コードに対応し;
    ・前記サブシーケンスは、前記フレームのシーケンスから、前記開始コードおよび/または前記停止コードに基づいて、前記プロセッサによって決定される、
    請求項1ないし5のうちいずれか一項記載の方法。
  7. 前記サブシーケンスは、
    ・前記サブシーケンスの先頭のフレームが前記開始コードに対応するビットレート・コード・パラメータを有し;
    ・前記サブシーケンスの末尾のフレームが前記停止コードに対応するビットレート・コード・パラメータを有し;
    ・サブシーケンスの他のどのフレームも前記開始コードまたは前記停止コードに対応するビットレート・コード・パラメータを有さないように決定される、
    請求項6記載の方法。
  8. 前記開始コードが前記停止コードに等しい、および/または、wait_framesパラメータを有するフレームのみがビットレート・コード・パラメータを有する、請求項6または7記載の方法。
  9. ・前記ビットストリームのビットレートbrの推定値brestが、仮数fbrCorrおよび指数kを有する浮動小数点表現において表現可能であり;
    ・指数kは、ビットレートbrのビットレート下限brminに基づいておよび/またはビットレート上限brmaxに基づいて、前記プロセッサによって決定され;
    ・仮数fbrCorrは、前記サブシーケンスの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて、前記プロセッサによって決定される、
    請求項6ないし8のうちいずれか一項記載の方法。
  10. 前記ビットレート・コード・パラメータが二ビットを有する、請求項6ないし9のうちいずれか一項記載の方法。
  11. ・前記ビットストリームは、ABRと称される平均ビットレートを示す;および/または
    ・前記ビットストリームは、バッファ・モデルに従い、そのバッファ・モデルの状態を信号伝達するためにwait_framesパラメータを使う;および/または
    ・前記ビットストリームのフレーム・レートfframeが一定である、
    請求項1ないし10のうちいずれか一項記載の方法。
  12. ビットストリームのビットレートbrの推定値brestを決定するよう構成されている、プロセッサを有するビットレート推定器であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、それらの抜粋は一定の時間的長さをもち、前記フレームのシーケンスのうち少なくとも二つのフレームがwait_framesパラメータを有し、フレームのwait_framesパラメータは、対応するフレームが多重化装置によっておよび/またはデコード装置によって、該多重化装置および/または該デコード装置によるそのフレームの処理に先立って遅延されるフレーム数を示し、前記プロセッサは、
    ・前記ビットストリームからのフレームのサブシーケンスのN個フレームについて全ビット数STotを決定し;
    ・フレーム数Nに基づいてかつ前記サブシーケンスの第一のフレームおよび第二のフレームのwait_framesパラメータの間の差に基づいて、補正されたフレーム数N'を決定するよう構成されており、前記第一のフレームは前記サブシーケンスの先頭のフレームに対応し、前記第二のフレームは前記サブシーケンスの末尾のフレームに対応し;
    前記プロセッサはさらに、
    ・全ビット数STotに基づいて、補正されたフレーム数N'に基づいて、かつ前記ビットストリームのフレーム・レートfframeに基づいて、ビットレートbrのビットレート下限brminおよびビットレート上限brmaxを決定するよう構成されている、
    ビットレート推定器。
  13. ビットレートbrをもつビットストリームを提供する方法であって、プロセッサが:
    ・オーディオおよび/またはビデオ信号からフレームのシーケンスを生成する段階であって、前記フレームのシーケンスの諸フレームは、前記オーディオおよび/またはビデオ信号の抜粋に対応し、それらの抜粋は一定の時間的長さをもち、前記フレームのシーケンスの諸フレームは、変動する数のビットを含む、段階と;
    ・前記フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入する段階であって、フレームのwait_framesパラメータは、対応するフレームが多重化装置によっておよび/またはデコード装置によって、該多重化装置および/または該デコード装置によるそのフレームの処理に先立って遅延されるフレーム数を示す、段階と;
    ・前記フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入する段階とを実行することを含み、前記ビットレート・コード・パラメータは、種々のビットレート・コード値を取り、挿入されるビットレート・コード・パラメータのビットレート・コード値は前記ビットストリームのビットレートbrに依存し、前記ビットストリームのビットレートbrの推定値brestは、仮数fbrCorrおよび指数kを有する浮動小数点表現において表現可能であり、ビットレートbrの初期推定値は、多重化装置および/またはデコード装置によって、前記ビットストリーム内に含まれるwait_framesパラメータに基づいて決定され、前記初期推定値はビットレートbrのビットレート下限brminおよびビットレート上限brmaxを定義し、推定値brestの指数kは、ビットレートbrのビットレート下限brminに基づいておよび/またはビットレート上限brmaxに基づいて決定され、仮数fbrCorrは、前記多重化装置および/または前記デコード装置によって、前記ビットレート・コード・パラメータに基づいて決定される、
    方法。
  14. ビットレートbrを有するビットストリームを生成するよう構成されたエンコード・システムであって、当該エンコード・システムは、
    ・オーディオおよび/またはビデオ信号からフレームのシーケンスを生成する段階であって、前記フレームのシーケンスの諸フレームは、前記オーディオおよび/またはビデオ信号の抜粋に対応し、それらの抜粋は一定の時間的長さをもち、前記フレームのシーケンスの諸フレームは、変動する数のビットを含む、段階と;
    ・前記フレームのシーケンスのうち少なくとも二つのフレーム中にwait_framesパラメータを挿入する段階であって、フレームのwait_framesパラメータは、対応するフレームが多重化装置によっておよび/またはデコード装置によって、該多重化装置および/または該デコード装置によるそのフレームの処理に先立って遅延されるフレーム数を示す、段階と;
    ・前記フレームのシーケンスのうち少なくとも二つのフレーム中にビットレート・コード・パラメータを挿入する段階とを実行するよう構成されており、前記ビットレート・コード・パラメータは種々のビットレート・コード値を取り、挿入されるビットレート・コード・パラメータのビットレート・コード値は前記ビットストリームのビットレートbrに依存し、前記ビットストリームのビットレートbrの推定値brestは、仮数fbrCorrおよび指数kを有する浮動小数点表現において表現可能であり、ビットレートbrの初期推定値の精度は、多重化装置および/またはデコード装置によって、前記ビットストリーム内に含まれるwait_framesパラメータに基づいて決定され、前記初期推定値はビットレートbrの下限brminおよび上限brmaxを定義し、推定値brestの指数kは、前記多重化装置および/または前記デコード装置によって、ビットレートbrのビットレート下限brminに基づいておよび/またはビットレート上限brmaxに基づいて決定され、仮数fbrCorrは、前記多重化装置および/または前記デコード装置によって、前記ビットレート・コード・パラメータに基づいて決定される、
    方法。
  15. ビットストリームのビットレートbrの推定値brestを決定する方法であって、前記ビットストリームはフレームのシーケンスを含み、前記フレームのシーケンスの諸フレームは、変動する数のビットを含み、前記フレームのシーケンスの諸フレームは、オーディオおよび/またはビデオ信号の抜粋に対応し、前記ビットストリームのビットレートbrの推定値brestは、仮数fbrCorrおよび指数kを有する浮動小数点表現において表現可能であり、前記フレームのシーケンスのうち少なくとも一つのフレームがビットレート・コード・パラメータを有し、当該方法はプロセッサが
    ・ビットレートbrのビットレート下限brminおよびビットレート上限brmaxを提供する段階と;
    ・指数kを、ビットレートbrのビットレート下限brminに基づいておよび/またはビットレート上限brmaxに基づいて決定する段階と;
    ・仮数fbrCorrを、前記フレームのシーケンスの一つまたは複数のフレームのビットレート・コード・パラメータに基づいて決定する段階とを実行することを含む、
    方法。
JP2016555917A 2013-12-02 2014-11-27 ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット Active JP6271756B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP13195368 2013-12-02
EP13195368.9 2013-12-02
US201461986351P 2014-04-30 2014-04-30
US61/986,351 2014-04-30
PCT/EP2014/075799 WO2015082298A1 (en) 2013-12-02 2014-11-27 Method for bitrate signaling and bitstream format enabling such method

Publications (2)

Publication Number Publication Date
JP2017504282A JP2017504282A (ja) 2017-02-02
JP6271756B2 true JP6271756B2 (ja) 2018-01-31

Family

ID=49683597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016555917A Active JP6271756B2 (ja) 2013-12-02 2014-11-27 ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット

Country Status (5)

Country Link
US (1) US10074382B2 (ja)
EP (1) EP3078023B1 (ja)
JP (1) JP6271756B2 (ja)
CN (1) CN105849800B (ja)
WO (1) WO2015082298A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9794574B2 (en) * 2016-01-11 2017-10-17 Google Inc. Adaptive tile data size coding for video and image compression
US10742708B2 (en) 2017-02-23 2020-08-11 Netflix, Inc. Iterative techniques for generating multiple encoded versions of a media title
US11166034B2 (en) 2017-02-23 2021-11-02 Netflix, Inc. Comparing video encoders/decoders using shot-based encoding and a perceptual visual quality metric
US11153585B2 (en) 2017-02-23 2021-10-19 Netflix, Inc. Optimizing encoding operations when generating encoded versions of a media title
US10897618B2 (en) 2017-02-23 2021-01-19 Netflix, Inc. Techniques for positioning key frames within encoded video sequences
US10666992B2 (en) 2017-07-18 2020-05-26 Netflix, Inc. Encoding techniques for optimizing distortion and bitrate
US10880354B2 (en) 2018-11-28 2020-12-29 Netflix, Inc. Techniques for encoding a media title while constraining quality variations
US10841356B2 (en) 2018-11-28 2020-11-17 Netflix, Inc. Techniques for encoding a media title while constraining bitrate variations

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5134476A (en) 1990-03-30 1992-07-28 At&T Bell Laboratories Video signal encoding with bit rate control
US5159447A (en) 1991-05-23 1992-10-27 At&T Bell Laboratories Buffer control for variable bit-rate channel
GB2307613B (en) 1995-08-31 2000-03-22 British Broadcasting Corp Switching bit-rate reduced signals
US6574593B1 (en) 1999-09-22 2003-06-03 Conexant Systems, Inc. Codebook tables for encoding and decoding
JP3807193B2 (ja) * 2000-05-25 2006-08-09 日本ビクター株式会社 多重化方法及び多重化装置
JP2002218458A (ja) * 2001-01-12 2002-08-02 Matsushita Electric Ind Co Ltd 映像再生装置
US7062429B2 (en) * 2001-09-07 2006-06-13 Agere Systems Inc. Distortion-based method and apparatus for buffer control in a communication system
CN1557072A (zh) * 2001-09-21 2004-12-22 ���˹���Ѷ��� 使用缓冲器大小计算用于拥塞控制的传输速率的数据通信方法和系统
US7266147B2 (en) * 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
US20050036549A1 (en) 2003-08-12 2005-02-17 Yong He Method and apparatus for selection of scanning mode in dual pass encoding
US8107531B2 (en) 2003-09-07 2012-01-31 Microsoft Corporation Signaling and repeat padding for skip frames
US7263126B2 (en) 2003-09-15 2007-08-28 Sharp Laboratories Of America, Inc. System and method for transcoding with adaptive bit rate control
US8502706B2 (en) 2003-12-18 2013-08-06 Intel Corporation Bit allocation for encoding track information
KR100621581B1 (ko) 2004-07-15 2006-09-13 삼성전자주식회사 기초 계층을 포함하는 비트스트림을 프리디코딩,디코딩하는 방법, 및 장치
JP4728760B2 (ja) * 2005-09-27 2011-07-20 パナソニック株式会社 情報再生装置
JP2008097781A (ja) * 2006-10-16 2008-04-24 Matsushita Electric Ind Co Ltd 音声再生装置
KR101571573B1 (ko) 2007-09-28 2015-11-24 돌비 레버러토리즈 라이쎈싱 코오포레이션 부가적인 정보 역량을 이용한 멀티미디어 코딩 및 디코딩
WO2010005691A1 (en) 2008-06-16 2010-01-14 Dolby Laboratories Licensing Corporation Rate control model adaptation based on slice dependencies for video coding
US20100150168A1 (en) * 2008-11-17 2010-06-17 Chanchal Chatterjee Method and apparatus for multiplexing of digital video
JP5206382B2 (ja) * 2008-12-10 2013-06-12 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
EP2237557A1 (en) 2009-04-03 2010-10-06 Panasonic Corporation Coding for filter coefficients
US8510107B2 (en) 2009-11-18 2013-08-13 General Instrument Corporation Audio data bit rate detector
JP2011257870A (ja) * 2010-06-07 2011-12-22 Visionere Corp 光ディスク再生装置、光ディスク、データ配信システム、およびデータ配信方法
KR101854469B1 (ko) 2011-11-30 2018-05-04 삼성전자주식회사 오디오 컨텐츠의 비트레이트 판단장치 및 방법
KR20130122353A (ko) 2012-04-30 2013-11-07 삼성전자주식회사 비트율 추정 장치 및 그것의 비트율 추정 방법
US10021409B2 (en) * 2012-05-09 2018-07-10 Integrated Device Technology, Inc. Apparatuses and methods for estimating bitstream bit counts
KR20150029007A (ko) * 2012-07-03 2015-03-17 톰슨 라이센싱 기록 매체 상의 타임 시프트 기능에 관한 데이터 기록 장치 및 방법
US9462032B2 (en) * 2013-07-24 2016-10-04 Google Inc. Streaming media content

Also Published As

Publication number Publication date
JP2017504282A (ja) 2017-02-02
EP3078023B1 (en) 2019-12-25
US10074382B2 (en) 2018-09-11
WO2015082298A1 (en) 2015-06-11
CN105849800A (zh) 2016-08-10
CN105849800B (zh) 2020-04-10
US20160300586A1 (en) 2016-10-13
EP3078023A1 (en) 2016-10-12

Similar Documents

Publication Publication Date Title
JP6271756B2 (ja) ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット
JP5410566B2 (ja) マルチプロセッサアーキテクチュア並びにピクチュアベースの先読みウィンドウを具備したデジタルビデオエンコーダのためのパラレルレートコントロール
CN1981492B (zh) 用于多媒体流中速率适配的缓冲器水平信令
KR100944084B1 (ko) 헤더를 포함하는 프레임에 배열된 코딩된 디지털 오디오신호를 디코딩하는 방법 및 장치
US9313488B2 (en) Hypothetical reference decoder
US8996713B2 (en) Video streaming
EP2200319A1 (en) Multiplexed video streaming
JP2022516517A (ja) メディアタイトルのバッファ制約バージョンを生成する際の符号化演算の最適化
JP5064305B2 (ja) ビットレート変換装置及び変換方法
US9571871B2 (en) Method for delivering video content encoded at one or more quality levels over a data network
US9094685B2 (en) Efficient coding complexity estimation for video transcoding systems
JP2008160535A (ja) 符号化伝送方法、その装置、そのプログラム、およびその記録媒体
KR101022743B1 (ko) 복호 장치 및 복호 방법
US8619864B2 (en) Transcoding/encoding with code amount adjustment and stuffing bits
US8032645B2 (en) Coding method and coding apparatus
JP2000152232A (ja) 伝送方法及び装置
JP5939884B2 (ja) 誤り訂正符号化装置
KR101732995B1 (ko) 스트리밍 레이턴시 최소화 시스템 및 이를 사용하는 방법
JP2002014696A (ja) 制御装置及び制御方法
KR20230098370A (ko) 오디오 송신기 프로세서, 오디오 수신기 프로세서 및 관련 방법 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170904

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171227

R150 Certificate of patent or registration of utility model

Ref document number: 6271756

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250