JP2014220818A - デジタルビデオレコーダのための動画像編集および再フォーマット - Google Patents

デジタルビデオレコーダのための動画像編集および再フォーマット Download PDF

Info

Publication number
JP2014220818A
JP2014220818A JP2014114345A JP2014114345A JP2014220818A JP 2014220818 A JP2014220818 A JP 2014220818A JP 2014114345 A JP2014114345 A JP 2014114345A JP 2014114345 A JP2014114345 A JP 2014114345A JP 2014220818 A JP2014220818 A JP 2014220818A
Authority
JP
Japan
Prior art keywords
video
moving image
encoding
format
clip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014114345A
Other languages
English (en)
Other versions
JP5883474B2 (ja
Inventor
ポール タウナー,
Towner Paul
ポール タウナー,
ケネディー,コートニー
Kennedy Courtney
コートニー ケネディー,
ランディ ウビロス,
Ubillos Randy
ランディ ウビロス,
グレッグ マリンス,
Mullins Greg
グレッグ マリンス,
グレッグ ウォリス,
wallace Greg
グレッグ ウォリス,
ピーター チョウ,
Peter Chou
ピーター チョウ,
シン トン,
Xin Tong
シン トン,
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.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/636,699 external-priority patent/US8554061B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2014220818A publication Critical patent/JP2014220818A/ja
Application granted granted Critical
Publication of JP5883474B2 publication Critical patent/JP5883474B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0117Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving conversion of the spatial resolution of the incoming video signal
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • 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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/917Television signal processing therefor for bandwidth reduction
    • 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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Studio Devices (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】動画像クリップを撮影するための動画像録画デバイスを提供する。
【解決手段】動画像録画デバイスは、動画像クリップを符号化するための複数の異なる符号化スキームから、非時間的に圧縮される符号化スキームの選択を受け取る。異なる符号化スキームには、少なくとも1つの時間的に圧縮される符号化スキームと、少なくとも選択された非時間的に圧縮される符号化スキームとが含まれる。動画像録画デバイスは、動画像クリップを複数のフレームとして撮影する。動画像録画デバイスは、各フレームを複数のスライスとして非時間的に符号化する。特定のフレームのスライスは、動画像復号デバイスの複数の処理ユニットによる復号を目的としている。動画像録画デバイスは、動画像クリップを記憶装置の中に保存する。
【選択図】図15

Description

本発明は、動画像録画に関する。詳細には、本発明は、デジタルビデオレコーダのための動画像フォーマットに関する。
デジタルビデオレコーダは、コンピュータに転送するデジタル動画像を録画するのに広く利用されている。コンピュータに取り込まれた後、ユーザはデジタル動画像を編集したり、充実させたり、共有したりしてもよい。しかし、今日のデジタルビデオレコーダは、時間的圧縮を利用する符号化の形を用いてデジタル動画像を圧縮する。すなわち、圧縮された動画像は予測(P)フレームおよび双方向(B)フレームを含んでおり、それらは実際の画像ではなく、画像として符号化されている指標(I)フレームとの差を表す数学的データでしかない。
時間的圧縮は、カメラ上のデジタル動画像を圧縮してそのファイルサイズを小型化することを可能にするが、動画像を取り扱うために自分のコンピュータに動画像を転送したいユーザには多くの問題をもたらす。PフレームおよびBフレームは、他のフレームへの参照によって定義されるだけなので、ユーザがそれらを編集するためには、それらはトランスコードされなければならない。このトランスコーディングは一般に、デジタル動画像をカメラからインポートした時点で行われる。
図1は、ビデオカメラ105とコンピュータ110とを備えた先行技術のシステムを示す図である。ビデオカメラ105は、サイズXを有する動画像ファイル115を撮影して保存する。この動画像は、時間的圧縮を用いて符号化される。カメラ105からコンピュータ110への転送の時点で、動画像は、(時間的圧縮を除去するために)トランスコードされ、そして保存されなければならない。結果として生じるファイル120は、3X乃至10Xのサイズとなり、従って、カメラ上の最初のファイルよりはるかに大きい。これらの膨張により、ファイルのサイズがほとんどのユーザにとって許容できない程度に大きくなるため、そんなに多くの動画像を取り込めない。
さらに、トランスコーディングは、時間集約的および演算集約的なプロセスである。30分の動画像を転送するのに、トランスコーディングが原因で90分もかかる可能性がある。従って、品質を犠牲にしたり過度に大きなファイルサイズを作り出したりすることなく、時間的に圧縮されていない動画像を録画する機能を持つビデオカメラの必要性がある。
本発明の一部の実施形態は、時間的に圧縮されていないフォーマットでデジタル動画像を撮影して保存する動画像録画デバイス(例えばビデオカメラ)を提供する。撮影されたデジタル動画像は、所望の動画像品質を維持しながら、所望の特定の解像度および/またはビットレートで保存される。
デジタル動画像が、(例えば編集や共有などのため)録画デバイスからコンピュータへエクスポートされる場合、動画像は、トランスコーディングを必要とせず迅速に転送される。一部の実施形態では、トランスコーディングは、いかなる時間的圧縮であろうとそれを除去するために、インポートした時点で動画像を復号することと、次いで、時間的圧縮をせずに動画像を再符号化することとを含んでいる。従って、動画像がトランスコードされる必要がない場合、デジタル動画像は、その当初のフォーマットでコンピュータ上に保存される。
一部の実施形態では、動画像録画デバイスが、時間的に圧縮された動画像を保存するか、あるいは、時間的に圧縮されていない動画像を保存するかの選択肢をユーザに提供する。時間的に圧縮された動画像は、少なくとも部分的に1つ以上の他の動画像を参照することによって符号化された、フレーム間で符号化された動画像(例えばフレーム)を含んでいる。時間的に圧縮されていない動画像は、いかなる他の動画像をも参照せずに符号化された、フレーム内で符号化された動画像(例えばフレーム)だけを含んでいる。
一部の実施形態は、管理可能なビットレートでの非時間的に圧縮されたエンハンスト解像度および/または高解像度フォーマットを含んでいる。各種の動画像フォーマットが、デジタルビデオレコーダのユーザインタフェースを通して提示される。一部の実施形態では、各種の異なる動画像フォーマットはすべて、同じ符号化標準を用いる。すなわち、時間的に圧縮されたフォーマットと非時間的に圧縮されたフォーマットとは、同じ符号化標準を用いる。
一部の実施形態は、到来する動画像のフォーマットを認識する機能を備えたメディア編集アプリケーションを提供する。(例えば上記のような動画像録画デバイスからの)到来するデジタル動画像が時間的に圧縮されている場合、メディア編集アプリケーションは、デジタル動画像をトランスコードする。デジタル動画像が時間的に圧縮されていない場合、メディア編集アプリケーションは、トランスコーディングや動画像のサイズの拡大をすることなく、動画像を保存する。従って、非時間的に圧縮されたデジタル動画像は、トランスコーディングがないのだから、非常に迅速にインポートされることができる。
本発明の新規の特徴は、添付の請求項に記述されている。しかし、説明の目的で、本発明の複数の実施形態を、以下の図面の中で記述する。
ビデオカメラとコンピュータとを備えた先行技術のシステムを示す図である。 デジタルビデオカメラとコンピュータとを含む一部の実施形態のシステムを示す図である。 時間的圧縮を用いて符号化されたデジタル動画像のシーケンスを示す図である。 時間的圧縮を用いることなく符号化されたデジタル動画像のシーケンスを示す図である。 撮影される動画像についての動画像フォーマットの選択肢をユーザが選択できるようにする、一部の実施形態のビデオカメラのユーザインタフェースを示す図である。 撮影される動画像についてのビットレート設定をユーザが指定できるようにする、一部の実施形態のビデオカメラのユーザインタフェースを示す図である。 デジタル動画像を撮影し、符号化し、保存するための一部の実施形態のデジタルビデオカメラのソフトウェアアーキテクチャを示す図である。 時間的に圧縮されたかまたは非時間的に圧縮された動画像を保存する機能を有するデジタルビデオカメラ上で動画像を撮影して保存するための一部の実施形態のプロセスを概念的に示す図である。 一部の実施形態の動画像解像度幅の削減の一例を概念的に示す図である。 一部の実施形態の動画像解像度幅の増加の一例を概念的に示す図である。 一部の実施形態の動画像の符号化の間に8x8マクロブロック上で変換を行う工程を概念的に示す図である。 一部の実施形態のイントラ予測モードについて予測の方向を概念的に示す図である。 一部の実施形態のスライス毎に符号化された動画像を概念的に示す図である。 一部の実施形態のスライス毎に復号された動画像を概念的に示す図である。 動画像を非時間的に符号化するための一部の実施形態のプロセスを示す図である。 一部の実施形態の動画像録画デバイスについて異なる動画像フォーマットを定義するためのプロセスを概念的に示す図である。 図8の動画像撮影、符号化、および保存プロセスを利用する一部の実施形態のビデオカメラのブロック図である。 到来するデジタル動画像の異なるフォーマット間の識別をする能力を有する、デジタル動画像をインポートして編集するための一部の実施形態のメディア編集アプリケーションを示す図である。 デジタル動画像ソースからコンピュータへとインポートされる動画像クリップを保存するための一部の実施形態のプロセスを概念的に示す図である。 本発明の一部の実施形態が実装されるコンピュータシステムを示す図である。
以下の記述において、説明を目的として多くの詳細について述べる。しかし、当業者であれば理解するであろうが、本発明は、これらの特定の詳細を利用することなく実施されうる。例えば、一部の例は、特定の符号化モジュールを示している。当業者であれば、本発明から逸脱することなく別の符号化モジュールが可能であることを理解するであろう。
本発明の一部の実施形態は、時間的に圧縮されていないフォーマットでデジタル動画像を撮影して保存する動画像録画デバイスを提供する。撮影されたデジタル動画像は、所望の動画像品質を維持しながら、所望の特定の解像度および/またはビットレートで保存される。デジタル動画像がカメラからコンピュータへエクスポートされる時、デジタル動画像は、トランスコーディングされることなく当初のフォーマットでコンピュータ上に保存される。
図2は、デジタルビデオカメラ205とコンピュータ210とを含むシステムを示す図である。デジタルビデオカメラは、サイズYを有する動画像ファイル215を撮影して保存する。この動画像ファイル215は、時間的に圧縮されてはいない。すなわち、動画像ファイル内の各デジタル動画像(すなわちフレームまたはフィールド)は、他のデジタル動画像を参照せずに符号化されている。下記の図3および図4は、異なるフレームタイプを示す。非時間的に圧縮された動画像クリップが、ビデオカメラ205からコンピュータ210へ(例えばUSB、FireWire、または他の有線または無線接続を介して)転送される。下記のように、コンピュータ210は、動画像を編集して充実させるためのメディア編集アプリケーションを含んでいてもよい。コンピュータ210は、動画像クリップをその当初のフォーマットで動画像ファイル220として保存する。この動画像ファイル220は、カメラ上の動画像ファイル215と同じサイズYを有している。
除去されるべき時間的圧縮は存在しないため、インポートした時点でトランスコーディングが行われる必要はない。結果として、ファイルが同じサイズを有するだけではなく、転送時間も、ファイルのサイズおよびカメラ205とコンピュータ210との間の接続速度によってのみ限定されることになる。トランスコーディングを行う必要がある場合、ランダムアクセスのカメラの記憶装置(すなわちハードディスク、フラッシュメモリ等)がもたらすと想定される転送高速化への期待は、遅いトランスコーディングプロセスのせいで裏切られてしまう。
上記のように、一部の実施形態の動画像録画デバイスは、デジタル動画像を、時間的に圧縮されていないフォーマットで保存する。非時間的に圧縮された動画像は、他のデジタル動画像をまったく参照することなく符号化された、フレーム内で符号化されたデジタル動画像(例えばフレーム)だけを含んでいる。比較すると、図3は、時間的に圧縮されたデジタル動画像のシーケンス300を示す。時間的に圧縮された動画像は、少なくとも部分的に1つ以上の他の動画像を参照することによって符号化された、フレーム間で符号化されたデジタル動画像(例えばフレーム)を含んでいる。図3は、I−フレーム(他のフレームを参照することによって符号化されてはいないイントラフレーム)と、P−フレーム(前のフレームを参照することによって符号化された予測フレーム)と、B−フレーム(前後のフレームを参照することによって符号化された双方向フレーム)とを示す。
シーケンス300は、1つのI−フレームと、次いで2つのB−フレームと、次いで1つのP−フレームと、次いでさらに2つのB−フレームと等を含んでいる。I−フレーム305から15番目の全体フレームまでのシーケンスは、一部の実施形態では、画像グループ(GOP:Group of Pictures)として知られる。この場合、GOPのサイズは15である。各GOPはIフレームで始まる。
一部の実施形態では、時間的圧縮についてI−フレーム、P−フレーム、B−フレームを用いるのではなく、時間的圧縮についてI−スライス、P−スライス、B−スライスを用いる。一部の実施形態の各デジタル動画像(例えばフレーム)は、多数のマクロブロックを含んでおり、その各々は、16x16画素のアレーである。スライスとは、連続するマクロブロックのグループである。画像毎にマクロブロックをどう符号化するのかを決める代わりに、一部の実施形態では、スライス毎にこれを決める。さらに、スライス毎に符号化されている動画像を復号する場合、各スライスは、相互に依存せずに復号されてもよい。
図4は、動画像のシーケンス400が時間的に圧縮されていない場合を示す図である。代わりに、シーケンス400のすべての動画像は、他のフレームを参照せずに定義されたI−フレームである。このフォーマットはカメラ上でシーケンス300のフォーマットのようには圧縮されてはいないが、シーケンス400は、コンピュータへの転送の時点でトランスコードされる必要がなく、時間的に圧縮されたシーケンスよりはるかに容易に編集することができる。
一部の実施形態では、到来するデジタル動画像のフォーマットを認識する能力を持つメディア編集アプリケーションを提供する。メディア編集アプリケーションは、動画像が時間的に圧縮されている場合に限って、デジタル動画像のトランスコードを行う。デジタル動画像が時間的に圧縮されていない場合、メディア編集アプリケーションは、トランスコーディングや動画像のサイズの拡大を行うことなく、動画像を保存する。
I.デジタルビデオカメラ
上記のように、一部の実施形態は、時間的に圧縮されていないフォーマットでデジタル動画像を撮影して保存する動画像録画デバイス(例えばデジタルビデオカメラ)を提供する。一部の実施形態は、時間的に圧縮されている動画像を録画するのか、時間的に圧縮されていない動画像を録画するのかの選択肢をユーザに与える。この選択肢は、一部の実施形態では、ビデオカメラのユーザインタフェース上で提示される。
A.ユーザインタフェース
図5は、撮影される動画像についての動画像フォーマット選択肢をユーザが選択できるようにするビデオカメラのユーザインタフェースを示す図である。具体的には、この図は、ビデオカメラのユーザインタフェースを2つの異なる段階で示しており、すなわち、iFrame動画像フォーマット選択肢をユーザが選択する前の第1段階と、それを選択した後の第2段階とである。図示するように、ビデオカメラ500は、メニュー515を含むグラフィカルユーザインタフェース(GUI)を表示するための表示画面510を備えたユーザインタフェース505を含んでいる。グラフィカルユーザインタフェースは、すべてテキストであっても、すべて画像であっても、あるいはそれらの組み合わせてあってもよい。また、ユーザインタフェース505は、ユーザ選択可能な複数の操作部(コントロール)520および525を含んでいる。
メニュー515は、動画像フォーマット選択肢のリストを表示している。これらの選択肢には、異なる解像度の複数のiFrame(すなわち、非時間的に圧縮された)選択肢(すなわち、iFrame960x540およびiFrame1280x720)と、複数の時間的に圧縮されたフォーマットの選択肢とが含まれる。メニューの中のフォーマット選択肢の範囲は、高解像度からエンハンスト解像度まで及んでいるが、メニューは、1つ以上の選択肢を除外するか、または、他の選択肢(例えばiFrame640x480)を含んでいてもよい。一部の実施形態では、非時間的に圧縮された選択肢を1つだけ含んでいる(例えば1280x720)。
上記のように、一部の実施形態は、960x540のiFrame録画フォーマットの選択肢を提供する。この録画フォーマットは、540pの垂直解像度を有する。この解像度は、複数の理由で有利であり、その1つは、解像度は、カメラのセンサの本来の解像度に対応することが多く、720p、1080i、1080pのようなHD標準に(例えば、動画像を編集するのに用いられるコンピュータによって)容易にアップコンバートされうるということである。
ユーザが選択可能なビデオカメラ上のコントロール520および525によって、ユーザは、メニュー515をナビゲートすることができる。具体的には、コントロール520は、メニュー515を垂直にナビゲートするためのものであり、コントロール525は、メニューを水平にナビゲートするためのものである。図5に示す例では、これらのコントロールは、ビデオカメラ上の物理的コントロールとして提供されている。しかし、一部の実施形態では、そのようなナビゲーションコントロールは、表示画面上に表示されるグラフィカルユーザインタフェースの一部として提供されてもよい。あるいは、または、それと共に、ビデオカメラ500がタッチスクリーンを備えていて、ユーザは、コントロール520および525のような物理的コントロールを用いる必要がなく、タッチスクリーンを用いて動画像フォーマット選択肢を直接選択できるようになっていてもよい。
以下、図5に示す2つの異なる段階について、ユーザインタフェースの動作を説明しよう。第1段階では、表示画面510は、メニュー515を表示する。現時点で選択されている録画フォーマットは、時間的に圧縮された選択肢(1080p)である。ビデオカメラのユーザは、コントロール520および525を通してメニュー515と対話する。詳細には、ユーザは、選択された選択肢をメニューの1項目分だけ上方に動かすためにコントロール520の一番上のコントロールを選択して、動画像フォーマット選択肢を、時間的に圧縮されたフォーマットからiFrameフォーマットへと変更する。
第2段階で示すように、ユーザがコントロール520の一番上のコントロールを選択すると、メニュー515は、iFrameフォーマット選択肢(すなわち、iFrame960x540)を強調表示する。この強調表示は、iFrameフォーマット選択肢を選択するという視覚的指標をユーザに与える。ユーザは、iFrameフォーマット選択肢を選択したのだから、その後で撮影される動画像クリップは、指定された解像度で、時間的圧縮をせずに録画されるであろう。
前の例では、メニュー515は、撮影された動画像フレームのシーケンスを多様な符号化スキームと解像度とを用いて符号化するための多様な動画像フォーマット選択肢のリストを表示する。一部の実施形態では、メニュー515は、他の符号化フォーマットを指定するための1つ以上の他の選択肢を表示する。図6は、ユーザが解像度と符号化スキームとだけでなくビットレートも指定できるようにするユーザインタフェース505を示す図である。一部の実施形態では、動画像のためのビットレートは、再生時間毎の動画像ファイルのサイズである。一般に、解像度が等しいままならば、高速のビットレートの方が、高品質の動画像をもたらすであろう。しかし、高速のビットレートは、ファイルの拡大をも意味し、それは作業するユーザにとって厄介でありうる。
この図は、前の図と同様であるが、メニュー515は、同じ解像度だが異なるビットレート設定を持つ複数のiFrameフォーマット選択肢を表示している。具体的には、メニュー515は、2つのiFrame解像度(すなわち、iFrame960x540、iFrame1280x720)の各々について2つの異なるビットレート設定(すなわち、24Mbps、20Mbps、16Mbpsのうちの2つ)を表示している。図示するように、iFrame解像度を変更することなく、ユーザはコントロール520の一番下のコントロールを選択して、ビットレート設定を24Mbpsから16Mbpsへと変更する。一部の実施形態では、カメラがそこに最終的に動画像を転送するメディア編集アプリケーションは、最大指定ビットレート(例えば24Mbps)を有する。一部の実施形態では、ビデオカメラのメニュー515によって、ユーザが他の動画像符号化選択肢を選択できてもよい。例えば、メニュー515は、選択可能なフレームレート選択肢(例えば毎秒25または30フレーム)を表示してもよい。
B.アーキテクチャ
図7は、デジタル動画像を撮影し、符号化し、保存するためのデジタルビデオカメラ700のソフトウェアアーキテクチャを示す図である。デジタルビデオカメラ700は、ユーザインタフェース705と、動画像圧縮制御器710と、離散コサイン変換(DCT)ユニット715と、量子化ユニット720と、エントロピー符号化器725と、逆量子化ユニット730と、逆離散コサイン変換(IDCT)ユニット735と、動き補償、動き推定、フレーム内予測ユニット740と、加算器745と、画像撮影ユニット750とを含んでいる。
また、カメラは、圧縮設定のための記憶装置755と、動画像記憶装置760とを含んでいる。一部の実施形態では、2つの記憶装置は、同じ物理的記憶装置である。他の実施形態では、2つの記憶装置は、カメラの中の別個の物理的記憶装置であるか、または、同じ物理的記憶装置の別個のパーティションである。動画像記憶装置760は、一部の実施形態ではデジタルテープである。他の実施形態では、動画像記憶装置760は、例えば磁気ディスク記憶装置(例えばハードディスク)または固体メモリ(例えばフラッシュメモリ)のような、不揮発性の記憶装置である。一部の実施形態では、動画像記憶装置760は、フラッシュメモリに似たランダムアクセス記憶装置である。フラッシュメモリの例として、特に、Secure Digital(SD)、Compact Flash(登録商標)(CF)、Memory Stick(MS)等がある。記憶装置760がランダムアクセス記憶装置である場合、ユーザ(例えば、ビデオカメラが接続されているコンピュータのユーザ)は、第2の動画像クリップが第1の動画像クリップの後に録画されていても、第1の動画像クリップの前に第2の動画像クリップにアクセスすることを選択することができる。例えば、ファイルアロケーションテーブル(FAT)、階層型ファイルシステム(HFS)、拡張ファイルアロケーションテーブル(eXFAT)のような多様なファイルシステム、およびその他の異なるタイプのファイルシステムを用いて、データ(例えば撮影されたデジタル動画像)を保存するように構成されてもよい。
カメラ700のユーザインタフェース705は、前述の各図の中にあるディスプレイ510に示すようなグラフィカルユーザインタフェースだけでなく、同じく前述の各図の中に示す例えばコントロール520および525のようなユーザ入力コントロールも含んでいる。グラフィカルユーザインタフェースは、テキストだけのインタフェースであってもよいし、画像も同様に含んでいてもよい。
上記のように、ユーザは、ユーザインタフェース705を通してフォーマット選択情報を入力する。圧縮タイプ(時間的または非時間的)、解像度、および/またはビットレートを選択することによって、ユーザは、その後で録画される動画像のフォーマットを決める。このフォーマット選択情報765は、ユーザインタフェースから動画像圧縮制御器710へと転送される。
動画像圧縮制御器710は、指定のフォーマットについてどのようにして符号化するかを各種の圧縮および符号化モジュールに命令する。動画像圧縮制御器は、選択されたフォーマットに基づいて記憶装置755から圧縮設定を抽出する。次いで、これらの圧縮設定は、動画像を指定のフォーマットで適切に符号化できるように、各種の圧縮および符号化モジュールへと転送される。図7は、動画像圧縮制御器が、DCTユニット715と、量子化ユニット720と、エントロピー符号化器725と、動き補償、動き推定、フレーム内予測ユニット740とに命令することを示す。また、一部の実施形態では、DCTユニット715および量子化ユニット720に与えられた情報と同様の情報が、逆量子化ユニット730およびIDCTユニット735にも渡される。
画像撮影ユニット750は動画像を撮影する。動画像撮影プロセスに関する詳細については、以下の図15を参照されたい。一部の実施形態では、動画像は毎秒25または30フレームのレートで撮影される。これは一部の実施形態ではユーザの選択肢であり、他の実施形態では、変更不可能な設定である。撮影された各フレームは本質的に、ビデオカメラによって撮影された画像である。撮影されたフレームは、フレームを符号化することができるように、イメージャから圧縮および符号化モジュール715−745へと送られる。
DCTユニット715は、加算器745で行われた加算または減算の結果として生じる画像データのブロックについて離散コサイン変換を行う。離散コサイン変換操作は、画像データのブロックの中に存在する一部の空間的冗長性を除去することによって圧縮を実現する。操作は、画像データのブロックをDCT係数の二次元アレーに変換し、そこでは、ブロックのエネルギーの大半は、典型的には、少数の低域周波数の係数に集中される。
量子化ユニット720は、DCTユニット715によって生成されたDCT係数に量子化を適用する。量子化操作は、さまざまな値を単一の量子値へと圧縮することによってDCT係数の圧縮を実現する。量子化は品質低下の原因となるため、一部の実施形態では、DCT係数の所定の周波数に割り当てる量子化ステップを小さくすることによって画像品質の低下を最小化するために、量子行列を用いる。
エントロピー符号化器725は、入力データを可変長コードに変換する。一部の実施形態では、入力データは量子化ユニット720から直接入ってくる。その他の実施形態では、量子化ユニット720とエントロピー符号化器725との間で、例えばジグザグ走査やランレングス符号化のような中間操作が行われる。一部の実施形態のエントロピー符号化器725は、より短いコード語を、発生確率が低い値ではなく発生確率が高い値に割り当てることによって(例えば、文脈に基づく適応可変長符号化)、圧縮を実現する。一部の実施形態は、エントロピー符号化がシンボル毎に行われる、例えばHuffmannまたはUVLCのような符号化スキームを用いる。その他の実施形態は、例えば、データブロック全体が1つの数として符号化される算術符号化(例えば、文脈に基づく適応型バイナリ算術符号化)のような符号化スキームを用いる。
一部の実施形態は、動画像のさらなる圧縮を実現するために空間的または時間的予測を行う。これを円滑化するため、一部の実施形態は動画像復号パスを含んでおり、従って、符号化器は、復号器が用いるのと同じ復号された参照フレームを、予測を行う目的で使用できる。復号パスは、逆量子化ユニット730および逆DCTユニット735を含んでおり、これらのユニットは、上記のように、量子化ユニット720およびDCTユニット715の逆の操作を行う。
動き推定、動き補償、フレーム内予測ユニット740は、動き推定、動き補償、およびフレーム内予測操作を行う。動き補償操作は復号パスの一部であり、動画像を再構築して復号するために、時間的予測情報を用いて逆DCTユニット735の出力を補償する。動き推定操作は符号化パスの一部であり、時間的予測で用いる動きベクトルを作成するため、合致する画素ブロックを求めて、他の復号されたフレームを探索する。フレーム内予測は、符号化コンポーネントと復号コンポーネントとを有する。フレーム内予測操作の復号コンポーネントは、空間的予測情報を用いて、動画像を再構築して復号する。フレーム内予測操作の符号化コンポーネントは、空間的予測で用いるための合致する画素ブロックを求めて、現時点での復号されたフレームを探索する。一部の実施形態では、ユニット740は、時間的圧縮を行わないように命令された場合、空間的フレーム内予測だけを行うであろう。
加算器745は、画像撮影ユニット750からの画像と、動き推定、動き補償、フレーム内予測ユニット740の出力との間の差を演算する。次いで、結果として生じる差(または和)が、上記のように符号化されるためにDCTユニット715へ送られる。
DCTユニット、量子化ユニット、エントロピー符号化ユニット715−725の各々の操作は、多くの異なる変数によって決まる。これらの変数の各々は、指定の動画像フォーマットに依存してさまざまに設定されてもよい。従って、DCT操作は、一部の実施形態では、1つの特定の設定によってではなく、多数の異なる選択によって制御される。一部の実施形態では、これらは、特定の解像度およびビットレートにおける動画像品質を最大化するように意図された、カメラメーカによる設計上の選択である。同様に、量子化器およびエントロピー符号化器の操作も、一部の実施形態では、特定の解像度およびビットレートで動画像品質を最大化するように意図された、特定の各フォーマットについての設計上の選択である多数の異なる選択によって制御される。例えば、量子化器によって用いられる量子化行列は、動画像フォーマットに基づいて修正されてもよい。
動画像圧縮制御器710が、非時間的に圧縮された動画像についての設定を指定する場合、動き推定、動き補償、フレーム内予測ユニット740は、時間的圧縮の一部である動き推定および動き補償操作ではなく、フレーム内予測だけを行うように命令される。他方、動画像圧縮制御器が、時間的に圧縮された動画像についての設定を指定する場合、ユニット740は、フレーム内予測に加えて動き推定および動き補償も行う。
さらに、一部の実施形態では、動画像圧縮制御器710は、多様なモジュールに符号化変数を指定することに加えて、符号化プロセスの間にレート制御を行う。レート制御を行うため、制御器710は、各フレームの符号化の後に、目標ビットレート(すなわち、動画像フォーマット用に指定されたビットレート)に対する符号化された動画像の接近度を算出する。次いで、制御器710は、符号化されることになるフレームのサイズを調整するために直ちに圧縮変数(例えば、DCTユニット715および量子化ユニット720の変数)を調整する。一部の実施形態では、これらの変更が行われるやり方は、選択された動画像フォーマットによって指定される圧縮設定の一部である。
カメラ700の多くの特徴について、1つのモジュール(例えば動画像圧縮制御器710)によって行われているとしてここまで記述してきたが、当業者であれば、それらの機能が複数のモジュールに分割されていることもあり、1つの機能を行うのに複数のモジュールが必要となることもありうることを理解するであろう。同様に、別個のモジュールによって行われると示される諸機能が、一部の実施形態では1つのモジュールによって行われることもありうるであろう。
図8は、時間的に圧縮された動画像と非時間的に圧縮された動画像とのいずれか一方を保存する能力を有するデジタルビデオカメラ(例えばカメラ700)上で動画像を撮影して保存するための一部の実施形態のプロセス800を概念的に示す図である。プロセス800は(805で)、特定の解像度および/またはビットレートを指定する、撮影された動画像について選択された動画像フォーマットを識別することによって始まる。この動画像フォーマットは、一部の実施形態では、図5および図6に示すように、ユーザインタフェースを通してユーザによって選択される。
プロセス800は(810で)、現在撮影されている動画像クリップに対して時間的圧縮を行うかどうかを決める。この決定は、選択された動画像フォーマットに基づいて行なわれる。ユーザがiFrame録画モードを選択していた場合、時間的圧縮は行われない。他方、ユーザが別の録画モード(例えば、AVC HD 1080p)を選択していた場合、時間的圧縮が必要である。
時間的圧縮が必要な場合、プロセスは(815で)、次の撮影された動画像を受け取る。次いでプロセスは(820で)、動画像を空間的にも時間的にも圧縮して、(820で)動画像を符号化する。この操作は、一部の実施形態では、各種の符号化モジュール715−745によって行われる。次いでプロセスは(825で)、符号化された動画像をカメラの記憶装置の中に保存する。次に、プロセス800は(830で)、カメラが動画像を依然として撮影しているかどうか(すなわち、圧縮して符号化すべき動画像のフレームがまだあるかどうか)を判定する。カメラがもう動画像を撮影していない場合、プロセスは終了する。そうでない場合、プロセスは815に戻って、次の撮影された動画像を受け取る。
現在撮影されている動画像クリップについて時間的圧縮が必要ない場合、プロセスは(835で)、次の撮影された動画像を受け取る。次いでプロセスは(840で)、動画像を空間的に圧縮する。一部の実施形態では、この操作はユニット740によって行われるが、フレーム内予測だけが用いられる。動画像は時間的に圧縮されていないため、動き推定または動き補償が行われる必要はない。
次に、プロセス800は(845で)、選択されたフォーマットに従った変数を用いて動画像に対して離散コサイン変換を行う。すなわち、離散コサイン変換は、一部の実施形態では動画像圧縮制御器710によって離散コサイン変換ユニット715へ送られた変数を用いて行われる。これらは、動画像の時間的圧縮を行うことなく所望の解像度および/またはビットレートで高品質の動画像を作成するために(一部の実施形態では、カメラメーカによる設計上の選択として)選択された変数である。
次いでプロセスは(850で)、選択されたフォーマットに従った変数を用いて動画像(DCTユニットの出力)を量子化する。すなわち、量子化は、一部の実施形態では、動画像圧縮制御器710によって量子化ユニット720へと送られた変数を用いて行われる。これらは、動画像の時間的圧縮を行うことなく所望の解像度および/またはビットレートで高品質の動画像を作成するために(一部の実施形態では、カメラメーカによる設計上の選択として)選択された変数である。
次いでプロセスは(855で)、選択されたフォーマットに従った変数を用いて動画像(量子化ユニットと、例えばランレングス符号化器のような何らかの中間モジュールとの出力)をエントロピー符号化する。すなわち、エントロピー符号化は、一部の実施形態では動画像圧縮制御器710によってエントロピー符号化器725へ送られた変数を用いて行われる。これらは、動画像の時間的圧縮を行うことなく所望の解像度および/またはビットレートで高品質の動画像を作成するために(一部の実施形態では、カメラメーカによる設計上の選択として)選択された変数である。
次にプロセス800は(860で)、符号化された動画像をカメラの記憶装置の中に保存する。次にプロセス800は(865で)、カメラが動画像を依然として撮影しているかどうか(すなわち、圧縮して符号化すべき動画像のフレームがまだあるかどうか)を判定する。カメラがもう動画像を撮影していない場合、プロセスは終了する。そうでない場合、プロセスは835に戻って、次の撮影された動画像を受け取る。
C.例示的な動画像処理構成
上記のセクションは、時間的に圧縮されていないフォーマットでデジタル動画像を撮影して保存する一部の実施形態の動画像録画デバイスの態様を多数記述している。以下のセクションは、一部の実施形態の非時間的に圧縮された動画像の処理構成と、そのような構成によって行われる各種のプロセスとの態様を記述している。一部の実施形態では、特定の解像度およびビットレートでの動画像品質を最大化することと、設計上の目的の中でも特に動画像の復号時間を短縮することとが意図されるカメラメーカによる設計上の選択に基づいて、構成が決められる。
非時間的に圧縮された動画像の動画像品質を高める(またはビットレートを小さくする)ため、多様な動画像処理技術が採用されうる。そのような技術の1つは、動画像が符号化される前に、選択された解像度(例えばiFrame 1280x720)から動画像解像度の幅を削減することである。従って、例示的な構成の一部の実施形態は、動画像品質を高めるため、および/または、符号化された動画像のビットレートを削減するために、動画像解像度の幅を削減する。
図9Aは、一部の実施形態の動画像解像度の幅の削減の一例を概念的に示す図である。この例では、選択された録画の選択肢はiFrame 1280x720であると仮定する。図9Aは、スケーラ905および符号化器910によって行われる動画像処理操作の各種の段階における動画像(例えば画像925および画像910)を示す。一部の実施形態では、符号化器910は、以下に記す図15の動画像符号化器1520によって実装されうる。図示するように、1280x720の解像度(例えば画像925)を有している符号化されていない動画像が、スケーラ905へと入力される。スケーラ905は、動画像の解像度の幅を削減し(すなわち、スケーリングし)、従ってここでは動画像の解像度は(画像930について示すように)960x720となっており、そして、スケーラ905は、符号化されることになる動画像を符号化器910に出力する。一部の実施形態では、スケーラ905が動画像の解像度の幅を削減する時、動画像の縦横比が維持されるように、画素も横に引き伸ばす。これを図9Aに示しており、画像925の画素を正方形に、画像930の画素を長方形に描いている。
例示的な構成の一部の実施形態は、復号された後で動画像の解像度の幅を増加させる。例えば、一部のそのような実施形態は、動画像の解像度の幅を、動画像が当初撮影された幅まで戻すかたちで増加させる。図9Bは、そのような実施形態の動画像解像度の幅の増加の一例を示す。図9Bは、復号器915およびスケーラ920によって行われる動画像処理操作の各種の段階での動画像(例えば画像935および画像940)を示す。一部の実施形態では、復号器915は、以下に記す図15の動画像復号器1540によって実装されてもよい。
図9Aに示す例を続けると、図9Aの符号化された動画像が(例えば、以下に記すメディア編集アプリケーション1600によって)復号されることになる場合、それらは復号器915へと送られる。動画像が復号された後、スケーラ920は、動画像が保存および/または表示される前に、動画像の解像度の幅を増加させる(すなわち、スケーリングする)。画像935によって示すように、復号された動画像は、スケーラ920がそれらを処理する前には960x720の解像度を有している。動画像は、当初1280x720の解像度で撮影されていたのだから、スケーラ920は、復号された動画像の解像度の幅を、画像940によって示すように1280x720に戻すかたちで増加させる。また、一部の実施形態では、スケーラ920が動画像の解像度の幅を増加させる時、動画像の縦横比が維持されるように、画素を横に圧縮する。図9Bは、画像935の画素を長方形に、画像940の画素を正方形に描くことによってこれを示している。
上記の例は、選択された録画解像度全体を使って撮影される(すなわち、動画像録画デバイスの画像センサが、1280x720の解像度で動画像を捕捉する)動画について述べたものである。一部の実施形態では、動画像録画デバイスは、選択された録画解像度全体を撮影するのではない。そうではなく、これらの実施形態では、選択された録画解像度より低い解像度で動画像を撮影して、動画像が復号された後で動画像解像度幅の増加を行う。例えば、上記の例を参照すると、そのような一部の実施形態は、動画像を960x720の解像度で撮影する。動画像が復号される時、動画像の解像度が、図9Bに示すように1280x720へと増加される。
図9Aおよび9Bに示す例は、1280x720の解像度で撮影された動画像を動画像が符号化される前に960x720へスケーリングし、そして、動画像が復号された後に動画像を960x720から1280x720へと戻すかたちでスケーリングすることを示しているが、動画像は、多様な実施形態によって多様なサイズにスケーリングされる。例えば、一部の実施形態では、1920x1080の解像度で動画像を撮影し、動画像を符号化する前に動画像を960x720にスケーリングし、そして、動画像が復号された後で動画像を1280x720にスケーリングしてもよい。他の実施形態では、動画像が復号された後で動画像をスケーリングしなくてもよい。
加えて、一部の実施形態は、動画像の解像度の幅をスケーリングするだけでなく、動画像の解像度の高さをスケーリングしてもよい。動画像を比例的にスケーリングする実施形態もあるし、動画像をアナモルフィックにスケーリングする実施形態もある。一部の実施形態では、(例えば動画像が動画像録画デバイス自体で再生される場合に)符号化の前または復号の後に動画像をスケーリングするかどうかと、符号化される前に動画像がどの解像度までスケーリングされるかと、復号された後に動画像がどの解像度までスケーリングされるかとを決めることは、特定の解像度およびビットレートで動画像品質を最大化することを意図された、カメラメーカによって行われる設計上の選択である。さらに、一部の実施形態は、再生用に動画像をスケーリングする際に動画像再生デバイス(例えば、コンピュータ、スマートフォン等)がこの情報を用いることができるように、その当初のスケーリング以前の解像度を示すメタデータを動画像に挿入する。
非時間的に圧縮された動画像のビットレートを削減する(あるいは、動画像品質を高める)もう1つの方法は、動画像の符号化の間に8x8マクロブロックで変換を行うことである。上記の図7に示し、かつ、関連のセクションで記述したように、画像撮影ユニット750によって撮影された画像は、画像毎に(すなわちフレーム毎に)処理される。具体的には、DCT715は、動画像の画像をフレーム毎に処理する。すなわち、DCT715は、加算器745から1つのフレーム全体についての画像データを受け取って、画像データについて離散コサイン変換を行い、それが量子化器720に出力される。
例示的構成の一部の実施形態では、DCT715は、8x8サイズのマクロブロックに対して離散コサイン変換を行うように構成される。図10は、動画像の符号化の間に8x8マクロブロックに対して変換を行う様子を概念的に示す図である。図示するように、DCT715は、8x8マクロブロックについての画像データを8x8行列の形式で加算器745から受け取って、画像データに対して離散コサイン変換を行い、そして、変換されたデータを量子化器720(図示せず)に出力する。しかし、例示的構成のその他の実施形態では、例えば16x16のように別のサイズのマクロブロックに対して離散コサイン変換を行ってもよい。
非時間的に圧縮された動画像のビットレートを削減する(または、動画像品質を高める)別の方法は、動画像を符号化する時にすべてのイントラ予測モードを行うことである。例示的構成の一部の実施形態は、従来のH.264コーデック標準を用いて動画像をイントラ予測符号化し、他方、例示的構成の別の実施形態は、イントラ予測符号化をまったく行わない。その代わりに、これらの実施形態は、イントラモード符号化のみを用いて動画像を符号化する。一部の実施形態では、イントラモード符号化は、いかなるイントラ予測モードも使用しない符号化である。
上記のように、一部の実施形態では、動画像は、各フレームが複数のマクロブロックから成る動画像フレームのシーケンスから成る。1つのマクロブロックは、典型的には、(上記の8x8マクロブロックのようなその他のサイズのマクロブロックも可能ではあるが)16x16画素アレーであり、(例えば4x4画素アレーのパーティションのような)パーティションに分割されている。H.264コーデック標準の下では、フレームのイントラ予測符号化の場合、4x4アレーを符号化するには9通りの異なる方法(すなわち、9つのイントラ4x4予測モードがある。)9つのモードとは以下のとおりである。
0.イントラ_4x4_垂直
1.イントラ_4x4_水平
2.イントラ_4x4_DC
3.イントラ_4x4_斜め_下_左
4.イントラ_4x4_斜め_下_右
5.イントラ_4x4_垂直_右
6.イントラ_4x4_水平_下
7.イントラ_4x4_垂直_左
8.イントラ_4x4_水平_上
各4x4アレーは、1つの予測モードにおいてのみ、符号化される。典型的には、結果として最も低コストになる予測モードが選択されるであろう。コストは、典型的には、ひずみに等しいか(その場合、ひずみは、当初の画素値と符号化された予測値との間の差を反映する)、または、ひずみと予測モードによって生じるビット数との加重平均に等しい(その場合、ひずみおよび/またはビット数の増加がコストを増加させる)。最も低コストである最適な予測モード(選択予測モード)を決めるために、9つの予測モードすべてについて徹底的な調査が行われてもよい。一部の実施形態は、9つの予測モードの徹底的な調査を行う代わりに、イントラ予測モードを選択するために調査の発見的方法を適用する。
図11は、上記の9つのイントラ予測モードについての予測の方向を概念的に示す図である。現行の処理された4x4アレーについて、H.264標準の下での予測モードは、現行の処理されたアレーについて符号化された予測情報の基礎となることになる別の4x4アレー(本明細書では予測アレーと呼ぶ)の(現行の処理された4x4アレーに対する)位置を示す。例えば、予測モード0(垂直)は、現行の処理されたアレーについての予測アレーが現行の処理されたアレーの上方に位置していることを示し、予測モード1(水平)は、現行の処理されたアレーについての予測アレーが現行の処理されたアレーの左側に位置していることを示す。
さらに、非時間的に圧縮された動画像の復号時間を短縮するには、いろいろな方法がある。上記のように、動画像がスライス毎に符号化されている場合、動画像の各スライスは、他のスライスに依存せずに復号されてもよい。従って、非時間的に圧縮された動画像の復号時間を短縮する1つの方法は、複数のプロセッサを有する演算デバイスが、動画像の各スライスを独立的かつ同時に復号することができるように、動画像をスライス毎に符号化することである。
図12Aは、一部の実施形態のスライス毎に符号化された動画像を概念的に示す図である。図示するように、この図は、符号化器1205によって処理されていない動画像1200を示している。一部の実施形態では、符号化器1205は、以下に記す図15の動画像符号化器1520によって実装されうる。この例では、符号化器1205は、動画像を4つのスライスに分割し、動画像をスライス毎に符号化するように構成されている。画像1210は、4つのスライスに分割された動画像を概念的に示す。図示するように、画像1210は、4つのセクション1215−1230に分割されている。しかし、セクション1215−1230が分割されるやり方は、例示だけを目的としている。符号化器1205の他の実施形態では、画像1210が、いかなる数のセクションに分割され、また、いかなる数の多様な形状およびサイズに分割されてもよい。
スライス毎に符号化された動画像の各スライスは、独立して復号されうるのだから、複数のプロセッサを持つ演算デバイス(例えば、コンピュータ、スマートフォン等)は、複数のスライスを同時に復号することができる。図12Bは、1つのそのような演算デバイスを概念的に示す図である。この図は、処理システム1240と復号制御器1290とを含む復号ハードウェア1235を示す。一部の実施形態では、復号ハードウェア1235は、以下に記す図15の動画像復号器1540によって実装されうる。
処理システム1240は、4つの処理ユニット1245−1260(プロセッサ、コア、処理コア等)を含んでいる。一部の実施形態では、処理ユニット1245−1260は、単一のダイス上のコアとして実装され、他方、その他の実施形態では、処理ユニット1245−1260は、単一のパッケージの中のチップとして実装される。別の実施形態では、処理ユニット1245−1260は、単一のシステムの中の複数のパッケージとして実装される。一部の実施形態の復号制御器1290は、動画像のスライスを復号の目的で処理ユニット1245−1260に割り振るかまたは割り当てることに責任を持つ。従って、復号ハードウェア1240が、動画像フレームはスライス毎に符号化されていることを識別し、かつ、動画像フレームの各スライスを識別した場合、復号制御器1290は、識別された各スライスを復号の目的で1つ以上の処理ユニット1245−1260に割り振るかまたは割り当てる。一部の実施形態では、復号制御器1290は、1つ以上の処理ユニット1245−1260によって実装されてもよく、他方、その他の実施形態では、復号制御器1290は、別個のハードウェアコンポーネントによって実装されてもよい。
図12Aに示す例を続けるが、4つのスライスに分割されてスライス毎に符号化された動画像は、復号の目的で復号ハードウェア1235へ送られる。各動画像の各スライスは識別され、復号の目的で処理システム1240の処理ユニットに割り当てられる。図示するように、動画像1265は、4つのスライス1270−1285を含んでいる。復号制御器1290は、スライス1270を処理ユニット1245に、スライス1275を処理ユニット1250に、スライス1280を処理ユニット1255に、スライス1285を処理ユニット1260に割り当てる。各スライスは、他に依存せずに復号することができるため、処理システム1240の異なる処理ユニットをスライス1270−1285の各々に割り当てることによって、動画像1265のスライス1270−1285を、独立してかつ同時に復号することができる。従って、一部の実施形態では、この復号技法の結果として、復号時間が減少する。
図12Bでは、動画像内の各スライスは、処理システム1240の単一のプロセッサによって同時にかつ独立して復号される。しかし、別の実施形態では、動画像のスライスを復号するために別の数のプロセッサを割り振るかまたは割り当ててもよい。例えば、一部の実施形態は、動画像の各スライスを復号するために処理システム1240の2つの処理ユニットを割り当ててもよい。従って、動画像のうちで多くても2つのスライスが、図示した処理システム1240によって所与の時刻に同時に復号されうる。その他の実施形態は、処理システム1240のすべての処理ユニット1245−1260を、動画像の各スライスを復号するために割り振ってもよい。そのような実施形態では、一時に1つのスライスだけが復号されうる。動画像が分割されるスライスの数とスライスの形状およびサイズとを決めることは、動画像の復号時間を短縮することを意図してカメラメーカによって行われる設計上の選択である。
図13は、動画像を非時間的に符号化するための例示的構成の一部の実施形態のプロセス1300を示す図である。一部の実施形態では、上記の、動き推定、動き補償、フレーム内予測ユニット740が、プロセス1300の少なくとも一部を行う。一部の実施形態では、プロセス1300は、以下に記す動画像符号化器1520によって行われてもよい。
動画像の中の1つの動画像について、プロセスは、(1305で)動画像の解像度の幅を削減することによって開始される。操作1305は、図9Aを参照することによって上述したように行われてもよい。次にプロセス1300は、図12Aを参照することによって上記で論じたように、(1310で)動画像を複数のスライスに分割する。次いでプロセス1300は、(1315で)スライスの1つの中のマクロブロックを選択する。その後、プロセス1300は(1320で)、選択されたマクロブロックについてイントラ予測モードを選択し、選択された予測モードを(1325で)実行する。次いでプロセス1300は(1330で)、上記のように選択されたイントラ予測モードについてのコストを算出する。
次に、プロセスは(1335で)、未選択のイントラ予測モードが残っていないかどうかを判定する。未選択のイントラ予測モードが残っている場合、プロセスは操作1320に戻って、他の未選択のイントラ予測モードの実行を継続する。未選択のイントラ予測モードが残っていない場合、プロセス1300は(1340で)、算出されたコストが最も低いイントラ予測モードを選択する。
1345で、プロセス1300は、選択されたイントラ予測モードが十分に良好かどうかを判定する。一部の実施形態では、選択されたイントラ予測モードを用いたマクロブロックの符号化のオーバヘッドコストが、イントラモードを用いたマクロブロックの符号化のコストより少ない場合に、選択されたイントラ予測モードは十分に良好である。選択されたイントラ予測モードを用いた符号化のコストには、イントラモードに含まれていないオーバヘッドコストが含まれている。一部の実施形態では、イントラモードを用いたマクロブロックの符号化は、いかなるイントラ予測モードをも使用しないマクロブロックの符号化である。
プロセス1300が、選択されたイントラ予測モードは十分に良好とはいえないと判定した場合、プロセス300は(1350で)、マクロブロック用の符号化モードとしてイントラモードを選択する。しかし、プロセス1300が、選択されたイントラ予測は十分に良好であると判定した場合、プロセス1300は(1355で)、選択されたイントラ予測モードをマクロブロック用の符号化モードとして選択する。マクロブロック用の符号化モードを判定した後、プロセス1300は(1360で)、図10を参照することによって上述したようにマクロブロックに対して8x8変換を行う。
最後に、プロセスは(1365で)、スライス内に未選択のマクロブロックが残っているかどうかを判定する。スライス内に未選択のマクロブロックが残っている場合、プロセスは、操作1315に戻って、スライス内の別のマクロブロックを処理する。従って、プロセス1300は、スライス内にマクロブロックが残っていないようになるまで操作1315−1360を繰り返し、その後、プロセスは終了する。プロセス1300は、動画像の1つのスライスについてマクロブロックの処理を記述しているが、動作1315−1365は、動画像の中の各スライスについて行われる。
図14は、一部の実施形態の動画像録画デバイスについて異なる動画像フォーマットを定義するためのプロセスを概念的に示す図である。動画像録画デバイスは、一部の実施形態では、時間的に圧縮された動画像フォーマットと非時間的に圧縮された動画像フォーマットとを両方提供する。
プロセス1400は(1405で)、撮影された動画像についての特定の解像度および/またはビットレートを指定する動画像フォーマットを識別することによって開始される。次に、プロセス1400は(1410で)、フォーマットが時間的圧縮を指定しているかどうかを判定する。フォーマットが時間的圧縮を指定している場合、プロセス1400は(1415で)、動画像フォーマット用の時間的圧縮パラメータを定義する。一部の実施形態では、パラメータは、特定の解像度および/またはビットレートについての動画像品質を最大化することが意図されている動画像録画デバイスのメーカによって行われる設計上の選択に基づいている。フォーマットが時間的圧縮を指定していない場合、プロセスは、動作1420へと進む。
プロセス1400は、1420で、動画像フォーマットについての変換ブロックサイズを8x8であると定義する。次いでプロセス1400は(1425で)、動画像フォーマットについて複数のスライスの符号化を定義する。一部の実施形態では、スライスの数として4つのスライスが定義される。しかし、他の実施形態では、動画像フォーマットを用いて符号化される動画像について、異なる数のスライスが定義されてもよい。次に、プロセス1400は(1430で)、すべてのイントラ予測モードを検討するために動画像フォーマットを定義する。動画像フォーマットのパラメータを定義した後、プロセス1400は(1435で)、定義すべき動画像フォーマットがまだあるかどうか判定する。定義すべき動画像フォーマットがさらにある場合、プロセス1400は、操作1405に戻って、別の動画像フォーマットを定義する。プロセス1400は、定義すべき動画像フォーマットがなくなるまで動作1405−1430を繰り返し、その後、プロセスは終了する。
上記のセクションは、特定の順序で行われるプロセス1400の操作を述べている。しかし、当業者であれば理解するであろうが、プロセス1400の一部のまたは全部の操作は、いかなる順序で行われてもよいし、同時に行われてもよい。例えば、操作1420、1425、1430は同時に行われてよく、操作1425および1430は操作1420の前に行われてもよいし、あるいは、操作1420および1430が操作1425の前に行われてもよい。
D.システム
図15は、上記の動画像撮影、符号化および保存プロセスを利用する一部の実施形態のビデオカメラ1500のブロック図である。ビデオカメラ1500は、ビデオカメラ700と同じであってもよいし、1つ以上の点で異なっていてもよい。図15に示すように、ビデオカメラ1500は、光学的取入口1505と、画像感知回路部1510と、動画像符号化器1520と、記憶デバイス1530とを含んでいる。一部の実施形態では、ビデオカメラはさらに、データ転送ポート1535と、動画像復号器1540と、デジタルビューア1545と、ユーザ入力コントロール1550とを含んでいる。
外界の光学画像が、光学的取入口1505を通してビデオカメラ1500に入る。一部の実施形態では、光学的取入口1505は、開口部と、1つ以上の光学レンズとを含んでいる。レンズは、ピント合わせ、光学ズーム、または光学画像に対するその他の光学的処理を行う。
光学的取入口1505からの光学画像が、画像感知回路部1510上に投影され、画像感知回路部1510が、光学画像を電子信号に変換する。一部の実施形態では、画像感知回路部1510は、CCD(電荷結合素子)である。CCDは、二次元のキャパシタアレーを含む光能動的な領域を含んでおり、そこではキャパシタが、受光強度に比例する電荷を蓄積する。アレーが光学画像に露出されると、制御回路によって各キャパシタがその容量をその隣接キャパシタまたは電荷増幅器に転送し、それが電荷を電圧に変換する。このプロセスを繰り返すことによって、CCDは光学画像をサンプリングしてデジタル化する。
動画像符号化器1520が、デジタル化された光学画像を符号化する。一部の実施形態は、一組の命令を実行するマイクロプロセッサとして動画像符号化器1520を実装する。他の実施形態は、例えばASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレー)またはその他のタイプの回路のような1つ以上の電子デバイスを用いて動画像符号化器1520を実装する。
一部の実施形態では、動画像符号化器1520は、H.264 MPEG−4符号化器であり、これは、予測と離散コサイン変換とを用いて画像から冗長性を除去する。一部の実施形態は、空間的冗長性と時間的冗長性とをいずれも除去し、他方、他の実施形態では、空間的冗長性だけを除去するかまたは冗長性をまったく除去しない。動画像符号化器の一部の実施形態は、さらに、エントロピー符号化を用いて、符号化された画像から圧縮されたビットストリームを生成する。
記憶デバイス1530が、符号化された画像を保存する。一部の実施形態では、記憶デバイス1530は、例えば符号化された画像のようなデジタル情報を保存することができる、フラッシュメモリデバイス、ハードディスク、またはその他のタイプの不揮発性メモリデバイスである。記憶デバイスは、一部の実施形態では、取り外し可能(例えば取り外し可能フラッシュドライブ)である。次いで、保存された符号化された画像は、データ転送ポート1535を用いてビデオカメラ1500の外に転送されてもよい。
データ転送ポート1535は、ビデオカメラの記憶デバイス1530と例えばコンピュータのような外部のデバイスとの間で、画像または他のデータを転送する。一部の実施形態では、データ転送ポート1535は、例えばUSB(Universal Serial Bus)またはIEEE 1394インタフェース(Fire Wire)のような高スループットのプロトコルを用いてコンピュータと通信する。また、データ転送ポート1535は、他の何らかの有線または無線データ通信プロトコルを用いてコンピュータと通信してもよい。
ユーザ入力コントロール1550によって、ユーザは、ビデオカメラ1500の各種のコンポーネントの設定を調整することができる。一部の実施形態では、ユーザ入力コントロール1550は、ビデオカメラ上の物理的ボタンとして実装される。あるいは、またはそれに関連して、一部の実施形態はGUIを含んでおり、それによってユーザはビデオカメラの各種の設定を図式的に検索することができる。一部の実施形態では、ユーザ入力コントロール1550によって、ユーザは、動画像復号器1520の設定を調整することができる。例えば、ユーザは、H.264標準に含まれるいずれかの符号化モードを用いて画像を符号化するように動画像復号器を設定してもよいし、ユーザは、H.264標準のIフレームだけかまたはH.264標準の他の部分集合を用いるように動画像符号化器1520を設定してもよい。
一部の実施形態は、ユーザが符号化された画像を見られるように、動画像復号器1540を含んでいる。動画像復号器1540は、動画像符号化器1520によって符号化され、記憶デバイス1530上に保存された画像を復号することができる。一部の実施形態では、動画像復号器1540は、動画像符号化器1520の一部であるが、それは、動画像符号化器1520の一部の実施形態は、H.264準拠の符号化された動画像シーケンスを生成することを目的として動画像復号器を含んでいるからである。デジタルビューア1545は、動画像復号器1540によって復号された動画像を表示する。一部の実施形態では、デジタルビューアは、ユーザ入力コントロール1550に関連するGUIの一部として実装される。
II.メディア編集アプリケーション
一部の実施形態は、到来するデジタル動画像の多様なフォーマットを識別する能力を有する、デジタル動画像をインポートして編集するためのメディア編集アプリケーションを提供する。時間的に圧縮されたデジタル動画像がインポートされた場合、メディア編集アプリケーションはデジタル動画像をトランスコードし、トランスコードされた動画像を記憶装置内に保存する。非時間的に圧縮されたデジタル動画像がインポートされた場合、メディア編集アプリケーションは、このフォーマットを認識し、到来する動画像を直接、トランスコーディングすることなく記憶装置内に保存する。
図16は、一部の実施形態のそのようなメディア編集アプリケーション1600を示す図である。そのようなメディア編集アプリケーションの例には、iMovie(登録商標)やFinal Cut Pro(登録商標)があり、両方共、Apple Inc.(登録商標)によって販売されている。メディア編集アプリケーション1600は、コンピュータ1605上にある。一部の実施形態では、コンピュータ1605は、メディア編集に特化した専用コンピュータであってもよいし、他の多くのプログラム(例えば、ワードプロセッサ、ウェブブラウザ、コンピュータゲームアプリケーション等)を含んでいるコンピュータであってもよい。
また、メディア編集アプリケーション1600に加えて、コンピュータ1605は、インタフェースマネージャ1610およびキャプチャモジュール1615、ならびに記憶装置1620も含んでいる。インタフェースマネージャ1610は、デジタル動画像ソースからデジタル動画像ストリームを受け取る。以下に記すカメラ1625は、そのようなデジタル動画像ソースの一例である。一部の実施形態では、インタフェースマネージャは、(FireWireまたはUSBケーブルを通して、直接USBポートを介して、無線で、等で)デジタル動画像ソースに接続されているコンピュータのポート(例えばFireWireポート、USBポート等)を通して動画像ストリームを受け取る入力ドライバ(例えば、FireWire入力ドライバ、USB入力ドライバ等)である。
インタフェースマネージャ1610は、受け取った動画像ストリームをキャプチャモジュール1615へ伝え、一部の実施形態ではキャプチャモジュール1615は、動画像ストリームを低レベルポートマネージャ(インタフェースマネージャ1610)からメディア編集アプリケーション1600へ向かわせる。一部の実施形態では、このキャプチャモジュール1615は、Apple Inc.(登録商標)のQuickTime(登録商標)エンジンの一部である。一部の実施形態では、キャプチャモジュール1615は、実際にメディア編集アプリケーション1600の一部である。記憶装置1620は、デジタル動画像ソースから受け取った動画像クリップを保存する。記憶装置1620も、一部の実施形態ではメディア編集アプリケーション1600の一部である。例えば、記憶装置1620は、メディア編集アプリケーションのライブラリであってもよい。他の実施形態では、図示するように、記憶装置は、コンピュータ1605の一部である。記憶装置1620は、一部の実施形態では、動画像クリップだけではなくそれ以上のものを保存してもよい。例えば、記憶装置1620は、メディア編集アプリケーション1600またはコンピュータ1605上に常駐する他のアプリケーションに関連する実行可能なファイルまたはその他のファイルも保存してもよい。
メディア編集アプリケーション1600は、フォーマット認識モジュール1630と、トランスコーダ1635と、サムネイル生成器1640とを含んでいる。当業者であれば、一部の実施形態のメディア編集アプリケーションは、この図に示されていない他のモジュール、例えば編集モジュール、レンダリングモジュール等を含むであろうということを理解するであろう。
フォーマット認識モジュール1630は、インポートの時点でデジタル動画像クリップをキャプチャモジュール1615から受け取り、デジタル動画像のフォーマットを識別する。一部の実施形態では、この識別によって、デジタル動画像が時間的に圧縮されているかどうかが判定される。フォーマット認識モジュール1630は、一部の実施形態では、フォーマットを識別することを目的としてデジタル動画像クリップのメタデータを検討する(メタデータのさらなる議論については以下の動画像クリップの構造の記述を参照されたい)。一部の実施形態では、メタデータは、デジタル動画像がiFrame(非時間的圧縮)フォーマットであるか、または、時間的圧縮を用いる別のフォーマットであるかを示す。一部の実施形態では、フォーマット認識モジュールは、カメラがコンピュータ1605に接続されると同時に各種の動画像クリップのフォーマットを識別することができる。
到来するデジタル動画像クリップが時間的に圧縮されておらず、従って、トランスコードされる必要がないということをフォーマット認識モジュール1630が識別した場合、フォーマット認識モジュール1630は、動画像クリップを直接記憶装置1620に送る。上記のように、これはメディア編集アプリケーション1600のライブラリであってもよいし、複数のアプリケーションによって共有されるコンピュータ上の記憶装置であってもよい。そのようなデジタル動画像クリップをインポートする速度は、一部の実施形態では動画像クリップファイルのサイズと、カメラとコンピュータとの間の接続速度とに関係しており、クリップのトランスコーディングまたはクリップの再生速度には関係していない。詳細には、トランスコーディングがないのだから、インポート速度は、復号および/または符号化に必要な処理能力には関係していない。さらに、デジタル動画像クリップがカメラ上のランダムアクセス記憶装置の中に保存される場合、インポート速度は、テープの再生が必要であることにより30分の動画像をインポートするのに30分かかるような、テープを利用した記憶装置から読み取ることに起因する動画像クリップの再生速度には関連がない。一部の実施形態は、動画像クリップを記憶装置1620に直接送るのではなく、空間的圧縮を除去するために到来する動画像クリップを復号する。
フォーマット認識モジュール1630が、到来するデジタル動画像は時間的に圧縮されていることを識別すると、デジタル動画像はトランスコーダ1635へ送られる。トランスコーダ1635は、一部の実施形態ではデジタル動画像を復号し、動画像を空間的圧縮だけを使って再符号化する。従って、トランスコーダ1635の出力は、非時間的に圧縮された動画像である。このトランスコーディングプロセスは一般に、同等の長さの非時間的に圧縮された動画像クリップの場合よりもかなり時間がかかるであろう。一部の実施形態では、トランスコーダは動画像を復号し、それを再符号化しない。
トランスコーダの出力(非時間的に圧縮された動画像)は、一部の実施形態ではサムネイル生成器1640へ送られる。サムネイル生成器1640は、動画像クリップの中の各デジタル動画像のサムネイルを生成する。サムネイルは、動画像クリップと共に記憶装置1620の中に保存される。また、一部の実施形態は、記憶の前の中間ステップとして、非時間的に圧縮された到来する動画像クリップをフォーマット認識モジュール1630からサムネイル生成器1640へ送る。また、一部の実施形態はサムネイル生成器を含んでおらず、従ってサムネイルを動画像クリップと共に保存しない。
上述のように、一部の実施形態では、デジタル動画像ストリームをカメラ1625から受け取る。カメラ1625は、一部の実施形態では、デジタルビデオカメラ700のようなカメラであってもよい。カメラ1625は、転送モジュール1645と動画像クリップ記憶装置1650とを含んでいる。動画像クリップ記憶装置は、多様なフォーマットで保存された多数の動画像クリップを含んでいる。例えば、クリップ1651は、非時間的に圧縮されたフォーマットで保存され、クリップ1652は、720pの時間的に圧縮されたフォーマットで保存され、クリップ1653は1680pの時間的に圧縮されたフォーマットで保存されている。上記のセクションIで示したように、一部の実施形態は、カメラによって撮影される各動画像クリップの録画フォーマットをユーザが選択できる。この図で示し、かつ、以下に記すように、一部の実施形態は、動画像フォーマットをメタデータとして保存する。
一部の実施形態では、転送モジュール1645は、カメラ1625の出力ポート(例えばFireWireまたはUSBポート)に関連する出力ドライバである。一部の実施形態では、カメラのユーザインタフェースか(カメラがコンピュータ1605に接続されている場合)メディア編集アプリケーション1600のユーザインタフェースかのいずれか一方を通してビデオカメラと対話しているユーザが、特定の動画像クリップをメディア編集アプリケーション1600へ転送するようにカメラ1625に命令する。次いでクリップが、転送モジュール1645を介してコンピュータ1605へ転送される。
また図16は、カメラ1625上に保存されている、一部の実施形態の動画像ファイル1655のフォーマットも示している。動画像ファイル1655は、非時間的に圧縮された動画像クリップの一例である。動画像ファイル1655は、動画像データ1660と、Advanced Audio Coding(AAC)オーディオデータ1665と、メタデータ1670とを含んでいる。動画像データは、この例では非時間的に圧縮された動画像フレームを含んでおり、クリップ1652の場合には、時間的に圧縮された動画像フレームデータを含むであろう。AACオーディオデータ1665は、一部の実施形態ではメディア編集アプリケーションによって必要とされる特定のフォーマットのオーディオである。他の実施形態では、例えばリニアPCM(LPCM)オーディオのように、別のかたちで符号化されたオーディオデータが可能である。
図示するように、メタデータ1670は、動画像フォーマットタイプ1675と、ジオタグデータ1680と、「colr」アトム1685と、他のメタデータ1690とを含んでいる。動画像フォーマットタイプ1675は、動画像の符号化フォーマットを示す。すなわち、フォーマットタイプ1675は、動画像が(非時間的に圧縮された)iFrameフォーマットであるかどうかを示しており、また、動画像の解像度および/またはビットレートを示してもよい。一部の実施形態では、メディア編集アプリケーション1600は、iFrameフォーマットデータについてはビットレートが特定の閾値(例えば24Mbps)を下回り、一方で所与の解像度で所定の閾値品質を維持することを必要とする。
ジオタグデータ1680は、一部の実施形態では、動画像クリップがどこで撮影されたかについてのGPS座標または他の地理的位置情報を示す。この情報は、カメラ内のジオロケータモジュール(例えばGPS受信器)に基づいている。「colr」アトム1685は、一部の実施形態では、多様なディスプレイ装置の色空間を適切に変換するのに用いられる。具体的には、「colr」アトムは、ソフトウェアガンマ色空間変換が用いられるべきであることを示す。「colr」アトムの中の「nclc」タグは、一部の実施形態では、色空間変換が、ソフトウェアまたはハードウェアパスのいずれかを経て(例えば、動画像クリップの再生時に)行われうることを識別するのに用いられる。
一部の実施形態は、他のメタデータ1690も動画像クリップと同様に保存する。このメタデータは、動画像クリップが撮影された時のライティングについてのライティング情報、動画像クリップについてのケーデンスおよびフレームレート情報(例えば毎秒25フレーム、毎秒30フレーム等)、ビット深度情報(例えば8ビット)等を含んでいてもよい。一部の実施形態では、動画像クリップがメディア編集アプリケーション1600へ転送される場合、メタデータ1670は、それと共に転送されて、メディア編集アプリケーションによって使用される。例えば、フォーマット認識モジュール1630の一部の実施形態は、メタデータ1670から動画像フォーマットタイプを判定する。
メディア編集アプリケーションの一部の実施形態は、受入可能な非時間的に圧縮された動画像についての必要条件を指定する。例えば、一部の実施形態は、動画像符号化および圧縮がベースライン、メイン、ハイプロファイル符号化のいずれかを用いてH.264符号化スキームに適合するように指定する。一部の実施形態では、プロファイルが異なれば、機能も異なる。また、一部の実施形態では、カメラ上のエントロピー符号化器(例えば図7のユニット725)が、CAVLC(Context−based Adaptive Variable Length Coding)またはCABAC(Context−based Adaptive Binary Arithmetic Coding)のいずれか一方を用いるように指定する。一部の実施形態では、その他の要求条件、例えば、フレームレート(例えば、25または30fpsに限定)、ビット深度(例えば8ビット)、ファイルフォーマット(例えば.mp4または.mov)、カラータグ付け(例えば、「nclc」色パラメータタイプ付きの「colr」アトムが存在しなければならない等)、最大ビットレート(例えば24Mbps)等を指定する。
図17は、例えばカメラ1625のようなデジタル動画像ソースからコンピュータへインポートされた動画像クリップを保存するための一部の実施形態のプロセス1700を概念的に示す図である。プロセス1700は、一部の実施形態ではメディア編集アプリケーション(例えばアプリケーション1600)によって行われる。プロセスは(1705で)、デジタル動画像ソースから動画像クリップを受け取ることによって始まる。動画像クリップの受け取りは、コンピュータのユーザがユーザインタフェースにおいてインポートの選択肢を選択することによって、または、動画像クリップのアイコンをカメラフォルダからコンピュータフォルダへドラッグすることによって開始されてもよい。例えば、動画像がカメラ上のランダムアクセス記憶装置(例えば、ハードディスク、フラッシュメモリ等)の中に保存される場合、ユーザは、コンピュータ上でビデオカメラのフォルダを開けて、カメラ上の動画像ファイルの各々のアイコンを表示させてもよい。ユーザは、転送を開始するため、カーソル制御器を用いて所望の動画像クリップのアイコンをコンピュータ上のフォルダへとドラッグすることができる。また、動画像クリップの受け取りは、カメラがコンピュータの入力ポート等に接続されることによって自動的に開始されてもよい。
次いでプロセスは(1710で)、動画像クリップの動画像フォーマットを識別する。上記のように、一部の実施形態では、ビデオカメラは、複数の異なるフォーマットで動画像クリップを符号化して保存する。例えば、ビデオカメラは、空間的圧縮だけを行うことによって動画像クリップを符号化してもよいし、空間的圧縮と時間的圧縮とを両方行うことによって動画像クリップを符号化してもよい。一部の実施形態では、プロセスは、カメラ上に保存され、動画像フォーマットを示す動画像クリップと共に転送されたメタデータに基づいて、動画像フォーマットを識別する。他の実施形態では、動画像データを検討することによって符号化のタイプを認識する。
次いでプロセス1700は(1715で)、動画像が時間的に圧縮されているかどうかを判定する。これは、動画像フォーマットの識別に基づいて行なわれる。動画像が時間的に圧縮されていない場合、プロセスは(1720で)、動画像クリップをその当初のフォーマットで保存する。すなわち、動画像が時間的に圧縮されていない場合にはトランスコーディングは必要とされず、動画像クリップは、何ら処理されることなく、瞬時に保存されてよい。
動画像が時間的に圧縮されている場合、プロセスは(1725で)、時間的圧縮を除去するために動画像をトランスコードする。上述のように、一部の実施形態のトランスコーディングプロセスは、動画像を復号し、次いで、空間的圧縮だけを用いて動画像を再符号化する。このトランスコーディング操作は、演算集約的かつ時間集約的である。次いでプロセスは(1730で)、トランスコードされた動画像を保存する。動画像を(当初のフォーマットまたはトランスコードされたフォーマットで)保存した後、プロセスは終了する。
III.コンピュータシステム
上記の特徴および応用例の多くは、(コンピュータ可読媒体とも呼ばれる)コンピュータ可読記憶媒体上に記録された一組の命令として指定されたソフトウェアプロセスとして実装されている。これらの命令が1つ以上の計算要素(例えばプロセッサ、またはASICやFPGAのようなその他の計算要素)によって実行される時、それらによって、計算要素は命令の中に示された動作を行う。コンピュータは、その最も広義の意味が意図されており、プロセッサを備えたいかなる電子デバイスをも含みうる。コンピュータ可読媒体の例としては、CD−ROM、フラッシュドライブ、RAMチップ、ハードドライブ、EPROM等を含むが、それらに限定されない。コンピュータ可読媒体は、搬送波や、無線または有線接続を通過する電子信号を含まない。
本明細書では、「ソフトウェア」という用語は、リードオンリーメモリまたはプロセッサによって処理するためにメモリ内に読み込まれうる磁気記憶装置内に保存されたアプリケーションに常駐するファームウェアを含むことが意図されている。また、一部の実施形態では、複数のソフトウェア発明が、個別のソフトウェア発明のままでありながらより大きいプログラムの下位区分として実装されてもよい。また、一部の実施形態では、複数のソフトウェア発明が、別個のプログラムとして実装されてもよい。最後に、本書で記述したソフトウェア発明を共に実装する別個のプログラムのいかなる組み合わせも、本発明の範囲内にある。一部の実施形態では、ソフトウェアプログラムは、1つ以上のコンピュータシステム上で動作するようにインストールされた時、ソフトウェアプログラムの動作を実行する1つ以上の特定の機械実装を定義する。
図18は、本発明の一部の実施形態が実装されるコンピュータシステムを示す図である。そのようなコンピュータシステムは、さまざまなタイプのコンピュータ可読媒体と、それ以外のさまざまなタイプのコンピュータ可読媒体のためのインタフェースとを含んでいる。また、当業者であれば気付くであろうが、一部の実施形態のデジタルビデオカメラも、さまざまなタイプのコンピュータ可読媒体を含んでいる。コンピュータシステム1800は、バス1805と、プロセッサ1810と、グラフィックス処理ユニット(GPU)1820と、システムメモリ1825と、リードオンリーメモリ1830と、永久記憶装置1835と、入力デバイス1840と、出力デバイス1845とを含んでいる。
バス1805は、コンピュータシステム1800の多くの内部デバイスを通信で接続するすべてのシステムバスと、周辺バスと、チップセットバスとを集合的に表している。例えば、バス1805は、プロセッサ1810を、リードオンリーメモリ1830と、GPU1820と、システムメモリ1825と、永久記憶装置1835と通信で接続する。
これらのさまざまなメモリユニットから、プロセッサ1810は、本発明のプロセスを実行するために、実行すべき命令と処理すべきデータとを読み出す。一部の実施形態では、プロセッサは、FPGA(Field Programmable Gate Array)とASIC、あるいは命令を実行するためのその他の各種の電子コンポーネントとを含んでいる。一部の命令は、GPU1820に渡されて実行される。GPU1820は、各種の演算をオフロードするか、または、プロセッサ1810によって提供される画像処理を補完してもよい。一部の実施形態では、そのような機能性は、CoreImageのカーネルシェーディング言語を用いて提供されうる。
リードオンリーメモリ(ROM)1830は、プロセッサ1810およびコンピュータシステムのその他のモジュールによって必要とされる静的データおよび命令を保存している。他方、永久記憶装置1835は、読み取り書き込みメモリデバイスである。このデバイスは、コンピュータシステム1800の電源がオフの時であっても命令およびデータを保存している不揮発性メモリユニットである。本発明の一部の実施形態では、永久記憶装置1835として、大容量記憶装置(例えば磁気ディスクもしくは光学ディスクおよびそれに対応するディスクドライブ)を使用する。
他の実施形態では、取り外し可能な記憶装置(例えばフロッピー(登録商標)ディスク、フラッシュドライブ、もしくはZIP(登録商標)ドライブ、およびその対応するディスクドライブ)を、永久記憶装置として用いる。永久記憶装置1835と同様、システムメモリ1825は読み取り書き込みメモリデバイスである。しかし、記憶装置1835とは異なり、システムメモリは、例えばランダムアクセスメモリのような揮発性の読み取り書き込みメモリである。システムメモリは、プロセッサが実行時に必要とする命令およびデータの一部を保存する。一部の実施形態では、本発明のプロセスが、システムメモリ1825と、永久記憶装置1835と、および/または、リードオンリーメモリ1830との中に保存される。例えば、各種のメモリユニットが、一部の実施形態によるマルチメディアアイテムを処理するための命令を含んでいる。これらの各種のメモリユニットから、プロセッサ1810は、一部の実施形態のプロセスを実行するために、実行すべき命令と処理すべきデータとを読み出す。
また、バス1805は、入力デバイス1840および出力デバイス1845にも接続している。入力デバイスによって、ユーザは、情報を通信してコンピュータシステムへのコマンドを選択することが可能になる。入力デバイス1840には、英数字キーボードと(「カーソル制御デバイス」とも呼ばれる)ポインティングデバイスとが含まれる。出力デバイス1845は、コンピュータシステムによって生成された画像を表示する。出力デバイスには、プリンタと、例えばブラウン管(CRT)または液晶(LCD)ディスプレイのような表示デバイスとが含まれる。
最後に、図18に示すように、バス1805は、ネットワークアダプタ(図示せず)を介してコンピュータ1800をネットワーク1865に接続する。このように、コンピュータは、コンピュータのネットワーク(例えばローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、またはイントラネット、または、例えばインターネットのような複数のネットワークのうちの1つのネットワーク)の一部でありうる。コンピュータシステム1800のいずれかの、またはすべてのコンポーネントが、本発明に関連して用いられうる。
一部の実施形態は、例えばマイクロプロセッサと、機械可読媒体(medium)またはコンピュータ可読媒体(medium)(または、コンピュータ可読記憶媒(media)体、機械可読媒体(media)、または機械可読記憶媒体(media)とも呼ばれる)の中にコンピュータプログラム命令を保存する記憶装置およびメモリとのような、電子コンポーネントを含んでいる。そのようなコンピュータ可読媒体の一部の例には、RAM、ROM,CD−ROM(リードオンリーコンパクトディスク)、CD−R(書き込み可能コンパクトディスク)、CD−RW(書き換え可能コンパクトディスク)、リードオンリーデジタル多用途ディスク(例えばDVD−ROM、デュアルレイヤDVD−ROM)、各種の書き込み可能/書き換え可能DVD(例えばDVD−RAM、DVD−RW、DVD+RW等)、フラッシュメモリ(例えばSDカード、ミニSDカード、マイクロSDカード等)、磁気および/または半導体ハードドライブ、リードオンリーおよび録画可能Blu−Ray(登録商標)ディスク、ウルトラデンシティオプティカルディスク、その他の光学媒体または磁気媒体、およびフロッピーディスクなどが含まれる。コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行可能であり、かつ、各種の操作を行うための命令の集合を含むコンピュータプログラムを保存していてもよい。命令の集合を保存して実行するように構成されたハードウェアデバイスの例には、ASIC(特定用途向け集積回路)と、FPGA(field programmable gate array)と、PLD(プログラム可能論理回路)と、ROMデバイスと、RAMデバイスとが含まれるが、それらに限定されない。コンピュータプログラムまたはコンピュータコードの例には、コンパイラによって生成されるようなマシンコードと、インタープリタを用いてコンピュータ、電子コンポーネント、またはマイクロプロセッサによって実行される高級コードを含むファイルとが含まれる。
本明細書および本願のいずれかの請求項で用いられる場合、「コンピュータ」、「サーバ」、「プロセッサ」、「メモリ」という用語はすべて、電子デバイスまたはその他の技術的デバイスを指す。これらの用語は、人々または人々のグループのことは含まない。本明細書では、表示または表示するという用語は、電子デバイス上に表示することを意味する。本明細書および本願のいずれかの請求項で用いられる場合、「コンピュータ可読媒体(medium)」および「コンピュータ可読媒体(media)」という用語は、コンピュータ可読形式で情報を保存する有形の物理的物体に完全に限定される。これらの用語は、無線信号、有線のダウンロード信号、およびその他のいずれかの一過性の信号を含まない。
本発明について、多くの特定の詳細に言及しながら記述してきたが、当業者であれば、本発明は、本発明の精神から逸脱することなく、他の特定の形で実施されうることを認識するであろう。加えて、(図8および図11を含む)多数の図面は、プロセスを概念的に示すものである。これらのプロセスの特定の操作は、図示され記述された厳密な順序で行われなくてもよい。特定の操作は、1つの連続した一連の操作として行われなくてもよく、多様な実施形態で多様な特定の操作が行われてもよい。さらに、プロセスは、複数の部分プロセスを用いて、あるいは、より大きなマクロプロセスの一部として実装することもできるだろう。

Claims (50)

  1. コンピュータ上で動画像を編集するための動画像編集アプリケーションであって、
    ビデオカメラ上に保存されている、複数の異なる符号化フォーマットのうちの1つに従って各々が符号化されている複数の異なる動画像クリップを識別する第1のモジュールと、
    (i)前記ビデオカメラ上に保存されている複数の動画像クリップを受信し、(ii)前記複数の動画像クリップのうちの、前記ビデオカメラ上でフレーム内だけで符号化されている第1のセットを、前記コンピュータの記憶装置に保存する第2のモジュールと、
    (i)前記複数の動画像クリップのうちの、前記ビデオカメラ上で少なくとも部分的にフレーム間フォーマットで符号化されている第2のセットをトランスコードし、(ii)前記トランスコードされた複数の動画像クリップの第2のセットを前記コンピュータの前記記憶装置に保存する第3のモジュールと、
    を備えることを特徴とする動画像編集アプリケーション。
  2. 前記第1のモジュールは、前記コンピュータの前記記憶装置の中に、前記フレーム内だけのフォーマットと同じフォーマットで前記フレーム内符号化された動画像クリップを保存する
    ことを特徴とする請求項1に記載の動画像編集アプリケーション。
  3. 前記フレーム内だけのフォーマットは、前記動画像クリップのシーケンスが前記ビデオカメラによって元々符号化された当初のフォーマットである
    ことを特徴とする請求項2に記載の動画像編集アプリケーション。
  4. 前記フレーム内だけのフォーマットは、ユーザが如何なる復号も行わずに前記動画像編集アプリケーションにより前記動画像クリップを編集可能なフォーマットである
    ことを特徴とする請求項2に記載の動画像編集アプリケーション。
  5. 前記フレーム内符号化フォーマットは、960x540及び1280x720のうちの少なくとも1つを指定する解像度設定と、最大24Mbpsを指定するビットレート設定と、によって定義される
    ことを特徴とする請求項1に記載の動画像編集アプリケーション。
  6. (i)前記ビデオカメラが前記コンピュータに接続されたことを検知し、(ii)前記ビデオカメラの中に保存されている前記動画像クリップをインポートするインポートモジュールを更に備える
    ことを特徴とする請求項1に記載の動画像編集アプリケーション。
  7. 前記第1のモジュールは、ユーザが前記動画像編集アプリケーションに対して特定の動画像クリップをインポートするように指示すると、前記特定の動画像クリップを、フレーム内符号化された動画像クリップ又はフレーム間符号化された動画像クリップとして自動的に識別する
    ことを特徴とする請求項6に記載の動画像編集アプリケーション。
  8. コンピュータ可読媒体であって、前記コンピュータ可読媒体を含むデバイスに動画像クリップをインポートする命令を格納しており、前記命令は、
    前記デバイスに対するビデオカメラの接続を検知する命令セットと、
    前記ビデオカメラに保存されている、少なくとも部分的にフレーム間符号化された第1の動画像クリップを識別する命令セットと、
    前記第1の動画像クリップを前記デバイスに転送している間に、前記第1の動画像クリップを第1のフォーマットから第2のフォーマットにトランスコードする命令セットと、
    前記ビデオカメラに保存されている、フレーム内だけで符号化された第2の動画像クリップを識別する命令セットと、
    前記第2の動画像クリップの符号化を変更せずに前記第2の動画像クリップを前記デバイスに転送する命令セットと、
    を含むことを特徴とするコンピュータ可読媒体。
  9. 前記第1のフォーマットは、前記動画像クリップの画像シーケンスが元々符号化された当初のフォーマットであり、前記第2のフォーマットは、前記第1のフォーマットと異なる非当初のフォーマットである
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  10. 前記トランスコードする命令セットは、前記第1の動画像クリップを、時間的に圧縮されたフォーマットから非時間的に圧縮されたフォーマットに変換する命令セットを含む
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  11. 前記トランスコードする命令セットは、
    フレーム間符号化された動画像クリップを復号する命令セットと、
    前記復号された動画像クリップを、フレーム内符号化だけを用いて符号化する命令セットと、
    を含む
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  12. 少なくとも部分的にフレーム間符号化された前記第1の動画像クリップは、異なるビデオピクチャを参照して符号化されたビデオピクチャを少なくとも1つ含み、フレーム内だけで符号化された前記第2の動画像クリップは、他のビデオピクチャを参照せずに符号化されたビデオピクチャだけを含む
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  13. 前記第2の動画像クリップの転送時間は、前記第2の動画像クリップのサイズ、及び前記ビデオカメラと前記デバイスとの間の接続速度だけに関連する
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  14. 前記第2の動画像クリップの転送時間は、前記第2の動画像クリップのサイズ、及び前記ビデオカメラと前記デバイスとの間の接続速度に関連するが、前記デバイスのトランスコード速度、及び前記動画像クリップの再生速度には関連しない
    ことを特徴とする請求項8に記載のコンピュータ可読媒体。
  15. ビデオカメラであって、
    ビデオピクチャのシーケンスを撮影する画像感知回路と、
    時間的に圧縮される符号化フォーマットと非時間的に圧縮される符号化フォーマットとを含む複数の動画像符号化フォーマットから、ユーザが動画像符号化フォーマットを選択できるようにするユーザインタフェースと、
    前記ユーザインタフェースを介して前記ユーザが選択したフォーマットに従って前記ビデオピクチャを符号化する符号化回路と、
    を備えることを特徴とするビデオカメラ。
  16. 前記非時間的に圧縮される符号化フォーマットは、動画像クリップの各フレームが前記動画像クリップの如何なる他のフレームも参照せずに符号化される符号化スキームであり、前記時間的に圧縮される符号化フォーマットは、前記動画像クリップの少なくとも1つのフレームが前記動画像クリップの少なくとも1つの他のフレームを参照して符号化される符号化スキームである
    ことを特徴とする請求項15に記載のビデオカメラ。
  17. 前記ユーザインタフェースは、前記ビデオカメラ上で前記複数の動画像符号化フォーマットから特定の動画像符号化フォーマットを選択するためにユーザが選択可能な1以上の操作部を含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  18. 前記ユーザインタフェースは、ユーザによる選択のために前記複数の動画像符号化フォーマットを表示するメニューを含むグラフィカルユーザインタフェースを含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  19. 前記グラフィカルユーザインタフェースは、前記メニューを表示するためのテキストベースのユーザインタフェースを含む
    ことを特徴とする請求項18に記載のビデオカメラ。
  20. 前記ユーザインタフェースは、前記複数の動画像符号化フォーマットから特定の動画像符号化フォーマットを選択するためのタッチスクリーンメニューを含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  21. 前記符号化回路は、ASICを含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  22. 前記符号化回路は、FPGAを含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  23. 前記符号化回路は、マイクロプロセッサ及びソフトウェアを含む
    ことを特徴とする請求項15に記載のビデオカメラ。
  24. ビデオカメラであって、
    イントラのみの符号化スキームを少なくとも1つ含むと共にイントラのみでない符号化スキームを少なくとも1つ含む複数の異なる符号化スキームからの符号化スキームのユーザによる選択を受信するユーザインタフェースを備え、
    前記ユーザインタフェースは、
    前記複数の異なる符号化スキームのリストを表示するディスプレイと、
    前記複数の異なる符号化スキームのうちの1つを選択するためにユーザとの対話を受信するユーザ入力操作部と、
    を含み、
    前記ビデオカメラは、
    前記複数の異なる符号化スキームを保存すると共に撮影され前記複数の符号化スキームのうちの1つを用いて符号化された動画像を保存する少なくとも1つの記憶装置と、
    選択された符号化スキームに従って動画像を符号化する動画像符号化器と、
    を備え、
    前記動画像符号化器は、
    前記選択された符号化スキームに従って画像データのブロックに対して離散コサイン変換(DCT)操作を実行するDCTユニットと、
    前記DCTユニットの出力であるDCT係数に対して、前記選択された符号化スキームに従って量子化操作を実行する量子化ユニットと、
    前記選択された符号化スキームに従って、入力データをビットストリームに符号化するエントロピー符号化器と、
    を含み、
    前記ビデオカメラは、
    前記選択された符号化スキームを識別し、前記選択された符号化スキームに従って符号化設定のセットを取得し、前記取得した設定のセットを、前記DCT操作、前記量子化操作、及び前記エントロピー符号化操作を実行するために前記動画像符号化器へ送信する動画像圧縮制御器を備える
    ことを特徴とするビデオカメラ。
  25. 前記動画像符号化器は、(i)画像データのブロックに対して空間的圧縮を実行し、(ii)前記選択された符号化スキームがイントラのみでない符号化スキームである場合に画像データのブロックに対して時間的圧縮を実行する予測ユニットを更に含む
    ことを特徴とする請求項24に記載のビデオカメラ。
  26. 前記記憶装置は、ハードディスクを含む
    ことを特徴とする請求項24に記載のビデオカメラ。
  27. 前記記憶装置は、フラッシュメモリを含む
    ことを特徴とする請求項24に記載のビデオカメラ。
  28. 撮影した動画像クリップを外部デバイスへ転送する出力ポートを更に備える
    ことを特徴とする請求項24に記載のビデオカメラ。
  29. 前記外部デバイスは、メディア編集アプリケーションを有するコンピュータである
    ことを特徴とする請求項28に記載のビデオカメラ。
  30. 動画像録画デバイスのための複数の動画像フォーマットを定義する方法であって、
    動画像クリップを少なくとも部分的にフレーム間フォーマットで符号化する第1の動画像フォーマットのための複数のパラメータを指定するステップと、
    動画像クリップをフレーム内だけのフォーマットで符号化する第2の動画像フォーマットのための複数のパラメータを指定するステップと、
    前記第2の動画像フォーマットを用いて符号化される複数の動画像の各々が複数のスライスとして符号化されることを指定するステップと、
    を備え、
    特定の動画像の前記複数のスライスは、動画像復号デバイスの複数の処理ユニットにより復号するためのものである
    ことを特徴とする方法。
  31. 前記動画像録画デバイスのためのグラフィカルユーザインタフェースを定義するステップを更に備え、
    前記グラフィカルユーザインタフェースは、ユーザが前記第1のフォーマットと前記第2のフォーマットとの間での選択ができるようにするためのものである
    ことを特徴とする請求項30に記載の方法。
  32. 前記第2の動画像フォーマットを用いて符号化される前記動画像の各々は、複数のスライスとして符号化される
    ことを特徴とする請求項30に記載の方法。
  33. 前記第2の動画像フォーマットは、1280x720の解像度を持つ
    ことを特徴とする請求項30に記載の方法。
  34. 動画像録画デバイスのコンピュータ可読媒体であって、前記コンピュータ可読媒体は、前記動画像録画デバイスの少なくとも1つのプロセッサによって実行されると動画像クリップを撮影するコンピュータプログラムを格納しており、前記コンピュータプログラムは、
    動画像クリップを符号化するための複数の異なる符号化スキームから非時間的に圧縮する符号化スキームの選択を受信する命令セットであって、前記複数の異なる符号化スキームは少なくとも1つの時間的に圧縮する符号化スキームと少なくとも前記選択された非時間的に圧縮する符号化スキームとを含む、命令セットと、
    前記動画像クリップを複数のフレームとして撮影する命令セットと、
    前記複数のフレームの各々を複数のスライスとして非時間的に符号化する命令セットであって、特定のフレームの前記複数のスライスは動画像復号デバイスの複数の処理ユニットにより復号するためのものである、命令セットと、
    前記動画像クリップを前記動画像録画デバイスの記憶装置に保存する命令セットと、
    を含むことを特徴とするコンピュータ可読媒体。
  35. 前記時間的に圧縮する符号化スキームは、撮影される動画像クリップの少なくとも1つのフレームが前記動画像クリップの少なくとも1つの他のフレームを参照して符号化される符号化スキームであり、前記非時間的に圧縮する符号化スキームは、撮影される動画像クリップの各フレームが前記動画像クリップの如何なる他のフレームも参照せずに符号化される符号化スキームである
    ことを特徴とする請求項34に記載のコンピュータ可読媒体。
  36. 前記動画像クリップが撮影された場所を示す地理的位置メタデータを前記動画像クリップに付加する命令セットを更に含む
    ことを特徴とする請求項34に記載のコンピュータ可読媒体。
  37. 複数の処理ユニットを有する動画像復号デバイスのコンピュータ可読媒体であって、前記コンピュータ可読媒体は、前記動画像復号デバイスの少なくとも1つの処理ユニットによって実行されると動画像クリップを復号するコンピュータプログラムを格納しており、前記コンピュータプログラムは、
    複数の動画像を含む非時間的に符号化された動画像クリップを受信する命令セットと、
    前記動画像クリップが非時間的に符号化されていることを判定すると共に前記複数の動画像が複数のスライスとして符号化されていることを判定する命令セットと、
    特定の動画像の各スライスについて、当該スライスを復号のために前記動画像復号デバイスの特定の処理ユニットに割り当てる命令セットと、
    を含むことを特徴とするコンピュータ可読媒体。
  38. 前記動画像復号デバイスの2つの異なる処理ユニットを用いて、前記複数のスライスのうちの少なくとも2つを同時に復号する命令セットを更に含む
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  39. 特定の動画像が4つのスライスとして符号化されており、前記動画像復号デバイスが4つの処理ユニットを有し、前記4つのスライスの各々が、同時の復号のために異なる処理ユニットに割り当てられる
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  40. 前記コンピュータプログラムは、前記特定の動画像を復号した後に前記特定の動画像の幅を増加させる命令セットを更に含む
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  41. 前記コンピュータプログラムは、前記動画像が撮影された特定の幅を識別する命令セットを更に含み、当該幅が特定の幅に増加される
    ことを特徴とする請求項40に記載のコンピュータ可読媒体。
  42. 前記動画像復号デバイスは、動画像再生デバイスである
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  43. 前記複数の処理ユニットは、単一のプロセッサの複数のコアである
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  44. 前記複数の処理ユニットは、単一のパッケージ内の複数のチップである
    ことを特徴とする請求項37に記載のコンピュータ可読媒体。
  45. 動画像録画デバイスのコンピュータ可読媒体であって、前記コンピュータ可読媒体は、前記動画像録画デバイスの少なくとも1つのプロセッサによって実行されると動画像クリップを撮影するコンピュータプログラムを格納しており、前記コンピュータプログラムは、
    前記動画像録画デバイスが撮影した動画像クリップを動画像セットとして受信する命令セットであって、各動画像が特定の幅を有する、命令セットと、
    前記動画像の前記幅を削減する命令セットと、
    前記幅が削減された動画像の各々を、如何なる他の動画像も参照せずに符号化する命令セットと、
    前記動画像を、前記動画像録画デバイスの記憶装置の中に保存する命令セットと、
    を含むことを特徴とするコンピュータ可読媒体。
  46. 前記幅が削減された動画像を符号化する前記命令セットは、前記動画像の4x4アレーの各々について全てのイントラ予測モードを実行する命令セットを含む
    ことを特徴とする請求項45に記載のコンピュータ可読媒体。
  47. 特定の4x4アレーについてイントラ予測モードを実行する前記命令セットは、前記特定の4x4アレーを以前に符号化した4x4アレーと比較する命令セットを含む
    ことを特徴とする請求項46に記載のコンピュータ可読媒体。
  48. 前記幅が削減された動画像を符号化する前記命令セットは、
    各動画像を複数の8x8マクロブロックに分割する命令セットと、
    前記複数の8x8マクロブロックの各々に対して離散コサイン変換を実行する命令セットと、
    を含む
    ことを特徴とする請求項45に記載のコンピュータ可読媒体。
  49. 前記記憶装置は、フラッシュメモリを含む
    ことを特徴とする請求項45に記載のコンピュータ可読媒体。
  50. 前記記憶装置は、ハードディスクを含む
    ことを特徴とする請求項45に記載のコンピュータ可読媒体。
JP2014114345A 2009-09-10 2014-06-02 デジタルビデオレコーダのための動画像編集および再フォーマット Active JP5883474B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US24139409P 2009-09-10 2009-09-10
US61/241,394 2009-09-10
US12/636,699 2009-12-11
US12/636,699 US8554061B2 (en) 2009-09-10 2009-12-11 Video format for digital video recorder
US12/781,813 US8737825B2 (en) 2009-09-10 2010-05-17 Video format for digital video recorder
US12/781,813 2010-05-17

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012528911A Division JP5555775B2 (ja) 2009-09-10 2010-09-09 デジタルビデオレコーダのための動画像フォーマット

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016021195A Division JP6280144B2 (ja) 2009-09-10 2016-02-05 デジタルビデオレコーダのための動画像編集および再フォーマット

Publications (2)

Publication Number Publication Date
JP2014220818A true JP2014220818A (ja) 2014-11-20
JP5883474B2 JP5883474B2 (ja) 2016-03-15

Family

ID=43647834

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2012528911A Active JP5555775B2 (ja) 2009-09-10 2010-09-09 デジタルビデオレコーダのための動画像フォーマット
JP2014114345A Active JP5883474B2 (ja) 2009-09-10 2014-06-02 デジタルビデオレコーダのための動画像編集および再フォーマット
JP2016021195A Active JP6280144B2 (ja) 2009-09-10 2016-02-05 デジタルビデオレコーダのための動画像編集および再フォーマット

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2012528911A Active JP5555775B2 (ja) 2009-09-10 2010-09-09 デジタルビデオレコーダのための動画像フォーマット

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2016021195A Active JP6280144B2 (ja) 2009-09-10 2016-02-05 デジタルビデオレコーダのための動画像編集および再フォーマット

Country Status (9)

Country Link
US (2) US8737825B2 (ja)
EP (2) EP2476256B1 (ja)
JP (3) JP5555775B2 (ja)
KR (1) KR101361237B1 (ja)
CN (2) CN102484712B (ja)
AU (1) AU2010292204B2 (ja)
BR (1) BR112012005549B1 (ja)
HK (1) HK1169532A1 (ja)
WO (1) WO2011031902A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277456A1 (ko) * 2021-06-30 2023-01-05 삼성전자주식회사 제어 방법 및 그 방법을 이용하는 장치

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8223845B1 (en) 2005-03-16 2012-07-17 Apple Inc. Multithread processing of video frames
US8737825B2 (en) 2009-09-10 2014-05-27 Apple Inc. Video format for digital video recorder
US8554061B2 (en) 2009-09-10 2013-10-08 Apple Inc. Video format for digital video recorder
US9762639B2 (en) 2010-06-30 2017-09-12 Brightcove Inc. Dynamic manifest generation based on client identity
US9838450B2 (en) 2010-06-30 2017-12-05 Brightcove, Inc. Dynamic chunking for delivery instances
AU2011201404B1 (en) * 2011-03-28 2012-01-12 Brightcove Inc. Transcodeless on-the-fly ad insertion
WO2013076915A1 (ja) * 2011-11-25 2013-05-30 三菱電機株式会社 撮像装置、映像記録装置、映像表示装置、映像監視装置、映像監視システムおよび映像監視方法
JP2013141064A (ja) * 2011-12-28 2013-07-18 Jvc Kenwood Corp 撮像装置、及び制御方法
US8488943B1 (en) * 2012-01-31 2013-07-16 Google Inc. Trimming media content without transcoding
US9241167B2 (en) * 2012-02-17 2016-01-19 Microsoft Technology Licensing, Llc Metadata assisted video decoding
US8855466B2 (en) 2012-05-01 2014-10-07 Eldon Technology Limited Separate video file for I-frame and non-I-frame data to improve disk performance in trick play
CN102801813B (zh) * 2012-08-27 2015-11-25 广东利为网络科技有限公司 一种从终端设备自动上传影音文件的装置及方法
US9112939B2 (en) 2013-02-12 2015-08-18 Brightcove, Inc. Cloud-based video delivery
CN105493187A (zh) * 2013-10-04 2016-04-13 英特尔公司 用于动态调整视频回放速度的技术
US9386067B2 (en) * 2013-12-30 2016-07-05 Sonic Ip, Inc. Systems and methods for playing adaptive bitrate streaming content by multicast
US9911460B2 (en) 2014-03-24 2018-03-06 Microsoft Technology Licensing, Llc Fast and smart video trimming at frame accuracy on generic platform
CN106856571B (zh) 2015-12-09 2019-12-06 阿里巴巴集团控股有限公司 一种转码方法及装置
CN105681787B (zh) * 2016-01-22 2019-01-18 北京大学 对时空信号进行编码的方法和装置
US11228758B2 (en) 2016-01-22 2022-01-18 Peking University Imaging method and device
WO2017193374A1 (en) 2016-05-13 2017-11-16 SZ DJI Technology Co., Ltd. System and method for presenting a video via transcode
KR20180036153A (ko) * 2016-09-30 2018-04-09 주식회사 요쿠스 영상 편집 시스템 및 방법
EP4088453A4 (en) 2020-02-14 2023-05-10 Beijing Bytedance Network Technology Co., Ltd. COLOCATED IMAGE INDICATION IN VIDEO BITSTREAMS
US11004471B1 (en) * 2020-03-24 2021-05-11 Facebook, Inc. Editing portions of videos in a series of video portions

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120364A (ja) * 2002-09-26 2004-04-15 Fuji Photo Film Co Ltd デジタルスチルカメラ
JP2004120367A (ja) * 2002-09-26 2004-04-15 Fuji Photo Film Co Ltd デジタルカメラ
JP2005318411A (ja) * 2004-04-30 2005-11-10 Canon Inc 画像処理装置およびその制御方法
JP2005348258A (ja) * 2004-06-04 2005-12-15 Canon Inc 撮影装置及び方法、並びにプログラム及び記憶媒体
JP2008054229A (ja) * 2006-08-28 2008-03-06 Canon Inc 撮像装置及び撮像装置の制御方法
JP2008109590A (ja) * 2006-10-27 2008-05-08 Olympus Corp 撮像システム及び撮像機器の認証方法

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5111292A (en) 1991-02-27 1992-05-05 General Electric Company Priority selection apparatus as for a video signal processor
US5577191A (en) 1994-02-17 1996-11-19 Minerva Systems, Inc. System and method for digital video editing and publishing, using intraframe-only video data in intermediate steps
GB2318246B (en) * 1996-10-09 2000-11-15 Sony Uk Ltd Processing digitally encoded signals
JP3787398B2 (ja) 1996-11-27 2006-06-21 キヤノン株式会社 画像処理装置及びその方法
JP3592025B2 (ja) 1997-03-11 2004-11-24 キヤノン株式会社 撮影画像記録装置
US6115420A (en) * 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
US7110025B1 (en) * 1997-05-28 2006-09-19 Eastman Kodak Company Digital camera for capturing a sequence of full and reduced resolution digital images and storing motion and still digital image data
JP3844844B2 (ja) 1997-06-06 2006-11-15 富士通株式会社 動画像符号化装置及び動画像符号化方法
JP4427827B2 (ja) * 1998-07-15 2010-03-10 ソニー株式会社 データ処理方法、データ処理装置及び記録媒体
US20010004417A1 (en) * 1999-12-21 2001-06-21 Ageishi Narutoshi Video editing system
US6834080B1 (en) * 2000-09-05 2004-12-21 Kabushiki Kaisha Toshiba Video encoding method and video encoding apparatus
JP2003046758A (ja) 2001-07-31 2003-02-14 Canon Inc 撮像装置、情報処理装置、画像処理装置およびその方法、並びに、画像処理システム
US20030123546A1 (en) 2001-12-28 2003-07-03 Emblaze Systems Scalable multi-level video coding
US7319720B2 (en) 2002-01-28 2008-01-15 Microsoft Corporation Stereoscopic video
US20070074269A1 (en) 2002-02-22 2007-03-29 Hai Hua Video processing device, video recorder/playback module, and methods for use therewith
JP4196640B2 (ja) * 2002-10-21 2008-12-17 株式会社日立製作所 データ変換方法
JP3750858B2 (ja) 2002-11-26 2006-03-01 ソニー株式会社 撮像装置及び記録方法
JP2004187161A (ja) 2002-12-05 2004-07-02 Matsushita Electric Ind Co Ltd 動画データ処理装置および動画データ処理方法
JP3873921B2 (ja) * 2003-04-03 2007-01-31 ソニー株式会社 記録装置および方法
US6958757B2 (en) 2003-07-18 2005-10-25 Microsoft Corporation Systems and methods for efficiently displaying graphics on a display device regardless of physical orientation
JP4232588B2 (ja) 2003-09-19 2009-03-04 ソニー株式会社 画像処理装置および画像処理方法、並びに、プログラム
JP2007519301A (ja) * 2003-09-30 2007-07-12 ドラプレット テクノロジー インコーポレイテッド 時間型順序外圧縮及びマルチソース圧縮率制御のシステム及び方法
US7528840B1 (en) 2003-10-01 2009-05-05 Apple Inc. Optimizing the execution of media processing routines using a list of routine identifiers
JP4515886B2 (ja) * 2003-10-28 2010-08-04 パナソニック株式会社 面内予測符号化方法
JP3826934B2 (ja) 2003-12-04 2006-09-27 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、画像形成システム、画像形成方法、画像形成制御プログラム、および画像形成制御プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2005175974A (ja) * 2003-12-12 2005-06-30 Canon Inc 撮像装置
DE602005020098D1 (de) 2004-10-14 2010-05-06 Sony Corp Videogerät, Verfahren zur Steuerung des Videoausgangs und Verfahren zur Wiedergabesteuerung
US20060133476A1 (en) 2004-11-12 2006-06-22 Page Warren S Digital in-car video surveillance system
US20090135252A1 (en) * 2005-02-09 2009-05-28 Matsushita Electric Industrial Co., Ltd. Monitoring camera device, monitoring system using the same, and monitoring image transmission method
JP4616057B2 (ja) * 2005-04-13 2011-01-19 パイオニア株式会社 画像符号化装置及び画像符号化方法
US20090123066A1 (en) * 2005-07-22 2009-05-14 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein,
JP4534935B2 (ja) * 2005-10-04 2010-09-01 株式会社日立製作所 トランスコーダ、記録装置及びトランスコード方法
JP2007135069A (ja) * 2005-11-11 2007-05-31 Sony Corp 撮像再生装置
JP2009527135A (ja) 2006-01-05 2009-07-23 アイスポット、コーポレーション デジタル・ビデオを記憶、編集、および共有するシステムおよび方法
JP2007193888A (ja) 2006-01-19 2007-08-02 Sony Corp 記録装置および方法、プログラム、並びに符号化装置および方法
CN101491097B (zh) * 2006-07-13 2011-12-14 高通股份有限公司 使用经循环对准的片段的具有细粒度可缩放性的视频编码
CA2657267C (en) * 2006-07-13 2013-07-16 Qualcomm Incorporated Video coding with fine granularity scalability using cycle-aligned fragments
JP2008078969A (ja) * 2006-09-21 2008-04-03 Victor Co Of Japan Ltd 動画像符号化記録装置
JP2008118271A (ja) 2006-11-01 2008-05-22 Fujinon Corp 撮像装置の遠隔制御システム
US8116537B2 (en) 2007-04-04 2012-02-14 Sony Corporation Image recording device, player device, imaging device, player system, method of recording image, and computer program
US10454995B2 (en) * 2007-06-11 2019-10-22 Crackle, Inc. System and method for obtaining and sharing content associated with geographic information
JP4786602B2 (ja) * 2007-06-26 2011-10-05 株式会社東芝 情報処理装置およびプログラム
JP2009021775A (ja) 2007-07-11 2009-01-29 Panasonic Corp 符号化装置及び符号化方法
JP2009048469A (ja) * 2007-08-21 2009-03-05 Fujitsu Ltd 情報処理装置及び情報処理方法
JP4922138B2 (ja) 2007-11-20 2012-04-25 株式会社東芝 動画像符号化装置及び動画像符号化方法
US20090238479A1 (en) * 2008-03-20 2009-09-24 Pawan Jaggi Flexible frame based energy efficient multimedia processor architecture and method
US9967590B2 (en) 2008-04-10 2018-05-08 Qualcomm Incorporated Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter
US20090320082A1 (en) 2008-06-19 2009-12-24 Iwatchnow Inc. Method of delivering content data
US20100275122A1 (en) * 2009-04-27 2010-10-28 Microsoft Corporation Click-through controller for mobile interaction
US8737825B2 (en) 2009-09-10 2014-05-27 Apple Inc. Video format for digital video recorder
US8554061B2 (en) 2009-09-10 2013-10-08 Apple Inc. Video format for digital video recorder

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120364A (ja) * 2002-09-26 2004-04-15 Fuji Photo Film Co Ltd デジタルスチルカメラ
JP2004120367A (ja) * 2002-09-26 2004-04-15 Fuji Photo Film Co Ltd デジタルカメラ
JP2005318411A (ja) * 2004-04-30 2005-11-10 Canon Inc 画像処理装置およびその制御方法
JP2005348258A (ja) * 2004-06-04 2005-12-15 Canon Inc 撮影装置及び方法、並びにプログラム及び記憶媒体
JP2008054229A (ja) * 2006-08-28 2008-03-06 Canon Inc 撮像装置及び撮像装置の制御方法
JP2008109590A (ja) * 2006-10-27 2008-05-08 Olympus Corp 撮像システム及び撮像機器の認証方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277456A1 (ko) * 2021-06-30 2023-01-05 삼성전자주식회사 제어 방법 및 그 방법을 이용하는 장치

Also Published As

Publication number Publication date
JP2013504936A (ja) 2013-02-07
JP5883474B2 (ja) 2016-03-15
KR101361237B1 (ko) 2014-02-11
US20110058792A1 (en) 2011-03-10
WO2011031902A1 (en) 2011-03-17
BR112012005549A2 (pt) 2017-06-20
JP6280144B2 (ja) 2018-02-14
CN104952470A (zh) 2015-09-30
JP5555775B2 (ja) 2014-07-23
BR112012005549B1 (pt) 2021-08-17
CN102484712A (zh) 2012-05-30
WO2011031902A4 (en) 2011-05-19
JP2016129361A (ja) 2016-07-14
EP2476256A1 (en) 2012-07-18
EP2733703A1 (en) 2014-05-21
US8737825B2 (en) 2014-05-27
CN104952470B (zh) 2018-02-23
EP2476256B1 (en) 2014-08-06
EP2733703B1 (en) 2017-10-25
CN102484712B (zh) 2015-05-13
US9215402B2 (en) 2015-12-15
US20140301720A1 (en) 2014-10-09
AU2010292204A1 (en) 2012-05-03
HK1169532A1 (en) 2013-01-25
KR20120056867A (ko) 2012-06-04
AU2010292204B2 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
JP6280144B2 (ja) デジタルビデオレコーダのための動画像編集および再フォーマット
US8411735B2 (en) Data processing apparatus, data processing method, and program
US8731374B2 (en) Video format for digital video recorder
US8254702B2 (en) Image compression method and image processing apparatus
US8934550B2 (en) Data processing apparatus, data processing method, and program for processing image data of a moving image
EP1781030A1 (en) Recording apparatus and method, reproducing apparatus and method, recording medium, and program
CA2468867C (en) Recording medium having a data structure for managing reproduction of graphic data and recording and reproducing methods and apparatuses
JP5128963B2 (ja) 動画像の多重化方法とファイル読み込み方法及び装置,並びにそのプログラムとコンピュータ読み取り可能な記録媒体
AU2014277749B2 (en) Video editing and reformatting for digital video recorder
US20110150413A1 (en) Moving picture recording/reproducing apparatus and method
JP4487196B2 (ja) 記録装置及びその制御方法
JP2009272929A (ja) 映像符号化装置および映像符号化方法
JP2015037223A (ja) 画像処理装置及びその制御方法
JP2007158807A (ja) 記録再生装置および記録再生方法、記録装置および記録方法、再生装置および再生方法、並びにプログラム
Eerenberg et al. System requirements and considerations for visual table of contents in PVR
JP2009253384A (ja) 動画像符号化装置及び動画像符号化方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150327

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150826

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160205

R150 Certificate of patent or registration of utility model

Ref document number: 5883474

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250