IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ レモン インコーポレイテッドの特許一覧

特表2024-504984音声特徴に基づくアニメーションエフェクト付加
<>
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図1
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図2
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図3A
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図3B
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図3C
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図4
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図5
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図6
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図7A
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図7B
  • 特表-音声特徴に基づくアニメーションエフェクト付加 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-02
(54)【発明の名称】音声特徴に基づくアニメーションエフェクト付加
(51)【国際特許分類】
   G06T 13/20 20110101AFI20240126BHJP
   G06F 3/16 20060101ALI20240126BHJP
   H04N 21/431 20110101ALI20240126BHJP
   H04N 21/439 20110101ALI20240126BHJP
   H04N 21/854 20110101ALI20240126BHJP
【FI】
G06T13/20 500
G06F3/16 600
H04N21/431
H04N21/439
H04N21/854
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023544220
(86)(22)【出願日】2022-05-10
(85)【翻訳文提出日】2023-07-21
(86)【国際出願番号】 SG2022050302
(87)【国際公開番号】W WO2022271088
(87)【国際公開日】2022-12-29
(31)【優先権主張番号】17/353,455
(32)【優先日】2021-06-21
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521388058
【氏名又は名称】レモン インコーポレイテッド
【氏名又は名称原語表記】Lemon Inc.
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リ,ユンヂュ
(72)【発明者】
【氏名】スン,チェン
(72)【発明者】
【氏名】イナン,ガンゼ
【テーマコード(参考)】
5B050
5C164
【Fターム(参考)】
5B050BA08
5B050BA09
5B050DA04
5B050EA19
5B050FA05
5B050FA10
5C164MC01P
5C164PA41
5C164UB01S
5C164UB08P
5C164UB10S
5C164UB88P
(57)【要約】
ディスプレイにビデオエフェクトをレンダリングするためのシステム及び方法が説明される。より具体的には、ビデオデータと音声データとを取得する。前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析する。音声特徴を決定するために、前記音声データを分析する。前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定する。前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成する。
【選択図】図4
【特許請求の範囲】
【請求項1】
ディスプレイにビデオエフェクトをレンダリングするための方法であって、前記方法は、
ビデオデータと音声データとを取得することと、
前記ビデオデータの中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、
音声特徴を決定するために、前記音声データを分析することと、
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、
前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、
を含む方法。
【請求項2】
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、
前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、
前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することと、
前記音声特徴に基づいて、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定することと、
を含む請求項1に記載の方法。
【請求項3】
前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される
請求項1に記載の方法。
【請求項4】
前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む
請求項2に記載の方法。
【請求項5】
前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、
前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3Dメッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、
をさらに含む請求項2に記載の方法。
【請求項6】
前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む
請求項1に記載の方法。
【請求項7】
前記音声データを取得することは、音楽ライブラリから前記音声データを選択することを含み、前記音声特徴はメタデータとして前記音声データに埋め込まれる
請求項1に記載の方法。
【請求項8】
ディスプレイにビデオエフェクトをレンダリングするためのコンピューティング装置であって、前記コンピューティング装置は、
プロセッサと、
前記プロセッサにより実行された場合、前記コンピューティング装置に、
ビデオデータと音声データとを取得することと、
前記ビデオデータの中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、
音声特徴を決定するために、前記音声データを分析することと、
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、
前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、
を実行させる複数の命令が記憶されているメモリとを備えるコンピューティング装置。
【請求項9】
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、
前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、
前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することと、
前記音声特徴に基づいて、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定することと、
を含む請求項8に記載のコンピューティング装置。
【請求項10】
前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される
請求項8に記載のコンピューティング装置。
【請求項11】
前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む
請求項9に記載のコンピューティング装置。
【請求項12】
前記複数の命令は、実行された場合、前記コンピューティング装置に、
前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、
前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3Dメッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、
をさらに実行させる請求項9に記載のコンピューティング装置。
【請求項13】
前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む
請求項8に記載のコンピューティング装置。
【請求項14】
前記音声データを取得することは、音楽ライブラリから前記音声データを選択することを含み、前記音声特徴はメタデータとして前記音声データに埋め込まれる
請求項8に記載のコンピューティング装置。
【請求項15】
ディスプレイにビデオエフェクトをレンダリングするための命令を記憶する非一時的なコンピュータ可読媒体であって、前記命令は、コンピューティング装置の1つ又は複数のプロセッサにより実行された場合、前記コンピューティング装置に、
ビデオデータと音声データとを取得することと、
前記ビデオデータの中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、
音声特徴を決定するために、前記音声データを分析することと、
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、
前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、
を実行させる非一時的なコンピュータ可読媒体。
【請求項16】
前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、
前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、
前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することと、
前記音声特徴に基づいて、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定することと、
を含む請求項15に記載の非一時的なコンピュータ可読媒体。
【請求項17】
前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される
請求項15に記載の非一時的なコンピュータ可読媒体。
【請求項18】
前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む
請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項19】
前記命令は、前記1つ又は複数のプロセッサにより実行された場合、前記コンピューティング装置に、
前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、
前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3Dメッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、
をさらに実行させる請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項20】
前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む
請求項15に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【0001】
ビデオ編集技術は、ビデオを編集するさまざまな方法をユーザに提供するために広く使用されている。例えば、ユーザはビデオを編集して、ビデオに視覚エフェクト及び/又は音楽を追加してもよい。しかしながら、これらビデオ編集技術の多くは、音声データに基づいて視覚エフェクトをコントロールすることを考慮していない。したがって、ユーザ体験を向上させるためには、ビデオエフェクトの同期をレンダリングするビデオ編集技術を開発する必要がある。
【0002】
これら及び他の一般的な考慮に関連して本明細書で開示される態様を説明する。また、比較的具体的な問題を議論していくが、これらの例は、背景技術又は本開示の他の部分において特定された具体的な問題の解決に限定されるべきではないことを、理解すべきである。
【発明の概要】
【0003】
本開示の少なくとも1つの例によれば、ディスプレイにビデオエフェクトをレンダリングする方法が提供される。前記方法は、ビデオデータと音声データとを取得することと、前記ビデオデータに現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、を含む。
【0004】
本開示の少なくとも1つの例によれば、ディスプレイにビデオエフェクトをレンダリングするコンピューティング装置が提供される。前記コンピューティング装置は、プロセッサと、前記プロセッサにより実行された場合、前記コンピューティング装置に、ビデオデータと音声データとを取得することと、前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、
を実行させる複数の命令を記憶したメモリと、を備えてもよい。
【0005】
本開示の少なくとも1つの例によれば、ディスプレイにビデオエフェクトをレンダリングするための命令を記憶した非一時的なコンピュータ可読媒体が提供される。前記命令は、コンピューティング装置の1つ又は複数のプロセッサにより実行された場合、前記コンピューティング装置に、ビデオデータと音声データとを取得することと、前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、
を実行させる。
【0006】
前記1つ又は複数の態様のうちのいずれかは、前記1つ又は複数の態様のうちのいずれかの他の態様と組み合わされる。本明細書で説明される1つ又は複数の態様のいずれかである。
【0007】
本概要は、以下の「発明を実施するための形態」でさらに説明される構想の抜粋を簡略化された形で紹介するために提供されるものである。本概要は、特許請求される主題事項の主要特徴又は基本特徴を識別することを目的とするものでもなければ、特許請求される主題事項の範囲を限定することを目的とするものでもない。例示の追加の態様、特徴、及び/又は利点は、以下の説明において部分的に説明され、説明から部分的に明らかになるか、又は本開示の実施により理解される。
【図面の簡単な説明】
【0008】
以下の図面を参照して、非限定的及び非網羅的な例を説明する。
【0009】
図1】本開示の例にかかる、例示的なビデオエフェクト同期システムを示す図である。
【0010】
図2】本開示の例にかかる、図1のビデオエフェクト同期システムのコンピューティング装置の詳細を示す図である。
【0011】
図3A】ビデオエフェクトを使用してレンダリングされたビデオの例示的なフレームを示す図である。
図3B】ビデオエフェクトを使用してレンダリングされたビデオの例示的なフレームを示す図である。
図3C】ビデオエフェクトを使用してレンダリングされたビデオの例示的なフレームを示す図である。
【0012】
図4】本開示の例にかかる、ビデオエフェクトをレンダリングする方法の詳細を示す図である。
図5】本開示の例にかかる、ビデオエフェクトをレンダリングする方法の詳細を示す図である。
【0013】
図6】本開示の態様を実施するために利用可能なコンピューティング装置の物理的コンポーネント(例えば、ハードウェア)を示すブロック図である。
【0014】
図7A】本開示の態様を実施するために利用可能なコンピューティング装置の第1の例を示す図である。
【0015】
図7B】本開示の態様を実施するために利用可能なコンピューティング装置の第2の例を示す図である。
【0016】
図8】本開示の例にかかる、データを処理するためのシステムのアーキテクチャの少なくとも1つの態様を示す図である。
【発明を実施するための形態】
【0017】
以下の詳細な説明では、本明細書の一部を構成し、且つ特定の態様又は例を図示により示した添付図面を参照する。本開示から逸脱することなく、これらの態様を組み合わせたり、他の態様を利用したり、構造変更を行ったりしてもよい。これらの態様は、方法、システム、又は装置として実施されてもよい。したがって、これらの態様は、ハードウェア実現、完全なソフトウェア実現、またはソフトウェアおよびハードウェアの態様を組み合わせた実現の形態をとってもよい。したがって、以下の詳細な説明は限定的であると理解されるべきではなく、本開示の範囲は、添付の特許請求の範囲及びその均等物により限定されるものである。
【0018】
本開示の例によれば、ビデオエフェクト同期システムは、ユーザが音声に反応するビデオエフェクトをビデオクリップ内の1つ又は複数の付加ポイントに適用することを可能にする。例えば、ユーザはビデオエフェクトライブラリからビデオエフェクトを選択して、ビデオクリップにアニメーションを追加してもよい。ビデオエフェクトは、アニメーションに関連付けられた1つ又は複数のビデオエフェクトパラメータによって定義されてもよい。一例として、前記ビデオエフェクトパラメータは、前記ビデオクリップに追加される1つ又は複数のアニメ化オブジェクトと、前記ビデオクリップ内の各アニメ化オブジェクトについての1つ又は複数の付加ポイントと、各アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトとを含んでもよいが、これらに限定されない。アニメ化オブジェクトは、複数の視覚要素を含んでもよいことを理解すべきである。
【0019】
例示的な態様において、前記1つ又は複数の付加ポイントは、前記ビデオクリップ内に現れる及び/又は追跡されるターゲットオブジェクトの1つ又は複数の身体関節であってもよい。このために、身体関節識別を実行して、前記ビデオクリップの1つ又は複数のターゲット主体から身体関節リストを分離又は識別してもよい。一例として、アニメ化オブジェクトの付加ポイントは、前記ビデオクリップ内の音声音楽の音楽的特徴に基づいて決定されてもよい。代替として、付加ポイントは、選択されたビデオエフェクトにより予め選択されてもよく、又は予め定義されてもよい。
【0020】
追加として、前記アニメ化オブジェクトに適用される前記1つ又は複数のアニメーションエフェクトは、音声音楽の音楽的特徴(例えば、ビート情報及び/又は周波数情報)に基づいて決定されてもよい。このために、音楽的特徴評価を実行して、前記音声音楽の音楽的特徴を決定してもよい。代替として、前記音声音楽がユーザにより音楽ライブラリから選択された場合、前記音楽的特徴はメタデータとして前記音声音楽に埋め込まれてもよい。一例として、前記アニメーションエフェクトは、発光(glow)エフェクトを含んでもよく、前記アニメ化オブジェクトの周囲の発光の色は、前記音声音楽の対応するビート特徴又はスペクトルに基づいて変化してもよい。したがって、前記1つ又は複数のビデオエフェクトパラメータは、前記音声音楽と前記ビデオクリップとに基づいて周期的に(例えば、各ビートで)更新されてもよい。ビデオエフェクト同期は、前記音声音楽の音楽ビートに反応するアニメーションを、前記ビデオクリップ内の前記ターゲット主体の1つ又は複数の身体関節に付加することを可能にする。
【0021】
図1は、本開示の例にかかる、1つ又は複数のビデオエフェクトをレンダリングするためのビデオエフェクト同期システム100を示す。例えば、ユーザ102は、ビデオクリップ108を生成、受信、取得、又はその他の方法で得てもよい。その後、ユーザは、ビデオクリップ108に追加されるように音声音楽110を選択してもよい。ビデオエフェクト同期システム100は、ユーザ102が、音楽110に基づいて、ビデオクリップ108内のターゲット主体の1つ又は複数のターゲット身体関節に付加される、音声に反応するビデオエフェクトを作成することを可能にする。このために、ビデオエフェクト同期システム100は、ユーザ102に関連付けられたコンピューティング装置104と、ネットワーク114を介してコンピューティング装置104に通信可能に結合されたサーバ106とを含む。ネットワーク114は、有線又は無線ローカルエリアネットワーク(LAN)、有線又は無線ワイドエリアネットワーク(WAN)、及び/又はインターネットを含むがこれらに限定されない任意のタイプのコンピューティングネットワークを含んでもよい。
【0022】
一例において、ユーザ102は、コンピューティング装置104を利用してビデオクリップ108と音楽110とを取得してもよい。ユーザ102は、コンピューティング装置104に通信可能に結合されたカメラを利用してビデオクリップ108を生成してもよい。このような例において、ユーザがコンピューティング装置104上でビデオを撮影しているときに、ユーザ102がディスプレイ(例えば、ディスプレイ705)上で前記1つ又は複数の身体関節の周囲のビデオエフェクトを見ることを可能にするために、ビデオエフェクトをリアルタイム又はほぼリアルタイムに音楽110と同期させてもよい。代替として又は追加として、ユーザ102は、コンピューティング装置104上でビデオクリップ108を受信、取得、又は他の方法で得てもよい。いくつかの例において、ユーザ102は、音楽110に基づいてビデオクリップ108を編集してビデオエフェクトを追加してもよい。いくつかの態様において、ユーザ102は、コンピューティング装置104を使用して、ネットワーク114を介してビデオクリップ108と音楽110とをサーバ106に送信してもよい。コンピューティング装置104は、ポータブルコンピューティング装置又は非ポータブルコンピューティング装置のいずれか一つであってもよい。例えば、コンピューティング装置104は、スマートフォン、ノートパソコン、デスクトップコンピュータ、サーバであってもよい。ビデオクリップ108は、任意のフォーマットで取得されてもよく、圧縮及び/又は解凍された形式としてもよい。
【0023】
コンピューティング装置104は、ビデオクリップ108の各フレームを分析して、当該フレーム内の1つ又は複数のターゲット主体の身体関節を識別するように設定されている。例えば、身体関節アルゴリズムは、ビデオクリップ108から識別され抽出される身体関節のリストを定義してもよい。身体関節は、頭部、頸部、骨盤、脊柱、右/左肩、右/左上腕、右/左前腕、右/左手、右/左大腿、右/左脚、右/左足及び右/左足指を含んでもよいが、これらに限定されない。
【0024】
コンピューティング装置104は、ビデオクリップ108に追加するためにユーザ102により音楽ライブラリから選択された音声音楽110を受信するように設定されている。代替として、いくつかの態様において、音声音楽110は、ビデオエフェクトに関連付けられてもよい。このような態様において、ビデオエフェクトは、ビデオクリップ108に追加されるデフォルトの音楽を含んでもよい。いくつかの態様において、音声音楽110は、ビデオクリップ108から抽出されてもよい。コンピューティング装置104は、音声音楽110のビート情報又は周波数スペクトル情報を決定するために、音声データを分析するように設定されている。例えば、上述したように、コンピューティング装置104は、自動ビート追跡アルゴリズムにより、各ビートのビート特徴を決定してもよい。いくつかの態様において、音楽ビート特徴評価結果をメタデータとして音楽に埋め込んでもよいことを、理解すべきである。音楽ビート特徴評価結果は、音声音楽110のアクセントのあるビート及びアクセントのないビートの数及び相対的位置を含んでもよい。例えば、音声音楽110が4/4ビート構造を有する場合、各セクションは、強ビート、弱ビート、中強ビート、弱ビートである、異なるビート強さを有する4つのビートを有する。
【0025】
代替として又は追加として、コンピューティング装置104は、音声音楽の周波数スペクトル特徴評価結果を決定してもよい。例えば、コンピューティング装置104は、音声音楽の各ビートの平均周波数スペクトルを決定してもよい。いくつかの態様において、周波数スペクトル特徴をメタデータとして音楽に埋め込んでもよいことを、理解すべきである。
【0026】
ビデオエフェクトは、ビデオデータの1つ又は複数の付加ポイントに追加される1つ又は複数のアニメ化オブジェクトの振る舞いをコントロールするビデオエフェクトパラメータを含む。いくつかの態様において、ビデオエフェクトパラメータは、アニメ化オブジェクトと、アニメ化オブジェクトの1つ又は複数の付加ポイント(例えば、ターゲットオブジェクトの1つ又は複数の身体関節)と、ビデオクリップの1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトのためのアニメーションエフェクトとを定義してもよいが、これらに限定されない。例示的な態様において、ビデオエフェクトのパラメータは、音声音楽及びビデオクリップに基づいて周期的に(例えば、各ビートで)更新されてもよい。言い換えれば、ビデオエフェクト同期は、音楽ビートに反応するアニメーションをビデオクリップ内の特定のターゲットオブジェクトに付加することを可能にする。
【0027】
いくつかの態様において、ユーザは、ビデオクリップ108に適用されるビデオエフェクトを選択することで、アニメ化オブジェクトを、ビデオエフェクトパラメータにより定義される特定のアニメーションエフェクトとともに、1つ又は複数の身体関節に付加してもよい。ビデオエフェクトパラメータは、どのアニメ化オブジェクトがビデオクリップ内のどの付加ポイントに追加されているか、及び/又はアニメ化オブジェクトにどのアニメーションエフェクトを適用するかをコントロールするように設定される。言い換えれば、ビデオエフェクトパラメータは、アニメ化オブジェクトが付加されている1つ又は複数の身体関節と、ビデオクリップ全体でビデオエフェクト適用のために1つ又は複数の身体関節がどのように選択されるかと、アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトとを定義する。例えば、ビデオエフェクトは、ビデオクリップ全体で特定の身体関節セットにランダムに適用されてもよい。代替として、ビデオエフェクトは、特定のシーケンス(例えば、頭から足指まで)でビデオクリップに適用されてもよい。代替として、アニメーションエフェクトは、音楽のビート強さに基づいて、特定の身体関節に適用されてもよい。例えば、音声音楽が4/4ビート構造を有する場合、骨盤を強ビートに割り当て(例えば図3A)、左右の大腿を弱ビートに割り当て(例えば図3B)、左右の足を中強ビートに割り当て(例えば図3C)てもよい。また、アニメーションエフェクトは、周波数スペクトル範囲に基づいて決定されてもよい。例えば、骨盤を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、左右の大腿を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、左右の足を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。言い換えれば、音声音楽のビート又はスペクトルは、アニメーションがビデオクリップに付加されている位置をコントロールしてもよい。
【0028】
追加として、音声音楽の音楽的特徴は、アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトをコントロールしてもよい。例えば、アニメーションエフェクトは、発光エフェクトを含んでもよく、この場合、ビデオエフェクトパラメータは、アニメ化オブジェクトから放出される発光の色及び/又は強度をコントロールしてもよい。したがって、コンピューティング装置104は、ビート特徴に基づいて、アニメーションエフェクトの発光の色及び/又は強度を決定してもよい。例えば、音声音楽が4/4ビート構造を有する場合、高発光強度を強ビートには割り当て、低発光強度を弱ビートに割り当て、中発光強度を中強ビートに割り当ててもよい。
【0029】
代替として、アニメーションエフェクトの発光の色及び/又は強度を、周波数スペクトル範囲に基づいて決定されてもよい。例えば、高発光強度を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、中発光強度を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、低発光強度を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。
【0030】
追加として又は代替として、アニメーションエフェクトのアニメーション速度は、ビート特徴又は周波数スペクトル範囲に基づいてコントロールされてもよい。例えば、速いアニメーション速度は、強ビート及び/又は高スペクトル範囲に割り当てられ、中程度のアニメーション速度は、中強ビート及び/又は中スペクトル範囲に割り当てられ、低いアニメーション速度は、弱ビート及び/又は低スペクトル範囲に割り当てられてもよい。
【0031】
ビデオエフェクトをビデオクリップに追加する準備ができると、コンピューティング装置104は、アニメ化オブジェクトの2次元(2D)テクスチャを付加ポイントの周りの3次元(3D)メッシュにブレンドするために、アニメーションシーケンスを修正してもよい。3Dメッシュ上での2Dアニメ化オブジェクトの重ね合わせ及びブレンドにより、3D風アニメーションエフェクトを作成することができる。その後、コンピューティング装置104は、ビデオエフェクトを音声音楽の音楽ビートと同期させて、コンピューティング装置104に通信可能に結合されたディスプレイ(例えば、ディスプレイ705)上でユーザに提示できる、該ビデオエフェクトを有するレンダリングされたビデオを生成してもよい。ユーザがビデオを撮影しているときに、ユーザ102がディスプレイ上で1つ又は複数の身体関節の周囲のビデオエフェクトを見ることを可能にするために、ビデオエフェクトをリアルタイム又はほぼリアルタイムに音楽ビートと同期させてもよいことを、理解すべきである。代替として又は追加として、ビデオエフェクトは、サーバ106により音楽ビートと同期されてもよい。このような態様において、ビデオクリップ108がサーバ106にアップロードされると、ビデオエフェクトをビデオクリップ108に適用してビデオエフェクトをレンダリングしてもよい。
【0032】
ここで図2を参照し、本開示の一例にかかるコンピューティング装置202を説明する。コンピューティング装置202は、先に図1で説明されたコンピューティング装置104と同じ又は類似していてもよい。コンピューティング装置202は、通信インターフェース204と、プロセッサ206と、コンピュータ可読ストレージ208とを備えてもよい。一例において、通信インターフェース204は、ネットワークに結合され、ビデオクリップ108及び音声音楽110(図1)を受信してもよい。ビデオクリップ108(図1)は、ビデオフレーム246として記憶されてもよく、音楽110は、音声データ248として記憶されてもよい。
【0033】
いくつかの例において、1つ又は複数のビデオエフェクトは、通信インターフェース204において受信され、ビデオエフェクトデータ252として記憶されてもよい。ビデオエフェクトデータ252は、ビデオエフェクトに関連付けられた1つ又は複数のビデオエフェクトパラメータを含んでもよい。ビデオエフェクトパラメータは、ビデオクリップに追加される1つ又は複数のアニメ化オブジェクトと、ビデオクリップ内のアニメ化オブジェクトが付加される1つ又は複数の付加ポイントと、各アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトとを定義してもよいが、これらに限定されない。
【0034】
一例において、1つ又は複数のアプリケーション210は、コンピューティング装置104により提供されてもよい。該1つ又は複数のアプリケーション210は、ビデオ処理モジュール212と、音声処理モジュール214と、ビデオエフェクトモジュール216と、シェーダ218とを含んでもよい。ビデオ処理モジュール212は、ビデオ取得マネージャ224と身体関節識別部226とを含んでもよい。ビデオ取得マネージャ224は、1つ又は複数のビデオフレームを含むビデオデータを受信、取得、又は他の方法で得るように設定されている。追加として、身体関節識別部226は、フレーム内の1つ又は複数のターゲット主体の1つ又は複数の身体関節を識別するように設定されている。例示的な態様において、ターゲット主体は人間である。例えば、身体セグメンテーションアルゴリズムは、ビデオクリップ108から識別され抽出される身体関節のリストを定義してもよい。身体関節は、頭部、頸部、骨盤、脊柱、右/左肩、右/左上腕、右/左前腕、右/左手、右/左大腿、右/左脚、右/左足及び右/左足指を含んでもよいが、これらに限定されない。いくつかの例において、身体関節リストは、通信インターフェース204において受信され、身体関節250として記憶されてもよい。いくつかの態様において、身体関節リストはサーバ(例えば106)から受信されてもよい。
【0035】
追加として、音声処理モジュール214は、音声収集マネージャ232と音声分析部234とを含んでもよい。音声取得マネージャ232は、音声データを受信、取得、又は他の方法で得るように設定されている。音声分析部234は、音声データの音声情報を決定するように設定されている。例えば、音声情報は、音声データの各ビートのビート情報及びスペクトル情報を含んでもよいが、これらに限定されない。一例として、自動ビート追跡アルゴリズムを使用してビート情報を決定してもよい。いくつかの態様において、ビート情報は、メタデータとして音声データに埋め込まれていてもよい。他の態様において、ビート情報は、通信インターフェース204において受信され、音声データ248として記憶されてもよい。ビート情報は、各ビートのビート特徴を提供する。ビート特徴は、ビート構造と、強ビートと弱ビートの繰り返しシーケンスと、アクセントのあるビートとアクセントのないビートの数と、アクセントのあるビートとアクセントのないビートの相対的位置とを含むが、これらに限定されない。例えば、音声音楽が4/4ビート構造を有する場合、各セクションは、強ビート、弱ビート、中強ビート、弱ビートである、異なるビート強さを有する4つのビートを有する。追加として、周波数スペクトル情報は、音声データから所定の時間(例えば、各ビート)毎に抽出されてもよい。いくつかの態様において、周波数スペクトル情報は、メタデータとして音声データに埋め込まれていてもよい。他の態様において、周波数スペクトル情報は、通信インターフェース204において受信され、音声データ248として記憶されてもよい。
【0036】
さらに、ビデオエフェクトモジュール216は、アニメーション決定部238とビデオエフェクト同期部240とをさらに含んでもよい。アニメーション決定部238は、音声データに基づいて、ビデオデータに適用されるビデオエフェクトを決定する。具体的には、アニメーション決定部238は、1つ又は複数のビデオエフェクトパラメータを決定するように設定されている。例えば、アニメーション決定部238は、ビデオクリップに追加される1つ又は複数のアニメ化オブジェクトと、各アニメ化オブジェクトについての1つ又は複数の付加ポイントとを決定するように設定されている。アニメ化オブジェクトは、複数の視覚要素を含んでもよく、ビデオクリップ内に定義された複数の付加ポイントを有してもよいことを、理解すべきである。例示的な態様において、ターゲット付加ポイントは、ビデオクリップ内に現れる及び/又は追跡されるターゲット主体の身体関節である。
【0037】
さらに、以下でさらに説明するように、アニメーション決定部238は、各アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定するようにさらに設定されている。例示的な態様において、アニメーションエフェクトは各ビート毎に変化してもよい。言い換えれば、選択された音声音楽のビートは、1つ又は複数の身体関節上のビデオエフェクトの視覚的変化をコントロールしてもよい。例えば、アニメーションエフェクトは、発光エフェクトを含んでもよく、この場合、アニメーション決定部238は、アニメ化オブジェクトから発せられる発光の色及び/又は強度を決定してもよい。いくつかの態様において、発光の色及び/又は強度は、ビデオクリップに追加されている音声音楽に依存してもよい。
【0038】
アニメーション決定部238は、ビデオクリップ内の、アニメ化オブジェクトの付加に適した1つ又は複数の付加ポイント(例えば、身体関節)をさらに決定してもよい。いくつかの態様において、アニメーション決定部238は、ビデオエフェクトがビデオクリップ全体で特定の身体関節セットにランダムに適用されることを決定してもよい。代替として、アニメーション決定部238は、ビデオエフェクトが特定のシーケンス(例えば、上から下へ)でビデオクリップに適用されることを決定してもよい。代替として、アニメーション決定部238は、ビデオエフェクトが音楽のビート強さに基づいて特定の身体関節に適用されることを決定してもよい。例えば、音声音楽が4/4ビート構造を有する場合、骨盤を強ビートに割り当て(例えば図3A)、左右の大腿を弱ビートに割り当て(例えば図3B)、左右の足を中強ビートに割り当て(例えば図3C)てもよい。代替として、付加ポイントは、周波数スペクトル範囲に基づいて決定されてもよい。例えば、骨盤を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、左右の大腿を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、左右の足を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。言い換えれば、音声音楽のビート又はスペクトルは、アニメーションがどの特定の身体関節でビデオクリップに付加されているかをコントロールしてもよい。
【0039】
ビデオエフェクト同期部240は、ビデオエフェクトを、選択された音声音楽の音楽ビートと同期させて、ビデオエフェクトを有するレンダリングされたビデオを生成するように設定されている。いくつかの態様において、ビデオエフェクト同期部240は、付加ポイントの周囲の3Dメッシュ内にアニメ化オブジェクトの2Dテクスチャをブレンドするために、アニメーションシーケンスを修正するように設定されている。3Dメッシュ上での2Dアニメ化オブジェクトの重ね合わせ及びブレンドにより、3D風アニメーションエフェクトを作成することができることを、理解すべきである。
【0040】
ビデオエフェクト同期部240は、シェーダ218を含むか、又はシェーダ218と通信する。シェーダ218は、ビデオエフェクトパラメータを受信するように設定されている。ビデオエフェクトパラメータに基づいて、シェーダ218は、エフェクトを生成するか、又はエフェクトをレンダリングさせるように設定される。例えば、シェーダ218は、ブラー(blur)、ライトブルーム(例えば、発光)、照明(light bloom、例えば、シャドウ(shadow)、ハイライト(highlight)、及び半透明(translucency))、バンプマッピング(bump mapping)、及びディストーション(distortion)の生成を含むがこれに限定されないビデオエフェクトに関連付けられる視覚エフェクトを変化させてもよい。
【0041】
図3A~3Cは、本開示の例にかかる、ビデオエフェクト同期を有するビデオクリップのビデオフレーム310、320、330の例を示す図である。例示的な例において、異なる付加ポイント304に付加されたアニメーション302(例えば、アニメ化オブジェクト)が示されている。
【0042】
一例において、ビデオクリップに追加される音声データが受信されると、音声データの音声情報(例えば、ビート特徴及び/又は周波数スペクトル)は、所定の期間(例えば、音楽ビート)ごとに決定されてもよい。音声情報に基づいて、アニメーション302についての1つ又は複数の付加ポイント304が決定されてもよい。例えば、音声音楽が4/4ビート構造を有する場合、骨盤を強ビートに割り当て(例えば図3A)、左右の大腿を弱ビートに割り当て(例えば図3B)、左右の足を中強ビートに割り当て(例えば図3C)てもよい。このような実施形態において、アニメーション302は、図3Aに示すように強ビートにおいて骨盤に付加され、図3Bに示すように弱ビートにおいて左右の大腿に付加され、図3Cに示すように中強ビートにおいて左右の足に付加される。
【0043】
また、アニメーションエフェクトは、周波数スペクトル範囲に基づいて決定されてもよい。例えば、骨盤を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、左右の大腿を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、左右の足を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。言い換えれば、音声音楽のビート又はスペクトルは、アニメーションがどの特定の身体関節でビデオクリップに付加されているかをコントロールする。
【0044】
ここで図4を参照し、本開示の例にかかる、音声データに基づいて1つ又は複数のビデオエフェクトをビデオデータにレンダリングするための簡略化された方法を説明する。方法400のステップの一般的な順序が図4に示されている。一般的に、方法400は402で始まり、460で終わる。方法400は、より多くのステップ又はより少ないステップを含むことができ、又は、ステップの順序を図4に示されたステップとは異なるように構成することができる。方法400は、コンピュータシステムによって実行されるコンピュータ実行可能な命令のセットとして実行され、コンピュータ可読媒体上に符号化又は記憶されることができる。例示的な態様において、方法400は、ユーザ(例えば、102)に関連付けられたコンピューティング装置によって実行される。しかしながら、方法400の態様は、1つ又は複数のプロセッシング装置、例えば、コンピュータ又はサーバ(例えば、104、106)により実行されてもよいことを、理解すべきである。さらに、方法400は、プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、システムオンチップ(SOC)、ニューラルプロセッシングユニット、又は他のハードウェア装置に関連付けられるゲート又は回路によって実行することができる。以下では、方法400は、図1図8とに関連して説明されたシステム、コンポーネント、モジュール、ソフトウェア、データ構造、ユーザインターフェース等を参照して説明すべきである。
【0045】
方法400は402において始まり、フローはプロセス404に進んでもよい。404において、コンピューティング装置は、1つ又は複数のビデオフレームを含むビデオデータ(例えば、ビデオクリップ108)を受信する。例えば、ユーザ102は、コンピューティング装置を介して、ビデオクリップ108を生成、受信、取得、又はその他の方法で得てもよい。408において、コンピューティング装置は、ビデオデータの各フレームを処理して、フレーム内の1つ又は複数のターゲット主体の身体関節を識別する。例えば、身体関節アルゴリズムは、ビデオクリップ108から識別され抽出される身体関節のリストを定義してもよい。身体関節は、頭部、頸部、骨盤、脊柱、右/左肩、右/左上腕、右/左前腕、右/左手、右/左大腿、右/左脚、右/左足及び右/左足指を含んでもよいが、これらに限定されない。
【0046】
開始402を再び参照し、方法400は412に進んでもよい。コンピューティング装置がオペレーション404及び412を同時に実行してもよいことを、理解すべきである。代替として、オペレーション412は、オペレーション404の後に実行されてもよい。いくつかの態様において、オペレーション404は、オペレーション412の後に実行されてもよい。
【0047】
412において、コンピューティング装置は、ユーザ102により選択された、ビデオデータに追加される音声データ(例えば、音声音楽110)を受信する。次いで、416において、コンピューティング装置は、音声音楽110の音声情報を決定するために、音声データを分析する。例えば、音声情報は、各ビートのビート特徴及び/又は周波数スペクトルを含む。いくつかの態様において、コンピューティング装置は、自動ビート追跡アルゴリズムにより、各ビートのビート特徴を決定してもよい。ビート特徴は、ビート構造と、強ビートと弱ビートの繰り返しシーケンスと、アクセントのあるビートとアクセントのないビートの数と、アクセントのあるビートとアクセントのないビートの相対的位置とを含むが、これらに限定されない。例えば、音声音楽110が4/4ビート構造を有する場合、各セクションは、強ビート、弱ビート、中強ビート、弱ビートである、異なるビート強さを有する4つのビートを有する。他の態様において、コンピューティング装置は、特定の周波数範囲(例えば、高範囲、中範囲、及び低範囲)に関連付けるように各ビートの周波数を決定してもよい。
【0048】
オペレーション404~416においてビデオデータと音声データとが受信され、分析されると、方法400は420に進む。420において、コンピューティング装置は、ビデオデータに追加されるビデオエフェクトを決定する。例えば、ユーザは、ビデオエフェクトライブラリからビデオエフェクトを選択して、ビデオクリップにアニメーションを追加してもよい。ビデオエフェクトは、どのアニメ化オブジェクトがビデオクリップ内のどの付加ポイントに追加されているかをコントロールするビデオエフェクトパラメータにより定義される。アニメ化オブジェクトは、複数の視覚要素を含んでもよく、ビデオクリップ内の複数の付加ポイントを有してもよいことを、理解すべきである。追加として、以下でさらに説明するように、ビデオエフェクトパラメータは、アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトをさらにコントロールする。
【0049】
424において、コンピューティング装置は、オペレーション416において実行された音声データ分析に基づいて、ビデオクリップに追加されるアニメ化オブジェクトの1つ又は複数の付加ポイントを決定する。上述したように、アニメーション付加ポイントは、ビデオクリップに現れる及び/又は追跡されるターゲット主体の身体関節である。例えば、428において、コンピューティング装置は、ビート特徴に基づいて、特定の身体関節をアニメーション付加ポイントとして決定する。例えば、音声音楽が4/4ビート構造を有する場合、骨盤を強ビートに割り当て(例えば図3A)、左右の大腿を弱ビートに割り当て(例えば図3B)、左右の足を中強ビートに割り当て(例えば図3C)てもよい。代替として、アニメーション付加ポイントは、周波数スペクトル範囲に基づいて決定されてもよい。例えば、骨盤を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、左右の大腿を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、左右の足を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。言い換えれば、音声音楽のビート又はスペクトルは、アニメーションがどの特定の身体関節でビデオクリップに付加されているかをコントロールする。
【0050】
追加として、432において、コンピューティング装置は、ビデオデータ内のアニメ化オブジェクトの1つ又は複数の付加ポイントのそれぞれの周囲に3次元(3D)メッシュを生成する。以下でさらに説明するように、3Dメッシュは、アニメ化オブジェクト(例えば、2次元(2D)アニメ化オブジェクト)を対応する付加ポイントに付加するために使用される。その後、図4及び図5の英数字Aで示されるように、方法400は図5の436に進む。
【0051】
436において、コンピューティング装置は、オペレーション416において実行された音声データ分析に基づいて、アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定する。例えば、アニメーションエフェクトは、発光エフェクトを含んでもよく、この場合、ビデオエフェクトパラメータは、アニメ化オブジェクトから放出される発光の色及び/又は強度をコントロールしてもよい。したがって、440において、コンピューティング装置は、ビート特徴に基づいて、アニメーションエフェクトの発光の色及び/又は強度を決定してもよい。例えば、音声音楽が4/4ビート構造を有する場合、高発光強度を強ビートには割り当て、低発光強度を弱ビートに割り当て、中発光強度を中強ビートに割り当ててもよい。
【0052】
代替として、アニメーションエフェクトの発光の色及び/又は強度を、周波数スペクトル範囲に基づいて決定されてもよい。例えば、高発光強度を高スペクトル範囲(例えば、4kHz~20Hz)に割り当て、中発光強度を中スペクトル範囲(例えば、500Hz~4kHz)に割り当て、低発光強度を低スペクトル範囲(例えば、20Hz~500Hz)に割り当ててもよい。
【0053】
追加として又は代替として、アニメーションエフェクトのアニメーション速度は、ビート特徴及び/又は周波数スペクトル範囲に基づいてコントロールされてもよい。例えば、速いアニメーション速度は、強ビート及び/又は高スペクトル範囲に割り当てられ、中程度のアニメーション速度は、中強ビート及び/又は中スペクトル範囲に割り当てられ、低いアニメーション速度は、弱ビート及び/又は低スペクトル範囲に割り当てられてもよい。
【0054】
アニメ化オブジェクト及び対応する(複数の)アニメーションエフェクトが決定されると、方法400は、オペレーション444に進む。444において、コンピューティング装置は、アニメ化オブジェクトをその対応する(複数の)アニメーションエフェクトとともに、ビデオフレーム内の1つ又は複数の対応する付加ポイントに付加する。言い換えれば、アニメーションは、音声データに基づいて、ビデオクリップ全体で1つ又は複数のターゲット身体関節に付加される。
【0055】
その後、又は同時に、448において、コンピューティング装置は、付加ポイントの周囲に生成された3Dメッシュ内にアニメ化オブジェクトの2Dテクスチャをブレンドするために、アニメーションシーケンスを修正する。3Dメッシュ上での2Dアニメ化オブジェクトの重ね合わせ及びブレンドにより、より3D風のアニメーションエフェクトを作成することができる。
【0056】
その後、452において、ビデオエフェクトを有するレンダリングされたビデオを生成するために、ビデオエフェクトを、選択された音声音楽の音楽ビート又はスペクトルと同期する。456において、コンピューティング装置は、ディスプレイ(例えば、ディスプレイ705)上で、ビデオエフェクトを有するレンダリングされたビデオをユーザに提示する。ユーザがビデオを撮影しているときに、ユーザ102がディスプレイ(例えば、ディスプレイ705)上で1つ又は複数の身体関節の周囲のビデオエフェクトを見ることを可能にするために、ビデオエフェクトをリアルタイム又はほぼリアルタイムに音楽ビートと同期させてもよいことを、理解すべきである。方法は、460において終了してもよい。
【0057】
方法400は、ユーザに関連付けられたコンピューティング装置により実行されると説明されているが、方法400の1つ又は複数のオペレーションは、任意のコンピューティング装置又はサーバ(例えば、サーバ106)により実行されてもよいことを、理解すべきである。例えば、ビデオエフェクトと音楽ビートとの同期は、ユーザに関連付けられたコンピューティング装置から音楽とビデオクリップとを受信するサーバにより実行されてもよい。
【0058】
図6は本開示の態様を実施するために利用可能なコンピューティング装置600の物理的コンポーネント(例えば、ハードウェア)を示すブロック図である。以下に説明されるコンピューティング装置コンポーネントは、上述したコンピューティング装置に適していてもよい。例えば、コンピューティング装置600は、図1のコンピューティング装置104に相当する。基本的な構成において、コンピューティング装置600は、少なくとも1つのプロセッシングユニット602とシステムメモリ604とを含んでもよい。コンピューティング装置の構成及びタイプによっては、システムメモリ604は、揮発性ストレージ(例えば、ランダムアクセスメモリ)、不揮発性ストレージ(例えば、リードオンリーメモリ)、フラッシュメモリ、又はこのようなメモリの任意の組み合わせを含んでもよいが、これらに限定されない。
【0059】
システムメモリ604は、オペレーティングシステム605と、本明細書に開示された様々な態様を実行するのに適している1つ又は複数のプログラムモジュール606とを含んでもよい。例えば、オペレーティングシステム605は、コンピューティング装置600の操作をコントロールするように適していてもよい。さらに、本開示の態様は、グラフィックライブラリ、他のオペレーティングシステム、又は任意の他のアプリケーションプログラムに関連して実行されてもよいが、任意の特定のアプリケーション又はシステムに限定されない。この基本的な構成は、破線608内のそれらの構成要素によって図6に示されている。コンピューティング装置600は、追加の特徴又は機能を有してもよい。例えば、コンピューティング装置600は、磁気ディスク、光ディスク、又はテープなどの追加のデータストレージ装置(取外し可能な装置及び/又は取外し不可能な装置)をさらに備えてもよい。このような追加のストレージは、図6において、取り外し可能なストレージ装置609と取り外し不可能なストレージ装置610とにより示されている。
【0060】
上述したように、複数のプログラムモジュール及びデータファイルがシステムメモリ604に記憶されていてもよい。プログラムモジュール606は、少なくとも1つのプロセッシングユニット602上で実行された場合、本明細書で説明されるような1つ又は複数の態様を含むがこれらに限定されないプロセスを実行してもよい。アプリケーション620は、図1を参照してより詳細に説明するように、ビデオ処理モジュール623と、音声処理モジュール624と、ビデオエフェクトモジュール625と、シェーダモジュール626とを含む。本開示の態様に従って使用できる他のプログラムモジュールは、電子メール及び連絡先アプリケーション、ワープロアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、製図プログラム、又はコンピュータ支援アプリケーションプログラムなど、及び/又は本明細書で説明されたシステムによりサポートされる1つ又は複数のコンポーネントを含んでもよい。
【0061】
さらに、本開示の態様は、個別電子部品を含む電気回路、論理ゲートを含むパッケージチップ又は集積電子チップ、マイクロプロセッサを利用する回路、又は電子部品又はマイクロプロセッサを含む単一のチップ内で実施されてもよい。例えば、本開示の態様は、図6に示される各コンポーネント又は複数のコンポーネントが単一の集積回路上に集積化することが可能であるシステムオンチップ(SOC)を介して実施されてもよい。このようなSOC装置は、一つ又は複数のプロセッシングユニット、グラフィックスユニット、通信ユニット、システム仮想化ユニット、及び様々なアプリケーション機能を含んでもよく、これらの全てが単一の集積回路としてチップ基板上に集積化される(又は「焼かれる」)。SOCを介して操作する場合、本明細書に記載された、クライアントがプロトコルを切り替える能力に関する機能は、単一の集積回路(チップ)上のコンピューティング装置600の他のコンポーネントと集積化された特定用途向けロジックを介して動作してもよい。本開示の態様はまた、AND、OR、及びNOTなどの論理演算を実行できる、機械、光学、流体、及び量子技術を含むがそれらに限定されない他の技術を使用して実施されてもよい。さらに、本開示の態様は、汎用コンピュータ内で、又は任意の他の回路又はシステム内で実施されてもよい。
【0062】
コンピューティング装置600はまた、キーボード、マウス、ペン、音響又は音声入力装置、タッチ又はスワイプ入力装置など、1つ又は複数の入力装置612を有してもよい。ディスプレイ、スピーカ、プリンタなどの(複数の)出力装置614Aも含まれてもよい。仮想ディスプレイに対応する出力614Bが含まれてもよい。上記の装置は例であり、他の装置を使用してもよい。コンピューティング装置600は、他のコンピューティング装置450との通信を可能にする1つ又は複数の通信接続616を含んでもよい。好適な通信接続616の例は、無線周波数(RF)送信機、受信機、及び/又はトランシーバ回路、ユニバーサルシリアルバス(USB)、パラレルポート、及び/又はシリアルポートを含むが、これらに限定されない。
【0063】
本明細書で使用されるコンピュータ可読媒体という用語は、コンピュータ記憶媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、又はプログラムモジュールのような、情報を記憶するための任意の方法又は技術で実現される揮発性及び不揮発性の取り外し可能な媒体及び取り外し不可能な媒体を含んでもよい。システムメモリ604、取り外し可能なストレージ装置609、及び取り外し不可能なストレージ装置610は、いずれもコンピュータ記憶媒体の一例(例えば、メモリストレージ)である。コンピュータ記憶媒体は、RAM、ROM、電気的に消去可能なリードオンリーメモリ(EEPROM)、フラッシュメモリ又は他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)又は他の光学的ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージ装置、又は情報を記憶するために使用され、コンピューティング装置600によりアクセス可能な任意の他の製品を含んでもよい。任意のそのようなコンピュータ記憶媒体は、コンピューティング装置600の一部であってもよい。コンピュータ記憶媒体は、搬送波又は他の伝搬又は変調されたデータ信号を含まない。
【0064】
通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は変調されたデータ信号内の他のデータ、例えば搬送波又は他の移送機構によって具現化することができるとともに、任意の情報伝達媒体を含む。「変調されたデータ信号」という用語は、信号内に情報を符号化するように設定又は変更された1つ又は複数の特徴を有する信号を表してもよい。限定ではなく、一例として、通信媒体は、有線ネットワーク又は直接有線接続のような有線媒体、及び音響、無線周波数(RF)、赤外、及び他の無線媒体のような無線媒体を含んでもよい。
【0065】
図7A及び7Bは、本開示の態様を実施するために利用可能な携帯電話、スマートフォン、(スマートウォッチのような)ウェアラブルコンピュータ、タブレットコンピュータ、ラップトップコンピュータ、スマートホーム電器などのようなコンピューティング装置又はモバイルコンピューティング装置700を示している。図7Aを参照すると、これらの態様を実現するためのモバイルコンピューティング装置700の一態様が示されている。基本的な構成において、モバイルコンピューティング装置700は、入力要素と出力要素との両方を有する手持ちコンピュータである。モバイルコンピューティング装置700は、典型的には、ディスプレイ705と、ユーザがモバイルコンピューティング装置700に情報を入力することを可能にする1つ又は複数の入力ボタン709/710とを備える。モバイルコンピューティング装置700のディスプレイ705は、入力装置(例えば、タッチスクリーンディスプレイ)としても機能してもよい。オプションの副入力要素715(含まれる場合)によって、別のユーザ入力がさらに可能になる。副入力要素715は、ロータリースイッチ、ボタン、又は任意の他のタイプの手動入力要素であってもよい。代替としての態様において、モバイルコンピューティング装置700は、より多くの入力要素又はより少ない入力要素を組み込んでもよい。例えば、いくつかの態様において、ディスプレイ705はタッチスクリーンでなくてもよい。さらに別の代替の態様において、モバイルコンピューティング装置700は、セルラー電話などの携帯電話システムである。モバイルコンピューティング装置700はさらに、オプションのキーパッド735を含むことができる。オプションのキーパッド735は、物理キーパッド又はタッチスクリーンディスプレイ上で生成される「ソフト」キーパッドであってもよい。様々な態様において、出力要素は、グラフィカルユーザインターフェース(GUI)を表示するためのディスプレイ705と、視覚的インジケータ731(例えば、発光ダイオード)と、及び/又は音声トランスデューサ725(例えば、スピーカ)とを含む。いくつかの態様において、モバイルコンピューティング装置700は、ユーザに触覚フィードバックを提供するための振動トランスデューサを組み込んでいる。さらに別の態様において、モバイルコンピューティング装置700は、音声入力(例えば、マイクロホンジャック)、音声出力(例えば、ヘッドフォンジャック)、及びビデオ出力(例えば、HDMI(登録商標)ポート)のような入力及び/又は出力ポート730を組み込むことで、外部ソースとの間で信号の送受信を行う。
【0066】
図7Bは、コンピューティング装置、サーバ、又はモバイルコンピューティング装置の一態様のアーキテクチャを示すブロック図である。すなわち、モバイルコンピューティング装置700は、システム(例えば、アーキテクチャ)602を組み込むことで、いくつかの態様を実現することができる。システム702は、1つ又は複数のアプリケーション(例えば、ブラウザ、電子メール、カレンダー、連絡先マネージャ、メッセージ通信クライアント、ゲーム、及びメディアクライアント/プレーヤ)を実行することができる「スマートフォン」として実現されてもよい。いくつかの態様において、システム702は、統合されたパーソナルデジタルアシスタント(PDA)、無線電話などのコンピューティング装置として統合される。
【0067】
1つ又は複数のアプリケーションプログラム766は、メモリ762にロードされ、オペレーティングシステム764上で、又はオペレーティングシステム1164に関連して実行してもよい。アプリケーションプログラムの例としては、電話ダイヤルプログラム、電子メールプログラム、個人情報管理(PIM)プログラム、ワープロプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージ通信プログラム、及び/又は本明細書で説明されたシステムによりサポートされる1つ又は複数のコンポーネントなどが含まれる。システム702はまた、メモリ762内の不揮発性記憶領域768を含む。不揮発性記憶領域768は、システム702の電源が切られたときに失われてはならない永続的な情報を記憶するために使用されてもよい。アプリケーション766は、電子メール又は電子メールアプリケーションによって使用される他のメッセージなど、不揮発性記憶領域768内の情報を使用し、不揮発性記憶領域1168に記憶してもよい。同期アプリケーション(図示せず)もシステム702上に常駐し、ホストコンピュータ上に常駐する対応の同期アプリケーションとやり取りして、不揮発性記憶領域768に格納された情報とホストコンピュータ上に記憶された対応の情報との同期を維持するようにプログラミングされる。他のアプリケーションは、メモリ762にロードされ、本明細書で説明されたモバイルコンピューティング装置700上で動作してもよいことを理解すべきである(例えば、ビデオ処理モジュール623、音声処理モジュール624、ビデオエフェクトモジュール625、及びシェーダモジュール626など)。
【0068】
システム702は、1つ又は複数のバッテリとして実現されてもよい電源770を有する。電源770はさらに、ACアダプタ又はバッテリを補充又は再充電する電源付き格納台などの外部電源を含んでもよい。
【0069】
システム702はさらに、無線周波数通信を送受信する機能を実行する無線インターフェース層772を含むことができる。無線インターフェース層772は、通信キャリア又はサービスプロバイダを介してシステム702と「外部世界」との間の無線接続を容易にする。無線インターフェース層772との間の送信は、オペレーティングシステム764の制御の下で行われる。言い換えれば、無線インターフェース層772によって受信された通信は、オペレーティングシステム764を介してアプリケーションプログラム766に配布することができ、その逆も同様である。
【0070】
視覚的インジケータ720は、視覚的通知を提供するために使用することが可能で、且つ/又は音声インターフェース774は、音声トランスデューサ725を介して可聴通知を生成するために使用されてもよい。示された構成において、視覚的インジケータ720は発光ダイオード(LED)であり、音声トランスデューサ725はスピーカである。これらの装置は、電源770に直接結合されることで、起動されたときに、バッテリ電力を節約するためにプロセッサ760/761及び他の構成要素がオフにされていても、通知機構によって指定された継続時間の間、オンにされた状態を維持してもよい。LEDは、ユーザが装置の電源オン状態を示す行動を行うまで、無期限に点灯し続けるようにプログラムされてもよい。音声インターフェース774は、ユーザに可聴信号を提供し、ユーザから可聴信号を受信するために使用される。例えば、音声インターフェース774は、音声トランスデューサ725に結合されることに加えて、マイクロフォンに結合されることで、例えば電話会談を容易にするために、可聴入力を受信してもよい。本開示の態様によれば、マイクロフォンは、以下で説明するように、通知の制御を容易にするために音声センサとして機能してもよい。システム702は、オンボードカメラのオペレーションにより静止画像、ビデオストリーム等を記録することを可能にするビデオインターフェース776をさらに含んでもよい。
【0071】
システム702を実現するモバイルコンピューティング装置700は、追加の特徴又は機能を有してもよい。例えば、モバイルコンピューティング装置700は、磁気ディスク、光ディスク、又はテープなどの追加のデータストレージ装置(取外し可能な装置及び/又は取外し不可能な装置)をさらに備えてもよい。このような追加のストレージは、図7Bにおいて不揮発性記憶領域768によって示されている。
【0072】
以上で説明されたように、モバイルコンピューティング装置700によって生成又はキャプチャされ、システム702を介して記憶されたデータ/情報は、モバイルコンピューティング装置700上にローカルに記憶されてもよく、あるいは、データは、無線インターフェース層772を介して、又はモバイルコンピューティング装置700とモバイルコンピューティング装置700に関連付けられている別のコンピューティング装置(例えば、インターネットなどの、分散型コンピューティングネットワーク内のサーバコンピュータ)との間の有線接続を介して装置からアクセス可能な任意の数の記憶媒体に記憶されてもよい。このようなデータ/情報は、モバイルコンピューティング装置700を介して、無線インターフェース層772を介して、又は分散型コンピューティングネットワークを介してアクセスされてもよいことを、理解すべきである。同様に、このようなデータ/情報は、電子メール及び共同データ/情報共有システムを含む公知のデータ/情報送信及び記憶手段に従って、記憶及び使用のためにコンピューティング装置間で容易に送信されてもよい。
【0073】
図8は、上記で説明されたような、パーソナルコンピュータ804、タブレットコンピューティング装置806、又はモバイルコンピューティング装置808のような遠隔ソースからコンピューティングシステムにおいて受信されたデータを処理するための、システムのアーキテクチャの一態様を示している。サーバ装置802において表示されるコンテンツは、異なる通信チャネル又は他のストレージタイプに記憶されてもよい。例えば、コンピューティング装置804、806、808は、図1のコンピューティング装置104を表してもよく、サーバ装置802は、図1のサーバ106を表してもよい。
【0074】
いくつかの態様において、ビデオ処理モジュール823、音声処理モジュール824、及びビデオエフェクトモジュール825のうちの1つ又は複数は、サーバ装置802により実現されてもよい。サーバ装置802は、ネットワーク812を介して、パーソナルコンピュータ804、タブレットコンピューティング装置806、及び/又はモバイルコンピューティング装置808(例えば、スマートフォン)などのクライアントコンピューティング装置にデータを提供し、クライアントコンピューティング装置からデータを提供されてもよい。一例として、上述したコンピュータシステムは、パーソナルコンピュータ804、タブレットコンピューティング装置806、及び/又はモバイルコンピューティング装置808(例えば、スマートフォン)内で実現されてもよい。図形から始まるシステムにおける前処理又は受信コンピューティングシステムにおける後処理に使用できる図形データを受信することに加えて、コンピューティング装置のこれらの態様のいずれも、ストア816からコンテンツを取得してもよい。コンテンツストレージは、ビデオデータ818と、音声データ820と、レンダリングされたビデオデータ822とを含んでもよい。
【0075】
図8は、本明細書で開示された1つ又は複数の態様を実行してもよいモバイルコンピューティング装置808の一例を示す。さらに、本明細書に記載された態様及び機能は、分散型システム(例えば、クラウドベースのコンピューティングシステム)上で動作してもよいが、ここでは、アプリケーション機能、メモリ、データ記憶及びデータ検索、並びに様々な処理機能は、分散型コンピューティングネットワーク(例えば、インターネット又はイントラネット)上で互いに遠隔的に動作してもよい。様々なタイプのユーザインターフェース及び情報は、オンボードコンピューティング装置ディスプレイを介して、又は1つ又は複数のコンピューティング装置に関連付けられている遠隔ディスプレイユニットを介して表示されてもよい。例えば、様々なタイプのユーザインターフェースと情報を投影した壁面にこれらの様々なタイプのユーザインターフェースと情報を表示してインタラクションすることができる。本発明の態様を実施するために利用できる複数のコンピューティングシステムとのインタラクションは、キーストローク入力、タッチスクリーン入力、音声又は他の音声入力、ジェスチャ入力などを含み、ジェスチャ入力の場合、関連付けられているコンピューティング装置は、コンピューティング装置の機能をコントロールするためにユーザのジェスチャをキャプチャ及び解釈するための検出(例えば、カメラ)機能を備える。
【0076】
語句「少なくとも1つ」、「1つ又は複数」、「又は」、及び「及び/又は」は、操作において結合的且つ選言的なオープンエンド表現である。例えば、表現「A、B及びCのうちの少なくとも1つ」、「A、B又はCのうちの少なくとも1つ」、「A、B、及びCのうちの1つ又は複数」、「A、B、又はCのうちの1つ又は複数」、「A、B、及び/又はC」、及び「A、B、又はC」の各々は、Aのみ、Bのみ、Cのみ、AとB、AとC、BとC、又はA、B及びCを意味する。
【0077】
「1つの」エンティティという用語は、1つ又は複数の該エンティティを意味する。したがって、用語「1つ」、「1つ又は複数」、及び「少なくとも1つ」は、本明細書では互換的に使用されてもよい。また、用語「備える」、「含む」、及び「有する」が互換的に使用されてもよいことにも注意すべきである。
【0078】
本明細書で使用される用語「自動」及びその変形は、プロセス又はオペレーションが実行されるときに重要な手動入力なしになされる、通常は連続的又は半連続的な任意のプロセス又はオペレーションを指す。しかしながら、重要又は重要ではない手動入力を用いたとしても、入力がプロセス又はオペレーションの実行前に受け付けられたのであれば、該プロセス又はオペレーションの実行は、自動的に行うことができる。手動入力がプロセス又はオペレーションの実行方法に影響を与える場合、そのような手動入力は重要な入力とみなされる。プロセス又は操作の実行を同意するための手動入力は、「実質的」とはみなされない。
【0079】
本明細書で論議されるステップ、機能、及び操作のいずれも、連続的且つ自動的に実行されてもよい。
【0080】
本開示の例示的なシステム及び方法は、コンピューティング装置に関連して説明されてきた。しかしながら、本開示を不必要に不明瞭にすることを避けるために、前述の説明ではいくつかの既知の構造及び装置を省略している。この省略は限定として解釈すべきではない。本開示の理解を提供するために、特定の詳細は説明される。しかしながら、本開示は、本明細書に記載された特定の詳細に加えて、様々な方法で実施されてもよいことを理解すべきである。
【0081】
さらに、本明細書で示された例示的態様では、システムの様々なコンポーネントがともに配置されていることが示されているが、システムのいくつかのコンポーネントは、LAN及び/又はインターネットのような分散型ネットワークの遠位部分に遠隔的に配置されていてもよく、又は専用システム内に配置されていてもよい。したがって、システムのコンポーネントは、1つ又は複数の装置、例えばサーバ、通信装置に結合されてもよく、あるいは、アナログ及び/又はデジタル電気通信ネットワーク、パケット交換ネットワーク、又は回線交換ネットワークのような分散ネットワークの特定のノード上にともに配置されてもよいことを、理解すべきである。前述の説明から理解されるように、コンピューティング効率の理由から、システムのコンポーネントは、システムのオペレーションに影響を与えることなく、コンポーネントの分散型ネットワーク内の任意の場所に配置されてもよい。
【0082】
さらに、要素を接続する様々なリンクは、有線リンク又は無線リンク、又はそれらの任意の組み合わせ、若しくは接続された要素にデータを提供し、及び/又は接続された要素からデータを通信することができる他の既知の又は将来開発される任意の要素であってもよいことを、理解すべきである。これらの有線又は無線リンクも、安全なリンクであってもよく、暗号化された情報を通信可能であってもよい。例えば、リンクとして使用される伝送媒体は、同軸ケーブル、銅線、及び光ファイバを含む電気信号の任意の適切なキャリアであってもよく、例えば、無線電波及び赤外データ通信中に生成されるような音波又は光波の形態をとることができる。
【0083】
特定のイベントシーケンスに関連してフローチャートを議論し、例示してきたが、開示されている構成及び態様のオペレーションに実質的に影響を与えることなく、シーケンスに対する変更、追加、及び省略があってもよいことを、理解すべきである。
【0084】
本開示のいくつかの変更及び修正を使用することができる。本開示のいくつかの特徴を提供し、他の特徴を提供しないことも可能である。
【0085】
さらに別の設定において、本開示のシステム及び方法は、専用コンピュータ、プログラムされたマイクロプロセッサ又はマイクロコントローラ及び周辺集積回路素子、ASIC又は他の集積回路、デジタル信号プロセッサ、ハードワイヤード電子回路又は論理回路(例えば、ディスクリート素子回路)、プログラマブル論理装置又はゲートアレイ(例えば、PLD、PLA、FPGA、PAL)、専用コンピュータ、任意の類似の装置などと組み合わせて実施することができる。全体として、本開示の様々な態様を実施するために、本明細書に示される方法を実施することができる任意の装置又は手段を使用することができる。本開示に使用されることができる例示的なハードウェアは、コンピュータ、手持ち装置、電話(例えば、セルラー電話、インターネット対応電話、デジタル電話、アナログ電話、ハイブリッド電話など)、及び当分野で知られている他のハードウェアを含む。これらの装置のいくつかは、プロセッサ(例えば、単一又は複数のマイクロプロセッサ)、メモリ、不揮発性ストレージ、入力装置、及び出力装置を備える。本明細書に記載された方法を実現するために、さらに、分散型処理又はコンポーネント/オブジェクト分散型処理、並列処理、又は仮想マシン処理を含むがこれらに限定されない代替のソフトウェア実現を構築してもよい。
【0086】
さらに別の設定において、開示された方法は、様々なコンピュータ又はワークステーションプラットフォーム上で使用可能な移植可能なソースコードを提供するオブジェクト又はオブジェクト指向ソフトウェア開発環境を使用するソフトウェアと組み合わせて容易に実施することができる。代替として、開示されたシステムは、標準論理回路又はVLSI設計を使用して部分的に又は完全にハードウェアで実装されてもよい。本開示にかかるシステムを実現するためにソフトウェア又はハードウェアを使用するか否かは、システムの速度及び/又は効率要件、特定の機能、及び使用されている特定のソフトウェア又はハードウェアシステム又はマイクロプロセッサ又はマイクロコンピュータシステムに依存する。
【0087】
さらに別の設定において、開示された方法は、記憶媒体上に記憶され、コントローラ及びメモリと協働するプログラムされた汎用コンピュータ、専用コンピュータ、マイクロプロセッサなどの上で実行されることができるソフトウェアで部分的に実現されてもよい。これらのインスタンスにおいて、本開示のシステム及び方法は、サーバ又はコンピュータワークステーション上に常駐するリソースとして、また専用の測定システム、システムコンポーネントなどに組み込まれるルーチンとして、パーソナルコンピュータ上に組み込まれるプログラム、例えば、アプレット、JAVA(登録商標)、又はCGIスクリプトとして実装することができる。システム及び/又は方法を、ソフトウェア及び/又はハードウェアシステムに物理的に組み込むことにより、システムを実現することもできる。
【0088】
本開示は、説明されている規格及びプロトコルに限定されない。本明細書に記載されていない他の類似の規格及びプロトコルは既に存在し、本開示に含まれている。さらに、本明細書に記載された規格及びプロトコル、及び本明細書に記載されていない他の類似の規格及びプロトコルは、実質的に同じ機能を有するより高速又はより効率的な均等物に周期的に置き換えられる。同じ機能を有するこのような代替の規格及びプロトコルは、本開示に含まれる均等物であると考えられる。
【0089】
様々な構成及び態様において、本開示は、それらの様々な組合せ、サブ組合せ、及びサブセットを含む、本明細書で図示及び説明されるようなコンポーネント、方法、プロセス、システム、及び/又は装置を含む。当業者は、本開示を理解できれば、本開示のシステム及び方法をどのように製造及び使用するかを理解するであろう。本開示は、様々な構成及び態様において、以前の装置又はプロセスで例えばパフォーマンスを向上させ、使いやすさを実現し、且つ/又は実現コストを低減するために使用されていた可能性のある項目がない状態を含み、本明細書で又はその様々な構成又は態様において図示及び/又は記載されていない項目がない状態で、装置及びプロセスを提供することを含む。
【0090】
(A1) 一態様において、いくつかの例は、ディスプレイにビデオエフェクトをレンダリングするための方法を含む。前記方法は、ビデオデータと音声データとを取得することと、前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、を含む。
【0091】
(A2) A1のいくつかの例において、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することと、前記音声特徴に基づいて、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定することと、を含む。
【0092】
(A3) A1~A2のいくつかの例において、前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される。
【0093】
(A4) A1~A3のいくつかの例において、前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む。
【0094】
(A5) A1~A4のいくつかの例において、前記方法は、前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3次元メッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、をさらに含む。
【0095】
(A6) A1-A5のいくつかの例において、前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む。
【0096】
(A7) A1~A6のいくつかの例において、前記音声データを取得することは、音楽ライブラリから前記音声データを選択することを含み、前記音声特徴はメタデータとして前記音声データに埋め込まれる。
【0097】
さらに別の態様において、いくつかの例はコンピューティングシステムを含み、該コンピューティングシステムは1つ又は複数のプロセッサと、該1つ又は複数のプロセッサに結合されたメモリとを備え、該メモリは、該1つ又は複数のプロセッサにより実行された場合、該1つ又は複数のプロセッサに、本明細書に説明された方法のうちのいずれかの方法(例えば、上記A1~A7)を実行させる1つ又は複数の命令を記憶している。
【0098】
さらに別の態様において、いくつかの例は、ストレージ装置の1つ又は複数のプロセッサによって実行されるための1つ又は複数のプログラムを記憶している非一時的なコンピュータ可読記憶媒体を含み、該1つまたは複数のプログラムは本明細書で説明された方法(例えば、上記A1~A7)のうちのいずれかの方法を実行するための命令を含む。
【0099】
(B1) 一態様において、いくつかの例は、ディスプレイにビデオエフェクトをレンダリングするためのコンピューティング装置を含む。前記コンピューティング装置は、プロセッサと、前記プロセッサにより実行された場合、前記コンピューティング装置に、ビデオデータと音声データとを取得することと、前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、を実行させる。
【0100】
(B2) B1のいくつかの例において、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することと、前記音声特徴に基づいて、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトを決定することと、を含む。
【0101】
(B3) B1~B2のいくつかの例において、前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される。
【0102】
(B4) B1~B3のいくつかの例において、前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む。
【0103】
(B5) B1~B4のいくつかの例において、前記複数の命令は、実行された場合、前記コンピューティング装置に、前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3次元メッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、をさらに実行させる。
【0104】
(B6) B1-B5のいくつかの例において、前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む。
【0105】
(B7) B1~B6のいくつかの例において、前記音声データを取得することは、音楽ライブラリから前記音声データを選択することを含み、前記音声特徴はメタデータとして前記音声データに埋め込まれる。
【0106】
(C1) 一態様において、いくつかの例は、ディスプレイにビデオエフェクトをレンダリングするための命令を記憶した非一時的なコンピュータ可読媒体を含む。前記命令は、コンピューティング装置の1つ又は複数のプロセッサにより実行された場合、前記コンピューティング装置に、ビデオデータと音声データとを取得することと、前記ビデオデータ中に現れるターゲットオブジェクトの1つ又は複数の付加ポイントを決定するために、前記ビデオデータを分析することと、音声特徴を決定するために、前記音声データを分析することと、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加されるアニメーション関連のビデオエフェクトを決定することと、前記ビデオデータに前記ビデオエフェクトを適用することにより、レンダリングされたビデオを生成することと、を実行させる。
【0107】
(C2) C1のいくつかの例において、前記音声特徴に基づいて、前記1つ又は複数の付加ポイントに追加される前記アニメーション関連の前記ビデオエフェクトを決定することは、前記1つ又は複数の付加ポイントに追加されるアニメ化オブジェクトを決定することと、前記音声特徴に基づいて、前記アニメ化オブジェクトが付加される前記ビデオデータ内の前記1つ又は複数の付加ポイントと、前記アニメ化オブジェクトに適用される1つ又は複数のアニメーションエフェクトとを決定することと、を含む。
【0108】
(C3) C1~C2のいくつかの例において、前記1つ又は複数の付加ポイントは、前記ビデオデータに現れる前記ターゲットオブジェクトの1つ又は複数のボディポイントから選択される。
【0109】
(C4) C1~C3のいくつかの例において、前記ビデオデータ内の前記1つ又は複数の付加ポイントを決定することは、前記音声特徴に基づいて前記ビデオデータ内の1つ又は複数の付加ポイントを決定することを含む。
【0110】
(C5) C1~C4のいくつかの例において、前記命令は、前記1つ又は複数のプロセッサにより実行された場合、前記コンピューティング装置に、前記1つ又は複数の付加ポイントの周囲に3次元(3D)メッシュを生成することと、前記アニメ化オブジェクトが付加される前記1つ又は複数の付加ポイントの周囲の対応する3次元メッシュ内に前記アニメ化オブジェクトをブレンドするために、アニメーションシーケンスを修正することと、をさらに実行させる。
【0111】
(C6) C1-C5のいくつかの例において、前記音声特徴は各ビートのビート特徴又は各ビートのための周波数スペクトル値を含む。
【0112】
例えば、本開示の態様は、本開示の態様にかかる方法、システム、及びコンピュータプログラム製品のブロック図及び/又はオペレーション説明を参照して以上に説明されている。ブロック内に記された機能/動作は、任意のフローチャートに示された順序とは異なる順序で発生することができる。例えば、関連する機能/動作によっては、連続して示される2つのブロックは実際には実質的に同時に実行されてもよく、又はこれらのブロックは時には逆の順序で実行されてもよい。
【0113】
本願で提供された1つ又は複数の態様の説明及び例示は、特許請求される本開示の範囲をいかなる態様で制限又は限定することも意図していない。本明細書で説明された態様、例及び詳細は、所有権を伝えるのに十分であり、かつ、他の者が特許請求される本開示の最善の形態を形成及び使用することを可能にするのに十分であるとみなされる。特許請求される本開示は、本明細書で説明された態様、例、又は詳細に限定されるものと解釈すべきではない。様々な特徴(構造的特徴及び方法的特徴)は、組み合わせて図示又は説明されるか又は個別に図示又は説明されるかにかかわらず、特定の特徴セットを有する実施形態を形成するためには、選択的に含む又は省略することが意図されている。本願の説明及び例示を提供することにより、当業者は、特許請求される開示のより広い範囲から逸脱しない、本願で実現された一般的な発明構想のより広い態様の要旨に含まれる変更、修正及び代替態様を想定してもよい。
図1
図2
図3A
図3B
図3C
図4
図5
図6
図7A
図7B
図8
【国際調査報告】