説明

画像出力装置、画像出力装置の制御方法およびプログラム

【課題】出力画像の細かな位置合わせを可能にする。
【解決手段】画像出力部は、時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能である。例えば、画像出力部は、タイムライン動作を含むCG記述データに基づいてCG画像を生成する。制御部は、操作入力量に所定の演算を施して進行量を求め、その進行量に従って時間軸上で位置を示す時刻を進め、画像出力部に、この進められた時刻の画像出力を指示する。例えば、操作入力量に対して進行量が小さくなるような演算が施されるとき、操作入力に対する時間軸上で位置を示す時刻の進みが小さくなる。そのため、出力画像の細かな位置合わせが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本技術は、画像出力装置、画像出力装置の制御方法およびプログラムに関する。特に、本技術は、ジョグ操作ダイヤルでCG(コンピュータグラフィクス)画像出力を操作する用途等に適する画像出力装置等に関する。
【背景技術】
【0002】
テレビジョン放送の映像は、放送規格によってフレームレートが所定の値(例えば30フレーム/秒)に決定されている。よって、番組に用いるビデオ素材も同一のフレームレートを有しているものが多く、ビデオ素材には、時間的位置を示す情報として、フレームを最小単位としたタイムコード(TC)が付与されている(例えば、特許文献1参照)。
【0003】
これらのビデオ素材を編集する機器においても、ビデオ素材の時間的位置や区間を指定する場合、タイムコードを用いている。タイムコードは、HH時MM分SS秒FFフレームを示すHH:MM:SS:FFと表記される。例えば、フレームレートが30フレーム/秒の場合、FFは0乃至29の整数となる。ただし、ビデオ素材がインタレースの場合、奇数(ODD)フィールドと偶数(EVEN)フィールドを区別するため、実質的にはFFの値が0.5刻みとなる。
【0004】
従来のCGアニメーションをビデオ素材とした場合についても同様であり、予め30フレーム/秒のフレームレートで制作されレンダリングされたCGによる動画像の各フレームに対してタイムコードHH:MM:SS:FFが付与されている。
【0005】
ジョグシャトルによるサーチ操作は、例えば、ビデオ素材の編集ポイントの決定、内容の確認・検査、または位置合わせに好適なポイントの決定等のために行われる。位置合わせは、アニメーション素材が画像中を移動する内容であり、その移動位置を画像重畳する実写画像の画(例:話者の顔)に合わせた位置で止めて、オンエアに利用するためなどに行われる。
【0006】
例えば、特許文献2には、ジョグシャトルの両モードの記載がある。上述のコマ数(フレーム数)が確定したCGアニメーションがビデオ素材として利用される場合、アニメーションのタイムライン上で細かく移動するときでも、ジョグ操作によるコマ送りを最小単位として扱うことで十分であった。すなわち、従来のジョグ操作はタイムコードを1ずつ(インタレース素材の場合には0.5ずつ)進めるものであった。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2010−212901号公報
【特許文献2】特開2009−296305号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
近年、リアルタイムレンダリングにより、タイムライン動作を含むCG記述データからCG画像を生成する技術が普及し始めている。このようなCGアニメーションでも制作時に長さが決まっており、通常の進行(Play)の場合、従来のビデオ素材同様にフレーム画像を順次出力する。
【0009】
また、このようなCGアニメーションでは、例えば、制作時の10倍の時間長で進行(Play)させることも可能である。その場合、1/10の速度の進行(Play)として、出力するフレーム毎に徐々に進行する真のスロー進行が可能である。しかし、従来のジョグ制御の技術では、素材に付与されたタイムコードに従って1フレームずつ進行させることしかできなかった。
【0010】
本技術の目的は、出力画像の細かな位置合わせを可能にすることにある。
【課題を解決するための手段】
【0011】
本技術の概念は、
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力部に該進められた時刻の画像出力を指示する制御部とを備える
画像出力装置にある。
【0012】
本技術において、画像出力部は、時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能となっている。例えば、この画像出力部は、タイムライン動作を含むコンピュータグラフィクス記述データに基づいてコンピュータグラフィクス画像を生成するものである。
【0013】
制御部により、操作入力量に所定の演算が施されて進行量が求められ、この求められた進行量に従って時間軸上で位置を示す時刻が進められ、画像出力部にこの進められた時刻の画像出力が指示される。例えば、制御部により、操作入力量に所定の演算が施されて進行量が求められ、この求められた進行量に従ってタイムライン上で位置を示すタイムライン時刻が求められ、画像出力部にこの進められたタイムライン時刻のコンピュータグラフィクス画像の生成が指示される。
【0014】
例えば、操作入力量はジョグ操作ダイヤルによる指示ステップ数とされる。そして、制御部では、この指示ステップ数に、1指示ステップに対する実数値としてのフレーム/フィールド数であるステップ量が乗算されて、進行量が求められる。例えば、ステップ量を設定するステップ量設定部がさらに備えられる。ジョグ操作ダイヤルは、回転を計測する最小単位である1ステップが、1フレームあるいは1フィールドの進行に相当する操作手段であるので、乗算を施すことで、進行量を1フレームあるいは1フィールドの倍数以外の値にすることができる。この結果、進行量は小数値にもなり得る。
【0015】
このように本技術においては、操作入力量に所定の演算が施されて求められた進行量に従って時間軸上で位置を示す時刻が進められ、画像出力部はこの進められた時刻の画像を出力するように制御される。例えば、操作入力量に対して進行量が小さくなるような演算が施されるとき、操作入力に対する時間軸上で位置を示す時刻の進みが小さくなる。
そのため、出力画像の細かな位置合わせが可能となる。
【0016】
なお、本技術において、例えば、ステップ量をタイムラインに基づいて決定するステップ量決定部をさらに備える、ようにされてもよい。また、本技術において、タイムライン時刻とステップ量との対応関係情報に基づいてタイムライン時刻毎にステップ量を決定するステップ量決定部をさらに備える、ようにされてもよい。また、本技術において、例えば、ステップ量をジョグ操作ダイヤルの角速度に基づいて決定するステップ量決定部をさらに備える、ようにされてもよい。この場合、ユーザ(使用者)がステップ量を入力しなくても、適切なステップ量を自動的に決定でき、アニメーションに対して適切なジョグ操作が可能となる。
【0017】
例えば、ステップ量決定部では、タイムラインの長さの基準の長さに対する比率によりステップ量が決定される。また、例えば、ステップ量決定部では、ステップ量がタイムラインの隣接するキーフレーム間の長さに基づいて決定される。この場合、例えば、ステップ量決定部では、ステップ量が、タイムラインに含まれる複数のキーフレーム間の長さのうち、最も短いキーフレーム間の長さに基づいて、タイムラインの全体におけるステップ量が決定される。また、この場合、例えば、ステップ量決定部では、キーフレーム間毎に、このキーフレーム間の長さに基づいてステップ量が決定される。
【0018】
また、本技術において、例えば、複数のコンピュータグラフィクス記述データを保持するコンピュータグラフィクス記述データ保持部と、複数のコンピュータグラフィクス記述データにそれぞれ対応したステップ量を記憶するステップ量記憶部とをさらに備え、画像出力部は、複数のコンピュータグラフィクス記述データのうち選択された1つのコンピュータグラフィクス記述データを用いてコンピュータグラフィクス画像を生成し、制御部は、画像出力部が用いるコンピュータグラフィクス記述データに対応したステップ量を用いて進行量を求める、ようにされてもよい。この場合、画像出力部が使用するコンピュータグラフィクス記述データに合った適切なステップ量を使用でき、アニメーションに対して適切なジョグ操作が可能となる。
【0019】
また、本技術において、例えば、コンピュータグラフィクス記述データには速度係数が付加されており、制御部は、指示ステップ数に、ステップ量を乗算し、さらに、速度係数を乗算して進行量を求める、ようにされてもよい。この場合、速度係数が付与されたアニメーションに対して適切なジョグ操作が可能となる。
【0020】
また、本技術の他の概念は、
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な第1の画像出力部と、
時間軸上でフレーム/フィールド単位で進行する第2の画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記第1の画像出力部に該進められた時刻の画像出力を指示し、上記第2の画像出力部に該進められた時刻をフレーム/フィールド単位に丸めた値の画像出力を指示する制御部とを備える
画像出力装置にある。
【0021】
本技術において、第1の画像出力部は、時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能となっている。例えば、この第1の画像出力部は、タイムライン動作を含むコンピュータグラフィクス記述データに基づいてコンピュータグラフィクス画像を生成するものである。また、第2の画像出力部は、フレーム/フィールド単位で進行するものである。例えば、この第2の画像出力部は、VTRなどの画像再生部である。
【0022】
制御部により、操作入力量に所定の演算が施されて進行量が求められ、この求められた進行量に従って時間軸上で位置を示す時刻が進められる。そして、制御部により、第1の画像出力部にこの進められた時刻の画像出力が指示され、第2の画像出力部にこの進められた時刻をフレーム/フィールド単位に丸めた値の画像出力が指示される。
【0023】
このように本技術においては、操作入力量に所定の演算が施されて求められた進行量に従って時間軸上で位置を示す時刻が進められ、第1の画像出力部はこの進められた時刻の画像を出力するように制御される。例えば、操作入力量に対して進行量が小さくなるような演算が施されるとき、操作入力に対する時間軸上で位置を示す時刻の進みが小さくなる。
そのため、出力画像の細かな位置合わせが可能となる。また、第2の画像出力部はこの進められた時刻をフレーム/フィールド単位に丸めた値の画像を出力するように制御される。そのため、第2の画像出力部の制御も良好に行うことができる。
【0024】
なお、本技術において、例えば、制御部は、操作入力量に基づく第1の画像出力部の進行を停止した後に進行コマンドを受信したとき、保持している時間軸上の時刻に対してフレーム/フィールド単位より細かな単位部分を除去する調整を施し、その後に、第1の画像出力部に調整された時刻からの画像出力を指示する、ようにされてもよい。これにより、第1の画像出力部からの画像と第2の画像出力部からの画像とが、フレーム/フィールド単位より細かな単位部分のためにずれたままとなることを回避できる。
【発明の効果】
【0025】
本技術によれば、出力画像の細かな位置合わせが可能となる。
【図面の簡単な説明】
【0026】
【図1】本技術の第1の実施の形態としての画像出力装置の構成例を示すブロック図である。
【図2】ジョグ指示を受信した場合における制御部の制御動作の一例を示すフローチャートである。
【図3】フレーム/フィールドとタイムライン時刻との対応関係、さらには制御部からCG画像生成部、画像再生部への指示タイミングの一例を示す図である。
【図4】CG記述データに付加されているステップ量を使用する場合における制御部のロード処理の一例を示すフローチャートである。
【図5】CG記述データのタイムラインの長さの基準の長さに対する比率によりステップ量を決定して使用する場合における制御部のロード処理の一例を示すフローチャートである。
【図6】キーフレーム間隔からステップ量を決定する際に使用される関数を説明するための図である。
【図7】CG記述データのタイムラインの全体に対して1つのステップ量を決定する場合における制御部のロード処理の一例を示すフローチャートである。
【図8】キーフレーム間毎に、キーフレーム間隔に基づいてステップ量を決定する場合における制御部のジョグ指示受信時の制御動作の一例を示フローチャートである。
【図9】タイムライン時刻とステップ量との対応関係情報の一例を示す図である。
【図10】タイムライン時刻とステップ量との対応関係情報の他の例を示す図である。
【図11】タイムライン時刻とステップ量との対応関係情報に基づいてステップ量を決定して使用する場合における、制御部のロード処理の一例を示すフローチャートである。
【図12】タイムライン時刻とステップ量との対応関係情報に基づいてステップ量を決定して使用する場合における、制御部のジョグ指示受信時の制御動作の一例を示すフローチャートである。
【図13】角速度とステップ量との対応関係の一例を示す図である。
【図14】角速度に基づいてステップ量を決定して使用する場合における、制御部のジョグ指示受信時の制御動作の一例を示すフローチャートである。
【図15】CG記述データに速度係数が属性値として付加されている場合における、制御部のジョグ指示受信時の制御動作の一例を示すフローチャートである。
【図16】本技術の第2の実施の形態としての画像出力装置の構成例を示すブロック図である。
【図17】制御部のジョグ指示受信時の制御動作の一例を示すフローチャートである。
【図18】ジョグ操作の後、通常の進行(Play)が指示された場合における、制御部の制御動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0027】
以下、発明を実施するための形態(以下、「実施の形態」とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態
2.第2の実施の形態
3.変形例
【0028】
<1.第1の実施の形態>
[画像出力装置の構成]
図1は、本技術の第1の実施の形態としての画像出力装置100の構成例を示している。この画像出力装置100は、CG(コンピュータグラフィクス)制作部110と、CG記述データ記憶部120と、CG画像生成部130と、制御部140と、操作入力部150と、ネットワーク160を有している。CG制作部110、CG記述データ記憶部120、画像生成部130および制御部140は、ネットワーク160によって、互いに接続されている。
【0029】
CG制作部110は、CG制作ソフトウェアを持つパーソナルコンピュータ(PC:Personal Computer)により構成されている。このCG制作部110は、所定のフォーマットのCG記述データを出力する。CG記述データのフォーマットとして、例えばCollada(登録商標)がある。Colladaは、XML(Extensible Markup Language)の上で3DのCGデータの交換を実現するための記述定義である。CG記述データには、例えば、以下のような情報が記述される。
【0030】
(a)マテリアル(表面態様)の定義 このマテリアルの定義は、CGオブジェクトの表面の質(見え方)である。このマテリアルの定義には、色、反射の仕方、発光、凹凸などの情報が含まれる。また、このマテリアルの定義には、テクスチャマッピングの情報が含まれる場合がある。テクスチャマッピングとは、画像をCGオブジェクトに貼り付ける手法であり、処理系の負荷を比較的軽くしつつ、複雑な模様などを表現できる。
【0031】
(b)幾何学情報 Geometry の定義
この幾何学情報 Geometry の定義には、ポリゴンメッシュについての、位置座標、頂点の座標などの情報が含まれる。
(c)カメラの定義
このカメラの定義には、カメラのパラメタが含まれる。
【0032】
(d)アニメーションの定義
このアニメーションの定義には、アニメーションの各キーフレームにおける、様々な情報が含まれる。また、このアニメーションの定義には、アニメーションの各キーフレームにおける時刻の情報が含まれる。様々な情報とは、例えば、対応するオブジェクト(ノード)のキーフレーム点の時刻、位置や頂点の座標値、サイズ、接線ベクトル、補間方法、各種情報のアニメーション中の変化等の情報である。
(e)シーン中のノード(オブジェクト)の位置、方向、大きさ、対応する幾何学情報定義、対応するマテリアル定義
【0033】
これらの情報は、ばらばらではなく、例えば、以下のように対応付けられている。
・ノード・・・幾何学情報
・ノード・・・マテリアル(複数)
・幾何学情報・・・ポリゴン集合(複数)
・ポリゴン集合・・・マテリアル(ノードに対応するうちの一つ)
・アニメーション・・・ノード
【0034】
一つの画面を構成する記述はシーンと呼ばれる。各定義はライブラリと呼ばれ、シーンの中から参照される。例えば、直方体のオブジェクトが2つ存在する場合、それぞれが一つのノードとして記述され、各ノードにマテリアル定義のいずれかが連想される。この結果、各直方体のオブジェクトにはマテリアル定義が連想され、各マテリアル定義に従った色や反射特性で描画される。
【0035】
あるいは、直方体のオブジェクトは複数のポリゴン集合で記述され、ポリゴン集合にマテリアル定義が連想されている場合は、ポリゴン集合毎に、異なるマテリアル定義で描画される。例えば、直方体の面は6つであるが、このうちの3つの面で一つのポリゴン集合、1つの面で1つのポリゴン集合、2つの面で一つのポリゴン集合、というように、直方体のオブジェクトが3つのポリゴン集合で記述される場合もある。各ポリゴン集合に異なるマテリアル定義を連想できるため、面毎に異なる色で描画させることも可能である。
【0036】
マテリアル定義にテクスチャマッピングが指定されている場合は、連想されているオブジェクトの面に、画像データによる画像がテクスチャマッピングされる。
【0037】
例えば、マテリアル定義に対して画像をテクスチャマッピングするように設定される。そのため、直方体のオブジェクトの全ての面に同じ画像をテクスチャマッピングすることもでき、面毎に異なる画像をテクスチャマッピングすることもできる。
【0038】
CG記述データ記憶部120は、CG制作部110で生成された、所定数のCG記述データを記憶する。このCG記述データには、原作アニメーションのタイムライン(時間的に変化する制御の記述)が含まれている。この意味で、CG記述データ記憶部120は、タイムライン保持部を構成している。画像生成部130は、CG記述データ記憶部120に記憶されているCG記述データに基づいて、三次元仮想空間画像であるCG画像を生成する。
【0039】
制御部140は、画像出力装置100の各部の動作を制御する。この制御部140は、操作入力部150からのユーザ(使用者)の操作入力に応じて、CG画像生成部130におけるCG画像生成の進行(Play)制御を行う。この進行制御には、ユーザのジョグ操作ダイヤル151の操作によるジョグ進行も含まれる。
【0040】
制御部140は、ジョグ進行の制御のためのステップ量を記憶するステップ量記憶部170を有している。ここで、ステップ量は、ジョグ操作ダイヤル151の1指示ステップに対する実数値としてのフレーム/フィールド数を意味している。このステップ量記憶部170には、CG記述データ記憶部120に記憶されているCG記述データ毎に記憶することが可能とされている。
【0041】
操作入力部150は、ユーザインタフェースを構成している。この操作入力部150は、制御部140に接続されている。ユーザは、この操作入力部150を操作して、種々の操作を行うことができる。例えば、ユーザは、CG記述データ記憶部120に記憶されている所定数のCG記述データから、CG画像生成部130で使用すべきCG記述データを選択する操作を行うことができる。この操作が行われるとき、制御部140は、CG記述データ記憶部120から当該選択されたCG記述データをCG画像生成部130にロードする。
【0042】
また、例えば、ユーザは、CG画像生成の進行(Play)をオン/オフする操作を行うことができる。CG画像生成の進行(Play)のオンが操作されるとき、操作入力部150から制御部140には、進行コマンドが送られる。このとき、制御部140は、タイムライン上で位置を示すタイムライン時刻を、保持しているタイムライン時刻(最初はアニメーションの先頭)から順次進行させ、CG画像生成部130がタイムライン時刻に対応したCG画像生成を行うように制御する。制御部140は、そのタイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、CG画像生成部130に対する制御を決定する。
【0043】
また、CG画像生成の進行(Play)のオフが操作されるとき、操作入力部150から制御部140には、進行停止コマンドが送られる。このとき、制御部140は、タイムライン上で位置を示すタイムライン時刻の進行を止め、例えば、CG画像生成部130をその進行が停止されたタイムライン時刻のCG画像生成を行っている状態に制御する。この状態から再度CG画像生成の進行(Play)のオンが操作されるとき、制御部140は、タイムライン上で位置を示すタイムライン時刻を、保持しているタイムライン時刻から順次進行させ、上述CG画像生成部130がタイムライン時刻に対応したCG画像生成を行うように制御する。
【0044】
操作入力部150は、ステップ量設定部152を有している。ユーザは、このステップ量設定部152により、CG記述データ記憶部120に記憶されているCG記述データ毎に、ステップ量を設定できる。すなわち、ユーザが、CG記述データ毎にそのCGアニメーションの内容に応じたステップ量を決めて、設定できる。この設定によるステップ量は、制御部140のステップ量記憶部170に記憶される。なお、ユーザは、このステップ量設定部152により、制御部140のステップ量記憶部170に記憶されているCG記述データ毎のステップ量の変更、削除も可能とされている。
【0045】
また、操作入力部150は、ジョグ操作ダイヤル151を有している。ユーザは、このジョグ操作ダイヤル151を操作することで、CG画像生成部130におけるCG画像生成に関してジョグ操作を行うことができる。ジョグ操作ダイヤル151の回転操作に応じて、操作入力量としての指示ステップ数と、回転方向情報が制御部140に送られる。
【0046】
制御部140は、タイムライン上で位置を示すタイムライン時刻を、保持しているタイムライン時刻から指示ステップ数に応じて進行あるいは逆行(逆進行)をさせ、CG画像生成部130がタイムライン時刻に対応したCG画像生成を行うように制御する。例えば、ジョグ操作ダイヤル151の回転方向が右回りであるとき進行となり、それが左回りのとき逆行となる。制御部140は、そのタイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、CG画像生成部130に対する制御を決定する。
【0047】
ここで、制御部140は、タイムライン時刻の進行量を、ジョグ操作ダイヤル151からの指示ステップ数に、ステップ量記憶部170に記憶されているステップ量を乗算することで求める。勿論、このステップ量は、現在CG画像生成部130にロードされて使用されているCG記述データに対応したものである。例えば、制御部140は、指示ステップ数をNとし、ステップ量がMフレームであるとき、進行量を、N×Mフレームと求める。上述したようにステップ量は実数値である。そのため、このように求められる進行量も実数値となる。
【0048】
なお、インタレースの場合、ステップ量は例えばフィールド単位で与えられる。その場合、制御部140は、1フィールドを、0.5フレームに換算して演算を行う。例えば、制御部140は、指示ステップ数をNとし、ステップ量がMフィールドであるとき、進行量を、N×M×0.5フレームと求める。
【0049】
図2のフローチャートは、ユーザがジョグ操作ダイヤル151を操作し、制御部140が、ジョグ指示、つまり指示ステップ数および回転方向情報を受信した場合における、制御動作の一例を示している。制御部140は、ステップST1において、ジョグ指示を受信し、制御動作を開始する。ジョグ指示は、ジョグ操作ダイヤル151の回転が検知された時、1フレームの時間あるいは1フィールドの時間の間の回転量に比例させて指示ステップ量が決まるので、その指示ステップ量を伴う指示として、発生する。ジョグ指示は、1フレームの時間あるいは1フィールドの時間毎に、一回発生するか、発生しないかとなる。
【0050】
次に、制御部140は、ステップST2において、ステップ量記憶部170から、現在CG画像生成部130にロードされて使用されているCG記述データに対応したステップ量を読み込む。そして、制御部140は、ステップST3において、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進行させる。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0051】
次に、制御部140は、ステップST4において、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140は、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140は、ステップST4の処理の後、ステップST5において、制御動作を終了する。
【0052】
上述したように、図1に示す画像出力装置100においては、制御部140は、ジョグ操作ダイヤル151によるジョグ指示があるとき、指示ステップ数にステップ量を乗算して進行量を求め、タイムライン時刻を進行させる。そして、制御部140は、その進行されたタイムライン時刻のCG画像を生成するように、CG画像生成部130を制御する。この場合、例えば、ステップ量が小さく設定されるときには、ジョグ操作ダイヤル151の1指示ステップに対する進行量が小さくなる。そのため、CG画像生成部130における出力画像の細かな位置合わせが可能となる。
【0053】
図3は、フレーム/フィールドとタイムライン時刻との対応関係、さらには制御部140からCG画像生成部130等への指示タイミングの一例を示している。従来のジョグ操作では、図3(a)に「黒逆三角形」印で示すように、フレーム/フィールド単位でコマ送り/戻りが実行される。
【0054】
これに対して、図3(b)は、ステップ量を0.5フィールドに設定した場合の例を示している。この場合、「黒逆三角形」印で示すように、ジョグ操作ダイヤル151の1指示ステップに対して1/4フレーム(1/2フィールド)の刻みでタイムライン時刻が進行され、CG画像生成部130には、進行されたタイムライン時刻の画像生成が指示される。ジョグ操作されていない期間、画像生成部130は、ジョグ操作で最終的に進行されたタイムライン時刻に対応したCG画像を出力し続ける状態となる。これはステップ量がその他の値である場合も同様である。
【0055】
また、図3(c)は、ステップ量を1/3フィールドに設定した場合の例を示している。この場合、「黒逆三角形」印で示すように、ジョグ操作ダイヤル151の1指示ステップに対して1/6フレーム(1/3フィールド)の刻みでタイムライン時刻が進行され、CG画像生成部130には、進行されたタイムライン時刻の画像生成が指示される。
【0056】
[CG記述データに付加されているステップ量の使用]
なお、上述実施の形態においては、ユーザがステップ量設定部152を操作することで設定されたステップ量を使用する例を示した。しかし、CG記述データ記憶部120に記憶されているCG記述データにステップ量が付加されており、そのステップ量を使用することも考えられる。その場合、制御部140は、CG記述データ記憶部120からCG画像生成部130にCG記述データをロードする際に、そのCG記述データに付加されているステップ量をステップ量記憶部170に記憶し、ジョグ指示受信があるときに読み込んで使用する。
【0057】
図4のフローチャートは、CG記述データに付加されているステップ量を使用する場合における制御部140のロード処理の一例を示している。制御部140は、ステップST11において、ロード処理を開始する。このロード処理は、例えば、ユーザが操作入力部150によりCG画像生成部130で使用すべきCG記述データを選択する操作を行うことで、開始される。
【0058】
次に、制御部140は、ステップST12において、CG記述データ記憶部120からユーザ選択のタイムライン動作(アニメーション)を含むCG記述データを読み込み、CG画像生成部130にロードする。そして、制御部140は、ステップST13において、そのCG記述データに付加されているステップ量をCG記述データ記憶部120、あるいはその他の場所から読み取る。
【0059】
次に、制御部140は、ステップST14において、読み取ったステップ量を、ステップ量記憶部170に記憶する。制御部140は、このステップST14の処理の後、ステップST15において、ロード処理を終了する。
【0060】
このようにCG記述データに付加されているステップ量を用いる場合、ユーザは、ステップ量を設定する手間を省くことができ、しかも、CG記述データに適合した1指示ステップ当たりの進行量で適切なジョグ操作を行うことが可能となる。
【0061】
[CG記述データのタイムラインに基づくステップ量決定]
また、上述実施の形態においては、ユーザがステップ量設定部152を操作することで設定されたステップ量を使用する例を示した。しかし、CG記述データ記憶部120からCG画像生成部130にロードされるCG記述データのタイムラインに基づいてステップ量を決定し、そのステップ量を使用することも考えられる。
【0062】
例えば、制御部140は、CG画像生成部130にロードされるCG記述データのタイムラインの長さの、基準の長さに対する比率によりステップ量を決定するようにされる。アニメーションが短いほど、時間の進行に対して変化が大きいとみて、ジョグ操作ダイヤル151の1指示ステップに対する進行量(ジョグ量)を小さくするように、ステップ量を決定する。例えば、制御部140は、タイムラインの長さ(アニメーションの長さ)をL(秒)として、以下の(1)式により、ステップ量Jを求める。なお、ステップ量Jを求めるLの関数は、この(1)式に限定されるものではない。
J=L/15 ・・・(1)
【0063】
この場合、15秒のアニメーションのときは、ステップ量は1(フレームあるいはフィールド)に決定される。また、30秒のアニメーションのときは、ステップ量は2に決定され、ジョグ操作ダイヤル151の1指示ステップに対する進行量(ジョグ量)は大きくなる。さらに、5秒のアニメーションのときは、ステップ量は1/3に決定され、ジョグ操作ダイヤル151の1指示ステップに対する進行量(ジョグ量)は小さくなる。
【0064】
図5のフローチャートは、その場合における制御部140のロード処理の一例を示している。制御部140は、ステップST21において、ロード処理を開始する。このロード処理は、例えば、ユーザが操作入力部150によりCG画像生成部130で使用すべきCG記述データを選択する操作を行うことで、開始される。
【0065】
次に、制御部140は、ステップST22において、CG記述データ記憶部120からユーザ選択のタイムライン動作(アニメーション)を含むCG記述データを読み込み、CG画像生成部130にロードする。そして、制御部140は、ステップST23において、読み込んだCG記述データからタイムラインの長さLを得る。
【0066】
次に、制御部140は、ステップST24において、Lの関数(例えば、(1)式参照)で、ステップ量Jを算出する。そして、制御部140は、ステップST25において、算出したステップ量Jを、ステップ量記憶部170に記憶する。制御部140は、このステップST25の処理の後、ステップST26において、ロード処理を終了する。
【0067】
このようにタイムラインの長さに基づいてステップ量を決定して用いる場合、ユーザは、ステップ量を設定する手間を省くことができ、しかも、CG記述データに適合した1指示ステップ当たりの進行量で適切なジョグ操作を行うことが可能となる。
【0068】
また、例えば、制御部140は、CG画像生成部130にロードされるCG記述データのライムラインにおける隣接するキーフレーム間の長さ(キーフレーム間隔)に基づいてステップ量を決定するようにされる。キーフレーム間隔が狭い(時間が短い)と変化は急であるので、ジョグ操作ダイヤル151の1指示ステップに対する進行量(ジョグ量)を小さくした方が微妙な操作が楽になる。
【0069】
例えば、制御部140は、キーフレームの間隔(隣接するキーフレームの両方を含む長さ)をW(秒)として、以下の(2)式により、ステップ量Jを求める。図6(a)は、この(2)式のWの関数を示している。
J=W/10 ・・・(2)
【0070】
この場合、キーフレーム間隔が10秒のときは、ステップ量は1(フレームあるいはフィールド)に決定される。また、キーフレーム間隔が5秒のときは、ステップ量は1/2に決定され、ジョグ操作ダイヤル151の1指示ステップに対する進行量(ジョグ量)は小さくなる。
【0071】
このようにキーフレーム間隔を用いてステップ量を決定する場合、制御部140は、例えば、CG記述データのタイムラインの全体に対して1つのステップ量を決定することができる。この場合、ステップ量Jの決定に用いるキーフレーム間隔としては、例えば、タイムライン(アニメーション)中のキーフレーム間隔の中で最短のものを用いられる。この場合には、ジョグ操作ダイヤル151により必要な微妙なジョグ操作が可能になる。
【0072】
図7のフローチャートは、その場合における制御部140のロード処理の一例を示している。制御部140は、ステップST31において、ロード処理を開始する。このロード処理は、例えば、ユーザが操作入力部150によりCG画像生成部130で使用すべきCG記述データを選択する操作を行うことで、開始される。
【0073】
次に、制御部140は、ステップST32において、CG記述データ記憶部120からユーザ選択のタイムライン動作(アニメーション)を含むCG記述データを読み込み、CG画像生成部130にロードする。そして、制御部140は、ステップST33において、読み込んだCG記述データにおけるタイムラインのキーフレーム間隔のうち最短のキーフレーム間隔Wを得る。
【0074】
次に、制御部140は、ステップST34において、Wの関数(例えば、(2)式参照)で、ステップ量Jを算出する。そして、制御部140は、ステップST35において、算出したステップ量Jを、ステップ量記憶部170に記憶する。制御部140は、このステップST35の処理の後、ステップST36において、ロード処理を終了する。
【0075】
また、キーフレーム間隔を用いてステップ量を決定する場合、制御部140は、例えば、キーフレーム間毎に、キーフレーム間隔に基づいてステップ量を決定することができる。この場合には、ジョグ操作ダイヤル151により、キーフレーム間隔が狭いところでは微妙なジョグ操作(アニメーション時刻を狙う操作)が可能となり、広いところでは変化は緩やかであるのでそれに応じた粗いジョグ操作が可能となる。
【0076】
図8のフローチャートは、その場合における、制御部140のジョグ指示受信時の制御動作の一例を示している。制御部140は、ステップST41において、ジョグ指示を受信し、制御動作を開始する。
【0077】
次に、制御部140は、ステップST42において、現在のタイムライン時刻の前後のキーフレームの時刻(タイムコード)をK1,K2とする。そして、制御部140は、ステップST43において、キーフレーム間隔W=K2−K1を得る。また、制御部140は、ステップST44において、Wの関数(例えば、(2)式参照)で、ステップ量Jを算出する。
【0078】
次に、制御部140は、ステップST45において、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進行させる。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0079】
次に、制御部140は、ステップST46において、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140は、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140は、ステップST46の処理の後、ステップST47において、制御動作を終了する。
【0080】
なお、ステップ量Jを求めるWの関数は、上述の(2)式に限定されるものではない。例えば、図6(b)に示すように、キーフレームの間隔がある値付近から小さくなると急速にステップ量が小さくなり、キーフレームの間隔が大きくなるとある値からは一定のステップ量になるような関数にすることも考えられる。このような関数を用いることで、細かい箇所の操作性と、おおまかな操作は従来の操作感と変えないことを両立できる。
【0081】
このようにタイムラインのキーフレーム間隔に基づいてステップ量を決定して用いる場合、ユーザは、ステップ量を設定する手間を省くことができ、しかも、CG記述データに適合した1指示ステップ当たりの進行量で適切なジョグ操作を行うことが可能となる。
【0082】
[タイムライン時刻とステップ量との対応関係情報に基づくステップ量決定]
また、上述実施の形態においては、ユーザがステップ量設定部152を操作することで設定されたステップ量を使用する例を示した。しかし、CG記述データ記憶部120に記憶されている所定数のCG記述データにそれぞれ対応してタイムライン時刻とステップ量との対応関係情報が記憶されている場合も考えられる、その場合には、その対応関係情報に基づいてステップ量を決定し、そのステップ量を使用することも考えられる。
【0083】
図9は、タイムライン時刻とステップ量との対応関係情報の一例を示している。この例の場合、タイムライン(アニメーション)の最初と最後は細かなジョグ操作を行いたいのでステップ量が小さく設定されている。図10は、タイムライン時刻とステップ量との対応関係情報の他の一例を示している。この例の場合も図9に示す例とほぼ同じであるが、横軸は時刻の値そのものではなく、全体に対する比率(%)で表されている。この例の場合も、タイムライン(アニメーション)の最初と最後は細かなジョグ操作を行いたいのでステップ量が小さく設定されている。また、この例の場合、ステップ量が大きく変化する境界部分においては、ステップ量が急に変化するのではなく、徐々に変化するようにされている。
【0084】
図11のフローチャートは、その場合における制御部140のロード処理の一例を示している。制御部140は、ステップST51において、ロード処理を開始する。このロード処理は、例えば、ユーザが操作入力部150によりCG画像生成部130で使用すべきCG記述データを選択する操作を行うことで、開始される。
【0085】
次に、制御部140は、ステップST52において、CG記述データ記憶部120からユーザ選択のタイムライン動作(アニメーション)を含むCG記述データを読み込み、CG画像生成部130にロードする。そして、制御部140は、ステップST53において、そのCG記述データに付加されている、タイムライン時刻とステップ量との対応関係情報(図9、図10参照)を、CG記述データ記憶部120、あるいはその他の場所から読み取る。
【0086】
次に、制御部140は、ステップST54において、読み取ったタイムライン時刻とステップ量との対応関係情報を、例えば、ステップ量記憶部170に記憶する。制御部140は、このステップST54の処理の後、ステップST55において、ロード処理を終了する。
【0087】
また、図12のフローチャートは、その場合における、制御部140のジョグ指示受信時の制御動作の一例を示している。制御部140は、ステップST61において、ジョグ指示を受信し、制御動作を開始する。
【0088】
次に、制御部140は、ステップS62において、ステップ量記憶部170からタイムライン時刻とステップ量との対応関係情報を読み込み、この対応関係情報から現在のタイムライン時刻に対応したステップ量を得る。この場合、制御部140は、対応関係情報におけるタイムライン時刻が全体に対する比率(%)で表されている場合には、現在のタイムライン時刻のタイムライン全体に対する比率(%)を算出した後に、対応関係情報からステップ量を得る。
【0089】
次に、制御部140は、ステップST63において、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進行させる。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0090】
次に、制御部140は、ステップST64において、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140は、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140は、ステップST64の処理の後、ステップST65において、制御動作を終了する。
【0091】
このようにCG記述データに対応して記憶されているタイムライン時刻とステップ量との対応関係情報に基づいてステップ量を決定して用いる場合、ユーザは、ステップ量を設定する手間を省くことができる。また、CG記述データに適合したタイムライン時刻毎の1指示ステップ当たりの進行量で適切なジョグ操作を行うことが可能となる。
【0092】
[ジョグ操作ダイヤルの操作速度(角速度)に基づくステップ量決定]
また、上述実施の形態においては、ユーザがステップ量設定部152を操作することで設定されたステップ量を使用する例を示した。しかし、ジョグ操作ダイヤル151の操作速度である角速度に基づいてステップ量を決定し、そのステップ量を使用することも考えられる。角速度は、ジョグ指示が発生する時点までの、ジョグ操作ダイヤル151の一定期間の回転量から算出される。図13は、角速度とステップ量との対応関係の一例を示している。
【0093】
図14のフローチャートは、その場合における、制御部140のジョグ指示受信時の制御動作の一例を示している。制御部140は、ステップST71において、ジョグ指示を受信し、制御動作を開始する。
【0094】
次に、制御部140は、ステップST72において、角速度とステップ量との対応関係(図13参照)に基づいて、ジョグ操作ダイヤル151の角速度(操作速度)に対応した実数値のステップ量を求める。そして、制御部140は、ステップST73において、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進行させる。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0095】
次に、制御部140は、ステップST74において、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140は、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140は、ステップST74の処理の後、ステップST75において、制御動作を終了する。
【0096】
このようにジョグ操作ダイヤル151の角速度(操作速度)とステップ量との対応関係に基づいてステップ量を決定して用いる場合、ユーザは、ステップ量を設定する手間を省くことができる。また、ユーザのジョグ操作ダイヤル151の操作速度に適合した1指示ステップ当たりの進行量で適切なジョグ操作を行うことが可能となる。
【0097】
[CG記述データに速度係数付加]
また、上述していないが、CG記述データ記憶部120に記憶されているCG記述データのそれぞれに速度係数が属性値として付加されることも考えられる。この速度係数は、CG画像生成部130のCG画像生成におけるタイムライン時刻の進行速度の制御に用いられる。すなわち、この速度係数は、元のCG記述データの速度に乗算してアニメーションを実行させる値である。
【0098】
タイムライン時刻の進行速度は、通常の進行速度の速度係数倍とされる。そのため、CG記述データの元のタイムラインの長さがTとし、速度係数がCであるとき、実際のCG画像生成のタイムラインの長さはT/Cとなる。具体的には、例えば、長さ20秒で制作されたCGアニメーションに、速度係数4を付与すると、5秒の長さになる。
【0099】
この場合、速度係数の付与により、そのようなアニメーションに変化した(派生した)として扱われる。このCG記述データがCG画像生成部130にロードされてジョグ操作される際には、制御部140は、ジョグ操作ダイヤル151による指示ステップ数にステップ量を乗算し、さらに、この速度係数を乗算して、進行量を求める。例えば、ステップ量が0.2フレームであるとき、速度係数が4である場合には、1指示ステップ当たり0.8フレームだけタイムライン時刻を進める。
【0100】
速度係数に基づいて上述したようにジョグ操作における進行量を求めることで、速度係数を付与したアニメーションに対して意図したジョグ操作が可能となる。上述の例では、5秒の他の素材(VTR素材など)と同期して開始と終了を揃えた操作制御が可能となる。
【0101】
図15のフローチャートは、その場合における、制御部140のジョグ指示受信時の制御動作の一例を示している。制御部140は、ステップST81において、ジョグ指示を受信し、制御動作を開始する。
【0102】
次に、制御部140は、ステップST82において、ステップ量記憶部170から、現在CG画像生成部130にロードされて使用されているCG記述データに対応したステップ量を読み込むと共に、そのCG記述データに付加されていた速度係数を、制御部140内の図示しない記憶部から読み出す。この速度係数は、例えば、CG記述データを画像生成部130にロードする際に、制御部140により取得され、この制御部140内の記憶部に記憶される。
【0103】
次に、制御部140は、ステップST83において、指示ステップ数にステップ量を乗算し、さらに、速度係数を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進める。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0104】
次に、制御部140は、ステップST84において、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140は、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140は、ステップST84の処理の後、ステップST85において、制御動作を終了する。
【0105】
<2.第2の実施の形態>
[画像出力装置の構成]
図16は、本技術の第2の実施の形態としての画像出力装置100Aの構成例を示している。この図16において、図1と対応する部分には同一符号を付し、適宜、その詳細説明は省略する。
【0106】
この画像出力装置100Aは、CG(コンピュータグラフィクス)制作部110と、CG記述データ記憶部120と、CG画像生成部130と、制御部140Aと、操作入力部150と、ネットワーク160と、画像再生部180を有している。CG制作部110、CG記述データ記憶部120、画像生成部130および制御部140は、ネットワーク160によって、互いに接続されている。
【0107】
画像再生部180は、例えば、VTR(Video Tape Recorder)である。CG画像生成部130が時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な第1の画像出力部を構成するのに対し、この画像再生部180は時間軸上でフレーム/フィールド単位で進行する第2の画像出力部を構成している。
【0108】
制御部140は、画像出力装置100Aの各部の動作を制御する。この制御部140Aは、操作入力部150からのユーザ(使用者)の操作入力に応じて、CG画像生成部130におけるCG画像生成の進行(Play)制御と、画像出力部180における画像再生の進行(Play)制御を行う。この進行制御には、ユーザのジョグ操作ダイヤル151の操作によるジョグ進行も含まれる。
【0109】
制御部140Aは、ジョグ操作ダイヤル151が操作されるとき、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進める。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。なお、ステップ量が実数値であることから、進行量も実数値となる。すなわち、整数値だけでなく、小数値も取りうる。
【0110】
制御部140Aは、CG画像生成部130を、進められたタイムライン時刻に対応したCG画像生成を行うように制御する。この場合、制御部140Aは、そのタイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、CG画像生成部130に対する制御を決定する。
【0111】
また、制御部140Aは、進められたタイムライン時刻をフレーム/フィールド単位に丸め、画像再生部180を、丸めた値(時刻)に対応した画像再生を行うように制御する。ここで、進められたタイムライン時刻をフレーム/フィールド単位に丸めるということは、進められたタイムライン時刻のフレーム/フィールド単位より小さな単位部分を除去することを意味する。
【0112】
なお、例えば、画像再生部180がVTRである場合、そのVTRに指示する具体的な通信内容は、実際のプロトコル(既存プロトコル)に依存するので、既存プロトコルで、目的を達成する内容の通信を作成する。例えば、1フィールド進めることになった場合は、1フィールド時間(1/60秒)で進めるように通信コマンドを送る。例えば、1フィールドだけ進行(Play)の指示を送り、次のフィールドで止まるように制御すれば実現できる。VTR制御は、元来サーボ制御であり、速度の制御というのがベースになっている。
【0113】
図17のフローチャートは、制御部140Aのジョグ指示受信時の制御動作の一例を示している。なお、この例は、画像再生部180がインタレース素材を扱う場合の例を示している。画像再生部180が、プログレッシブ素材を扱う場合には、「フィールド単位」の部分が「フレーム単位」となる。制御部140Aは、ステップST91において、ジョグ指示を受信し、制御動作を開始する。
【0114】
次に、制御部140Aは、ステップST92において、ステップ量記憶部170から、現在CG画像生成部130にロードされて使用されているCG記述データに対応したステップ量を読み込む。そして、制御部140Aは、ステップST93において、指示ステップ数にステップ量を乗算して進行量を求め、保持しているタイムライン時刻にその進行量を加算して、タイムライン時刻を進行させる。この場合、回転方向が右回りであるとき進行量の符号は正とされ、逆に回転方向が左回りであるとき進行量の符号は負とされる。
【0115】
次に、制御部140Aは、ステップST94において、タイムライン時刻がフィールド単位で増加(進行量が負ならば減少)したか否かを判断する。フィールド単位で増加したとき、制御部140Aは、ステップST95の処理に移る。このステップST95において、制御部140Aは、画像再生部180に、進行されたタイムライン時刻をフレーム/フィールド単位に丸めた値(時刻)の画像再生を指示する。
【0116】
制御部140Aは、ステップST95の処理の後、ステップST96の処理に移る。ステップST94においてフィールド単位で増加していなかったとき、制御部140Aは、直ちに、ステップST96の処理に移る。このステップST96において、制御部140Aは、CG画像生成部130に、進行されたタイムライン時刻のCG画像生成を指示する。この場合、制御部140Aは、当該タイムライン時刻がキーフレームでないときは、タイムラインの前後のキーフレームのパラメタを用いて、当該タイムライン時刻のパラメタを補間し、画像生成部130に対する制御を決定する。制御部140Aは、このステップST96の処理の後、ステップST97において、制御動作を終了する。
【0117】
図3(d)は、ステップ量を1/3フィールドに設定した場合の例を示している。この場合、「黒逆三角形」印で示すように、ジョグ操作ダイヤル151の1指示ステップに対して1/6フレーム(1/3フィールド)の刻みでタイムライン時刻が進行され、CG画像生成部130には、進行されたタイムライン時刻の画像生成が指示される。また、この場合、「白逆三角形」印で示すように、画像再生部180には、3指示ステップに1回、進行されたタイムライン時刻をフィールド単位で丸めた値(時刻)の画像再生が指示される。
【0118】
[停止時の端数処理]
ジョグ操作は、本来断続的なものであり、停止と進行が繰り返されることが多い。その場合は、上述の処理を1フレームの時間あるいは1フィールドの時間毎に続けていけばよい。すなわち、実数値のタイムライン時刻を継続して使用すればよい。しかし、ジョグ操作の後、通常の進行(Play)が指示された場合に、制御部140Aは、特別な処理を行う。
【0119】
例えば、進行コマンドの受信により通常の進行(play)、つまり速度1の進行を開始した際、タイムライン時刻が非整数であった場合、整数が加算されていっても、そのまま非整数の状態が継続することになる。これでは、画像再生部180の例えばVTRの出力するコマと、CG画像生成部130の出力する非整数のタイムライン時刻に応じた画像は、非整数の端数の分だけ微妙にずれたままとなる。
【0120】
そこで、制御部140Aは、ジョグ操作が停止された後に、進行コマンドの受信により通常の進行(play)を開始する場合には、保持しているタイムライン時刻からフレーム/フィールド単位より細かな単位部分を除去する調整を施す。その後、制御部140Aは、CG画像生成部130に、調整された時刻からの画像生成あるいは画像再生を指示する。
【0121】
図18のフローチャートは、ジョグ操作の後、通常の進行(Play)が指示された場合における、制御部140Aの制御動作の一例を示している。制御部140Aは、ステップST101において、制御動作を開始する。なお、このときのタイムライン時刻(時間軸上の時刻)はT1であるとする。
【0122】
次に、制御部140Aは、ステップST102において、操作入力部150から進行(Play)コマンドを受信する。この場合の速度係数はS1であるとする。そして、制御部140Aは、ステップST103において、タイムライン時刻のT1に、例えば、フレーム単位より細かな単位部分、つまりフレーム端数があるか否かを判断する。
【0123】
フレーム端数がないとき、制御部140Aは、直ちに、ステップST106の処理に進む。一方、フレーム端数があるとき、制御部140Aは、ステップST104の処理に移る。このステップST104において、制御部140Aは、速度係数S1が整数値であるか否かを判断する。速度係数S1が整数値でないとき、制御部140Aは、直ちに、ステップST106の処理に進む。
【0124】
速度係数S1が整数値であるとき、制御部140Aは、タイムライン時刻のT1のフレーム端数を切り捨て、新しいタイムライン時刻T1とする。制御部140Aは、ステップST105の処理の後、ステップST106の処理に進む。
【0125】
このステップST106において、制御部140Aは、CG画像生成部130に、CG画像生成を進行させる。この場合、毎フレーム、進行開始からの実時間フレーム数tを用いて、S1×tを求めてT1に加算したタイムライン時刻のCG画像生成を、CG画像生成部130に指示する。なお、tは1から始まる。また、毎フレームでS1×tを求めてT1に加算することで、加算の反復で計算誤差が累積することが防止される。
【0126】
この図18のフローチャートにおいて、例えば、最初に保持されているタイムライン時刻(タイムコード)が「01:00:00:05.75」であり。速度係数S1が整数値であるとする。その場合、ステップST103でタイムライン時刻T1にフレーム端数があると判断され、ステップST104で速度係数S1が整数値であると判断される。
【0127】
そのため、ステップST105でフレーム端数が切り捨てられ、新しいタイムライン時刻(タイムコード)は、「01:00:00:05.00」となる。そのため、ステップST106では、タイムライン時刻(タイムコード)が「01:00:00:05」→「01:00:00:07」→「01:00:00:11」→・・・のように進行し、これに従って、CG画像生成部130にCG画像生成が指示される。
【0128】
なお、図18のフローチャートにおいて、ステップST103の処理は実際には不要である。すなわち、ステップST105のフレーム端数の切り捨てで、タイムライン時刻(タイムコード)T1が整数であれば、何も変わらないからである。
【0129】
<3.変形例>
なお、上述実施の形態においては、時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部がCG画像生成部130であるものを示した。しかし、VTR、ディスクプレーヤなどの画像再生装置であっても、フレーム/フィールド単位より細かい単位での指示を受けられる場合は、端数を含めた指示を送る対象となる。補間技術によりフィールド単位より細かい単位で動画のコマを出力できる場合は、操作に応じた出力が得られる。
【0130】
本技術は、以下のような構成も取ることができる。
(1)時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力部に該進められた時刻の画像出力を指示する制御部とを備える
画像出力装置。
(2)上記画像出力部は、
タイムライン動作を含むコンピュータグラフィクス記述データに基づいてコンピュータグラフィクス画像を生成し、
上記制御部は、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記タイムライン上で位置を示すタイムライン時刻を求め、上記画像出力部に該進められたタイムライン時刻のコンピュータグラフィクス画像の生成を指示する
前記(1)に記載の画像出力装置。
(3)上記操作入力量は、ジョグ操作ダイヤルによる指示ステップ数であり、
上記制御部は、
上記指示ステップ数に、1指示ステップに対する実数値としてのフレーム/フィールド数であるステップ量を乗算して上記進行量を求める
前記(1)または(2)に記載の画像出力装置。
(4)上記ステップ量を設定するステップ量設定部をさらに備える
前記(3)に記載の画像出力装置。
(5)上記ステップ量を上記タイムラインに基づいて決定するステップ量決定部をさらに備える
前記(3)または(4)に記載の画像出力装置。
(6)上記ステップ量決定部は、
上記タイムラインの長さの、基準の長さに対する比率により上記ステップ量を決定する
前記(5)に記載の画像出力装置。
(7)上記ステップ量決定部は、
上記ステップ量を上記タイムラインの隣接するキーフレーム間の長さに基づいて決定する
前記(5)に記載の画像出力装置。
(8)上記ステップ量決定部は、
上記ステップ量を、上記タイムラインに含まれる複数の上記キーフレーム間の長さのうち、最も短いキーフレーム間の長さに基づいて、上記タイムラインの全体におけるステップ量を決定する
前記(7)に記載の画像出力装置。
(9)上記ステップ量決定部は、
キーフレーム間毎に、該キーフレーム間の長さに基づいて上記ステップ量を決定する
前記(7)に記載の画像出力装置。
(10)タイムライン時刻とステップ量との対応関係情報に基づいてタイムライン時刻毎に上記ステップ量を決定するステップ量決定部をさらに備える
前記(3)または(4)に記載の画像出力装置。
(11)上記ステップ量を上記ジョグ操作ダイヤルの角速度に基づいて決定するステップ量決定部をさらに備える
前記(3)または(4)に記載の画像出力装置。
(12)複数の上記コンピュータグラフィクス記述データを保持するコンピュータグラフィクス記述データ保持部と、
上記複数のコンピュータグラフィクス記述データにそれぞれ対応した上記ステップ量を記憶するステップ量記憶部とをさらに備え、
上記画像出力部は、
上記複数のコンピュータグラフィクス記述データのうち選択された1つのコンピュータグラフィクス記述データを用いてコンピュータグラフィクス画像を生成し、
上記制御部は、
上記画像出力部が用いるコンピュータグラフィクス記述データに対応したステップ量を用いて上記進行量を求める
前記(3)から(11)のいずれかに記載の画像出力装置。
(13)上記コンピュータグラフィクス記述データには速度係数が付加されており、
上記制御部は、
上記指示ステップ数に、上記ステップ量を乗算し、さらに、上記速度係数を乗算して上記進行量を求める
前記(3)から(12)のいずれかに記載の画像出力装置。
(14)時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部を備える画像出力装置の制御方法であって、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力部に該進められた時刻の画像出力を指示する
画像出力装置の制御方法。
(15)コンピュータを、
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力手段と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力手段に該進められた時刻の画像出力を指示する制御手段と
して機能させるプログラム。
(16)時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な第1の画像出力部と、
時間軸上でフレーム/フィールド単位で進行する第2の画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記第1の画像出力部に該進められた時刻の画像出力を指示し、上記第2の画像出力部に該進められた時刻をフレーム/フィールド単位に丸めた値の画像出力を指示する制御部とを備える
画像出力装置。
(17)上記制御部は、
上記操作入力量に基づく上記第1の画像出力部の進行を停止した後に進行コマンドを受信したとき、保持している上記時間軸上の時刻に対してフレーム/フィールド単位より細かな単位部分を除去する調整を施し、その後に、上記第1の画像出力部に上記調整された時刻からの画像出力を指示する
前記(16)に記載の画像出力装置。
【符号の説明】
【0131】
100,100A・・・画像出力装置
110・・・CG制作部
120・・・CG記述データ記憶部
130・・・CG画像生成部
140,140A・・・制御部
150・・・操作入力部
151・・・ジョグ操作ダイヤル
152・・・ステップ量設定部
160・・・ネットワーク
170・・・ステップ量記憶部
180・・・画像再生装置

【特許請求の範囲】
【請求項1】
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力部に該進められた時刻の画像出力を指示する制御部とを備える
画像出力装置。
【請求項2】
上記画像出力部は、
タイムライン動作を含むコンピュータグラフィクス記述データに基づいてコンピュータグラフィクス画像を生成し、
上記制御部は、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記タイムライン上で位置を示すタイムライン時刻を求め、上記画像出力部に該進められたタイムライン時刻のコンピュータグラフィクス画像の生成を指示する
請求項1に記載の画像出力装置。
【請求項3】
上記操作入力量は、ジョグ操作ダイヤルによる指示ステップ数であり、
上記制御部は、
上記指示ステップ数に、1指示ステップに対する実数値としてのフレーム/フィールド数であるステップ量を乗算して上記進行量を求める
請求項2に記載の画像出力装置。
【請求項4】
上記ステップ量を設定するステップ量設定部をさらに備える
請求項3に記載の画像出力装置。
【請求項5】
上記ステップ量を上記タイムラインに基づいて決定するステップ量決定部をさらに備える
請求項3に記載の画像出力装置。
【請求項6】
上記ステップ量決定部は、
上記タイムラインの長さの、基準の長さに対する比率により上記ステップ量を決定する
請求項5に記載の画像出力装置。
【請求項7】
上記ステップ量決定部は、
上記ステップ量を上記タイムラインの隣接するキーフレーム間の長さに基づいて決定する
請求項5に記載の画像出力装置。
【請求項8】
上記ステップ量決定部は、
上記ステップ量を、上記タイムラインに含まれる複数の上記キーフレーム間の長さのうち、最も短いキーフレーム間の長さに基づいて、上記タイムラインの全体におけるステップ量を決定する
請求項7に記載の画像出力装置。
【請求項9】
上記ステップ量決定部は、
キーフレーム間毎に、該キーフレーム間の長さに基づいて上記ステップ量を決定する
請求項7に記載の画像出力装置。
【請求項10】
タイムライン時刻とステップ量との対応関係情報に基づいてタイムライン時刻毎に上記ステップ量を決定するステップ量決定部をさらに備える
請求項3に記載の画像出力装置。
【請求項11】
上記ステップ量を上記ジョグ操作ダイヤルの角速度に基づいて決定するステップ量決定部をさらに備える
請求項3に記載の画像出力装置。
【請求項12】
複数の上記コンピュータグラフィクス記述データを保持するコンピュータグラフィクス記述データ保持部と、
上記複数のコンピュータグラフィクス記述データにそれぞれ対応した上記ステップ量を記憶するステップ量記憶部とをさらに備え、
上記画像出力部は、
上記複数のコンピュータグラフィクス記述データのうち選択された1つのコンピュータグラフィクス記述データを用いてコンピュータグラフィクス画像を生成し、
上記制御部は、
上記画像出力部が用いるコンピュータグラフィクス記述データに対応したステップ量を用いて上記進行量を求める
請求項3に記載の画像出力装置。
【請求項13】
上記コンピュータグラフィクス記述データには速度係数が付加されており、
上記制御部は、
上記指示ステップ数に、上記ステップ量を乗算し、さらに、上記速度係数を乗算して上記進行量を求める
請求項3に記載の画像出力装置。
【請求項14】
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力部を備える画像出力装置の制御方法であって、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力部に該進められた時刻の画像出力を指示する
画像出力装置の制御方法。
【請求項15】
コンピュータを、
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な画像出力手段と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記画像出力手段に該進められた時刻の画像出力を指示する制御手段と
して機能させるプログラム。
【請求項16】
時間軸上でフレーム/フィールド単位よりも細かな単位で進行可能な第1の画像出力部と、
時間軸上でフレーム/フィールド単位で進行する第2の画像出力部と、
操作入力量に所定の演算を施して進行量を求め、該求められた進行量に従って上記時間軸上で位置を示す時刻を進め、上記第1の画像出力部に該進められた時刻の画像出力を指示し、上記第2の画像出力部に該進められた時刻をフレーム/フィールド単位に丸めた値の画像出力を指示する制御部とを備える
画像出力装置。
【請求項17】
上記制御部は、
上記操作入力量に基づく上記第1の画像出力部の進行を停止した後に進行コマンドを受信したとき、保持している上記時間軸上の時刻に対してフレーム/フィールド単位より細かな単位部分を除去する調整を施し、その後に、上記第1の画像出力部に上記調整された時刻からの画像出力を指示する
請求項16に記載の画像出力装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2013−50879(P2013−50879A)
【公開日】平成25年3月14日(2013.3.14)
【国際特許分類】
【出願番号】特願2011−189041(P2011−189041)
【出願日】平成23年8月31日(2011.8.31)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】