(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-10-13
(54)【発明の名称】フレームレート変換
(51)【国際特許分類】
H04N 21/431 20110101AFI20221005BHJP
H04N 21/442 20110101ALI20221005BHJP
【FI】
H04N21/431
H04N21/442
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022506972
(86)(22)【出願日】2020-08-06
(85)【翻訳文提出日】2022-02-03
(86)【国際出願番号】 US2020045290
(87)【国際公開番号】W WO2021026396
(87)【国際公開日】2021-02-11
(32)【優先日】2019-08-08
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】517349234
【氏名又は名称】ネットフリックス,インコーポレイティド
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100153729
【氏名又は名称】森本 有一
(72)【発明者】
【氏名】ウェイクオ チョン
(72)【発明者】
【氏名】レックス イク チュン チン
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA06
5C164PA32
5C164UB41P
5C164UB82P
5C164YA18
(57)【要約】
開示される方法は、特定のフレームレートで符号化されたビデオコンテンツへのアクセスと、前記ビデオコンテンツが提示される電子ディスプレイのリフレッシュレートの決定を含む。本方法は次に、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定を含む。この方法はまた、前記電子ディスプレイに、前記間隔の第1部分の再生速度が調整された前記ビデオコンテンツを表示することを含む。この調整された速度で、元のビデオフレームと複数の複製フレームとを用いて前記間隔が再生される。前記提示はまた、前記間隔の第2部分の再生速度も調整する。前記調整された速度にて、前記元のビデオフレームと複製フレームの異なる部分とを用いて前記間隔が再生される。他の様々な方法、システム、及びコンピュータ読み取り可能な媒体も開示される。
【選択図】
図4
【特許請求の範囲】
【請求項1】
特定のフレームレートで符号化されたビデオコンテンツの一部分にアクセスし、
前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートを決定し、
前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔を特定し、
前記電子ディスプレイに、ビデオコンテンツの前記特定された時間間隔を提示するコンピュータ実行方法であって、前記提示は、
ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、
ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにする、コンピュータ実行方法。
【請求項2】
前記複製フレームの異なるシーケンスである第2シーケンスは、少なくとも最小しきい値の数の複製フレームを含む、請求項1に記載のコンピュータ実行方法。
【請求項3】
ビデオコンテンツの前記特定された間隔の前記第1部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記第1部分の前記再生速度を上げることを含む、請求項1に記載のコンピュータ実行方法。
【請求項4】
ビデオコンテンツの前記特定された間隔の前記第2部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記第2部分の前記再生速度を下げることを含む、請求項1に記載のコンピュータ実行方法。
【請求項5】
前記再生速度は、前記再生速度の特定された最大速度又は最遅速度の範囲内で調整される、請求項1に記載のコンピュータ実行方法。
【請求項6】
再生速度の調整は、前記ビデオコンテンツに関連付けられたプレゼンテーションタイムスタンプの変更を含む、請求項1に記載のコンピュータ実行方法。
【請求項7】
前記特定された時間間隔は1秒より長い、請求項1に記載のコンピュータ実行方法。
【請求項8】
前記特定された時間間隔は少なくとも3秒である、請求項1に記載のコンピュータ実行方法。
【請求項9】
前記再生速度は提示されているビデオフレームの種類に基づいて調整される、請求項1に記載のコンピュータ実行方法。
【請求項10】
1つ以上の1次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される、請求項9に記載のコンピュータ実行方法。
【請求項11】
1つ以上の2次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される、請求項9に記載のコンピュータ実行方法。
【請求項12】
複数の前記複製フレームは特定された間隔で繰り返される、請求項1に記載のコンピュータ実行方法。
【請求項13】
少なくとも1つの物理プロセッサと、
コンピュータ実行可能命令を含む物理メモリと、を備えるシステムであって、前記物理プロセッサによって実行されたとき、前記物理プロセッサに対して、
特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスと、
前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートの決定と、
前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定と、
前記電子ディスプレイへの、ビデオコンテンツの前記特定された時間間隔の提示と、を行わせるシステムであって、前記提示は、
ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、
ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにする、システム。
【請求項14】
ビデオコンテンツの前記特定された間隔の各部分の前記再生速度は、参照用テーブルに格納される、請求項13に記載のシステム。
【請求項15】
ビデオコンテンツの前記特定された間隔は、前記参照用テーブルに示された再生情報に従って、前記電子ディスプレイで再生される、請求項14に記載のシステム。
【請求項16】
前記参照用テーブルには、ビデオコンテンツの前記特定された時間間隔が前記電子ディスプレイに提示されている間に適用されて、ビデオコンテンツの前記特定された時間間隔内での各フレームのプレゼンテーションタイムスタンプを調整する、1つ以上のデルタ値を含む、請求項15に記載のシステム。
【請求項17】
ビデオコンテンツの前記特定された時間間隔の前記電子ディスプレイでの提示をテストして、前記ビデオコンテンツの再生に関する1つ以上の特定の品質メトリックを検証することをさらに含む、請求項13に記載のシステム。
【請求項18】
前記ビデオコンテンツの前記フレームレートは毎秒24フレームで、前記電子ディスプレイの前記リフレッシュレートは50Hzである、請求項13に記載のシステム。
【請求項19】
前記ビデオコンテンツの前記フレームレートは毎秒24フレームで、前記電子ディスプレイの前記リフレッシュレートは60Hzである、請求項13に記載のシステム。
【請求項20】
一つ以上のコンピュータ実行可能命令を備える非一時的なコンピュータ可読媒体であって、コンピューティングデバイスの少なくとも1つのプロセッサによって実行されたときに、前記コンピューティングデバイスに対して、
特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスと、
前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートの決定と、
前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定と、
前記電子ディスプレイへの、ビデオコンテンツの前記特定された時間間隔の提示と、を実行させるシステムであって、前記提示は、
ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、
ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにする、非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本明細書は、2019年8月8日に出願された「FRAME RATE CONVERSION」と題する米国特許出願第16/536302号明細書の優先権を主張し、当該米国特許出願に記載された全ての記載内容が参照により本明細書に援用される。
【背景技術】
【0002】
映画、テレビ、オンラインストリーミング映像、及びその他のコンテンツを含むデジタルビデオコンテンツは、通常、様々な符号化フォーマットを用いて符号化される。最も一般的には、ビデオコンテンツはMPEG-4などの、MPEG規格のうちの一つを用いて符号化される。符号化では、ビデオを表示するためのフレームレートが特定される。例えば、映画は一般的に、毎秒24フレームで符号化される。そしてこのビデオコンテンツは電子ディスプレイに送信され、ユーザ又はユーザのグループに提示される。電子ディスプレイ(例えば、液晶ディスプレイ(LCD)、有機発光ダイオード(OLED)ディスプレイ、又は幾つかの他のタイプのディスプレイ)は、通常、特定のリフレッシュレートでコンテンツを表示する。
【0003】
例えば、多くのディスプレイは50Hz、60Hz、120Hz、さらには240Hzでコンテンツを表示する。そのため、電子ディスプレイは、ディスプレイ上に毎秒50回、60回、120回、又は240回新しい画像を生成している。ディスプレイに送信されるビデオコンテンツは大幅に低いフレームレート(例えば、毎秒24フレーム)で符号化されるため、ディスプレイは毎秒複数回、同じフレームを再描画する場合がある。これらのフレームを毎秒複数回にわたり再描画する際、毎秒のフレーム数(例えば、24)は、多くの場合、ディスプレイのリフレッシュレートである50Hzや60Hzなどで完全に分割できない。そのため、追加のためのビデオフレーム又はフレームの一部が再生中に複製され、ビデオコンテンツのフレームレートが電子ディスプレイのリフレッシュレートに合わせられる。しかし、現状での複製及び同期の手法は、多くの場合に映像の乱れを伴い、ユーザの視聴体験を低下させる目立った加工に終わっている。
【発明の概要】
【0004】
以下でより詳細に説明するように、本開示は、ビデオのフレームレートを電子ディスプレイのリフレッシュレートと整合させるためのシステム及び方法を説明する。本方法は、特定のフレームレートで符号化されたビデオコンテンツにアクセスすることを含む。本方法はまた、前記ビデオコンテンツが提示される電子ディスプレイのリフレッシュレートを決定することを含む。本方法はさらに、前記ビデオコンテンツの前記フレームレートを電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔を特定することを含む。本方法はまた、前記電子ディスプレイに、ビデオコンテンツの前記特定された時間間隔を提示することを含む。前記提示は、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、そして、ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにすることを含む。
【0005】
いくつかの例では、複製フレームの異なるシーケンスである第2シーケンスは、少なくとも最小しきい値の数の複製フレームを含む。いくつかの例では、ビデオコンテンツの前記特定された間隔の第1部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記第1部分の前記再生速度を上げることを含む。いくつかの例では、ビデオコンテンツの前記特定された間隔の第2部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の第2部分の再生速度を下げることを含む。
【0006】
いくつかの例では、前記再生速度は、前記再生速度の特定された最大速度又は最遅速度の範囲内で調整される。いくつかの例では、再生速度の調整には、前記ビデオコンテンツに関連付けられたプレゼンテーションタイムスタンプの変更が含まれる。いくつかの例では、前記特定された時間間隔は1秒より長い。いくつかの例では、前記特定された時間間隔は少なくとも3秒である。
【0007】
いくつかの例では、前記再生速度は提示されているビデオフレームの種類に基づいて調整される。いくつかの例では、1次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される。いくつかの例では、2次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される。いくつかの例では、複数の前記複製フレームは特定された間隔で繰り返される。
【0008】
対応するシステムは、少なくとも1つの物理プロセッサと、コンピュータ実行可能命令を含む物理メモリとを備えるシステムであって、前記物理プロセッサによって実行されたとき、前記物理プロセッサに対して、特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスを実行させる。次に、前記物理プロセッサは、前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートを決定する。前記物理プロセッサはさらに、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔を特定する。前記物理プロセッサはまた、前記電子ディスプレイへ、ビデオコンテンツの前記特定された時間間隔を提示する。前記提示には、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにすること、及びビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定され間間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにすることを含む。
【0009】
いくつかの例では、ビデオコンテンツの前記特定された間隔の各部分の再生速度は参照用テーブルに格納される。いくつかの例では、ビデオコンテンツの前記特定された間隔は、前記参照用テーブルに示された再生情報に従って、前記電子ディスプレイで再生される。いくつかの例では、前記参照用テーブルには、ビデオコンテンツの前記特定された時間間隔が前記電子ディスプレイに提示されている間に適用されて、ビデオコンテンツの前記時間間隔内での各フレームのプレゼンテーションタイムスタンプを調整するデルタ値を含む。
【0010】
いくつかの例では、前記システムは、前記ビデオコンテンツの再生に関する特定の品質メトリックを検証するために、前記電子ディスプレイ上で、ビデオコンテンツの前記特定された時間間隔の提示をさらにテストする。いくつかの例では、前記ビデオコンテンツの前記フレームレートは毎秒24フレームであり、前記電子ディスプレイの前記リフレッシュレートは50Hzである。いくつかの例では、前記ビデオコンテンツの前記フレームレートは毎秒24フレームであり、前記電子ディスプレイの前記リフレッシュレートは60Hzである。
【0011】
いくつかの例では、上記の方法は、コンピュータ可読媒体上でコンピュータ可読命令として符号化される。例えば、コンピュータ可読媒体は、一つ以上のコンピュータ実行可能命令を有し、コンピューティングデバイスの少なくとも1つのプロセッサによって実行されたときに、前記コンピューティングデバイスに対して、特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスと、前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートの決定と、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定と、前記電子ディスプレイへの、ビデオコンテンツの前記特定された時間間隔の提示と、を行わせ、前記提示は、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにすることを含む。
【0012】
本明細書に記載の実施形態のいずれかから得られる特徴は、本明細書に記載の一般原理に従って、互いに組み合わせて使用することができる。これら及び他の実施形態、特徴、及び利点は、添付の図面及び特許請求の範囲と併せて以下の詳細な説明を読むことにより、より充分に理解される。
【0013】
添付の図面は、いくつかの好ましい実施形態を示しており、本明細書の一部である。以下の説明とともに、これらの図面は、本開示の様々な原理を実証及び説明するものである。
【図面の簡単な説明】
【0014】
【
図1】
図1は、好ましいコンテンツ配信エコシステムのブロック図である。
【
図2】
図2は、
図1に示されるコンテンツ配信エコシステム内の好ましい配信インフラストラクチャのブロック図である。
【
図3】
図3は、
図1に示されるコンテンツ配信エコシステム内の好ましいコンテンツプレーヤのブロック図である。
【
図4】
図4は、本明細書で説明される実施形態が動作するコンピューティングアーキテクチャを示す。
【
図5】
図5は、ビデオのフレームレートを電子ディスプレイのリフレッシュレートと同期させるための好ましい方法のフロー図を示す。
【
図6】
図6は、ビデオコンテンツの2つの異なる部分を有する時間間隔の実施形態を示す。
【
図7】
図7は、異なるフレームレートのビデオフレームが異なる表示レートに変換される実施形態を示す。
【
図8】
図8は、フレームレート変換品質メトリックとともに、異なるフレームレート変換及び異なる種類の複製フレームを備えたチャートを示す。
【
図9】
図9は、元のビデオフレーム及び複製ビデオフレームを有する実施形態を示す。
【
図10A】
図10Aは、フレームレート変換が毎秒24フレームから毎秒60フレームに適用される実施形態を示す。
【
図10B】
図10Bは、フレームレート変換が毎秒24フレームから毎秒50フレームに適用される実施形態を示す。
【
図10C】
図10Cは、フレームレート変換が3秒ウィンドウにわたって毎秒24フレームから毎秒50フレームに適用される実施形態を示す。
【
図11A】
図11Aは、異なる時間間隔、複製フレーム番号、順序、及び再生速度を有するチャートを示す。
【
図11B】
図11Bは、複数の複製ビデオフレームが特定の再生速度で再生される実施形態を示す。
【
図11C】
図11Cは、表示タイムスタンプがフレームレート変換と併せて調整される実施形態を示す。
【
図12】
図12は、オーディオ及びビデオの同期が修正されて、所望のオーディオ/ビデオ出力を生成する実施形態を示す。
【発明を実施するための形態】
【0015】
図面全体を通して、同一の参照文字及び説明は、類似しているが同一である必要は無い要素を示している。本明細書に記載の好ましい実施形態は、様々な変形及び代替形態を許容するものであるが、特定の実施形態が例として図面に示されるとともに本明細書で詳細に説明される。しかしながら、本明細書に記載される好ましい実施形態は、開示される特定の形態に限定されることを意図するものではない。むしろ、本開示は、添付の特許請求の範囲に含まれるすべての変形、同等物、及び代替物を対象とする。
【0016】
本開示は、全般的に、ビデオのフレームレートを電子ディスプレイのリフレッシュレートに合わせることに向けられている。上述のように、従来のシステムは、単に複製フレーム又は複製フレームの一部を追加することによって、ビデオのフレームレートをディスプレイのリフレッシュレートに合わせようとしている。例えば、24フレーム/秒(fps)から60Hz(米国と日本のディスプレイで多く使用されている)に変換する場合、従来のシステムでは24フレームすべてが1回複製され、合計48フレームとなる。これらの従来のシステムは、次に、2度目の複製となる追加の12フレームを作成し、合計60フレームとなる。そして、これら60フレームは、それぞれ1/60秒の間電子ディスプレイに表示される。後続のフレームも同様に、映画長に対してこの方法で複製され表示される。
【0017】
24fpsで撮影された映画を50Hzに変換する場合(ヨーロッパと南アメリカのディスプレイでは一般的である)、元の24フレームが複製されて48フレームが作成され、2つのフレームが2回目の複製に供されて合計50フレームとなる。これら50フレームは、それぞれ1/50秒の間ディスプレイに表示される。他の実装では、元の24フレームが1回複製され、一方で1つのフレームが再度複製され、別のフレームも2回目の複製に供される。これは通常、ユーザに視認される顕著なジッターやその他の表示アーティファクトにつながる。さらに注意すべきは、これらの従来のシステムでは、各フレームが同じレートで再生されることである。複製フレームがどのように生成されるかに関係なく、ビデオコンテンツは、映画やテレビ番組全体で一定した同一速度で再生される。
【0018】
他の従来の実装としては、直接複製せずにフレームを生成しようとする試みがある。例えば、動画補間システムは、選択されたフレームとその後続のフレームに着目し、動画予測/補間(МEМC)アルゴリズムを使用してこれらの各フレームの違いを分析する。そのようなシステムは、次に、最初のフレーム内のピクセルの初期位置を用い、それに続くフレームの最終位置に前記ピクセルを遷移させる中間フレームを計算する。したがって、前記中間フレームは、前記選択されたフレームと前記後続フレームの「平均」ピクセル値を表す。しかし、これらの計算は比較的大量の計算能力を必要とし、ユーザが気付くような目立つ痕跡を画像内に残す傾向がある。そのため、ユーザはたびたび、テレビやモニターでこういった動画予測システムをオフにしている。
【0019】
ビデオコンテンツのさらに他のプロバイダーは、さまざまな市場向けにライブラリ全体を単純に再符号化することを選択している。例えば、視聴用(例えば、ストリーミングプラットフォーム上)に提供されたビデオA、B、及びCは、60Hzディスプレイに容易に変換できるように、24fpsで符号化される。ただし、24fpsは明確に50Hzに変換されないため、ヨーロッパでの視聴用に提供されるこれらの同じビデオA、B、及びCは、50Hzに容易に変換できるように、25fpsで符号化される。このような場合、フレーム変換は、元の各フレームを1回複製するだけで合計50fpsとなり、50Hzディスプレイに1:1の比率で表示される。ただし、非常に大きなライブラリを持つビデオコンテンツプロバイダーの場合、表示のリフレッシュレートが異なるさまざまな地域のためにライブラリ全体を再符号化することは現実的ではない。
【0020】
したがって、本明細書に記載の実施形態は、ビデオストリーミングプロバイダがライブラリを再符号化する必要がなく、動画予測を導入することなく、ユーザに滑らかで鮮明な画像を提供する速度でビデオコンテンツを電子ディスプレイに提供することができる。本明細書に記載の実施形態では、特定のフレーム又はフレームのグループの再生速度は、変化する表示間隔にわたってより多い又はより少ないフレームに対応するために、数分の1秒だけ高速化又は減速される。これらの再生速度の違いはユーザにとって僅かなものであり、元のフレームレートや、コンテンツが表示されるディスプレイのリフレッシュレートに関係なく、ビデオコンテンツをスムーズに再生する。
【0021】
ビデオのフレームレートを電子ディスプレイのリフレッシュレートに合わせるシステムは、特定のフレームレートで符号化されたビデオコンテンツにアクセスする場合もある。前記システムは、ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートも決定する。次に、前記システムは、ビデオコンテンツのフレームレートを電子ディスプレイのリフレッシュレートと同期させるために、フレームレート変換が適用されるビデオコンテンツの時間間隔を特定する。前記システムはさらに、ビデオコンテンツの時間間隔を電子ディスプレイに提示する。前記提示は、ビデオコンテンツの前記特定された間隔の再生速度を調整することで、前記特定された間隔の一部分が、元のビデオフレームと複製フレームのシーケンスとを用いて再生されることを伴う。前記提示はまた、ビデオコンテンツの前記特定された間隔の異なる部分の再生速度を調整することで、前記間隔のこの一部分が、元のビデオフレームと複製フレームの異なるシーケンスとを用いて再生されることを伴う。
【0022】
複製フレームの他のシーケンスには、最小数の複製フレームが含まれる。ビデオコンテンツの前記特定された間隔の再生速度を調整することは、ビデオコンテンツの前記特定された間隔の最初の部分の再生速度を上げることを含む場合もある。ビデオコンテンツの前記特定された間隔の他の部分の再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記他の部分の再生速度を下げることを含む。前記再生速度は、前記再生速度の特定された最大速度又は最遅速度の範囲内で調整される。再生速度の調整は、ビデオコンテンツに関連付けられたプレゼンテーションタイムスタンプの変更を含む場合もある。前記特定された時間間隔は1秒より長く、場合によっては少なくとも3秒である。
【0023】
前記再生速度は表示されているビデオフレームの種類に基づいて調整される場合もある。1次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される。2次複製フレームを含むビデオコンテンツの間隔は、指定された再生速度で自動的に再生される。複数の複製フレームは、特定された間隔で繰り返される。ビデオコンテンツの前記間隔の各部分の再生速度が、参照用テーブルに格納されている。ビデオコンテンツの前記間隔は、前記参照用テーブルに示された再生情報に従って、前記電子ディスプレイで再生される。前記参照用テーブルには、ビデオコンテンツの前記時間間隔が電子ディスプレイに提示されている間に適用されて、ビデオコンテンツの前記時間間隔の各フレームのプレゼンテーションタイムスタンプを調整するデルタ値が含まれる。
【0024】
ビデオコンテンツの前記時間間隔の提示が電子ディスプレイでテストされ、ビデオコンテンツの再生に関する品質メトリックが検証される場合もある。ビデオコンテンツのフレームレートは、実装によって異なる。ビデオコンテンツのフレームレートは毎秒24フレームで、電子ディスプレイのリフレッシュレートは50Hzの場合もある。その他、ビデオコンテンツのフレームレートは毎秒24フレームで、電子ディスプレイのリフレッシュレートは60Hzの場合もある。これらの実施形態は、ストリーミングメディアプレーヤ及びストリーミングメディア環境を紹介する
図1~3、フレーム変換を計算するためのコンピューティングアーキテクチャ及び方法を説明する
図4及び5、フレーム変換を実行するための異なる実装及び代替の実施形態を説明する
図6~12を参照して、以下でより詳細に説明される。
【0025】
以下、
図1を参照して、マルチメディアコンテンツの適応ストリーミングのための好ましいエコシステムを詳細に説明する。
図2及び3に対応する議論は、それぞれ、好ましい配信インフラストラクチャ及び好ましいコンテンツプレーヤの概要を提供する。マルチメディアコンテンツの適応ストリーミングのためのコンピュータ実行方法に対応する詳細な説明は、
図4に関連して提供される。
【0026】
図1は、コンテンツプレーヤ120と通信する配信インフラストラクチャ110を含むコンテンツ配信エコシステム100のブロック図である。いくつかの実施形態では、配信インフラストラクチャ110は、特定のデータレートでデータを符号化し、前記符号化されたデータをコンテンツプレーヤ120に転送するように構成されていてもよい。コンテンツプレーヤ120は、配信インフラストラクチャ110を介して前記符号化されたデータを受信し、前記データを複合化してユーザに向け再生するように構成されていてもよい。配信インフラストラクチャ110によって提供される前記データは、オーディオ、ビデオ、テキスト、画像、アニメーション、インタラクティブコンテンツ、触覚データ、仮想又は拡張現実データ、位置データ、ゲームデータ、又はストリーミングを介して提供され得る他のタイプのデータを含んでいてもよい。
【0027】
配信インフラストラクチャ110は、一般に、コンテンツをエンドユーザに配信するように構成された任意のサービス、ハードウェア、ソフトウェア、又は他のインフラストラクチャコンポーネントを表す。例えば、配信インフラストラクチャ110は、コンテンツ集計システム、メディアトランスコーディング及びパッケージングサービス、ネットワークコンポーネント、及び/又は他の様々なタイプのハードウェア及びソフトウェアを含んでいてもよい。配信インフラストラクチャ110は、非常に複雑な配信システム、単一のメディアサーバー又はデバイス、あるいはそれらの中間のものとして実装されていてもよい。いくつかの例では、サイズ又は複雑さに関係なく、配信インフラストラクチャ110は、少なくとも1つの物理プロセッサ112及び少なくとも1つのメモリデバイス114を含んでいてもよい。本明細書で論じられるように、1つ以上のモジュール116は、適応ストリーミングを可能にするためにメモリ114に格納又は搭載されていてもよい。
【0028】
コンテンツプレーヤ120は、一般に、配信インフラストラクチャ110を介して提供されたオーディオ及び/又はビデオコンテンツを再生することができる任意の種類又は形態のデバイス又はシステムを表す。コンテンツプレーヤ120の例としては、携帯電話、タブレット、ラップトップコンピュータ、デスクトップコンピュータ、テレビ、セットトップボックス、デジタルメディアプレーヤ、仮想現実ヘッドセット、拡張現実メガネ、及び/又はデジタルコンテンツをレンダリングできるその他の任意の種類又は形式のデバイスが含まれるが、これらに限定されない。配信インフラストラクチャ110と同様に、コンテンツプレーヤ120は、物理プロセッサ122、メモリ124、及び1つ又は複数のモジュール126を含んでいてもよい。本明細書に記載の適応ストリーミングプロセスのいくつか又はすべては、モジュール126によって実行又は有効化されることができ、いくつかの例では、配信インフラストラクチャ110のモジュール116は、マルチメディアコンテンツの適応ストリーミングを提供するために、コンテンツプレーヤ120のモジュール126と連携するものであってもよい。
【0029】
特定の実施形態では、
図1のモジュール116及び/又は126のうちの1つ又は複数は、コンピューティングデバイスによって実行されると、前記コンピューティングデバイスに1つ又は複数のタスクを実行させることができる1つ又は複数のソフトウェアアプリケーション又はプログラムを表すものであってもよい。例えば、以下でより詳細に説明するように、モジュール116及び126のうちの1つ又は複数は、1つ又は複数の汎用コンピューティングデバイス上で実行するように格納及び構成されたモジュールを表すものであってもよい。
図1のモジュール116及び126のうちの1つ又は複数は、1つ又は複数のタスクを実行するように構成された1つ又は複数の専用コンピュータの全部又は一部を表すものであってもよい。
【0030】
さらに、本明細書で説明されるモジュール、プロセス、アルゴリズム、又はステップの1つ又は複数は、データ、物理デバイス、及び/又は物理デバイスの提示をある形式から別の形式に変換するものであってもよい。例えば、本明細書にて詳述される1つ又は複数のモジュールは、符号化される音声データを受信し、その音声データを符号化することによって変換し、適応型音声ビットレートシステムで使用するために符号化の結果を出力し、変換の結果をコンテンツプレーヤに送信し、変換されたデータをレンダリングしてエンドユーザの視聴用に供するものであってもよい。追加的又は代替的に、本明細書にて詳述されるモジュールの1つ又は複数は、コンピューティングデバイス上で実行し、コンピューティングデバイス上でデータを格納し、及び/又はコンピューティングデバイスと相互作用することによって、プロセッサ、揮発性メモリ、不揮発性メモリ、及び/又は物理コンピューティングデバイスの他の部分を、ある形態から別の形態に変換するものであってもよい。
【0031】
物理プロセッサ112及び122は、一般に、コンピュータ可読命令を解釈及び/又は実行することができる任意の種類又は形態のハードウェア実装処理ユニットを表す。一例としては、物理プロセッサ112及び122は、それぞれ、モジュール116及び126のうちの1つ又は複数へのアクセス及び/又は変更ができるものであってもよい。追加的又は代替的に、物理プロセッサ112及び122は、マルチメディアコンテンツの適応ストリーミングを容易にするために、モジュール116及び126のうちの1つ又は複数を実行するものであってもよい。物理プロセッサ112及び122の例としては、マイクロプロセッサ、マイクロコントローラ、中央処理装置(CPU)、ソフトコアプロセッサを実装するフィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、これらの1つ又は複数の一部、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の適切な物理プロセッサが含まれるが、これらに限定されない。
【0032】
メモリ114及び124は、一般に、データ及び/又はコンピュータ可読命令を格納することができる任意の種類又は形態の揮発性又は不揮発性ストレージデバイス又は媒体を表す。一例としては、メモリ114及び/又は124は、モジュール116及び126のうちの1つ又は複数を格納、搭載、及び/又は保持するものであってもよい。メモリ114及び/又は124の例としては、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、フラッシュメモリ、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスクドライブ、キャッシュ、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の適切なメモリデバイス又はシステムが含まれるが、これらに限定されない。
【0033】
図2は、特定の実施形態によるコンテンツ配信インフラストラクチャ110の好ましいコンポーネントのブロック図である。配信インフラストラクチャ110は、ストレージ210、サービス220、及びネットワーク230を含むものであってよい。ストレージ210は、一般に、エンドユーザに配信するためのコンテンツを格納することができる任意のデバイス、デバイスのセット、及び/又はシステムを表す。ストレージ210は、テラバイト又はペタバイトのデータを格納できるデバイスを備えた中央リポジトリを含むものであってもよく、及び/又は、分散ストレージシステム(例えば、インターネット相互接続場所でコンテンツをミラーリング又はキャッシュして、特定の領域内のミラーリングされたコンテンツへのより高速なアクセスを提供する機器)を含むものであってもよい。ストレージ210はまた、他の任意の適切な方法で構成されるものであってもよい。
【0034】
図示されるように、ストレージ210は、とりわけ、コンテンツ212、ユーザデータ214、及び/又はログデータ216を格納するものであってもよい。コンテンツ212は、テレビ番組、映画、ビデオゲーム、ユーザ作成コンテンツ、及び/又は他の任意の適切な種類又は形式のコンテンツを含むものであってもよい。ユーザデータ214は、個人識別情報(PII)、支払い情報、好みの設定、言語及びアクセシビリティの設定、及び/又は特定のユーザ又はコンテンツプレーヤに関連する他の任意の情報を含むものであってもよい。ログデータ216は、閲覧履歴情報、ネットワークスループット情報、及び/又は配信インフラストラクチャ110へのユーザの接続又は相互作用に関連する他の任意のメトリックを含むものであってもよい。
【0035】
サービス220は、パーソナライズサービス222、エンコーディングサービス224、及び/又はパッケージングサービス226を含むものであってもよい。パーソナライズサービス222は、推奨、コンテンツストリーム、及び/又は配信インフラストラクチャ110に関するユーザ体験の他の側面をパーソナライズするものであってもよい。エンコーディングサービス224は、以下でより詳細に説明するように、異なる符号化間でのリアルタイム切り替えを可能にする異なるビットレートでメディアを圧縮するものであってもよい。パッケージングサービス226は、ストリーミングのために、ネットワーク230などの配信ネットワークに符号化された動画を展開する前に、符号化された動画をパッケージ化するものであってもよい。
【0036】
ネットワーク230は、一般に、通信又はデータ転送を容易にすることができる任意の媒体又はアーキテクチャを表す。ネットワーク230は、無線及び/又は有線での接続を使用する通信又はデータ転送を容易にするものであってもよい。ネットワーク230の例としては、イントラネット、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、インターネット、電力線通信(PLC)、セルラーネットワーク(例えば、モバイル通信(GSM(登録商標))ネットワークのためのグローバルシステム)、これらの1つ又は複数の一部、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の任意の適切なネットワークを含むものであってもよいが、これらに限定されない。例えば、
図2に示されるように、ネットワーク230は、インターネットバックボーン232、インターネットサービスプロバイダネットワーク234、及び/又はローカルネットワーク236を含むものであってもよい。以下でより詳細に論じられるように、これらのネットワークセグメントの1つ又は複数内の帯域幅制限及びボトルネックは、ビデオ及び/又はオーディオのビットレート調整のきっかけとなるものであってもよい。
【0037】
図3は、
図1のコンテンツプレーヤ120の好ましい実装のブロック図である。コンテンツプレーヤ120は、一般に、コンピュータで実行可能命令を読み取ることができる任意の種類又は形式のコンピューティングデバイスを表す。コンテンツプレーヤ120は、ラップトップ、タブレット、デスクトップ、サーバー、携帯電話、マルチメディアプレーヤ、組み込みシステム、ウェアラブルデバイス(例えば、スマートウォッチ、スマートグラスなど)、スマートビークル、ゲームコンソール、スマートアプライアンスなどのモノのインターネット(IоT)デバイス、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の任意の適切なコンピューティングデバイスを含むものであってもよいが、これらに限定されない。
【0038】
図3に示されるように、プロセッサ122及びメモリ124に加えて、コンテンツプレーヤ120は、通信インフラストラクチャ302、及びネットワーク接続324に結合した通信インタフェース322を含むものであってもよい。コンテンツプレーヤ120はまた、グラフィックデバイス328に結合したグラフィックインタフェース326、入力デバイス336に結合した入力インタフェース334、及びストレージデバイス340に結合したストレージインタフェース338を含むものであってもよい。
【0039】
通信インフラストラクチャ302は、一般に、コンピューティングデバイスの1つ又は複数のコンポーネント間の通信を容易にすることができる任意の種類又は形態のインフラストラクチャを表す。通信インフラストラクチャ302の例としては、任意の種類又は形式の通信バス(例えば、周辺機器相互接続(PCI)バス、PCIエクスプレス(PCIe)バス、メモリバス、フロントサイドバス、インテグレーテッドドライブエレクトロニクス(IDE)バス、制御バス又はレジスタバス、ホストバスなど)が含まれるが、これらに限定されない。
【0040】
前述のように、メモリ124は、一般に、データ及び/又は他のコンピュータ可読命令を格納することができる任意の種類又は形態の揮発性又は不揮発性ストレージデバイス又は媒体を表す。いくつかの例では、メモリ124は、プロセッサ122による実行のためにオペレーティングシステム308を格納及び/又は搭載するものであってもよい。一例としては、オペレーティングシステム308は、コンピュータハードウェア及びソフトウェアリのソースを管理し、及び/又はコンテンツプレーヤ120上のコンピュータプログラム及び/又はアプリケーションに共通のサービスを提供するソフトウェアを含み、及び/又は表すものであってもよい。
【0041】
オペレーティングシステム308は、ハードウェアコンポーネント(例えば、グラフィックインタフェース326、オーディオインタフェース330、入力インタフェース334、及び/又はストレージインタフェース338)の管理などの様々なシステム管理機能を実行するものであってもよい。オペレーティングシステム308はまた、再生アプリケーション310のためのプロセス及びメモリ管理モデルを提供するものであってもよい。再生アプリケーション310のモジュールは、例えば、コンテンツバッファ312、オーディオデコーダ318、及びビデオデコーダ320を含んでいてもよい。
【0042】
再生アプリケーション310は、通信インタフェース322を介してデジタルコンテンツを検索し、グラフィックインタフェース326を介して前記デジタルコンテンツを再生するように構成するものであってもよい。グラフィックインタフェース326は、レンダリングされたビデオ信号をグラフィックデバイス328に送信するものであってもよい。通常動作時には、特定のタイトル又は特定のコンテンツを再生するためにユーザからのリクエストを受付けるものであってもよい。次に、再生アプリケーション310は、前記リクエストされたタイトルに関連付けられた1つ又は複数の符号化されたビデオ及びオーディオストリームを特定するものであってもよい。再生アプリケーション310が、前記リクエストされたタイトルに関連付けられた前記符号化されたストリームを見つけた後、再生アプリケーション310は、配信インフラストラクチャ110から、要求されたタイトルに関連付けられた符号化された各ストリームに関連付けられたシーケンスヘッダインデックスをダウンロードするものであってもよい。符号化されたコンテンツに関連付けられたシーケンスヘッダインデックスは、前記符号化されたコンテンツに含まれる符号化されたシーケンスのデータに関連する情報を含むものであってもよい。
【0043】
一実施形態では、再生アプリケーション310は、再生のための起動時間を最小化するために、オーディオ及び/又はビデオの最低再生ビットレートに符号化されたシーケンスデータをダウンロードすることによって、リクエストされたタイトルに関連するコンテンツのダウンロードを開始するものであってもよい。次に、リクエストされたデジタルコンテンツファイルは、先入れ先出しキューとして機能するように構成され得るコンテンツバッファ312にダウンロードされるものであってもよい。一実施形態では、ダウンロードされたデータの各ユニットは、ビデオデータのユニット又はオーディオデータのユニットを含むものであってもよい。リクエストされたデジタルコンテンツファイルに関連付けられたビデオデータのユニットがコンテンツプレーヤ120にダウンロードされると、前記ビデオデータのユニットはコンテンツバッファ312に送り出されるものであってもよい。同様に、リクエストされたデジタルコンテンツファイルに関連付けられたオーディオデータのユニットがコンテンツプレーヤ120にダウンロードされると、前記オーディオデータのユニットはコンテンツバッファ312に送り出されるものであってもよい。一実施形態では、前記ビデオデータのユニットは、コンテンツバッファ312内のビデオバッファ316に格納されるものであってもよく、前記オーディオデータのユニットは、コンテンツバッファ312内のオーディオバッファ314に格納されるものであってもよい。
【0044】
ビデオデコーダ320は、ビデオバッファ316からビデオデータのユニットを読み取るものであってもよく、再生時間の継続時間において固定スパンに対応するビデオフレームのシーケンスで前記ビデオデータのユニットを出力するものであってもよい。ビデオバッファ316からビデオデータのユニットを読み取ることで、ビデオバッファ316からビデオデータのユニットを効果的にデキューするものであってもよい。次に、前記ビデオフレームのシーケンスは、グラフィックインタフェース326によってレンダリングされ、グラフィックデバイス328に送信されて、ユーザに表示されるものであってもよい。
【0045】
オーディオデコーダ318は、オーディオバッファ314からオーディオデータのユニットを読み取り、前記オーディオデータのユニットを、一般に、デコードされたビデオフレームのシーケンスと時間的に同期する、オーディオサンプルのシーケンスとして出力するものであってもよい。一実施形態では、前記オーディオサンプルのシーケンスは、前記オーディオサンプルのシーケンスを電気オーディオ信号に変換することができるオーディオインタフェース330に送信するものであってもよい。次に、前記電気オーディオ信号は、オーディオデバイス332のスピーカーに送信されて、これによって、音響出力を生成するものであってもよい。
【0046】
配信インフラストラクチャ110の帯域幅が制限され、及び/又は可変である状況では、再生アプリケーション310は、様々な要因(例えば、シーンの複雑度、オーディオの複雑度、ネットワーク帯域幅、デバイス機能など)に基づいて、異なるビットレートを有するビデオ符号化からビデオデータ及び/又はオーディオデータの連続した部分をダウンロード及びバッファリングするものであってもよい。いくつかの実施形態では、ビデオの再生品質は、オーディオの再生品質よりも優先されるものであってもよい。オーディオ再生及びビデオ再生の品質はまた、互いにバランスが取られるものであってもよく、いくつかの実施形態では、オーディオの再生品質は、ビデオの再生品質よりも優先されるものであってもよい。
【0047】
グラフィックインタフェース326は、ビデオデータのフレームを生成し、前記ビデオデータのフレームをグラフィックデバイス328に送信するように構成されるものであってもよい。一実施形態では、グラフィックインタフェース326は、プロセッサ122とともに、集積回路の一部として含まれるものであってもよい。あるいは、グラフィックインタフェース326は、プロセッサ122を含むチップセットとは異なる(すなわち、内部に統合されていない)ハードウェアアクセラレータとして構成されるものであってもよい。
【0048】
グラフィックインタフェース326は、一般に、グラフィックデバイス328上に表示するために画像を転送するように構成された任意の種類又は形態のデバイスを表すものであってもよい。例えば、グラフィックデバイス328は、液晶ディスプレイ(LCD)技術、陰極線技術、及び発光ダイオード(LED)ディスプレイ技術(有機又は無機)を使用して製造されるものであってもよい。いくつかの実施形態では、グラフィックデバイス328はまた、仮想現実ディスプレイ及び/又は拡張現実ディスプレイを含むものであってもよい。グラフィックデバイス328は、表示用の画像を生成するための任意の技術的実行可能な手段を含むものであってもよい。言い換えれば、グラフィックデバイス328は、一般に、グラフィックインタフェース326によって転送された情報を視覚的に表示することができる任意の種類又は形態のデバイスを表すものであってもよい。
【0049】
図3に示されるように、コンテンツプレーヤ120はまた、入力インタフェース334を介して通信インフラストラクチャ302に結合された少なくとも1つの入力デバイス336を含むものであってもよい。入力デバイス336は、一般に、コンピュータ又は人間が生成した入力をコンテンツプレーヤ120に提供することができる任意の種類又は形式のコンピューティングデバイスを表すのであってもよい。入力デバイス336の例としては、キーボード、ポインティングデバイス、音声認識デバイス、タッチスクリーン、ウェアラブルデバイス(例えば、グローブ、時計など)、コントローラ、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の任意の種類又は形式の電子入力メカニズムを含むものであってもよいが、これらに限定されない。
【0050】
コンテンツプレーヤ120はまた、ストレージインタフェース338を介して通信インフラストラクチャ302に結合されたストレージデバイス340を含むものであってもよい。ストレージデバイス340は、一般に、データ及び/又は他のコンピュータ可読命令を記憶することができる任意の種類又は形態のストレージデバイス又は媒体を表すものであってもよい。例えば、ストレージデバイス340は、磁気ディスクドライブ、ソリッドステートドライブ、光ディスクドライブ、フラッシュドライブ又は同種のものであってもよい。ストレージインタフェース338は、一般に、ストレージデバイス340とコンテンツプレーヤ120の他のコンポーネントとの間でデータを転送するための任意の種類又は形態のインタフェース又はデバイスを表すものであってもよい。
【0051】
他の多くのデバイス又はサブシステムが、コンテンツプレーヤ120に含まれるか、又は接続されるものであってもよい。逆に、
図3に示されるコンポーネント及びデバイスのうちの1つ又は複数が、本明細書に記載及び/又は図示された実施形態を実施するために必ずしも存在する必要はない。上記で参照されたデバイス及びサブシステムはまた、
図3に示されるものとは異なる方法で相互接続されるものであってもよい。コンテンツプレーヤ120はまた、任意の数のソフトウェア、ファームウェア、及び/又はハードウェアの構成を用いるものであってもよい。例えば、本明細書に開示される例示的な実施形態の1つ又は複数は、コンピュータ可読媒体上でコンピュータプログラム(コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ可読命令、又はコンピュータ制御ロジックとも呼ばれる)として符号化されるものであってもよい。本明細書で使用される「コンピュータ可読媒体」という用語は、コンピュータ可読命令を格納又は持ち運ぶことができる任意の形態のデバイス、キャリア、又は媒体を指すものであってもよい。コンピュータ可読媒体の例としては、キャリア波などの透過型媒体、及び磁気記憶媒体(例えば、ハードディスクドライブ、テープドライブなど)、光学式記憶媒体(例えば、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、及びブルーレイディスク)、電子記憶媒体(例えば、ソリッドステートドライブ及びフラッシュメディア)、及びその他のデジタル記憶システムなどの非一時的型媒体が含まれるが、これらに限定されない。
【0052】
コンピュータプログラムを含むコンピュータ可読媒体は、コンテンツプレーヤ120にロードされるものであってもよい。コンピュータ可読媒体に記憶されたコンピュータプログラムの全部又は一部は、次いで、メモリ124及び/又はストレージデバイス340に記憶されるものであってもよい。プロセッサ122により実行されると、メモリ124にロードされたコンピュータプログラムは、プロセッサ122に、本明細書で説明及び/又は図示された例示的な実施形態の1つ又は複数の機能を実行及び/又は実行するための手段とさせることができるものであってもよい。追加的又は代替的に、本明細書に記載及び/又は図示された例示的な実施形態の1つ又は複数は、ファームウェア及び/又はハードウェアに実装されるものであってもよい。例えば、コンテンツプレーヤ120は、本明細書に開示される例示的な実施形態のうちの1つ又は複数を実装するように適合された特定用途向け集積回路(ASIC)として構成されるものであってもよい。
【0053】
図4は、コンピュータシステム401を含むコンピューティング環境400を示している。コンピュータシステム401は、ローカルコンピュータシステム又は分散型(例えば、クラウド)コンピュータシステムを含む実質的に任意の種類のコンピュータシステムであってもよい。コンピュータシステム401は、少なくとも1つのプロセッサ402及び少なくともいくつかのシステムメモリ403を含む。コンピュータシステム401はまた、様々な異なる機能を実行するためのプログラムモジュールを含む。前記プログラムモジュールは、ハードウェアベース、ソフトウェアベース、又はハードウェアとソフトウェアの組み合わせを含む。各プログラムモジュールは、コンピューティングハードウェア及び/又はソフトウェアを使用して、以下に説明するものを含めた特定の機能を実行する。
【0054】
例えば、通信モジュール404は、他のコンピュータシステムと通信する。通信モジュール404は、他のコンピュータシステムとの間でデータを受信及び/又は送信する有線又は無線通信手段を含む。これらの通信手段は、例えば、ハードウェアベースの受信機405、ハードウェアベースの送信機406、又はデータの受信と送信の両方が可能なハードウェアベースの複合トランシーバを含むハードウェア無線機を含むものであってもよい。前記無線機は、WIFI無線機、セルラー無線機、ブルートゥース(登録商標)無線機、全地球測位システム(GPS)無線機、又はその他の種類の無線機であってもよい。通信モジュール404は、データベース、モバイルコンピューティングデバイス(携帯電話又はタブレットなど)、組み込み型又は他の種類のコンピューティングシステムと相互作用する。
【0055】
コンピュータシステム401はまた、ビデオコンテンツアクセスモジュール409を含む。ビデオコンテンツアクセスモジュール409は、コンテンツソースからビデオコンテンツ407を受信する。前記ビデオコンテンツソースは、ビデオ(例えば、映画又はテレビ番組)の制作者、ビデオ(例えば、ストリーミングビデオコンテンツプロバイダー)の配信者、又はビデオコンテンツを電子デバイスに提供する他の主体であってもよい。上記のように、コンピュータシステム401は、セットトップボックス、携帯電話、ラップトップ、PC、又はビデオストリーミングクライアントアプリケーションを含むソフトウェアアプリケーションを実行する他のコンピュータシステムを含む任意の種類のコンピュータシステムであってもよい。これらのアプリケーションの少なくとも1つは、ビデオコンテンツ407を受信し、そのビデオコンテンツをディスプレイ(例えば、ディスプレイ420)に提示する。
【0056】
ビデオコンテンツ407は、指定されたフレームレートで符号化される。フレームレートは、24fps、25fps、30fps、又はその他のフレームレートであってもよい。ビデオコンテンツアクセスモジュール409は、このビデオコンテンツ407にアクセスし、コンピュータシステム401での後続の動作のためにビデオコンテンツを準備する。ビデオコンテンツ407を受信する前又は後に、リフレッシュレート決定モジュール410は、電子ディスプレイ420がコンテンツを更新するように設定されるレートを決定する。例えば、ディスプレイ420は、50Hz、60Hz、100Hz、120Hz、又は他の何らかのリフレッシュレートで提示するためにコンテンツをリフレッシュするものであってもよい。そのため、ディスプレイは、特定のビデオフレームを1秒間に50回、60回、100回、又は120回再描画又は再表現する。上述のように、ディスプレイのリフレッシュレートは世界中で異なる。最適な視聴体験のために、ディスプレイ420のリフレッシュレート421は、ビデオコンテンツ407の符号化されたフレームレート408と同期され、その結果、ディスプレイに表示されるビデオフレームは安定したものとなる。つまり、ビデオフレームは、視聴者が気付かない方法で複製される。
【0057】
この複製を完了するために、時間間隔決定モジュール412は、ビデオコンテンツの時間間隔413を識別又は特定する。少なくともいくつかの実施形態では、この時間間隔413は1秒より長く、したがって、1秒の時間間隔のみに着目する従来のシステムとは対照的に、フレームレート変換が適用される前記時間間隔は、2秒、3秒、又はそれ以上をカバーする。フレームレート変換モジュール414は、ビデオコンテンツのフレームレート408及びディスプレイのリフレッシュレート421に基づいてフレームレート変換を実行する。
【0058】
フレームレート変換プロセスの一部として、フレームレート変換モジュール414は、ビデオコンテンツの比較的長い間隔(例えば3秒)に着目し、その時間間隔の元のビデオフレーム416Aに続けて再生するための、複製フレーム417の第1のシーケンスを生成し、また、その時間間隔の元のビデオフレーム416Bに続けて再生するための、複製フレーム418の第2のシーケンスも生成する。次に、この時間間隔413は、その元のフレーム及び複製フレームのそれぞれのシーケンスとともに、ディスプレイ420上で再生される。しかしながら、ビデオコンテンツ407の前記時間間隔の特定の部分は、異なる速度で再生される。再生速度調整モジュール415は、視聴者の目にシームレスなビデオ再生を生成するために、元のフレーム及び/又は複製フレームの様々なシーケンスの再生速度を増減する。これらの概念は、以下の
図5中の方法500に関してさらに説明される。
【0059】
図5は、ビデオのフレームレートを電子ディスプレイのリフレッシュレートと整合させるための好ましいコンピュータ実行方法500のフロー図である。
図5に示されるステップは、
図1~4に示されるシステムを含む、任意の適切なコンピュータ実行可能コード及び/又はコンピューティングシステムによって実行されるものであってもよい。一例では、
図5に示されるステップのそれぞれは、
図5は、その構造が複数のサブステップを含み、及び/又は複数のサブステップによって表されるアルゴリズムを表すものであってもよく、その例は、以下により詳細に提供される。
【0060】
図5に示されるように、ステップ510において、本明細書に記載されるシステム又はモジュールの1つ又は複数は、特定されたフレームレートで符号化されるビデオコンテンツの一部にアクセスする。例えば、
図4のモジュール409にアクセスするビデオコンテンツは、フレームレート408で符号化されたビデオコンテンツ407にアクセスする。いくつかの例では、前記フレームレートは24fpsである。ステップ520で、コンピュータシステム401のリフレッシュレート決定モジュール410は、ビデオコンテンツが提示される電子ディスプレイ420のリフレッシュレートを決定する。いくつかの例では、ディスプレイ420のリフレッシュレート421は50Hzであり、他の例では、リフレッシュレートは60Hzである。時間間隔決定モジュール412は、ステップ530で、フレームレート変換を適用する時間間隔413を決定する。いくつかの例では、この時間間隔は3秒である。したがって、この例では、フレームレート変換が3秒のビデオコンテンツにわたって適用されて、ビデオコンテンツ407のフレームレート408を電子ディスプレイ420のリフレッシュレート421と同期させる。
【0061】
ステップ540において、フレームレート変換モジュール414は、時間間隔413にわたってフレームレート変換を実行し、ビデオコンテンツの時間間隔を電子ディスプレイ420に提示する。このフレームレート変換及び前記電子ディスプレイ420での提示のプロセスは、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにすることを含む。ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度もまた、前記特定された間隔の前記第2部分が、元のビデオフレームと複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるように調整される。
【0062】
例えば、
図6に示すように、時間間隔601(
図4の時間間隔413と同じであっても異なっていてもよい)は、異なる部分に分割される。2つより多い又は少ない数の部分が使用されるが、
図6の実施形態は2つの部分を含むものである。
図6中の点線は、時間間隔601が、ビデオコンテンツの開始部、中間部、又は終了部を含む任意の箇所から選択されてよいことを示す。場合によっては、時間間隔601は、ディスプレイ420の複数のリフレッシュにまたがり、また場合によっては、時間間隔601は、ディスプレイ420の単一のリフレッシュにまたがる。
【0063】
時間間隔601の第1部分602は、元のビデオフレームのシーケンス603A及び複製フレームのシーケンス604を含む。時間間隔601の第2部分606は、元のビデオフレームのシーケンス603B及び複製フレームの異なるシーケンス605を含む。時間間隔の第1部分及び第2部分は、50/50、60/40、70/30、80/20、90/10、又はその他の比率を含む、実質的に任意の比率に分割されていてよい。したがって、第1部分602は、第2部分606よりも時間間隔が多い場合や少ない場合があってもよい。各部分は、元のフレーム及び/又は複製フレームを含む。これらの元のフレーム及び複製フレームの再生速度は、再生速度調整モジュール415によって調整可能である。
【0064】
少なくともいくつかの実施形態では、前記元のフレームの再生速度又は前記第1又は第2の複製604/605の再生速度は、特定の数のフレームが時間間隔601内にちょうど収まようにするために、増加又は減少されこともある。例えば、
図4のビデオコンテンツ407が24fpsのフレームレート408を有する場合、時間間隔601は、24枚の元のフレーム、複製の前記第1シーケンス604中の24枚の複製フレーム、及び複製の第2シーケンス605中の2枚の複製フレームを含むこともできる。他の実施形態では、前記時間間隔601は、22枚の元のフレーム、複製の第1シーケンス604中の22枚の複製フレーム、及び複製の第2シーケンス605中の6枚の複製フレームを含むこともできる。これらの元のフレーム及び複製フレームの再生速度は、ビデオコンテンツがユーザに対してスムーズに再生されるようにするために、増加又は減少されることもある。この再生速度の増加又は減少は、オーディオ速度を調整せずに行われてもよい。
【0065】
特定の制限を超えると、オーディオの再生速度を調整することなくビデオコンテンツの再生速度を調整することが、ユーザに音声が伝わる前に話している場面が見えたり、口が動いていないのに会話が聞こえたりするといった、顕著なA/V同期の問題を導く。ただし、特定の制限内(例えば-125msから+45msの間)では、オーディオとビデオは完全に整合が取れていなくても同期していると認識される。ビデオコンテンツは通常、プレゼンテーションタイムスタンプ(PTS)を用いて再生される。いくつかの実施形態では、このプレゼンテーションタイムスタンプは、ビデオコンテンツの再生速度を増減するために変更される。他の実施形態では、参照用テーブルは前記PTSと組み合わせて実装され、参照用テーブルは、PTSから時間値を加算又は減算し、ビデオコンテンツを再生するときに前記変更された値を使用する。したがって、前記ディスプレイのリフレッシュレートに整合するために複製フレームが作成される時間間隔を長くし、特定の制限内でビデオ再生を高速化又は低速化することにより、本明細書の実施形態は、前記時間間隔にわたって、偶数の数の複製フレームを追加することを可能にする。これにより、ビデオ再生の滑らかさが大幅に向上し、他のフレームレート変換解決法によって導かれるジャダーが減少又は排除される。
【0066】
上記のように、そして
図7に示されるように、ビデオコンテンツのソースフレームレート701は、通常、24fps(又は24Hz)、24Hz、30Hz、50Hz、又は60Hzである。
図4のフレームレート変換モジュール414は、フレームレート変換702を適用して、ディスプレイのリフレッシュレート703と整合させる。
図8に示されるように、いくつかのビデオコンテンツのフレームレートのフレームレート変換は、より滑らかに見えるものであってもよく、視聴者に気付かれるアーティファクトがより少ないものであってもよい。例えば、事例1(列801)の場合、フレームソースレートは50Hzであり、60Hzのディスプレイに変換される(列802)。元のフレームと複製フレームの比率は1.2(列803)、又は50枚の元のフレームと10枚の複製(1次)フレーム(列804)となる。事例2の場合、フレームソースレートは30Hzであり、比率1.67で50Hzに変換され、元のフレームが30枚、1次複製フレームが20枚の、合計50フレームとなる。事例5の場合、フレームソースレートは24Hzであり、比率2.5で60Hzに変換され、元のフレームが24枚、1次複製フレームが24枚、2次複製フレームが12枚(列805)の、合計60フレームとなる。
【0067】
図8の事例番号1~6のほとんどは再生をスムーズに行い、視聴者は画像中の深刻なジャダーには気付かない。しかし、フレームレート変換が24Hzから25Hz又は24Hzから50Hzとなる事例番号7~9では、比率として1.042と2.083が発生する(列803)。このような比率は、1次複製された単一のフレームのみが表示される場合(例えば事例番号7)、又は1次複製された24枚のフレームが、2次複製された2枚のフレーム(列805)とともに表示される場合(例えば事例番号8)、又は1次複製された24枚のフレームが、2次複製された1枚のフレーム及び3次複製された1枚のフレーム(列806)とともに表示される場合(事例番号9)を導く。高次の複製フレームは、フレームの複製数が少なく、フレームの表示間隔が長くなることを意味するため、通常はあまり望ましくない。
【0068】
例えば、1次フレームは、自分自身を1回複製するフレームである。2次フレームは自分自身を2回複製するフレームであり、3次フレームは自分自身を3回複製するフレームである。フレームの次数が大きいことは、元のフレームが複製される回数が多くなり、そのため、滑らかさが低下し、ジャダーが発生しやすくなることを示す。したがって、本明細書に記載の実施形態では、システムは、再生時の滑らかさを高めるために、固定された複製間隔を生成する。複製フレームは、ジャダーやその他の再生の問題を回避するために、最小数(例えば、2枚の複製、2次の次数)未満に保たれる。
【0069】
図9は、複製フレームの例に関する実施形態を示している。3枚の元のフレーム901は、3:2のプルダウンレートで902に複製される。
図10Aはさらに、この3:2プルダウンレートを示している。この例では、フレーム1000Aが24fpsから60fpsに変換されている。フレームは、1秒の時間ウィンドウ1001Aにわたって間隔を置いて配置される。各フレームは1回又は2回複製される。したがって、元のフレームに追加すると、元のフレーム+単一の複製=2となり、また元のフレーム+二重の複製=3となる。したがって、
図9に示される3:2のパターンは、1秒の長さにわたって繰り返される。元のフレーム+単一の複製のそれぞれは33ms(1002A)で表示され、元のフレーム+二重複製のそれぞれは48msで表示される。これらの時間は、テレビ1005Aの60Hzのリフレッシュレートに起因する2つ又は3つの16msセグメント1004Aと一致する。3:2:2や3:2:2:2など、他の複製パターンや間隔を使用するものであってもよい。一部のパターンは50Hzで動作するディスプレイに適しているが、他のパターンは60Hzで動作するディスプレイに適している。
【0070】
図10Bは、フレーム1000Bが24fpsから50fpsに変換される代替例を示している。フレームは、1秒の時間ウィンドウ1001Bにわたって間隔を置いて配置され、ここで、各フレームは1回又は2回複製される。元のフレーム+単一の複製のそれぞれは40ms(1002B)で表示され、元のフレーム+二重複製は60msで表示される。これらの時間は、テレビ1005Bの50Hzのリフレッシュレートに起因する2つ又は3つの20msセグメント1004Bと一致する。他の複製パターン又は間隔も、上記のように使用されるものであってもよい。
【0071】
図10A及び10Bに示される例が1秒のコンテンツを示す一方で、本明細書の実施形態では、フレームの時分割が異なる時間間隔にわたって分散され得ることが認識される。例えば、
図10Cに示すように、24fpsで符号化された映画に対して3秒の時間間隔が選択された場合、その映画は、3秒の時間間隔にわたって72フレームを有することになる。これら72フレームは、3秒間で150の表示サイクルを持つ50Hzのディスプレイに提示されるものであってもよい。これらの72フレームは、
図4のフレームレート変換モジュール414によって、元のフレーム416A及び複製フレーム417の第1シーケンス、並びに対応する独自の異なるセットである複製フレーム418を持つ他の元のフレーム416Bと共に、一定の速度で変換されるものであってもよい。コンテンツ1001Cの1秒目は、(フレームと複製)毎に40ミリ秒の安定したスライスで再生される元のフレームと複製フレームを含む。コンテンツの2秒目も、フレーム毎に40ミリ秒の安定したスライスで再生される元のフレームと複製フレームを含む。ただし、3秒ウィンドウ内のコンテンツの3秒目は、(元のフレームと2つの複製フレーム)が再生される複数の60ミリ秒のスライスを含む。以下の
図11Bに記載されているように、これらの6つの60ミリ秒のスライスは、オーディオ及びビデオを再整合するために異なる速度で変調されるものであってもよい。
【0072】
例えば、
図11Aは、前記ウィンドウの時間間隔が3秒であるフレームレート変換(FRC)ウィンドウ1100を示している。この3秒の時間ウィンドウは、それぞれ1秒ずつの3つの異なるセグメント(0から1、1から2、及び2から3)に分割される。この例では、
図10Aと同様に、ビデオコンテンツの符号化されたフレームレートは24fpsである。そのため、72フレームが3秒の時間ウィンドウで表示される。一定の速度でフレームを再生する従来の再生アプリケーション又はセットトップボックスとは対照的に、本明細書の実施形態は、コンテンツの最初の1秒で最初の24フレームを再生することができる。したがって、チャート1100に示すように、24個の元のフレームが最初の1秒間に、0から1まで、24個の1次複製フレームとともに表示される。電子ディスプレイの各フレームがこれに対応する元のフレーム又は1次複製フレームを持つため、この1:1の一致は、50Hzのディスプレイでスムーズな再生体験を提供する。これらのフレームは、電子ディスプレイの0.96秒の持続時間で表示される。
【0073】
この例の説明を続けると、第2の24個の元のフレームが、24個の1次複製フレームとともに、フレームレート変換モジュール(例えば、
図4の414)によって再びディスプレイに提供される。これらの48フレームは、コンテンツの0秒から1秒までに相当する先の48フレームとともに、より高速で再生され、24fpsで符号化されたビデオコンテンツで0.96秒の持続時間に48フレームの表示を許容する。
図4の再生速度調整モジュール415は、再生速度を上げるように調整して、2秒のコンテンツのこれら96フレームを1.92秒で再生できるようにし、50Hzのディスプレイと正確に同期する。ただし、ビデオの再生を高速化しても、必ずしもオーディオの再生が高速化されるとは限らず、視聴者がこれに気付くことがある。これに対して、ビデオ速度の増加は、オーディオに関しては前述の範囲内(例えば、-125msから+45msの範囲内)に保たれる。
【0074】
図11Bは、ビデオの再生速度が増加したときに、オーディオとビデオがどのように分離されるか(V-A)を示している。例えば、時間0で、A/V同期1151が発生する。この時点で、オーディオとビデオは完全に同期している。3秒の時間ウィンドウの最初の2秒間(例えば、1153で表される期間)にわたり、他の2つのA/V同期が発生する。ただし、元のフレームと重複フレームの表示を表す線1152は、これらのフレームの表示がオーディオとゆっくりと同期ずれしていることを示している(例えば、1秒で40ミリ秒の同期ずれや、2秒で80ミリ秒の同期ずれ)。理想的には、A/V同期は新しいフレームごとに0地点で発生する。しかしながら、
図11Aに示されるように、3秒のウィンドウの3秒目は、24個の元のフレーム及び24個の1次複製フレーム、並びに2.08秒の持続時間で示される6個の2次フレームのみを示す。これらのフレームは、
図11Bの期間1154で示されるように、よりゆっくりと再生される。再生を遅くすると、オーディオとビデオの同期が徐々に戻り、3秒のウィンドウの終わりまでに、A/V同期が0地点で再び発生する。この3秒の時間ウィンドウ全体で150フレームが表示され(24+24+24+24+24+24+6)、これは50Hzのディスプレイに提示される150サイクルと正確に同期する。
【0075】
したがって、
図4のフレームレート変換モジュール415の再生速度調整モジュール415は、特定の間隔にわたって一部のビデオコンテンツの再生速度を調整及び増加させ、同じ間隔にわたって他のビデオコンテンツの再生速度を低下させることができる。そのため、前記間隔の終わりまでに、オーディオとビデオは同期状態に戻る。このプロセス全体を通して、再生速度が特定の最大速度又は減最遅速度の範囲内で調整されるように、特定の制限が確立及び維持され得る。これらの最遅速度又は最大速度の境界内を維持することにより、視聴しているユーザはビデオ速度の変化に気付くことは無い。むしろ、視聴者の目は単に画像を滑らかな動きとして補間することとなる。
【0076】
場合によっては、再生速度調整モジュール415がビデオコンテンツの一部の再生速度を調整するとき、前記調整モジュールは、ビデオコンテンツ及び複製フレームの間隔に関連するプレゼンテーションタイムスタンプ(PTS)を各順序で変更する。このような実施形態では、
図11Cのチャート1100Cに示されるように、ウィンドウの最後のセクション内の2次複製フレームが固定された間隔を持つことを可能にするために、そのシーケンスは24:24:24である。PTSは72フレームにわたって調整される。最初の48フレームでは、PTSが下方に調整され、再生が高速化される。次に、フレーム48の後、PTSが上方に調整され、再生速度が遅くなり、整合点に戻る。場合によっては、再生速度調整モジュール415は、各PTSのエントリーから時間を加算又は減算する参照用テーブルを作成し、次いで、ビデオコンテンツを再生するときに参照用テーブルを使用する。場合によっては、参照用テーブルに、前記電子ディスプレイでのビデオコンテンツの前記時間間隔の提示されている間に適用されるデルタ値が含まれる。デルタ値は、ビデオコンテンツの前記時間間隔内での各フレームのプレゼンテーションタイムスタンプを調整するために使用される。したがって、参照用テーブルは、ビデオコンテンツ1つの各間隔の再生速度を示すために使用されるデルタ値を格納するものであってもよい。
【0077】
図11A及び
図11Bの例示的な実施形態では、実質的に任意の長さの時間ウィンドウを使用することができ、任意の数の1次又は2次の複製を使用することができることが理解される。場合によっては、2次フレーム(又は重複フレームの2番目のシーケンス)には、少なくとも最小しきい値数の重複フレームが含まれる。この最小しきい値数は、実質的に任意の数であってよく、方針に応じて設定される。最小しきい値数は、例えば、符号化されたフレームレートが異なる場合、ディスプレイのリフレッシュレートが異なる場合、又は他の状況設定や好みに基づいて異なる場合があってもよい。
【0078】
場合によっては、特定のビデオコンテンツの再生速度は、提示されるビデオフレームの種類に基づいて調整される。例えば、一部のビデオコンテンツは、高速モーションビデオ又はその他の効果のために高速でエンコードされる場合があってもよい。時間ウィンドウの異なるセグメントの再生速度は、この種類のビデオコンテンツに対応するように調整することができる。場合によっては、1次複製フレームのみを含むビデオコンテンツの間隔が特定の再生速度で自動的に再生され、2次複製フレームを含むビデオコンテンツの間隔が異なる再生速度で自動的に再生される。したがって、ビデオコンテンツをディスプレイに再生するアプリケーション又はセットトップボックスは、特定の種類の重複フレームタが検出されたときに、再生速度を自動的に調整するものであってもよい。
【0079】
図12は、ビデオコンテンツの時間間隔が、設定されたA/V同期境界内にあることを確認するためにテストされる実施形態を示す。例えば、
図12のチャート1200は、x軸に時間を示し、y軸にオーディオ/ビデオ同期の時間値を示している。このテストの実施形態では、y軸は、A/V同期が最大+35ミリ秒進んでいて、最大-165ミリ秒遅れている可能性があることを示している。ポイント1201で、A/V同期はしきい値に+35ms近いかそれを超えているため、この時点で同期され、元のビデオフレームをスキップして同期を0に近づける(ビデオは24フレーム毎秒にて、フレームあたり42ms進む)。ポイント1202及び1203では、A/V同期もそれぞれの最大しきい値に向かってドリフトする。これらの時点で、ビデオはより速く又はより遅く再生され、元のフレームを繰り返すことによって、オーディオとビデオを所望の同期レベル1204に再調整する(ビデオは24fpsにて、フレームあたり42ms遅れる)。ビデオコンテンツの一部のプレゼンテーションにわたり(例えば、
図4の407)、コンピュータシステム401は、各時間間隔又は特定の時間間隔の提示をテストして、A/V同期が指定された境界内にあることを確認するものであってもよい。使用された1次複製フレームの数、使用された2次又は3次複製フレームの数、オーディオとビデオ間の同期レベル、又はその他のメトリックを含む様々な品質メトリックが、ビデオコンテンツの再生に関して測定されるのであってもよい。これらのメトリックは、視聴者が、目立ったビデオのフリーズや高速モーション効果のない積極的な視聴体験を可能にするためのフィードバックとして使用されてもよい。
【0080】
いくつかの実施形態では、対応するシステムは、物理プロセッサ及び物理メモリを含む。物理メモリには、物理プロセッサによって実行されると、物理プロセッサに以下を行わせるコンピュータ実行可能命令が含まれる。特定のフレームレートで符号化されているビデオコンテンツの一部にアクセスし、ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートを決定し、ビデオコンテンツのフレームレートを電子ディスプレイのリフレッシュレートと同期させるためにフレームレート変換が適用されるビデオコンテンツの時間間隔を特定し、電子ディスプレイへのビデオコンテンツの特定された時間間隔を提示し、ここで、前記提示は、ビデオコンテンツの特定された時間間隔の最初の第1部分の再生速度の調整が含まれ、特定された間隔の第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの特定された時間間隔の後続部分である第2部分の再生速度を調整することで、特定された時間間隔の第2部分が、元のビデオフレームと複製フレームの異なるシーケンスである第2シーケンスを用いて再生されるようにする。
【0081】
対応する非一時的なコンピュータ可読媒体は、コンピューティングデバイスの少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスにビデオコンテンツの一部にアクセスさせるコンピュータ実行可能命令を含み、ビデオコンテンツは特定のフレームレートで符号化され、ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートが決定され、ビデオコンテンツのフレームレートを電子ディスプレイのリフレッシュレートと同期させるためにフレームレート変換が適用されるビデオコンテンツの時間間隔が特定され、電子ディスプレイへのビデオコンテンツの特定された時間間隔が提示される。前記提示は、ビデオコンテンツの特定された間隔の第1部分の再生速度を調整することで、特定された間隔の第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの特定された間隔の後続部分である第2部分の再生速度を調整することで、特定された間隔の第2部分が、元のビデオフレームと複製フレームの異なるシーケンスである第2シーケンスを用いて再生されるようにする。
【0082】
したがって、このようにして、ビデオコンテンツは、より長い長さの間隔に配分される。これらのより長い間隔により、元のフレームと複製フレームの異なるバリエーションを可能とする。さらに、再生速度をこれらの間隔で変化させることで、電子ディスプレイでの再生が全体にわたってスムーズで均一になる。本明細書に記載の実施形態は、実質的に任意のソース材料を任意のディスプレイフレームレートに変換するために、実質的にあらゆる国で使用することができる。そのため、これらの実装は、その国でどのようなフレームレートエンコーディングやディスプレイリフレッシュレートが使われているかに関係なく、どの市場のビデオストリーミングプロバイダによっても使用できる。
【0083】
実施例
1.特定のフレームレートで符号化されたビデオコンテンツの一部分にアクセスし、前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートを決定し、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔を特定し、前記電子ディスプレイに、ビデオコンテンツの前記特定された時間間隔を提示するコンピュータ実行方法であって、前記提示は、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにする、コンピュータ実行方法。
【0084】
2.前記複製フレームの異なるシーケンスである第2シーケンスは、少なくとも最小しきい値の数の複製フレームを含む、請求項1に記載のコンピュータ実行方法。
【0085】
3.ビデオコンテンツの前記特定された間隔の前記第1部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記第1部分の前記再生速度を上げることを含む、請求項1に記載のコンピュータ実行方法。
【0086】
4.ビデオコンテンツの前記特定された間隔の前記第2部分の前記再生速度を調整することは、ビデオコンテンツの前記特定された間隔の前記第2部分の前記再生速度を下げることを含む、請求項1に記載のコンピュータ実行方法。
【0087】
5.前記再生速度は、前記再生速度の特定された最大速度又は最遅速度の範囲内で調整される、請求項1に記載のコンピュータ実行方法。
【0088】
6.再生速度の調整は、前記ビデオコンテンツに関連付けられたプレゼンテーションタイムスタンプの変更を含む、請求項1に記載のコンピュータ実行方法。
【0089】
7.前記特定された時間間隔は1秒より長い、請求項1に記載のコンピュータ実行方法。
【0090】
8.前記特定された時間間隔は少なくとも3秒である、請求項1に記載のコンピュータ実行方法。
【0091】
9.前記再生速度は提示されているビデオフレームの種類に基づいて調整される、請求項1に記載のコンピュータ実行方法。
【0092】
10.1つ以上の1次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される、請求項9に記載のコンピュータ実行方法。
【0093】
11.1つ以上の2次複製フレームを含むビデオコンテンツの間隔は、特定された再生速度で自動的に再生される、請求項9に記載のコンピュータ実行方法。
【0094】
12.複数の前記複製フレームは特定された間隔で繰り返される、請求項1に記載のコンピュータ実行方法。
【0095】
13.少なくとも1つの物理プロセッサと、コンピュータ実行可能命令を含む物理メモリと、を備えるシステムであって、前記物理プロセッサによって実行されたとき、前記物理プロセッサに対して、特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスと、前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートの決定と、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定と、前記電子ディスプレイへの、ビデオコンテンツの前記特定された時間間隔の提示と、を行わせるシステムであって、前記提示は、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにするシステム。
【0096】
14.ビデオコンテンツの前記特定された間隔の各部分の前記再生速度は、参照用テーブルに格納される、請求項13に記載のシステム。
【0097】
15.ビデオコンテンツの前記特定された間隔は、前記参照用テーブルに示された再生情報に従って、前記電子ディスプレイで再生される、請求項14に記載のシステム。
【0098】
16.前記参照用テーブルには、ビデオコンテンツの前記特定された時間間隔が前記電子ディスプレイに提示されている間に適用されて、ビデオコンテンツの前記特定された時間間隔内での各フレームのプレゼンテーションタイムスタンプを調整する、1つ以上のデルタ値を含む、請求項15に記載のシステム。
【0099】
17.ビデオコンテンツの前記特定された時間間隔の前記電子ディスプレイでの提示をテストして、前記ビデオコンテンツの再生に関する1つ以上の特定の品質メトリックを検証することをさらに含む、請求項13に記載のシステム。
【0100】
18.前記ビデオコンテンツの前記フレームレートは毎秒24フレームで、前記電子ディスプレイの前記リフレッシュレートは50Hzである、請求項12に記載のシステム。
【0101】
19.前記ビデオコンテンツの前記フレームレートは毎秒24フレームで、前記電子ディスプレイの前記リフレッシュレートは60Hzである、請求項12に記載のシステム。
【0102】
20.一つ以上のコンピュータ実行可能命令を備える非一時的なコンピュータ可読媒体であって、コンピューティングデバイスの少なくとも1つのプロセッサによって実行されたときに、前記コンピューティングデバイスに対して、特定のフレームレートで符号化されたビデオコンテンツの一部分へのアクセスと、前記ビデオコンテンツが表示される電子ディスプレイのリフレッシュレートの決定と、前記ビデオコンテンツの前記フレームレートを前記電子ディスプレイの前記リフレッシュレートと同期させるためにフレームレート変換が適用される前記ビデオコンテンツの時間間隔の特定と、前記電子ディスプレイへの、ビデオコンテンツの前記特定された時間間隔の提示と、を実行させるシステムであって、前記提示は、ビデオコンテンツの前記特定された間隔の第1部分の再生速度を調整することで、前記特定された間隔の前記第1部分が、元のビデオフレームと複製フレームの第1シーケンスとを用いて再生されるようにし、ビデオコンテンツの前記特定された間隔の後続部分である第2部分の再生速度を調整することで、前記特定された間隔の前記第2部分が、前記元のビデオフレームと前記複製フレームの異なるシーケンスである第2シーケンスとを用いて再生されるようにする、非一時的なコンピュータ可読媒体。
【0103】
上記で詳述したように、本明細書で説明及び/又は図示されたコンピューティングデバイス及びシステムは、本明細書で説明されたモジュール内に含まれるものなど、コンピュータ可読命令を実行できる任意の種類又は形態のコンピューティングデバイス又はシステムを広く表す。それらの最も基本的な構成では、これらのコンピューティングデバイスはそれぞれ、少なくとも1つのメモリデバイス及び少なくとも1つの物理プロセッサを含む。
【0104】
いくつかの例では、「メモリデバイス」という用語は、一般に、データ及び/又はコンピュータ可読命令を格納することができる任意の種類又は形態の揮発性又は不揮発性ストレージデバイス又は媒体を指す。一例では、メモリデバイスは、本明細書で説明されるモジュールの1つ又は複数を格納、搭載、及び/又は保持することができる。メモリデバイスの例としては、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、フラッシュメモリ、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、光ディスクドライブ、キャッシュ、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の適切なメモリデバイス又はシステムが含まれるが、これらに限定されない。
【0105】
いくつかの例では、「物理プロセッサ」という用語は、一般に、コンピュータ可読命令を解釈及び/又は実行することができる任意の種類又は形態のハードウェア実装処理ユニットを指す。一例では、物理プロセッサは、上記のメモリデバイスに格納された1つ又は複数のモジュールへのアクセス及び/又は変更ができるものであってもよい。物理プロセッサの例としては、マイクロプロセッサ、マイクロコントローラ、中央処理装置(CPU)、ソフトコアプロセッサを実装するフィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、これらの1つ又は複数の一部、これらの1つ又は複数の変形物又は組み合わせ、及び/又は他の適切な物理プロセッサが含まれるが、これらに限定されない。
【0106】
別個の要素として示されているが、本明細書で説明及び/又は図示されているモジュールは、単一のモジュール又はアプリケーションの一部を表すものであってもよい。さらに、特定の実施形態では、これらのモジュールの1つ又は複数は、コンピューティングデバイスによって実行されると、コンピューティングデバイスに1つ又は複数のタスクを実行させることができる1つ又は複数のソフトウェアアプリケーション又はプログラムを表すものであってもよい。例えば、本明細書に記載及び/又は図示されたモジュールの1つ又は複数は、本明細書に記載及び/又は図示されたコンピューティングデバイス又はシステムの1つ又は複数で実行するように格納及び構成されたモジュールを表すものであってもよい。これらのモジュールの1つ又は複数は、1つ又は複数のタスクを実行するように構成された1つ又は複数の専用コンピュータの全部又は一部を表すものであってもよい。
【0107】
さらに、本明細書で説明される1つ又は複数のモジュールは、データ、物理デバイス、及び/又は物理デバイスの提示をある形式から別の形式に変換するものであってもよい。例えば、本明細書で詳述される1つ又は複数のモジュールは、変換されるデータを受信し、データを変換し、ビデオコンテンツがどのように提示されるかを決定するために変換の結果を出力し、ビデオコンテンツを提示するために変換の結果を使用し、変換の結果を保存して、ビデオコンテンツがどのように提示されたかを示すものであってもよい。追加的又は代替的に、本明細書にて詳述されるモジュールの1つ又は複数は、コンピューティングデバイス上で実行し、コンピューティングデバイス上でデータを格納し、及び/又はコンピューティングデバイスと相互作用することによって、プロセッサ、揮発性メモリ、不揮発性メモリ、及び/又は物理コンピューティングデバイスの他の部分を、ある形態から別の形態に変換するものであってもよい。
【0108】
いくつかの実施形態では、「コンピュータ可読媒体」という用語は、一般に、コンピュータ可読命令を格納又は持ち運ぶことができる任意の形態のデバイス、キャリア、又は媒体を指す。コンピュータ可読媒体の例としては、キャリア波などの透過型媒体、及び磁気記憶媒体(例えば、ハードディスクドライブ、テープドライブ、及びフロッピー(登録商標)ディスク)、光学式記憶媒体(例えば、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、及びブルーレイディスク)、電子記憶媒体(例えば、ソリッドステートドライブ及びフラッシュメディア)、及びその他の配信システムが含まれるが、これらに限定されない。
【0109】
本明細書に記載及び/又は図示されているプロセスパラメータ及びステップのシーケンスは、例としてのみ与えられており、必要に応じて変更することができる。例えば、本明細書に図示及び/又は記載されているステップは、特定の順序で示され、又は説明されているが、これらのステップは、必ずしも図示又は説明された順序で実行される必要はない。本明細書に記載及び/又は図示された様々な好ましい方法はまた、本明細書に記載又は図示されたステップの1つ又は複数を省略することができ、又は開示されたものに加えて追加のステップを含めることができる。
【0110】
前述の説明は、当業者が本明細書に開示される好ましい実施形態の様々な態様を最もよく利用できるようにするために提供されたものである。この好ましい説明は、網羅的であること、又は開示された正確な形式に限定されることを意図するものではない。本開示の精神及び範囲から逸脱することなく、多くの修正及び変形が可能である。本明細書に開示される実施形態は、すべての点で例示的であり、限定的ではないと見なされるべきである。本開示の範囲を決定する際には、添付の特許請求の範囲及びそれらの同等物が参照されるべきである。
【0111】
特に断りのない限り、本明細書及び特許請求の範囲で使用される「接続される」及び「結合される」(及びそれらの派生語)という用語は、直接及び間接の両方(すなわち、他の要素又は構成を介して)の接続を可能にするものとして解釈されるべきである。さらに、本明細書及び特許請求の範囲で使用される「a」又は「an」という用語は、「少なくとも1つ」を意味すると解釈されるべきである。そして、使いやすさのために、本明細書及び特許請求の範囲で使用される「含む」及び「持つ」(及びそれらの派生語)という用語は、「備える」という言葉と言い換えが可能であり、同じ意味を有する。
【国際調査報告】