JP4221676B2 - 情報処理装置および情報処理方法、記録媒体、並びに、プログラム - Google Patents

情報処理装置および情報処理方法、記録媒体、並びに、プログラム Download PDF

Info

Publication number
JP4221676B2
JP4221676B2 JP2006240254A JP2006240254A JP4221676B2 JP 4221676 B2 JP4221676 B2 JP 4221676B2 JP 2006240254 A JP2006240254 A JP 2006240254A JP 2006240254 A JP2006240254 A JP 2006240254A JP 4221676 B2 JP4221676 B2 JP 4221676B2
Authority
JP
Japan
Prior art keywords
encoding
section
minimum
gop
determined
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
JP2006240254A
Other languages
English (en)
Other versions
JP2008066847A (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.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006240254A priority Critical patent/JP4221676B2/ja
Priority to US11/897,337 priority patent/US8817887B2/en
Priority to CN2007101458981A priority patent/CN101141642B/zh
Publication of JP2008066847A publication Critical patent/JP2008066847A/ja
Application granted granted Critical
Publication of JP4221676B2 publication Critical patent/JP4221676B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/103Selection of coding mode or of prediction mode
    • H04N19/114Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
    • 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
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • 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/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

本発明は、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関し、特に、フレーム間予測を用いて圧縮した映像データを編集する場合に用いて好適な、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関する。
MPEG(Moving Picture Coding Experts Group/Moving Picture Experts Group)などに代表される画像圧縮方式では、フレーム間予測を用いて映像信号を圧縮符号化することで、高い圧縮効率を実現している。しかし、映像を編集することを考えた場合、フレーム間予測を用いた圧縮画像は、フレーム間に予測による圧縮信号の関連があるため、圧縮されたままの映像信号で、映像素材をつなぎ合わせることとはできない。そのため、映像素材を編集することが予め考慮されたシステムにおいては、一般的に、フレーム間予測を用いず、フレーム内での圧縮のみを用いて符号化が行われている。
しかしながら、例えば、HD(High Definition)信号のように、高精細で情報量の多い映像信号が取り扱われる場合、フレーム内圧縮のみで符号化を行うと、低い圧縮効率しか得られないため、多量のデータを伝送したり、蓄積するためには、転送速度が速かったり、記憶容量が大きかったり、または、処理速度が速いなどの、高価なシステムが必要となってしまう。すなわち、高精細で情報量の多い映像信号を安価なシステムで取り扱うためには、フレーム間予測を用いて圧縮効率を上げることが必要となる。
MPEGストリームを編集するために、従来、編集点(スプライス点)近傍のピクチャを一旦デコードし、非圧縮の画像信号を編集点でつなぎあわせた後、再エンコードする技術が用いられている(例えば、特許文献1)。
国際公開番号WO99/05864号公報
MPEGにおいて、Iピクチャ(I-Picture)、Pピクチャ(P-Picture)、および、Bピクチャ(B-Picture)から構成される、双方向のフレーム間予測を用いた圧縮符号化方式は、Long GOP(Group of Picture)方式の圧縮と呼ばれる。
Iピクチャとは、フレーム内(Intra)符号化画像のことであり、他の画面とは独立に符号化されるピクチャであり、この情報のみで画像を復号することができるものである。Pピクチャとは、フレーム間(inter)順方向予測符号化画像のことであり、時間的に前(順方向)のフレームからの差分によって表現される前方向予測符号化ピクチャである。Bピクチャとは、双方向予測符号化画像のことであり、時間的に前(順方向)、または後(逆方向)、または前後(双方向)のピクチャを利用して動き補償フレーム間予測により符号化されるピクチャである。
PピクチャやBピクチャは、データ量がIピクチャに比べて小さいため、GOPを長くすれば(すなわち、Long GOPを構成するピクチャ数を増加させれば)、映像の圧縮率を高くすることができるので、デジタル放送やDVD(Digital Versatile Disk)ビデオでの利用に適している。しかしながら、GOPが長すぎると、フレーム精度での編集コントロールが困難となり、特に、業務用用途での編集では、運用上の問題が発生する。
Long GOP方式で圧縮された2つの映像データを所定の編集点で接続することにより編集する処理について、図1を用いて説明する。
まず、編集対象圧縮映像データ1および編集対象圧縮映像データ2のそれぞれにおいて、編集点近傍の部分的なデコードが行われ、部分的な非圧縮の映像信号1および映像信号2が得られる。そして、非圧縮の映像信号1および映像信号2が編集点で接続されて、必要に応じて編集点付近にエフェクト(Effect)が施されて、再エンコードが行われる。そして、再エンコードされた圧縮映像データが、デコードおよび再エンコードされていない(部分的なデコードが行われた編集点近傍以外の)圧縮映像データと結合される。
図1を用いて説明した方法は、圧縮された編集素材の映像データを全てデコードしてから、映像信号を編集点でつなぎ、再び全ての映像信号を再エンコードして編集済みの圧縮映像データを得る方法と比較して、再エンコードによる画質劣化を局所的に抑えることができるとともに、編集処理時間を大幅に短縮することができるなどの利点がある。
上述したように、編集点近傍を部分的にデコードした後、非圧縮の映像信号を接続して、接続された非圧縮の映像を再エンコードし、デコードおよび再エンコードされていない部分の圧縮映像データと結合することにより、編集を行った場合、再エンコード部分と再エンコードしない部分のVBV Buffer Occupancyの連続性を保つ必要がある。
図2を用いて、VBV Buffer Occupancyの連続性について説明する。
編集後の圧縮映像データにおいて、VBVバッファが破綻しないようにするためには、再エンコード開始部と終了部のOccupancyを、前後に結合する再エンコードしない圧縮映像データの結合部のOccupancyに一致させる必要がある。すなわち、編集後の圧縮映像の図中Eで示される再エンコード部分の最初のIピクチャの図中Cで示されるOccupancyは、編集前の圧縮素材映像1の図中Aで示されるOccupancyと一致するように、編集後の圧縮映像の図中Eで示される再エンコード部分の次のIピクチャの図中Dで示されるOccupancyは、編集前の圧縮素材映像2の図中Bで示されるOccupancyと一致するように制御されなければならない。
編集前後のOccupancyは、Closed GOPの場合であっても、Closed GOPでないOpen GOPである場合にも、同様に、一致させる必要がある。VBV Buffer Occupancyの連続性が保たれていない場合、デコード時にデコーダのバッファが破綻し、例えば、ピクチャスキップやフリーズなどの現象が発生する原因となり得る。
PS(Program Stream)やTS(Transport Stream)においては、SCR(System Clock Reference)またはPCR(Program Clock Reference)と、PTS(Presentation Time Stamp)やDTS(Decoding Time Stamp)から、各ピクチャのVBV BufferのOccupancyを求めることができる。しかしながら、ES(Elementary Stream)においては、VBV BufferのOccupancyを容易に求めることはできない。
ESにおいては、Picture HeaderのVBV Delayの値から、それぞれのピクチャのVBV BufferのOccupancyを求めることができる。しかしながら、Picture HeaderのVBV Delayのパラメータには、正確な値が入っているとは限らないため、VBV Delayのパラメータから算出されたOccupancyの値に信憑性がある(正確である)とはいえない。また、VBR(Variable Bit Rate)でエンコードされたESにおいては、VBV Delayの値が固定値となるので、VBV BufferのOccupancyを求めるために利用することができない。
このように、ESにおいては、VBV BufferのOccupancyを容易に求めることはできないので、ESを編集するにあたり、VBV Bufferの連続性を保つように正しく再エンコードできない場合、バッファがオーバフローまたはアンダーフローしてしまい、デコードされた映像に、例えば、ピクチャスキップやフリーズなどの現象が発生してしまう恐れがある。
例えば、放送番組制作用途のシステムなどでは、映像にピクチャスキップやフリーズなどなどが発生することは許されない。しかし、従来、タイムスタンプが挿入されていないESを編集するにあたっては、VBV Buffer Occupancyの連続性を保つことはできなかった。
本発明はこのような状況に鑑みてなされたものであり、ESを編集するにあたり、VBV Buffer Occupancyの連続性を保つことができるようにするものである。
本発明の一側面の情報処理装置は、複数の符号化ストリームを編集点で接続する処理を実行する情報処理装置において、第1の接続点により接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定する最小再エンコード区間決定手段と、前記最小再エンコード区間決定手段により決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断する管理手段と、前記管理手段により前記オキュパンシの連続性が保たれなかったと判断された場合、前記最小再エンコード区間決定手段により決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定する再エンコード区間決定手段と、前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームをデコードして、ベースバンド信号を生成するデコード手段と、前記デコード手段により生成された複数のベースバンド信号が編集点で接続されたベースバンド信号エンコードして再符号化ストリームを生成するエンコード手段とを備える
複数の符号化ストリームと前記エンコード手段により生成された再符号化ストリームとを切り替えることによって、編集点で接続された編集符号化ストリームを生成する生成手段を更に備えるようにすることができる。
前記最小再エンコード区間決定手段は、仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に前記第2の編集点がない場合、仮決定された前記第1の最小再エンコード区間を、再エンコードを実行する第2の最小再エンコード区間として決定することができる。
前記再エンコード区間決定手段には、前記延長再エンコード区間設定モードにおいて、前記第1の延長再エンコード区間、または、それに続く1GOPに対応する区間に前記第1の編集点または前記第2の編集点とは異なる第3の編集点がある場合、前記第3の編集点に基づいて、再エンコードを実行する第2の延長再エンコード区間を決定させるようにすることができ、前記第3の編集点がない場合、前記第1の延長再エンコード区間を再エンコードを実行する第2の延長再エンコード区間として決定させるようにすることができる。
前記管理手段には、前記延長再エンコード区間設定モードにおいて、前記第3の編集点がない場合、前記第2の延長再エンコード区間における前記エンコード手段によるエンコード処理の発生符号量を、前記エンコード手段によりエンコードされていない符号化ストリームにおける対応する部分のオキュパンシを基に管理させるようにすることができる。
前記管理手段には、前記2パスエンコードモードにおいて、オキュパンシの連続性が保たれなかったと判断された場合におけるエンコード処理の終了点のオキュパンシに基づいて、前記エンコード手段による次のエンコード処理の前記第2の最小再エンコード区間における発生符号量を管理させるようにすることができる。
前記エンコード手段には、MPEGのLong GOP形式でエンコード処理を実行させるようにすることができる
前記エンコード手段には、MPEGのLong GOP形式でエンコード処理を実行させるようにすることができ、前記管理手段により、前記オキュパンシの連続性が保たれたと判断された場合、前記制御手段は、エンコードが実行された、前記第2の最小再エンコード区間、前記第1の延長再エンコード区間、または、前記第2の延長再エンコード区間に続く次のGOPの最初の前方向参照フレームの直前までのフレームを、再エンコードを実行する第3の延長再エンコード区間として、更に追加させるようにすることができる。
前記エンコード手段には、MPEGのLong GOP形式でエンコード処理を実行させるようにすることができ、前記制御手段には、前記第1の符号化ストリームにおける前記編集点を含むGOPの開始位置から、前記第2の符号化ストリームにおける前記編集点を含むGOPの終了位置までを基準区間とさせ、前記基準区間に含まれるフレーム数を基に、前記第1の最小再エンコード区間を決定させるようにすることができる。
前記最小再エンコード区間決定手段には、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N/2≦M≦Nを満たす場合、前記基準区間を前記第1の最小再エンコード区間とさせるようにすることができる。
前記最小再エンコード区間決定手段には、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、0≦M<N/2を満たす場合、前記基準区間に1GOP加えた区間を前記第1の最小再エンコード区間とさせるようにすることができる。
前記最小再エンコード区間決定手段には、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N+1≦M≦2N−1を満たす場合、前記基準区間を複数GOPに分割するとともに、前記基準区間を前記第1の最小再エンコード区間とさせるようにすることができる。
前記制御手段には、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N+1≦M≦2N−1を満たし、前記基準区間における前記編集点より前の部分のフレーム数Aが、A≧N/2を満たす場合、前記基準区間を、前記編集点で2つのGOPに分割させるようにすることができる。
前記エンコード手段には、前記編集点で分割された2つのGOPのうちの時間的に後のGOPは、表示順でI2ピクチャから開始されるように、前記ベースバンド信号をエンコードして、符号化ストリームを生成させるようにすることができる。
前記最小再エンコード区間決定手段には、前記編集点で分割された2つのGOPのうちの時間的に後のGOPに含まれるフレーム数Rが、N/2≦Rを満たさないとき、前記基準区間に1GOP加えた区間を前記第1の最小再エンコード区間とさせるようにすることができ、N/2≦Rを満たすとき、前記基準区間を前記第1の最小再エンコード区間とさせるようにすることができる。
本発明の一側面の情報処理方法は、複数の符号化ストリームを編集点で接続する処理を実行する情報処理装置の情報処理方法において、第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定し、決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断し、前記オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定し、前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームをデコードして、ベースバンド信号を生成するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号をエンコードして、符号化ストリームを生成するステップを含む。
本発明の一側面のプログラムは、複数の符号化ストリームを編集点で接続する処理をコンピュータに制御させるためのプログラムであって、第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定し、決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断し、前記オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定し、
前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームのデコードを制御して、ベースバンド信号の生成を制御するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号のエンコードを制御して、符号化ストリームの生成を制御するステップを含む処理をコンピュータに実行させる。
本発明の一側面においては、第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、第1の編集点とは異なる第2の編集点がある場合、第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間が決定され、決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかが判断され、オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、符号化ストリームのうち、再エンコードを実行する区間が決定され、第2の最小再エンコード区間または第1の延長再エンコード区間内の第1の符号化ストリームおよび第2の符号化ストリームを含む複数の符号化ストリームをデコードして、ベースバンド信号を生成するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号をエンコードして、再符号化ストリームが生成される
ネットワークとは、少なくとも2つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであっても良いし、1つの装置を構成している内部ブロックどうしであっても良い。
また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、即ち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであっても良い。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであっても良い。
編集装置は、独立した装置であっても良いし、記録再生装置や情報処理装置の編集処理を行うブロックであっても良い。
以上のように、本発明の一側面によれば、編集処理を行うことができ、特に、近傍に複数存在する編集点に基づいて、再エンコード区間を決定し、再エンコードを実行することができる。
以下、図を参照して、本発明の実施の形態について説明する。
図3は本発明を適用した編集装置1のハードウェア構成を示すブロック図である。
CPU(Central Processing Unit)11は、ノースブリッジ12に接続され、例えば、HDD(Hard disk Drive)16に記憶されているデータの読み出しなどの処理を制御したり、CPU20が実行する編集処理を制御するための制御信号やコマンドを生成し、出力する。ノースブリッジ12は、PCIバス(Peripheral Component Interconnect/Interface)14に接続され、例えば、CPU11の制御に基づいて、サウスブリッジ15を介して、HDD16に記憶されているデータの供給を受けて、PCIバス14、PCIブリッジ17を介して、メモリ18に供給する。また、ノースブリッジ12は、メモリ13とも接続されており、CPU11の処理に必要なデータを授受する。
メモリ13は、CPU11が実行する処理に必要なデータを保存する。サウスブリッジ15は、HDD16のデータの書き込みおよび読み出しを制御する。HDD16には、圧縮符号化された編集用の素材が記憶される。
PCIブリッジ17は、メモリ18のデータの書き込みおよび読み出しを制御したり、デコーダ22乃至24、または、ストリームスプライサ25への圧縮符号化データの供給を制御するとともに、PCIバス14およびコントロールバス19のデータの授受を制御する。メモリ18は、PCIブリッジ17の制御に基づいて、HDD16により読み出された、編集用素材である圧縮符号化データや、ストリームスプライサ25から供給される編集後の圧縮符号化データを記憶する。
CPU20は、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU11から供給された制御信号やコマンドにしたがって、PCIブリッジ17、デコーダ22乃至24、ストリームスプライサ25、エフェクト/スイッチ26、エンコーダ27、および、スイッチ29が実行する処理を制御する。メモリ21は、CPU20の処理に必要なデータを記憶する。
デコーダ22乃至デコーダ24は、CPU20の制御に基づいて、供給された圧縮符号化データ、すなわち、符号化ストリームをデコードし、非圧縮の映像信号(ベースバンドの画像データ)を出力する。また、デコーダ22乃至デコーダ24は、編集装置1に含まれない独立した装置として設けられていても良い。例えば、デコーダ24が、独立した装置として設けられている場合、デコーダ24は、後述する処理により編集されて生成された圧縮編集映像データの供給を受け、復号し、出力することができるようになされる。
ストリームスプライサ25は、CPU20の制御に基づいて、供給された符号化ストリーム(圧縮映像データ)を、デコーダ24に供給したり、PCIブリッジ17を介して、メモリ18に供給して保存させる。また、ストリームスプライサ25は、エンコーダ27から、エンコード処理において取得されたデータの供給を受け、PCIブリッジ17を介して、メモリ18に供給して保存させることも可能である。
エフェクト/スイッチ26は、CPU20の制御に基づいて、デコーダ22またはデコーダ23、もしくは、入力端子28から供給される、非圧縮の映像信号出力を切り替える、すなわち、供給された非圧縮の映像信号を所定のフレームで結合するとともに、必要に応じて、所定の範囲にエフェクトを施して、エンコーダ27に供給したり、入力端子28から供給される非圧縮の映像信号をエンコーダ27に供給する。エンコーダ27は、CPU20の制御に基づいて、供給された非圧縮の映像信号、すなわち、ベースバンド信号をエンコードして、圧縮符号化された符号化ストリームを生成しストリームスプライサ25に供給する。
スイッチ29は、CPU20の制御に基づいて、エフェクト/スイッチ26から出力されるベースバンド画像信号、または、ストリームスプライサ25から供給され、デコーダ24によってデコードされたベースバンド画像信号のいずれかを、外部の、例えば、表示装置などに出力する。
次に、編集装置1の動作について説明する。
HDD16には、Long GOPのOpen GOP方式で圧縮された複数の圧縮素材映像データが記憶されている。CPU11は、図示しない操作入力部からユーザの操作入力を受け、編集される2つのストリームと、その編集点の情報を受ける。
CPU11は、圧縮符号化された圧縮素材映像データである複数のストリームのGOP構造、並びに、編集点を示す情報を基に、編集されるストリームのうち、再エンコードを行う区間を決定する。
このとき、CPU11は、再エンコードを試みる最小の区間として、最小再エンコード区間を決定する。最小再エンコード区間の決定について、図4乃至図7を用いて説明する。
すなわち、図4に示されるように、第1の編集素材であるストリームAにおける編集点aを含むGOPの開始位置をαとし、第2の編集素材であるストリームBにおける編集点bを含むGOPの終了位置をβとしたとき、ストリームAおよびストリームBが編集点において接続されて生成されるストリームCにおける基準再エンコード区間は、編集点aおよびbを含むαからβまでの区間とされる。
そして、編集点aおよびbを含むαからβまでの区間、すなわち、基準再エンコード区間に含まれるフレーム数A+Bが、これらのストリームにおける基準となる1GOPに含まれるフレーム数Nに対して、N/2≦A+B≦Nを満たす場合、図4に示されるように、基準再エンコード区間は、そのまま、最小再エンコード区間に仮設定される。
そして、編集点aおよびbを含むαからβまでの区間、すなわち、基準再エンコード区間に含まれるフレーム数A+Bが、これらのストリームにおける基準となる1GOPに含まれるフレーム数Nに対して、0≦A+B<N/2を満たす場合、図5に示されるように、最小再エンコード区間は、ストリームBにおける編集点bを含むGOPの次のGOPを含ませて、αから次のGOPの終了点γまでであるものと仮設定される。
そして、次のGOPに含まれるフレーム数がCであるとき、基準再エンコード区間に含まれるフレーム数A+Bに、ストリームBの次のGOPのフレーム数を加えた値A+B+Cは、N/2≦A+B+C≦Nを満たすか否かが判断される。N/2≦A+B+C≦Nが満たされる場合、αからγまでが1GOPとされて、最小再エンコード区間に仮設定される。それに対して、N/2≦A+B+C≦Nが満たされない場合、換言すれば、N<A+B+Cである場合、αからγまでを、1GOPがN/2≦x≦Nを満たすように複数のGOPに分割して、2以上のGOPを設定し、これら全てを最小再エンコード区間に仮設定する。
最小再エンコード区間が、複数のGOPに分割されるとき、それぞれのGOPに含まれるフレーム数ができるだけ均等になるように分割されると好適である。例えば、2GOPに分割される場合、A+B+Cのフレーム数が偶数の場合は均等に分割され、奇数の場合は後ろが1フレーム多くなるように分割されて、2GOPとされ、この2GOPが最小再エンコード区間に設定される。
また、このとき、αからγまでのフレーム数が、GOPの数で割り切れない値であった場合、時間的に後ろとなるGOPのフレーム数が多くなるようにすると好適である。具体的には、例えば、αからγまでのフレーム数が19であった場合、1つ目のGOPのフレーム数を9とし、2つ目のGOPのフレーム数を10とすると好適である。なぜなら、再エンコードされた符号化ストリームと、再エンコードしない部分の符号化ストリームとの接続部分のOccupancy(オキュパンシ)を合わせこむためのデコードおよびエンコードの処理において、時間的に後のGOPのフレーム数が多いほうが、符号割り当ての自由度が高くなるからである。
更に、A+B+Cのフレーム数をできるだけ均等に分割する以外に、予め定められた所定のフレーム数で、GOPを分割するものとしても良い。例えば、2つのうちの時間的に前のGOPを構成するフレーム数が必ず所定のフレーム数(例えば、N/2またはN/2以上となる最小の整数)となるようにして、GOPが分割されるものとしても良い。また、予め定められた所定のフレーム数は、それぞれのGOPにおいて、1GOPがN/2≦x≦Nを満たす区間で定められるものとすると好適である。
具体的には、例えば、N=15のとき、A+B+C=16であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を8とし、A+B+C=17であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を9とし、A+B+C=18であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を10とするように、2つ目のGOPのフレーム数を変化させ、同様に、A+B+C=22であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を14とするようにしても良い。
そして、編集点aおよびbを含むαからβまでの区間、すなわち、基準再エンコード区間に含まれるフレーム数A+Bが、これらのストリームにおける基準となる1GOPに含まれるフレーム数Nに対して、N+1≦A+B≦2N−1を満たす場合、図6に示されるように、基準再エンコード区間は、基準再エンコード区間のフレーム数が偶数の場合は均等に分割され、奇数の場合は後ろが1フレーム多くなるように分割されて、2GOPとされ、この2GOPが最小再エンコード区間に仮設定される。
この場合においても、αからβまでのフレーム数が、2で割り切れない値であった場合、時間的に後ろとなるGOPのフレーム数が多くなるようにすると好適である。
また、同様にして、この場合においても、A+Bのフレーム数をできるだけ均等に分割する以外に、予め定められた所定のフレーム数で、GOPを分割するものとしても良い。例えば、2つのうちの時間的に前のGOPを構成するフレーム数が必ず所定のフレーム数(例えば、N/2またはN/2以上となる最小の整数)となるようにして、GOPが分割されるものとしても良い。
また、N+1≦A+B≦2N−1が成り立つ場合、更に、A≧N/2であるか否かが判断され、A≧N/2が成り立つ場合、編集点がGOPの切れ目となるように設定されるものとしても良い。そして、そのとき、編集点以降に対応する後ろ側のGOPの先頭をI2ピクチャとし、B0およびB1ピクチャを省略するようにしてもよい。
このように、編集点、すなわち、大きく絵が変化する部分でGOPを分割し、編集点以降に対応する後ろ側のGOPのディスプレイ順における先頭をI2ピクチャとし、B0およびB1ピクチャを省略するものとすると、編集点以降のGOPの画質の劣化を抑制することができ、好適である。
また、N+1≦A+B≦2N−1であり、かつ、A≧N/2である場合、仮設定された最小再エンコード区間において、編集点より後ろの部分のフレーム数、すなわち、フレーム数Bが少ない場合(例えば、B≧N/2が成り立たないような場合)、編集点より後ろの部分が所定のフレーム数以上(例えば、N/2以上)となるように、ストリームBの続くGOPを仮設定された最小再エンコード区間に加えるものとすると、極端に少ないフレーム数で構成されたGOPを再エンコード区間に含ませることを防止することができる。これにより、編集点よりも後ろの部分のGOPにおいて、VBV占有量の連続性を保ちつつ、それぞれのフレームに適切な発生符号量を配分することが容易となるので、好適である。
そして、N+1≦A+B≦2N−1であるが、A≧N/2ではない場合、上述した場合と同様にして、A+Bのフレーム数をできるだけ均等に2つのGOPに分割するようにしてもよいし、上述したように、1GOPがN/2≦x≦Nを満たす区間で、予め定められた所定のフレーム数で、2つのGOPに分割するものとしても良い。
このようにして、最小再エンコード区間を仮決定するようにすることにより、再エンコード区間の設定について、短いGOPを結果として残さない様にすることができ、いたずらに画質の劣化をもたらさないようにすることができる。
そして、再エンコードを行う区間の各GOPに対し、画質の劣化をもたらさないように、かつ、出来る限り大きなGOP長となる様なエンコードを実施できるため、符号化効率が向上し、より良い画質の符号化を期待することができる。
ところで、再エンコードを行う区間が終了する前に次の編集点が存在した場合、エンコード中のGOPでVBV目標点が変わってしまう。また、最小再エンコード区間の次のGOPに編集点が存在した場合、再エンコード区間は、連続する。
このような状況は、例えば、第1のストリームに、非常に短い第2のストリームが挿入される場合や、図7に示されるように、例えば、ストリームAとストリームBとの編集点abに対して、ストリームBにおける編集点bを含むGOPの終了位置βより前に、他のストリームXとの編集点d´dが入っている場合などに発生する。
例えば、図7に示されるように、上述したようにして仮設定された最小再エンコード区間内に、他の編集点が存在した場合、最小再エンコード区間は、編集点d´dにおいてストリームBに接続されるストリームXにおける編集点dを含むGOPの終了位置δ間での区間に変更されて、設定される。すなわち、最小再エンコード区間の編集点d´d以降の部分は、ストリームXに対応するデータとなり、最小再エンコード区間のエンコードにおけるVBV目標値は、ストリームXの編集点dを含むGOPの終了位置δにおけるVBV占有量となる。
なお、ストリームXにおける編集点dが、ストリームAおよびストリームBの編集点abに近く、更に、ストリームXにおける編集点dを含むGOPの終了位置δが、編集点d´dに近い場合など、再度設定された最小再エンコード区間に含まれるフレーム数Zが、0≦Z<N/2を満たす場合、ストリームXの次のGOPを最小再エンコード区間に加えるものとすると好適である。そのとき、ストリームXの次のGOP内、または、その次のGOPに、異なる編集点が存在するか否かが判断され、異なる編集点が存在した場合、同様に、最小再エンコード区間を再設定する処理が実行されるのは、言うまでもない。
このように、複数の編集点が近傍に存在する場合、それらの編集点が考慮されて、最小再エンコード区間が設定される。なお、図7において、複数の編集点に基づいて設定された、すなわち、仮設定された最小再エンコード区間内、または、その次のGOPに編集点が存在した場合に設定し直された最小再エンコード区間を、1GOPとしてエンコードするか、または、複数のGOPとしてエンコードするか、および、複数のGOPとしてエンコードする場合のGOPの区切り方については、図4乃至図6を用いて説明した場合と同様である。
そして、CPU11は、編集素材となる複数のストリームを、VBV Buffer ModelのVBV占有量の連続性を守ったまま、編集点で接続して1つのストリームとする、すなわち、スプライシングするための処理を実行する。
すなわち、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なストリーム、すなわち、例えば、ストリームAとストリームBとが編集点abで接続される場合、最小再エンコード区間に含まれる、ストリームAの編集点aまでの部分がデコーダ22に供給され、ストリームBの編集点b以降の部分(編集点b以降の部分のデコードに必要なフレームが編集点b以前に存在する場合は、そのフレームも含む)がデコーダ23に供給され、エフェクト/スイッチ26によって、編集点で接続され、必要に応じてエフェクトが施されるように、制御信号を生成し、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
再エンコード区間および再エンコード区間前後の部分の表示が指令されている場合、CPU11は、編集データを構成する素材となる複数のストリームの、再エンコード区間に対応する部分(再エンコード区間以外のフレームが再エンコード区間をデコードまたはエンコードするために必要であれば、そのフレームを含む)の、メモリ18への供給を制御するので、CPU20は、1つ目の編集点を含む符号化ストリームの最小再エンコード区間以前の部分のデータは、ストリームスプライサ25を介して、デコーダ24に供給され、スイッチ29を介して、外部の表示装置などに出力され、続いて、エフェクト/スイッチ26から出力された、編集された部分のベースバンド画像データが、スイッチ29を介して、外部の表示装置などに出力されるように制御する。
そして、編集装置1においては、最小再エンコード区間における再エンコード時の発生符号量の調節に失敗した場合、すなわち、スプライシングの実行時に再エンコードが実行される区間と実行されない区間とのVBV占有量の連続性が保たれなかった場合に、最小再エンコード区間において、再度エンコードを実行する、いわゆる、リトライ動作を実行することができるようになされている。そして、このとき、編集装置1においては、実行された最小再エンコード区間におけるエンコード処理の実績を基に、最小再エンコード区間の再エンコード処理をもう一度行うことが可能なようになされている。
これにより、VBV占有量の連続性を保ちつつ、再エンコードを実行する区間をできるだけ小さくすることができるので、再エンコード処理により画像が劣化してしまう可能性のある領域の発生量を抑制することができる。
これに対して、再度エンコードを実行するリトライ動作は、編集画像をリアルタイムで表示させる場合など、即時性が重要視されるような場合に、ユーザの要求を満たさない場合がある。
そこで、編集装置1においては、スプライシングの実行時にVBV占有量の接合ができなかった場合に、再度エンコードを実行する、いわゆる、リトライ動作を実行するのみでなく、再エンコード区間自体を延ばして処理を実行することも可能なようになされている。このことにより、装置内部のエンコーダとデコーダやつなぎ動作を実行するスイッチャー(例えば、図3のエフェクト/スイッチ26)との調走などの複雑な動作は1回だけで済み、実装が楽になる。また、このような処理は、編集画像をリアルタイムで表示させる場合など、即時性が重要視されるような場合に用いると好適である。
まず、図4乃至図7を用いて説明した最小再エンコード区間の再エンコード(デコードおよびエンコード)が実行される。CPU11は、編集素材となる複数の符号化ストリームをHDD16から読み出させ、サウスブリッジ15、ノースブリッジ12、PCIバス14、および、PCIブリッジ17を介して、メモリ18に供給する。そして、CPU11は、ストリームAおよびストリームBのうち、最小再エンコード区間のデータが、それぞれ、デコーダ22およびデコーダ23に供給されてデコードされ、エフェクト/スイッチ26において接続されて、必要に応じてエフェクトがかけられ、エンコーダ27に供給されるように制御する。
CPU20は、ここで、再エンコードのVBV占有量の開始値は、最小再エンコード区間の最初、たとえば、第1の編集素材であるストリームAのaを含むGOPの先頭におけるオリジナルのVBV占有量であり、再エンコード終了時のVBV占有量の目標値は、最小再エンコード区間の終了点に対応する編集素材における、対応する部分のVBV占有量であるものとする。すなわち、図8に示されるように、最小再エンコード区間の最後をβとした場合、次のGOPの開始のI2ピクチャ(図中アで示される)のVBV占有量が、再エンコード終了位置のVBV占有量の第1の目標値となる。
そして、CPU20は、任意の発生符号量調整方法により、第1の目標VBV占有量よりも大きなVBV占有量で最小再エンコード区間のエンコードが終了する様に再エンコードの実行を制御する。
そして、最小再エンコード区間でのエンコード終了時に、目標VBV占有量より実際のVBV占有量が大きければ、zero stuffによって、VBV占有量を連続的とすることが可能であり、そこで動作を終了させて、再エンコード結果を得ることができる。
そこで、第1の目標VBV占有量よりも実際のVBV占有量を大きくすることができた場合、続いて、次GOPのcoding順の最初のPピクチャ(図8において図中イで示されるピクチャ)の直前までのフレームが、ストリームスプライサ25に供給されるとともに、デコーダ23に供給され、デコードされた後、エフェクト/スイッチ26を介して、エンコーダ27に供給されてエンコードされる。
このとき、次GOPのcoding順の最初のPピクチャ(図8において図中イで示されるピクチャ)でのVBV占有量を第2の目標値とし、Iピクチャ(図8において図中アで示されるピクチャ)の符号量を、オリジナルのストリームBにおける該当するIピクチャの符号量として、次GOPの先頭から最初のPピクチャ(図8において図中イで示されるピクチャ)の手前まで(IBBか、または、IB)を、PピクチャでVBV占有量を連続的とすることができる様に(VBV占有量を第2の目標値よりも大きくする様に)、任意の発生符号調整方法により再エンコード処理が実行される。
その結果、目標Pピクチャで、必要に応じてzero stuffを利用して、VBV占有量を連続とすることができれば、CPU20は、Iピクチャの符号を、オリジナルのストリームBにおける該当するIピクチャの符号に差し替えて、エンコード結果とし、スプライシング動作を終了させる。
一方、目標Pピクチャで、VBV占有量を連続にすることができなかった場合、CPU20は、図8のβまでの再エンコード区間すなわち、GOP切れ目でのVBV占有量が連続となったエンコード結果をもって、スプライシング動作を終了させる。換言すれば、図8のβまでの再エンコード区間以降、次GOPのcoding順の最初のPピクチャの直前までのフレーム(例えば、図8において図中アで示されるピクチャから図中イで示されるピクチャまでの範囲)において、編集後の圧縮画像データとして、再エンコードされた圧縮画像データではなく、ストリームスプライサ25に供給されたオリジナルのストリームに含まれていたフレームが採用される。
スプライシング動作が終了された場合、CPU20は、CPU11に対して、デコーダ22またはデコーダ23へのストリームの供給を停止させるように、制御信号を供給する。再エンコード区間のみの表示が指令されている場合、CPU11は、最後の編集点以降の符号化ストリームのメモリ18への転送をストップさせる。また、再エンコード区間前後の部分の表示が指令されている場合、CPU11は、最後の編集点以降の符号化ストリームのメモリ18への転送を続ける。CPU20は、エフェクト/スイッチ26から出力された、編集された部分のベースバンド画像データが、スイッチ29を介して、外部の表示装置などに出力されるのに続いて、最後の編集点以降の符号化ストリームは、ストリームスプライサ25を介して、デコーダ24に供給され、スイッチ29を介して、外部の表示装置などに出力されるように制御する。
これに対して、最小再エンコード区間でのエンコード終了時に、目標VBV占有量よりも占有量が小さくなってしまった場合は、zero stuffによってVBV占有量を連続にすることはできないため、CPU20は、実行された最小再エンコード区間におけるエンコード処理の実績を基に、最小再エンコード区間の再エンコード処理をもう一度行う、すなわち、上述したリトライ動作を実行するか、または、次GOPもエンコード対象として、後述する発生符号調整方法により再エンコードが継続されるように、各部を制御する。
最小再エンコード区間の再エンコード処理をリトライするようになされている場合、CPU20は、既に実行された1回目の最小再エンコード区間におけるエンコード処理の実績を基に、最小再エンコード区間における符号配分を決定する。このようにすることにより、2回目の再エンコードにおいては、最小再エンコード区間でのエンコード終了時に、目標VBV占有量よりも占有量が小さくなってしまうようなことを防ぐことができる。このような処理が実行される動作モードを、2パスエンコードモードと称する。
また、最小再エンコード区間でのエンコード終了時に、目標VBV占有量よりも占有量が小さくなってしまってもリトライ動作を実行せず、次のGOPを再エンコード対象とする場合、CPU20は、最小再エンコード区間に対して、図9に示されるように、次のGOPを延長再エンコード区間とし、任意の発生符号量調整方法により、目標VBV占有量よりも大きなVBV占有量で延長再エンコード区間のエンコードが終了する様に、目標発生符号量を設定して、再エンコードを実行させる。図中γで示される、更に続くGOPの開始のVBV占有量が、再エンコード区間が延長された場合の延長再エンコード区間における再エンコード終了時のVBV占有量の目標値とされる。
そして、図9に示されるγまでの再エンコード結果、目標VBV占有量よりも実際のVBV占有量を大きくすることができた場合、上述した場合と同様に、続くGOPのcoding順の最初のPピクチャ(図8において図中イで示されるピクチャ)でのVBV占有量を目標値として、再エンコードが実行される。図9に示されるγまでの再エンコード結果、目標VBV占有量よりも実際のVBV占有量を大きくすることができなかった場合、更に、続くGOPが次の延長再エンコード区間とされ、図中γ+で示される、更に続くGOPの開始のVBV占有量が、再エンコード区間が延長された場合の延長再エンコード区間における再エンコード終了時のVBV占有量の目標値とされる。このような処理が実行される動作モードを、延長再エンコード区間設定モードと称する。
なお、最小再エンコード区間、または、延長再エンコード区間に続く次のGOPにおいて、coding順で最初のPピクチャの前にBピクチャが配置されていなかった場合、GOP切れ目でのVBV占有量が連続となったエンコード結果を以って、スプライシング動作が終了される。また、例えば、図9に示されるように、ストリームAとストリームBとが、第1の編集点で接続される場合において、ストリームAの編集点aがGOPのdisplay順先頭であった場合、最小再エンコード区間の開始はストリームBの編集点bからであるものとすることができる。
すなわち、編集装置1においては、最小再エンコード区間の切れ目(最小再エンコード区間の最後と、続くGOPの最初と)でVBV占有量をあわせることができなかった場合、最小再エンコード区間の再エンコードを、1回目における再エンコードの実績を基にもう一度行うか、次のGOP切れ目までエンコード区間が延長されて延長再エンコード区間とされて、VBV占有量が連続性を有するまで、延長再エンコード区間が設定される。そして、再エンコード区間の切れ目でVBV占有量をあわせることができた場合、再エンコード区間の次のGOPのIピクチャにはオリジナルの符号が使用され、更に、再エンコード区間の次のGOPの最初のPピクチャまでのフレームが再エンコードされる。そして、PピクチャにおいてVBVを合わせることができれば、このPピクチャの手前までで再エンコードが終了される。また、PピクチャにおいてVBVを合わせることができなかったときには、再エンコード区間までで再エンコードが終了される。
また、延長再エンコード区間が終了する前に次の編集点が存在した場合、エンコード中のGOPでVBV目標点が変わってしまう。また、延長再エンコード区間の次のGOPに編集点が存在した場合、再エンコード区間は、連続する。
例えば、図10に示されるように、延長再エンコード区間内に、他の編集点が存在した場合、延長再エンコード区間は、編集点d´dにおいてストリームBに接続されるストリームXにおける編集点dを含むGOPの終了位置δまでに変更される。すなわち、延長再エンコード区間の編集点d´d以降の部分は、ストリームXに対応するデータとなり、延長再エンコード区間のエンコードにおけるVBV目標値は、ストリームXの編集点dを含むGOPの終了位置δにおけるVBV占有量となる。
このように、延長再エンコード区間が設定された場合、その区間内、または、それに続くGOPに、新たな編集点が存在するか否かが検出され、新たな編集点が存在した場合、それらの編集点が考慮されて、延長再エンコード区間が再設定される。
なお、図10において、複数の編集点に基づいて設定された延長再エンコード区間は、必ず1GOPとしてエンコードされるものとしても良いが、再設定されたフレーム数に応じて、複数のGOPとしてエンコードするかを判断したり、図4乃至図6を用いて説明した場合と同様にして、複数GOPに区切るものとしても良い。
具体的には、ストリームBにおける編集点d´が、最小再エンコード区間の終了点βに近く、更に、ストリームXにおける編集点dを含むGOPの終了位置δが、編集点d´dに近い場合など、再度設定された延長再エンコード区間に含まれるフレーム数Zが短くなってしまう可能性がある。短い区間のエンコード処理が実行された場合、終了点においてVBVの連続性を保つことができず、更にストリームXの次のGOPが延長再エンコード区間として設定される可能性が高くなってしまう。
そこで、再度設定された最小再エンコード区間に含まれるフレーム数Zが、0≦Z<N/2を満たす場合、ストリームXの次のGOPをこの最小再エンコード区間に加えるものとしてもよい。これにより、再エンコード区間の延長量は実質変わらないが、その部分における符号発生量の自由度が増すため、符号化難易度の高いフレームが含まれていても、画質を極端に劣化させることを防止することができ、好適である。なお、そのとき、ストリームXの次のGOP、または、更にその次のGOP内に、異なる編集点が存在するか否かが判断され、異なる編集点が存在した場合、同様に、延長再エンコード区間を再設定する処理が実行されるのは、言うまでもない。
すなわち、編集装置1においては、スプライシング実行時の動作モードとして、リトライ動作を実行する2パスエンコードモードと、再エンコードを実行する区間を延長する延長再エンコード区間設定モードとの2つの動作モードを有する。そして、いずれの場合においても、最小再エンコード区間、または、延長再エンコード区間にかかわらず、再エンコードが実行される区間またはそれに続くGOPに複数の編集点が存在した場合、それらの編集点に基づいて、再エンコードが実行される区間が設定され、区間終了点のVBV目標値が設定される。編集装置1においては、例えば、編集装置1の構成または設定、もしくは、ユーザの操作入力などに基づいて、動作モードが設定されて、設定された動作モードに基づいた処理が実行されるようになされている。
2パスエンコードモードにおいては、編集点を含むGOPを含んで構成される最小再エンコード区間においてのみ、VBV占有量の連続性を守って再エンコードが実行されるので、編集後のストリームにおいて、再エンコードによって画質が劣化してしまう恐れのある部分を最小にすることが可能となる。したがって、編集結果をリアルタイムで再生して確認するよりも画質をできるだけ劣化しないようにしたい場合などに、2パスエンコードモードで編集が行われると好適である。
また、延長再エンコード区間設定モードにおいては、編集点を含むGOPにより構成される最小再エンコード区間において、目標VBV占有量よりも実際のVBV占有量を大きくすることができなかった場合においても、リトライ動作を行わないようにすることができるので、リトライ動作を含むものと比較して、実装が容易になる。また、リトライ動作を行う場合と異なり、編集結果を略リアルタイムに再生出力することが可能であるので、編集結果を略リアルタイムに再生出力する必要がある場合は、延長再エンコード区間設定モードで編集が行われると好適である。
次に、図11は、図3の編集装置1の機能の構成例を示すブロック図である。なお、図11において、図3における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
編集装置1は、制御部101、取得部102、デコーダ22およびデコーダ23を含むデコーダ103、並びに、エンコーダ27から構成される。
制御部101は、CPU11およびCPU20に対応し、編集装置1の各部を制御する。取得部102は、制御部101の制御に基づいて、HDD16またはメモリ18から圧縮素材映像データを取得して、再エンコード区間に対応する部分は、デコーダ22またはデコーダ23を含むデコーダ103に供給する。圧縮素材映像データが記憶されるHDD16またはメモリ18が取得部102に含まれるようにしてもよいし、取得部102が編集装置1に接続されている他の装置から圧縮素材映像データを取得するものとしてもよい。また、取得部102は、必要に応じて、再エンコード区間に対応しない部分も取得し、再エンコードされた領域と接続して編集画像を生成するために(図3におけるストリームスプライサ25に)出力する。
デコーダ103は、取得部102から供給された圧縮素材映像データをデコードし、その結果として得られた非圧縮の映像信号をエンコーダ27に供給する。なお、図11に示す編集装置1には、圧縮素材映像データをデコードするデコーダとして、2つのデコーダ22およびデコーダ23が設けられ、編集後のストリームをデコードするデコーダとして、デコーダ24が設けられているが、編集装置1に設けられるデコーダは1つであってもよいし、3以上であってもよい。
また、制御部101は、より詳細には図12に示すような機能を有している。
すなわち、制御部101は、CPU11およびCPU20が実行可能な機能を併せ持つものとして定義されるものである。また、CPU11は、操作入力取得部131、再エンコード区間決定部132、動作モード決定部133、ストリーム送出制御部134、および、パラメータ送出部135の機能を有し、CPU20は、ストリーム取得制御部151、パラメータ取得部152、復号制御部153、符号化制御部154、および、動作モード判定部155から構成される。
操作入力取得部131は、ユーザによる操作入力を受けて、編集されるストリームおよび編集点に関する情報などのユーザの操作に応じた情報を取得し、取得した情報を再エンコード区間決定部132またはストリーム送出制御部134に供給する。また、操作入力取得部131は、ユーザから、動作モードを設定または変更する操作入力を受けたとき、動作モード決定部133に、動作モードに関する操作入力の内容を供給する。
再エンコード区間決定部132は、まず、操作入力取得部131からの編集されるストリームおよび編集点に関する情報に基づいて、最小再エンコード区間を決定する。再エンコード区間決定部132は、決定された最小再エンコード区間を示す情報をパラメータ送出部135およびストリーム送出制御部134に供給する。そして、再エンコード区間決定部132は、動作モードが延長再エンコード区間設定モードであり、符号化制御部154から、ストリーム供給を停止させる要求を受けなかった場合、換言すれば、最小再エンコード区間の再エンコード処理の結果、VBV占有量が、目標値よりも下回ったために、延長再エンコード区間として次のGOPを設定することが要求された場合、次のGOPの区間内に編集点が存在するか否かを判断し、その結果を基に、延長再エンコード区間を決定し、延長再エンコード区間を示す情報をパラメータ送出部135およびストリーム送出制御部134に供給する。
動作モード決定部133は、操作入力取得部131から供給されるユーザによる操作入力、または、編集装置1の設定に基づいて、動作モードを決定し、再エンコード区間決定部132および動作モード判定部155に供給する。
パラメータ送出部135は、再エンコード区間決定部132からの最小再エンコード区間または延長再エンコード区間を示す情報に基づいて、ストリームの再エンコードに必要な各種のパラメータをパラメータ取得部152に供給する。
ストリーム送出制御部134は、操作入力取得部131および再エンコード区間決定部132からの情報に基づいて、編集されるストリームのうちの再エンコード区間として設定された部分がデコーダ22またはデコーダ23に送出されるように、取得部102を制御する。また、ストリーム送出制御部134は、必要に応じて、編集されるストリームのうちの再エンコード区間として設定されていない部分も取得し、再エンコードされた部分と接続されるように、取得部102を制御する。また、ストリーム送出制御部134は、操作入力取得部131からの情報に基づいて、ストリームの編集、記憶、または表示などのユーザの操作に応じた処理を行うための制御信号をストリーム取得制御部151に供給する。
ストリーム取得制御部151は、ストリーム送出制御部134からの制御信号に基づいて、編集されるストリームの取得を制御する。また、ストリーム取得制御部151は、編集されるストリームのうちの再エンコードされる区間のストリームを、復号制御部153を制御してデコードさせるとともに、符号化制御部154を制御してエンコードさせる。
復号制御部153は、動作モード判定部155により判定される動作モードに基づいて、ストリームのデコードを制御する。パラメータ取得部152は、パラメータ送出部135からストリームの再エンコードに必要な各種のパラメータを取得し、符号化制御部154に供給する。
符号化制御部154は、動作モード判定部155により判定される動作モードに基づいて、パラメータ取得部152から供給されるパラメータを用いて、ストリームの再エンコードを制御する。符号化制御部154は、2パスエンコードモードにおいて、最小再エンコード区間の再エンコード処理の結果、VBV占有量が、目標値よりも下回った場合、1回目のエンコード処理の結果得られる各種パラメータ(例えば、発生符号量などの実績)をエンコーダ27から取得し、2回目のエンコード処理の符号配分の決定に用いる。また、符号化制御部154は、延長再エンコード区間設定モードにおいて、最小再エンコード区間の再エンコード処理の結果、VBV占有量が、目標値よりも下回った場合、延長再エンコード区間が設定されるように、再エンコード区間決定部132に、ストリーム供給を停止させる要求を通知せず、延長再エンコード区間の設定を要求する。
動作モード判定部155は、動作モード決定部133により決定された動作モードに基づいて、動作モードが2パスエンコードモードであるか、延長再エンコード区間設定モードであるかを判定し、判定結果を、復号制御部153および符号化制御部154に供給する。
次に、図13乃至図15のフローチャートを参照して、CPU11の処理について説明する。
ステップS1において、CPU11は、圧縮符号化された圧縮素材映像データである複数のストリームのGOP構造、および、編集点を示す情報の入力を受ける。また、CPU11は、再エンコード区間前後の部分の表示が指令されている場合、最初の編集点より前の部分に対応するストリームの最小再エンコード区間以前の部分のデータが、ストリームスプライサ25を介して、デコーダ24に供給され、スイッチ29を介して、外部の表示装置などに出力されるように各部を制御させるための制御信号を生成し、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS2において、図16および図17または図18乃至図20を用いて後述する最小再エンコード区間決定処理が実行され、図4乃至図7を用いて説明したように、最小再エンコード区間が決定される。
ステップS3において、CPU11は、ステップS2において、最小再エンコード区間が決定されたか否かを判断する。ステップS3において、最小再エンコード区間が決定されなかったと判断された場合、処理は、終了される。
ステップS3において、最小再エンコード区間が決定されたと判断された場合、ステップS4において、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータを取得する。
例えば、ストリームAとストリームBとが第1の編集点で接続され、ストリームBとストリームCとが第2の編集点で接続される場合、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータには、ストリームAにおける第1の編集点を含むGOPまでのGOP数など、その位置を示す情報、ストリームAにおける第1の編集点を含むGOPにおける第1の編集点の位置を示す情報、ストリームBにおける第1の編集点を含むGOPからストリーム終了までのGOP数など、その位置を示す情報、ストリームBにおける第1の編集点を含むGOPにおける第1の編集点の位置を示す情報、ストリームBにおける第2の編集点を含むGOPまでのGOP数など、その位置を示す情報、ストリームBにおける第2の編集点を含むGOPにおける第2の編集点の位置を示す情報、ストリームCにおける第2の編集点を含むGOPからストリーム終了までのGOP数など、その位置を示す情報、ストリームCにおける第2の編集点を含むGOPにおける第2の編集点の位置を示す情報、最小再エンコード区間のはじめの位置に対応するVBV値、および、最小再エンコード区間の最後の位置に対応するフレームのVBV値(すなわち、最小再エンコード区間におけるVBV目標値)、エフェクトの有無またはエフェクトの種類を示す情報などがある。
ステップS5において、CPU11は、最小再エンコード区間のエンコード終端処理に必要なパラメータを取得する。エンコード終端処理とは、図8を用いて説明した、最小再エンコード区間の次のGOPの最初のPピクチャまでの再エンコード処理と、その結果に基づいた、編集ストリームCの生成処理である。
最小再エンコード区間のエンコード終端処理を実行させるために必要なパラメータには、例えば、該当するGOPにおけるVBV目標値、該当するGOPの次のGOPの最初のPピクチャにおけるVBV値、該当するGOPの次のGOPのIピクチャの発生符号量、該当するGOPの次のGOPの最初のPピクチャ直前のBピクチャの数、該当するGOPの次のGOPの最初のPピクチャ直前のBピクチャにおける量子化マトリクスなどがある。
ステップS6において、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なストリームのデコーダ22およびデコーダ23への送出を制御する。具体的には、CPU11は、例えば、ストリームAとストリームBとが第1の編集点で接続され、ストリームBとストリームCとが第2の編集点で接続される場合、最小再エンコード区間の再エンコード処理を実行させるために必要なストリーム、すなわち、ストリームAの最小再エンコード区間の開始位置から第1の編集点までの部分がデコーダ22に供給され、ストリームBの第1の編集点から第2の編集点の部分がデコーダ23に供給され、ストリームCの第2の編集点以降の部分がデコーダ22に供給され(ストリームA,B,Cとも、最小再エンコード区間の部分のデコードに必要なフレームがこの区間外に存在する場合は、そのフレームも含む)、エフェクト/スイッチ26によって、編集点で接続され、必要に応じてエフェクトが施されるように、各部を制御させるための制御信号を生成し、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS7において、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS8において、CPU11は、最小再エンコード区間において表示出力されるストリームが、エンコーダ27への入力データとなるようにスイッチ29を制御させるための制御信号を、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS9において、CPU11は、動作モードは、2パスエンコードモードであるか否かを判断する。ステップS9において、2パスエンコードモードであると判断された場合、処理は、後述するステップS19に進む。
ステップS9において、2パスエンコードモードではないと判断された場合、動作モードは、延長再エンコード区間設定モードであるので、ステップS10において、CPU11は、次のGOPを延長再エンコード区間として仮設定する。
ステップS11において、CPU11は、ステップS10において仮設定された延長再エンコード区間、または、その次のGOPに次の編集点が存在するか否かを判断する。
ステップS11において、次の編集点が存在すると判断された場合、ステップS12において、CPU11は、図10を用いて説明したように、編集点により接続されるストリームの編集点後のストリームを基に、延長再エンコード区間を設定する。
ステップS11において、次の編集点が存在しないと判断された場合、ステップS13において、CPU11は、仮に設定された延長再エンコード区間を次に再エンコードされる延長再エンコード区間とする。
ステップS12またはステップS13の処理の終了後、ステップS14において、CPU11は、次に再エンコードされる延長再エンコード区間の再エンコード処理を実行させるために必要なパラメータを取得する。
ステップS15において、CPU11は、次に再エンコードされる延長再エンコード区間のエンコード終端処理に必要なパラメータを取得する。
ステップS16において、CPU11は、次に再エンコードされる延長再エンコード区間の再エンコード処理を実行させるために必要なストリームの最小再エンコード区間に続くGOPのデコーダ23への送出を制御する。
ステップS17において、CPU11は、次に再エンコードされる延長再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS18において、CPU11は、コントロールバス19、PCIブリッジ17、PCIバス14、および、ノースブリッジ12を介して、CPU20から、デコーダ22またはデコーダ23へのストリーム供給を停止させる要求を受けたか否かを判断する。
すなわち、最小再エンコード区間における再エンコード処理において、目標VBV占有量よりも大きなVBV占有量で最小再エンコード区間のエンコードが終了された場合、CPU20は、CPU11に、デコーダ22またはデコーダ23へのストリーム供給を停止させる要求を送出する。
ステップS18において、CPU20から、デコーダ22またはデコーダ23へのストリーム供給を停止させる要求を受けていない、すなわち、最小再エンコード区間における再エンコード処理において、目標VBV占有量よりも大きなVBV占有量で最小再エンコード区間のエンコードが終了されていないと判断された場合、処理は、ステップS10に戻り、それ以降の処理が繰り返される。ステップS18において、CPU20から、デコーダ22またはデコーダ23へのストリーム供給を停止させる要求を受けたと判断された場合、処理は、後述するステップS22に進む。
ステップS9において、2パスエンコードモードであると判断された場合、ステップS19において、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なストリームのデコーダ22およびデコーダ23への送出を制御する。具体的には、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なストリームがデコーダ22またはデコーダ23に供給され、エフェクト/スイッチ26によって、編集点で接続され、必要に応じてエフェクトが施されるように、各部を制御させるための制御信号を生成し、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS20において、CPU11は、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS21において、CPU11は、コントロールバス19、PCIブリッジ17、PCIバス14、および、ノースブリッジ12を介して、CPU20から、最小再エンコード区間のエンコードが成功したことの通知を受けたか否かを判断する。ステップS21において、最小再エンコード区間のエンコードが成功したことの通知を受けていないと判断された場合、処理は、ステップS19に戻り、それ以降の処理が繰り返される。
ステップS18において、CPU20から、デコーダ22またはデコーダ23へのストリーム供給を停止させる要求を受けたと判断された場合、または、ステップS21において、最小再エンコード区間のエンコードが成功したことの通知を受けたと判断された場合、ステップS22において、CPU11は、最終的な再エンコード区間に続くフレームとして、Iピクチャに続いてBピクチャが配置されているか否かを判断する。ステップS22において、Iピクチャに続いてBピクチャが配置されていない、すなわち、Iピクチャに続いて、Pピクチャが配置されていると判断された場合、処理は、後述するステップS25に進む。
ステップS22において、Iピクチャに続いてBピクチャが配置されていると判断された場合、ステップS23において、CPU11は、最終的な再エンコード区間に続くIピクチャ、1枚以上のBピクチャ、および、Pピクチャ、すなわち、図8において図中アに示されるフレームから図中イに示されるフレームまでの複数のフレームは、HDD16から読み出され、サウスブリッジ15、ノースブリッジ12、PCIバス14、および、PCIブリッジ17を介して、メモリ18に供給されているか否かを判断する。ステップS23において、Iピクチャ、1枚以上のBピクチャ、および、Pピクチャが、メモリ18に供給されていると判断された場合、処理は、後述するステップS25に進む。
ステップS23において、Iピクチャ、1枚以上のBピクチャ、および、Pピクチャが、メモリ18に供給されていないと判断された場合、ステップS24において、CPU11は、最終的な再エンコード区間に続くIピクチャ、1枚以上のBピクチャ、および、Pピクチャのデコーダ23への供給を制御する。
ステップS22において、Iピクチャに続いてBピクチャが配置されていない、すなわち、Iピクチャに続いて、Pピクチャが配置されていると判断された場合、ステップS23において、Iピクチャ、1枚以上のBピクチャ、および、Pピクチャが、メモリ18に供給されていると判断された場合、または、ステップS24の処理の終了後、ステップS25において、CPU11は、再エンコード区間外において表示出力されるストリームが、ストリームスプライサ25を介してデコーダ24に供給されてデコードされ、外部の表示装置などに供給されるように各部を制御させるための制御信号を生成し、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出して、処理が終了される。
このような処理により、CPU11は、最小再エンコード区間を決定して、最小再エンコード区間の再エンコード処理、および、エンコード終端処理に必要なパラメータを、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出するとともに、再エンコード区間のストリームの、ノースブリッジ12、PCIバス14、および、PCIブリッジ17を介した、メモリ18への供給と、デコーダ23(または、必要に応じて、デコーダ22)への供給を制御することができるようになされている。
また、CPU11は、2パスエンコードモードにおいて、最小再エンコード区間において実行される再エンコードの結果、VBV占有量が連続するまで、最小再エンコード区間の再エンコードが実行されるように、各種制御を実行するので、できるだけ少ない再エンコード区間としつつ、VBVの制約を守るようにすることができる。これにより、画質の劣化を防止することができる。
また、CPU11は、延長再エンコード設定モードにおいて、最小再エンコード区間において実行される再エンコードの結果、VBV占有量が連続しない場合、VBV占有量が連続するまで、延長再エンコード区間を設定するので、リアルタイムに編集結果を表示出力することを可能とするとともに、VBVの制約を守って、編集処理を実行することができる。
また、CPU11は、延長再エンコード区間の設定時に、その区間内、または、その次のGOPに新たな編集点があるか否かを判断し、編集点が存在した場合、編集点に基づいて、延長再エンコード区間を設定する。
更に、CPU11は、延長再エンコード設定モードにおいて、予め、次に再エンコードされる延長再エンコード区間の再エンコード処理、および、エンコード終端処理に必要なパラメータを、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出するとともに、再エンコード区間が延長された場合に続いて再エンコードされるストリームを、ノースブリッジ12、PCIバス14、および、PCIブリッジ17を介して、メモリ18に供給させ、デコーダ23(または、必要に応じて、デコーダ22)に供給させることができるようになされているので、編集装置1は、再エンコード区間が延長され、延長再エンコード区間が設定された場合であっても、処理が遅延されたりとまったりすることがない。このため、編集装置1は、連続して編集画像を再生出力させることが可能となる。
次に、図16および図17のフローチャートを参照して、図13のステップS2において実行される処理の第1の例である、最小再エンコード区間決定処理1について説明する。
ステップS41において、CPU11は、編集されるそれぞれのストリームにおける編集点位置の情報を基に、図4を用いて説明したように、基準再エンコード区間を決定する。すなわち、編集点abにおいてストリームBと接続されるストリームAにおける編集点aを含むGOPの開始位置をαとし、ストリームBにおける編集点bを含むGOPの終了位置をβとしたとき、ストリームAおよびストリームBが編集点において接続されて生成されるストリームCにおける基準再エンコード区間は、編集点aおよびbを含むαからβまでの区間とされる。
ステップS42において、CPU11は、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、N/2≦A+B≦Nを満たすか否かを判断する。
ステップS42において、フレーム数A+Bは、N/2≦A+B≦Nを満たすと判断された場合、ステップS43において、CPU11は、基準再エンコード区間を1GOPとして、最小再エンコード区間に仮設定し、処理は、図17のステップS51に進む。
ステップS42において、フレーム数A+Bは、N/2≦A+B≦Nを満たさないと判断された場合、ステップS44において、CPU11は、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、N+1≦A+B≦2N−1を満たすか否かを判断する。
ステップS44において、フレーム数A+Bは、N+1≦A+B≦2N−1を満たすと判断された場合、ステップS45において、CPU11は、図6を用いて説明したように、基準再エンコード区間のフレーム数が偶数の場合は均等に分割し、奇数の場合は後ろが1フレーム多くなるように分割して、2GOPとし、最小再エンコード区間に仮設定し、処理は、図17のステップS51に進む。
また、このとき、フレーム数A+Bが割り切れない値であった場合、時間的に後ろとなるGOPのフレーム数が多くなるようにすると好適である。なぜなら、再エンコードされた符号化ストリームと、再エンコードしない部分の符号化ストリームとの接続部分のOccupancy(オキュパンシ)を合わせこむためのデコードおよびエンコードの処理において、時間的に後のGOPのフレーム数が多いほうが、符号割り当ての自由度が高くなるからである。
ステップS44において、フレーム数A+Bは、N+1≦A+B≦2N−1を満たさないと判断された場合、ステップS46において、CPU11は、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、0≦A+B<N/2を満たすか否かを判断する。
ステップS46において、フレーム数A+Bは、0≦A+B<N/2を満たさないと判断された場合、フレーム数A+Bは、2N以上の値を有するので、ステップS47において、CPU11は、エラー処理を実行し、処理は、図13のステップS2に戻り、ステップS3に進む。
ステップS46において、フレーム数A+Bは、0≦A+B<N/2を満たすと判断された場合、ステップS48において、CPU11は、基準再エンコード区間に含まれるフレーム数A+Bに、ストリームBの次のGOPのフレーム数を加えた値A+B+Cは、N/2≦A+B+C≦Nを満たすか否かを判断する。
ステップS48において、A+B+Cは、N/2≦A+B+C≦Nを満たさないと判断された場合、すなわち、N<A+B+Cである場合、ステップS49において、CPU11は、図5を用いて説明したように、基準再エンコード区間にストリームBの次のGOPを加えたものを、1GOPがN/2≦x≦Nを満たすように分割して、2以上のGOPを設定して、最小再エンコード区間に仮設定する。このとき、それぞれのGOPに含まれるフレーム数ができるだけ均等になるように分割されると好適である。例えば、2GOPに分割される場合、A+B+Cのフレーム数が偶数の場合は均等に分割され、奇数の場合は後ろが1フレーム多くなるように分割されて、2GOPとされ、この2GOPが最小再エンコード区間に設定される。
また、このとき、フレーム数A+B+Cが割り切れない値であった場合、時間的に後ろとなるGOPのフレーム数が多くなるようにすると好適である。なぜなら、再エンコードされた符号化ストリームと、再エンコードしない部分の符号化ストリームとの接続部分のOccupancy(オキュパンシ)を合わせこむためのデコードおよびエンコードの処理において、時間的に後のGOPのフレーム数が多いほうが、符号割り当ての自由度が高くなるからである。
更に、A+B+Cのフレーム数をできるだけ均等に分割する以外に、予め定められた所定のフレーム数で、GOPを分割するものとしても良い。例えば、2つのうちの時間的に前のGOPを構成するフレーム数が必ず所定のフレーム数(例えば、N/2またはN/2以上となる最小の整数)となるようにして、GOPが分割されるものとしても良い。また、予め定められた所定のフレーム数は、それぞれのGOPにおいて、1GOPがN/2≦x≦Nを満たす区間で定められるものとすると好適である。
ステップS49の処理の終了後、処理は、図17のステップS51に進む。
ステップS48において、A+B+Cは、N/2≦A+B+C≦Nを満たすと判断された場合、ステップS50において、CPU11は、基準再エンコード区間にストリームBの次のGOPを加えたものを1GOPとして、最小再エンコード区間に仮設定する。
ステップS43、ステップS45、ステップS49、または、ステップS50の処理の終了後、ステップS51において、CPU11は、仮設定された最小再エンコード区間内、または、仮設定された最小再エンコード区間の次のGOPに、最小再エンコード区間の設定に考慮されていない編集点が存在するか否かを判断する。
ステップS51において、編集点が存在しないと判断された場合、ステップS52において、CPU11は、仮設定された最小再エンコード区間を最小再エンコード区間とし、処理は、図13のステップS2に戻り、ステップS3に進む。
ステップS51において、編集点が存在すると判断された場合、ステップS53において、CPU11は、図7を用いて説明したように、全ての編集点を考慮した最小再エンコード区間を再度仮設定する。
ステップS54において、CPU11は、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、N/2≦Z≦Nを満たすか否かを判断する。
ステップS54において、フレーム数Zは、N/2≦Z≦Nを満たすと判断された場合、ステップS55において、CPU11は、仮設定された最小再エンコード区間を1GOPとして、最小エンコード区間に仮設定し、処理は、ステップS51に戻り、それ以降の処理が繰り返される。
ステップS54において、フレーム数Zは、N/2≦Z≦Nを満たさないと判断された場合、ステップS56において、CPU11は、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、N+1≦Z≦2N−1を満たすか否かを判断する。
ステップS56において、フレーム数Zは、N+1≦Z≦2N−1を満たすと判断された場合、ステップS57において、CPU11は、仮設定された最小再エンコード区間のフレーム数が偶数の場合は均等に分割し、奇数の場合は後ろが1フレーム多くなるように分割して、2GOPとし、最小エンコード区間に仮設定し、処理は、ステップS51に戻り、それ以降の処理が繰り返される。
ステップS56において、フレーム数Zは、N+1≦Z≦2N−1を満たさないと判断された場合、ステップS58において、CPU11は、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、0≦Z<Nを満たすか否かを判断する。
ステップS58において、フレーム数Zは、0≦Z<Nを満たさないと判断された場合、ステップS59において、CPU11は、エラー処理を実行し、処理は、図13のステップS2に戻り、ステップS3に進む。
ステップS58において、フレーム数Zは、0≦Z<Nを満たすと判断された場合、ステップS60において、CPU11は、仮設定された最小再エンコード区間に含まれるフレーム数Zに、次のGOPのフレーム数を加えた値Z´は、N/2≦Z´≦Nを満たすか否かを判断する。
ステップS60において、値Z´は、N/2≦Z´≦Nを満たすと判断された場合、ステップS61において、CPU11は、基準再エンコード区間に次のGOPを加えたものを1GOPとして、最小エンコード区間に仮設定し、処理は、ステップS51に戻り、それ以降の処理が繰り返される。
ステップS60において、値Z´は、N/2≦Z´≦Nを満たさないと判断された場合、ステップS62において、CPU11は、基準再エンコード区間に次のGOPを加えたものを、1GOPがN/2≦x≦Nを満たすように分割して、2以上のGOPを設定し、最小エンコード区間に仮設定し、処理は、ステップS51に戻り、それ以降の処理が繰り返される。
このような処理により、最小再エンコード区間の設定について、複数の編集点が存在した場合においても、それらに対応した最小再エンコード区間を設定することができるとともに、短いGOPを結果として残さない様にすることができ、いたずらに画質の劣化をもたらさないようにすることができる。そして、再エンコードを行う区間の各GOPに対し、出来る限り大きなGOP長となる様なエンコードを実施できるため、符号化効率が最大となり、より良い画質の符号化を期待することができる。
なお、ステップS45およびステップS57の処理においては、基準再エンコード区間内のフレーム数をできるだけ均等になるように分割するものとして説明したが、ここでは、A+Bのフレーム数をできるだけ均等に分割する以外に、予め定められた所定のフレーム数で、GOPを分割するものとしても良い。
次に、図18乃至図20のフローチャートを参照して、図14のステップS2において実行される処理の第2の例である、最小再エンコード区間決定処理2について説明する。
ステップS71乃至ステップS74において、図18のステップS41乃至ステップS44と、基本的に同様の処理が実行される。
すなわち、CPU11は、編集されるそれぞれのストリームにおける編集点位置の情報を基に、図4を用いて説明したように、基準再エンコード区間を決定する。そして、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、N/2≦A+B≦Nを満たすと判断された場合、基準再エンコード区間を1GOPとして、最小再エンコード区間が仮設定される。
そして、フレーム数A+Bは、N/2≦A+B≦Nを満たさないと判断された場合、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、N+1≦A+B≦2N−1を満たすか否かが判断される。フレーム数A+Bは、N+1≦A+B≦2N−1を満たさないと判断された場合、処理は、後述するステップS77に進む。
フレーム数A+Bは、N+1≦A+B≦2N−1を満たすと判断された場合、ステップS75において、CPU11は、基準再エンコード区間のうち、編集点より前にあるフレームの数Aは、A≧N/2を満たしているか否かを判断する。ステップS75において、A≧N/2を満たしていると判断された場合、処理は、後述するステップS82に進む。
ステップS75において、A≧N/2を満たしていないと判断された場合、ステップS76において、CPU11は、フレーム数A+Bの値に基づいた所定のフレーム数になるように分割して2GOPとし、最小再エンコード区間に仮設定して、処理は、図20のステップS90に進む。
また、このとき、例えば、2つのうちの時間的に前のGOPを構成するフレーム数が必ず所定のフレーム数(例えば、N/2またはN/2以上となる最小の整数)となるようにして、GOPが分割されるものとしても良い。具体的には、例えば、N=15のとき、A+B=16であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を8とし、A+B=17であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を9とし、A+B=18であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を10とするように、2つ目のGOPのフレーム数を変化させ、同様に、A+B=22であれば、1つ目のGOPのフレーム数を8、2つ目のGOPのフレーム数を14とするようにしても良い。
このようにして、時間的に前のGOPのフレーム数を、再エンコードが困難とならないような所定の値に固定しておき、後のGOPのフレーム数が多くなるように設定すると、再エンコードしない部分の符号化ストリームとの接続部分のOccupancy(オキュパンシ)を合わせこむためのデコードおよびエンコードの処理において、時間的に後のGOPのフレーム数が多いほうが、符号割り当ての自由度が高くなるため、好適である。
ステップS74において、フレーム数A+Bは、N+1≦A+B≦2N−1を満たさないと判断された場合、ステップS77乃至ステップS81において、図18のステップS46乃至ステップS50と基本的に同様の処理が繰り返される。
すなわち、基準となる1GOPフレーム数をNとして、基準再エンコード区間に含まれるフレーム数A+Bは、0≦A+B<N/2を満たすか否かが判断され、フレーム数A+Bは、0≦A+B<N/2を満たさないと判断された場合、フレーム数A+Bは、2N以上の値を有するので、エラー処理が実行され、処理は、図14のステップS2に戻り、ステップS3に進む。そして、フレーム数A+Bは、0≦A+B<N/2を満たすと判断された場合、基準再エンコード区間に含まれるフレーム数A+Bに、ストリームBの次のGOPのフレーム数を加えた値A+B+Cは、N/2≦A+B+C≦Nを満たすか否かが判断される。
A+B+Cは、N/2≦A+B+C≦Nを満たさないと判断された場合、すなわち、N<A+B+Cである場合、図5を用いて説明したように、基準再エンコード区間にストリームBの次のGOPを加えたものが、1GOPがN/2≦x≦Nを満たすように分割されて、2以上のGOPが設定されて、最小再エンコード区間に仮設定され、処理は、図20のステップS90に進む。このとき、A+B+Cのフレーム数ができるだけ均等になるようにGOPを分割するようにしてもよいし、上述したように、1GOPがN/2≦x≦Nを満たす区間で、予め定められた所定のフレーム数に基づいて、GOPを分割するものとしても良い。
そして、A+B+Cは、N/2≦A+B+C≦Nを満たすと判断された場合、基準再エンコード区間にストリームBの次のGOPを加えたものが1GOPとされて、最小再エンコード区間に仮設定され、処理は、図20のステップS90に進む。
ステップS75において、A≧N/2を満たしていると判断された場合、ステップS82において、CPU11は、編集点をGOPの切れ目としたとき、基準再エンコード区間の編集点より後ろのGOPのGOP数Bは、N/2≦Bを満たすか否かを判断する。
ステップS82において、基準再エンコード区間の後ろのGOPのGOP数Bは、N/2≦Bを満たすと判断された場合、ステップS83において、CPU11は、編集点をGOPの切れ目として、基準再エンコード区間を2GOPに分割し、最小再エンコード区間に仮設定して、処理は、図20のステップS90に進む。
なお、ステップS83の処理が実行された場合、図14を用いて説明したCPU11の処理のステップS8において、CPU11は、最小再エンコード区間において編集点より後ろのGOPのディスプレイ順における先頭をI2ピクチャとする(換言すれば、B0およびB1ピクチャを省略する)ことを示す情報を、再エンコードに必要なパラメータとして、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU20に送出する。
ステップS82において、基準再エンコード区間の後ろのGOPのGOP数Bは、N/2≦Bを満たさないと判断された場合、ステップS84において、CPU11は、編集点をGOPの切れ目としたとき、基準再エンコード区間の後ろのGOPのGOP数Bに、ストリームBの次のGOPのフレーム数Cを加えたB+Cは、N/2≦B+C≦Nを満たすか否かを判断する。
ステップS84において、N/2≦B+C≦Nが満たされると判断された場合、ステップS85において、CPU11は、基準再エンコード区間にストリームBの次のGOPを加えたものを、1GOP目が編集点より前、2GOP目を編集点より後ろの部分として、最小再エンコード区間に仮設定して、処理は、図20のステップS90に進む。
ステップS84において、N/2≦B+C≦Nを満たさないと判断された場合、ステップS86において、CPU11は、B+Cは、N/2>B+Cを満たすか否かを判断する。
ステップS86において、N/2>B+Cが満たされないと判断された場合、B+C>Nであるので、ステップS87において、CPU11は、基準再エンコード区間にストリームBの次のGOPを加えたものを、1GOP目が編集点より前、2GOP目および3GOP目を、編集点より後ろの部分、すなわち、フレーム数がB+Cフレームである部分を2GOPに分割したそれぞれのGOPであるものとして、この3GOPを最小再エンコード区間に仮設定し、処理は、図20のステップS90に進む。
ステップS86において、N/2>B+Cが満たされると判断された場合、ステップS88において、CPU11は、更に、ストリームBの次のGOPのフレーム数を加えたフレーム数は、N/2と等しいか、または、大きいかを判断する。ステップS88において、フレーム数はN/2より小さいと判断された場合、フレーム数が、N/2と等しいか、または、大きいと判断されるまで、ステップS88の処理が繰り返される。
ステップS88において、フレーム数が、N/2と等しいか、または、大きいと判断された場合、ステップS89において、CPU11は、基準再エンコード区間にストリームBの複数GOPを加えたものを、1GOP目が編集点より前、2GOP目を編集点より後ろの部分として、最小再エンコード区間に仮設定して、処理は、図20のステップS90に進む。
そして、ステップS73、ステップS76、ステップS80、ステップS81、ステップS83、ステップS85、ステップS87、または、ステップS89の処理の終了後、ステップS90乃至ステップS101においては、ステップS51乃至ステップS62と、基本的に同様の処理が実行される。
すなわち、仮設定された最小再エンコード区間内、または、仮設定された最小再エンコード区間の次のGOPに、最小再エンコード区間の設定に考慮されていない編集点が存在するか否かが判断され、編集点が存在しないと判断された場合、仮設定された最小再エンコード区間が最小再エンコード区間とされ、処理は、図13のステップS2に戻り、ステップS3に進む。
編集点が存在すると判断された場合、図7を用いて説明したように、全ての編集点を考慮した最小再エンコード区間が再度仮設定される。そして、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、N/2≦Z≦Nを満たすか否かが判断され、フレーム数Zは、N/2≦Z≦Nを満たすと判断された場合、ステップS55において、CPU11は、仮設定された最小再エンコード区間を1GOPとして、最小エンコード区間に仮設定し、処理は、ステップS90に戻り、それ以降の処理が繰り返される。
それに対して、フレーム数Zは、N/2≦Z≦Nを満たさないと判断された場合、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、N+1≦Z≦2N−1を満たすか否かが判断され、フレーム数Zは、N+1≦Z≦2N−1を満たすと判断された場合、仮設定された最小再エンコード区間のフレーム数が偶数の場合は均等に分割され、奇数の場合は後ろが1フレーム多くなるように分割されて、2GOPとされ、最小エンコード区間に仮設定されて、処理は、ステップS90に戻り、それ以降の処理が繰り返される。
フレーム数Zは、N+1≦Z≦2N−1を満たさないと判断された場合、基準となる1GOPフレーム数をNとして、仮設定された最小再エンコード区間に含まれるフレーム数Zは、0≦Z<Nを満たすか否かが判断され、フレーム数Zは、0≦Z<Nを満たさないと判断された場合、ステップS59において、CPU11は、エラー処理を実行し、処理は、図13のステップS2に戻り、ステップS3に進む。
フレーム数Zは、0≦Z<Nを満たすと判断された場合、仮設定された最小再エンコード区間に含まれるフレーム数Zに、次のGOPのフレーム数を加えた値Z´は、N/2≦Z´≦Nを満たすか否かが判断され、値Z´は、N/2≦Z´≦Nを満たすと判断された場合、基準再エンコード区間に次のGOPを加えたものが1GOPとされて、最小エンコード区間に仮設定され、処理は、ステップS90に戻り、それ以降の処理が繰り返される。
そして、値Z´は、N/2≦Z´≦Nを満たさないと判断された場合、基準再エンコード区間に次のGOPを加えたものが、1GOPがN/2≦x≦Nを満たすように分割されて、2以上のGOPが設定され、最小エンコード区間に仮設定されて、処理は、ステップS90に戻り、それ以降の処理が繰り返される。
このような処理により、最小再エンコード区間の設定について、複数の編集点が存在した場合においても、それらに対応した最小再エンコード区間を設定することができるとともに、GOPを構成するフレーム数と、編集点の位置とに基づいて、いたずらに画質の劣化をもたらさないようなGOP構成とすることができる。それにより、より良い画質の符号化を期待することができる。
なお、ステップS76またはステップS96の処理においては、A+Bのフレーム数をできるだけ均等に分割する以外に、予め定められた所定のフレーム数で、GOPを分割するものとして説明したが、ここでは、基準再エンコード区間内のフレーム数をできるだけ均等になるように分割するものとしても良い。
また、この処理においては、最小再エンコード区間を仮決定した後、仮決定された最小再エンコード区間内、または、その次のGOPに異なる編集点が存在するか否かを判断し、編集点が存在した場合、最小再エンコード区間を設定しなおすものとして説明しているが、例えば、基準再エンコード区間を仮決定し、仮決定された基準再エンコード区間内に異なる編集点が存在するか否かを判断し、編集点が存在した場合、基準再エンコード区間を設定しなおすようにしてもよい。そして、設定しなおされた基準再エンコード区間に基づいて、最小再エンコード区間が仮決定され、仮決定された最小再エンコード区間内、または、その次のGOPに異なる編集点が存在するか否かが判断されて、編集点が存在した場合、最小再エンコード区間が設定しなおされる。
次に、図21のフローチャートを参照して、2パスエンコードモードにおいて実行される、CPU20の処理1について説明する。
ステップS111において、CPU20は、図13のステップS7においてCPU11により送出された、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを取得する。
ステップS112において、CPU20は、最小再エンコード区間のVBV開始値V1とVBV目標値V2とを取得する。
ステップS113において、図23を用いて後述する最小再エンコード区間の符号配分決定処理が実行される。
ステップS114において、CPU20は、決定された符号配分に基づいて、最小再エンコード区間のデコードおよびエンコード、並びに、編集点の接続の制御を開始する。例えば、ストリームAとストリームBとが編集点で接続される場合を例にすると、CPU20は、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU11から送出される制御信号を基に、ストリームAの最小再エンコード区間以前の部分のデータは、ストリームスプライサ25を介して、デコーダ24に供給され、スイッチ29を介して、外部の表示装置などに出力されるように、PCIブリッジ17、ストリームスプライサ25、デコーダ24、および、スイッチ29の動作を制御し、ストリームAの最小再エンコード区間のデータがデコーダ22に供給されてデコードされ、ストリームBの編集点b以降の部分(編集点b以降の部分のデコードに必要なフレームが編集点b以前に存在する場合は、そのフレームも含む)がデコーダ23に供給され、エフェクト/スイッチ26によって、デコードされたそれぞれのストリームが編集点で接続され、必要に応じてエフェクトが施された後、スイッチ29を介して、外部の表示装置などに出力されるとともに、エンコーダ27によってエンコードされるように、PCIブリッジ17、デコーダ22、デコーダ23、エフェクト/スイッチ26、エンコーダ27、および、スイッチ29の動作を制御する。
ステップS115において、CPU20は、最小再エンコード区間の再エンコードは終了したか否かを判断する。最小再エンコード区間の再エンコードは終了していないと判断された場合、最小再エンコード区間の再エンコードは終了したと判断されるまで、ステップS115の処理が繰り返される。
ステップS115において、最小再エンコード区間の再エンコードは終了したと判断された場合、ステップS116において、CPU20は、最小再エンコード区間の再エンコード終了点のVBV値は、VBV目標値に合致するか否かを判断する。
例えば、ステップS112において、図22に示される最小再エンコード区間におけるVBV開始値V1とVBV目標値V2とが取得される。そして、再エンコード終了点のVBV値は、VBV目標値であるV2より大きな値となるか否かが判断される。
ステップS116において、再エンコード終了点のVBV値は、VBV目標値に合致しないと判断された場合、ステップS117において、CPU20は、最小再エンコード区間において実施された再エンコード処理に関するパラメータとして、実際のエンコード結果によるVBV到達点、および、最小再エンコード区間の符号の総発生符号量Gを取得する。実際のエンコード結果によるVBV到達点は、例えば、図22において、V3で示される。
ステップS118において、CPU20は、VBV目標値に対するVBV達成値の差分を求める。
すなわち、CPU20は、図22に示されるように、最小再エンコード区間におけるVBV開始値V1とVBV目標値V2、実際のエンコード結果によるVBV到達点V3、および、最小再エンコード区間の符号の総発生符号量Gを基に、V2−V3をVBV Buffer上昇分の担保とする。
ステップS119において、CPU20は、ステップS118において求められた、VBV目標値に対するVBV到達値の差分を基に、発生符号量の再計算を実行し、処理は、ステップS114に戻り、それ以降の処理が繰り返される。
すなわち、CPU20は、VBV Buffer上昇分V2−V3を考慮して、最小再エンコード区間を再度エンコードする場合、TM5の発生符号目標値計算において、G‘=G−(V2−V3)−Δを用いる。ここで、Δは、画質を考慮した上での各機器で考慮するマージン分とする。
ステップS116において、再エンコード終了点のVBV値は、VBV目標値に合致する、すなわち、Occupancyの連続性が保たれたと判断された場合、ステップS120において、図25を用いて後述するエンコード終端処理が実行され、処理が終了される。
このような処理により、再エンコード区間の終了点において、VBV目標値に合致するか否かが判断され、VBV目標値に合致しなかった場合、1回目のエンコードの実績に基づいて、もう一度、最小再エンコード区間の再エンコードが実行されるので、2回目には、再エンコード区間の終了点において、VBV目標値に合致することができるような再エンコード処理が実行されるように符号配分が決定される可能性が高くなる。
なお、ここでは、ステップS113において、図23を用いて後述する最小再エンコード区間の符号配分決定処理が実行されて、符号配分が決定されるものとして説明するが、ここでは、VBV目標値V2に対して、最小再エンコード区間の符号配分を決定することが可能であれば、符号配分の決定方法は、いずれの方法を用いてもよい。
また、ここでは、最小再エンコード区間の1回目の再エンコード処理によってVBV目標値に到達しなかった場合、再度、最小再エンコード区間を再エンコードするものとして説明しているが、最小再エンコード区間が複数のGOPで構成されているとき、全てのGOPの再エンコードを繰り返すことなく、最後の1GOPのみ、または、後ろから複数のGOPのみの再エンコードを、符号配分を変更して繰り返すようにしてもよい。
次に、図23のフローチャートを参照して、図21のステップS113において実行される最小再エンコード区間の符号配分決定処理について説明する。
ステップS131において、CPU20は、ステップS112において取得された、最小再エンコード区間のVBV開始値V1とVBV目標値V2とに基づいて、V2−V1を求める。
ステップS132において、CPU20は、最小再エンコード区間において、平均的な絵柄が続いた場合を仮定し、その場合の発生符号量Gを求める。
すなわち、編集点を含んだ最小再エンコード区間に対して、VBV開始点からVBV目標点までの符号化を行う際、この部分のエンコード処理に関しては、まだ、何の実績も無いので、最小再エンコード区間の終了点において、VBV占有量がいずれの値に到達するかを推定するための根拠がない。このため、エンコード終了点におけるVBV到達点の推定処理は容易ではない。そこで、CPU20は、図24に示されるように、最小再エンコード区間に含まれる画像が平均的な絵柄である、すなわち、VBV到達点もV1となることを想定して、その場合の発生符号量Gを求める。
そして、ステップS133において、CPU20は、V2−V1を、VBV上昇分として考慮し、最小再エンコード区間における発生符号量を求める。
すなわち、CPU20は、最小再エンコード区間に含まれる画像が平均的な絵柄であることを想定した上で、ステップS112において取得された、最小再エンコード区間のVBV開始値V1とVBV目標値V2に基づいて、図24に示されるV2−V1を、VBV上昇分として担保する。そして、CPU20は、TM5の発生符号目標値計算において、G‘=G−(V2−V1)−Δを求める。ここで、Δは、画質を考慮した上での各機器で考慮するマージン分とする。
そして、ステップS134において、CPU20は、ステップS133により求められた発生符号量に基づいて、最小再エンコード区間の符号配分を決定し、処理は、図21のステップS113に戻り、ステップS114に進む。
このような処理により、最小再エンコード区間の最初の再エンコード時における発生符号量の配分が決定される。これにより、V2−V1が正の値であっても負の値であっても、TM5の発生符号目標値計算において、Gの値を最小再エンコード区間に含まれる画像が平均的な絵柄であるとしたときよりも適切な発生符号量を割り当てて、バッファアンダーフローを防止しつつ、画質劣化を抑制することが可能となる。
次に、図25のフローチャートを参照して、図21のステップS120において実行される、エンコード終端処理について説明する。
ステップS141において、CPU20は、次のGOPのエンコード前に、次のGOPのBピクチャの量子化マトリクスを設定する。
ステップS142において、CPU20は、Iピクチャから次のPピクチャの直前までの区間の再エンコードを実行する。
ステップS143において、CPU20は、VBV目標値を次のGOPの最初のPピクチャの直前のVBV値に設定し、再エンコード終了点のVBV値は、VBV目標値に合致するか否かを判断する。このとき、オリジナルのストリーム(例えば、図4などにおけるストリームB)のIピクチャのビット量を用いて、再エンコード終了点のVBV値は、VBV目標値に合致するか否かの判断が実行される。
ステップS143において、VBV目標値に合致した、すなわち、Occupancyの連続性が保たれたと判断された場合、ステップS144において、CPU20は、再エンコードを終了し、Iピクチャをオリジナルのストリーム(例えば、図4などにおけるストリームB)のIピクチャに置き換えて、このGOPの最初のPピクチャの直前までの再エンコード画像を、編集画像として採用するように、各部を制御して、処理は、図21のステップS120に戻り、処理が終了される。
ステップS143において、VBV目標値に合致しなかったと判断された場合、ステップS145において、CPU20は、再エンコードを終了し、前のGOPまでの再エンコード画像を採用する、すなわち、ストリームスプライサ25に供給されたオリジナルのストリームBにおいて、最初のPピクチャの前に配置されている1枚または複数枚のBピクチャを編集画像として採用する処理を実行して(換言すれば、ステップS142において再エンコードされた、次のPピクチャの直前までの区間の再エンコード結果を破棄して)、処理は、図21のステップS120に戻り、処理が終了される。
このような処理により、GOPの切れ目でVBVが連続した場合、次のPピクチャの直前まで再エンコードされる区間が延長され、その再エンコードされる区間の終了点でVBVが連続するように、再エンコードが制御される。そして、次のPピクチャにおいてVBVが連続した場合、編集データとして、次のGOPの最初のPピクチャの直前までのBピクチャが加えられる。
次に、図26のフローチャートを参照して、延長再エンコード区間設定モードにおいて実行される、CPU20の処理2について説明する。
ステップS151において、CPU20は、図13のステップS7においてCPU11により送出された、最小再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを取得する。
ステップS152において、CPU20は、最小再エンコード区間のVBV開始値V1とVBV目標値V2とを取得する。
ステップS153において、図23を用いて説明した、最小再エンコード区間の符号配分決定処理が実行される。
ステップS154において、CPU20は、決定された符号配分に基づいて、最小再エンコード区間のデコードおよびエンコード、並びに、編集点の接続の制御を開始する。例えば、ストリームAとストリームBとが編集点で接続される場合を例にすると、CPU20は、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU11から送出される制御信号を基に、ストリームAの最小再エンコード区間以前の部分のデータは、ストリームスプライサ25を介して、デコーダ24に供給され、スイッチ29を介して、外部の表示装置などに出力されるように、PCIブリッジ17、ストリームスプライサ25、デコーダ24、および、スイッチ29の動作を制御し、ストリームAの最小再エンコード区間のデータがデコーダ22に供給されてデコードされ、ストリームBの編集点b以降の部分(編集点b以降の部分のデコードに必要なフレームが編集点b以前に存在する場合は、そのフレームも含む)がデコーダ23に供給され、エフェクト/スイッチ26によって、デコードされたそれぞれのストリームが編集点で接続され、必要に応じてエフェクトが施された後、スイッチ29を介して、外部の表示装置などに出力されるとともに、エンコーダ27によってエンコードされるように、PCIブリッジ17、デコーダ22、デコーダ23、エフェクト/スイッチ26、エンコーダ27、および、スイッチ29の動作を制御する。
ステップS155において、CPU20は、図14のステップS17においてCPU11により送出された、延長再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータを取得する。
ステップS156において、CPU20は、延長再エンコード区間のVBV開始値V1’とVBV目標値V2’とを取得する。
ステップS157において、CPU20は、現在設定されている再エンコード区間(例えば、1回目のステップS157の処理においては、最小再エンコード区間、それ以降に実行されるステップS157の処理においては、延長再エンコード区間)の再エンコードは終了したか否かを判断する。ステップS157において、現在設定されている区間の再エンコードは終了していないと判断された場合、現在設定されている区間の再エンコードは終了したと判断されるまで、ステップS157の処理が繰り返される。
ステップS157において、現在設定されている区間の再エンコードは終了したと判断された場合、ステップS158において、CPU20は、再エンコード終了点のVBV値は、VBV目標値に合致するか否かを判断する。
ステップS158において、再エンコード終了点のVBV値は、VBV目標値に合致しないと判断された場合、ステップS159において、図27または図29を用いて後述する、延長再エンコード区間の設定処理が実行される。
ステップS160において、CPU20は、ステップS159において決定した、次のGOP延長再エンコード区間の符号配分に基づいて、次に再エンコードされる延長再エンコード区間のデコードおよびエンコードの開始を制御し、処理は、ステップS155に戻り、それ以降の処理が繰り返される。
ステップS158において、再エンコード終了点のVBV値は、VBV目標値に合致する、すなわち、Occupancyの連続性が保たれたと判断された場合、ステップS161において、図25を用いて説明したエンコード終端処理が実行され、処理が終了される。
このような処理により、再エンコード区間の終了点において、VBV目標値に合致するか否かが判断され、VBV目標値に合致しなかった場合、再エンコード区間が延長されるので、再エンコードがリトライされない。そのため、編集時にリアルタイムで編集画像を表示させる場合などの応答性が向上する。
また、ある再エンコード区間の処理が終了する前に、次に再エンコードされる延長再エンコード区間を再エンコードするために必要な情報が取得されるので、再エンコード区間が延長された場合でも、処理が遅延されるようなことがない。
次に、図27のフローチャートを参照して、図26のステップS159において実行される処理の第1の例である、延長再エンコード区間の設定処理1について説明する。
延長再エンコード区間の設定処理1においては、この延長再エンコード区間中または、その次のGOPに編集点が存在するか否かにかかわらず、同一の処理が実行される。
ステップS181において、CPU20は、ステップS156において取得された、延長再エンコード区間のVBV開始値V1´とVBV目標値V2´とに基づいて、V2´−V1´を求める。
ステップS182において、CPU20は、延長再エンコード区間において、平均的な絵柄が続いた場合を仮定し、その場合の発生符号量Gを求める。
すなわち、CPU20は、最小再エンコード区間における場合と同様にして、延長再エンコード区間に含まれる画像が平均的な絵柄であること、すなわち、再エンコード終了点がV1´となる場合を想定した発生符号量Gを基に、VBV Bufferの上昇分を考慮し、発生符号量G´を求めるものとする。
そして、ステップS183において、CPU20は、V2´−V1´を、VBV上昇分として考慮し、延長再エンコード区間における発生符号量を求める。
すなわち、CPU20は、延長再エンコード区間に含まれる画像が平均的な絵柄であることを想定した上で、ステップS156において取得された、延長再エンコード区間のVBV開始値V1´とVBV目標値V2´に基づいて、V2´−V1´、すなわち、図28に示されるV2´−V1´を、VBV上昇分として担保する。そして、CPU20は、TM5の発生符号目標値計算において、G‘=G−(V2´−V1´)−Δを求める。ここで、Δは、画質を考慮した上での各機器で考慮するマージン分とする。
ステップS184において、CPU20は、図26のステップS155において取得した、次にエンコードされる延長再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータ、並びに、ステップS183において求められた延長再エンコード区間における発生符号量G´を基に、符号配分が決定され、延長再エンコード区間の再エンコードの設定を行い、処理は、図26のステップS159に戻り、ステップS160に進む。
このような処理により、延長再エンコード区間における符号量の配分が求められる。
ところで、延長再エンコード区間において、編集点が存在しなければ、ストリームBの編集点以降のオリジナルのエンコードにおいて、オリジナルのVBV開始点からVBV目標点までの符号化実績が存在する。したがって、延長再エンコード区間内に編集点が存在しなければ、この符号化実績を用いて、発生符号量を算出すると好適である。例えば、オリジナルの符号化実績よりも量子化を粗くすることにより、オリジナルのVBV開始点よりVBV占有量の値の少ない延長再エンコード区間開始点からオリジナルのVBV目標点へバッファ占有量が移行するような符号配分が可能となる。一方、延長再エンコード区間内に編集点が存在する場合、オリジナルの符号化ストリームにおける符号化実績を用いることはできない。
次に、図29のフローチャートを参照して、図26のステップS159において実行される処理の第2の例である、延長再エンコード区間の設定処理2について説明する。
延長再エンコード区間の設定処理2においては、延長再エンコード区間の設定処理1とは異なり、この延長再エンコード区間中またはその次のGOPに編集点が存在するか否かによって異なる処理が実行される。
ステップS201において、CPU20は、前の再エンコード区間の終了点から2GOP内、すなわち、延長再エンコード区間に仮設定される1GOP内またはその次のGOPに、編集点があるか否か、換言すれば、延長再エンコード区間は、編集点により再設定されたか否かを判断する。ステップS201において、編集点がないと判断された場合、処理は、後述するステップS203に進む。
ステップS201において、編集点があると判断された場合、ステップS202において、CPU20は、編集点により再設定された延長再エンコード区間に関するパラメータを取得し、処理は、後述するステップS207に進む。
ステップS201において、編集点がないと判断された場合、ステップS203において、CPU20は、ノースブリッジ12、PCIバス14、PCIブリッジ17、および、コントロールバス19を介して、CPU11から、延長再エンコード区間におけるオリジナルのVBV開始値におけるバッファ占有量V4を取得する。
すなわち、図30に示されるように、延長再エンコード区間となるGOPのオリジナル、すなわち、編集点後の編集素材である符号化ストリームがエンコードされた場合のこの区間におけるVBV開始点のバッファ占有量をV4、再エンコード時のVBV開始点、すなわち、最長再エンコード区間の一つ前の区間における再エンコードの終了点におけるバッファ占有量をV1´、この延長再エンコード区間となるGOPのVBV目標点をV2´とすると、延長再エンコード区間に対応するオリジナルストリームの対応するGOPにおいては、符号化が実行されることによりバッファ占有量がV4からV2´に変化したという実績がある。この処理においては、この符号化実績を利用して、符号配分が設定される。
ステップS204において、CPU20は、ステップS156において取得された、延長再エンコード区間のVBV開始値V1´と、ステップS203において取得された延長再エンコード区間におけるオリジナルのVBV開始値におけるバッファ占有量V4に基づいて、V4−V1´を求める。
ステップS205において、CPU20は、図27のステップS132における場合と同様に、延長再エンコード区間において、平均的な絵柄が続いた場合を仮定し、その場合の発生符号量Gを求める。
そして、ステップS206において、CPU20は、V4−V1´を、VBV上昇分として考慮し、延長再エンコード区間における発生符号量を求める。
すなわち、CPU20は、延長再エンコード区間に対応するオリジナルストリーム、すなわち、編集素材であるストリームBの対応するGOPにおいては、符号化が実行されることによりバッファ占有量がV4からV2´に変化したという実績に基づいて、V4−V1´、すなわち、図30に示されるV4−V1´を、VBV上昇分として担保する。そして、CPU20は、TM5の発生符号目標値計算において、G″=G−(V4−V1´)−Δを求める。ここで、Δは、画質を考慮した上での各機器で考慮するマージン分とする。
ステップS202またはステップS206の処理の終了後、ステップS207において、CPU20は、図26のステップS155において取得した、次にエンコードされる延長再エンコード区間の再エンコード処理を実行させるために必要なパラメータおよびエンコード終端処理に必要なパラメータ、並びに、ステップS206において求められた延長再エンコード区間における発生符号量G″を基に、符号配分を決定して、延長再エンコード区間の再エンコードの設定を行い、処理は、図26のステップS159に戻り、ステップS160に進む。
このような処理により、延長再エンコード区間が、編集点により再度設定しなおされていない場合、すなわち、延長再エンコード区間が、1つのストリームからのみ構成されている場合は、延長再エンコード区間のオリジナルのVBVの値を用いて、延長再エンコード区間の発生符号量の配分が決定される。これにより、V4−V1´が正の値であっても負の値であっても、TM5の発生符号目標値計算において、Gの値を最小再エンコード区間に含まれる画像が平均的な絵柄であるとしたときよりも適切な発生符号量を割り当てて、バッファアンダーフローを防止しつつ、画質劣化を抑制することが可能となる。
また、延長再エンコード区間が、編集点により再度設定されている、すなわち、延長再エンコード区間が、複数のストリームから構成されている場合、延長再エンコード区間の終了点のVBV占有量など、編集点により再設定された延長再エンコード区間に関するパラメータを基に、延長再エンコード区間の設定が行われる。
なお、ここでは、コーディックの方式としてMPEGを用いた場合を例として説明しているが、フレーム相関を伴うコーディック処理を行う場合、バッファモデリングにしたがうコーディック処理を行う場合においても、本発明は適用可能であることはいうまでもない。例えば、AVC(Advanced Video Coding)/H.264などにおいて、本発明は適用可能である。
上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。この場合、例えば、図3を用いて説明した編集装置1は、図31に示されるようなパーソナルコンピュータ301により構成される。
図31において、CPU(Central Processing Unit)311は、ROM(Read Only Memory)312に記憶されているプログラム、または記憶部318からRAM(Random Access Memory)313にロードされたプログラムにしたがって、各種の処理を実行する。RAM313にはまた、CPU311が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU311、ROM312、およびRAM313は、バス314を介して相互に接続されている。このバス314にはまた、入出力インタフェース315も接続されている。
入出力インタフェース315には、キーボード、マウスなどよりなる入力部316、ディスプレイやスピーカなどよりなる出力部317、ハードディスクなどより構成される記憶部318、モデム、ターミナルアダプタなどより構成される通信部319が接続されている。通信部319は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース315にはまた、必要に応じてドライブ320が接続され、磁気ディスク331、光ディスク332、光磁気ディスク333、もしくは、半導体メモリ334などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部318にインストールされる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
この記録媒体は、図31に示されるように、装置本体とは別に、ユーザにプログラムを供給するために配布される、プログラムが記憶されている磁気ディスク331(フロッピディスクを含む)、光ディスク332(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク333(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ334などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに供給される、プログラムが記憶されているROM312や、記憶部318に含まれるハードディスクなどで構成される。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、上述の実施の形態においては、編集装置1が、それぞれ、デコーダとエンコーダを有しているものとして説明したが、デコーダおよびエンコーダが、それぞれ、独立した装置として構成されている場合においても、本発明は適用可能である。例えば、図32に示されるように、ストリームデータを復号してベースバンド信号に変換する復号装置371、ベースバンド信号を符号化してストリームデータに変換する符号化装置372が、それぞれ独立した装置として構成されていても良い。
このとき、復号装置371は、映像素材である圧縮符号化データを復号し、符号化装置372に供給するのみならず、本発明を適用することにより符号化装置372により部分的に符号化された後、編集されて生成された圧縮符号化データの供給を受け、復号処理を行い、ベースバンド信号に変換することができる。ベースバンド信号に変換された編集後のストリームは、例えば、所定の表示装置に供給されて表示されたり、他の装置に出力されて、必要な処理が施される。
さらに、上述の実施の形態においては、デコーダ22乃至24が、供給された圧縮符号化データを完全にデコードせず、対応するエンコーダ27が、非完全に復号されたデータの対応する部分を部分的にエンコードする場合においても、本発明は適用可能である。
例えば、デコーダ22乃至24が、VLC符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していなかった場合、エンコーダ27は、量子化および可変長符号化処理を行うが、DCT変換処理は行わない。このような部分的な符号化(中途段階からの符号化)を行うエンコーダにおいても、本発明を適用することができるのは言うまでもない。
さらに、上述の実施の形態においては、デコーダ22乃至24が完全に復号したベースバンド信号を、エンコーダ27が中途段階まで符号化する場合(例えば、DCT変換および量子化を行うが可変長符号化処理を行わないなど)や、デコーダ22乃至24が完全に復号していない(例えば、VLC符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していない)ため、中途段階まで符号化されているデータに対して、エンコーダ27が更に中途段階まで符号化する場合など(例えば、量子化を行うが可変長符号化処理を行わないなど)においても、本発明は適用可能である。
更に、図32に示される復号装置371が、供給されたストリームデータを完全に復号せず、対応する符号化装置372が、非完全に復号されたデータの対応する部分を部分的に符号化する場合においても、本発明は適用可能である。
例えば、復号装置371が、VLC符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していなかった場合、符号化装置372は、量子化および可変長符号化処理を行うが、DCT変換処理は行わない。このような部分的な復号処理(中途段階までの復号)を行う復号装置371のデコード処理、および、符号化(中途段階からの符号化)を行う符号化装置372のエンコード処理において、本発明を適用することができるのは言うまでもない。
更に、復号装置371が完全に復号したベースバンド信号を、符号化装置372が中途段階まで符号化する場合(例えば、DCT変換および量子化を行うが可変長符号化処理を行わないなど)や、復号装置371が完全に復号していない(例えば、VLC符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していない)ため、中途段階まで符号化されているデータに対して、符号化装置372が更に中途段階まで符号化する場合など(例えば、量子化を行うが可変長符号化処理を行わないなど)においても、本発明は適用可能である。
更に、このような部分的な復号を行う(復号処理の工程のうちの一部を実行する)符号化装置31と部分的な符号化を行う(符号化処理の工程のうちの一部を実行する)符号化装置372で構成されたトランスコーダ381においても、本発明は適用可能である。このようなトランスコーダ381は、例えば、スプライシングなどの編集を行う編集装置382、すなわち、上述した編集装置1のストリームスプライサ25やエフェクト/スイッチ26が実行可能な機能を有する編集装置が利用される場合などに用いられる。
さらに、上述の実施の形態においては、CPU11およびCPU20がそれぞれ別の形態で構成されているが、これに限らず、編集装置1全体を制御する1つのCPUとして構成する形態も考えられる。同様に、上述の実施の形態においては、メモリ13およびメモリ21がそれぞれ別の形態で構成されているが、これに限らず、編集装置1において1つのメモリとして構成する形態も考えられる。
さらに、上述の実施の形態においては、HDD16、デコーダ22乃至24、ストリームスプライサ25、エフェクト/スイッチ26、エンコーダ27、入力端子28、および、スイッチ29を、それぞれ、ブリッジおよびバスを介して接続し、編集装置として一体化されている場合について述べたが、本発明はこれに限らず、例えば、これらの構成要素のうちの一部が、外部から有線または無線で接続されるようにしても良いし、これらの構成要素は、この他、種々の接続形態で相互に接続されるようにしてもよい。
さらに、上述の実施の形態においては、圧縮された編集用の素材がHDDに記憶されている場合について述べたが、本発明はこれに限らず、例えば、光ディスク、光磁気ディスク、半導体メモリ、磁気ディスク等の種々の記録媒体に記録された編集用の素材を用いて編集処理を行う場合にも適用することができる。
さらに、上述の実施の形態においては、デコーダ22乃至24、ストリームスプライサ25、エフェクト/スイッチ26、エンコーダ27、入力端子28、および、スイッチ29は、同一の拡張カード(例えば、PCIカード、PCI−Expressカード)に搭載する形態に限らず、例えばPCI−Expressなどの技術によりカード間の転送速度が高い場合には、それぞれ別の拡張カードに搭載してもよい。
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
編集と部分再エンコードについて説明するための図である。 部分再エンコードおよび編集処理を実行した場合のVBVバッファについて説明するための図である。 編集装置の構成を示すブロック図である。 最小再エンコード区間の設定について説明するための図である。 最小再エンコード区間の設定について説明するための図である。 最小再エンコード区間の設定について説明するための図である。 最小再エンコード区間の設定について説明するための図である。 エンコード終端処理について説明するための図である。 再エンコード区間の延長について説明するための図である。 再エンコード区間の延長について説明するための図である。 編集装置の機能構成を示す機能ブロック図である。 制御部の機能構成を示す機能ブロック図である。 CPU11の処理について説明するためのフローチャートである。 CPU11の処理について説明するためのフローチャートである。 CPU11の処理について説明するためのフローチャートである。 最小再エンコード区間決定処理1について説明するためのフローチャートである。 最小再エンコード区間決定処理1について説明するためのフローチャートである。 最小再エンコード区間決定処理2について説明するためのフローチャートである。 最小再エンコード区間決定処理2について説明するためのフローチャートである。 最小再エンコード区間決定処理2について説明するためのフローチャートである。 CPU20の処理1について説明するためのフローチャートである。 VBV占有量について説明するための図である。 最小再エンコード区間の符号配分決定処理について説明するためのフローチャートである。 VBV占有量について説明するための図である。 エンコード終端処理について説明するためのフローチャートである。 CPU20の処理2について説明するためのフローチャートである。 延長再エンコード区間の設定処理1について説明するためのフローチャートである。 VBV占有量について説明するための図である。 延長再エンコード区間の設定処理2について説明するためのフローチャートである。 VBV占有量について説明するための図である。 パーソナルコンピュータの構成を示すブロック図である。 本発明を適用可能な異なる装置の構成について説明するための図である。
符号の説明
1 編集装置, 11 CPU, 16 HDD, 20 CPU, 22乃至24 デコーダ, 25 ストリームスプライサ, 26 エフェクト/スイッチ, 27 エンコーダ, 29 スイッチ, 101 制御部, 102 取得部, 103 デコーダ, 132 再エンコード区間決定部, 133 動作モード決定部, 154 符号化制御部, 155 動作モード判定部

Claims (18)

  1. 複数の符号化ストリームを編集点で接続する処理を実行する情報処理装置において、
    第1の接続点により接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定する最小再エンコード区間決定手段と、
    前記最小再エンコード区間決定手段により決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断する管理手段と、
    前記管理手段により前記オキュパンシの連続性が保たれなかったと判断された場合、前記最小再エンコード区間決定手段により決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定する再エンコード区間決定手段と、
    前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームをデコードして、ベースバンド信号を生成するデコード手段と、
    前記デコード手段により生成された複数のベースバンド信号が編集点で接続されたベースバンド信号エンコードして再符号化ストリームを生成するエンコード手段と
    を備える情報処理装置。
  2. 複数の符号化ストリームと前記エンコード手段により生成された再符号化ストリームとを切り替えることによって、編集点で接続された編集符号化ストリームを生成する生成手段を更に備える
    請求項1に記載の情報処理装置。
  3. 前記最小再エンコード区間決定手段は、仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に前記第2の編集点がない場合、仮決定された前記第1の最小再エンコード区間を、再エンコードを実行する第2の最小再エンコード区間として決定する
    請求項1に記載の情報処理装置。
  4. 前記再エンコード区間決定手段は、前記延長再エンコード区間設定モードにおいて、前記第1の延長再エンコード区間、または、それに続く1GOPに対応する区間に前記第1の編集点または前記第2の編集点とは異なる第3の編集点がある場合、前記第3の編集点に基づいて、再エンコードを実行する第2の延長再エンコード区間を決定し、
    前記第3の編集点がない場合、前記第1の延長再エンコード区間を再エンコードを実行する第2の延長再エンコード区間として決定する
    請求項1に記載の情報処理装置。
  5. 前記管理手段は、前記延長再エンコード区間設定モードにおいて、前記第3の編集点がない場合、前記第2の延長再エンコード区間における前記エンコード手段によるエンコード処理の発生符号量を、前記エンコード手段によりエンコードされていない符号化ストリームにおける対応する部分のオキュパンシを基に管理する
    請求項に記載の情報処理装置。
  6. 前記管理手段は、前記2パスエンコードモードにおいて、オキュパンシの連続性が保たれなかったと判断された場合におけるエンコード処理の終了点のオキュパンシに基づいて、前記エンコード手段による次のエンコード処理の前記第2の最小再エンコード区間における発生符号量を管理する
    請求項1に記載の情報処理装置。
  7. 前記エンコード手段は、MPEGのLong GOP形式でエンコード処理を実行する
    請求項1に記載の情報処理装置。
  8. 前記エンコード手段は、MPEGのLong GOP形式でエンコード処理を実行し、
    前記管理手段により、前記オキュパンシの連続性が保たれたと判断された場合、前記再エンコード区間決定手段は、エンコードが実行された、前記第2の最小再エンコード区間、前記第1の延長再エンコード区間、または、前記第2の延長再エンコード区間に続く次のGOPの最初の前方向参照フレームの直前までのフレームを、再エンコードを実行する第3の延長再エンコード区間として、更に追加する
    請求項に記載の情報処理装置。
  9. 前記エンコード手段は、MPEGのLong GOP形式でエンコード処理を実行し、
    前記最小再エンコード区間決定手段は、前記第1の符号化ストリームにおける前記編集点を含むGOPの開始位置から、前記第2の符号化ストリームにおける前記編集点を含むGOPの終了位置までを基準区間とし、前記基準区間に含まれるフレーム数を基に、前記第1の最小再エンコード区間を決定する
    請求項1に記載の情報処理装置。
  10. 前記最小再エンコード区間決定手段は、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N/2≦M≦Nを満たす場合、前記基準区間を前記第1の最小再エンコード区間とする
    請求項に記載の情報処理装置。
  11. 前記最小再エンコード区間決定手段は、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、0≦M<N/2を満たす場合、前記基準区間に1GOP加えた区間を前記第1の最小再エンコード区間とする
    請求項に記載の情報処理装置。
  12. 前記最小再エンコード区間決定手段は、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N+1≦M≦2N−1を満たす場合、前記基準区間を複数GOPに分割するとともに、前記基準区間を前記第1の最小再エンコード区間とする
    請求項に記載の情報処理装置。
  13. 前記最小再エンコード区間決定手段は、前記基準区間に含まれるフレーム数Mが、基準となる1GOPに含まれるフレーム数Nに対して、N+1≦M≦2N−1を満たし、前記基準区間における前記編集点より前の部分のフレーム数Aが、A≧N/2を満たす場合、前記基準区間を、前記編集点で2つのGOPに分割する
    請求項に記載の情報処理装置。
  14. 前記エンコード手段は、前記編集点で分割された2つのGOPのうちの時間的に後のGOPは、表示順でI2ピクチャから開始されるように、前記ベースバンド信号をエンコードして、符号化ストリームを生成する
    請求項13に記載の情報処理装置。
  15. 前記最小再エンコード区間決定手段は、前記編集点で分割された2つのGOPのうちの時間的に後のGOPに含まれるフレーム数Rが、N/2≦Rを満たさないとき、前記基準区間に1GOP加えた区間を前記第1の最小再エンコード区間とし、N/2≦Rを満たすとき、前記基準区間を前記第1の最小再エンコード区間とする
    請求項13に記載の情報処理装置。
  16. 複数の符号化ストリームを編集点で接続する処理を実行する情報処理装置の情報処理方法において、
    第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定し、
    決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断し、
    前記オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定し、
    前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームをデコードして、ベースバンド信号を生成するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号をエンコードして、符号化ストリームを生成する
    ステップを含む情報処理方法。
  17. 複数の符号化ストリームを編集点で接続する処理をコンピュータに制御させるためのプログラムであって、
    第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定し、
    決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断し、
    前記オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定し、
    前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームのデコードを制御して、ベースバンド信号の生成を制御するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号のエンコードを制御して、符号化ストリームの生成を制御する
    ステップを含む処理をコンピュータに実行させるプログラム。
  18. 複数の符号化ストリームを編集点で接続する処理をコンピュータに制御させるためのプログラムであって、
    第1の接続点で接続される第1の符号化ストリームおよび第2の符号化ストリームのうち、再エンコードを実行する第1の最小再エンコード区間を仮決定し仮決定された前記第1の最小再エンコード区間、または、それに続く1GOPに対応する区間に、前記第1の編集点とは異なる第2の編集点がある場合、前記第2の編集点に基づいて、再エンコードを実行する第2の最小再エンコード区間を決定し、
    決定された第2の最小再エンコード区間において、エンコードされて生成された符号化ストリームの終了点と、エンコードされていない前記符号化ストリームにおける対応する部分とのオキュパンシの連続性が保たれたかを判断し、
    前記オキュパンシの連続性が保たれなかったと判断された場合、決定された第2の最小再エンコード区間に続く1GOPに対応する区間を、再エンコードを実行する第1の延長再エンコード区間として、更に再エンコードを実行する延長再エンコード区間設定モードと、前記第2の最小再エンコード区間におけるエンコード処理を再度実行させる2パスエンコードモードとのいずれかに基づいて、前記符号化ストリームのうち、再エンコードを実行する区間を決定し、
    前記第2の最小再エンコード区間または前記第1の延長再エンコード区間内の前記第1の符号化ストリームおよび前記第2の符号化ストリームを含む複数の前記符号化ストリームのデコードを制御して、ベースバンド信号の生成を制御するとともに、生成された複数のベースバンド信号が編集点で接続されたベースバンド信号のエンコードを制御して、符号化ストリームの生成を制御する
    ステップを含む処理をコンピュータに実行させるためのプログラムが記録されている記録媒体。
JP2006240254A 2006-09-05 2006-09-05 情報処理装置および情報処理方法、記録媒体、並びに、プログラム Expired - Fee Related JP4221676B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006240254A JP4221676B2 (ja) 2006-09-05 2006-09-05 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US11/897,337 US8817887B2 (en) 2006-09-05 2007-08-30 Apparatus and method for splicing encoded streams
CN2007101458981A CN101141642B (zh) 2006-09-05 2007-09-05 信息处理装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006240254A JP4221676B2 (ja) 2006-09-05 2006-09-05 情報処理装置および情報処理方法、記録媒体、並びに、プログラム

Publications (2)

Publication Number Publication Date
JP2008066847A JP2008066847A (ja) 2008-03-21
JP4221676B2 true JP4221676B2 (ja) 2009-02-12

Family

ID=39151498

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006240254A Expired - Fee Related JP4221676B2 (ja) 2006-09-05 2006-09-05 情報処理装置および情報処理方法、記録媒体、並びに、プログラム

Country Status (3)

Country Link
US (1) US8817887B2 (ja)
JP (1) JP4221676B2 (ja)
CN (1) CN101141642B (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7714838B2 (en) * 2006-04-27 2010-05-11 Research In Motion Limited Handheld electronic device having hidden sound openings offset from an audio source
JP4264582B2 (ja) * 2006-06-13 2009-05-20 ソニー株式会社 情報処理装置および情報処理方法、プログラム、並びに記録媒体
JP4229149B2 (ja) * 2006-07-13 2009-02-25 ソニー株式会社 ビデオ信号処理装置およびビデオ信号処理方法、ビデオ信号符号化装置およびビデオ信号符号化方法、並びにプログラム
US8155207B2 (en) 2008-01-09 2012-04-10 Cisco Technology, Inc. Processing and managing pictures at the concatenation of two video streams
US20080115175A1 (en) * 2006-11-13 2008-05-15 Rodriguez Arturo A System and method for signaling characteristics of pictures' interdependencies
US20090100482A1 (en) * 2007-10-16 2009-04-16 Rodriguez Arturo A Conveyance of Concatenation Properties and Picture Orderness in a Video Stream
US8873932B2 (en) * 2007-12-11 2014-10-28 Cisco Technology, Inc. Inferential processing to ascertain plural levels of picture interdependencies
US8416859B2 (en) * 2006-11-13 2013-04-09 Cisco Technology, Inc. Signalling and extraction in compressed video of pictures belonging to interdependency tiers
US8875199B2 (en) 2006-11-13 2014-10-28 Cisco Technology, Inc. Indicating picture usefulness for playback optimization
US20080253449A1 (en) * 2007-04-13 2008-10-16 Yoji Shimizu Information apparatus and method
US8958486B2 (en) * 2007-07-31 2015-02-17 Cisco Technology, Inc. Simultaneous processing of media and redundancy streams for mitigating impairments
US8804845B2 (en) * 2007-07-31 2014-08-12 Cisco Technology, Inc. Non-enhancing media redundancy coding for mitigating transmission impairments
JP2009077105A (ja) * 2007-09-20 2009-04-09 Sony Corp 編集装置および編集方法、プログラム、並びに記録媒体
US8432804B2 (en) * 2007-11-29 2013-04-30 Hewlett-Packard Development Company, L.P. Transmitting video streams
US8416858B2 (en) * 2008-02-29 2013-04-09 Cisco Technology, Inc. Signalling picture encoding schemes and associated picture properties
JP5050159B2 (ja) * 2008-03-05 2012-10-17 株式会社メガチップス エンコーダ
US8886022B2 (en) * 2008-06-12 2014-11-11 Cisco Technology, Inc. Picture interdependencies signals in context of MMCO to assist stream manipulation
US8699578B2 (en) * 2008-06-17 2014-04-15 Cisco Technology, Inc. Methods and systems for processing multi-latticed video streams
US8971402B2 (en) 2008-06-17 2015-03-03 Cisco Technology, Inc. Processing of impaired and incomplete multi-latticed video streams
US8705631B2 (en) * 2008-06-17 2014-04-22 Cisco Technology, Inc. Time-shifted transport of multi-latticed video for resiliency from burst-error effects
CN102396221B (zh) * 2008-06-25 2015-03-25 思科技术公司 阻止特技模式操作的支持
WO2010021665A1 (en) * 2008-08-20 2010-02-25 Thomson Licensing Hypothetical reference decoder
US8761266B2 (en) 2008-11-12 2014-06-24 Cisco Technology, Inc. Processing latticed and non-latticed pictures of a video program
US8326131B2 (en) * 2009-02-20 2012-12-04 Cisco Technology, Inc. Signalling of decodable sub-sequences
US8782261B1 (en) 2009-04-03 2014-07-15 Cisco Technology, Inc. System and method for authorization of segment boundary notifications
US8949883B2 (en) 2009-05-12 2015-02-03 Cisco Technology, Inc. Signalling buffer characteristics for splicing operations of video streams
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
US20110222837A1 (en) * 2010-03-11 2011-09-15 Cisco Technology, Inc. Management of picture referencing in video streams for plural playback modes
CN102271255B (zh) * 2011-08-09 2013-01-16 清华大学 双拼立体视频编码的运动估计方法和装置
CN102497554B (zh) * 2011-12-16 2014-04-16 杭州士兰微电子股份有限公司 章节到帧的划分方法
JP5891975B2 (ja) 2012-07-02 2016-03-23 富士通株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法および動画像復号方法
US10264272B2 (en) * 2013-10-15 2019-04-16 Qualcomm Incorporated Device and method for scalable coding of video information
US9530451B2 (en) * 2013-11-27 2016-12-27 Adobe Systems Incorporated Reducing network bandwidth usage in a distributed video editing system
GB2525590A (en) * 2014-04-23 2015-11-04 Starfish Technologies Ltd Digital media splicing system and method
CN104091607B (zh) * 2014-06-13 2017-04-12 北京奇艺世纪科技有限公司 一种基于ios设备的视频编辑方法及装置
EP3267692A4 (en) * 2015-03-04 2018-12-05 Sony Corporation Transmission device, transmission method, receiving device, and receiving method
JP2016201774A (ja) * 2015-04-14 2016-12-01 株式会社日立国際電気 ビデオサーバーシステムおよび画像連結方法
JP6695739B2 (ja) * 2016-05-26 2020-05-20 ソニーセミコンダクタソリューションズ株式会社 処理装置、画像センサ、およびシステム

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5534944A (en) * 1994-07-15 1996-07-09 Matsushita Electric Corporation Of America Method of splicing MPEG encoded video
EP0734159B1 (en) 1994-08-12 2007-10-24 Sony Corporation Video signal editing device
JP3309656B2 (ja) 1995-08-18 2002-07-29 ソニー株式会社 画像処理装置及び画像処理方法
TW332293B (en) * 1996-04-23 1998-05-21 Matsushita Electric Ind Co Ltd Editing control apparatus and editing control method
US6137834A (en) * 1996-05-29 2000-10-24 Sarnoff Corporation Method and apparatus for splicing compressed information streams
JP4416845B2 (ja) 1996-09-30 2010-02-17 ソニー株式会社 符号化装置及びその方法、および、記録装置及びその方法
EP0923243B1 (en) 1997-07-25 2010-09-15 Sony Corporation Editing device, editing method, splicing device, splicing method, encoding device, and encoding method
WO1999018720A1 (en) 1997-10-03 1999-04-15 Sony Corporation Encoded stream splicing device and method, and an encoded stream generating device and method
US6301428B1 (en) * 1997-12-09 2001-10-09 Lsi Logic Corporation Compressed video editor with transition buffer matcher
JP3305999B2 (ja) 1997-12-26 2002-07-24 日本ビクター株式会社 画像圧縮ストリーム編集装置及びその方法
EP0982726A4 (en) * 1998-01-19 2003-06-04 Sony Corp CUTTING SYSTEM, CUTTING CONTROL DEVICE AND CUTTING METHOD
US6414998B1 (en) * 1998-01-27 2002-07-02 Sony Corporation Method and apparatus for inserting an image material
JPH11289541A (ja) 1998-02-06 1999-10-19 Sony Corp 動画像符号化方法、動画像符号化装置及び記録媒体
CA2265089C (en) * 1998-03-10 2007-07-10 Sony Corporation Transcoding system using encoding history information
JPH11341435A (ja) 1998-05-22 1999-12-10 Sony Corp 編集方法および編集装置
CN100393128C (zh) * 1999-02-05 2008-06-04 索尼公司 编码设备和方法、解码设备和方法以及译码***和方法
GB9908809D0 (en) 1999-04-16 1999-06-09 Sony Uk Ltd Signal processor
JP4487374B2 (ja) 1999-06-01 2010-06-23 ソニー株式会社 符号化装置及び符号化方法並びに多重化装置及び多重化方法
GB2353653B (en) * 1999-08-26 2003-12-31 Sony Uk Ltd Signal processor
GB2353655B (en) 1999-08-26 2003-07-23 Sony Uk Ltd Signal processor
JP3748234B2 (ja) 2001-05-30 2006-02-22 日本ビクター株式会社 Mpegデータ記録方法
JP2003052040A (ja) 2001-05-30 2003-02-21 Victor Co Of Japan Ltd Mpegデータ再生装置
JP4715060B2 (ja) 2001-08-20 2011-07-06 阪神化成工業株式会社 合成樹脂製容器
US7340527B2 (en) * 2002-05-09 2008-03-04 Matsushita Electric Industrial Co., Ltd. Content distribution system that distributes line of stream data generated by splicing plurality of pieces of stream data
JP2006054530A (ja) 2004-08-10 2006-02-23 Victor Co Of Japan Ltd Mpeg画像データ記録装置及びmpeg画像データ記録方法
JP4174728B2 (ja) 2004-08-25 2008-11-05 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US8295347B2 (en) 2004-08-25 2012-10-23 Sony Corporation Information processing apparatus and information processing method, recording medium, and program
JP4333522B2 (ja) 2004-08-25 2009-09-16 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4221667B2 (ja) 2004-08-25 2009-02-12 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US7643513B2 (en) * 2005-11-30 2010-01-05 Broadcom Corporation Method and system for audio and video transport

Also Published As

Publication number Publication date
CN101141642B (zh) 2011-01-19
CN101141642A (zh) 2008-03-12
JP2008066847A (ja) 2008-03-21
US20080056383A1 (en) 2008-03-06
US8817887B2 (en) 2014-08-26

Similar Documents

Publication Publication Date Title
JP4221676B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4207072B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4791129B2 (ja) 画像符号化装置、画像符号化方法及び画像編集装置
US8798162B2 (en) Encoding method, decoding method, encoder, and decoder
US7539347B2 (en) Information processing apparatus and information processing method, recording medium, and program
JP4743119B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JPH11196376A (ja) 画像圧縮ストリーム編集装置及びその方法
JP4492484B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4342139B2 (ja) 信号処理装置
JP4788250B2 (ja) 動画像信号の符号化装置、動画像信号の符号化方法およびコンピュータ読み取り可能な記録媒体
JP5046907B2 (ja) 記録装置、その制御方法、プログラム
JP4399744B2 (ja) プログラム、情報処理装置、情報処理方法、並びに、記録媒体
JP2008258858A (ja) 動画像符号化装置
JP2008066846A (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP2007028212A (ja) 再生装置及び再生方法
JP4333522B2 (ja) 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP3897783B2 (ja) 画像処理装置及びその制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4788251B2 (ja) 動画像信号の符号化装置
JP2008066845A (ja) 情報処理装置および方法、記録媒体、並びにプログラム
JP2009038704A (ja) 撮影データ記録装置
JP2008262609A (ja) 情報処理装置および情報処理方法、プログラム格納媒体、並びに、プログラム
JP2008066852A (ja) 情報処理装置および方法、記録媒体、並びにプログラム
JP2006121415A (ja) 動画符号化装置
JP2007074480A (ja) 情報処理装置および方法、並びにプログラム
JP2007074470A (ja) 記録装置および方法、並びにプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080729

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080926

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

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

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

Free format text: PAYMENT UNTIL: 20111128

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121128

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131128

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees