以下は、コンテンツスロットのアスペクト比を調整するための技法、手法、方法、装置、およびシステムに関連する様々な概念およびそれらの実施形態の詳細な説明である。説明された概念は特定の実装形態の方法に限定されないので、上で紹介され、以下で詳細に議論される様々な概念は、多くの方法のいずれかで実装することができる。特定の実施形態および用途の例は、主に例示の目的で提供されている。
コンテンツ選択サーバは、クライアントデバイスからの要求に応答してクライアントデバイスにコンテンツアイテムを提供することができる。要求は、コンテンツスロットサイズを識別することができ、コンテンツ選択サーバは、コンテンツスロットの領域全体を占有する要求に応答して、提供する適切なコンテンツを選択するために、これを使用することができる。クライアントデバイスの表示画面の使用率を最適化し、表示画面の不必要に占有されていない領域を回避するために、既存のコンテンツ選択サーバは、コンテンツスロットサイズまたは対応するアスペクト比と一致しないコンテンツアイテムを除外することができ、これにより、コンテンツの要求に応答する際に選択できるコンテンツアイテムの在庫が減少する。あるいは、既存のコンテンツ選択サーバは、コンテンツスロットサイズまたはコンテンツスロットの対応するアスペクト比と一致しないコンテンツアイテムを提供することを選択することができ、この場合、コンテンツアイテムはコンテンツスロットの領域全体を占有せず、その結果、ユーザの没入感が低下し、空白(または、占有されていない領域)が提供される、その結果、表示画面におけるスペースが無駄になってしまう。場合によっては、コンテンツスロット全体を占有するようにコンテンツアイテムのサイズを調整するために、コンテンツ選択サーバがビデオ処理テクノロジーを実装することが可能であり得る。ただし、これらのビデオ処理技術は計算コストが高く、コンテンツアイテムの一部のデータが失われる可能性がある。
本ソリューションは、コンテンツ選択サーバにコンテンツアイテムのサイズおよびコンテンツスロットのサイズに基づいてコンテンツアイテムの選択を制限させる、またはコンテンツスロットに表示するために選択されたコンテンツアイテムの修正の代わりに、クライアントデバイスにコンテンツスロットのアスペクト比を調整させることによって、上記で識別された課題を解決する。本ソリューションは、選択されたコンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しない場合、コンテンツスロットのアスペクト比を調整することによって、要求に応答してサイズに関係なく任意のコンテンツアイテムを選択することを可能にする。
本開示によって、本開示のシステムおよび方法は、クライアントデバイスから送信されたコンテンツ要求において、コンテンツスロットに対応するパラメータを受信することができる。本明細書のシステムおよび方法は、候補コンテンツから選択されたコンテンツアイテムの表示方向を識別することと、クライアントデバイスから受信したパラメータに基づいてコンテンツスロットの表示方向を識別することと、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することとを行うことができる。次いで、本明細書のシステムおよび方法は、コンテンツアイテムをクライアントデバイスに送信することによって、コンテンツアイテムの表示方向に基づいて、コンテンツスロットの表示方向がコンテンツアイテムの表示方向と一致するように、コンテンツスロットのアスペクト比を調整するための命令を含むことができる。したがって、本明細書で説明するシステムおよび方法は、コンテンツアイテムを修正する必要なしに、またはコンテンツアイテムの表示方向とコンテンツスロットの表示方向との間を最初に一致させることを必要とせずに、コンテンツスロットを調整することによって、コンテンツアイテムがクライアントデバイスの画面のより多くを占有することを可能にする。したがって、コンテンツスロットのアスペクト比がコンテンツアイテムに合わせて調整されるため、クライアントデバイスの表示領域をより効率的に使用することができる。本開示により、本明細書で説明するシステムおよび方法は、クライアントデバイスにおける異なるコンテンツスロットに適合するように複数のサイズの同じコンテンツアイテムを記憶する必要がなくなるため、記憶する必要があるコンテンツアイテムがより少なくなることによってメモリリソース使用率を減らすことができる。このメモリリソース使用率の削減は、コンテンツスロットが、その逆ではなく、コンテンツアイテムに合わせて調整されているために実現される。このストレージの削減により、複数のサイズの同じコンテンツアイテムを記憶したり、コンテンツアイテムのより大規模でより複雑なデータベースを維持したりするためのサーバストレージ要件など、システムリソースが節約される。さらに、コンテンツプロバイダは、異なるサイズのコンテンツスロットに適合するように、複数のサイズの同じコンテンツアイテムを生成するために、計算リソースおよび他のリソースを費やす必要がなくなる。これにより、コンテンツ発行者およびコンテンツ選択サーバ、またはコンテンツアイテムを記憶する他のサーバから送信されるコンテンツアイテムの数が減少するため、ネットワークトラフィックを減らすことができる。さらに、クライアントデバイスは、利用可能なコンテンツに適さないコンテンツアイテムをレンダリングする際に時間とリソースを浪費する必要がないため、スロットにより適したコンテンツアイテムを要求および受信するために、追加のネットワークトラフィック、ならびに処理、メモリ、および電話通信オーバーヘッドなどのクライアントリソースが必要になる。
ここで図1を参照すると、1つまたは複数の実施形態による、クライアントデバイスにおいてコンテンツアイテムを表示するためのコンテンツスロットを調整するための例示的なシステム100のブロック図が示されている。システム100は、少なくとも1つのネットワーク110、1つまたは複数のクライアントデバイス120A~N(一般に、クライアントデバイス120と呼ばれることもある)、少なくとも1つのコンテンツ発行者130、少なくとも1つのコンテンツプロバイダ135、および少なくとも1つのデータ処理システム140を含むことができる。データ処理システム140は、少なくとも1つのコンテンツアイテムマネージャ150、少なくとも1つのコンテンツ要求受信機155、少なくとも1つのコンテンツアイテムセレクタ160、および少なくとも1つのコンテンツディスプレイマネージャ165を含むか、またはそれらに通信可能に結合することができる。データ処理システム140は、データベース170を含むか、またはそれに通信可能に結合することができ、データベース170は、1つまたは複数のコンテンツアイテム175A~N(一般に、コンテンツアイテム175と呼ばれることもある)を記憶することができる。
コンポーネントの各々(たとえば、データ処理システム140、ネットワーク110、データベース145、クライアントデバイス120、コンテンツ要求受信機155、コンテンツアイテムセレクタ160、コンテンツアイテムマネージャ150、およびコンテンツディスプレイマネージャ165など)、またはシステム100のコンテンツプロバイダ135は、ハードウェアコンポーネント、またはソフトウェアとコンピューティングシステム(たとえば、図5に関連して本明細書に詳述されるコンピュータシステム500、データ処理システム140、本明細書に記載される任意の他のコンピューティングシステムなど)のハードウェアコンポーネントとの組合せを使用して実装することができる。データ処理システム140のコンポーネントの各々は、本明細書に詳述される機能を実行することができる。
ネットワーク110は、インターネット、ローカル、ワイド、メトロまたは他のエリアネットワーク、イントラネット、衛星ネットワーク、音声またはデータモバイル電話通信ネットワークなどの他のコンピュータネットワーク、およびそれらの組合せなどのコンピュータネットワークを含むことができる。システム100のデータ処理システム140は、ネットワーク110を介して、たとえば、少なくとも1つのクライアントデバイス120と通信することができる。ネットワーク110は、とりわけデータ処理システム140、クライアントデバイス120、コンテンツプロバイダ135、およびウェブサーバまたは他の外部サーバ、あるいはコンピューティングシステムなどの1つまたは複数のコンテンツソースとの間で情報を中継することができる任意の形態のコンピュータネットワークであり得る。いくつかの実施形態では、ネットワーク110は、インターネットおよび/またはローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク、または他のタイプのデータネットワークなどの他のタイプのデータネットワークを含む。ネットワーク110はまた、ネットワーク110内でデータを受信および/または送信することができる任意の数のコンピューティングデバイス(たとえば、コンピュータ、サーバ、ルータ、ネットワークスイッチなど)を含むことができる。ネットワーク110は、任意の数のハードワイヤードおよび/またはワイヤレス接続をさらに含むことができる。本明細書に記載のコンピューティングデバイス(たとえば、データ処理システム140、クライアントデバイス120、コンピュータシステム500など)のうちのいずれかまたはすべては、ネットワーク110内の他のコンピューティングデバイスにハードワイヤード配線された(たとえば、光ファイバーケーブル、CAT5ケーブルなどを介して)トランシーバとワイヤレスで(たとえば、Wi-Fi、セルラー、ラジオなどを介して)通信することができる。本明細書で説明されるコンピューティングデバイス(たとえば、データ処理システム140、クライアントデバイス120、コンピュータシステム500など)のうちのいずれかまたはすべては、プロキシデバイス(たとえば、ルータ、ネットワークスイッチ、またはゲートウェイ)を介してネットワーク110のコンピューティングデバイスとワイヤレスで通信することもできる。
クライアントデバイス120の各々は、少なくとも1つのプロセッサおよびメモリ、たとえば、処理回路を含むことができる。メモリは、プロセッサによって遂行されたときに、プロセッサに本明細書に記載の動作のうちの1つまたは複数を実行させるプロセッサ遂行可能命令を記憶することができる。プロセッサは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)など、またはそれらの組合せを含むことができる。メモリは、電子的、光学的、磁気的、またはプロセッサにプログラム命令を提供することができる他の任意のストレージデバイスまたは送信デバイスを含むことができるが、これらに限定されない。メモリは、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ASIC、FPGA、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、電気的消去可能プログラマブルROM(EEPROM)、消去可能プログラマブルROM(EPROM)、フラッシュメモリ、光メディア、またはプロセッサが命令を読み取ることができる任意の他の適切なメモリをさらに含むことができる。命令は、任意の適切なコンピュータプログラミング言語からのコードを含むことができる。クライアントデバイス120は、本明細書で説明されるような様々な機能を実行することができる1つまたは複数のコンピューティングデバイスまたはサーバを含むことができる。クライアントデバイス120は、コンポーネントのうちのいずれかまたはすべてを含み、図5に関連して本明細書で説明されるコンピュータシステム500の機能のうちのいずれかまたはすべてを実行することができる。
クライアントデバイス120の各々は、ウェブブラウザを介したウェブページ、またはクライアントデバイス120上で遂行されるネイティブアプリケーションを介したアプリケーションリソースなどの情報にアクセスするために、ネットワーク110を介して通信することができるコンピューティングデバイスであり得る。情報リソースにアクセスする際に、クライアントデバイス120は、クライアントデバイス120に1つまたは複数のコンテンツソース(たとえば、コンテンツプロバイダ135、データ処理システム140など)からのコンテンツを要求させる命令(たとえば、ネイティブアプリケーション、情報リソースなどに埋め込まれている、または含まれている)を遂行することができる。クライアントデバイス120は、クライアントデバイス120に、クライアントデバイス120に関するパラメータ(たとえば、要求を行うクライアントデバイス120に対応するパラメータなど)を送信させる構成または設定を含むことができる。いくつかの実施形態では、ウェブページまたはモバイルアプリケーションページなどの情報リソースは、コンテンツの要求を行う際にクライアントデバイスにクライアントデバイス120に関するパラメータを送信させる命令を含むことができる。クライアントデバイス120は、データ処理システム140によって知られている、または維持される属性を有することができる。クライアントデバイス120は、クライアントデバイス120上に表示するためのコンテンツを要求するために、ネットワーク110を介してコンテンツの要求をデータ処理システム140に送信することができる。
コンテンツの要求に応答して、クライアントデバイス120は、ネットワーク110を介して要求されたコンテンツを受信することができる。要求されたコンテンツは、クライアントデバイス120の外部のコンピューティングデバイス(たとえば、データ処理システム140、コンテンツプロバイダ135など)によって検索することができ、ネットワーク110を介してクライアントデバイス120に送信することができる。コンテンツの要求に応答してクライアントデバイス120に提供されるコンテンツは、特定の場所、あるいは特定のフォーマットまたは構成においてコンテンツをレンダリングするためのスクリプトまたは他の命令を含むことができる。たとえば、クライアントデバイス120によって受信されたコンテンツに含まれるスクリプトは、クライアントデバイス120に、レンダリングされたウェブページまたはアプリケーションページなどの情報リソースにコンテンツを挿入させる命令を含むことができる。いくつかの実施形態では、スクリプトは、クライアントデバイス120に、コンテンツを提供したデバイス(たとえば、データ処理システム140、コンテンツプロバイダ135など)に確認メッセージを送信させ、クライアントデバイス120が要求されたコンテンツをレンダリングしたことを確認する。クライアントデバイス120に提供されるコンテンツは、テキスト、画像、ビデオ、またはそれらの任意の組合せを含む、任意の形式のコンテンツであり得る。いくつかの実施形態では、コンテンツは、ウェブページまたはモバイルアプリケーションページなどの情報リソースを含む。クライアントデバイス120に提供されるコンテンツは、コンテンツ選択ポリシに従って選択することができる。コンテンツ選択ポリシは、要求に含まれる情報またはクライアントデバイス120の知られているパラメータに基づいて、特定のコンテンツをクライアントデバイス120に提供するためにコンテンツを選択することができる。
コンテンツプロバイダ135は、少なくとも1つのプロセッサおよびメモリ、たとえば、処理回路を含むことができる。メモリは、プロセッサによって遂行されたときに、プロセッサに本明細書に記載の動作のうちの1つまたは複数を実行させるプロセッサ遂行可能命令を記憶することができる。プロセッサは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)など、またはそれらの組合せを含み得る。メモリは、電子的、光学的、磁気的、またはプロセッサにプログラム命令を提供することができる他の任意のストレージデバイスまたは送信デバイスを含み得るが、これらに限定されない。メモリは、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ASIC、FPGA、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、電気的消去可能プログラマブルROM(EEPROM)、消去可能プログラマブルROM(EPROM)、フラッシュメモリ、光メディア、またはプロセッサが命令を読み取ることができる任意の他の適切なメモリをさらに含み得る。命令は、任意の適切なコンピュータプログラミング言語からのコードを含み得る。コンテンツプロバイダ135は、本明細書で説明されるような様々な機能を実行することができる1つまたは複数のコンピューティングデバイスまたはサーバを含むことができる。コンテンツプロバイダ135は、コンポーネントのうちのいずれかまたはすべてを含み、図5に関連して本明細書で説明されるコンピュータシステム500の機能のうちのいずれかまたはすべてを実行することができる。
コンテンツ発行者130は、1つまたは複数の情報リソースをクライアントデバイスに提供することができる。たとえば、クライアントデバイス120は、コンテンツ発行者130からの情報リソースを要求することができ、コンテンツ発行者130は、表示のためにそれぞれのデバイスに情報リソースを提供することができる。情報リソースは、ウェブページまたはモバイルアプリケーションページ、あるいは1つまたは複数のコンテンツスロットを含むことができる他のタイプのコンテンツであり得る。情報リソースは、ウェブページ、アプリケーションリソースまたはページ、ビデオ、画像、または本明細書で説明される他のタイプのコンテンツであり得る。コンテンツ発行者130によって提供される情報リソースは、1つまたは複数のスクリプトを含むことができ、クライアントデバイス120によって遂行されると、クライアントデバイス120に、情報リソースに挿入するための追加のコンテンツを要求させる。いくつかの実施形態では、情報リソースは、コンテンツスロットに対応する1つまたは複数のスクリプトあるいはコンピュータ遂行可能命令を含むことができる。スクリプトまたはコンピュータ遂行可能命令は、コンテンツスロットに挿入されるコンテンツの要求を生成するように構成することができる。スクリプトまたはコンピュータ遂行可能命令は、クライアントデバイス上に表示するために情報リソースがアクセスまたは処理されているときにコンテンツスロットに挿入されるコンテンツ(たとえば、テキスト、画像、オーディオ、ビデオ、それらの任意の組合せなど)の要求を生成するように構成することができる。いくつかの実施形態では、クライアントデバイス120は、コンテンツの要求をデータ処理システム140に提供する。コンテンツの要求は、データ処理システム140がコンテンツスロットに挿入するためにクライアントデバイスに送信するコンテンツアイテムを選択するために使用することができる1つまたは複数のパラメータを含むことができる。いくつかの実施形態では、データ処理システム140は、クライアントデバイス120から受信されたコンテンツの要求からパラメータを受信または抽出することができる。したがって、データ処理システム140は、クライアントデバイス120から受信したコンテンツの要求に応答してコンテンツを提供することができる。コンテンツの要求およびパラメータに関する追加の詳細を以下に説明する。
コンテンツプロバイダ135は、クライアントデバイスにおいて情報リソースのコンテンツスロットに挿入されるコンテンツアイテム175を提供することができる。コンテンツプロバイダ135は、コンテンツアイテム175をデータ処理システム140に提供することができ、次いで、データ処理システム140は、コンテンツの要求に応答して、コンテンツアイテム175をクライアントデバイスに提供することができる。コンテンツプロバイダ135は、ネットワーク110を介してデータ処理システム140と通信することができ、データ処理システムを介してクライアントデバイスにコンテンツアイテム175を提供するための1つまたは複数のコンテンツプロビジョニングポリシを確立することができる。コンテンツプロビジョニングポリシは、コンテンツアイテム175を提供するための1つまたは複数のコンテンツ選択パラメータを含むことができる。いくつかの実施形態では、各コンテンツアイテム175は、コンテンツアイテムに関連付けられる1つまたは複数のコンテンツ選択パラメータを満たすクライアントデバイスに提供することができる。
データ処理システム140は、少なくとも1つのプロセッサおよびメモリ、たとえば、処理回路を含むことができる。メモリは、プロセッサによって遂行されたときに、プロセッサに本明細書に記載の動作のうちの1つまたは複数を実行させるプロセッサ遂行可能命令を記憶することができる。プロセッサは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)など、またはそれらの組合せを含むことができる。メモリは、電子的、光学的、磁気的、またはプロセッサにプログラム命令を提供することができる他の任意のストレージデバイスまたは送信デバイスを含むことができるが、これらに限定されない。メモリは、フロッピーディスク、CD-ROM、DVD、磁気ディスク、メモリチップ、ASIC、FPGA、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、電気的消去可能プログラマブルROM(EEPROM)、消去可能プログラマブルROM(EPROM)、フラッシュメモリ、光メディア、またはプロセッサが命令を読み取ることができる任意の他の適切なメモリをさらに含むことができる。命令は、任意の適切なコンピュータプログラミング言語からのコードを含むことができる。データ処理システム140は、本明細書で説明されるような様々な機能を実行することができる1つまたは複数のコンピューティングデバイスまたはサーバを含むことができる。データ処理システム140の任意のコンポーネントは、本明細書で説明される任意の機能を実行できることを理解されたい。データ処理システム140は、コンポーネントのうちのいずれかまたはすべてを含み、図5に関連して本明細書で説明されるコンピュータシステム500の機能のうちのいずれかまたはすべてを実行することができる。いくつかの実施形態では、データ処理システム140は、データベース145に情報を記憶または維持する。
ここでデータ処理システム140の動作を参照すると、コンテンツアイテムマネージャ150は、1つまたは複数のコンテンツアイテム175を管理することができる。コンテンツアイテム175は、テキスト、画像、オーディオ、ビデオ、またはそれらの任意の組合せを含むことができる。コンテンツアイテムマネージャ150は、1つまたは複数のコンテンツプロバイダ135からコンテンツアイテム175を受信することができる。コンテンツアイテムマネージャ150は、コンテンツプロバイダ135から受信したコンテンツアイテムをデータベース170に記憶、維持、または他の方法で管理することができる。
コンテンツアイテムマネージャ150は、各コンテンツアイテム175のパラメータを維持することができる。コンテンツアイテムマネージャ150は、コンテンツアイテム175からパラメータを決定するか、またはコンテンツアイテム175を提供したコンテンツプロバイダ135からパラメータを受信することができる。いくつかの実施形態では、パラメータは、ディスプレイ解像度、アスペクト比、表示方向、寸法を含むサイズ、またはコンテンツアイテムのファイルサイズを含む。コンテンツアイテムのパラメータは、コンテンツアイテムの表示に対応する他のパラメータを含むことができる。コンテンツアイテムマネージャ150は、データベース145上のデータ構造に各コンテンツアイテム175のパラメータを維持または記憶することができる。
パラメータは、コンテンツの要求に応答して1つまたは複数のクライアントデバイスに送信するためにどのコンテンツアイテムを選択することができるかに従って、1つまたは複数のコンテンツ選択パラメータをさらに含むことができる。コンテンツアイテム175のコンテンツ選択パラメータは、コンテンツアイテム175を提供するコンテンツプロバイダ135によって定義することができる。
コンテンツ要求受信機155は、1つまたは複数のコンテンツの要求を受信することができる。コンテンツ要求受信機155は、クライアントデバイス120からコンテンツの要求を受信することができる。コンテンツの要求は、クライアントデバイス上で遂行されるアプリケーション、たとえば、モバイルアプリケーションまたはクライアントデバイスのブラウザによって生成することができる。コンテンツ要求受信機155は、クライアントデバイスがコンテンツスロットを含む情報リソースにアクセスすることに応答して、コンテンツの要求を受信することができる。コンテンツの要求は、情報リソースのコンテンツスロットに挿入されるコンテンツアイテムの要求であり得る。コンテンツスロットは、クライアントデバイスの表示画面の一部を占有するコンテンツスロットサイズを有するスロットであり得るか、あるいはコンテンツスロットは、クライアントデバイスの表示画面全体またはコンテンツ要求が受信されたアプリケーションのビューポートを占有するインタースティシャル(interstitial)コンテンツスロットであり得る。いくつかの実施形態では、コンテンツの要求は、クライアントデバイス120の画面を占有する全画面コンテンツに対するものである。いくつかの実施形態では、コンテンツの要求は、ハイパーテキスト転送プロトコル(HTTP)要求、ファイル転送プロトコル(FTP)要求、ハイパーテキスト転送プロトコルセキュア(HTTPS)要求、ファイル転送プロトコルセキュア(FTPS)、または、クライアントデバイス120に、ネットワーク110を介したコンテンツへのアクセスを要求させることができる任意の他のタイプの要求である。
コンテンツの要求は、1つまたは複数のパラメータを含むことができる。パラメータは、コンテンツの要求に応答してクライアントデバイスに提供するコンテンツアイテムを選択するために、データ処理システム140またはコンテンツプロバイダ135によって使用することができる。コンテンツ要求受信機155は、コンテンツの要求から1つまたは複数のパラメータを決定することができる。いくつかの実施形態では、コンテンツ要求受信機は、要求に含まれる1つまたは複数のパラメータから1つまたは複数のパラメータのサブセットを決定または導出することができる。1つまたは複数のパラメータは、情報リソースのURIなどの情報リソースの識別子を含むことができる。パラメータは、情報リソースをホストまたは提供するアプリケーションまたはウェブサイトのIDを含むことができる。パラメータは、要求が関係するコンテンツスロットに対応する1つまたは複数のコンテンツスロットパラメータを含むことができる。コンテンツスロットパラメータは、とりわけ、コンテンツスロットサイズ、コンテンツスロットアスペクト比、コンテンツスロット表示方向、コンテンツスロットタイプ(たとえば、画像、テキスト、オーディオ、またはビデオコンテンツアイテム用のスロット)、情報リソース内のコンテンツスロット位置を含むことができる。パラメータはまた、とりわけ、デバイスタイプを識別するパラメータ、デバイス表示サイズ、デバイスのオペレーティングシステム、デバイスのユーザに対応するパラメータ、デバイスのネットワーク接続のタイプを識別するネットワークタイプを含む1つまたは複数のデバイス関連パラメータを含むことができる。
コンテンツ要求受信機155は、クライアントデバイス120のデバイスタイプを決定することができる。いくつかの実施形態では、コンテンツ要求受信機155は、クライアント要求のパラメータからクライアントデバイス120のデバイスタイプを決定する。パラメータは、とりわけ、特定のデバイスに関する情報、たとえば、表示機能(たとえば、ディスプレイのサイズまたは解像度など)、表示フォーマットの互換性(たとえば、ソフトウェアの制限などにより、特定のコンテンツを表示する機能)、特定のコンテンツを処理および表示する処理機能(たとえば、意味のある方法でクライアントデバイス120のパフォーマンスを妨げないコンテンツを提示することなど)、オペレーティングシステムのタイプ、ウェブブラウザ識別子、アプリケーション識別子、予想される閲覧履歴またはデバイスの動作などを含むことができる。パラメータは、コンテンツの1つまたは複数のそれぞれの要求とともに記憶することができ、パラメータはまた、パラメータに関連付けられるそれぞれのクライアントデバイス120を識別することができる。
コンテンツ要求受信機155は、クライアントデバイス120の画面の表示方向を決定、抽出、または識別することができる。クライアントデバイス120の表示方向は、クライアントデバイス120の画面がどのように方向付けられているかを示すことができる。いくつかの実施形態では、コンテンツ要求受信機155は、表示方向が、クライアントデバイス120の画面がポートレートモードにあることを示していると決定する。ポートレートモードは、クライアントデバイス120の画面の高さがクライアントデバイス120の画面の幅よりも大きいことを示すことができる。本明細書で使用される場合、ポートレートモードは、クライアントデバイス120のより長い寸法がユーザのビューの垂直軸に沿っている、ユーザに対するクライアントデバイス120の相対位置を指す。あるいは、コンテンツ要求受信機155は、表示方向が、クライアントデバイス120の画面がランドスケープモードにあることを示していると決定する。ランドスケープモードは、クライアントデバイス120の画面の高さがクライアントデバイス120の画面の幅よりも小さいことを示すことができる。本明細書で使用される場合、ランドスケープモードは、クライアントデバイス120のより長い寸法がユーザのビューの水平軸に沿っている、ユーザに対するクライアントデバイス120の相対位置を指す。コンテンツ要求受信機155は、コンテンツの要求から、クライアントデバイス120の画面の表示方向を決定、抽出、または識別することができる。いくつかの実施形態では、コンテンツ要求受信機155は、コンテンツの要求のパラメータから表示方向を決定、抽出、または識別する。いくつかの実施形態では、コンテンツ要求受信機155は、クライアントデバイス120の画面のアスペクト比から、クライアントデバイス120の画面の表示方向を決定する。
コンテンツ要求受信機155は、画面のアスペクト比を決定、抽出、検索、または識別することができる。アスペクト比は、画面の幅と画面の高さの比率を示す。コンテンツ要求受信機155は、コンテンツの要求から画面のアスペクト比を決定、抽出、または識別することができる。たとえば、コンテンツの要求のパラメータは、クライアントデバイス120の画面のアスペクト比を示すことができる。コンテンツ要求受信機155は、クライアントデバイス120の画面のアスペクト比を決定するために、クライアントデバイス120の画面のディスプレイ解像度を決定することができる。コンテンツ要求受信機155は、コンテンツの要求のパラメータから画面のディスプレイ解像度を決定、抽出、または識別することができる。いくつかの実施形態では、コンテンツの要求は、クライアントデバイス120の画面のディスプレイ解像度を含む。ディスプレイ解像度は、画面の幅に対する画面の高さを示すことができる。いくつかの実施形態では、コンテンツ要求受信機155は、データベース145内の画面の表示方向、アスペクト比、またはディスプレイ解像度を維持または記憶する。コンテンツ要求受信機155はまた、データベース145から、画面の表示方向、アスペクト比、またはディスプレイ解像度を検索することができる。
コンテンツ要求受信機155は、コンテンツスロットの表示方向を決定、抽出、または識別することができる。コンテンツ要求受信機155は、コンテンツアイテム175を表示するコンテンツスロットの表示方向を決定、抽出、または識別することができる。コンテンツ要求受信機155は、コンテンツの要求のパラメータから表示方向を決定、抽出、または識別することができる。コンテンツスロットの表示方向は、コンテンツスロットがどのように方向付けられているかを示すことができる。いくつかの実施形態では、コンテンツ要求受信機155は、表示方向が、コンテンツスロットがポートレートモードにあることを示していると決定する。ポートレートモードは、コンテンツスロットの高さがコンテンツスロットの幅よりも大きいことを示すことができる。コンテンツの要求は、コンテンツスロットがランドスケープモードまたはポートレートモードであることを示すことができる。ポートレートモードは、コンテンツスロットの高さがコンテンツスロットの幅よりも大きいことを示すことができる。ランドスケープモードは、コンテンツスロットの高さがコンテンツスロットの幅よりも小さいことを示すことができる。いくつかの実施形態では、コンテンツ要求受信機155は、コンテンツの要求が、コンテンツスロットがランドスケープモードにあることを示していると決定する。いくつかの実施形態では、コンテンツ要求受信機155は、コンテンツの要求が、コンテンツスロットがポートレートモードにあることを示していると決定する。コンテンツ要求受信機155は、コンテンツスロットのアスペクト比に基づいて、コンテンツスロットの表示方向を決定することができる。コンテンツ要求受信機155は、コンテンツの要求のパラメータからコンテンツスロットのアスペクト比を決定、抽出、検索、または識別することができる。アスペクト比は、コンテンツスロットの幅とコンテンツスロットの高さの比率を示している。いくつかの実施形態では、コンテンツ要求受信機155は、データベース145内のコンテンツスロットの表示方向またはアスペクト比を維持または記憶する。コンテンツ要求受信機155は、データベース145からコンテンツスロットの表示方向またはアスペクト比を検索することができる。
コンテンツアイテムセレクタ160は、クライアントデバイス120上に表示するためにコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160は、複数のコンテンツアイテムからコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160は、コンテンツ要求受信機155によって受信されたコンテンツの要求に応答してコンテンツアイテムを選択することができる。コンテンツアイテムセレクタ160は、コンテンツの要求に含まれるか、またはコンテンツの要求から導出される1つまたは複数のパラメータを使用してコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160はまた、他のパラメータに基づいてコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160は、クリックスルー率などのコンテンツアイテム175のパフォーマンスに関連するパラメータに基づいてコンテンツアイテム175を選択することができる。同様に、コンテンツアイテムセレクタ160は、クライアントデバイス120のパラメータ(たとえば、ネットワーク強度、ハードウェア機能など)など、コンテンツ要求に含まれるか、またはコンテンツ要求から識別されるパラメータに基づいてコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160は、データベース145からコンテンツアイテム175を選択することができる。いくつかの実施形態では、コンテンツアイテムセレクタ160は、コンテンツの要求に応答して、コンテンツプロバイダ135から追加のコンテンツを検索または選択する。コンテンツアイテムセレクタ160は、テキスト、画像、ビデオ、またはそれらの任意の組合せを含む、任意の形式のコンテンツにおけるコンテンツアイテム175を選択することができる。いくつかの実施形態では、コンテンツアイテム175は、ウェブページなどの情報リソースの表現を含む。
コンテンツアイテムセレクタ160は、コンテンツアイテム175の表示方向を決定、抽出、または識別することができる。コンテンツアイテム175の表示方向は、コンテンツアイテム175がクライアントデバイス120上で見るためにどのように方向付けられているかを示すことができる。たとえば、表示方向は、ポートレートモードでもよく、ランドスケープモードでもよい。ポートレートモードは、コンテンツアイテム175の幅がコンテンツアイテム175の高さよりも小さいことを示すことができ、ランドスケープモードは、コンテンツアイテム175の幅がコンテンツアイテム175の高さよりも大きいことを示すことができる。コンテンツアイテムセレクタ160は、コンテンツアイテム175のアスペクト比から、コンテンツアイテム175の表示方向を決定、抽出、検索、または識別することができる。コンテンツアイテムセレクタ160は、コンテンツアイテム175のアスペクト比を決定、抽出、検索、または識別することができる。アスペクト比は、コンテンツアイテム175の幅とコンテンツアイテムの高さの比率を示している。コンテンツアイテムセレクタ160は、コンテンツアイテム175のアスペクト比を決定するために、コンテンツアイテム175のディスプレイ解像度を決定または識別することができる。コンテンツアイテムセレクタ160は、コンテンツアイテム175のディスプレイ解像度を決定、抽出、または識別することができる。ディスプレイ解像度は、コンテンツアイテム175の幅に対するコンテンツアイテム175の高さを示すことができる。いくつかの実施形態では、コンテンツアイテムセレクタ160は、データベース145内のコンテンツアイテム175の表示方向、アスペクト比、またはディスプレイ解像度を維持または記憶する。
コンテンツアイテムセレクタ160は、コンテンツスロットの表示方向に関係なく、コンテンツアイテム175を選択することができる。言い換えれば、コンテンツアイテムセレクタ160は、コンテンツスロットの表示方向を使用せずにコンテンツアイテム175を選択することができる。コンテンツアイテムセレクタ160は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致する必要がないように、コンテンツアイテム175を選択することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がコンテンツスロットのより多くを占有するように、コンテンツスロットを適切な表示方向、アスペクト比、またはディスプレイ解像度で直接修正するか、またはクライアントデバイスに修正させることができるので、コンテンツアイテムセレクタ160は、任意の表示方向、アスペクト比、またはディスプレイ解像度でコンテンツアイテム175を選択する。
コンテンツディスプレイマネージャ165は、コンテンツアイテムセレクタ160が、それらの表示方向、アスペクト比、およびディスプレイ解像度に関係なくコンテンツアイテム175を選択することを可能にするので、コンテンツアイテムセレクタ160は、利用可能なコンテンツアイテム175のより大きいセットから選択することができる。たとえば、コンテンツディスプレイマネージャ165が、コンテンツスロットの表示方向を修正するか、またはクライアントデバイスに、コンテンツアイテム175の表示方向と一致するようにコンテンツスロットの表示方向を修正させることができるため、コンテンツアイテムセレクタ160は、たとえコンテンツスロットがランドスケープモードであっても、ポートレートモードでコンテンツアイテム175を選択することができる。したがって、コンテンツアイテムセレクタ160は、クライアントデバイス120の画面全体を占有するコンテンツアイテム175のより大きいセットから選択することができ、その結果、クライアントデバイス120のユーザにとってより没入感のある体験がもたらされ、コンテンツアイテムのための画面の利用可能なスペースの使用が最適化される。
コンテンツディスプレイマネージャ165は、クライアントデバイス120のコンテンツスロットにおけるコンテンツアイテム175の表示を管理または構成することができる。たとえば、コンテンツディスプレイマネージャ165は、クライアントデバイス120からのコンテンツの要求およびコンテンツアイテムセレクタ160によるコンテンツアイテム175の選択に応答して、コンテンツアイテム175の表示を管理することができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示パラメータをコンテンツスロットの表示パラメータと比較することができる。コンテンツディスプレイマネージャ165は、コンテンツアイテムマネージャ150からコンテンツアイテム175のパラメータを受信することができる。コンテンツアイテム175のパラメータは、コンテンツアイテム175の表示方向、アスペクト比、またはディスプレイ解像度を含むことができる。同様に、コンテンツディスプレイマネージャ165は、コンテンツ要求受信機155からコンテンツスロットのパラメータを受信することができる。コンテンツスロットのパラメータは、コンテンツスロットの表示方向またはアスペクト比を含むことができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向をコンテンツスロットの表示方向と比較することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致することを決定する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175とコンテンツスロットの両方がランドスケープモードにあることを決定することができる。同様に、コンテンツディスプレイマネージャ165は、コンテンツアイテム175とコンテンツスロットの両方がポートレートモードにあることを決定することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向はコンテンツスロットの表示方向と一致しないと決定する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツスロットがポートレートモードにある間、コンテンツアイテム175がランドスケープモードにあることを示していると決定することができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175のアスペクト比とコンテンツスロットのアスペクト比との間の差を決定することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175が16:9のアスペクト比を有し、コンテンツスロットが16:10のアスペクト比を有することを決定することができる。コンテンツディスプレイマネージャ165は、その差を、コンテンツアイテム175とコンテンツスロットとの間のアスペクト比の間の差を示すあらかじめ定められたしきい値と比較することができる。あらかじめ定められたしきい値は、10%、20%、30%、40%、50%、60%、70%、80%、または90%であり得る。
コンテンツディスプレイマネージャ165は、差があらかじめ定められたしきい値を超えないことを決定することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175のアスペクト比がコンテンツスロットのアスペクト比と一致することを決定する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175とコンテンツスロットの両方が16:9のアスペクト比を有することを決定することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175のアスペクト比とコンテンツスロットのアスペクト比が一致しないと決定する。たとえば、コンテンツアイテム175のアスペクト比が16:9であり、コンテンツスロットのアスペクト比が16:10である場合、コンテンツディスプレイマネージャ165は、アスペクト比間の差があらかじめ定められたしきい値を超えないと決定する。差があらかじめ定められたしきい値を超えない場合、コンテンツディスプレイマネージャ165は、コンテンツアイテム175とコンテンツスロットが同じ表示方向にあると決定することができる。たとえば、コンテンツアイテム175のアスペクト比が16:9であり、コンテンツスロットのアスペクト比が16:10である場合、コンテンツディスプレイマネージャ165は、コンテンツアイテム175およびコンテンツスロットがランドスケープモードにあると決定することができる。
コンテンツディスプレイマネージャ165は、差があらかじめ定められたしきい値を超えていると決定することができる。たとえば、コンテンツアイテム175のアスペクト比が16:9であり、コンテンツスロットのアスペクト比が9:16である場合、コンテンツディスプレイマネージャ165は、アスペクト比間の差があらかじめ定められたしきい値を超えていると決定する。いくつかの実施形態では、あらかじめ定められたしきい値を超える差は、クライアントデバイス120がコンテンツスロット内にコンテンツアイテム175を表示するときに、空のスペース226をもたらす可能性がある。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、あらかじめ定められたしきい値を超える差に応答して、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175は、その16:9のアスペクト比に基づいて、ランドスケープモードにあり、コンテンツスロットは、その9:16のアスペクト比に基づいて、ポートレートモードにあると決定することができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175の様々なフォーマットを比較することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がビデオフォーマットであることを決定することができる。コンテンツディスプレイマネージャ165はまた、コンテンツアイテム175が画像、バナー、または本明細書で説明されるフォーマットのいずれかであると決定することができる。コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向を特定のフォーマットで比較することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がビデオである場合、コンテンツアイテム175の表示方向をコンテンツスロットの表示方向と比較することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がビデオであると決定することに応答して、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することができる。
コンテンツディスプレイマネージャ165は、コンテンツスロットのための命令を生成することができる。命令は、コンピュータ遂行可能スクリプトであり得る。いくつかの実施形態では、命令は、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含む任意の形式のプログラミング言語で書かれたコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)であり得る。コンテンツディスプレイマネージャ165は、スタンドアロンプログラムとして、またはコンピューティング環境における使用に適したモジュール、コンポーネント、サブルーチン、オブジェクト、または他のユニットとしてを含む、任意の形式で命令を展開することができる。表示命令は、コンテンツスロットにコンテンツアイテム175を表示するようにクライアントデバイス120に指示することができる。
コンテンツディスプレイマネージャ165は、コンテンツスロットの表示方向を調整することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、クライアントデバイス120がポートレートモードにおいてコンテンツスロットの向きを調整または設定することを指定する命令を生成する。同様に、コンテンツディスプレイマネージャ165は、クライアントデバイス120がランドスケープモードにおいてコンテンツスロットの向きを調整または設定することを指定する命令を生成することができる。本明細書で説明するように生成された命令は、コンテンツスロットまたはクライアントデバイス120がポートレートモードまたはランドスケープモードであるかどうかに関係なく、異なる表示方向に対して異なる方向のコンテンツアイテムを要求および受信することなく、コンテンツアイテム175が画面全体を占有するように、コンテンツアイテム175が多数のコンテンツスロットに適合することを可能にする。
コンテンツディスプレイマネージャ165は、クライアントデバイス120にコンテンツスロットに対するアスペクト比を調整させるための命令を構成する。コンテンツディスプレイマネージャ165は、コンテンツスロットのアスペクト比を本明細書で論じられるアスペクト比のいずれかから本明細書で論じられるアスペクト比のいずれかに調整するための命令を構成することができる。たとえば、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツスロットのアスペクト比を9:16から16:9に調整させるための命令を構成することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツアイテム175の表示方向に基づいてコンテンツスロットに対するアスペクト比を調整させるための命令を構成する。たとえば、コンテンツスロットのアスペクト比がポートレートモードに関連付けられている9:16であり、コンテンツアイテム175がランドスケープモードにある場合、コンテンツディスプレイマネージャ165は、ランドスケープモードに関連付けられるアスペクト比を16:9に調整するための命令を構成することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、クライアントデバイス120にコンテンツスロットに対するアスペクト比を調整させる命令を構成する。たとえば、コンテンツディスプレイマネージャ165が、コンテンツアイテム175がランドスケープモードにあるが、コンテンツスロットがポートレートモードにあると決定した場合、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツスロットのアスペクト比を9:16からランドスケープモードに関連付けられている16:9に調整させるための命令を構成することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、コンテンツアイテム175の表示方向に基づいて、クライアントデバイス120に、コンテンツスロットに対するアスペクト比を調整させる命令を構成する。たとえば、第1に、コンテンツディスプレイマネージャ165は、コンテンツアイテム175が16:9のアスペクト比を有すると決定し、これは、コンテンツがランドスケープモードにあることを示す。次に、コンテンツディスプレイマネージャ165は、コンテンツスロットがポートレートモードにある場合、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツスロットのアスペクト比を9:16からランドスケープモードに関連付けられている16:9に調整させるための命令を構成することを決定する。
コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツスロットの幅および高さを交換させるための命令を構成することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツスロットのアスペクト比を調整するために、クライアントデバイス120に、コンテンツスロットの幅および高さを交換させるための命令を構成することができる。たとえば、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、コンテンツスロットのアスペクト比を9:16から16:9に調整させるための命令を構成することができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向を含むための命令を生成することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がランドスケープモードにあることを含む命令を生成することができる。同様に、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がポートレートモードにあることを含む命令を生成することができる。クライアントデバイス120またはコンテンツプロバイダ135は、指定された向きにおけるコンテンツアイテム175の表示を検証するために、コンテンツスロットの向きを使用することができる。
コンテンツディスプレイマネージャ165は、クライアントデバイス120にコンテンツスロットの表示方向をロックさせるための命令を生成することができる。いくつかの実施形態では、命令は、クライアントデバイス120にコンテンツスロットのアスペクト比をロックさせる。たとえば、コンテンツディスプレイマネージャ165は、クライアントデバイス120に画面の表示方向をポートレートモードにロックさせるための命令を生成することができる。同様に、コンテンツディスプレイマネージャ165は、クライアントデバイス120に画面の表示方向をランドスケープモードにロックさせるための命令を生成することができる。コンテンツディスプレイマネージャ165はまた、クライアントデバイス120に、コンテンツアイテム175の表示中にコンテンツスロットを表示するアプリケーションの表示方向をロックさせるための命令を生成することができる。たとえば、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、アプリケーションの表示方向をポートレートモードにロックさせるための命令を生成することができる。同様に、コンテンツディスプレイマネージャ165は、クライアントデバイス120に、アプリケーションの表示方向をランドスケープモードにロックさせるための命令を生成することができる。コンテンツスロットまたはアプリケーションの表示方向をロックすることにより、命令によってクライアントデバイス120がコンテンツスロットの表示方向を修正した後、クライアントデバイス120の動きがコンテンツスロットの表示方向を不注意に修正することを防ぐことができる。たとえば、クライアントデバイス120の自動回転機能は、クライアントデバイス120の動きに応答して、コンテンツスロットのアスペクト比を自動的に修正することができる。したがって、コンテンツスロットまたはアプリケーションの表示方向をロックすることにより、コンテンツスロットの表示方向は、コンテンツアイテム175の提示中のクライアントデバイス120の動きに応答して変化しない。
コンテンツディスプレイマネージャ165は、命令をクライアントデバイス120に送信することができる。コンテンツディスプレイマネージャ165は、ネットワーク110を介して命令を送信する。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、クライアントデバイス120に命令を送信することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がランドスケープモードにあるが、コンテンツスロットがポートレートモードにあると決定することに応答して、クライアントデバイス120に命令を送信することができる。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175をクライアントデバイス120に送信することができる。コンテンツディスプレイマネージャ165は、ネットワーク110を介してコンテンツアイテム175を送信することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、コンテンツアイテム175を送信する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175はランドスケープモードにあるが、コンテンツスロットはポートレートモードにあると決定することに応答して、コンテンツアイテム175をクライアントデバイス120に送信することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致すると決定することに応答して、コンテンツアイテム175を送信する。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175およびコンテンツスロットが両方ともランドスケープモードで構成されていると決定することに応答して、コンテンツアイテム175をクライアントデバイス120に送信することができる。いくつかの実施形態では、コンテンツディスプレイマネージャ165は、クライアントデバイス120のタイプに基づくフォーマットでコンテンツアイテム175を送信する。コンテンツディスプレイマネージャ165は、コンテンツ要求受信機155からデバイスタイプを受信することができる。たとえば、デバイスタイプがクライアントデバイス120はビデオをレンダリングできることを示す場合、コンテンツディスプレイマネージャ165は、ビデオフォーマットでコンテンツアイテム175を送信する。
コンテンツディスプレイマネージャ165は、コンテンツアイテム175および命令をクライアントデバイス120に送信することができる。いくつかの実施形態では、コンテンツアイテム175の表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、コンテンツディスプレイマネージャ165は、コンテンツアイテム175および命令をクライアントデバイス120に送信することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツアイテム175がランドスケープモードにあるがコンテンツスロットがポートレートモードにあると決定することに応答して、命令およびコンテンツアイテム175をクライアントデバイス120に送信することができる。
コンテンツディスプレイマネージャ165はまた、コンテンツアイテム175、コンテンツスロット、または画面の特定のアスペクト比を決定、計算、または識別することができる。たとえば、コンテンツアイテム175、コンテンツスロット、または画面のアスペクト比は、32:9、21:9、16:9、16:10、4:3、3:4、10:16、9:16、9:21、または9:32であり得る。同様に、コンテンツアイテム175または画面のディスプレイ解像度は、640×480、800×600、960×720、1024×768、1280×960、1400×1050、1440×1080、1600×1200、1856×1392、1920×1440、2048×1536、1280×800、1440×900、1680×1050、1920×1200、2560×1600、1024×576、1152×648、1280×720、1366×768、1600×900、1920×1080、2560×1440、3840×2160、480×640、600×800、720×960、768×1024、960×1280、1050×1400、1080×1440、1200×1600、1392×1856、1440×1920、1536×2048、800×1280、900×1440、1050×1680、1200×1920、1600×2560、576×1024、648×1152、720×1280、768×1366、900×1600、1080×1920、1440×2560、または2160×3840であり得る。
コンテンツディスプレイマネージャ165はまた、アスペクト比に基づいて表示方向を決定、計算、または識別することができる。コンテンツディスプレイマネージャ165は、幅と高さのアスペクト比が1より大きい場合、コンテンツアイテム175、画面、またはコンテンツスロットがランドスケープモードにあると決定することができる。たとえば、コンテンツディスプレイマネージャ165は、アスペクト比が32:9、21:9、16:9、16:10、または4:3である場合、コンテンツアイテム175、画面、またはコンテンツスロットがランドスケープモードにあると決定することができる。同様に、コンテンツディスプレイマネージャ165は、コンテンツアイテム175、画面、またはコンテンツスロットの高さに対する幅のアスペクト比が1未満であると決定することができる。たとえば、アスペクト比が3:4、10:16、9:16、9:21、または9:32である場合、コンテンツアイテム175、画面、またはコンテンツスロットはポートレートモードにある。
コンテンツディスプレイマネージャ165はまた、ディスプレイ解像度に基づいてアスペクト比を決定、計算、または識別することができる。いくつかの実施形態では、コンテンツアイテム175または画面は、3840×1080、または5120×1440の解像度に基づいて、32:9のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、2560×1080、3440×1440、または5120×2160のディスプレイ解像度に基づいて、21:9のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1280×720、1366×768、1600×900、1920×1080、2560×1440、3840×2160、5120×2880、または7680×4320のディスプレイ解像度に基づいて、16:9のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1280×800、1920×1200、または2560×1600のディスプレイ解像度に基づいて、16:10のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1400×1050、1440×1080、1600×1200、1920×1440、または2048×1536の解像度に基づいて、4:3のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1080×3840、または1440×5120のディスプレイ解像度に基づいて、9:32のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1080×2560、1440×3440、または2160×5120のディスプレイ解像度に基づいて、9:21のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、720×1280、768×1366、900×1600、1080×1920、1440×2560、2160×3840、2880×5120、または4320×7680のディスプレイ解像度に基づいて、9:16のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、800×1280、1200×1920、または1600×2560のディスプレイ解像度に基づいて、10:16のアスペクト比を有する。いくつかの実施形態では、コンテンツアイテム175または画面は、1050×1400、1080×1440、1200×1600、1440×1920、または1536×2048のディスプレイ解像度に基づいて、3:4のアスペクト比を有する。
クライアントデバイス120はまた、本明細書で説明されるように、データ処理システム140の機能を実行することができる。たとえば、コンテンツディスプレイマネージャ165は、コンテンツディスプレイマネージャ165の機能を実行するために、クライアントデバイス120に命令を送信することができる。したがって、クライアントデバイス120は、本明細書で説明されるように、コンテンツディスプレイマネージャ165の機能を実行するための命令を遂行することができる。たとえば、クライアントデバイス120は、クライアントデバイス120上のコンテンツスロットの表示方向と、コンテンツプロバイダ135から受信されたコンテンツアイテム175との間に不一致があるかどうかを決定することができる。次に、クライアントデバイス120は、コンテンツスロットの表示方向を修正して、コンテンツスロットの表示方向とコンテンツアイテム175の表示方向とを一致させるために、コンテンツスロットのアスペクト比を修正することができる。したがって、クライアントデバイス120は、データ処理システム140と追加のデータを交換することなく、コンテンツディスプレイマネージャ165の機能を実行することができる。
データベース145は、本明細書に記載の情報のうちのいずれかを記憶および/または維持するように構成されたデータベースであり得る。データベース145は、1つまたは複数のデータ構造を維持することができ、これは、本明細書に記載の値、複数、セット、変数、ベクトル、またはしきい値の各々を含む、インデックス付けする、またはさもなければ記憶することができる。データベース145は、データベース145に維持されている任意のアイテム、構造、または領域の1つまたは複数のメモリアドレス、インデックス値、または識別子を使用してアクセスすることができる。データベース145は、ネットワーク110を介して、データ処理システム140のコンポーネント、または本明細書に記載の他の任意のコンピューティングデバイスによってアクセスすることができる。いくつかの実施形態では、データベース145は、データ処理システム140の内部にある。いくつかの実施形態では、データベース145は、データ処理システム140の外部に存在し、ネットワーク110を介してアクセスされる。データベース145は、多くの異なるコンピュータシステムまたはストレージ要素に分散することができ、ネットワーク110または適切なコンピュータバスインターフェースを介してアクセスすることができる。データ処理システム140は、データ処理システム140のメモリの領域に、またはデータベース145に、適切な値でインデックス付けまたは識別された1つまたは複数のデータ構造に、任意またはすべての計算、決定、選択、識別、生成、構築、または計算の結果を記憶することができる。データ処理システム140などの本明細書に記載の任意のコンピューティングデバイスは、本明細書に記載の機能のうちのいずれかを実行するために、データベース145に記憶された任意またはすべての値にアクセスすることができる。
ここで図2Aおよび図2Bを参照すると、図2Aおよび図2Bは、ポートレートモードでクライアントデバイス120においてコンテンツアイテム175を表示するためのコンテンツスロットを調整する図200を示している。図2Aおよび図2Bは、第1の軸202に沿ったクライアントデバイス120の幅と、第1の軸202に垂直な第2の軸204に沿ったクライアントデバイス120の高さを示している。クライアントデバイス120は、画面210と、コンテンツスロット220Aおよび220B(一般に、コンテンツスロット220と呼ばれる)とを含むことができる。図2Aに示されるように、クライアントデバイス120は、コンテンツ発行者130の情報リソースへのアクセスに応答して、コンテンツの要求をデータ処理システム140に送信することができる。コンテンツの要求は、クライアントデバイス120に関する情報を決定するためのデータ処理システム140のパラメータを含むことができる。コンテンツ要求に応答して、およびパラメータに基づいて、データ処理システム140は、コンテンツアイテム175をクライアントデバイス120に送信することができる。たとえば、データ処理システム140は、コンテンツアイテム175Aをクライアントデバイス120に送信することができる。
軸202に沿った画面210の幅が、軸204に沿った画面210の高さよりも小さい図2Aおよび図2Bに示されるようにユーザがクライアントデバイス120を方向付ける場合、画面210はポートレートモードにある。画面210は、A:Bのアスペクト比を有することができる。Aの長さがBより短いので、コンテンツ要求受信機155は、画面210がポートレートモードにあると決定することができる。コンテンツ要求受信機155はまた、画面210のディスプレイ解像度に基づいて、画面210のアスペクト比を決定または識別することができる。コンテンツ要求受信機155は、画面210がF×Dのディスプレイ解像度を有することを決定または識別することができる。したがって、コンテンツ要求受信機155は、画面210がA:Bのアスペクト比を有することを決定することができる。
コンテンツスロット220Aは、軸202に沿ったコンテンツスロット220Aの幅が軸204に沿ったコンテンツスロット220Aの高さよりも小さくなるような向きで見るように向けられているので、コンテンツスロット220Aは、ポートレートモードにある。コンテンツスロット220Aは、A:Bのアスペクト比を含む。Aの長さがBより短い場合、コンテンツ要求受信機155は、コンテンツスロット220Aがランドスケープモードにあると決定することができる。
コンテンツアイテム175Aは、軸202に沿ったコンテンツアイテム175Aの幅が軸204に沿ったコンテンツアイテム175Aの高さよりも長くなるような向きで見るように向けられているので、コンテンツアイテム175Aはランドスケープモードにある。コンテンツアイテム175Aはまた、A:Cのアスペクト比を含む。Aの長さがCより長い場合、コンテンツアイテムセレクタ160は、コンテンツアイテム175Aがランドスケープモードにあると決定することができる。コンテンツアイテムセレクタ160はまた、コンテンツアイテム175Aのディスプレイ解像度に基づいて、コンテンツアイテム175Aのアスペクト比を決定または識別することができる。コンテンツアイテムセレクタ160はまた、コンテンツアイテム175AがF×Eのディスプレイ解像度を有することを決定または識別することができる。したがって、コンテンツアイテムセレクタ160は、コンテンツアイテム175AがA:Cのアスペクト比を有すると決定することができる。
コンテンツアイテム175Aの表示方向またはアスペクト比は、コンテンツスロット220Aの表示方向またはアスペクト比と一致しないので、コンテンツスロット220Aは、空のスペース226Aおよび226Bを含む。空のスペース226は、コンテンツアイテム175Aの提示の間、画面210およびコンテンツスロット220Aの一部を占有されないままにし、その結果、クライアントデバイス120のユーザの没入感が低下する。
次に図2Bを参照すると、ランドスケープモードになるように命令によって構成されたコンテンツスロット220Aが示されている。コンテンツアイテム175Aおよびコンテンツスロット220Aは、軸202に沿った高さよりも長い軸204に沿った幅を有するので、クライアントデバイス120は、ランドスケープモードにおいてコンテンツスロット220A内にコンテンツアイテム175Aを表示する。コンテンツアイテム175Aおよびコンテンツスロット220Aは、B:Aの同じアスペクト比を有する。コンテンツアイテム175Aもまた、画面210と同じディスプレイ解像度を有する。図2Aと比較して、コンテンツスロット220Aの表示方向をコンテンツアイテム175Aの表示方向に一致させることによって、コンテンツアイテム175Aは、コンテンツスロット220Aおよび画面210を空のスペース226なしで占有する。調整により、異なる表示方向の異なる方向のコンテンツアイテムを要求および受信することなくコンテンツスロット220Aまたはクライアントデバイス120がポートレートモードであるかランドスケープモードであるかに関係なく、コンテンツアイテム175Aが画面210全体を占有するように、コンテンツアイテム175Aを多数のコンテンツスロットに適合することが可能になる。
ここで図3Aおよび図3Bを参照すると、図3Aおよび図3Bは、ランドスケープモードでクライアントデバイス120においてコンテンツアイテム175を表示するためのコンテンツスロット220を調整する図300を示している。図3Aおよび図3Bは、クライアントデバイス120の幅に沿った第1の軸202と、クライアントデバイス120の長さに沿った第2の軸204とを含む。図3Aに示されるように、クライアントデバイス120は、コンテンツ発行者130の情報リソースへのアクセスに応答して、コンテンツの要求をデータ処理システム140に送信することができる。コンテンツの要求は、クライアントデバイス120に関する情報を決定するためのデータ処理システム140のパラメータを含むことができる。コンテンツ要求に応答して、およびパラメータに基づいて、データ処理システム140は、コンテンツアイテム175をクライアントデバイス120に送信することができる。たとえば、データ処理システム140は、コンテンツアイテム175Bをクライアントデバイス120に送信することができる。
軸204に沿った画面210の幅が、軸202に沿った画面210の高さよりも大きい図3Aおよび図3Bに示されるようにコンテンツを見るためにユーザがクライアントデバイス120を方向付ける場合、画面210はランドスケープモードにある。画面210は、B:Aのアスペクト比を有することができる。Bの長さがAより長いので、コンテンツ要求受信機155は、画面210がランドスケープモードにあると決定することができる。コンテンツ要求受信機155はまた、画面210のディスプレイ解像度に基づいて、画面210のアスペクト比を決定または識別することができる。コンテンツ要求受信機155は、画面210がD×Fのディスプレイ解像度を有することを決定または識別することができる。したがって、コンテンツ要求受信機155は、画面210がB:Aのアスペクト比を有することを決定することができる。
コンテンツスロット220Bは、軸204に沿ったコンテンツスロット220Bの幅が軸202に沿ったコンテンツスロット220Bの高さよりも大きくなるような向きで見るように向けられているので、コンテンツスロット220Bは、ランドスケープモードにある。コンテンツスロット220Bは、B:Aのアスペクト比を含む。Bの長さがAより長い場合、コンテンツ要求受信機155は、コンテンツスロット220Bがランドスケープモードにあると決定することができる。
コンテンツアイテム175Bは、軸204に沿ったコンテンツアイテム175Bの幅が軸202に沿ったコンテンツアイテム175Bの高さよりも短くなるような向きで見るように向けられているので、コンテンツアイテム175Bはポートレートモードにある。コンテンツアイテム175Bはまた、G:Aのアスペクト比を含む。Gの長さがAより短い場合、コンテンツアイテムセレクタ160は、コンテンツアイテム175Bがポートレートモードにあると決定することができる。コンテンツアイテムセレクタ160はまた、コンテンツアイテム175Bのディスプレイ解像度に基づいて、コンテンツアイテム175Bのアスペクト比を決定または識別することができる。コンテンツアイテムセレクタ160はまた、コンテンツアイテム175BがH×Fのディスプレイ解像度を有することを決定または識別することができる。したがって、コンテンツアイテムセレクタ160は、コンテンツアイテム175BがG:Aのアスペクト比を有すると決定することができる。
コンテンツアイテム175Bの表示方向またはアスペクト比は、コンテンツスロット220Bの表示方向またはアスペクト比と一致しないので、コンテンツスロット220Bは、空のスペース226Cおよび226Dを含む。空のスペース226は、コンテンツアイテム175Bの提示の間、画面210およびコンテンツスロット220Bの一部を占有されないままにし、その結果、クライアントデバイス120のユーザの没入感が低下する。
次に図3Bを参照すると、ポートレートモードになるように命令によって構成されたコンテンツスロット220Bが示されている。コンテンツアイテム175Bおよびコンテンツスロット220Bは、軸204に沿った高さよりも長い軸202に沿った幅を有するので、クライアントデバイス120は、ポートレートモードにおいてコンテンツスロット220B内にコンテンツアイテム175Bを表示する。コンテンツアイテム175Bおよびコンテンツスロット220Bは、A:Bの同じアスペクト比を有する。コンテンツアイテム175Bもまた、画面210と同じディスプレイ解像度を有する。図3Aと比較して、コンテンツスロット220Bの表示方向をコンテンツアイテム175Bの表示方向に一致させることによって、コンテンツアイテム175Bは、コンテンツスロット220Bおよび画面210を空のスペース226なしで占有する。調整により、異なる表示方向の異なる方向のコンテンツアイテムを要求および受信することなくコンテンツスロット220Bまたはクライアントデバイス120がポートレートモードであるかランドスケープモードであるかに関係なく、コンテンツアイテム175Bが画面210全体を占有するように、コンテンツアイテム175Bを多数のコンテンツスロットに適合することが可能になる。
ここで図4を参照すると、クライアントデバイスにおいてコンテンツアイテムを表示するためのコンテンツスロットを調整するための方法400の例示的な流れ図が示されている。方法400は、データ処理システム140、図5と併せて本明細書に記載されているコンピュータシステム500、または本明細書に記載されている他の任意のコンピューティングデバイスによって遂行、実行、または他の方法で実行することができる。簡単に言えば、データ処理システム(たとえば、データ処理システム140など)は、コンテンツアイテム(たとえば、コンテンツアイテム175など)の要求を受信することと(ステップ402)、コンテンツアイテムを選択することと(ステップ404)、コンテンツアイテムの表示方向を識別することと(ステップ406)、コンテンツスロット(たとえば、コンテンツスロット220など)の表示方向を識別することと(ステップ408)、コンテンツアイテムの表示方向とコンテンツスロットの表示方向を比較することと(ステップ410)、方向が一致するかどうかを決定することと(ステップ412)、コンテンツスロットのアスペクト比を調整するための命令を生成することと(ステップ414)、命令およびコンテンツアイテムをクライアントデバイス(たとえば、クライアントデバイス120など)に送信することと(ステップ416)を行うことができる。
データ処理システムは、コンテンツアイテムの要求を受信または管理することができる(ステップ402)。データ処理システムは、クライアントデバイスからコンテンツの要求を受信することができる。要求は、コンテンツスロットに対応する1つまたは複数のパラメータを含むことができる。パラメータは、クライアントデバイスの表示方向を示すことができる。データ処理システムは、クライアントデバイスの表示方向を決定することができる。データ処理システムは、コンテンツの要求からクライアントデバイスの表示方向を決定することができる。データ処理システムは、画面のアスペクト比からクライアントデバイスの表示方向を決定する。データ処理システムは、クライアントデバイスのアスペクト比を決定することができる。データ処理システムはまた、クライアントデバイスの画面(たとえば、画面210など)のアスペクト比を決定することができる。データ処理システムは、コンテンツの要求からクライアントデバイスのアスペクト比を決定することができる。データ処理システムは、画面のディスプレイ解像度からクライアントデバイスのアスペクト比を決定することができる。データ処理システムは、クライアントデバイスのディスプレイ解像度を決定する。データ処理システムは、コンテンツの要求からクライアントデバイスの画面のディスプレイ解像度を決定することができる。いくつかの実施形態では、コンテンツの要求は、クライアントデバイスの画面のディスプレイ解像度を含む。コンテンツの要求は、クライアントデバイスの画面を占有するために全画面コンテンツを要求することができる。いくつかの実施形態では、データ処理システムは、クライアントデバイスのデバイスタイプを決定する。データ処理システムは、コンテンツの要求からクライアントデバイスのデバイスタイプを決定することができる。
データ処理システムは、コンテンツアイテムを選択することができる(ステップ404)。いくつかの実施形態では、データ処理システムは、複数のコンテンツアイテムからコンテンツアイテムを選択する。データ処理システムは、コンテンツの要求に応答してコンテンツアイテムを選択することができる。データ処理システムは、コンテンツスロットの表示方向に関係なく、コンテンツアイテムを選択することができる。言い換えれば、データ処理システムは、コンテンツスロットの表示方向を使用せずにコンテンツアイテムを選択することができる。データ処理システムは、データ処理システムの表示方向がコンテンツスロットの表示方向と一致する必要がないように、コンテンツアイテムを選択することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムがコンテンツスロットのより多くを占有するように、コンテンツスロットを適切な表示方向、アスペクト比、またはディスプレイ解像度で修正することができるので、データ処理システムは、任意の表示方向、アスペクト比、またはディスプレイ解像度でコンテンツアイテムを選択する。
データ処理システムは、コンテンツアイテムの表示方向を識別または決定することができる(ステップ406)。いくつかの実施形態では、データ処理システムは、コンテンツの要求に応答して選択されたコンテンツアイテムの表示方向を決定する。コンテンツの要求は、コンテンツアイテムの表示方向を含むことができる。データ処理システムは、コンテンツの要求からコンテンツアイテムの表示方向を決定することができる。データ処理システムはまた、コンテンツアイテムのアスペクト比から表示方向を決定することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムのアスペクト比を決定する。コンテンツの要求は、コンテンツアイテムのアスペクト比を含むことができる。データ処理システムは、コンテンツの要求からアスペクト比を決定することができる。データ処理システムは、コンテンツアイテムのディスプレイ解像度からアスペクト比を決定することができる。データ処理システムは、コンテンツアイテムのディスプレイ解像度を決定することができる。データ処理システムは、コンテンツの要求からディスプレイ解像度を決定することができる。
データ処理システムは、コンテンツスロットの表示方向を識別または決定することができる(ステップ408)。いくつかの実施形態では、データ処理システムは、コンテンツアイテムを表示するコンテンツスロットの表示方向を識別する。コンテンツの要求は、コンテンツスロットの表示方向を示す1つまたは複数のパラメータを含むことができる。いくつかの実施形態では、データ処理システムは、コンテンツの要求の1つまたは複数のパラメータに基づいて、コンテンツアイテムを表示するコンテンツスロットの表示方向を識別する。データ処理システムは、コンテンツスロットのアスペクト比からコンテンツスロットの表示方向を決定することができる。データ処理システムは、コンテンツスロットのアスペクト比を決定することができる。コンテンツの要求は、コンテンツスロットのアスペクト比を含むことができる。データ処理システムは、コンテンツスロットからアスペクト比を決定することができる。
データ処理システムは、コンテンツアイテムの表示方向をコンテンツスロットの表示方向と比較することができる(ステップ410)。データ処理システムは、コンテンツアイテムのアスペクト比をコンテンツスロットのアスペクト比と比較することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムのアスペクト比とコンテンツスロットのアスペクト比との間の差を決定する。
データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致するかどうかを決定することができる(ステップ412)。データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致すると決定することができる。データ処理システムは、コンテンツアイテムのアスペクト比をコンテンツスロットのアスペクト比と比較することによって、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致すると決定することができる。コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致する場合、方法400はステップ416に進む。あるいは、データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの第2の表示方向と一致しないと決定することができる。データ処理システムは、コンテンツアイテムのアスペクト比をコンテンツスロットのアスペクト比と比較することによって、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することができる。データ処理システムは、コンテンツアイテムのアスペクト比とコンテンツスロットのアスペクト比の差があらかじめ定められたしきい値を超えた場合、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することができる。データ処理システムは、コンテンツアイテムのフォーマットに基づいて不一致を決定することができる。いくつかの実施形態では、データ処理システムは、選択されたコンテンツアイテムがビデオコンテンツアイテムであると決定する。いくつかの実施形態では、データ処理システムは、選択されたコンテンツアイテムがビデオコンテンツアイテムであると決定することに応答して、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定する。
データ処理システムは、コンテンツスロットのための命令を生成することができる(ステップ414)。データ処理システムは、コンテンツスロットの表示方向を調整することができる。データ処理システムはまた、コンテンツスロットのアスペクト比を調整することができる。いくつかの実施形態では、データ処理システムは、クライアントデバイスに、コンテンツスロットに対するアスペクト比を調整させるための命令を構成する。データ処理システムは、コンテンツアイテムの表示方向に基づいて、クライアントデバイスに、コンテンツスロットに対するアスペクト比を調整させるための命令を構成することができる。データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、命令を構成することができる。データ処理システムは、コンテンツスロットの幅と高さを交換するように命令を構成することができる。いくつかの実施形態では、データ処理システムは、クライアントデバイスに、アスペクト比を調整するために、コンテンツスロットの高さをコンテンツスロットの幅と交換させるための命令を構成する。データ処理システムは、コンテンツアイテムの表示方向を含むための命令を構成することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムの表示方向を含むための命令を構成する。データ処理システムはまた、クライアントデバイスの画面の表示方向をロックするための命令を構成することができる。データ処理システムはまた、クライアントデバイスのコンテンツスロットの表示方向をロックするための命令を構成することができる。いくつかの実施形態では、データ処理システムは、クライアントデバイスに、コンテンツアイテムの表示中にコンテンツスロットを表示するアプリケーションの表示方向をロックさせるように命令を構成することができる。
データ処理システムは、命令およびコンテンツアイテムをクライアントデバイスに送信することができる(ステップ416)。いくつかの実施形態では、データ処理システムは、命令をクライアントデバイスに送信する。データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、命令を送信することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムをクライアントデバイスに送信する。データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致しないと決定することに応答して、コンテンツアイテムを送信することができる。あるいは、データ処理システムは、ステップ412の後にコンテンツアイテムを送信することができる。いくつかの実施形態では、データ処理システムは、コンテンツアイテムの表示方向がコンテンツスロットの表示方向と一致すると決定することに応答して、コンテンツアイテムを送信する。いくつかの実施形態では、データ処理システムは、デバイスタイプに基づいたフォーマットでコンテンツアイテムを送信する。たとえば、データ処理システムは、コンテンツアイテムを画像として第1のデバイスタイプに送信し、コンテンツアイテムをビデオとして第2のデバイスタイプに送信することができる。
図5は、いくつかの実施形態による、本明細書で論じられるコンピュータシステムのうちのいずれかを実装するために使用することができる例示的なコンピュータシステム500の一般的なアーキテクチャを示している。ネットワーク110を介して情報を提供して表示するために、コンピュータシステム500を使用することができる。図5のコンピュータシステム500は、メモリ525に通信可能に結合された1つまたは複数のプロセッサ520、1つまたは複数の通信インターフェース405、ならびに1つまたは複数の出力デバイス510(たとえば、1つまたは複数のディスプレイユニット)および1つまたは複数の入力デバイス515を備える。プロセッサ520は、本明細書で説明されるコンピューティングデバイスのうちのいずれかに含まれ得る。
図5のコンピュータシステム500において、メモリ525は、任意のコンピュータ可読ストレージ媒体を備えることができ、それぞれのシステムについて本明細書に記載の様々な機能を実装するためのプロセッサ遂行可能命令などのコンピュータ命令、ならびにそれによって生成された、あるいは通信インターフェースまたは入力デバイス(存在する場合)を介して受信された、それに関連する任意のデータを記憶することができる。再び図5のシステム500を参照すると、コンピュータシステム500は、とりわけ、本明細書で説明される情報、変数、ベクトル、データ構造、または他のコンピュータ可読情報のうちのいずれかの情報を記憶するためのメモリ525を含むことができる。図5に示されるプロセッサ520は、メモリ525に記憶された命令を遂行するために使用することができ、そうすることで、命令の遂行に従って処理および/または生成された様々な情報をメモリから読み取る、またはそこに書き込むこともできる。
図5に示されるコンピュータシステム500のプロセッサ520はまた、命令の遂行に従って様々な情報を送信または受信するために、通信インターフェース505に通信可能に結合する、またはそれを制御することができる。たとえば、通信インターフェース505は、ワイヤードまたはワイヤレスネットワーク、バス、または他の通信手段に結合することができ、したがって、コンピュータシステム500が他のデバイス(たとえば、他のコンピュータシステム)との間で情報を送信または受信することを可能にすることができる。図5のシステムには明示的に示されていないが、1つまたは複数の通信インターフェースは、システム500のコンポーネント間の情報の流れを容易にする。いくつかの実施形態では、通信インターフェースは、コンピュータシステム500の少なくともいくつかの態様へのアクセスポータルとしてウェブサイトを提供するように(たとえば、様々なハードウェアコンポーネントまたはソフトウェアコンポーネントを介して)構成することができる。通信インターフェース505の例は、ユーザがコンピュータシステム500と通信することができるユーザインターフェース(たとえば、ウェブページ)を含む。
図5に示されるコンピュータシステム500の出力デバイス510は、たとえば、命令の遂行に関連して様々な情報を見る、または他の方法で知覚できるようにするために提供することができる。入力デバイス515は、たとえば、ユーザが、命令の遂行中に、手動調整を行うこと、選択を行うこと、データを入力すること、または様々な方法のいずれかでプロセッサと対話することを可能にするために提供することができる。本明細書で論じられる様々なシステムに使用することができる一般的なコンピュータシステムアーキテクチャに関する追加情報は、本明細書でさらに提供される。
本明細書に記載の主題および動作の実施形態は、デジタル電子回路、または本明細書に開示される構造およびそれらの構造的同等物を含む有形媒体、ファームウェア、またはハードウェア上に具体化されるコンピュータソフトウェア、あるいはそれらの1つまたは複数の組合せにおいて実装することができる。本明細書に記載の主題の実施形態は、1つまたは複数のコンピュータプログラム、たとえば、データ処理装置による遂行のために、またはデータ処理装置の動作を制御するためにコンピュータストレージ媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のコンポーネントとして実装することができる。プログラム命令は、人工的に生成された伝搬信号、たとえば、データ処理装置による遂行のために適切な受信機装置に送信するための情報を符号化するために生成される機械生成の電気、光、または電磁信号に符号化することができる。コンピュータストレージ媒体は、コンピュータ可読ストレージデバイス、コンピュータ可読ストレージ基板、ランダムまたはシリアルアクセスメモリアレイまたはデバイス、あるいはそれらの1つまたは複数の組合せであってもよく、それらに含まれてもよい。さらに、コンピュータストレージ媒体は伝播信号ではないが、コンピュータストレージ媒体は、人工的に生成された伝播信号に符号化されたコンピュータプログラム命令のソースまたは宛先を含むことができる。コンピュータストレージ媒体はまた、1つまたは複数の別個の物理的コンポーネントまたは媒体(たとえば、複数のCD、ディスク、または他のストレージデバイス)であってもよく、それらに含まれてもよい。
本明細書に開示される機能は、スマートテレビモジュール(または、接続されたテレビモジュール、ハイブリッドテレビモジュールなど)に実装することができ、これは、インターネット接続を従来のテレビ番組ソース(たとえば、ケーブル、衛星、無線、または他の信号を介して受信された)と統合するように構成された処理モジュールを含むことができる。スマートテレビモジュールは、テレビセットに物理的に組み込むこともでき、セットトップボックス、ブルーレイまたは他のデジタルメディアプレーヤ、ゲームコンソール、ホテルのテレビシステム、および他のコンパニオンデバイスなどの別個のデバイスを含むこともできる。スマートテレビモジュールは、視聴者がウェブ、ローカルケーブルTVチャネル、衛星TVチャネル上の、またはローカルハードドライブに保存されている、ビデオ、映画、写真、および他のコンテンツを検索および発見できるように構成することができる。セットトップボックス(STB)またはセットトップユニット(STU)は、チューナーを内蔵し、テレビセットおよび外部信号源に接続して、信号をコンテンツに変換し、テレビ画面または他のディスプレイデバイスに表示することができる情報機器デバイスを含むことができる。スマートテレビモジュールは、ウェブブラウザおよび複数のストリーミングメディアサービス、接続されたケーブルまたは衛星メディアソース、他のウェブ「チャネル」など、複数の異なるアプリケーションのアイコンを含むホーム画面またはトップレベル画面を提供するように構成することができる。スマートテレビモジュールはさらに、電子番組ガイドをユーザに提供するように構成することができる。スマートテレビモジュールのコンパニオンアプリケーションは、ユーザがスマートテレビモジュールなどを制御できるようにするために利用可能なプログラムに関する追加情報をユーザに提供するために、モバイルコンピューティングデバイス上で動作可能である。代替の実施形態では、機能は、ラップトップコンピュータまたは他のパーソナルコンピュータ、スマートフォン、他のモバイル電話、ハンドヘルドコンピュータ、タブレットPC、あるいは他のコンピューティングデバイスに実装することができる。
本明細書に記載されている動作は、1つまたは複数のコンピュータ可読ストレージデバイスに記憶されているか、または他のソースから受信されたデータに対してデータ処理装置によって実行される動作として実装することができる。
「データ処理装置」、「データ処理システム」、「クライアントデバイス」、「コンピューティングプラットフォーム」、「コンピューティングデバイス」、または「デバイス」という用語は、例として、プログラマブルプロセッサ、コンピュータ、チップ上のシステム、または前述の複数のもの、あるいはそれらの組合せを含む、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。装置は、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの専用論理回路を含むことができる。装置はまた、ハードウェアに加えて、問題のコンピュータプログラムの遂行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、あるいはそれらの1つまたは複数の組合せを構成するコードを含むことができる。装置および遂行環境は、ウェブサービス、分散コンピューティング、およびグリッドコンピューティングインフラストラクチャなどの、様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイラ型またはインタープリタ型言語、宣言型または手続き型言語を含む、あらゆる形式のプログラミング言語で記述することができ、またスタンドアロンプログラムとして、あるいはモジュール、コンポーネント、サブルーチン、オブジェクト、またはコンピューティング環境における使用に適した他のユニットとしてなど、任意の形式で展開することができる。コンピュータプログラムは、ファイルシステム内のファイルに対応する場合があるが、対応する必要はない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(たとえば、マークアップ言語ドキュメントに記憶された1つまたは複数のスクリプト)、問題のプログラム専用の単一のファイル、または複数の調整されたファイル(たとえば、1つまたは複数のモジュール、サブプログラム、あるいはコードの一部を記憶するファイル)に記憶され得る。コンピュータプログラムは、1台のコンピュータ、または1つのサイトに配置されているか、複数のサイトに分散され、通信ネットワークによって相互接続されている複数のコンピュータにおいて遂行するように展開することができる。
入力データを操作して出力を生成することによってアクションを実行するための1つまたは複数のコンピュータプログラムを遂行する1つまたは複数のプログラマブルプロセッサは、本明細書に記載のプロセスおよび論理フローを実行することができる。プロセスおよび論理フローはまた、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの専用論理回路によって実行することもでき、それらとして装置を実装することもできる。
コンピュータプログラムの遂行に適したプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは読取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受信する。コンピュータの要素は、命令に従ってアクションを実行するためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリデバイスとを含む。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量ストレージデバイス、たとえば、磁気、磁気光学ディスク、または光ディスクを含むか、あるいはそこからデータを受信するか、またはそこにデータを転送するか、あるいはその両方のために動作可能に結合される。しかしながら、コンピュータにそのようなデバイスが必要なわけではない。さらに、コンピュータは、別のデバイス、たとえば、モバイル電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)レシーバ、あるいはポータブルストレージデバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)に組み込むことができる。コンピュータプログラム命令およびデータを記憶するために適したデバイスは、たとえば、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば、内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含む、すべての形態の不揮発性メモリ、メディア、およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完されてもよく、それに組み込まれてもよい。
ユーザとの対話を提供するために、本明細書に記載の主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえば、CRT(陰極線管)、プラズマ、またはLCD(液晶ディスプレイ)モニタ、ならびにユーザが入力をコンピュータに提供することができるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールを有するコンピュータ上に実装することができる。ユーザとの対話を提供するために、他の種類のデバイスを使用することもでき、たとえば、ユーザに提供されるフィードバックは、たとえば、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックなどの、あらゆる形態の感覚的フィードバックを含むことができ、また、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受け取ることができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって、たとえば、ウェブブラウザから受信した要求に応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
本明細書に記載されている主題の実施形態は、たとえばデータサーバとしてバックエンドコンポーネントを含むか、たとえばアプリケーションサーバなどのミドルウェアコンポーネントを含むか、フロントエンドコンポーネント、たとえば、ユーザが本明細書に記載の主題の実装形態と対話できるグラフィカルユーザインターフェースまたはウェブブラウザを備えたクライアントコンピュータを含むコンピューティングシステム、あるいは、1つまたは複数のそのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せに実装することができる。システムのコンポーネントは、通信ネットワークなどの任意の形式または媒体のデジタルデータ通信によって相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、ネットワーク間(たとえば、インターネット)、ならびにピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)を含む。
データ処理システム140などのコンピューティングシステムは、クライアントおよびサーバを含むことができる。たとえば、データ処理システム140は、1つまたは複数のデータセンタあるいはサーバファーム内の1つまたは複数のサーバを含むことができる。クライアントおよびサーバは通常、互いにリモートであり、通常は通信ネットワークを通じて相互作用する。クライアントおよびサーバの関係は、それぞれのコンピュータで実行され、クライアントおよびサーバの関係を相互に有するコンピュータプログラムによって発生する。いくつかの実施形態では、サーバは、データ(たとえば、HTMLページ)をクライアントデバイスに送信する(たとえば、データを表示し、クライアントデバイスと対話するユーザからの入力を受信する目的で)。クライアントデバイスにおいて生成されたデータ(たとえば、相互作用、計算、または任意の他のイベントまたは計算の結果)は、サーバにおいてクライアントデバイスから受信することができ、その逆も可能である。
本明細書には多くの特定の実装形態の詳細が含まれているが、これらは発明の範囲または主張できるもの制限として解釈されるべきではなく、むしろ本明細書に記載のシステムおよび方法の特定の実施形態に固有の機能の説明として解釈されるべきである。別個の実施形態の文脈において本明細書に記載されている特定の機能はまた、単一の実装形態において組み合わせて実装することができる。逆に、単一の実装形態の文脈において説明される様々な機能は、複数の実施形態において別々に、または任意の適切なサブコンビネーションにおいて実装することもできる。さらに、特徴は、特定の組合せにおいて作用するものとして上記で説明することができ、最初にそのように主張されているが、主張される組合せからの1つまたは複数の機能は、場合によっては組合せから切り出すことができ、主張される組合せは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けることができる。
同様に、動作は特定の順序で図面に示されているが、これは、望ましい結果を達成するために、そのような動作が示される特定の順序または連続した順序で実行されること、または図示されるすべての動作が実行されることを必要とすることとして理解されるべきではない。場合によっては、特許請求の範囲に記載されているアクションは、異なる順序で実行することができ、依然として望ましい結果を達成することができる。さらに、添付の図面に示されているプロセスは、望ましい結果を達成するために、必ずしも示されている特定の順序または連続した順序を必要としない。
特定の状況では、マルチタスクと並列処理が有利な場合がある。さらに、上記の実施形態における様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されたプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品に一緒に統合されるか、または複数のソフトウェア製品にパッケージ化され得ることが理解されるべきである。たとえば、データ処理システム140は、単一のモジュール、1つまたは複数の処理モジュールを有する論理デバイス、1つまたは複数のサーバ、あるいは検索エンジンの一部であり得る。
いくつかの例示的な実施形態および実施形態を説明したが、前述のことは例示的なものであり、限定ではなく、例として提示されていることは明らかである。特に、本明細書に提示される例の多くは、方法行為またはシステム要素の特定の組合せを含むが、それらの行為およびそれらの要素は、同じ目的を達成するために他の方法で組み合わせることができる。1つの実装形態に関連してのみ議論される行為、要素、および特徴は、他の実施形態または実施形態における同様の役割から除外されることが意図されるものではない。
本明細書で使用されている表現および用語は、説明を目的としたものであり、限定的なものと見なされるべきではない。本明細書における「含む(including)」「備える(comprising)」「有する(having)」「含有する(containing)」「伴う(involving)」「によって特徴付けられる(characterized by)」「において特徴付けられる(characterized in that)」およびそれらの変形の使用は、その後に記載される項目、それらの同等物、および追加の項目、ならびにその後に排他的にリストされる項目からなる代替の実施形態も包含することを意味する。一実装形態では、本明細書で説明されるシステムおよび方法は、説明される要素、行為、またはコンポーネントの1つ、複数の組合せ、またはすべての組合せからなる。
本明細書において参照されるシステムおよび方法の実施形態または要素または行為への単数形の参照はまた、複数のこれらの要素を含む実施形態を包含することができ、本明細書における任意の実装形態または要素または行為への複数形の参照は、単一の要素のみを含む実施形態を包含することができる。単数形または複数形の参照は、現在開示されているシステムまたは方法、それらのコンポーネント、行為、または要素を単一または複数の構成に限定することが意図されるものではない。任意の情報、行為、または要素に基づく任意の行為または要素への参照は、その行為または要素が少なくとも部分的に任意の情報、行為、または要素に基づく実施形態を含むことができる。
本明細書に開示される任意の実装形態は、他の任意の実装形態と組み合わせることができ、「実装形態(an implementation)」、「いくつかの実施形態(some embodiments)」、「代替実装形態(an alternate implementation)」、「様々な実装形態(various implementation)」、「1つの実装形態(one implementation)」などへの言及は、必ずしも相互に排他的である必要はなく、実装形態に関連して説明された特定の機能、構造、または特性を少なくとも1つの実装形態に含むことができることを示すことが意図されている。本明細書で使用されるそのような用語は、必ずしもすべてが同じ実装形態を指すわけではない。任意の実装形態は、本明細書に開示される態様および実施形態と一致する任意の方法で、包括的または排他的に、他の任意の実装形態と組み合わせることができる。
「または(or)」への言及は包括的であると解釈することができるので、「または」を使用して説明される用語は、単一、複数、およびすべての説明された用語のいずれかを示すことができる。
参照記号が、図面、詳細な説明、または特許請求の範囲における技術的特徴に従う場合、参照記号は、図面、詳細な説明、およびクレームの了解度を高めることを唯一の目的として含まれている。したがって、参照記号もその欠如も、クレーム要素の範囲に限定的な影響を及ぼさない。
本明細書に記載のシステムおよび方法は、その特性から逸脱することなく、他の特定の形態で具体化することができる。提供される例は、クライアントデバイスからのコンテンツの要求に応答してコンテンツアイテムを表示するようにコンテンツスロットを調整するために役立つ可能性があるが、本明細書で説明されるシステムおよび方法は、他の環境に適用することができる。前述の実施形態は、説明されたシステムおよび方法を限定するものではなく、例示的なものである。したがって、本明細書に記載のシステムおよび方法の範囲は、前述の説明ではなく、添付の特許請求の範囲によって示すことができ、特許請求の範囲の意味および同等の範囲内にある変更がそこに含まれる。