JP5773855B2 - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP5773855B2
JP5773855B2 JP2011265065A JP2011265065A JP5773855B2 JP 5773855 B2 JP5773855 B2 JP 5773855B2 JP 2011265065 A JP2011265065 A JP 2011265065A JP 2011265065 A JP2011265065 A JP 2011265065A JP 5773855 B2 JP5773855 B2 JP 5773855B2
Authority
JP
Japan
Prior art keywords
moving image
frame
image data
recording
file
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
JP2011265065A
Other languages
English (en)
Other versions
JP2013118519A (ja
JP2013118519A5 (ja
Inventor
佑樹 筑比地
佑樹 筑比地
徹也 羽田
徹也 羽田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2011265065A priority Critical patent/JP5773855B2/ja
Priority to US13/691,355 priority patent/US8948573B2/en
Publication of JP2013118519A publication Critical patent/JP2013118519A/ja
Publication of JP2013118519A5 publication Critical patent/JP2013118519A5/ja
Application granted granted Critical
Publication of JP5773855B2 publication Critical patent/JP5773855B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
    • 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
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Television Signal Processing For Recording (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は画像処理装置に関し、特に、記録媒体に記録された既存の動画ファイルの動画データに、動画データを追記することができる画像処理装置に関する。
従来、記録媒体に記録された既存の動画ファイルの動画データに、撮影中の動画データを追記することができる撮像装置が登場してきている(例えば、特許文献1)。特許文献1では、記録媒体に記録されている既存の動画ファイルに格納された動画データに対して、新規に撮影して得られた動画データを追加記録することができる撮像装置が開示されている。
一方、近年、動画の圧縮符号化の規格としてMPEG−4 AVC/H.264が注目されている。MPEG−4 AVC/H.264は、従来のMEPG2等の圧縮方式よりも高い圧縮率を実現しており、撮像装置の動画データの圧縮方式としても用いられるようになってきたものである。特に、MPEG−4 AVC/H.264では、新しくIDR(Instantaneous Decoding Refresh)フレームが定義された。IDRフレームとは、フレーム内の情報のみから符号化するフレーム内符号化されたI(イントラ)フレームである。MPEG−4 AVC/H.264においては、後続のフレーム間符号化を行うPフレームやBフレームは、このIDRフレーム以前のフレームを参照することができないように定められている。また、MPEG−4 AVC/H.264においては、IDRフレームに対してIDRフレーム識別ID(idr_pic_id)が付与されており、隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない(ISO/IEC14496−10参照)、と規定されている。
特開2002−218384号公報
特許文献1の技術を用いて、MPEG−4 AVC/H.264の圧縮符号化規格を用いた動画データを連結する場合、以下のような問題が生じる。すなわち、記録媒体に記録されている既存の動画ファイルに格納された動画データの最後のフレームのIDRフレーム識別ID(idr_pic_id)と、新規に撮影して得られた動画データの最初のフレームのIDRフレーム識別ID(idr_pic_id)とが重複してしまうことがある。
本発明は、このような問題を解決し、前述のような「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式の動画データを連結したとしても、制約に違反しない動画データを生成することができる画像処理装置を提供することを目的とする。
本発明の画像処理装置は、動画データを圧縮し、圧縮された動画データの各フレームに識別情報を割り当てる圧縮手段と、記録指示に応じて、前記圧縮された動画データを記録媒体に記録する手段であって、前記記録媒体に既に記録されている動画ファイルに前記圧縮された動画データを追加する記録手段と、前記記録指示に応じて、前記圧縮された動画データを前記動画ファイルに追加するための追加開始フレームを決定し、前記追加開始フレームから前記圧縮された動画データを前記動画ファイルに追加するように前記記録手段を制御する制御手段とを有し、前記制御手段は、前記動画ファイルに格納された動画データの最後のフレームの識別情報が、前記圧縮された動画データのうち前記記録指示の所定フレーム数前の所定のフレームの識別情報と一致する場合、前記最後のフレームの識別情報と一致しない識別情報が割り当てられた、前記所定のフレームから決められたフレーム数だけ前、或いは後のフレームを前記追加開始フレームとして決定する。
本発明によれば、「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式の動画データを連結したとしても、制約に違反しない動画データを生成することができる。
本実施形態における撮像装置の構成を示すブロック図である。 ムービーダイジェストモードの処理を示すフローチャートである。 ムービーダイジェストモードの撮影による動画データの状態を示すフローチャートである。 追記処理を示すフローチャートである。 動画ファイルの状態を説明するための図である。 本実施形態の符号化復号化処理部の構成を示す図である。
以下、図面を参照して本発明の実施例を詳細に説明するが、この発明は以下の実施の形態に限定されない。
[第1の実施形態]
本実施例においては、動画撮影中に静止画撮影を行うことができる撮像装置について説明する。本実施例の撮像装置は、動画データの圧縮方式として、「MPEG−4 AVC/H.264」を使用するものとして説明する。しかし、これは一例であり、「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式であればどのような圧縮方式であってもよい。すなわち、圧縮方式が「MPEG−4 AVC/H.264」に限定されるものではない。
IDRフレームとは、フレーム内の情報のみから符号化するフレーム内符号化されたI(イントラ)フレームである。MPEG−4 AVC/H.264においては、後続のフレーム間符号化を行うPフレームやBフレームは、このIDRフレーム以前のフレームを参照することができないように定められている。また、MPEG−4 AVC/H.264においては、IDRフレームに対してIDRフレームの識別ID(idr_pic_id)が付与されており、隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない(ISO/IEC14496−10参照)、と規定されている。
また、静止画データについては、JPEG方式で圧縮されるものとして説明するが、これは一例であり、どのような圧縮方式を用いても良いし、圧縮を行わなくてもよい。
また、これらの動画データ、静止画データは、FAT(File Allocation Table)ファイルシステムやexFATファイルシステムでフォーマットされた記録媒体に記録され、ファイルとして管理されるものを例にとって説明する。しかし、これは一例であって、これ以外のファイルシステムであってもかまわない。
本実施例の撮像装置は、動画撮影モードの一つである、「ムービーダイジェストモード」に移行すると、撮像部により得られた画像データを順次、前述のIDRフレームとして、圧縮、符号化し圧縮された動画データをRAMに記憶していく。このRAMには、少なくとも最新の所定のフレーム数の動画データを常に保持する。そして、静止画撮影の指示が入力されると、静止画撮影を行うとともに、RAMに保持されている最新の所定の数のIDRフレームを動画データとして記録媒体に記録する。本実施例の撮像装置は、このとき、所定の条件下以外では、記録媒体に記録されている既存の動画ファイルの動画データに対して、RAMに保持されていた所定フレーム数の動画データを追記して記録することができる。なお、RAMに保持されている最新の所定のフレーム数のよりにRAMに記憶されたフレームについては消去してもよい。
本実施例の撮像装置の特徴的な構成の一つは、以下である。
「ムービーダイジェストモード」において、記録媒体に記録されている既存の動画ファイルの動画データの最後のフレームと、追記する動画データの最初のフレームのIDRフレーム識別ID(idr_pic_id)とが同じにならないようにすることができる。
そのために、「ムービーダイジェストモード」に移行すると、IDRフレームとして圧縮、符号化されたフレームの数を順次カウントする。そして、そのフレーム数から、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報を算出する。
静止画記録の指示が入力された時点より、所定フレーム数前のフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報の算出方法は、以下である。まず、静止画記録の指示が入力された時点で、カウントされているIDRフレームとして圧縮、符号化されたフレームの数から、所定フレーム数前のフレーム番号を算出する。そして、符号化復号化処理部のIDRフレーム識別ID(idr_pic_id)の付与周期で所定フレーム数前のフレーム番号を除算して、「あまり」を算出する。そして、その「あまり」から静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームのIDRフレーム識別ID(idr_pic_id)を求める。
なお、既存の動画ファイルは、MOV形式の動画ファイルであって、ストリームデータの「mdatアトム」、動画データのストリームデータに関連する情報の「moovアトム」を有する。そして、「moovアトム」のユーザーデータアトム「udtaアトム」に、既存動画ファイルの動画データの最後のフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報が記録されている。
本実施例の撮像装置はこれらの情報に基づいて、記録媒体に記録されている既存の動画ファイルの動画データの最後のフレームと、追記する予定の動画データの最初のフレームのIDRフレーム識別ID(idr_pic_id)とが同じであるか否かを判定する。
そして、IDRフレーム識別ID(idr_pic_id)が異なると判定した場合には、既存動画ファイルの動画データの最後に連続するようにRAMに保持された所定フレーム数の動画データを追記して記録する。このとき、追記する動画データの先頭フレームは、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームである。
逆に、IDRフレーム識別ID(idr_pic_id)が同じであると判定した場合には、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームとは異なるフレームを先頭フレームとして追記を行う。具体的には、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームよりも15フレーム後(新しい)または前(古い)のフレームを追記する動画の先頭フレームとして追記を行う。
このようにすることで、本実施例の撮像装置は、追記を行う際に、隣接するIDRフレームのIDRフレーム識別ID(idr_pic_id)を重複させないようにすることができる。
本実施例の撮像装置は、追記後の動画データを既存動画ファイルに格納し、「moovアトム」のユーザーデータアトム「udtaアトム」に、追記後の動画データの最後のフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報を記録する。これは、追記する動画データの最後のフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報を用いる。なお、動画ファイルの「moovアトム」のユーザーデータアトム「udtaアトム」に、動画データの最後のフレームのIDRフレーム識別ID(idr_pic_id)に対応する情報を記録するものとしたが、動画ファイルのヘッダに記録してもよい。
本実施例の撮像装置は、このような特徴的な構成により、記録媒体に記録されている既存の動画ファイルの動画データの最後のフレームと、追記する動画データの最初のフレームのIDRフレーム識別ID(idr_pic_id)とが同じにならないようにすることができる。すなわち、「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式の動画データを連結(追記)したとしても、制約に違反しない動画データを生成することができる。なお、IDRフレーム識別ID(idr_pic_id)は、符号化されたIDRフレームの複数のマクロブロックからなるスライスのスライスヘッダに格納され、圧縮、符号化時に付与されるものである。
以下、このような撮像装置について説明する。
なお、本実施例においては、IDRフレーム識別ID(idr_pic_id)(IDRフレーム識別情報)を簡単にするため、「IDR_ID」と呼称するものとする。
図1は、本実施例の撮像装置100の構成を示すブロック図である。
撮像装置100は、CPU101、RAM102、FlashROM103、操作部104を有する。また、撮像装置100は、撮像部110、画像処理部111、音声入力部120、音声処理部121、表示部130、表示制御部131、音声出力部132、記録媒体140、記録再生部141、通信部150を有する。また、撮像装置100は、符号化復号化処理部160を有する。
図1において、CPU101は、FlashROM103に記録された撮像装置100の制御プログラムをRAM102に展開し、RAM102をワークメモリとして使用しながら、撮像装置100の各ブロックを制御するものである。操作部104は、例えば、電源ボタン、記録ボタン、ズーム調整ボタン、オートフォーカスボタンなどの撮影に関連する各種操作を入力するスイッチ類を有する。また、メニュー表示ボタン、決定ボタン、その他カーソルキー、ポインティングデバイス、タッチパネル等を備え、ユーザによりこれらのキーやボタン、タッチパネルが操作されるとCPU101に操作信号を送信する。
撮像部110は、レンズにより取り込まれた被写体の光学像を、絞りにより光量を制御して、CCDセンサやCMOSセンサ等の撮像素子により画像信号に変換し、得られたアナログ画像信号をデジタル画像信号に変換して一時的にRAM102に記憶するものである。RAM102に記憶されたデジタル画像信号は、その後、画像処理部111に送信される。画像処理部111は、次の処理を実行するプログラムを搭載したマイクロコンピュータである。画像処理部111は、デジタル画像信号のホワイトバランスや色、明るさなどをユーザに設定された設定値や画像の特性から自動的に判定した設定値に基づいて調整する画質調整処理を行い、処理をしたデジタル画像信号を再びRAM102に記憶させるものである。なお、画像処理部111の処理は、CPU101がFlashROM103に記録された前述の処理を実行する為のプログラムをRAM102に展開して実行するようにしてもよい。
音声入力部120は、たとえば、内蔵された無指向性のマイクまたは音声入力端子を介して接続された外部マイク等により、撮像装置100の周囲の音声を集音(収音)し、取得したアナログ音声信号をデジタル信号に変換してRAM102に一時的に記憶させるものである。RAM102に記憶されたデジタル音声信号は、その後、音声処理部121に送信される。音声処理部121は、次の処理を実行するプログラムを搭載したマイクロコンピュータである。音声処理部121では、記録時においては、RAM102に記憶されたデジタル音声信号の、レベルの適正化処理や雑音低減処理等の処理を行い、処理をしたデジタル音声信号を再びRAM102に記憶させるものである。また、必要に応じて、音声信号を圧縮する処理を行う。音声圧縮方式については、AC3、AAC等の公知の一般的な音声圧縮方式を用いており、本発明の特徴とは関係ないので説明を省略する。また、再生時においては、記録媒体140から記録再生部141によって読出された音声ファイルや動画ファイルに含まれる圧縮音声データ復号する処理も行う。なお、音声処理部121の処理は、CPU101がFlashROM103に記録された前述の処理を実行する為のプログラムをRAM102に展開して実行するようにしてもよい。
また、表示制御部131は、表示部130に画像を表示するための表示制御を行うマイクロコンピュータであって、メモリ104に一時的に記憶されたデジタル画像信号を読み出して、表示部130に表示させる処理を行う。また、記録媒体140から記録再生部141によって読出された動画ファイルや静止画ファイルに含まれる画像データの画像を表示部130に表示させる処理も行う。表示部130は、たとえば撮像装置100に搭載された液晶パネルや有機ELパネル等であっても良いし、撮像装置100とは別の表示装置(たとえば、テレビ、モニタ、プロジェクタ)であってもよい。なお、表示制御部131の処理は、CPU101がFlashROM103に記録された前述の処理を実行する為のプログラムをRAM102に展開して実行するようにしてもよい。
符号化復号化処理部160は、次の処理を実行するプログラムを搭載したマイクロコンピュータである。符号化復号化処理部160では、記録時においては、画像処理部111により処理されRAM102に記憶されたデジタル画像信号に基づいて、画像圧縮処理を行い、圧縮された動画データや静止画データを生成し、RAM102に一時的に記憶する処理を行う。また、再生時においては、記録媒体140から読出された画像ファイルの圧縮された動画データや静止画データを復号してデジタル画像信号を抽出し、RAM102に記憶していく処理を行う。なお、CPU101がFlashROM103に記録された前述の処理を実行する為のプログラムをRAM102に展開して実行するようにしてもよい。
本実施例においては、符号化復号化処理部160は、「MPEG−4 AVC/H.264」方式で、撮像部110により得られた画像データを圧縮して動画データを生成する。「MPEG−4 AVC/H.264」方式においては、入力された画像データを、フレーム内予測符号化方式(イントラ符号化方式)、動き補償前方予測フレーム間符号化方式を用いて圧縮、符号化を行う。また、フレーム内予測符号化方式を用いて符号化したフレームのうち指定したフレームを、前述の動き補償前方予測フレーム間符号化方式のフレームがその指定したフレームよりも前のフレームを参照できなくするためのフラグを付加することができる。これがIDRフレームとなり、このIDRフレームには、IDR_IDを付加する機能を有する。IDR_IDは、周知の「MPEG−4 AVC/H.264」規格(ISO/IEC 14496−10参照)に記載されているように、複数のマクロブロックからなるスライスのスライスヘッダに格納される。そのため、通常、IDR_IDを確認するためには、IDRフレームとして圧縮、符号化されたフレームを復号化しなければならない。
なお、本実施例の符号化復号化処理部160は、すべてのフレームをIDRフレームとして圧縮、符号化し、すべてのフレームにIDR_IDを付加することもできる。
また、本実施例の符号化復号化処理部160は、IDR_IDを0から255の番号を順番に使用して符号化を行うものとする。すなわち、すべてのフレームをIDRフレームとして圧縮符号化する場合は、1フレーム目には、IDR_IDとして「0」が付与され、2フレーム目には、IDR_IDとして「1」が付与される。また、256フレーム目には、IDR_IDとして「255」が付与され、257フレーム目には、IDR_IDとして「0」が付与される。すなわち、IDR_IDの最終番号の次はまた最初の番号を使用する。従って、すべてのフレームをIDRフレームとして圧縮符号化する場合は、nフレーム目には、nを256で除算した「あまり」から1を減算した値がIDR_IDとなる。なお、本実施例では、0から255までを使用するものとしたが、MPEG−4 AVC/H.264」規格(ISO/IEC 14496−10参照)の範囲内の65535番までであれば何番までを使用しても構わない。
また、本実施例の符号化復号化処理部160は、画像信号の圧縮符号化作業を一度中断すると、次に画像信号をIDRフレームとして圧縮符号化する場合には、再びIDR_IDを「0」から順番に付与していく。
なお、本実施例においては、フレーム内予測符号化方式(イントラ符号化方式)で符号化されたフレームをIフレームと呼び、動き補償前方予測フレーム間符号化方式で符号化されたフレームをPフレームと呼ぶ。
後述する、「ムービーダイジェストモード」では、撮影された動画の全てのフレームがIフレームとして符号化され、IDRフレームに設定される。また、「動画撮影モード」では、15フレーム毎に1フレームがIフレームとして符号化され、残りの14フレームがPフレームとして符号化される。また、「動画撮影モード」において、前方予測フレーム間圧縮、後方予測フレーム間圧縮、両方向予測フレーム間圧縮のいずれかを選択的に使用できるBフレームを使用しても構わない。
次に、記録再生部141は、次の処理を実行するプログラムを搭載したマイクロコンピュータである。記録再生部141では、動画記録時においては、RAM102に記憶されている、符号化復号化処理部160により生成された圧縮動画データ、音声処理部121で生成された音声データ、撮影日等の各種情報とともに、動画ファイルとして記録媒体140に書き込む。また静止画記録時においては、ROM102に記憶されている静止画データを撮影日等の各種情報とともに静止画ファイルとして記録媒体140に記録する。動画ファイルを記録媒体140に記録する際は、圧縮動画データと音声データとからなるデータストリームを形成し、順次記録媒体140に記録していき、ファイルヘッダ等を付加してFATやexFAT等のファイルフォーマットに適合した形で動画ファイルを記録媒体に記録する。また、再生時においては、記録媒体140に記録された動画ファイルや静止画ファイルを前述のファイルフォーマットに従って読出す。読出された動画ファイルや静止画ファイルは、CPU101によりヘッダが解析され、圧縮された動画データ、静止画データが抽出される。抽出された圧縮動画データ、静止画データは、RAM102に記憶されて、符号化復号化処理部160により復号される。なお、記録再生部141の処理は、CPU101がFlashROM103に記録された前述の処理を実行する為のプログラムをRAM102に展開して実行するようにしてもよい。
また、記録媒体140は、撮像装置に内蔵された記録媒体でも、取外し可能な記録媒体でもよい。例えば、ハードディスク、光ディスク、光磁気ディスク、CD−R、DVD−R、磁気テープ、不揮発性の半導体メモリ、フラッシュメモリ、などのあらゆる方式の記録媒体を含む。取り外し可能な記録媒体を用いる場合には、記録再生部141は、それらの取り外し可能な記録媒体を受け入れるためのインタフェースを含む。
次に音声出力部132は、例えばスピーカや音声出力端子(アナログ端子/デジタル端子)である。例えばスピーカであれば、CPU101によりflashROM103に記録されている所定のデジタル音声信号の出力が指示されたときにデジタル音声信号をアナログ音声外部に変換し、外部に音声として出力する。また、動画ファイルに格納された音声データの示すデジタル音声信号をアナログ音声信号に変換し、外部に音声として出力する。また、音声出力端子であれば、動画ファイルに格納された音声データの示すデジタル音声信号をアナログ音声信号に変換して外部装置(外付けスピーカなど)に出力するか、デジタル音声信号をそのまま外部装置(光デジタル端子搭載のオーディオコンポなど)に出力する。
また、通信部150は、撮像装置100とは異なる外部装置との間で、制御信号や動画ファイル、静止画ファイル、各種データ等を送受信するものであり、有線接続、無線接続を問わず接続可能である。なお、通信方式はどのような方式であっても良い。
ここで、本実施例の撮像装置100の通常の動作について説明する。
本実施例の撮像装置100は、ユーザが操作部104の電源ボタンを操作すると、操作部104から制御部101に起動の指示が出される。この指示を受けて、制御部101は、不図示の電源供給部を制御して、撮像装置100の各ブロックに対して電源を供給させる。
電源が供給されると、制御部101は、例えば、操作部104のモード切り換えスイッチが、例えば、「静止画撮影モード」、「ムービーダイジェストモード」、「動画撮影モード」、「再生モード」等のどのモードであるかを操作部104からの指示信号により確認する。
本実施例の撮像装置100は、特に「動画撮影モード」、「ムービーダイジェストモード」において、動画データを「MPEG−4 AVC/H.264」の圧縮方式で圧縮する例について説明する。
(「静止画撮影モード」)
「静止画撮影モード」であれば、CPU101は、撮像装置100の各ブロックに、静止画撮影の準備をさせる。操作部104から撮影開始の指示が入力されるまでは、CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させように表示制御部131を制御する。なお、画像処理部111により処理され、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させるように表示制御部131を制御しても良い。なお、本実施形態では、撮像部110から出力されるデジタル画像信号のフレームレートは、30フレーム/秒であるとする。また、本実施形態では、記録する静止画のサイズ(画素数)を複数のサイズから選択した一つのサイズに設定することができる。
この状態で、CPU101は、操作部104により撮影開始の指示が入力されたか否かを判定する。撮影開始の指示があると、撮像部110のシャッター速度、絞り、フォーカス位置などを調整し、撮像部110のシャッター開放中に撮像素子により得られたアナログ画像信号をデジタル画像信号に変換して出力させる。CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号に対して設定値に基づいて画質調整処理を施すように画像処理部111を制御する。そして、CPU101は、画像処理部111で処理されたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号を符号化して静止画データを生成するように符号化復号化処理部160を制御する。次にCPU101は、符号化復号化処理部160で処理された静止画データをRAM102に再び記憶させ、記憶された静止画データを静止画ファイルとして記録媒体140に記録するように記録再生部141を制御する。
この処理が終了すると、CPU101は、再び静止画撮影の準備状態に各ブロックを戻す。
(「動画撮影モード」)
次に、「動画撮影モード」であれば、CPU101は、撮像装置100の各ブロックに、動画撮影の準備をさせる。操作部104から撮影開始の指示が入力されるまでは、CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させように表示制御部131を制御する。なお、画像処理部111により処理され、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させるように表示制御部131を制御しても良い。なお、本実施形態では、撮像部110から出力されるデジタル画像信号のフレームレートは、30フレーム/秒であるとする。また、本実施形態では、記録する動画のサイズ(画素数)を複数のサイズから選択した一つのサイズに設定することができる。また、本実施例の撮像装置100は、動画データを記録媒体に記録する場合、15フレームの符号化されたフレーム画像と、0.5秒分の圧縮または非圧縮の音声データとを一組として、記録媒体に記録するものとする。
この状態で、CPU101は、操作部104により撮影開始の指示が入力されたか否かを判定する。撮影開始の指示があると、CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号に対して設定値に基づいて画質調整処理を施すように画像処理部111を制御する。CPU101は動画撮影を継続している間、30フレーム/秒で撮像部110により出力されるデジタル画像信号を順次、画像処理部111に処理させる。そして、CPU101は、画像処理部111で処理されたデジタル画像信号を、順次RAM102に記憶させる。
次に、CPU101は、RAM102に記憶された複数フレームのデジタル画像信号を順次符号化して動画データを生成するように符号化復号化処理部160を制御する。そして、CPU101は、符号化復号化処理部160で符号化された各フレーム画像を順次RAM102に記憶させていく。
一方、撮影開始の指示があると、CPU101は、音声に関する処理をするようにも各ブロックを制御する。CPU101は、音声入力部120から出力されるデジタル音声信号を順次RAM102に記憶し、RAM102に記憶されたデジタル音声信号に音質調整処理を施すように音声処理部121を制御する。また、音声圧縮の設定がされている場合には、CPU101は設定に従って、例えばAC3、AACの音声圧縮方式で音声信号を圧縮するように音声処理部121を制御する。そして、CPU101は、音声処理部121で処理した音声データをRAM102に順次記憶させていく。
次にCPU101は、RAM102に記憶された動画データ、音声データを順次、記録媒体140に記録するように、記録再生部141を制御する。このとき例えば、15フレーム分(0.5秒分)の符号化された画像データと、0.5秒分の音声データとを一組にし、必要な各種情報を付加したデータストリームを形成し、ファイルシステムに従って記録媒体140に記録するように、記録再生部141を制御する。なお、30フレーム分(1秒分)の動画データと、1秒分の音声データを一組としても良い。CPU101は、これらの動作を動画撮影の停止の指示があるまで継続する。
そして、操作部104により撮影停止の指示が入力されると、CPU101は、画像処理部111の処理を停止させ、RAM102に記憶されたデジタル画像信号の符号化が終了した時点で符号化復号化処理部160の符号化処理を停止させる。そして、CPU101は、RAM102に記憶されている符号化済みの動画データ、音声データを最後まで記録媒体140に記録してから動作を停止するように記録再生部141を制御する。なお、必要に応じて、記録終了後に、動画ファイルの動画データの先頭のフレームや先頭から数フレームの画像データを符号化復号化処理部160に送信して復号させ、復号されたデジタル画像信号の画素数を間引いたサムネイル画像データを生成して、動画ファイルに関連づけて記録するようにしても良い。
この処理が終了すると、CPU101は、再び動画撮影の準備状態に各ブロックを戻す。
(「再生モード」)
「再生モード」であれば、CPU101は、記録媒体140に記録されている動画ファイル、静止画ファイルのうち指定されたファイルに関連づけられたサムネイル画像データを読出すように記録再生部141を制御する。そして、CPU101は、これらのサムネイル画像データを示す画像を表示部130に表示するよう表示制御部131を制御する。
そして、操作部104から指定されたサムネイルに対応するファイルを再生する指示が入力されると、CPU101は、指定された動画ファイルや静止画ファイルを記録媒体140から読出すように記録再生部141を制御する。そして、CPU101は、読出した動画ファイルや静止画ファイルに含まれる各種情報、動画データ、音声データ、静止画データを抽出してRAM102に記憶させる。
静止画ファイルを再生する場合は、CPU101は、RAM102に記憶された静止画データを復号するように符号化復号化処理部160を制御し、復号されたデジタル画像信号をRAM102に記憶させる。そして、RAM102に記憶させた復号されたデジタル画像信号を表示部130に表示するように表示制御部131を制御する。
また、動画ファイルを再生する場合は、CPU101は、RAM102に記憶された動画データを復号するように符号化復号化処理部160を制御し、復号された各フレームのデジタル画像信号を順次、RAM102に記憶させる。そして、RAM102に記憶させた復号された各フレームのデジタル画像信号を表示部130に、順次表示するように表示制御部131を制御する。また、CPU101は、RAM102に記憶された音声データを動画の復号、表示のタイミングに合わせて、音声出力部132に送信し、音声を出力させる。なお、音声データが圧縮されたものである場合には、RAM102に記憶された音声データを復号するように音声処理部121を制御し、復号された音声データを音声出力部132に送信する。
(「ムービーダイジェストモード」)
次に、「ムービーダイジェストモード」であれば、CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させように表示制御部131を制御する。なお、画像処理部111により処理され、RAM102に記憶されたデジタル画像信号を読出させて表示部130に画像を表示させるように表示制御部131を制御しても良い。なお、本実施形態では、撮像部110から出力されるデジタル画像信号のフレームレートは、30フレーム/秒であるとする。また、本実施形態では、記録する動画のサイズ(画素数)を複数のサイズから選択した一つのサイズに設定することができる。
ここで、「ムービーダイジェストモード」であれば、表示部130に画像を表示させるだけでなく、CPU101は、以下の制御を行う。CPU101は、RAM102に記憶されたデジタル画像信号に対して設定値に基づいて画質調整処理を施すように画像処理部111を制御する。CPU101は動画撮影を継続している間、30フレーム/秒で撮像部110により出力されるデジタル画像信号を順次、画像処理部111に処理させる。次に、CPU101は、画像処理部111で画像処理が施された各フレームのデジタル画像信号を順次動画データの各フレームとして圧縮、符号化して、RAM102に記憶するように符号化復号化処理部160を制御する。順次動画データとして圧縮、符号化される各フレームは、IDRフレームとして圧縮、符号化される。
このとき、CPU101は、RAM102に少なくとも、所定のフレーム数のIDRフレームとして圧縮、符号化されたフレーム画像を保持する。このとき保持されるのは常に最新の所定フレーム数のIDRフレームであって、それ以前にRAM102に記憶されたIDRフレームのフレーム画像に関しては、削除してもかまわない。なお、本実施例においては、4秒分のフレーム画像、すなわち、30フレーム×4秒の120フレームのIDRフレームとして圧縮、符号化されたフレーム画像をRAM102に保持する。
また、CPU101は、RAM102に符号化復号化処理部160により圧縮、符号化されたフレーム数をカウントした値を同時に記憶する。
このように、本実施例の撮像装置100は、「ムービーダイジェストモード」にモードが設定されると、RAM102に所定のフレーム数のIDRフレームとして圧縮、符号化されたフレーム画像が保持する。
また、「ムービーダイジェストモード」にモードが設定されると、CPU101は、音声に関する処理をするようにも各ブロックを制御する。CPU101は、音声入力部120から出力されるデジタル音声信号を順次RAM102に記憶し、RAM102に記憶されたデジタル音声信号に音質調整処理を施すように音声処理部121を制御する。また、音声圧縮の設定がされている場合には、CPU101は設定に従って、例えばAC3、AACの音声圧縮方式で音声信号を圧縮するように音声処理部121を制御する。そして、CPU101は、音声処理部121で処理した音声データをRAM102に順次記憶させていく。
この状態で、操作部104により静止画撮影の指示が入力されると、CPU101は、動画データのフレーム画像用の撮影を停止し、静止画撮影を行うように撮像部110を制御する。すなわち、CPU101は、撮像部110のシャッター速度、絞り、フォーカス位置などを調整し、撮像部110のシャッター開放中に撮像素子により得られたアナログ画像信号をデジタル画像信号に変換して出力させる。CPU101は、撮像部110により得られたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号に対して設定値に基づいて画質調整処理を施すように画像処理部111を制御する。そして、CPU101は、画像処理部111で処理されたデジタル画像信号をRAM102に記憶させ、RAM102に記憶されたデジタル画像信号を符号化して静止画データを生成するように符号化復号化処理部160を制御する。次にCPU101は、符号化復号化処理部160で処理された静止画データをRAM102に再び記憶させ、記憶された静止画データを静止画ファイルとして記録媒体140に記録するように記録再生部141を制御する。
ここで、「ムービーダイジェストモード」であれば、CPU101は、操作部104により静止画撮影の指示が入力されると、以下の制御も行う。CPU101は、RAM102に保持されている、所定のフレーム数のIDRフレームとして圧縮、符号化されたフレーム画像(IDRフレーム)を動画データとして、記録媒体140に記録するように記録再生部141を制御する。このとき、CPU101は、記録媒体140に記録されている既存の動画ファイルの動画データに対して、RAM102に保持されている所定のフレーム数のフレーム画像(IDRフレーム)からなる動画データを追記して記録する処理を行う。
追記するフレームの先頭フレームは、基本的には、静止画記録の指示が入力された時点から所定フレーム数前に符号化復号化処理部160に圧縮、符号化されたフレームであり、本実施例においては、例えば120フレーム前のフレームを先頭フレームとしている。すなわち、静止画記録の指示が入力された時点で、RAM102に最後に記憶されたフレームの番号が1500であるとすると、1381フレーム目を先頭フレームとし、1500フレーム目までのフレームを追記対象のフレームとする。
具体的には後述するが、CPU101は、まず、記録媒体140に記録されている既存の動画ファイルの動画データが追記対象とするべき動画データであるかを判定し、追記記録を行うか、追記せずに新規記録を行うかを決定する。そして、追記を行う際、CPU101は、静止画記録の指示が入力された時点より、所定フレーム数前(120フレーム前)に、圧縮、符号化されてRAMに記憶されたフレームのフレーム番号を算出する。そのフレーム番号からIDR_IDに関する情報(d)を算出する。また、CPU101は、さらに既存動画ファイルの動画データの最後のフレームのIDR_IDに関する情報(e)を取得する。
そして、これらのフレームのIDR_IDに関する情報が同一であるか否かを判定する。これは、RAM102に保持されている追記対象の動画データと、記録媒体140に記録されている既存動画ファイルの動画データの連結部において、IDR_IDが一致してしまうか否かを判定するために行う判定である。
そして、CPU101は、追記対象の動画データの静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームと既存動画ファイルの動画データの最後のフレームとが一致しない場合には、追記処理を行う。一方で、一致する場合には、CPU101は、追記対象の動画データの静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームから15フレームを削除し、16フレーム目からを追記を開始するフレームとする。すなわち、追記対象としていた動画データの追記の開始フレームを15フレーム後にずらして、追記記録を行う。また、本実施例では、追記対象としていた動画データの先頭の15フレーム削除するものとしたが、1フレーム以上削除すれば何フレーム削除してもよい。なお、削除しなくてもよい。すなわち、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームより後のフレームを追記の開始フレームとしてもよい。また、逆に、追記対象の動画データを15フレームまたは1フレーム以上増加させてもよい。すなわち、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームより前のフレームを追記対象としてもよい。
すなわち、CPU101は、RAM102に記憶された動画データの、静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームと既存動画ファイルの動画データの最後のフレームとが一致する場合には、次の処理を行う。CPU101は、追記対象の動画データの追記開始フレームの位置を静止画記録の指示が入力された時点より、所定フレーム数前に圧縮、符号化されてRAMに記憶されたフレームではない、フレームに変更するのである。変更は、静止画記録の指示が入力された時点から所定フレーム数前の圧縮、符号化されたフレームを基準として、それより所定フレーム後に圧縮、符号化されたフレームに変更するか、または、それよりも所定フレーム前に圧縮、符号化されたフレームに変更する。
例えば、追記する動画データの先頭のフレームのIDR_IDに関する情報(d)が、140である場合には、先頭フレームをそれより後に圧縮、符号化された154フレーム目に変更する。または、先頭フレームをそれよりも前に圧縮、符号化された126フレーム目に変更しても良い。なお、追記対象の動画データを増加させる場合には、RAM102には、通常追記するフレーム数に加えて、増加させるのに必要なフレーム数のIDRフレームを余分にバッファリングする。
この処理により、追記対象の動画データと既存動画ファイルの動画データの連結部分において、IDR_IDが一致してしまう可能性を低減することができる。
そして、追記記録、新規記録が終了すると、追記が完了した動画データの最終フレームのIDR_IDに関する情報を、追記後の動画ファイルの「moovアトム」のユーザーデータアトム「udtaアトム」に格納する。追記が完了した動画データの最終フレームのIDR_IDは、追記対象の動画データの最終フレームのIDR_IDと同じである。
なお、音声についても同様に、CPU101は、RAM102に保持されている音声データを動画ファイルの音声として、記録媒体140に記録するように記録再生部141を制御する。そして、CPU101は、フレーム画像と同様に、記録媒体140に記録されている既存の動画ファイルの音声データに対して、RAM102に保持されている音声データを追記して記録する処理を行う。
CPU101は、RAM102に記憶された動画データ、音声データを記録媒体140に記録する際は、通常の動画データと同様に、以下のように処理を行う。すなわち、15フレーム分(0.5秒分)の符号化された画像データと、0.5秒分の音声データとを一組にし、必要な各種情報を付加したデータストリームを形成し、ファイルシステムに従って記録媒体140に記録するように、記録再生部141を制御する。なお、30フレーム分(1秒分)の動画データと、1秒分の音声データを一組としても良い。
このように、「ムービーダイジェストモード」においては、静止画撮影の指示が入力されると、CPU101は、静止画撮影、静止画記録、動画追記記録などの動作を行う。そして、これらの動作が完了すると、CPU101は、再び、動画のフレーム画像を撮影し、IDRフレームとして圧縮、符号化して、RAM102に記憶するように符号化復号化処理部160を制御する。
なお、記録媒体140に記録されている既存の動画ファイルの動画データが追記対象とするべき動画データでない場合には、CPU101は、新規に動画ファイルとして動画データと音声データとを記録媒体140に記録するように、記録再生部141を制御する。
なお、「ムービーダイジェストモード」においては、フレームレートや動画のサイズは、所定の値に固定される。
ここで、本実施例の撮像装置の「ムービーダイジェストモード」の動作について図2のフローチャートを用いて、詳細に説明する。
図2は、本実施例の撮像装置100が「ムービーダイジェストモード」で動画記録を開始してから終了するまでの動作を示すフローチャートである。図2のフローチャートは、CPU101が、撮像装置100の各ブロックを制御することにより実行される動作を示すものである。
(S210)
まず、操作部104からの入力により、「ムービーダイジェストモード」に切り替える指示が入力されると、CPU101は、RAM102に記憶されている、符号化復号化処理部160により符号化されたフレーム数(a)を初期化して、a=0とする。
(S211)
次に、CPU101は、動画の1フレームに相当する画像を撮像するように撮像部110を制御し、得られた画像に動画用の所定の画像処理を施すように画像処理部111を制御する。
(S212)
次に、CPU101は、S211で撮像された1フレームの画像信号をIDRフレームとして符号化するように符号化復号化処理部160を制御する。前述したように、このとき符号化復号化処理部160は、符号化されたIDRフレームのスライスヘッダに「IDRID」を付加する。なお、符号化復号化処理部160は、前述したように、IDRフレームとして符号化を行うたびに、IDR_IDとして、「0」から「255」までの数字を順次インクリメントしながら付与する。
(S213)
次に、CPU101は、S212で圧縮、符号化されたIDRフレームをRAM102にバッファ(一時的に記憶)する。
(S214)
次に、CPU101は、RAM102に記憶されている、符号化復号化処理部160により符号化されたフレーム数「a」を「1」インクリメントして、a=a+1とする。
なお、本実施例ではRAM102に、圧縮、符号化されたIDRフレームおよび、符号化復号化処理部160により符号化されたフレーム数「a」を記憶するものとしているが、同一のRAMに記憶する必要は特になく、別々のRAMに記憶しても良い。
(S220)
次に、CPU101は、操作部104により静止画撮影の指示が入力されたか否かを判定する。そして、静止画撮影の指示が入力されていない場合(S220でNo)、CPU101は、S211からS214の処理を繰り返す。すなわち、静止画撮影の指示が入力されるまでは、撮像部110により得られ、画像処理部111により処理された画像信号を順次、符号化復号化処理部160によりIDRフレームとして圧縮、符号化させ、RAM102に順次記憶する。そして、RAM102に記憶されている、圧縮、符号化されたフレーム数「a」を順次インクリメントしていく。
なお、本実施例の撮像装置100においては、例えば2秒分のフレーム画像(60フレーム)がRAM102に記憶されるまでは、S211からS214の処理を繰り返すようにしてもよい。
(S221)
そして、静止画撮影の指示が入力された場合(S220でYes)、CPU101は、動画用の撮像を停止するように撮像部110を制御し、同様に動画用の画像処理を停止するように画像処理部111を制御する。
(S222)
次に、CPU101は、静止画撮影の指示に基づく静止画撮影を行う。すなわち、CPU101は、静止画撮影用の設定に従って、撮像部110のシャッター速度、絞り、フォーカス位置などを調整させ、撮像部110にシャッター開放中に撮像素子により得られたアナログ画像信号をデジタル画像信号に変換して出力させる。そして、CPU101は、得られた画像信号に静止画用画像処理を施すように画像処理部111を制御する。そして、画像処理部111で処理された画像信号をRAM102に記憶させる。
(S223)
次に、CPU101は、画像処理部111に処理された画像信号をたとえばJPEGとして圧縮、符号化して静止画データを生成するように符号化復号化処理部160を制御する。次にCPU101は、符号化復号化処理部160で処理された静止画データをRAM102に再び記憶させる。
(S224)
次に、CPU101は、RAM102に記憶された静止画データを静止画ファイルとして記録媒体140に記録するように記録再生部141を制御する。
次に、CPU101は、記録媒体140に記録されている既存の動画ファイルの動画データに対して、RAM102に記憶されているIDRフレームの動画データを追記する処理を行う。
(S230)
まず、CPU101は、記録媒体140に記録されている既存の動画ファイルの動画データが追記対象とするべき動画データであるかを判定し、追記記録を行うか(S230でYes)、追記せずに新規記録を行うか(S230でNo)を決定する。追記記録を行わない条件については、後述する。
(S231)
そして、既存の動画ファイルの動画データが追記対象とするべき動画データであると判定した場合には(S230でYes)、CPU101は、以下の処理を行う。CPU101は、追記する予定の動画データの先頭のIDRフレームのIDR_IDに関する情報(d)を算出する。
具体的には、まず、符号化復号化処理部160により符号化されたフレーム数(a)をRAM102から読出し、追記する動画データの所定フレーム数(b)から、追記する予定の動画データの先頭のフレーム番号(c)を算出する。そして、先頭のフレーム番号(c)と、符号化復号化処理部160において付与されるIDR_IDの周期とから、追記する予定の動画データの先頭フレームのIDR_IDに関する情報(d)を算出する。すなわち、RAM102に記憶された動画データの、静止画記録の指示が入力された時点より、所定フレーム数(b)前に圧縮、符号化されてRAMに記憶されたIDRフレームのIDR_IDに関する情報(d)を算出する。
ここで、符号化復号化処理部160により符号化されたフレーム数(a)は、ムービーダイジェストモードに移行してから符号化復号化処理部160により圧縮、符号化されたフレーム数と同じ数を示しているといえる。そして、追記する動画データの所定のフレーム数(b)は、本実施例のように静止画撮影の指示が入力される前の4秒のIDRフレームの動画データを追記する設定の場合には、30フレーム/秒の4秒分であるため120フレームである。そうすると、追記する動画データの先頭のフレーム番号(c)は「c=a−b」で算出される。さらに、前述したように、符号化復号化処理部160において、付与するIDR_IDは0から255の256個であるので、追記する動画データの先頭のフレーム番号(c)を256で除算した「あまり」から1を減算した値が、IDR_IDと同じ数を示すといえる。ここでは、この「あまり」を算出し1を減算して、追記する動画データの先頭フレームのIDR_IDに関する情報(d)としている。
すなわち、図3Aに示すように、RAM102には、複数のIDRフレームが記憶されており、静止画記録の指示が入力された時点から120(b)フレーム遡ったフレームが追記する動画データの先頭となり、フレーム番号は(c)となる。そして、追記する動画データの先頭フレームのIDR_IDに関する情報(d)は、前述の計算より求めることができる。
例えば、a=1355である場合、c=1236であり、これを256で除算すると「あまり」は、212となり、d=211となる。
なお、RAM102に記憶されているIDRフレームの数が120フレーム無い場合には、追記する動画ファイルの先頭のフレーム番号は1(c=1)となり、よって、追記する動画データの先頭フレームのIDR_IDに関する情報は0(d=0)となる。
(S232)
次に、CPU101は、図3Bに示すように、既存動画ファイルの「moovアトム」のユーザーデータアトム「udtaアトム」を読出すように記録再生部141を制御し、既存動画ファイルの動画データの最終フレームのIDR_IDに関する情報(e)を取得する。
(S240)
次に、CPU101は、追記する予定の動画データの先頭のフレームのIDR_IDに関する情報(d)と、既存動画ファイルの動画データの最後のフレームのIDR_IDに関する情報(e)とが同一であるか否かを判定する。ここでいう、追記する予定の動画データの先頭のフレームとは、RAM102に記憶された動画データの、静止画記録の指示が入力された時点より、所定フレーム数(b)前に圧縮、符号化されてRAMに記憶されたフレームである。
(S241)
そして、d=eである場合には(S240でYes)、CPU101は、追記する動画データの先頭の(時間的に古い)15フレームをRAM102から削除する。
このようにすることで、追記する動画データの先頭のIDR_IDは、(d+15)または、(d−256+15)のいずれかになり、追記する動画データと、既存動画ファイルの動画データの連結位置においてIDR_IDが隣接しないようにすることができる。
すなわち、図3Cに示すように、RAM102に記憶されている追記する予定の動画データの先頭フレーム(c)から15フレームを削除し、追記開始フレームの位置をc+15フレーム目とするのである。
なお、本実施例では、15フレーム削除するようにしたが、これは一例であって、1フレームであっても、2フレームであってもよい。ただし、符号化復号化処理部160のIDR_IDで使用する番号の周期が256フレームであるため、256フレーム削除したとすると、削除後の先頭フレームのIDR_IDは、削除前と同じになってしまう。つまり、符号化復号化処理部160のIDR_IDで使用する番号の倍数を除いた整数フレーム以外であれば何フレームであってもよい。なお、符号化復号化処理部160により符号化されたフレーム数(a)と、追記する動画データのフレーム数(b)とから求められた、追記する動画データの先頭のフレーム(c)以降を追記すれば、フレームをRAM102から削除しなくても良い。
また、本実施例では、追記する予定の動画データの追記開始フレームを時間的に後方向に変更する例について説明したが、時間的に前方向に変更しても良い。すなわち、前述の例を用いて説明すると、図3Dに示すように追記開始フレームをc−15フレーム目としてもよい。この場合も符号化復号化処理部160のIDR_IDで使用する番号の周期に合わせて256フレーム前を追記開始フレームとはしないようにする。
すなわち、本実施例においては、追記する予定の動画データの先頭フレームのIDR_IDに関する情報(d)と、既存の動画データの最終フレームのIDR_IRに関する情報(e)が一致する場合には、CPU101は、以下の処理を行う。CPU101は、追記する予定の動画データの先頭フレームとは異なるフレームが追記を開始するフレームとなるように追記対象の動画データを決定する。ここで、追記する予定の動画データの先頭のフレームとは、RAM102に記憶された動画データの、静止画記録の指示が入力された時点より、所定フレーム数(b)前に圧縮、符号化されてRAMに記憶されたフレームである。
(S242)
次に、CPU101は、追記する動画データのフレーム数が60フレーム未満になっているか否かを判定する。判定の結果、追記する動画データのフレーム数が60フレーム未満になった場合には(S242でYes)、後述する追記処理(S250)は行わない。
これは、2秒未満の動画データは、追記を行ってもかえって見にくくなってしまうので、このような場合には追記処理を行わないようにするためである。すなわちフレーム数が所定数未満になった場合には、追記処理を行わないのである。
(S250)
CPU101は、d=eでない場合(S240でNo)、追記する動画データのフレーム数が60フレーム未満になっていない場合(S242でNo)、追記記録処理を行う。
追記記録処理については、図4、5を用いて後述するが、S241間での処理により、図3Eに示すように、既存動画ファイルの動画データの最終フレームと、追記する動画データの先頭フレームのIDR_IDが同一にならない状態で、追記を行うことができる。
(S260)
CPU101は、既存の動画ファイルの動画データが追記対象とするべき動画データでないと判定した場合(S230でNo)、既存動画ファイルの動画データに対する動画データの追記は行わない。この場合には、RAM102に記憶されているIDRフレームの動画データを記録媒体140に記録するように記録再生部141を制御する。そして、記録した動画データの再生に必要なオフセット情報などの情報を作成し、新規な動画ファイルのヘッダ(またはmoovアトム)として、記録媒体140に記録するように記録再生部141を制御する。
(S270)
CPU101は、追記記録処理(S250)または、新規記録処理(S260)が終了すると、記録した動画ファイルの「moovアトム」のユーザーデータアトム「udtaアトム」に、記録した動画ファイルの最終フレームのIDR_IDに関する情報(e)を記録する。
ここでは、追記する動画データの最終フレームのIDR_IDに関する情報が最終フレームとなるので、符号化復号化処理部160により符号化されたフレーム数(a)を256で除算し、「あまり」から1を減算することで最終フレームのIDR_IDに関する情報(e)を算出する。そして、算出された情報を、記録した動画ファイルの「moovアトム」のユーザーデータアトム「udtaアトム」に、記録した動画ファイルの最終フレームのIDR_IDに関する情報(e)として記録する。
(S280)
次に、CPU101は、操作部104により「ムービーダイジェストモード」以外のモードへ切り替えられたか否かを判定し、モードが切り替えられると(S280でYes)、「ムービーダイジェストモード」の撮影動作を終了する。モードの切替えがない場合には(S280でNo)、再び処理をS210に戻して、一連の処理を再開する。
以上の処理により、本実施例の撮像装置100は、「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式の動画データを連結したとしても、制約に違反しない動画データを生成することができる。
ここで、S250の追記処理の動作について図4、5を用いて説明する。
図4は、動画データの連結(追記)をする編集を行う場合の撮像装置の制御動作を示す図であり、図5は、図4の各ステップに対応し、記録媒体140内の動画ファイルの状態を示す図である。図4の動作は、CPU101が、撮像装置100の各ブロックを制御することにより実行される処理である。
まず、CPU101は、S202で、RAM102に記憶させた所定時間分の動画データを記録媒体140の空き領域に記録するように記録再生部141を制御する(S410)。このとき、ファイルシステムとしては、FATを用いているため、基本的なルールに則り、空いているクラスタに動画データを記録する。
図5(a)は、RAM102のIDRフレームの追記する動画データを記録媒体140に記録する前の既存の動画ファイルの記録状態を示す図である。図5(a)においては、クラスタ1から2にかけて、既存の動画ファイルの動画データが記録されており、クラスタ3に既存の動画ファイルのヘッダが記録されている。動画ファイルは、このように、クラスタ1から3に記録されている。そして、FAT領域には、クラスタ番号3→1→2の順でファイルが記録されていることを示すようにFATエントリーにクラスタ番号が記録されている。すなわち、クラスタ番号3のFATエントリーには「1」が記録されており、クラスタ番号1のFATエントリーには「2」が記録されており、クラスタ番号2のFATエントリーには、ファイル終端を示す「FF」が記録されている。そのため、既存の動画ファイルは、クラスタ番号3→1→2の順で記録媒体からデータを読み出せばよいのである。
そして、S410で、RAM102に記憶された追記する動画データを記録媒体140に記録した状態を示す図が、図5(b)である。図5(b)では、クラスタ4、5に、所定時間分の動画データが記録された状態を示している。この状態では、FAT領域のFATエントリーを確認してもわかるように、追記する動画データは、クラスタ1から3に記録された既存の動画ファイルとは、別のクラスタ4、5に記録されたデータとなっている。
次に、S420の処理を説明する。ここで、S410の処理が開始していれば、S410の処理が終了していなくても、S420の処理を開始しても良い。
CPU101は、RAM102に記憶された追記する動画データの記録が開始した後に、記録媒体140に記録された既存の動画ファイルの動画データを解析し、連結位置を特定する。連結位置は、本実施例では、既存の動画ファイルの動画データの後とする。この処理は、既存の動画ファイルのサイズが大きいほど、ファイルの読み出しや解析に時間がかかるので、連結位置の特定までにも時間がかかることがある。
次に、CPU101は、記録媒体140に記録された、所定時間分の動画データを既存の動画ファイルに連結(追記)するために、FATエントリーを書き換えるように、記録再生部141を制御する(S430)。すなわち、図5(c)に示すように、既存の動画ファイルの終端がクラスタ番号2である状態を変更し、クラスタ2の後、続けて、クラスタ4、5を読むように修正する。具体的には、FATのクラスタ番号2のFATエントリーをファイル終端を示す「FF」から、新規動画データの記録されているクラスタの先頭であるクラスタ4を読むように、「4」に書き換えるのである。
そして、CPU101は、既存の動画ファイルのmoovアトムを読み出して、新規動画データのデータを管理する情報を追記するように、moovアトムに記録された情報を編集し、記録媒体140に記録する(S440)。moovアトムにはたとえば、動画の特定のフレーム、または特定のGOPの開始位置が動画ファイルのどの位置のデータであるかを示すようなオフセット管理情報が記録されることになる。このような処理により、図5(c)に示すように、連結編集後の動画ファイルは、クラスタ1から5からなり、クラスタ番号3→1→2→4→5の順で記録された状態になる。
以上のように追記記録処理は実行される。
このように、本実施例の撮像装置100のCPU101は、撮影の指示が入力されると、撮影の指示が入力されるまでに、RAM102に記憶された所定時間分の動画データを記録媒体140に記録するように記録再生部141を制御する(S410)。そして、RAM102に記憶された所定時間分の動画データの記録が開始した後に、CPU101は、記録媒体140に記録された既存の動画ファイルの動画データを解析し、連結位置を特定する(S420)。その後、連結位置に続けて前記所定時間分の動画データが再生されるように前記既存の動画ファイルを編集するようにFATやヘッダを編集している。
これにより、本実施例の撮像装置は、記録媒体140に記録された既存の動画ファイルの動画データに新規に撮影された動画データを連結する場合。既存動画ファイルの連結位置を解析する前に、RAMに一時的に記憶されている新規動画データを記録媒体に記録するようにし、RAM102の動画データ記憶領域を解放することができるようにしている。そのため、既存動画ファイルの連結位置を特定する前に、RAM102の動画データ記憶領域に、次の動画データを記憶できるようにすることができ、次に動画データを撮影するまでの時間が長くならないようにすることができる。
ここで、本実施例の符号化復号化処理部160の詳細な構成について説明する。
図6は、符号化復号化処理部160における符号化処理のブロックを示す図である。図6において、RAM102より読み出された動画用のデジタル画像信号が水平、垂直それぞれ所定数の画素からなるマクロブロック毎に入力され、演算部601、フレーム内予測部608、動き予測部611に出力される。演算部601は、切り替え部613から出力された予測画像データと入力された画像データとの差分を演算し、整数変換部602に出力する。整数変換部602は、演算部601からのデータに対して直交変換の一つである整数変換処理を施し、入力されたデータを空間成分から周波数成分に変換して量子化部603に出力する。量子化部603は、量子化テーブル選択部612から供給された量子化テーブルに従って、各マクロブロックの変換係数を量子化し、エントロピー符号化部604と逆量子化部605に出力する。本実施形態では、マクロブロックの各変換係数に対する量子化幅(量子化ステップ)が割り当てられた量子化テーブルを複数用意し、量子化テーブル選択部612はこれらの量子化テーブルを保持している。量子化テーブル選択部612は、後述の様に、CPU101からの圧縮強度Qの値に対応した量子化テーブルを選択し、量子化部603に送る。
逆量子化部605は、入力されたデータを逆量子化し、逆整数変換部606に出力する。逆整数変換部606は、逆量子化部605からのデータに対して逆整数変換処理を施して、元の空間成分のデータに変換し、演算部607に出力する。演算部607は、切り替え部613からの予測画像データと逆整数変換処理されたデータとを加算し、フレーム内予測部608、ループフィルタ609に出力する。ループフィルタ609は、演算部607からの局部復号データに対して指定されたフィルタ処理を施し、蓄積部610に記憶する。蓄積部610はループフィルタ609からの画像データを記憶する。動き予測部611は、第2の圧縮モードにおいて、Pフレームを処理する際に、蓄積部610に記憶された参照フレームの画像データのうち、入力された画像データとの間の予測誤差(差分)が最も少なくなるマクロブロックを検出し、検出したマクロブロックに対する動きベクトルを動き補償部611に知らせる。動き補償部612は、動きベクトルに従い、蓄積部610から予測画像データとしてのマクロブロックのデータを読み出し、切り替え部613に出力する。
一方、フレーム内予測部608は、「ムービーダイジェストモード」、或いは、「動画撮影モード」においてIフレーム、IDRフレームを処理する際に、フレーム内予測処理を行う。即ち、フレーム内予測部608は、演算部607からの、入力されたマクロブロックの画像データに対して画面上で上、もしくは左に隣接する画素のデータと、入力された画像データとに基づいて、最適なイントラ予測モードを検出する。そして、検出したイントラ予測モードで処理するために必要な予測画像データを切り替え部613に出力する。H.264では、互いに異なる所定数のイントラ予測モードが用意されている。フレーム内予測部608は、これらの予測モードのうち、予測誤差が最も少なくなる予測モードを検出する。
切り替え部613は、CPU101からの指示に従い、フレーム内予測部608と動き補償部612からの予測画像データの一方を選択し、演算部601と607に出力する。切り替え部613は、「ムービーダイジェストモード」においては、動画の記録中は常にIDRフレームとして画像を圧縮するため、常にフレーム内予測部608からの予測画像データを選択して出力する。また、切り替え部613は、「動画撮影モード」においては、Iフレームを処理する際にはフレーム内予測部608からの予測画像データを選択し、Pフレームを処理する際には動き補償部612からの予測画像データを選択する。
フレーム内予測部608が検出した予測モードを示す情報と、動き予測部611が検出した動きベクトルのデータはエントロピー符号化部604に出力される。エントロピー符号化部604は、量子化部603からのデータと、量子化テーブル選択部612により選択されている量子化テーブルの番号、予測モードを示す情報、或いは、動きベクトルのデータを符号化し、圧縮された動画データとして出力する。また、このとき、マクロブロックの集合からなるスライスのスライスヘッダに「IDRID」を付加する。
なお、本実施例の撮像装置100は、基本的に、既存動画ファイルの動画データに対して、RAM102に記憶されているIDRフレームの動画データを追記するが、以下のような条件を満たす場合には、追記しないようにしている。すなわち、S230でNoとなる条件は以下のとおりである。なお、以下の説明においては、説明を簡単にするために、RAM102に記憶されているIDRフレームの動画データを「新規動画データ」と呼称する。
・追記対象の既存動画ファイルがプロテクトされている場合
記録媒体140に記録されている特定の動画ファイル「MDG_000X.MOV」がプロテクトされている場合には、ユーザがファイルの改変を望まないファイルである可能性が高いので、追記不可能とする。
・追記撮影によりファイルサイズが所定のサイズを超える場合
記録媒体140は、前述したようにたとえばFATファイルシステムで管理されている。その場合、たとえば、FAT32では、1ファイルあたり4GB以上になると読み込めなくなってしまう。そのため、次の撮影により「追記動画ファイル」が4GBを超える場合には、追記不可能とする。
・追記対象の既存動画ファルの動画のGOP構造に異常がある場合
記録媒体140に記録されている追記対象である特定の動画ファイル「MDG_000X.MOV」のチェックの結果、GOP構造に異常がある場合には、追記する動画データにまで影響が出てしまう可能性があるので、追記不可能とする。
・追記対象のファイルが無い場合
「ムービーダイジェストモード」で撮影された動画には、ファイル名として、「MDG_000X.MOV」という、MDGという識別子と通し番号4桁が付加されるようになっている。しかし、ファイル名に「MDG」を含む識別子の動画がない場合には、「ムービーダイジェストモード」で撮影された動画ファイルが存在しないので、追記不可能とする。また、撮像装置100の不図示の不揮発性メモリに最後に「ムービーダイジェストモード」で記録した動画ファイルのファイル名を記録させておき、そのファイルが存在しない場合にも、追記不可能とする。
・追記対象の動画ファイルの撮影日が撮像装置に設定された日と異なる場合
「ムービーダイジェストモード」で同一撮影日に撮影された動画データを順次追記する場合には、日付の変更に伴って、別の動画ファイルを記録することになるので、追記不可能とする。
・追記対象の動画ファイルに関連づけられた地域設定が撮像装置に設定された地域と異なる場合
「ムービーダイジェストモード」で同一地域で撮影された動画データを順次追記する場合には、地域の変更に伴って、別の動画ファイルを記録することになるので、追記不可能とする。たとえば地域情報は、GPSユニットを用いて、得られた位置情報を用いても良いし、撮像装置の時計の設定時に選択する、「国」の情報を用いても良い。
・追記対象の動画ファイルに関連づけられた撮像装置の情報が、新規動画データを撮影する撮像装置と異なる場合
同一の撮像装置で、「ムービーダイジェストモード」で撮影された動画データのみを追記する場合には、記録媒体に記録された追記対象の動画ファイルに関連づけられた撮像装置の識別情報が、撮影を行う撮像装置と一致するかを確認する。そして、異なる場合には追記不可とする。
・動画記録設定が追記元の既存動画ファイルと同一でない場合
本実施例のように、既存動画ファイルに新規動画データを追記する場合には、動画の途中で、フレームレートや画像サイズ、GOP構成、動画符号化方式が変更されてしまうと、シームレスに再生できなくなってしまう可能性がある。そのため、既存動画ファイルの動画データと、新規動画データの動画記録設定が同一でない場合には、追記不可能とする。フレームレートや画像サイズ、GOP構成、動画符号化方式等の情報は、既存動画ファイルのファイルヘッダ等に記録されている。
・音声記録設定が追記元の既存動画ファイルと同一でない場合
本実施例のように、既存動画ファイルに新規動画データを追記する場合には、動画の途中で、音声のサンプリングレート、チャンネル数、ビット深度や、音声符号化方式等が変更されてしまうと、再生できなくなってしまう可能性がある。そのため、既存動画ファイルの動画データと、新規動画データファイルの音声記録設定が同一でない場合には、追記不可能とする。音声のサンプリングレートや、音声符号化方式等の情報は、既存動画ファイルのファイルヘッダ等に記録されている。
・記録媒体140の挿抜履歴がある場合
撮像装置100の起動時に、制御部101は、最後に連続動画撮影モードにおいて撮影した後に、記録媒体140が挿抜された履歴が、不図示の不揮発性メモリに残っている場合には、追記不可能とする。これは、記録媒体140に記録されている「MDG_000X.MOV」がコンピュータなどにより編集されてしまい、画像サイズなどが変更され、追記により動画ファイル自体が壊れたりする可能性を低減するためである。そのためには、追記対象の「MDG_000X.MOV」のファイルヘッダに記録されている撮影日時情報と、不揮発性メモリに残っている挿抜履歴の時間情報とを比較する。追記動画ファイル「MDG_000X.MOV」は、その動画に記録されている複数のシーンの動画データのうち、最初に撮影された時間情報をファイルヘッダに記録されるようになっている。
・追記撮影により動画再生時間が所定時間を超える場合
撮像装置100においては、所定時間(たとえば、30分)を超える撮影を望まない場合を考慮し、連続動画撮影モードにおいて、新たな撮影をすることにより、「追記動画ファイル」の動画データの再生時間が30分を超える場合には、追記不可能とする。そのためには、たとえば、ファイルヘッダに記載されている「追記動画ファイル」の再生時間を読み出して、29分58秒等であれば、追記不可能とするのである。
・追記元の動画ファイルの記録されているフォルダ内のファイル数が所定数以上になる場合
撮像装置100においては、静止画ファイルや動画ファイルを記録媒体140に記録するファイル数をDCFという規格に基づいて記録している。このDCF規格では、1つのフォルダ内に最大9999個のファイルを記録可能としているが、本実施例のように撮影を行った際に、静止画ファイルが新たに生成されるため、静止画ファイルが追記元の動画ファイルの格納されているフォルダに記録できないことがある。その場合には、関連する静止画ファイルと、追記元の動画ファイルとが異なるフォルダに格納されてしまい、ユーザが後で閲覧するときに見づらくなってしまう。そこで、このような場合には、追記をせずに、動画を新規なファイルとして記録し、なおかつ新しいフォルダに格納するものとする。ここでは9999個のファイルを上限として説明したが、999個でも良いし、900個でも良いし、100個でも良い。
・著作権者情報が一致しない場合
撮像装置100は、ユーザが操作部104を操作することで、著作権者名や作成者名を不図示の不揮発性メモリに記憶させることが可能である。そして、不揮発性メモリに記憶された著作権者名や作成者名は、動画ファイルや静止画ファイルを記録媒体140に記録する際に制御部101により読出され、動画ファイルや静止画ファイル内にメタデータとして格納される。つまり、記録媒体140に格納されている複数の動画ファイルや静止画ファイルにはそれぞれ異なる著作権者名や作成者名がメタデータとして格納されることがある。本実施例においては、記録媒体140に記録されている追記対象である特定の動画ファイル「MDG_000X.MOV」の著作権者名や作成者名が、今回記録を行った際に不揮発性メモリに記憶されている著作権者名や作成者名と一致しない場合には、追記を禁不可能とする。このようにすることで異なる著作権者名や作成者名が一つの動画ファイル内に混在することを避けることができる。
また、記録媒体140もしくは既存動画ファイルが壊れているなどの原因により、正常にチェックすることができなかった場合も、追記不可と判定する。
以上説明したように、本実施例の撮像装置100は、「隣接するIDRフレームにおいては、異なるIDRフレーム識別ID(idr_pic_id)を割り当てなければならない」といった制約のある圧縮方式の動画データを連結したとしても、制約に違反しない動画データを生成することができる。
なお、本実施例においては、「ムービーダイジェストモード」において、静止画撮影の指示が入力されたときに、RAM102に記憶していたIDRフレームの動画データを、記録媒体140に記録されている既存の動画ファイルに追記して記録する場合について説明した。しかしながら、追記記録するのは、静止画撮影の指示に応じて行わなくとも、動画記録の指示が入力されたときに、RAM102に記憶していたIDRフレームの動画データを、記録媒体140に記録されている既存の動画ファイルに追記して記録してもよい。すなわち、静止画撮影を行わなくても良い。
また、静止画撮影の指示が入力された場合に動画の撮影を中断しなくても良い。動画の撮影を中断しない場合には、動画の記録停止の指示が入力された時点で、最後のフレームの番号、すなわち、符号化復号化処理部160で圧縮、符号化されたフレームの数が確定する。そのため、動画の記録停止の指示が入力された場合に、CPU101は、符号化復号化処理部160で圧縮、符号化されたフレームの数を256で除算した「あまり」を算出し、その数から1を減算した値を、最終フレームのIDR_IDに関する情報(e)とする。そして、追記した動画ファイルのmoovアトムのユーザーデータアトムに、最終フレームのIDR_IDに関する情報(e)を格納するように記録再生部141を制御する。また、静止画撮影の指示ではなく、動画記録の指示が入力されたときに、静止画撮影を行わずに、同様の動作を行っても良い。
本実施例では、撮像装置について説明した。撮像装置としては、一般的なコンパクトデジタルカメラ、デジタル一眼カメラ、ビデオカメラ、携帯電話が含まれる。また、本発明の技術を適用可能な装置は、撮像装置に限らず、たとえば、カメラを接続したパーソナルコンピュータであっても良い。
(他の実施形態)
上述の実施形態は、システム或は装置のコンピュータ(或いはCPU、MPU等)によりソフトウェア的に実現することも可能である。従って、上述の実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線/無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、MO、CD、DVD等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。
有線/無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムファイル)をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。つまり、上述の実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
また、上述の実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。また、上述の実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するOSの機能を利用するものであってもよい。さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるCPUで実行するようにしてもよい。

Claims (9)

  1. 動画データを圧縮し、圧縮された動画データの各フレームに識別情報を割り当てる圧縮手段と、
    記録指示に応じて、前記圧縮された動画データを記録媒体に記録する手段であって、前記記録媒体に既に記録されている動画ファイルに前記圧縮された動画データを追加する記録手段と、
    前記記録指示に応じて、前記圧縮された動画データを前記動画ファイルに追加するための追加開始フレームを決定し、前記追加開始フレームから前記圧縮された動画データを前記動画ファイルに追加するように前記記録手段を制御する制御手段とを有し、
    前記制御手段は、前記動画ファイルに格納された動画データの最後のフレームの識別情報が、前記圧縮された動画データのうち前記記録指示の所定フレーム数前の所定のフレームの識別情報と一致する場合、前記最後のフレームの識別情報と一致しない識別情報が割り当てられた、前記所定のフレームから決められたフレーム数だけ前、或いは後のフレームを前記追加開始フレームとして決定することを特徴とする画像処理装置。
  2. 前記制御手段は、前記最後のフレームの識別情報が、前記所定のフレームの識別情報と一致しない場合、前記所定のフレームを前記追加開始フレームとして決定することを特徴とする請求項1に記載の画像処理装置。
  3. 前記記録手段は、前記動画ファイルに格納された動画データの最後のフレームに続けて前記追加開始フレームが再生されるように、前記圧縮された動画データを前記動画ファイルに追加することを特徴とする請求項1に記載の画像処理装置。
  4. 少なくとも前記所定フレーム数の前記圧縮された動画データを記憶可能なメモリを有し、
    前記圧縮手段は、前記圧縮された動画データを前記メモリに書き込み、
    前記記録手段は、前記追加開始フレームから前記記録指示に対応するフレームまでの、前記圧縮された動画データを前記メモリから読みだして前記記録媒体に記録することを特徴とする請求項1に記載の画像処理装置。
  5. 前記圧縮手段は、前記圧縮された動画データにおける隣接したフレームに対し、互いに異なる前記識別情報を割り当てることを特徴とする請求項1に記載の画像処理装置。
  6. 前記圧縮手段は、前記動画データの各フレームを、フレーム内予測符号化を用いて符号化することにより圧縮することを特徴とする請求項1に記載の画像処理装置。
  7. 撮像手段と、
    前記記録指示に応じて、前記撮像手段により得られた画像データを用いて静止画データを生成する静止画処理手段とを有し、
    前記圧縮手段は前記撮像手段により得られた動画データを圧縮し、
    前記記録手段は、前記記録指示に応じて、前記静止画処理手段により生成された静止画データを前記記録媒体に記録することを特徴とする請求項1に記載の画像処理装置。
  8. 音声データを取得する手段を備え、
    前記記録手段は、前記記録指示に応じて前記音声データを前記記録媒体に記録し、前記動画ファイルに対して前記音声データを追加することを特徴とする請求項1に記載の画像処理装置。
  9. 動画データを圧縮し、圧縮された動画データの各フレームに識別情報を割り当てる圧縮工程と、
    記録指示に応じて、前記圧縮された動画データを記録媒体に記録し、前記記録媒体に既に記録されている動画ファイルに前記圧縮された動画データを追加する記録工程と、
    前記記録指示に応じて、前記圧縮された動画データを前記動画ファイルに追加するための追加開始フレームを決定し、前記追加開始フレームから前記圧縮された動画データを前記動画ファイルに追加するように前記記録工程を制御する制御工程とを有し、
    前記制御工程は、前記動画ファイルに格納された動画データの最後のフレームの識別情報が、前記圧縮された動画データのうち前記記録指示の所定フレーム数前の所定のフレームの識別情報と一致する場合、前記最後のフレームの識別情報と一致しない識別情報が割り当てられた、前記所定のフレームから決められたフレーム数だけ前、或いは後のフレームを前記追加開始フレームとして決定することを特徴とする画像処理方法。
JP2011265065A 2011-12-02 2011-12-02 画像処理装置 Expired - Fee Related JP5773855B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011265065A JP5773855B2 (ja) 2011-12-02 2011-12-02 画像処理装置
US13/691,355 US8948573B2 (en) 2011-12-02 2012-11-30 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011265065A JP5773855B2 (ja) 2011-12-02 2011-12-02 画像処理装置

Publications (3)

Publication Number Publication Date
JP2013118519A JP2013118519A (ja) 2013-06-13
JP2013118519A5 JP2013118519A5 (ja) 2014-08-07
JP5773855B2 true JP5773855B2 (ja) 2015-09-02

Family

ID=48523990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011265065A Expired - Fee Related JP5773855B2 (ja) 2011-12-02 2011-12-02 画像処理装置

Country Status (2)

Country Link
US (1) US8948573B2 (ja)
JP (1) JP5773855B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6341798B2 (ja) * 2014-08-12 2018-06-13 キヤノン株式会社 撮像装置および撮像装置の制御方法
JP6745629B2 (ja) * 2016-04-01 2020-08-26 キヤノン株式会社 情報処理装置およびその制御方法
JP6928886B1 (ja) * 2020-10-29 2021-09-01 パナソニックIpマネジメント株式会社 撮像装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3881168B2 (ja) * 2000-09-07 2007-02-14 富士フイルムホールディングス株式会社 ディジタル・カメラおよびその動作制御方法ならびに画像再生装置および方法
JP4048407B2 (ja) * 2001-01-18 2008-02-20 富士フイルム株式会社 デジタルカメラ
US6577255B2 (en) * 2001-10-29 2003-06-10 Victor Company Of Japan, Ltd. Method and apparatus for encoding digital data
JP4557684B2 (ja) * 2004-09-28 2010-10-06 キヤノン株式会社 情報処理装置及びその制御方法
JP4757840B2 (ja) * 2006-06-02 2011-08-24 パナソニック株式会社 符号化装置及び編集装置
WO2009127961A1 (en) * 2008-04-16 2009-10-22 Nokia Corporation Decoding order recovery in session multiplexing
JP2010136191A (ja) * 2008-12-05 2010-06-17 Canon Inc 撮像装置、記録装置、および、記録方法
TW201210325A (en) * 2010-07-21 2012-03-01 Nokia Corp Method and apparatus for indicating switching points in a streaming session

Also Published As

Publication number Publication date
JP2013118519A (ja) 2013-06-13
US8948573B2 (en) 2015-02-03
US20130142258A1 (en) 2013-06-06

Similar Documents

Publication Publication Date Title
US9124860B2 (en) Storing a video summary as metadata
EP2577662A1 (en) Video summary method
WO2017002328A1 (en) Data recording apparatus and method of controlling the same, and image capture apparatus
JP5783737B2 (ja) 撮像装置および動画記録装置の制御方法
US9350935B2 (en) Moving image data recording apparatus
JP2009225361A (ja) 記録装置および記録方法、ならびに、編集装置および編集方法
US9565360B2 (en) Image data recording apparatus capable of recording still and moving images simultaneously
JP5773855B2 (ja) 画像処理装置
JP5600405B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5818599B2 (ja) 動画記録装置
JP2012156587A (ja) 動画記録装置
JP5769434B2 (ja) 動画記録装置、情報処理装置
JP5713701B2 (ja) 動画記録装置
JP6071399B2 (ja) 画像処理装置及び画像処理装置の制御方法
US20130057719A1 (en) Image pickup apparatus
JP6071358B2 (ja) 画像処理装置、画像処理方法、プログラム
JP6463967B2 (ja) 撮像装置及びその制御方法
JP6071357B2 (ja) 画像処理装置、画像処理方法、プログラム
JP5889459B2 (ja) 記録装置
JP6049369B2 (ja) 画像処理装置及び画像処理装置の制御方法
JP6218489B2 (ja) 画像処理装置
JP2006121415A (ja) 動画符号化装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140625

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150430

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150630

R151 Written notification of patent or utility model registration

Ref document number: 5773855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees