(実施の形態1)
本発明の実施の形態1の概要を述べる。実施の形態1は、240fps(frames per second)のフレームレートで動画フレームを生成してフレームバッファに格納しておき、通常の撮影モードでは、60fpsのフレームレートになるまでフレームを間引いてからストリームを生成する。ユーザから高速撮影を行う旨の指示がある間は、60fpsのフレームレートのストリームの生成に加えて、フレームを間引きする前の240fpsのフレームレートのストリームも生成する。撮影終了後、生成されたフレームレートの異なる複数のストリームを連結して単一のファイルとして保存する。
図1は、実施の形態1に係る撮像装置200の内部構成を模式的に示した図である。撮像装置200は、センサ10、操作部12、フレーム生成部14、および画像記録制御装置100を含む。画像記録制御装置100はさらに、フレームバッファ16、フレーム間引き部18、画像符号化部20、制御部22、ファイル連結部32、および記録部34を含む。
フレーム生成部14は、センサ10が取得した映像のフレームを生成する。センサ10は、CCD(Charge Coupled Devices)センサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの図示しない固体撮像素子であり、フレーム生成部14はセンサ10から出力されるアナログの三原色信号R、G、Bを処理して、デジタルの輝度信号Yおよび色差信号Cr、Cbのフレームに変換する。フレームバッファ16は、フレーム生成部14が生成したフレームを一時的に保存する。
フレーム間引き部18は、フレームバッファ16に格納されているフレームを間引きする。フレームバッファ16にはフレーム生成部14が生成した、フレームレートが240fpsのフレームが格納されており、フレーム間引き部18は、当該フレームを四分の一に間引くことにより、フレームレートが60fpsのフレームを生成する。ここでフレーム生成部14が生成するフレームのフレームレートと、フレーム間引き部18が生成するフレームのフレームレートとは様々な組み合わせがあってもよい。例えば、フレーム生成部14が600fpsのフレームを生成してもよく、フレーム間引き部18は間引きの枚数を自由に変更できるようにしてもよい。
画像符号化部20はさらに、通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とのふたつの画像符号化部を含む。
通常フレームレートフレーム符号化部36は、フレーム間引き部18が生成したフレームを符号化して通常フレームレートストリーム24を生成する。通常フレームレートフレーム符号化部36は、当該フレームを所定の規格にしたがい符号化する。動画像の符号化には、国際標準化機関であるISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)によって標準化されたMPEG(Moving Picture Experts Group)シリーズの規格(MPEG−1、MPEG−2およびMPEG−4)、電気通信に関する国際標準機関であるITU−T(International Telecommunication Union-Telecommunication Standardization Sector)によって標準化されたH.26xシリーズの規格(H.261、H.262およびH.263)、もしくは両方の標準化機関によって合同で標準化された最新の動画像圧縮符号化標準規格であるH.264/AVC(両機関における正式勧告名はそれぞれMPEG-4 Part 10: Advanced Video CodingとH.264)に準拠する技術、その拡張標準であるH.264/AVC Annex G、すなわちH.264/SVC(Scalable Video Coding)が用いられる。
高フレームレートフレーム符号化部38は、操作部12に入力されたユーザの指示がある間、フレームバッファ16に格納されているフレームを符号化し、ストリームを生成する。したがって、高フレームレートフレーム符号化部38が生成するストリームは、通常フレームレートフレーム符号化部36が生成するストリームよりも高いフレームレート(240fps)のストリームとなる。以後、ユーザの指示により高フレームレートフレーム符号化部38がフレームバッファ16に格納されているフレームを直接符号化してストリームを生成する動作を「高速撮影モード」と呼ぶ。高フレームレートフレーム符号化部38も通常フレームレートフレーム符号化部36と同様に、MPEG−2、またはMPEG−4、H.264/AVC、H.264/SVCなどの規格にしたがい圧縮符号化する。
通常フレームレートフレーム符号化部36がフレーム間引き部18の生成した一連のフレームをすべて符号化して一つのストリーム(通常フレームレートストリーム24)を生成するのに対し、高フレームレートフレーム符号化部38は、ユーザから高速撮影モードの指示がある度に、その指示がある期間に符号化する。例えばユーザが1度目の高速撮影モードの指示を行うと、高フレームレートフレーム符号化部38は第1高フレームレートストリーム26を生成する。以後、高フレームレートフレーム符号化部38はユーザから高速撮影モードの指示がある度にストリームを生成し、n回目の指示で第n高フレームレートストリーム28を生成する。
高フレームレートフレーム符号化部38が生成するストリームはフレームレートが高く、映像を高い時間分解能で撮影することができる一方で、多くの記録容量を要する。反対に、通常フレームレートフレーム符号化部36が生成する通常フレームレートストリーム24はフレームが間引きされているため時間分解能は落ちるが、その分記憶容量は少なくなる。これらの性質を利用して、映像全体を通常フレームレートストリーム24で記録し、例えば重要なシーンについては高速撮影モードで撮影することにより、記憶容量を抑えつつ、重要なシーンを高い時間分解能で記録することが可能となる。
制御部22は、操作部12に入力されたユーザの指示に基づいて関連情報30を生成する。ここで「関連情報」とは、センサ10に入力された映像を通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とが共に符号化したときに、両者が生成したストリームを関連づける情報である。例えば、通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とが重複して符号化した部分を特定する情報、すなわち、高フレームレートで撮像すべき期間を特定する情報である。関連情報の具体例については後述する。
ファイル連結部32は、通常フレームレートフレーム符号化部36が生成した通常フレームレートストリーム24、高フレームレートフレーム符号化部38が生成したひとつ以上の高フレームレートストリーム、および制御部22が生成した関連情報30を多重化して連結し、単一のファイルを生成する。ここで「単一のファイル」とはファイル操作の単位となるファイルを意味し、ひとつのファイル名の下で一括してファイルの複製や削除、ファイル転送等の操作の対象となる。ファイルとしては、例えばMP4ファイルフォーマットにしたがったコンテナファイルを利用することができる。当該コンテナファイルには、各符号化データのヘッダ情報、メタデータ、時刻情報などを記述したコンテナを含めることができる。
記録部34は、ファイル連結部32が生成したファイルを格納する。記録部34としては例えば、内蔵メモリとして、半導体メモリまたはハードディスクを採用することができる。また、リムーバブルメモリとして、メモリーカード、リムーバブルハードディスク、または光ディスクを採用することができる。
画像記録制御装置100の構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のLSIで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
図2は、実施の形態1にかかる撮像装置200の処理の流れを説明するフローチャートである。本フローチャートにおける処理は、例えばユーザが撮像装置200の電源ボタン(図示しない)を押すと開始する。
ユーザが動画撮影を選択した場合(S10Y)、フレーム生成部14はセンサ10が取得した映像のフレームを生成してフレームバッファ16に格納する(S12)。ユーザが操作部12を介して高速撮影モードを選択する場合(S14Y)、高フレームレートフレーム符号化部38は、フレームバッファ16に格納されている高フレームレートのフレームを符号化する(S16)。ユーザが高速撮影モードを選択しない場合には(S14N)、高フレームレートフレーム符号化部38は符号化を実行しない。
フレーム間引き部18は、フレームバッファ16に格納されているフレームを所定の枚数間引きする(S18)。通常フレームレートフレーム符号化部36は、フレーム間引き部18が出力した通常のフレームレートのフレームを符号化する(S20)。ここで動画像の撮影を終了しない場合には(S22N)、ステップS12に戻り、フレームの符号化を続行する。動画像の撮影を終了する場合には(S22Y)、制御部22は関連情報30を生成する(S24)。その後ファイル連結部32は、通常フレームレートフレーム符号化部36が生成した通常フレームレートストリーム24、高フレームレートフレーム符号化部38が生成した一つ以上の高フレームレートのストリーム、および制御部22が生成した関連情報30を連結してひとつのファイルを生成する(S26)。ファイル連結部32がファイルを生成するか、あるいは動画撮影でない場合に(S10N)、本処理は終了する。
なお、図2において通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とが符号化処理を直列に実行する場合について説明したが、両者は並列に符号化処理を実行してもよい。
以下、制御部22が生成する関連情報30の具体例について図を参照しながら説明する。
図3は、通常フレームレートフレーム符号化部36が符号化の対象とする通常フレームレートフレーム群40と、高フレームレートフレーム符号化部38が符号化の対象とする第1高フレームレートフレーム群42および第2高フレームレートフレーム群44との関係の一例を模式的に表した図である。本例では通常フレームレートフレーム群40のフレームレートは60fpsであり、第1高フレームレートフレーム群42および第2高フレームレートフレーム群44のフレームレートは240fpsであるとする。
通常フレームレートフレーム群40の撮影開始時刻を原点とする時間軸46と、通常フレームレートフレーム群40の第1番目のフレームのフレーム番号を1とし、以後順番に通し番号をふったときのフレーム番号を表すフレーム軸48とを考える。通常フレームレートフレーム群40は時刻0から始まって時刻T5で終了する。このとき通常フレームレートフレーム群40は、1番目のフレームからF5番目のフレームまで存在し、その間のフレームの総数はN0枚である。
時刻T1においてユーザが操作部12を介して高速撮影モードを選択すると、高フレームレートフレーム符号化部38は第1高フレームレートフレーム群42の符号化を開始する。時刻T2においてユーザが高速撮影モードを終了すると、高フレームレートフレーム符号化部38は符号化を終了する。第1高フレームレートフレーム群は時刻T1からT2までのD1の期間に撮影されたフレーム群ということになる。
時刻T3においてユーザが再度高速撮影モードを選択すると、高フレームレートフレーム符号化部38は第2高フレームレートフレーム群44の符号化を開始する。D2の時間が経過し、時刻T4においてユーザが高速撮影モードを終了すると、高フレームレートフレーム符号化部38は符号化を終了する。
この例では、通常フレームレートフレーム群40と第1高フレームレートフレーム群42とは時刻T1からT2までのD1の期間において重複する。そこで両者の重複部分を特定する関連情報30として、時刻T1とT2とのセットが考えられる。また、両者の重複が始まる時刻T1と重複する期間であるD1とのセットも重複部分を特定する関連情報30とすることができる。同様に、通常フレームレートフレーム群40と第2高フレームレートフレーム群44とは時刻T3からT4までのD2の期間において重複するので、T3とT4のセットあるいはT3とD2のセットを通常フレームレートフレーム群40と第2高フレームレートフレーム群44との重複部分を特定する関連情報30とすることができる。
ユーザが高速撮影モードを選択した時刻T1において、通常フレームレートフレーム群40はF1番目のフレームであったとする。その後時刻T2においてユーザが高速撮影モードを終了したとき、通常フレームレートフレーム群40はF2番目のフレームであったとする。このとき、通常フレームレートフレーム群40と第1高フレームレートフレーム群42との重複部分は、通常フレームレートフレーム群40のフレーム番号F1とF2とのセットで特定することができる。また、F1番目のフレームとF2番目とのフレームの間にN1枚の通常フレームレートフレーム群40のフレームがあるとすれば、通常フレームレートフレーム群40と第1高フレームレートフレーム群42との重複部分は、通常フレームレートフレーム群40のフレーム番号F1と重複部分の枚数N1とのセットでも特定することができる。したがって、F1とF2とのセットあるいはF1とN1とのセットを通常フレームレートフレーム群40と第1高フレームレートフレーム群42との重複部分を特定する関連情報30とすることができる。
通常フレームレートフレーム群40と第2高フレームレートフレーム群44との場合も同様で、時刻T3の時の通常フレームレートフレーム群40のフレーム番号をF3、時刻T4の時の通常フレームレートフレーム群40のフレーム番号をF4とし、その間のフレーム数をN2とすれば、F3とF4とのセットあるいはF3とN2とのセットを通常フレームレートフレーム群40と第2高フレームレートフレーム群44との重複部分を特定する関連情報30とすることができる。
ここで、通常フレームレートフレーム群40のフレーム数N1またはN2のかわりに、対応する第1高フレームレートフレーム群42または第2高フレームレートフレーム群44のフレーム数を用いることも可能である。この場合、第1高フレームレートフレーム群42および第2高フレームレートフレーム群44のフレームレートは通常フレームレートフレーム群40の4倍(240fps/60fps=4)であるので、対応するフレームの枚数もそれぞれ4倍となる。
図4は、関連情報30の別の例を模式的に表した図である。本例は、ストリームの中に映像の区切りデータとしてチャプタ(chapter)が埋め込まれる場合の例である。
本例においては、図4はチャプタが埋め込まれたストリームを伸張したときの、チャプタとフレームとの位置関係の一例を示す図である。第1のチャプタ52aは、チャプタ付きストリーム50内に存在し、第1高フレームレートフレーム群42が開始する直前に埋め込まれている。また、第2のチャプタ52bは、第1高フレームレートフレーム群42が終了した直後に埋め込まれている。したがって第1のチャプタ52aと第2のチャプタ52bとのセットを、チャプタ付きストリーム50と第1高フレームレートフレーム群42との重複部分を特定する関連情報30とすることができる。なお、チャプタ52は、関連情報30としてファイル連結部32が埋め込む。
図5は、ファイル連結部32が生成するファイル54の構造の一例を模式的に表した図である。ファイル54は、ファイルの先頭からヘッダ56、関連情報30、通常フレームレートストリーム24、第1高フレームレートストリーム26の順に格納され、終端に第n高フレームレートストリーム28を含む。ここでヘッダ56は各ストリームの先頭位置の情報等を格納する。このように、各ストリームを順番に格納する場合は、ファイル連結部32がファイル54を生成するときの制御が簡単になる点で有利である。
なお、ヘッダ56や関連情報30はファイルの先頭でなくてもよく、例えばファイルの終端にあってもよい。この場合、通常フレームレートストリーム24が先頭となるため、ファイルを探索することなく即座に映像全体を再生できる点で有利である。また、関連情報30はヘッダ56の一部として格納されていてもよい。
図6は、ファイル連結部32が生成するファイル54の構造の別例を模式的に表した図である。本例では、先頭にヘッダ56および関連情報30が格納される点では図5に示す例と同じであるが、各ストリームファイルは所定の基準で分割され、分散して格納される点で異なる。また、ヘッダ56は各ストリームの先頭位置の情報のみならず、分割された各ストリームの先頭位置の情報も格納される。
図6において、通常フレームレートストリーム24はm個の単位に分割され、第1のストリームその1(符号24a)、第1のストリームその2(符号24b)と続いて第1のストリームそのn(符号24c)に至り、最後に第1のストリームそのm(符号24d)として格納される。分割された通常フレームレートストリーム24の間に、分割された第2のストリームその1(符号26a)や第2のストリームその2(符号26b)が格納される。同様に、第nのストリームも分割されて格納される(符号28a)。このように、各ストリームを分割して記録する方式は、記録時の制御が複雑になるものの、記録部34の記録領域に対して効率的に記録できる点で有利である。記録領域内に物理的に連続して大きな空き領域がなく、小さな空き領域しか存在しないような場合でも、ファイルを小さな単位に分割して記録できれば、そのような小さな空き領域に記録することができるからである。
したがって、上述したファイルを分割するための「所定の基準」とは、記録部34の記録領域を効率よく利用するために用意するデータ記録の最小単位であり、例えばストリームに記録されている映像の時間や、データのサイズあるいはチャプタ52によって区切られる単位が用いられる。これらの基準およびその最小単位は、記録部34の容量やファイルシステムの制限などを考慮して実験的に定めればよい。
図7は、ファイル54に格納される関連情報30の記録形式の一例を模式的に表した図である。本例では、関連情報30として、上述した時刻T0から時刻T5までの各時刻を用いる場合について説明する。
まず、関連情報30を記録する領域の先頭に、記録すべき関連情報30の個数を格納する。本例では、記録すべき関連情報は時刻T0から時刻T5までの6個であるから、関連情報30の個数として6を格納する。次に、通常フレームレートフレーム群40の開始時刻であるT0と終了時刻であるT5を格納し、次に第1高フレームレートフレーム群42の開始時刻であるT1と終了時刻であるT2を格納する。最後に第2高フレームレートフレーム群44の開始時刻であるT3と終了時刻であるT4を格納する。フレーム群の数が増えた場合も同様の形式で格納すればよい。また、開始時刻と終了時刻は必ずセットで保存されるので、記録すべき関連情報30の個数としてはセットの個数を記録してもよい。本例の場合では、開始時刻と終了時刻のセットは3セットあるため、関連情報30の個数として3を格納する。
なお、関連情報30としては、通常フレームレートフレーム群40の開始時刻であるT0と終了時刻であるT5は省略することが可能である。
図8は、ファイル54に格納される関連情報30の記録形式の別例を模式的に表した図である。本例では、関連情報30として、上述した各フレーム群の先頭のフレーム番号とフレームの枚数とを用いる場合について説明する。
本例の場合は、図7に示す例と異なり、記録すべき関連情報30の個数は格納されず、先頭から順に関連情報30が格納される。具体的には、まず通常フレームレートフレーム群40のフレームの総数であるN0が格納される。次に第1高フレームレートフレーム群42の先頭フレームに対応する通常フレームレートフレーム群40のフレーム番号であるF1と、第1高フレームレートフレーム群42と重複する区間の通常フレームレートフレーム群40のフレーム枚数であるN1が格納される。続いて、第2高フレームレートフレーム群44の先頭フレームに対応する通常フレームレートフレーム群40のフレーム番号であるF3と、第1高フレームレートフレーム群42と重複する区間の通常フレームレートフレーム群40のフレーム枚数であるN2が格納される。最後に関連情報30の終端を示す識別子であるターミネータが格納される。関連情報30の先頭からターミネータまでの間の情報を読み込むことにより、関連情報30の個数が格納されていなくても、関連情報を正しく読み取ることが可能となる。
なお、関連情報30として、通常フレームレートフレーム群40のフレームの総数であるN0は省略することもできる。
以上の構成による動作は以下のとおりである。ユーザは、実施の形態1にかかる撮像装置を用いて記録に残したい映像を撮像するに際し、その中でも特に重要なシーンについては高速撮影をする。撮影を終了すると、映像全体が60fpsのフレームレートで記録されており、高速撮影をしたシーンについては240fpsのフレームレートで撮影された映像もあわせて記録されている。この結果、異なるフレームレートで撮影された映像が複数存在することになるが、これらは単一のファイルにまとめられて記録される。
以上説明したように実施の形態1によれば、映像全体を通常のフレームレートで撮影し、重要なシーンについては合わせて高フレームレートで撮影することにより、重要でないシーンの符号量を抑えることが可能となり、結果として記憶容量を節約することができる。また、重要なシーンは別のストリームとして生成されるため、重要なシーンの取出しが容易となる。さらに、すべてのストリームと関連情報30とをまとめてひとつのファイルとして生成されるため、ストリームごとに別ファイルを生成する場合と比較して、ファイルのコピーや転送、削除等の管理が容易となる。また、ストリームファイルの一部を消失した結果、一連のストリームファイルがすべて再生できなくなるということも防止できる。
すべての機器が、例えば240fpsのような高フレームレートで撮影されたストリームを再生できるとは限らないが、実施の形態1によれば、映像全体を通常のフレームレートで撮影してあるため、高フレームレートで撮影されたストリームを再生できない機器においても映像を再生することが可能となる。
(実施の形態2)
実施の形態2の概要を述べる。実施の形態2は、通常の撮影モードで撮影されたストリームと高速撮影モードで撮影されたストリームとの複数のストリームを含む動画ファイルを再生するに際し、通常の撮影モードで撮影されたストリームを再生中であっても、コマ送り再生時には、高速撮影モードで撮影されたストリームのフレームを用いてコマ送り再生する。高速撮影モードで撮影されたストリームは通常の撮影モードで撮影されたストリームと比べて映像の時間分解能が高いので、通常の撮影モードで撮影されたストリームを用いてコマ送り再生する場合よりも、動画の変化をきめ細かく再生できるからである。
図9は、実施の形態2にかかる画像再生制御装置300の内部構成を模式的に示した図である。画像再生制御装置300は、ファイル分割部58、画像復号部60、操作受付部62、およびフレーム選択部64を含む。画像復号部60はさらに、通常フレームレートストリーム復号部68と高フレームレートストリーム復号部70とを含む。
ファイル分割部58は、記録部34から構成要素として関連情報30および異なるフレームレートで撮像された複数のストリームを含む単一ファイルを受け取り、それを構成要素に分割する。通常フレームレートストリーム復号部68は、ファイル分割部58が分割した構成要素のうち、通常フレームレートストリーム24を復号する。高フレームレートストリーム復号部70は、ファイル分割部58が分割した構成要素のうち、高フレームレートストリームを復号する。
操作受付部62は、ファイル分割部58が分割した構成要素のうち、関連情報30を受け取る。加えて、図示しないユーザインタフェースを介して、動画をコマ送り再生すべき旨の指示等、ユーザから再生方法に関する制御情報を受け付ける。フレーム選択部64は、画像復号部60から復号された60fpsのフレームおよび240fpsのフレームを受け取り、操作受付部62からの制御情報に基づいて表示すべきフレームを選択する。表示部66は、フレーム選択部64で選択されたフレームを図示しないテレビやモニタ等の出力デバイスに表示する。
画像再生制御装置300の構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のLSIで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
ここで、通常フレームレートストリーム復号部68および高フレームレートストリーム復号部70は、復号したフレームが表示部66にて出力されるか否かに関わらず、常にフレームを復号することを前提とする。また、高フレームレートストリーム復号部70が復号した240fpsのフレームを再生するに際しては、通常のフレームレートのフレームと同じフレームレートである60fpsで再生する。したがって、通常のフレームレートのフレームの再生と比べて4倍(240fps/60fps=4倍)ゆっくりと再生されるように見える。
図10は、実施の形態2にかかる映像選択の流れを説明するフローチャートである。本フローチャートにおける処理は、例えば操作受付部62がユーザから動画の再生を指示されたときに開始する。
フレーム選択部64は、高フレームレートストリーム復号部70から高フレームレートフレームが出力されるフレームが存在するか否かを調べる。高フレームレートフレームが存在しない場合には(S28N)、フレーム選択部64は通常のフレームレートのフレームを選択する(S36)。高フレームレートフレームが存在する場合には(S28Y)、フレーム選択部64は、操作受付部62からコマ送りで再生すべき指示が存在するか否かを調べる。コマ送り再生すべき指示が存在する場合には(S30Y)、フレーム選択部64は高フレームレートのフレームを選択する(S34)。コマ送り再生すべき指示が存在しない場合には(S30N)、フレーム選択部64は、操作受付部62から高速撮影モードで撮影された高フレームレートのフレームを再生すべき指示が存在するか否かを調べる。
高フレームレートで再生すべき指示が存在しない場合には(S32N)、フレーム選択部64は通常のフレームレートのフレームを選択する(S36)。高フレームレートで再生すべき指示が存在する場合には(S32Y)、フレーム選択部64は高フレームレートのフレームを選択する(S34)。フレーム選択部64が、選択したフレームを表示部66に出力すると(S38)、本フローチャートにおける処理は終了する。フレーム選択部64は、ストリームの再生中は毎フレームについて本フローチャートにおける処理を実行する。
図11は、60fpsのフレーム群と240fpsのフレーム群とが存在する場合にそれらのフレームを再生するに際し、60fpsのフレーム群と240fpsのフレーム群との切り替えのタイミング例を示す図である。本例では、時刻T7から時刻T10の期間に240fpsのフレーム群が存在し、60fpsのフレーム群を再生中に、時刻T8においてコマ送り再生すべき旨の指示があり、時刻T9にコマ送り再生を終了した例が示されている。コマ送り再生すべき旨の指示があった時刻T8から時刻T9の期間は、60fpsのフレーム群が存在するにも関わらず、240fpsのフレーム群でコマ送り再生を行う。
図12は、60fpsのフレーム群と240fpsのフレーム群とが存在する場合にそれらのフレームを再生するに際し、60fpsのフレーム群と240fpsのフレーム群との切り替えタイミングの別例を示す図である。本例では、時刻T11から時刻T13の間、および時刻T14から時刻T16の間のふたつの期間にわたり、ふたつの240fpsのフレーム群が存在する。
時刻T12まで60fpsのフレーム群が通常再生されていたが、時刻T12においてコマ送り再生をすべき指示があり、240fpsのフレーム群を用いたコマ送り再生に切り替わる。時刻T13においてひとつ目の240fpsのフレーム群が終了するため、60fpsのフレーム群を用いてのコマ送り再生に切り替わる。その後、時刻T14にてふたつ目の240fpsのフレーム群が出現するため、再び240fpsのフレーム群を用いたコマ送り再生に切り替わる。時刻T15においてコマ送り再生をすべき指示が終了するので、60fpsのフレーム群を用いた通常再生に切り替わる。
図13は、60fpsのフレーム群と240fpsのフレーム群とが存在する場合にそれらのフレームを再生するに際し、60fpsのフレーム群と240fpsのフレーム群との切り替えタイミングのさらに別の例を示す図である。本例では、60fpsのフレーム群を再生中に240fpsのフレーム群が存在しない範囲でユーザからコマ送り再生すべき旨の指示があり、コマ送り再生中に240fpsのフレーム群が出現したため、以後240fpsのフレーム群が選択されコマ送り再生される。その後、コマ送り再生中に240fpsのフレーム群が存在する範囲でコマ送り再生が終了したため、再度60fpsのフレーム群が選択され再生される。
図14は、60fpsのフレーム群と240fpsのフレーム群とが存在する場合にそれらのフレームを再生するに際し、60fpsのフレーム群と240fpsのフレーム群との切り替えタイミングのさらに別の例を示す図である。本例では、60fpsのフレーム群を再生中に240fpsのフレーム群が存在する範囲でユーザからコマ送り再生すべき旨の指示があり、240fpsのフレーム群が選択されコマ送り再生される。その後、コマ送り再生中に240fpsのフレーム群が終了したため、60fpsのフレーム群を用いてコマ送り再生される。コマ送り再生が終了後も引き続き60fpsのフレーム群が選択され再生される。
図15は、60fpsのフレーム群と240fpsのフレーム群とが存在する場合にそれらのフレームを再生するに際し、60fpsのフレーム群と240fpsのフレーム群との切り替えタイミングのさらに別の例を示す図である。本例では、60fpsのフレーム群を再生中に240fpsのフレーム群が存在しない範囲でユーザからコマ送り再生すべき旨の指示があり、60fpsのフレーム群を用いてコマ送り再生される。その後、240fpsのフレーム群が出現したので、240fpsのフレーム群を用いてのコマ送り再生となる。コマ送り再生中に240fpsのフレーム群が終了したため、再度60fpsのフレーム群を用いてのコマ送り再生となる。コマ送り再生が終了後も引き続き60fpsのフレーム群が選択され再生される。
以上のように、実施の形態2にかかる画像再生制御装置300は、高速撮影モードで撮影された240fpsのフレーム群が存在する場合には、ユーザからコマ送り再生すべき旨の指示があったときには、240fpsのフレーム群に切り替えてコマ送り再生を行う。これにより、60fpsのフレームをコマ送り再生する場合と比べて、動画の変化をきめ細かく再生することが可能となる。
以上、実施の形態1および実施の形態2を説明した。これらの実施の形態の任意の組合せもまた本発明の実施の形態として有用である。実施の形態1と実施の形態2とを組合せ、ファイル連結部32の出力した単一ファイルをファイル分割部58が受け取るようにすれば、これらの実施の形態の効果の和に加え、さらに、撮像から再生までを一貫してユーザに提供できるようになる点で有利である。
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば、上記実施の形態1では、画像符号化部20が通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とのふたつ画像符号化部を含む場合について説明したが、いずれかの演算速度が十分速い場合には、ひとつの画像符号化部としてもよい。この場合、高速撮影モード時には通常のフレームレートの映像と高フレームレートの映像とを時分割で符号化することになる。回路の規模を小さくできることから、製造コストや消費電力を抑えられる点で有利である。
また、上記実施の形態1では、通常フレームレートフレーム符号化部36と高フレームレートフレーム符号化部38とはそれぞれ独立して演算する場合を想定したが、演算結果を共有できるようにしてもよい。例えば、高フレームレートフレーム符号化部38が計算した4枚分のフレームの動きベクトルを合成すれば、通常フレームレートフレーム符号化部36で計算すべき1枚分の動きベクトルとなる。この結果を共有することにより、全体として演算時間と消費電力とを抑えられる点で有利である。
また、上記実施の形態1では、チャプタ52を関連情報30として記録する場合について説明したが、ストリームに埋め込むチャプタ52自体に、対応する高フレームレートの映像の情報を持たせてもよい。この場合、上述の例ではチャプタ52aに第1高フレームレートフレーム群42の開始を、チャプタ52bに第1高フレームレートフレーム群42の終了を情報として記録することになる。また上述の例では、チャプタ52aとチャプタ52bとをもって第1高フレームレートフレーム群42の関連情報30として説明したが、チャプタ52aと第1高フレームレートフレーム群42のフレーム数や時間等を関連情報30とすることもできる。
また、上記実施の形態1では、フレーム生成部14が常時240fpsのフレームを生成する場合について説明したが、通常は60fpsの動画を生成し、高速撮影モードの場合のみ240fpsのフレームを生成するようにしてもよい。この場合、高速撮影モードではない場合のフレーム生成部14の演算量が減り、フレーム間引き部18の演算も不要となるため、消費電力を抑えられる点で有利である。また、フレームレートが低い場合にはセンサ10における受光量を多くすることができるため、ノイズを抑制する効果も得られる。
上記実施の形態2では、通常フレームレートストリーム復号部68および高フレームレートストリーム復号部70は、復号したフレームが表示部66にて出力されるか否かに関わらず、常にフレームを復号するものとして説明したが、それぞれ表示部66にて出力されるフレームを復号する場合のみ復号するようにしてもよい。その場合、フレーム選択部64が通常フレームレートストリーム復号部68または高フレームレートストリーム復号部70にフレームを復号すべき指示を出力することになる。通常フレームレートストリーム復号部68または高フレームレートストリーム復号部70のいずれかのみが動作すればよいので、消費電力を抑制できる点で有利である。
また、上記実施の形態2では、画像復号部60が通常フレームレートストリーム復号部68と高フレームレートストリーム復号部70とのふたつ画像復号部を含む場合について説明したが、いずれかの演算速度が十分速い場合には、ひとつの画像復号部としてもよい。この場合、60fpsのフレーム群と240fpsのフレーム群とを時分割で復号することになる。回路の規模を小さくできることから、製造コストや消費電力を抑えられる点で有利である。
また、上記実施の形態2では、ファイル分割部58が単一ファイルを構成要素に分割する場合について説明したが、構成要素は単一ファイルとしてまとまっておらず、複数のファイルとして点在していてもよい。この場合、ファイル分割部58に替えて図示しないファイル管理部が、点在する複数のファイルを関連づけることになる。これは例えば関連情報および異なるフレームレートで撮像された複数のストリームを同一フォルダに格納しておいたり、複数のファイルの命名規則を共通化したりすることで実現できる。