本開示は、オーディオシステム内の様々なデバイスの間でプリセットを同期させることが有益となり得るという認識に少なくとも部分的に基づく。さらに、オーディオシステム内の様々なデバイスの間で共有可能なオーディオコンテンツを提供するために最近アクセスのエンティティのリストを監督することが有益となり得る。このような特徴は、ユーザの好みのオーディオコンテンツへの迅速かつ簡単なアクセスを容易にするのに役立てることが可能である。
システム概要
図1を参照すると、デジタルオーディオ(たとえば、デジタル音楽)を送達するためのオーディオシステム100は、プリセット割当ての使用を通じて多種多様なデジタルオーディオソースへの簡単で迅速なアクセスを提供することができる。非常にハイレベルではオーディオシステム100には、(i)オーディオ再生デバイス110、(ii)デジタルオーディオソース120a、120b、120c(まとめて120と称する)、コントローラ130a、130b、130c(まとめて130と称する)、およびサーバ140という4つの主たるデバイス種別が存在する。
オーディオ再生デバイス110は、オーディオコンテンツをレンダリングすることが可能な電子デバイスである。これらのデバイスは、記憶済みのオーディオコンテンツ(たとえば、リモートで記憶されたオーディオコンテンツ)にアクセスするとともに、これを再生のためにストリーミングすることが可能である。いくつかのケースでは、オーディオ再生デバイス110はまた、ローカルで記憶されたコンテンツを再生することを可能とし得る。これらのデバイスは、その内部で利用可能なオーディオcodecおよびデジタル信号プロセッサ(DSP)の支援を得てオーディオをレンダリングする。
オーディオ再生デバイス110は互いに通信することが可能である。たとえば各オーディオ再生デバイス110は、オーディオシステム100内のそれ以外のオーディオ再生デバイス110と同期のために通信することが可能である。これは、プリセット割当ての同期などのデバイス設定に関する同期とすることや、再生の同期のためとする(たとえば、オーディオ再生デバイス110の全部またはその部分組が同じコンテンツを同時にかつ同期して再生できるようにする)ことが可能である。
デジタルオーディオソース120は、オーディオ再生デバイス110にコンテンツ(たとえば、オーディオストリーム)を供給するために1つまたは複数の関連するエンティティへのアクセスを提供しており、またオーディオ再生デバイス110からリモートに配置させることが可能であるようなデバイスおよび/またはサービスである。本明細書で使用する場合に「エンティティ」は、再生のためのコンテンツからなるグループまたは収集体を意味する。例示的なエンティティは、インターネットラジオ局およびユーザ定義のプレイリストを含む。「コンテンツ」は、再生のためのデータ(たとえば、オーディオトラック)である。「関連するエンティティ」は、ある特定のオーディオソースと関連付けされたエンティティを意味する。たとえばそのデジタルオーディオソース120がPandora(登録商標)などのインターネット音楽サービスである場合、例示の関連するエンティティはPandora(登録商標)によって提供されるラジオ局となる。
オーディオシステム100の目的においてオーディオストリームはデータであると考えられる。これらは提示の前にアナログに変換されるデジタル情報として処理される。データストリーミングは、オーディオソース120からオーディオ再生デバイス110にデータを移動させるための一方法である。典型的には、このデータの移動についてはプッシュおよびプルという2つのモデルが存在する。オーディオシステム100は、この両方式(これらのプロセスの説明は以下に示す)におけるこのオーディオ(データ)ストリーミングの管理が可能である。
プッシュモデルでは、デジタルオーディオソース120は、オーディオ再生デバイス110にデータをデバイスが要望するペースで移動させることになる。データの受け手(たとえば、オーディオ再生デバイス110のうちの1つ)はデータに肯定応答を出すことになり、またデジタルオーディオソース120はさらなるデータを提供することになる。このモデルはデジタルオーディオソース120に対してオーディオシステム100のスループット特性を管理しているように要求する。プルモデルでは、オーディオ再生デバイス110は、デジタルオーディオソース120からのデータをデバイスが要望する速度で要求することになる。これによれば、オーディオ再生デバイス110はデータが利用可能である場合に先読みすることが可能となる。
デジタルオーディオソース120はそれぞれ、再生のためにユーザにより選択可能なオーディオコンテンツのリポジトリをメンテナンスしている。デジタルオーディオソース120は、Digital Living Network Alliance(登録商標)(DLNA(登録商標))またはハイパーテキスト転送プロトコル(HTTP)と同様の他のウェブベースのプロトコルに基づくことが可能である。この種別のデバイスおよびサービスのうちのいくつかには、Pandora(登録商標)、Spotify(登録商標)およびvTuner(登録商標)などのインターネットベースの音楽サービス120aと、ネットワーク接続ストレージ(NAS)デバイス120bと、メディアサーバデーモン120c(たとえば、コンピュータベースのコントローラの一構成要素として提供される)と、が含まれる。
デジタルオーディオソース120は、ネットワーク接続ストレージ(NAS)デバイス120bなどのネットワークオーディオソースおよびワイヤレス式(Wi-Fi)や有線式(イーサネット(登録商標))のホームネットワーク150などのローカルエリアネットワークを通じてオーディオ再生デバイス110にアクセス可能とし得るDLNA(登録商標)サーバ120c、さらにはインターネットなどのワイドエリアネットワーク160を通じてオーディオ再生デバイス110にアクセス可能なPandora(登録商標)、vTuner(登録商標)、Spotify(登録商標)、その他などのインターネットラジオサイト120aから入手可能なデジタル音楽ファイルのユーザ定義のプレイリストを含む。
コントローラ130は、オーディオ再生デバイス110を制御すること、およびオーディオシステム100内でオーディオソース120をブラウズすることを担当する。この種別のデバイスのうちのいくつかには、デスクトップコンピュータ、ラップトップコンピュータ、およびスマートフォンやタブレットなどのモバイルデバイスを含む。これらのデバイスは、ワイヤレス通信インターフェース(たとえば、IEEE802.11b/g/n/ac、Bluetooth(登録商標) LE、赤外線、その他)を介してオーディオ再生デバイス110を制御する。コントローラ130は、ユーザのネットワーク可能なオーディオ再生デバイス110向けのオンライン管理ツールの役割をする。コントローラ130は、Wi-Fiネットワークへの接続をセットアップすること、ユーザ向けのオーディオシステムアカウントを作成し、ユーザのオーディオシステムアカウントにサインインしかつ情報を取り出すこと、ユーザのオーディオシステムアカウントに基づいてオーディオ再生デバイス110を追加または削除すること、オーディオ再生デバイスの名称を編集しかつソフトウェアを更新すること、オーディオソースに(オーディオ再生デバイス110を介して)アクセスすること、オーディオソース120のうちの1つと関連付けされたエンティティ(たとえば、プレイリストまたはラジオ局)をプリセットインジケータに割り当てること、最新履歴(「最新履歴」は最近アクセスのエンティティを意味する)をブラウズしかつ選択すること、送り制御(再生/ポーズ、次へ/スキップ、元へ)を使用すること、「現在再生中」(すなわち、オーディオ再生デバイス110上で目下再生中のコンテンツ)およびアルバムアートを検討すること、およびボリュームレベルを調整することのうちの1つまたは複数のユーザによる実行を可能にするインターフェースを提供する。
いくつかのケースでは、コントローラ130はネットワークコントローラ130a、130bと、補助コントローラ130cと、を含むことがある。ネットワークコントローラ130a、130bは、ワイヤレス(Wi-Fi)ネットワーク接続を通じてオーディオ再生デバイス110と通信するコントローラである。コントローラ130a、130b、130cは、オーディオ再生デバイス100と通信するために、個別にまたは組合せて使用され得る。ネットワークコントローラ130a、130b、および補助コントローラ130cは、各々、オーディオ再生デバイス110の同じ、異なる、または相補的な制御および機能を提供することができる。各コントローラ130は、ワイヤレス通信インターフェースのタイプ(たとえば、IEEE802.11b/g、Bluetooth(登録商標) LE、または赤外線)と、コントローラにおけるディスプレイの利用可能性と、デスクトップコンピュータ、ラップトップコンピュータ、およびスマートフォンやタブレットなどのモバイルデバイスを含むコントローラデバイスのタイプと、コントローラ130上の利用可能な制御要素(たとえば、ボタン、選択可能なプリセットインジケータ)のタイプ、数、および性質とのうちの1つまたは複数に応じて、関連するオーディオ再生デバイス110の異なる機能および制御を提供することができる。
ネットワークコントローラは、主ネットワークコントローラ130aと副次ネットワークコントローラ130bとを含むことが可能である。主ネットワークコントローラ130aは、オーディオ再生デバイス110の(オーディオ再生デバイス110と主ネットワークコントローラ130aの間のUSB接続を介した)Wi-Fiネットワークへの接続のため、ユーザ向けのシステムアカウントの作成のため、音楽サービスのセットアップのため、再生のためのコンテンツのブラウズのため、オーディオ再生デバイス110上でのプリセット割当ての設定のため、オーディオ再生デバイス110に関する送り制御(たとえば、再生/ポーズ、早送り/巻戻し、その他)のため、コンテンツ再生(たとえば、単独室内再生または同期複数室内再生)のためのオーディオ再生デバイス110の選択のために利用可能である。主ネットワークコントローラ種別のデバイスは、デスクトップおよびラップトップコンピュータを含むことが可能である。
副次ネットワークコントローラ130bは、主ネットワークコントローラ130aの機能のうちの全部ではないが、そのうちのいくつかを提供し得る。たとえば副次ネットワークコントローラ130bは、主ネットワークコントローラ130aによって提供されるアカウントセットアップおよびアカウント管理の機能についてはそのすべてを提供しないことがある。副次ネットワークコントローラ130bは、音楽サービスセットアップのため、コンテンツのブラウズのため、オーディオ再生デバイス上のプリセット割当ての設定のため、オーディオ再生デバイスの送り制御のため、およびコンテンツ再生(単独室内または同期複数室内再生)のためのオーディオ再生デバイス110の選択のために使用されることがある。副次ネットワークコントローラ種別のデバイスは、スマートフォンやタブレットなどのモバイルデバイスを含むことが可能である。
補助コントローラ130cは、オーディオ再生デバイス(項目110、図1)のうちの関連する(たとえば、対となった)1つとワイヤレス式に(たとえば、Bluetooth(登録商標)低エネルギー(BTLE)および/またはIRを介して)通信する。補助コントローラ130cは、完全なまたは限定された機能を提供することがある。いくつかの例では、補助コントローラ130cは、デジタルオーディオソース120a、120b、120cの探索を含むコンテンツのブラウズのため、オーディオ再生デバイス110のうちの関連する1つの上でのプリセット割当ての設定のため、オーディオ再生デバイス110のうちの関連する1つの上でのプリセット割当ての選択のため、および関連するオーディオ再生デバイス110の送り制御(再生/ポーズ、その他)のために使用されることがある。一例では、補助コントローラ130cは、関連するオーディオ再生デバイス110で使用するために構成された固有のバッテリ駆動のワイヤレスリモート制御である。補助コントローラ130cは、関連する再生デバイス110に関するステータス情報を提供するために、ディスプレイまたはインジケータを含むことができる。
サーバ140は、ユーザのオーディオシステムアカウントと関連する情報を(たとえば、アカウントデータベース内に)包含したクラウドベースのサーバである。これには、システム100内のオーディオ再生デバイス110のリスト、デバイス診断情報、プリセット割当て、その他などのユーザアカウント情報を含む。サーバ140は、プリセット管理を目的として、またさらにはオーディオソース120の管理およびユーザのオーディオシステムアカウントの管理を目的としてオーディオ再生デバイス140によっておよびコントローラ130によって(たとえば、主ネットワークコントローラによって)接続されることになる。一般にコントローラ130(たとえば、ネットワークコントローラ130a、130b)はユーザのログイン詳細を用いてサーバ140にログインするとともに、要求された情報を協働のために「シンクダウン(sync down)する」。
オーディオ再生デバイス110とコントローラ130のうちの1つまたは複数とは、ローカルエリアネットワーク(LAN)150に結合されている。デジタルオーディオソース(たとえば、ネットワーク接続ストレージ(NAS)デバイス120b)のうちの1つまたは複数などの他のデバイスもLAN150に結合されることがある。LAN150は、有線式ネットワークとすること、ワイヤレス式ネットワークとすること、またはこれらの組合せとすることがある。一例では、LAN150内のデバイス(たとえば、オーディオ再生デバイス110やコントローラ130(たとえば、主および副次コントローラ130a、130b))は、IEEE802.11b/gなどの工業標準に基づいてLAN150にワイヤレス式に結合されている。LAN150は、自宅、オフィスまたは車内のネットワークを意味することがある。居宅のケースでは、オーディオ再生デバイス110は、自宅内の異なる部屋(たとえば、台所、居間、地下室、その他)に配置されることがある。LAN150内のデバイスは、ユーザ供給のアクセスポイント170(たとえば、ルータ)につながり、また引き続いて他のデジタルオーディオソース120(インターネットベースの音楽サービス120a)やサーバ140と通信するためにワイドエリアネットワーク(WAN)160(たとえば、インターネット)につながる。
特に、オーディオシステム100はプリセット(プリセット割当てとも呼ぶ)や最新履歴の管理を提供することができる。プリセットは、オーディオ再生デバイス110の各々の上に存在するプリセットインジケータ(6つのうちの1つ)からデジタル音楽ソース120と関連付けされたエンティティへの迅速なアクセスを提供することを目的としたコンテンツへの1組の(たとえば、6つの)ユーザ定義のショートカットである。いくつかのケースでは、プリセットインジケータをハードウェアボタンとすることが可能である。別法として、プリセットインジケータは、タッチ検知ディスプレイ上の領域によって規定された仮想ボタンとすることがある。個々のプリセットインジケータは数値識別子で表すことが可能である。
プリセットインジケータ(オーディオ再生デバイス110)は、関連するデジタルオーディオソースと無関係にそのそれぞれに割り当てられたエンティティへのアクセスを提供する。より具体的にはプリセットインジケータは、そのそれぞれに割り当てられたエンティティに対して、デジタルオーディオソースと無関係に1回押下アクセスを提供することが可能である。すなわち、プリセットインジケータを1回押下すると、当該プリセットインジケータに割り当てられたエンティティからのコンテンツに対するストリーミングおよびレンダリングが、当該エンティティを提供するオーディオソースと関係なく開始されることになる。その点においてプリセットは、オーディオソースと関係なく同じ方式の挙動であることにおいてソース不可知的(agnostic)であると言われる。いくつかのケースでは、その1回押下アクセスは、通常ではユーザに対してアカウント証明書によるログインを要求するようなアカウントベースのオーディオソースにアクセスするためにトークンを配布することによって容易にさせることが可能である。
プリセットは、ユーザの選択においてグローバルとすることもローカルとすることも可能である。ユーザは、たとえばユーザのシステムアカウントのセットアップ時にグローバルまたはローカルのオプションを選択することが可能である。ユーザのアカウントがグローバルプリセットを提供するように設定されている場合、オーディオ再生デバイスのうちの任意の1つに対するプリセット割当てがそれ以外のオーディオ再生デバイスの各々に対するそれぞれのプリセット割当てに対応するように(たとえば、オーディオ再生デバイスのうちの第1のデバイス上のプリセットインジケータ「1」がオーディオシステム100のそれ以外のオーディオ再生デバイス110のすべての上のプリセットインジケータ「1」として同じエンティティに割り当てられるように)、かつプリセット割当てのうちの1つがオーディオ再生デバイス110のうちの1つの上で変更された場合に、それ以外のオーディオ再生デバイス110の各々がそれ以外のオーディオ再生デバイスの各々に対する対応するプリセット割当てについて対応する変更がなされるようにして自動的に更新されるようにして、オーディオシステム100全体にわたるオーディオ再生デバイス110のすべての上でプリセット割当てが同期されることになる。プリセット割当ての同期は、オーディオ再生デバイス110間のサーバ140による通信とオーディオ再生デバイス110自体の間での通信との組合せを通じて管理される。グローバルプリセット割当てのコピーは、ユーザのアカウントと関連付けされた各オーディオ再生デバイス110上にローカルに記憶されており、またグローバルプリセット割当てのコピーはサーバ140上でもメンテナンスされている。
図2は、「グローバル」プリセットを管理する/同期させるステップを示したスイムレーン図200である。「スイムレーン」図は、そのプロセスにおける様々な「能動主体」間の関係を示すとともに、そのプロセスに関係するステップを規定するために使用され得る。図2(および、他のすべてのスイムレーン図)は本発明についてそのステップを実装する構成要素のハイレベルブロック図を等しく意味することがある。図2(および、スイムレーン図を利用した他のすべての図)のステップは、適当なハードウェアと組み合わせてコンピュータプログラムコード上に実装されることがある。このコンピュータプログラムコードは、ディスケット、ハードディスク、CD-ROM、DVD-ROMまたはテープなどの記憶媒体上、またさらには読出し専用メモリ(ROM)やランダムアクセスメモリ(RAM)などのメモリ記憶デバイスまたはメモリ記憶デバイスの収集体上に記憶されることがある。さらにコンピュータプログラムコードは、インターネットや何らかの他のタイプのネットワークを通じてワークステーションに転送することが可能である。
図2を参照すると、コントローラ210のうちの1つに関するレーン、オーディオ再生デバイスのうちの第1のデバイス212に関するレーン、それ以外のオーディオ再生デバイス214に関するレーン、およびサーバ216に関するレーンを含む4つのスイムレーンを示している。ステップ220において、第1のオーディオ再生デバイス(すなわち、オーディオ再生デバイスのうちの第1のデバイス110、図1)は、オーディオ再生デバイス上のプリセットインジケータのうちの1つに対する、デジタルオーディオソースのうちの1つと関連付けされたエンティティの割当てに関するユーザ入力を受け取る。いくつかのケースでは、ユーザは、オーディオ再生デバイス上のプリセットインジケータのうちの1つを押下することなどによって入力を直接オーディオ再生デバイスに提供する。別法として、ユーザは、入力をコントローラのうちの選択した1つの上のユーザインターフェースを介して提供する(218)ことがあり、またコントローラはこのユーザ入力を第1のオーディオ再生デバイスに伝送する(219)。
ステップ222において、第1のオーディオ再生デバイスは、ユーザ入力に基づいて1つまたは複数のプリセット割当てを更新する。更新は、オーディオ再生デバイス上でローカルに(たとえば、メモリ内に)記憶されたプリセット割当てに対応するデータを更新することを含むことが可能である。
ステップ224において、第1のオーディオ再生デバイスは、サーバ上に記憶された1組のプリセット割当てを更新するために1つまたは複数のプリセット割当てへの更新に関する情報をリモートサーバに送信する。更新情報は更新された1組のプリセット割当てを含むことがある。オーディオ再生デバイスは、ハイパーテキスト転送プロトコルを介してサーバと通信することがある。第1のオーディオ再生デバイスはたとえば、HTTP POSTコマンドを介してサーバに更新情報をアップロードすることがある。
サーバは、第1のオーディオ再生デバイスから更新情報を受け取る(226)とともに、サーバ上に記憶された1組のプリセット割当てを更新する(228)。1組のプリセット割当てを更新することは、以前記憶したデータ(たとえば、以前記憶した1組のプリセット)を更新済み情報(たとえば、更新済みの1組のプリセット割当て)に置き換えることを含むことが可能である。
ステップ230において、第1のオーディオ再生デバイスは、オーディオシステム内のそれ以外のオーディオ再生デバイスの各々に連絡(たとえば、それ以外のオーディオ再生デバイスの各々への単独の通知)を送信し、1つまたは複数のプリセット割当てへの変更が存在することをそれ以外の再生デバイスに通知する。
ステップ232において、それ以外のオーディオ再生デバイスは、第1のオーディオ再生デバイスから通知を受け取る。プリセット割当てへの変更の通知の受取りに応答して、それ以外のオーディオ再生デバイスはそのプリセット割当てをサーバと同期させる。この同期を実現するためにオーディオ再生デバイスの各々は、プリセット割当てへの変更に対応する更新情報を要求する連絡(たとえば、HTTP GET要求)をサーバに送信する(234)。
ステップ236において、サーバは、それ以外のオーディオ再生デバイスからの要求を受け取る。それ以外のオーディオ再生デバイスから受け取った要求に応答してサーバは、それ以外のオーディオ再生デバイスの各々に更新情報(更新済みの1組のプリセット割当てからなることがある)を提供することによって応答する(238)。
ステップ240において、それ以外の再生デバイスは、サーバから更新情報を受け取る。更新情報を受け取るとそれ以外の再生デバイスは、そのそれぞれのプリセット割当てを(すなわち、プリセットデータを更新することによって)更新する(242)。更新は、旧データを除去(削除)するとともに新たな更新済みデータで置き換えることを含むことが可能である。たとえば更新は、以前記憶した1組のプリセット割当てを置き換えるとともに更新済みの1組のプリセット割当てで置き換えることを含むことが可能である。これらのステップの後はオーディオ再生デバイスのすべてが同じプリセット割当てを有することになり、またサーバはプリセット割当てのコピーを有することになる。
別法として、ユーザがローカルプリセットを提供するようにユーザのシステムアカウントを設定するように選択した場合にそのプリセット割当ては、オーディオ再生デバイス110のうちの任意の1つに対するプリセット割当てがそれ以外のオーディオ再生デバイス110のいずれかの上のプリセット割当てに必ずしも対応する必要がないようなデバイス特異的となる。それぞれのローカルプリセット割当てのコピーはユーザのアカウントと関連付けされた各オーディオ再生デバイス110上にローカルに記憶されており、また各オーディオ再生デバイス110に関するローカルプリセット割当てのコピーはサーバ140上でもメンテナンスされている。
図3は、ローカルプリセットを管理するためのステップを示したスイムレーン図300である。コントローラ310のうちの1つに関するレーン、オーディオ再生デバイスのうちの第1のデバイス312に関するレーン、およびサーバ316に関するレーンを含む3つのスイムレーンを示している。ステップ320において、選択されたオーディオ再生デバイス(すなわち、オーディオ再生デバイス110のうちの選択した1つ、図1)は、オーディオ再生デバイス上のプリセットインジケータのうちの1つに対する、デジタルオーディオソースのうちの1つと関連付けされたエンティティの割当てに関するユーザ入力を受け取る。いくつかのケースでは、ユーザは、プリセットインジケータのうちの1つを押下することなどによって入力を直接オーディオ再生デバイスに提供する。別法として、ユーザは、コントローラのうちの1つにあるユーザインターフェースを介して入力を提供することがあり(318)、またコントローラは選択されたオーディオ再生デバイスにユーザ入力を伝送している(319)。
ステップ322において、選択されたオーディオ再生デバイスは、ユーザ入力に基づいて1つまたは複数のプリセット割当てを更新する。更新は、選択されたオーディオ再生デバイス上でローカルに(たとえば、メモリ内に)記憶されたプリセット割当てに対応するデータを更新することを含むことが可能である。
ステップ324において、選択されたオーディオ再生デバイスは、サーバ上に記憶された1組のプリセット割当てを更新するために1つまたは複数のプリセット割当てへの更新に関する情報をリモートサーバに送信する。更新情報は更新済みの1組のプリセット割当てを含むことがある。オーディオ再生デバイスは、ハイパーテキスト転送プロトコルを介してサーバと通信することがある。第1のオーディオ再生デバイスはたとえば、HTTP POSTコマンドを介してサーバに更新情報をアップロードすることがある。
サーバは、選択されたオーディオ再生デバイスから更新情報を受け取る(326)とともに、サーバ上に記憶された1組のプリセット割当てを更新する(328)。1組のプリセット割当てを更新することは、以前記憶したデータ(たとえば、以前記憶した1組のプリセット)を更新済み情報(たとえば、更新済みの1組のプリセット割当て)に置き換えることを含むことが可能である。プリセットがローカルに設定されるとサーバは、オーディオシステム内の各オーディオ再生デバイスに関する単独の1組のプリセットをメンテナンスする(記憶するおよび更新する)ことになる。
サーバ上でのオーディオ再生デバイスの各々に関するそれぞれのプリセット割当てのコピーのメンテナンスは、たとえば個々のデバイスがすでにそれぞれのプリセット割当てによってプログラム済みとなった後にユーザによってローカル設定からグローバル設定への変更が選択された場合に有益となり得る。このような状況では、サーバは、オーディオ再生デバイスのうちからマスタデバイスの役割をさせる1つを選択するように(たとえば、コントローラのうちの1つを介して)ユーザにプロンプトを出すことになる。サーバは次いで、選択されたマスタオーディオ再生デバイスに関するプリセット割当てを1組のグローバルプリセット割当てとして設定することが可能であり、またオーディオシステム全体にわたってプリセットを同期させるようにこのグローバルプリセット割当てをオーディオシステム内のそれ以外のオーディオ再生デバイスに提供することが可能である。
「最新履歴リスト」(「最新履歴」とも呼ぶ)は、再生するようにユーザが選択したことがあるコンテンツから追記されたエンティティのリストである。最近エンティティは、インターネットラジオ局(たとえば、Pandora(登録商標)およびvTuner(登録商標)に関する)と、Spotify(登録商標)および記憶済みの音楽に関して選択した「トラックグループ」と、を含むことが可能である。「トラックグループ」は、ユーザがブラウズまたは検索をしたのがどのようなものか(たとえば、アルバム、プレイリスト、ジャンル>全部、アーティスト>全部、その他)に基づいた目下再生中のトラックの「ペアレント」である。コントローラ130(またいくつかのケースでは、オーディオ再生デバイス110)は、ユーザに最新履歴リストを表示するとともに、ユーザに対してこの最新履歴リストのブラウズおよびそこからのエンティティの選択を可能とさせることによって最新履歴へのアクセスを提供することが可能である。
最新履歴は、所定の数のエンティティ(たとえば、50〜100のエンティティ)に限定することが可能である。別法としてまたは追加として、その最新履歴は日付によって限定されることがある。たとえば最新履歴は、昨日中、先月中、前年中、その他にユーザがアクセスしたエンティティに限定し、これより古いエントリをリストから排除することがある。
図4は、コントローラ130(図1)のうちの1つによって提供できかつ最新履歴リスト410を表示する例示的なユーザインターフェース400である。最新履歴エントリは時間的に逆順で提示することが可能である。「現在再生中」(目下再生中の)トラックは(存在する場合)最新履歴をユーザに表示させるときにリストの最上位に提示する(412)ことが可能であり、またそれを再生している場所(すなわち、オーディオ再生デバイスのどれで再生されているか)の指示を含むことがある。
最新履歴リストに含まれる他のエンティティは、最後に起動されて以降の時間の指示と一緒に表示することが可能である。同じ日の中ではこれは、「X時間」+「Y分」+「前」という形式をとることが可能である(414)。1日前(たとえば、24時間前から48時間前の間)については、「昨日」が表示される(416)。1日以上前(たとえば、48時間以上)では、その時間を「X日」+「前」という形式で表示することが可能である(418)。
以下で説明することにするがコントローラ130は、オーディオ再生デバイス110上の音楽選択をデバイス単位で(すなわち、オーディオ再生デバイス単位で)制御するために利用することが可能である。最新履歴リストから「現在再生中」エンティティを選択すると、対応する音楽ストリームが結合される(まだ結合されていない場合)。
プリセットの場合と同様に最新履歴は、ユーザの選択においてグローバル(ユーザのアカウントと関連付けされたすべてのオーディオ再生デバイスに適用される)とすることも、ローカル(デバイス特異的)とすることも可能である。プリセットと最新履歴の両方についてローカル/グローバルの同じトグルを活用することが可能である。すなわち、プリセットと最新履歴をグローバルにするかローカルにするかを1つの「グローバル/ローカル」設定で指令することが可能である。いくつかのケースでは、デフォルト設定は「グローバル」である。
図5は、グローバル最新履歴を管理するためのステップを示したスイムレーン図500である。図5には、コントローラ510のうちの選択した1つに関するレーン、オーディオ再生デバイスのうちの第1のデバイス512に関するレーン、それ以外のオーディオ再生デバイス514に関するレーン、およびサーバ516に関するレーンを含む4つのスイムレーンを示している。ステップ520において、第1のオーディオ再生デバイス(すなわち、オーディオ再生デバイスのうちの第1のデバイス110、図1)は、ストリーミング式オーディオを提供するためにオーディオソースのうちの1つと関連付けされたエンティティの選択に関するユーザ入力を受け取る。この点において、ユーザはコントローラのうちの1つを介して入力を提供する(518)ことがあり、またコントローラはこのユーザ入力を第1のオーディオ再生デバイスに伝送することが可能である(519)。
ステップ522において、第1のオーディオ再生デバイスは、最近に選択されたエンティティを含めるために、当該オーディオ再生デバイス上にローカルに(たとえば、メモリ内に)記憶された最新履歴リストを更新する。
ステップ524において、第1のオーディオ再生デバイスは、サーバ上に記憶された最新履歴リストを更新するために最新履歴リストに対する更新に関する情報をリモートサーバに送信する。更新情報は更新済みの最新履歴リストを含むことがある。オーディオ再生デバイスは、ハイパーテキスト転送プロトコルを介してサーバと通信することがある。第1のオーディオ再生デバイスはたとえば、HTTP POSTコマンドを介してサーバに更新情報をアップロードすることがある。
サーバは、第1のオーディオ再生デバイスから更新情報を受け取る(526)とともに、サーバ上に記憶された最新履歴リストを更新する(528)。最新履歴リストを更新することは、以前記憶したデータ(たとえば、以前記憶した最新履歴リスト)を更新済み情報(たとえば、更新済み最新履歴リスト)に置き換えることを含むことが可能である。
ステップ530において、第1のオーディオ再生デバイスは、オーディオシステム内のそれ以外のオーディオ再生デバイスの各々に連絡(たとえば、それ以外のオーディオ再生デバイスの各々への単独の通知)を送信し、最新履歴リストへの変更が存在することをそれ以外の再生デバイスに通知する。
ステップ532において、それ以外のオーディオ再生デバイスは、第1のオーディオ再生デバイスから通知を受け取る。最新履歴リストへの変更の通知の受取りに応答してそれ以外のオーディオ再生デバイスは、最新履歴リストに関するそのローカルで記憶されたコピーをサーバと同期させる。この同期を実現するために、オーディオ再生デバイスの各々は、最新履歴リストへの変更に対応する更新情報を要求する連絡(たとえば、HTTP GET要求)をサーバに送信する(534)。
ステップ536において、サーバは、それ以外のオーディオ再生デバイスからの要求を受け取る。それ以外のオーディオ再生デバイスから受け取った要求に応答してサーバは、それ以外のオーディオ再生デバイスの各々に更新情報(更新済みの最新履歴リストからなることがある)を提供することによって応答する(538)。
ステップ540において、それ以外の再生デバイスは、サーバから更新情報を受け取る。更新情報を受け取るとそれ以外の再生デバイスは、最新履歴リストのそのそれぞれのコピーを(すなわち、最新のデータを更新することによって)更新する(542)。更新は、旧データを除去(削除)するとともに新たな更新済みデータで置き換えることを含むことが可能である。たとえば更新は、以前記憶した最新履歴リストを置き換えるとともに更新済みの最新履歴リストで置き換えることを含むことが可能である。これらのステップの後はオーディオ再生デバイスのすべてが同じ最新履歴リストを有することになり、またサーバは最新履歴リストのコピーを有することになる。
ユーザがコントローラのうちの1つを用いて最新履歴をブラウズする際にコントローラは、ユーザに対して表示するためにオーディオ再生デバイスのうちの選択した1つの上にローカルに記憶された最新履歴リストを取り出すことになる。したがって最新履歴がグローバルに設定されているときにユーザには、コントローラを通じた制御のためにユーザがオーディオ再生デバイスのうちのどの1つのデバイスを選択したかと関係なしに、エンティティの同じリストが提示されることになる。
図6は、ローカル最新履歴を管理するためのステップを示したスイムレーン図600である。コントローラ610のうちの1つに関するレーン、オーディオ再生デバイスのうちの選択した1つに関するレーン612、およびサーバに関するレーン616を含む3つのスイムレーンを示している。ステップ620において、選択されたオーディオ再生デバイス(すなわち、オーディオ再生デバイス110のうちの選択した1つ、図1)は、ストリーミング式オーディオを提供するためにオーディオソースのうちの1つと関連付けされたエンティティの選択に関するユーザ入力を受け取る。この点において、ユーザはコントローラのうちの1つを介して入力を提供する(618)ことがあり、またコントローラはユーザ入力を第1のオーディオ再生デバイスに伝送する(619)ことが可能である。
ステップ622において、選択されたオーディオ再生デバイスは、最近に選択されたエンティティを含めるために、当該オーディオ再生デバイス上にローカルに(たとえば、メモリ内に)記憶された最新履歴リストを更新する。
ステップ624において、選択されたオーディオ再生デバイスは、サーバ上に記憶された最新履歴リストを更新するために最新履歴リストへの更新に関する情報をリモートサーバに送信する。この更新情報は更新済みの最新履歴リストを含むことがある。オーディオ再生デバイスは、ハイパーテキスト転送プロトコルを介してサーバと通信することがある。第1のオーディオ再生デバイスはたとえば、HTTP POSTコマンドを介してサーバに更新情報をアップロードすることがある。
サーバは、選択されたオーディオ再生デバイスから更新情報を受け取る(626)とともに、サーバ上に記憶された最新履歴リストを更新する(628)。最新履歴リストを更新することは、以前記憶したデータ(たとえば、以前記憶した最新履歴リスト)を更新済み情報(たとえば、更新済み最新履歴リスト)に置き換えることを含むことが可能である。したがって、最新履歴がローカルに設定されているときにユーザには、コントローラを通じた制御のためにユーザが選択したオーディオ再生デバイスによって最近にアクセスを受けたエンティティに対応するエンティティのデバイス特異的リストが提示されることになる。サーバは、オーディオシステム内の各オーディオ再生デバイスに関する単独の最新履歴リストをメンテナンスすることになる。
サーバ上でのオーディオ再生デバイスの各々に関するそれぞれの最新履歴リストのコピーのメンテナンスは、たとえば個々のデバイスがすでにそのそれぞれの最新履歴リストを監督した後にユーザによってローカル設定からグローバル設定への変更が選択された場合に有益となり得る。このような状況ではサーバは、オーディオ再生デバイスのうちからマスタデバイスの役割をさせる1つを選択するように(たとえば、コントローラのうちの1つを介して)ユーザにプロンプトを出すことが可能である。サーバは次いで、選択されたマスタオーディオ再生デバイスに関する最新履歴リストを1組のグローバル最新履歴リストとして設定することが可能であり、またオーディオシステム全体にわたって最新履歴リストを同期させるようにこのグローバル最新履歴リストをオーディオシステム内のそれ以外のオーディオ再生デバイスに提供することが可能である。
オーディオ再生デバイス
ここで、図7A〜図7Cを参照しながら例示的なオーディオ再生デバイス110についてさらに詳細に説明することにする。図7Aを参照すると、オーディオ再生デバイス110は筐体710を含んでおり、またこの筐体710上には目下再生中の(「現在再生中」)音楽に関する情報およびプリセットに関する情報をユーザに提供可能なグラフィックインターフェース712(たとえば、OLEDディスプレイ)を存在させている。画面714には、1つまたは複数の電気音響変換器715(図7C)を潜ませている。オーディオ再生デバイス110はさらにユーザ入力インターフェース716を含む。図7Bに示したようにユーザ入力インターフェース716は、図示した例ではハードウェアボタンとしている複数のプリセットインジケータ718を含む。プリセットインジケータ718(1〜6と番号付与)はユーザに対してこれらのボタンに割り当てられたエンティティへの簡単な1回押下アクセスを提供する。すなわち、プリセットインジケータ718のうちの選択された1つを1回押下すると、割り当てられたエンティティからのコンテンツに対するストリーミングおよびレンダリングが開始される。
割り当てられたエンティティは、単一のオーディオ再生デバイス110が様々な異なるデジタルオーディオソースへの1回押下アクセスを提供可能とするようにデジタルオーディオソース(項目120a、120b、120c、図1)のうちの異なる1つと関連付けさせることが可能である。一例では割り当てられたエンティティには、少なくとも(i)デジタル音楽のユーザ定義のプレイリストと(ii)インターネットラジオ局とを含む。別の例では、デジタルオーディオソースは複数のインターネットラジオサイトを含み、かつ割り当てられたエンティティはこれらのインターネットラジオサイトによって提供される個々のラジオ局を含む。
特に、プリセットインジケータ718は、少なくともユーザから見たときに、どのエンティティが割り当てられているかおよびデジタルオーディオソースのどれが割り当てられたエンティティを提供するかと関係なく同じ方式で動作している。すなわち各プリセットインジケータ718はその割り当てられたエンティティに対して、当該エンティティがNASデバイスによって提供されるデジタル音楽のユーザ定義のプレイリストであるかインターネット音楽サービスによって提供されるインターネットラジオ局であるかによらず1回押下アクセスを提供することが可能である。
図7Cを参照すると、オーディオ再生デバイス110はさらに、ネットワークインターフェース720、プロセッサ722、オーディオハードウェア724、様々なオーディオ再生デバイス構成要素に電力供給するための電源726、およびメモリ728を含む。プロセッサ722、グラフィックインターフェース712、ネットワークインターフェース720、プロセッサ722、オーディオハードウェア724、電源726およびメモリ728の各々は様々なバスを用いて相互接続されており、また構成要素のうちのいくつかは共通のマザーボード上に装着されることも適当な他の方式で装着されることもある。
ネットワークインターフェース720は、オーディオ再生デバイス110と、コントローラ(たとえば、項目130a〜c、図1)、サーバ(項目140、図1)、オーディオソース(項目120、図1)および他のオーディオ再生デバイス110との1つまたは複数の通信プロトコルを介した通信を提供する。ネットワークインターフェース720は、ワイヤレスインターフェース730または有線式インターフェース732のいずれか、あるいはこれら両者を提供することがある。ワイヤレスインターフェース730はオーディオ再生デバイス110に対して、IEEE802.11b/gなどの通信プロトコルに従った他のデバイスとのワイヤレス式の通信を可能にする。有線式インターフェース732は、有線式(たとえば、イーサネット(登録商標))接続を介してネットワークインターフェース機能を提供する。
いくつかのケースでは、ネットワークインターフェース720はまた、Apple AirPlay(登録商標)(オーディオ、ビデオおよび写真をデバイス間での関連メタデータと一緒にワイヤレスでストリーミングすることを可能にするApple Inc.(本社:Cupertino、California)によって開発された独自のプロトコルスタック/スイート)をサポートするためのネットワークメディアプロセッサ734を含むことがある。たとえばユーザがiPhone(登録商標)やiPad(登録商標)デバイスなどのAirPlay(登録商標)可能なデバイスを、LAN150に接続する場合にユーザは、ネットワーク接続のオーディオ再生デバイス110に対してApple AirPlay(登録商標)を介して音楽をストリーミングすることが可能である。適当なネットワークメディアプロセッサの1つは、SMSC(Hauppauge、New York)から入手可能なDM870プロセッサである。ネットワークメディアプロセッサ734は、ネットワークアクセス(すなわち、ネットワークメディアプロセッサ734を通じてWi-Fiネットワークおよび/またはイーサネット(登録商標)接続を提供可能)と、AirPlay(登録商標)オーディオと、を提供する。AirPlay(登録商標)オーディオ信号は、ダウンストリーム処理および再生のためにI2Sプロトコル(デジタルオーディオデバイスを接続するために使用される電気的シリアルバスインターフェース標準)を用いてプロセッサ722に伝えられる。特にオーディオ再生デバイス110は、AirPlay(登録商標)および/またはDLNA(登録商標)のUPnPプロトコルを介したオーディオストリーミング、および1つのデバイス内に統合されたすべてをサポートすることが可能である。
ネットワークパケットから到来する他のすべてのデジタルオーディオは、真っ直ぐにネットワークメディアプロセッサ734からUSBブリッジ736を通じてプロセッサ722まで来るとともにデコーダ、DSPに入り、また最終的には電気音響変換器715を介して再生(レンダリング)される。
ネットワークインターフェース710はまた、Bluetooth(登録商標)低エネルギーアプリケーション向けの(たとえば、Bluetooth(登録商標)可能なコントローラ(項目130c、図1)を備えたワイヤレス通信向けの)Bluetooth(登録商標)低エネルギー(BTLE)システムオンチップ(SoC)738を含むことも可能である。適当なBTLE SoCの1つは、Texas Instruments(本社:Dallas、Texas)から入手可能なCC2540である。
ストリーミング式データは、ネットワークインターフェース720からプロセッサ722に伝えられる。プロセッサ722は、オーディオ再生デバイス内の(たとえば、とりわけデジタル信号処理、復号化および等化の機能を実行するための)命令(メモリ728に記憶された命令を含む)を実行することが可能である。プロセッサ722は、単独の複数のアナログおよびデジタルプロセッサを含むチップからなるチップセットとして実装されることがある。プロセッサ722はたとえば、ユーザインターフェースの制御子などオーディオ再生デバイス110の他の構成要素、オーディオ再生デバイス110によって実行されるアプリケーションに関する協調を提供することがある。適当なプロセッサの1つは、Texas Instrumentsから入手可能なDA921である。
プロセッサ722は処理済みのデジタルオーディオ信号を、デジタルオーディオ信号をアナログオーディオ信号に変換するための1つまたは複数のデジタル対アナログ(D/A)変換器を含むオーディオハードウェア724に提供する。オーディオハードウェア724はさらに、再生のために増幅済みのアナログオーディオ信号を電気音響変換器715に提供する1つまたは複数の増幅器を含む。さらにオーディオハードウェア724は、音響システム100の他のデバイスと共有するためのデジタルオーディオ信号を提供するためにアナログ入力信号を処理する回路を含むことがある。
メモリ728は、オーディオ再生デバイス110内に情報を記憶する。この点において、メモリ728は、上で検討したプリセットや最新情報などのアカウント情報を記憶することがある。メモリ728はまた、デジタルオーディオソース120(たとえば、図1のインターネットラジオサービス)への1回押下アクセスを容易にするための「トークン」向けにストレージを提供することがある。本明細書で使用する場合にトークンは、デジタルオーディオソース120によって提供され得る一意の識別子であって、オーディオ再生デバイス110がデジタルオーディオソース120にアクセスを試みるごとにユーザに証明書(たとえば、ユーザ名、パスワード、その他)の入力を要求することなくデジタルオーディオソース120がオーディオ再生デバイス110をユーザのアカウントと関連付けされるものとデジタルオーディオソース120により認識可能とさせる一意の識別子である。
メモリ728はたとえば、フラッシュメモリおよび/または不揮発性ランダムアクセスメモリ(NVRAM)を含むことがある。いくつかの実装形態では、情報キャリア内に命令(たとえば、ソフトウェア)が記憶されている。この命令は、1つまたは複数の処理デバイス(たとえば、プロセッサ722)によって実行されたときに、上に(たとえば、図2、図3、図5および図6に関連して)記載したプロセスなどの1つまたは複数のプロセスを実行する。この命令はまた、1つまたは複数のコンピュータ可読媒体またはマシン可読媒体などの1つまたは複数の記憶デバイス(たとえば、メモリ728、またはプロセッサ上のメモリ)によって記憶させることも可能である。この命令は、復号化(すなわち、ソフトウェアモジュールはデジタルオーディオストリームを復号化するためのオーディオcodecを含む)、またさらにはデジタル信号処理および等化を実行するための命令を含むことがある。
この命令はまた、ある種の「ブラウズ」機能を可能にするための命令を含むことがある。すなわち少なくともいくつかのケースでは、コントローラ(項目130a〜c、図1)は、オーディオ再生デバイス110向けのグラフィックリモート制御の役割をしており、デジタルオーディオソース120(図1)と直接通信していないが、その代わりにオーディオ再生デバイス110を介してデジタルオーディオソース120と通信する。
図8は、デジタルオーディオソース(項目120a〜c、図1)のうちの1つと関連付けされたエンティティ(たとえば、局)をブラウズするためのステップを示したスイムレーン図800である。図8には、コントローラのうちの選択した1つに関するレーン810、オーディオ再生デバイスのうちの選択した1つに関するレーン812、およびデジタルオーディオソースのうちの選択した1つに関するレーン813を含む3つのスイムレーンを示している。
ステップ820において、コントローラは、デジタルオーディオソースのうちの選択した1つ(すなわち、オーディオシステム内でコントローラによって提供されるユーザインターフェースを介してユーザが選択したデジタルオーディオソース)からの局(エンティティ)のリストを要求する入力をユーザから受け取る。ステップ822において、コントローラはこの要求を、オーディオ再生デバイスのうちの選択した1つ(すなわち、オーディオシステム内でコントローラによって提供されるユーザインターフェースを介してユーザが選択したオーディオ再生デバイス)に送信する。
ステップ824において、オーディオ再生デバイスのうちの選択した1つはコントローラから要求を受け取る。これに応答してオーディオ再生デバイスは、ルータおよびインターネット接続を介して選択されたデジタルオーディオソースに接続するとともに、ソースと関連付けされたエンティティのリスト(たとえば、局)を要求する(826)。
ステップ828において、デジタルオーディオソースのうちの選択された1つは、オーディオ再生デバイスからこの要求を受け取る。オーディオ再生デバイスからの要求に応答してオーディオソースは、利用可能なエンティティのリストをオーディオ再生デバイスに送信する(830)。オーディオ再生デバイスは、利用可能なエンティティのリストを受け取り(832)、かつオーディオ再生デバイスはこの利用可能なエンティティのリストをコントローラに送信する(834)。
コントローラは、オーディオ再生デバイスからこの利用可能なエンティティのリストを受け取り(836)、かつこのリストをユーザに対して表示させる(838)。
図9は、オーディオ再生デバイスハードウェアが筐体710と単独のデバイス(「ドングル900」)との間で分割されているようなオーディオ再生デバイス110'の別の実装形態を示している。ドングル900は有線式接続902を介して筐体710に接続することが可能である。図9の図示した例ではドングル900のハウジング904内に、ネットワークインターフェース720、プロセッサ722、オーディオハードウェア724および電源726が配置されている。筐体710上には、グラフィックインターフェース712およびユーザ入力インターフェース716が配置されている。筐体710は電気音響変換器715を囲繞しており、またローカルオーディオソース(たとえば、筐体710内のメモリに記憶されたオーディオコンテンツ、オーディオ再生デバイスに接続されたCD、オーディオ再生デバイス110'に接続されたIPodなどのポータブル音楽デバイス、その他)からのオーディオコンテンツを処理、変換および増幅するための追加の電子回路906(たとえば、プロセッサ、増幅器、D/A変換器、A/D変換器、電源、その他)を含むことがある。
コントローラ
図10を参照すると、例示的なコントローラ130は構成要素の中でもとりわけ、プロセッサ1000、メモリ1010、ディスプレイ1012、ユーザ入力インターフェース1014およびネットワークインターフェース1016を含む。コントローラ130にまた、ハードドライブ、マイクロドライブや他のデバイスなど追加のストレージを提供するための大容量記憶デバイス1018が設けられることがある。プロセッサ1000、メモリ1010、ディスプレイ1012およびネットワークインターフェース1016の各々は、様々なバスを用いて相互接続されており、また構成要素のうちのいくつかは共通のマザーボード上に装着されることも適当な他の方式で装着されることもある。
プロセッサ1000は、メモリ1010内または副次記憶デバイス(たとえば、大容量記憶デバイス1018)内に記憶された命令を含め、コントローラ130内の命令(たとえば、ソフトウェア)を実行することが可能である。プロセッサ1000は、単独の複数のアナログおよびデジタルプロセッサを含むチップからなるチップセットとして実装されることがある。プロセッサ1000はたとえば、ユーザインターフェースの制御子などコントローラ130の他の構成要素、コントローラ130によって実行されるアプリケーション、およびコントローラ130によるネットワーク通信に関する協調を提供することがある。プロセッサ1000は、ディスプレイ1012およびユーザ入力インターフェース1014を通じてユーザと通信することがある。
プロセッサ1000は、ディスプレイ1012に結合された表示インターフェース1020を通じてユーザと通信することがある。ディスプレイ1012は、LCDモニタまたはタッチ検知ディスプレイ(たとえば、モバイルデバイスの場合)を含むことがある。表示インターフェース1020は、ユーザに対するグラフィックや他の情報をプリセットするようにディスプレイ1012を駆動するための適当な回路を備えることがある。
ユーザ入力インターフェース1014は、キーボード、マウスなどのポインタデバイス、および/またはタッチ検知ディスプレイといった1つまたは複数のユーザ入力デバイスを含むことがある。いくつかのケースでは、ディスプレイ1012およびユーザ入力インターフェース1014の機能を提供するために同じデバイス(たとえば、タッチ検知ディスプレイ)が利用されることがある。
ネットワークインターフェース1016は、オーディオ再生デバイス110上の対応するネットワークインターフェース(項目720、図7C)を介したオーディオ再生デバイスのうちの1つまたは複数(項目110、図1)とのワイヤレス通信(たとえば、Wi-Fi、Bluetooth(登録商標)、IR、その他)を容易にする。
メモリ1010はコントローラ130内に情報を記憶する。いくつかの実装形態では、メモリ1010は、揮発性記憶ユニット(または、複数のユニット)である。いくつかの実装形態では、メモリ1010は、不揮発性メモリユニット(または、複数のユニット)である。メモリ1010はまた、磁気ディスクや光ディスクなど別の形態のコンピュータ可読媒体とすることがある。
大容量記憶デバイス1018は、コントローラ130向けに大容量記憶を提供することが可能である。いくつかの実装形態では、大容量記憶デバイス1018は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイスまたはテープデバイスなどのコンピュータ可読媒体、フラッシュメモリや他の同様の半導体メモリデバイス、あるいはデバイスのアレイとすることや、これらを包含することがある。
命令(たとえば、ソフトウェア)を情報キャリア内に記憶することが可能である。この命令は、1つまたは複数の処理デバイス(たとえば、プロセッサ1000)によって実行されると、上で(たとえば、図2、図3、図5、図6および図8を参照しながら)記載したプロセスなどの1つまたは複数のプロセスを実行する。この命令はまたコンピュータ可読媒体やマシン可読媒体(たとえば、メモリ1010、記憶デバイス1018、またはプロセッサ1000内のメモリ)など1つまたは複数の記憶デバイスによって記憶することも可能である。
図11を参照すると、コントローラソフトウェアは、ユーザアプリケーション1100、DLNA(登録商標)サーバデーモン1110およびUSBドライバ1112を含むことが可能である。ユーザアプリケーション1100は、ユーザによって起動されており、またRegion Iconコマンドに応答してデーモンから開始することが可能である。ユーザアプリケーション1100は、システムアカウントの作成および管理のため(すなわち、ユーザのシステムアカウントを作成し管理するため)(1114)、オーディオ再生デバイスの登録および構成のため(1116)、ネットワーク管理のため(1118)、プリセット/最新管理のため(1120)、オーディオ再生デバイス向けの送り制御(たとえば、再生/ポーズ、巻戻し/早送り、その他)のため(1122)、オーディオ再生デバイス向けのファームウェア更新を開始するため(1124)、音楽サービスセットアップのため(1126)、およびコンテキスト反応性ヘルプのため(1128)のコンピュータで実行可能な命令(たとえば、ソフトウェアモジュール)を含む。これらの機能の各々は、対応するソフトウェアモジュールによって提供することが可能である。
DLNA(登録商標)サーバデーモン1110は、ユーザのコンピュータ(たとえば、iTunes、Windows Media Player、またはフォルダ内のファイル)からオーディオ再生デバイス110に音楽を提供する。DLNA(登録商標)サーバ1110は、システムサービスとしてインストールされており、コンピュータ(コントローラ130)がブートされると常に起動する。DLNA(登録商標)サーバデーモン1110はバックグラウンドで起動しているときにトレイアイコンで表示しており、ユーザアプリケーション1100がシャットダウンされたときにも音楽の供給を続けることが可能である。DLNA(登録商標)サーバデーモン1110は、選択された音楽ライブラリの供給を有効化および無効化するためのオプションをユーザに提供することが可能である。
USBドライバ1112は、ローカルUSB接続を通じてオーディオ再生デバイス110がコントローラ130とどのように通信するかを規定する。USBドライバ1112はデバイスドライバとしてインストールされる。いくつかのケースでは、USBドライバ1112は、標準USBドライバを指摘する単なる.INFファイル(すなわち、プレーンテキスト情報ファイル)である。USBドライバ1112は、オーディオ再生デバイス110がUSBを介して接続されたときにコントローラ130のオペレーティングシステムによってロードすることが可能である。
図12は、ユーザアプリケーション1100の様々なユーザインターフェース状態の概要を示している状態相互作用図である。図12を参照すると、ユーザアプリケーションは、セットアップ状態1210、チュートリアル状態1212、メインアプリケーション状態1214および設定状態1216という4つの主たるユーザインターフェース(UI)状態からなる。
ユーザアプリケーション1100が最初に起動されると、セットアップ状態1210が開始される。セットアップ状態1210は、対応するソフトウェアモジュール(図11)を介してネットワーク(たとえば、Wi-Fi/イーサネット(登録商標))セットアップ、システムアカウント作成、および音楽サービスセットアップを実行する。ユーザアプリケーション1100の最初の起動後、オーディオ再生デバイス110(図1)がUSBを介してコントローラ130(図1)に接続されたときにWi-Fiセットアップが自動的にトリガされる。
セットアップ状態1210が完了すると、ユーザに対してチュートリアルを見るか、あるいはこれをスキップして直接メインアプリケーション状態1214に進むかのオプションを与えるポップアップ1218がユーザに示される。ユーザがチュートリアルを見ることを選択した場合、チュートリアル状態1212が起動するとともにメインアプリケーションUI状態を使用する方法に関するステップバイステップ式の概要を提供する。上で言及したように副次ネットワークコントローラ130b(図1)は主ネットワークコントローラ103a(図1)のすべてを提供するとは限らない。より具体的には副次ネットワークコントローラ130bは、主ネットワークコントローラ130aが提供するセットアップ機能を提供しないことがあり、またこのため副次ネットワークコントローラ130bはステップ1218で開始されることがある。
チュートリアル1212が完了したとき、またはユーザがチュートリアルをスキップするように選択した場合、メインアプリケーション状態1214が起動する。メインアプリケーション状態1214はユーザがインターフェースするための主アプリケーション画面である。
ユーザは、メインアプリケーション状態1214を介して設定状態1216にアクセスすることが可能である(たとえば、設定はメインアプリケーション状態1214から選択可能なメニュー項目とすることが可能である)。設定状態1216は、システム設定を調整するためのインターフェースである。設定状態1216は、(i)アカウント設定を調整するため(たとえば、アカウントパスワードを変更する、オーディオシステムアカウントを削除する、その他のため)に、(ii)デバイス設定を調整するため(たとえば、ソフトウェアを更新する、デバイス名を変更する、その他のため)に、(iii)プリセットおよび最新履歴設定を調整するため(たとえば、ローカル設定とグローバル設定の間の変更のため)に、(iv)音楽サービス設定を調整するため(たとえば、音楽サービスを追加する、ローカルインターネットラジオの箇所を変更する、Pandora(登録商標)アカウントを編集する、別のPandora(登録商標)アカウントを接続するため)に、ならびに記憶済みの音楽設定を調整するため(たとえば、音楽ライブラリを追加または削除するため)に使用することが可能である。
図13は、セットアップ状態に関するハイレベルワークフローを示している。セットアップ状態1210は、ユーザのシステムネットワークにデバイス(たとえば、オーディオ再生デバイスおよび補助コントローラ)を追加するステップ(1310)、オーディオ再生デバイスソフトウェア更新のステップ(1312)、システムアカウント作成のステップ(1314)、および音楽セットアップのステップ(1316)という4つの主たるステップからなる。
セットアップ状態1210は一般に、オーディオ再生デバイス110がUSB接続を介してコントローラ130に接続されたときに始動される。これによって、オーディオシステムネットワークLAN150(図1)にデバイスを追加するステップが開始されており、USB接続のオーディオ再生デバイス110をどのようにしてLAN(項目150、図1)に接続する(たとえば、Wi-Fi接続を介するかイーサネット(登録商標)接続を介する)かをユーザに選択させるプロンプトを出すことによって開始される(1320)。ユーザがネットワーク接続のタイプを選択すると、ユーザにはネットワーク接続をセットアップするようにプロンプトが出される(1322)。これには、ネットワーク証明書を入力すること(たとえば、ネットワーク名を入力することや利用可能なネットワークのリストから選択することおよびネットワークがパスワード保護されている場合にはパスワードを入力すること)を含むことが可能である。
ネットワーク接続が確立されると、コントローラ130上のユーザインターフェースは、オーディオ再生デバイス110をコントローラ130から切断(すなわち、USB接続を切断)するとともに、ユーザが使用することを目的とする箇所にパワー供給するようにオーディオ再生デバイス110を接続するようにユーザに対してプロンプトを出し、次いでセットアップを完了するように復帰することが可能である。
次にユーザインターフェースは、補助コントローラ(BTLEコントローラ)を対形成するようにユーザに対してプロンプトを出すことが可能であり、またこの対形成プロセスを通るようにユーザを進ませることが可能である(1324)。次いでユーザは、追加のデバイスをセットアップするようにプロンプトを受ける可能性がある(1326)。追加のデバイスは、USBを介して接続するとともに、後で追加される各デバイスについて上述のステップを進めることによって追加することが可能である。
セットアッププロセスの次のステップ(1328)では、デバイスソフトウェアが更新される。コントローラは、ネットワーク接続のオーディオ再生デバイスに対してソフトウェア更新の有無についてチェックするためのコマンドを送信する(ソフトウェア更新は、サーバを通じるおよび/または単独のインターネットサービスを介することで利用可能となり得る)。コントローラは、何らかの更新が利用可能である場合にオーディオ再生デバイスを更新するようにユーザにプロンプトを出すことになり、さらに更新のためのコマンドをオーディオ再生デバイスに送信する。コントローラは、ユーザインターフェースを介してソフトウェアに更新進捗を指示することが可能であり、かつ何らかのエラーがある場合はポップアップウィンドウを表示することが可能である。
更新が完了した後、コントローラはオーディオシステムアカウントの作成に進むようにユーザをガイドすること、または既存のアカウントにサインインするようにユーザにプロンプトを出すことになる(1330)。システムアカウントは、コントローラとサーバの間の直接の対話を介してサーバ上で作成されることになる。
次にコントローラは、PC記憶の音楽を含むユーザ記憶の音楽ソース、NASデバイス、その他のセットアップ(1332)、またさらにはインターネットベースのオーディオソース(たとえば、Pandora(登録商標)、vTuner(登録商標)、その他)のセットアップ(1334)を含む音楽セットアップ(1316)に進むようにユーザをガイドする。
いくつかのケースでは、デジタルオーディオソースのセットアップの際にユーザは、アカウント証明書を入力するようにプロンプトを受けることがある。たとえば、ユーザのPandora(登録商標)アカウントをユーザのシステムアカウントに追加する際に、Pandora(登録商標)インターネットサービスはユーザにアカウント証明書を要求することがある。これに対してPandora(登録商標)は、サーバ上およびオーディオ再生デバイスの各々の上のメモリに記憶することが可能であり、かつオーディオ再生デバイスがその都度ログインを要求することなくリモートオーディオソースに引き続きアクセスできるようにする一意の識別子(「トークン」)を返すことになる。
図14Aは、インターネット音楽サービスなどのデジタルオーディオソースに関する音楽セットアップについてのステップを示したスイムレーン図である。図14Aには、コントローラのうちの1つに関するレーン1410、オーディオ再生デバイスのうちの選択した1つに関するレーン1412、および選択されたデジタルオーディオソースのうちの1つ(たとえば、Pandora(登録商標)などのインターネット音楽サービス)に関するレーン1414を含む3つのスイムレーンを示している。
ステップ1420において、コントローラは、インターネット音楽サービスへのアクセスを要求するユーザ入力を受け取り、またステップ1422において、オーディオ再生デバイスのうちの選択した1つにこの要求を送信する。
選択されたオーディオ再生デバイスは、コントローラから要求を受け取り(1424)、この要求をインターネット音楽ソースに送信する(1426)。インターネット音楽ソースは、要求を受け取り(1428)、ログイン証明書の要求によって応答する(1430)。
選択されたオーディオ再生デバイスは、証明書の要求を受け取り(1432)、この要求をコントローラに送信する(1434)。ステップ1436において、コントローラは、ログイン証明書の要求を受け取り、またステップ1438において、コントローラは、このログイン証明書の要求をユーザに対して表示する。
ステップ1440において、コントローラは、ユーザからログイン証明書を受け取り、またステップ1442において、コントローラは、そのログイン証明書を選択されたオーディオ再生デバイスに送信する。選択されたオーディオ再生デバイスはログイン証明書を受け取り(1444)、この証明書をインターネット音楽サービスに送信する(1446)。
ステップ1448において、インターネット音楽サービスは、ログイン証明書を受け取り、またステップ1450において、このユーザのアカウントを認証する。ユーザのアカウントが認証された場合、インターネット音楽サービスは選択されたオーディオ再生デバイスに対してアクセスを許可しトークンを返す(1452)。上で検討したようにトークンは、インターネット音楽サービスに対してユーザのインターネット音楽サービスアカウントについて識別およびデバイスの関連付けを可能にしており、これにより音楽サービスセットアップ後におけるログイン証明書を不要にすることができる。
選択されたオーディオ再生デバイスは、トークンを受け取り(1454)、このトークンを選択されたオーディオ再生デバイスのメモリ内に記憶する(1456)。トークンは次いで、オーディオシステム内の他のデバイスに配布し、これら他のデバイスがインターネット音楽サービスに同様にアクセスできるようにすることが可能である。
図14Bは、ある種のインターネット音楽サービスなどアカウントベースのデジタルオーディオソースにアクセスするためのトークンの配布のためのステップを示したスイムレーン図である。図14Bには、オーディオ再生デバイスのうちの第1のデバイスに関するレーン1460、オーディオシステムのそれ以外のオーディオ再生デバイスに関するレーン1462、およびリモートサーバに関するレーン1464を含む3つのスイムレーンを示している。オーディオ再生デバイスのうちの第1のデバイス(第1のオーディオ再生デバイス)は、図14Aに関連して上で説明したインターネット音楽サービスをセットアップするためにコントローラのうちの選択した1つが使用したオーディオ再生デバイスのうちの選択した1つに対応する。
ステップ1466において、第1のオーディオ再生デバイスは、インターネット音楽サービスから受け取ったトークンのコピーをサーバに送信する。サーバは、第1のオーディオ再生デバイスからトークンを受け取り(1468)、このトークンのコピーをサーバ上でローカルに(たとえば、メモリ内に)記憶する(1470)。
ステップ1472において、第1のオーディオ再生デバイスは、オーディオシステム内のそれ以外のオーディオ再生デバイスの各々に連絡(たとえば、それ以外のオーディオ再生デバイスの各々への単独の通知)を送信し、ユーザのアカウントへの変更が存在することを(すなわち、オーディオシステムに新たなデジタルオーディオソースが追加されたことを)それ以外の再生デバイスに通知する。
ステップ1474において、それ以外のオーディオ再生デバイスは、第1のオーディオ再生デバイスから通知を受け取る。通知の受取りに応答してオーディオ再生デバイスの各々は、ユーザのアカウントへの変更に対応する情報を要求する連絡をサーバに送信する(1476)。
ステップ1478において、サーバは、それ以外のオーディオ再生デバイスからの要求を受け取る。それ以外のオーディオ再生デバイスから受け取った要求に応答してサーバは、それ以外のオーディオ再生デバイスの各々にこの新たなアカウント情報(最近に追加されたインターネット音楽サービスに関するトークンのコピーからなることがある)の提供によって応答する(1480)。
ステップ1482において、それ以外の再生デバイスは、サーバからこの新たなアカウント情報(たとえば、トークンのコピー)を受け取る。更新情報を受け取るとそれ以外の再生デバイスは、ユーザのアカウント情報のローカル記憶のコピーを更新する(すなわち、記憶済みのデータに対してトークンを追加することによる)(1483)。
「トークン」を配布することは、ソース不可知的操作(すなわち、オーディオ再生デバイスがソースと関係なく同じ挙動となる)を提供するような(たとえば、オーディオ再生デバイス上のプリセットインジケータを介した)ソースへの1回押下アクセスを容易にすることに役立てることが可能である。このことは、オーディオ再生デバイス上のプリセットインジケータに対して、関連するデジタルオーディオソースと無関係にそのそれぞれに割り当てられたエンティティに対するアクセスを提供可能とさせるのに役立てることが可能である。
図15Aを参照すると、メインアプリケーション状態に関するユーザインターフェース1500は、オーディオ再生デバイス領域1510、プリセット領域1512およびソース領域1514を含む。オーディオ再生デバイス領域1510は、制御に利用可能なLAN(150、図1)上のオーディオ再生デバイス1516をリスト表示している。ユーザは、利用可能なデバイスのリストの中からオーディオ再生デバイス1516を選択することが可能である。目下選択されているデバイスはこの領域の中央にある。これが、現在再生中の情報、プリセットおよび最新履歴の表示の対象となったデバイスである。オーディオ再生デバイス領域1510は、選択されたデバイスのボリュームを制御するために使用可能なボリュームスライダ1518を含む。
プリセット領域は、選択されたオーディオ再生デバイス上のプリセットインジケータ(項目718、図7B)に対応するプリセットインジケータ1520(仮想ボタンの形態)のリストを提供する。このリストは、プリセットインジケータに割り当てられた対応するエンティティについてプリセットインジケータに関する数値識別子と一緒に記述したものを含むことが可能である。ユーザは、選択されたオーディオ再生デバイスで選択されたプリセットと関連付けされたプリセットの再生コンテンツを(たとえば、ダブルクリックによって)選択することが可能である。あるいは以下で検討するようにユーザは、プリセットに対してエンティティを割り当てるためにインターフェースを使用することが可能である。
ソース領域1514は、メインアプリケーションの2つのモードのうちの一方を表示する。メインアプリケーションのこの2つのモードは、「現在再生中」モード(図15A)および「エクスプローラ」モード(図15B)を含む。現在再生中モードではソース領域1514は、選択されたオーディオ再生デバイスにより再生中のコンテンツに関するアルバムアート1522を表示する。ソース領域1514は、再生しているコンテンツに関するオーディオソース1524に関する識別、またさらにはアーティスト名/アルバム名/トラック名などのソース特異的な現在再生中の情報1526を含む。現在再生中モードではソース領域1514はさらに、再生、ポーズ、スキップ順送り、その他などの送り機能を含み得るソース特異的なボタン1528を含む。さらにエクスプローラモードへのナビゲーションをユーザに可能にさせる「エクスプローラ」ボタン1530が表示される。
図15Bを参照すると、エクスプローラモードはユーザに対して、利用可能なコンテンツおよび特徴をブラウズすることを可能にさせている。エクスプローラモードではソース領域1514は、再生のためのコンテンツの選択、プリセットに割り当てるエンティティの選択、ヘルプコンテンツのアクセス、および/または設定の管理までユーザがナビゲーションできるようにする複数のリストのうちの1つを表示する。
トップレベルのエクスプローラリスト(図15B)には、デジタルオーディオソース(たとえば、vTuner(登録商標)によって提供されるグローバルおよび/またはローカルインターネットラジオ、記憶された音楽、Pandora(登録商標)、その他)への、最新履歴リストへの、ヘルプコンテンツへの、および設定UI状態へのリンク1532が含まれる。複数のアカウント(たとえば、そのすべてがユーザのシステムアカウントと関連付けされた複数のPandora(登録商標)アカウント)を有するオーディオソースは、最初にセットアップされたものがリストの最初に来るように日付を基準としてリスト表示されることがある。
オーディオソースを選択すると、ソース領域1514の選択されたソース(「グローバルインターネットラジオ」ソース(たとえば、vTuner(登録商標)によって提供される))と関連付けされたエンティティのサブリスト(図15C、エンティティのサブリストを表示)が開かれる。このエンティティのサブリストは上で検討したように、コントローラと、選択されたオーディオ再生デバイスと、選択されたオーディオソースと、の間の通信を介して作成される。「現在再生中」ボタン1534によってユーザは、現在再生中モードまでナビゲーションすることが可能となる。
図16A〜図16Cは、モバイルデバイスについて利用し得るメインアプリケーション向けのグラフィックユーザインターフェース1600の別の実装形態を示している。図16A〜図16Cの実装形態では、メインアプリケーションは、プリセットモード(図16A)、現在再生中モード(図16B)またはエクスプローラモード(図16C)という3つのモードのうちの1つのモードとすることが可能である。ユーザは、プリセットモード、現在再生中モードおよびエクスプローラモードの間をこれらのモードの間での左/右へのスワイプ/ナビゲーション操作によってナビゲーションすることが可能である。
図16Aを参照すると、メインアプリケーション向けのユーザインターフェース1600は、オーディオ再生デバイス領域1612、プリセット領域1614およびソース領域1616を含む。オーディオ再生デバイス領域1612は、制御のために利用可能なLAN(項目150、図1)上のオーディオ再生デバイスをリストしている。ユーザは、利用可能なデバイスのリストの中からオーディオ再生デバイスを選択することが可能である。オーディオ再生デバイス領域1612は、選択されたデバイスのボリュームを制御するために使用可能なボリュームスライダ1616を含む。
プリセット領域1614は、選択されたオーディオ再生デバイス上のプリセットインジケータに対応するプリセットインジケータ1620(仮想ボタンの形態)のリストを含む。プリセットインジケータ(項目718、図7B)は、各プリセットインジケータごとの対応する数値識別子によって識別される。ユーザは、選択されたオーディオ再生デバイスで選択されたプリセットと関連付けされたプリセットの再生コンテンツを(たとえば、ダブルクリックによって)選択することが可能である。
ソース領域1616は、メインアプリケーションのプリセットモード、現在再生中モードまたはエクスプローラモードを表示する。図16Aに示したプリセットモードではソース領域1616は、デバイスプリセットに関する追加の情報を表示する。この追加の情報は、プリセットに割り当てられた対応するエンティティについてプリセットボタンに関する数値識別子と一緒に記述したものを含むことが可能である。
現在再生中モード(図16B)ではソース領域1616は、選択されたオーディオ再生デバイスにより再生中のコンテンツに関するアルバムアート1618を表示する。ソース領域1616はさらに、再生しているコンテンツに関するオーディオソース1620の識別、またさらにはアーティスト名/アルバム名/トラック名などのソース特異的な現在再生中情報1622を含む。現在再生中モードではソース領域1616はさらに、再生、ポーズ、スキップ順送り、その他などの送り機能を含み得るソース特異的なボタン1624を含む。
エクスプローラモード(図16C)によってユーザは、利用可能なコンテンツおよび特徴をブラウズすることが可能となる。エクスプローラモードではソースウィンドウは、再生のためのコンテンツの選択、プリセットに割り当てるエンティティの選択、ヘルプコンテンツのアクセス、および/または設定の管理までユーザがナビゲーションできるようにする複数のメニューのうちの1つを表示する。
トップレベルのエクスプローラリストには、利用可能なオーディオソースへの、最新履歴への、ヘルプコンテンツへの、および設定UI状態へのリンクが含まれる。複数のアカウント(たとえば、そのすべてがユーザのシステムアカウントと関連付けされた複数のPandora(登録商標)アカウント)を有するオーディオソースは、最初にセットアップされたものがリストの最初に来るように日付を基準としてリスト表示されることがある。
オーディオソースを選択すると、ソースウィンドウ内の選択されたソースと関連付けされたエンティティのサブリストが開かれる。このエンティティのサブリストは、上で検討したように、コントローラと、選択されたオーディオ再生デバイスと、選択されたオーディオソースと、の間の通信を介して作成される。
図17は、コントローラからプリセットを設定するためのプロセス1700を示している。プロセス1700は、ユーザインターフェースのオーディオ再生デバイス領域からオーディオ再生デバイスを選択するステップ(1710)を含む。選択されたオーディオ再生デバイスは、デジタルオーディオソースと通信するためにコントローラが利用するデバイスとなる。プロセス1700はさらに、選択されたオーディオ再生デバイス上のプリセットインジケータに対してエンティティを割り当てるステップを含む(1712)。
この点において、プリセット割当ては、メインアプリケーションの「現在再生中」モードまたは「エクスプローラ」モードのいずれからも設定することが可能である。現在再生中モードからの割当ては、目下再生中のコンテンツと関連付けされたエンティティを、選択されたプリセットに対して割り当てることになる。
図18Aおよび図18Bは、デスクトップコンピュータやラップトップコンピュータ上の現在再生中モードからのプリセット割当ての設定を示した一連の画面表示を示している。図18Aおよび図18Bを参照すると、ユーザは(たとえば、ポインティングデバイス(マウス)を用いたクリックによるか、またはタッチ検知画面の場合にはタップ動作によって)プリセットインジケータ1800のうちの1つを選択するとともに、このプリセットインジケータをハイライト状態にさせる(図18A)ように保持する。選択されたプリセットインジケータ1800が所定の時間にわたって保持された後に、プリセットインジケータ1800は「現在再生中」エンティティに割り当てられることになる。このことは、プリセットインジケータ1800と関連付けされたテキストの変更によって示すことがある(たとえば図18Bに示したように、テキストは新たに関連付けされたエンティティの名称を反映するように更新されることがある)。新たなまたは更新されたプリセット割当ては、コントローラによって制御中の選択されたオーディオ再生デバイス1810(すなわち、オーディオ再生領域で選択されたデバイス)に対して有効である。
別法として、図19Aおよび図19Bに示したように、ユーザはプリセットインジケータ1900のうちの1つを右クリックし、右クリックメニュー1910から「プリセットを設定」を選択し、目下再生中のコンテンツと関連付けされたエンティティを選択されたプリセットインジケータ1900に割り当てられるように割り当てることが可能である。
別法として、図20Aおよび図20Bを参照すると、メインアプリケーション状態は「プリセットを設定」ボタン2010を備えたメニューバー2000を含むことがある。ユーザは、プリセットメニュー2012を表示するように「プリセットを設定」ボタン2010をクリックすることによってプリセット割当てを設定することが可能である。ユーザは、「現在再生中」コンテンツと関連付けされたエンティティ(たとえば、インターネットラジオ局)を割り当てる先のプリセットをプリセットメニュー2012から選択することが可能である。プリセット変更はプリセットインジケータ(図18B)と関連付けされた局名に対するテキストの変化によって指示されることがある。
図21A〜図21Cは、「現在再生中」モードからプリセットを設定するさらに別の方法を示している。ユーザは、ソース領域(図19A)内のクリック/タップ2100および保持が可能である。プリセットに割り当てようとするエンティティは、クリックした/タップしたエリア(図19B)のポップアップ2110内に出現する。またエンティティは、目標のプリセットインジケータ2112(図19C)上にドラッグアンドドロップされる。
図22Aおよび図22Bは、ブラウズモードにおいてプリセットを割り当てる方法を示している。ユーザは、エンティティのリスト2210からエンティティ2200を選択し、この選択したエンティティをプリセットインジケータ2212(図20A)までドラッグする。プリセット割当てはこの変更を反映するように更新される。これは、プリセットインジケータ2212(図20B)上でのテキスト更新によって反映させることが可能である。
別法として、プリセット割当ては、デバイスの筐体上でプリセットインジケータのうちの1つを押下し保持することによってオーディオ再生デバイス自体の上で設定または変更することが可能である。これによって、目下再生中のコンテンツと関連付けされたエンティティが選択されたプリセットインジケータに割り当てられることになる。
オーディオ再生デバイスのうちの1つの上でプリセット割当てが最初に設定されるか変更された後、そのプリセット割当ては図2に関連して上で説明したようにオーディオシステム全体にわたって同期させることが可能である。
サーバ
図23は、サーバ(項目140、図1)を実装するために利用可能な例示的なコンピューティングデバイス2300を示している。コンピューティングデバイス2300は、サーバ、ブレードサーバ、メインフレームおよび適当な他のコンピュータなど様々な形態のデジタルコンピュータを意味するように意図している。ここに示した構成要素、その接続および関係、ならびにその機能は、単に一例の意味であり、また限定を意味しない。
コンピューティングデバイス2300は、プロセッサ2310と、メモリ2312と、記憶デバイス2314と、メモリ2312および複数の高速拡張ポート2318につながる高速インターフェース2316と、低速拡張ポート2322および記憶デバイス2314につながる低速インターフェース2320と、を含む。プロセッサ2310、メモリ2312、記憶デバイス2314、高速インターフェース2316、高速拡張ポート2318および低速インターフェース2320の各々は、様々なバスを用いて相互接続されており、また共通のマザーボード上に装着されることも適当な他の方式で装着されることもある。プロセッサ2310は、高速インターフェース2316に結合されたディスプレイ2324などの外部の入力/出力デバイス上のGUI向けにグラフィック情報を表示するためにメモリ2312内または記憶デバイス2314上に記憶された命令を含むコンピューティングデバイス2300内で実行するための命令(たとえば、ソフトウェアプログラム)を処理することが可能である。他の実装形態では、複数のプロセッサおよび/または複数のバスが、複数のメモリや複数のタイプのメモリと一緒に適宜使用されることがある。さらに、その各々が必要な動作(たとえば、サーババンク、ブレードサーバのグループまたはマルチプロセッサシステムとして)の一部を提供するような複数のコンピューティングデバイスが接続されることがある。
メモリ2312は、コンピューティングデバイス2300内に情報を記憶する。いくつかの実装形態では、メモリ2312は揮発性記憶ユニット(または、複数のユニット)である。いくつかの実装形態では、メモリ2312は不揮発性メモリユニット(または、複数のユニット)である。メモリ2312はまた、磁気ディスクや光ディスクなど別の形態のコンピュータ可読媒体とすることがある。
記憶デバイス2314は、コンピューティングデバイス2300向けの大容量記憶を提供することが可能である。いくつかの実装形態では、記憶デバイス2314は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイスまたはテープデバイスなどのコンピュータ可読媒体、フラッシュメモリや他の同様の半導体メモリデバイス、あるいはストレージエリアネットワークや他の構成のデバイスを含むデバイスのアレイとすることや、これらを包含することがある。情報キャリア内に命令を記憶することが可能である。この命令は、1つまたは複数の処理デバイス(たとえば、プロセッサ2310)によって実行されると、上で(たとえば、図2、図3、図5、図6および図14Bを参照しながら)記載したプロセスなどの1つまたは複数のプロセスを実行する。この命令はまたコンピュータ可読媒体(たとえば、メモリ2312、記憶デバイス2314、またはプロセッサ2310上のメモリ)など1つまたは複数の記憶デバイスによって記憶することも可能である。記憶デバイス2314はデータベース2324向けのストレージを提供することがある。このデータベースはオーディオシステムアカウント情報を記憶するために使用することが可能である。
高速インターフェース2316はコンピューティングデバイス2300向けのバンド幅集約的な動作を管理している一方、低速インターフェース2320はよりバンド幅集約性が低い動作を管理している。このような機能配分は単なる一例である。いくつかの実装形態では、高速インターフェース2316は、メモリ2312に、ディスプレイ2322(たとえば、グラフィックスプロセッサまたはアクセラレータを通じる)に、また様々な拡張用カード(図示せず)を受け容れ得る高速拡張ポート2318に結合されている。この実装形態では、低速インターフェース2320は、記憶デバイス2314および低速拡張ポート2322に結合されている。様々な通信ポート(たとえば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット(登録商標))を含み得る低速拡張ポート2322は、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入力/出力デバイス、あるいはスイッチやルータなどのネットワークデバイスに、たとえばネットワークアダプタを介して結合されることがある。
コンピューティングデバイス2300は、図面に示したようないくつかの異なる形式で実装されることがある。たとえばこれは、標準サーバ2330として実装されることや、このようなサーバ2332からなるグループの形で複数実装されることがある。これはまた、ラックサーバシステムの一部として実装されることもある。
上に記載したシステムおよび方法の実装形態は、当業者には明らかであるようなコンピュータ構成要素およびコンピュータ実装のステップを備える。たとえば、コンピュータ実装のステップが、たとえばフロッピーディスク、ハードディスク、光ディスク、フラッシュROM、不揮発性ROMおよびRAMなどのコンピュータ可読媒体上のコンピュータで実行可能な命令として記憶され得ることは当業者であれば理解されよう。さらにコンピュータで実行可能な命令が、たとえばマイクロプロセッサ、デジタル信号プロセッサ、ゲートアレイ、その他などの多種多様なプロセッサ上で実行され得ることは当業者であれば理解されよう。さらにこの命令は、ハイレベル手続き言語および/またはオブジェクト指向プログラミング言語で、および/またはアセンブリ/マシン言語で実装されることがある。解説を容易にするために、本明細書にはコンピュータシステムの一部として上で説明したシステムおよび方法のステップまたは要素のうちすべてを記載してはいないが、当業者であれば各ステップまたは要素が対応するコンピュータシステムやソフトウェア構成要素を有し得ることを理解されよう。このようなコンピュータシステムおよび/またはソフトウェア構成要素はしたがって、その対応するステップや要素(すなわち、その機能)を記載することによって有効化されており、また本開示の趣旨の域内にある。
いくつかの実装形態について説明してきた。しかしながら、本明細書に記載した発明の概念の趣旨を逸脱することなく追加の修正が実施され得ること、またこれに従って他の実装形態が添付の特許請求の範囲の趣旨域内にあることを理解されよう。