特許第6752144号(P6752144)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

6752144インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法
<>
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000002
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000003
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000004
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000005
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000006
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000007
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000008
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000009
  • 6752144-インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6752144
(24)【登録日】2020年8月20日
(45)【発行日】2020年9月9日
(54)【発明の名称】インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス、システム及び方法
(51)【国際特許分類】
   G06F 21/10 20130101AFI20200831BHJP
   G06F 13/00 20060101ALI20200831BHJP
【FI】
   G06F21/10
   G06F13/00 358C
【請求項の数】2
【全頁数】24
(21)【出願番号】特願2016-537873(P2016-537873)
(86)(22)【出願日】2014年8月29日
(65)【公表番号】特表2016-529631(P2016-529631A)
(43)【公表日】2016年9月23日
(86)【国際出願番号】US2014053323
(87)【国際公開番号】WO2015031703
(87)【国際公開日】20150305
【審査請求日】2017年8月28日
(31)【優先権主張番号】14/014,847
(32)【優先日】2013年8月30日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】309039716
【氏名又は名称】株式会社ディーアンドエムホールディングス
(72)【発明者】
【氏名】コモンズ・クリストファー
(72)【発明者】
【氏名】ステッド・ブレンドン
【審査官】 吉田 歩
(56)【参考文献】
【文献】 米国特許出願公開第2013/0160146(US,A1)
【文献】 特開2013−150037(JP,A)
【文献】 中国特許出願公開第103166783(CN,A)
【文献】 特開2006−109278(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/10
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
プロセッサ及びメモリを備えるネットワーク化されたレンダリングデバイスによってマルチメディアレコードの再生のための認可を管理する方法であって、
レコードを識別するメタデータを含む楽曲をライブラリに受信するステップと、
前記ライブラリから選択された楽曲をプレイリストに追加するステップと、
前記楽曲のレコードを提供するソースを検索するステップと、
前記ソースが利用可能であるか否かを判断するステップと、
前記ソースが利用可能でない場合、前記楽曲を前記ライブラリ及び前記プレイリストから削除するステップと、
前記ソースが利用可能である場合、前記ソースに、前記レコードを前記レンダリングデバイスに送達することを認可するトークンを取得するステップと、
前記トークンが利用可能であるか否かを判断するステップと、
前記トークンが利用可能でない場合、前記楽曲を前記ライブラリ及び前記プレイリストから削除するステップと、
前記トークンが利用可能である場合、前記ソースに前記トークンを提供し、レンダリング可能な前記レコードの送信を前記ソースに要求するステップと、
前記トークンが有効であるか否かを判断するステップと、
前記トークンが有効でない場合、前記楽曲を前記ライブラリ及び前記プレイリストから削除するステップと、
前記トークンが有効である場合、前記レコードを前記ソースから受信し、前記受信した前記レコードをレンダリングした後、前記楽曲を前記プレイリストから削除すると共に前記ライブラリに留め再び前記プレイリストに追加可能になされるステップと、
を含む、方法。
【請求項2】
プロセッサ及びメモリを備えるネットワーク化されたレンダリングデバイスによってマルチメディアレコードの再生のための認可を管理する方法であって、
複数の認可済みソースから楽曲のレコードを提供する第1のソースを検索するステップと、
前記第1のソースの検索の結果、前記楽曲のレコードを提供する前記第1のソースを見つけ、それによって前記第1のソースが前記楽曲について利用可能であると判断する場合、前記第1のソースによって提供される前記楽曲のレコードを受信してレンダリングし、前記第1のソースが前記楽曲について利用可能でないと判断する場合、前記楽曲について利用可能な第2のソースをネットワーク検索し、前記第2のソースから前記楽曲のレコードをレンダリングすることをユーザが望む場合、前記第2のソースによって提供される前記楽曲のレコードを受信してレンダリングするステップと、
前記第2のソースを前記複数の認可済みソースに追加するステップと、
を含む、方法。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はネットワークマルチメディアに関し、より詳細には、ネットワーク化されたデジタルマルチメディアデバイス及びサービスに関する。
【背景技術】
【0002】
個人がインターネットを介してデジタルマルチメディアにアクセスすることを可能にする多くの技法が存在する。デジタルマルチメディアは、オーディオファイル及びビデオファイルを含む。インターネットを介してデジタルマルチメディアへのアクセスを提供することの1つの課題は、デジタルマルチメディアの演奏者、発行者及び所有者のライセンス付与権利を確保することである。デジタルマルチメディア配信の様々なモデルが存在する。例えば、ダウンロードストアは、購入されたデジタルマルチメディアファイルを、購入者のインターネットアクセスデバイスにダウンロードするために提供することができる。ダウンロードされたオーディオファイルは、デジタル著作権管理(DRM)を含むことができ、DRMは、いずれのデバイスがマルチメディアファイルを再生することができるかを制限することができる。
【0003】
別のモデルはストリーミングサービスであり、マルチメディアファイルをダウンロードする代わりに、マルチメディアファイルのコンテンツのストリームが加入者のデバイスに送信され、このデバイスにおいてストリームがレンダリング用にバッファリングされるが、他の形では記憶されない。インターネットラジオは、プロバイダーによって選択及びプログラムされた音楽へのアクセスを提供する別の配信システムであり、配信がラジオではなくインターネットを介することを除けば、従来のラジオ局とよく似ている。
【0004】
別のタイプのデジタルマルチメディア配信は、クラウドサービスを用いる。インターネットを介してアクセス可能なデータファイルのネットワークストレージの利用は、クラウドストレージとして知られている。クラウドストレージを提供するサービスは、クラウドサービスと呼ばれる。クラウド音楽サービスにアクセスを有するデジタル音楽プレーヤーによって、ユーザーが、音楽データを記憶する物理的なメディアに直接アクセスすることを必要とせずに、自身のデジタルコレクション内の音楽を聴くことが可能になった。ユーザーは、インターネットアクセスを有するところではどこでも、クラウドサービスから音楽に無線アクセスすることができる。幾つかのクラウド音楽サービスは、加入者が、クラウドサービスのライブラリ内の楽曲にライセンスを付与することを可能にし、それによって、楽曲はその後、要求に応じて加入者にストリーミング及び/又はダウンロードすることが可能になる。幾つかのサービスは、加入者が、加入者によって既に購入/ライセンス付与された音楽ファイルを特定し、又はクラウドサービスを介してアクセスするためにクラウド音楽サービスにアップロードすることを可能にする。例えば、加入者は、別のフォーマットで加入者によって既に所有されているサービスにおけるファイルを特定することもできるし、又は加入者が所有するコンパクトディスク(CD)からリッピングしたファイルをアップロードすることもできる。
【0005】
これらの及び他の配信システムは互いに大きく異なっているが、これらの配信システムはそれぞれ、デジタルマルチメディアを再生する認可を有する個人又は組織によるデジタルマルチメディアのレンダリングを意図したものである。そのような認可の形態は、例えば、音楽ファイルを含む物理的媒体、例えばCDの購入、ファイルのデジタルダウンロード、例えばmp3ファイルの購入、音楽ストリーミングサービスへの加入の購入、クラウド音楽サービスにおける指定された楽曲にアクセスするライセンスの購入を含む。
【0006】
図1は、従来技術のデジタルマルチメディアハブ100を示す。ハブ100は、コントローラー110と、ネットワークインターフェース130と、ストレージデバイス150と、オーディオ/ビデオプロセッサ140と、オーディオ/ビデオ出力142とを備える。ストレージデバイス150は、内部にデジタルマルチメディアファイルを記憶することができる。オーディオ/ビデオ出力142は、オーディオ及び/又はビデオをオーディオ/ビデオシステム180、例えば、ビデオディスプレイ184及び少なくとも1つのラウドスピーカー188を有するホームエンターテイメントセンターに出力し、オーディオ/ビデオシステム180にメディアファイル及びインターネットメディアサービスアクセスを提供する。ハブ100は、ローカルエリアネットワーク(LAN)260にアクセスを提供するネットワークインターフェース130を備える。LAN260は、例えば、ケーブルモデム(図示せず)を介したインターネット290へのアクセス、及び、タブレットコンピューター264、ハンドヘルドmp3プレーヤー266又はパーソナルコンピューター268等のLAN260内の消費者電子デバイスへのアクセスを含む、ネットワークデバイスへの有線アクセス又は無線アクセスを提供することができる。
【0007】
ハブ100は、オーディオ/ビデオシステム180を介して消費者電子デバイス264、266、268に記憶されたメディアファイルを再生するためのアクセスを可能にするユーザーインターフェースを提供する。例えば、ハブ100は、例えば、コマンド及び/又はサービスのメニューを表示するためのユーザーインターフェース目的でビデオディスプレイ(184)を用いることができる。ハブ100は、リモートコントロールデバイス、例えば無線周波数リモートコントロール若しくは赤外線リモートコントロール(図示せず)を介して、又は消費者電子デバイス264、266、268におけるコントローラーアプリケーションを介して入力を受信することができる。ハブ100は、1つ又は複数のデジタルメディアサービス295、例えば、オンデマンドビデオ及び/又はオーディオストリーミングサービスから、インターネット290を介してストリーミングされたコンテンツにアクセスすることができる。加えて、ハブ100は、ストレージデバイス150にデジタルマルチメディアサービス295のためのアカウント情報を記憶することができる。例えば、ハブ100は、デジタルマルチメディアサービス295のアカウントホルダーのユーザー名及びパスワードを記憶することができる。ハブ100は、デジタルマルチメディアサービス295ごとに単一のアカウントホルダーのアカウント情報を記憶する。ハブ100は、デジタルマルチメディアソースの事前設定されたリストにアクセスすることに限定され、ハブに接続された単一のオーディオ/ビデオシステム180にレンダリングを提供することに更に限定される。
【0008】
多くの人々は、懇親会中に音楽を聴くことを楽しむ。これらの会合において個人が自身の個人的な音楽コレクションからの楽曲を会合のために共有したいと考える場合がある。しかしながら、多岐にわたるデジタル音楽配信システム及びデジタル著作権管理システムに起因して、個人のデジタルコレクションからの楽曲を、デジタルマルチメディアのライセンス契約に違反することなく、デジタルマルチメディアハブ100等の従来技術を用いて会合と共有することは、困難又は不便である場合がある。さらに、会合における個人は、会合で知った音楽にアクセスするのが困難又は不便であると感じる場合がある。したがって、本業界において、上記で述べた制限に対処する必要がある。
【発明の概要】
【0009】
本発明の実施形態は、インタラクティブなマルチメディアプレイリストをレンダリングするネットワークデバイス及び方法を提供する。簡単に述べると、本発明の第1の態様は、プロセッサ及びメモリを備えるネットワーク化されたレンダリングデバイスによってマルチメディアレコードの再生のための認可を管理する方法を対象とする。本方法は、レコードを識別するメタデータを含む楽曲を受信するステップと、レコードを提供するソースを検索するステップと、ソースに、レコードをレンダリングデバイスに送達することを認可するトークンを取得するステップと、トークンをソースに提供するステップと、レコードをソースから受信するステップと、レンダリングデバイスによってレコードをレンダリングするステップとを含む。
【0010】
簡単に述べると、本発明の第2の態様は、プロセッサ及びメモリを備えるネットワーク化されたレンダリングデバイスによってレコードをレンダリングするための認可を管理する方法を対象とする。本方法は、レコードを識別するメタデータを有する楽曲を楽曲ライブラリ内に受信するステップと、楽曲をプレイリストに追加するステップと、楽曲を提供するソースを検索するステップと、ソースからレコードを受信するステップと、レコードをレンダリングするステップとを含む。
【0011】
簡単に述べると、本発明の第3の態様は、メモリを有するプロセッサによってネットワーク内のデジタルメディアを管理する方法を対象とする。本方法は、レコードを識別するメタデータを含む楽曲を有するプレイリストを受信するステップと、所定の複数の認可済みソースからレコードを提供する第1のソースを検索するステップとを含む。検索により第1のソースが得られる場合、第1のソースからレコードがレンダリングされる。検索により第1のソースが得られない場合、レコードを提供する第2のソースを求めてネットワークが検索される。
【0012】
簡潔に述べると、アーキテクチャにおいて、本発明の第4の態様は、ネットワークにおいてデジタルメディアをレンダリングするデバイスを対象とする。本デバイスは、ネットワークインターフェースと、メモリを有するプロセッサと、メモリに記憶された楽曲ライブラリと、メモリに記憶されたプレイリストとを備える。プロセッサは、メモリに記憶された非一時的命令を実行して、特定のオーディオパフォーマンスのレコードを識別するメタデータを有する楽曲を楽曲ライブラリ内に受信するステップと、楽曲をプレイリストに追加するステップと、楽曲を提供するソースを検索するステップと、ソースからレコードを受信するステップと、レンダリングデバイスによってレコードをレンダリングするステップとを実行するように構成される。レコードはレンダリング後、メモリ内に保持されない。
【0013】
簡単に述べると、アーキテクチャにおいて、本発明の第5の態様は、第1のデジタルメディアレンダリングデバイス及び第2のデジタルメディアレンダリングデバイスを有するネットワークにおいてデジタルメディアをレンダリングするシステムを対象とする。第1のデジタルメディアレンダリングデバイス及び第2のデジタルメディアレンダリングデバイスはそれぞれ、ネットワークインターフェースと、メモリを有するプロセッサとを備え、このプロセッサは、メモリに記憶される非一時的命令を実行して、レコードを識別するメタデータを含む楽曲を楽曲ライブラリ内に受信するステップと、楽曲をプレイリストに追加するステップと、楽曲を提供するソースを検索するステップと、ソースからレコードを受信するステップと、レンダリングデバイスによってレコードをレンダリングするステップとを実行するように構成される。レコードはレンダリング後、メモリ内に保持されない。第2のデジタルメディアレンダリングデバイスは、第1のデジタルメディアレンダリングデバイスと同期してレコードをレンダリングするように切り替え可能に構成される。
【0014】
簡単に述べると、アーキテクチャにおいて、本発明の第6の態様は、ネットワーク内でデジタルメディアをレンダリングするシステムを対象とする。本システムは、エージェント及びメディアレンダリングデバイスを備える。エージェントは、第1のネットワークインターフェースと、第1のメモリを有する第1のプロセッサとを備える。第1のプロセッサは第1のメモリに記憶される非一時的命令を実行して、デジタルメディアレコードを識別するメタデータを有する楽曲を有する第1のクエリを第1のネットワークインターフェースを介して受信するステップと、メタデータをフォーマット設定してデジタルメディアサービスへの第2のクエリにするステップと、第2のクエリを第1のネットワークインターフェースを介してデジタルメディアサービスに送信するステップとを含むステップを実行するように構成される。メディアレンダリングデバイスは、第2のネットワークインターフェースと、第2のメモリを有する第2のプロセッサとを備える。第2のプロセッサは、第2のメモリに記憶された非一時的命令を実行して、第1のクエリをフォーマット設定するステップと、第2のネットワークインターフェースを介して第1のクエリをエージェントに送信するステップと、デジタルメディアレコードをデジタルメディアサービスから第2のネットワークインターフェースを介して受信するステップと、デジタルメディアレコードをレンダリングするステップとを含むステップを実行するように構成される。デジタルメディアレコードはレンダリング後、メディアレンダリングデバイスに保持されない。
【0015】
簡単に述べると、アーキテクチャにおいて、本発明の第7の態様は、メディアレンダリングデバイスとデジタルメディアサービスとの間の仲介者としての役割を果たすネットワークエージェントを対象とする。ネットワークエージェントは、ネットワークインターフェースと、メモリを有するプロセッサとを備える。プロセッサは、メモリに記憶された非一時的命令を実行して、ネットワークインターフェースを介して、メディアレンダリングデバイスから、デジタルメディアレコードを識別するメタデータを含む楽曲を有する第1のクエリを受信するステップと、メタデータをフォーマット設定して、デジタルメディアサービスのアプリケーションインターフェースに従う第2のクエリにするステップと、第2のクエリを、ネットワークインターフェースを介してデジタルメディアサービスに送信するステップとを含むステップを実行するように構成される。
【0016】
本発明の他のシステム、方法及び特徴は、以下の図面及び詳細な説明を検討した当業者には明らかであるか又は明らかとなるであろう。全てのそのような更なるシステム、方法及び特徴は本明細書に含まれ、本発明の範囲内にあり、添付の特許請求の範囲によって保護されることが意図される。
【0017】
添付の図面は、本発明の更なる理解をもたらすように含められ、本明細書の一部に組込まれ、本明細書の一部をなす。図面は本発明の実施形態を示し、明細書とともに、本発明の原理を説明する役割を果たす。
【図面の簡単な説明】
【0018】
図1】従来技術のデジタルマルチメディアハブを示す概略図である。
図2】ライセンス管理メディアレンダリングデバイスの第1の例示的な実施形態のブロック図である。
図3図2のレンダリングデバイスによって実行される例示的なソフトウェアモジュールを示すブロック図である。
図4図2のプレイリストの例示的な構造のブロック図である。
図5】幾つかのライセンス管理音楽レンダリングデバイスを有するシステムを示す概略図である。
図6】ネットワークデバイスによってデジタルマルチメディアをレンダリングする第1の例示的な方法のフローチャートである。
図7】ネットワークデバイスによってデジタルマルチメディアをレンダリングする第2の例示的な方法のフローチャートである。
図8】本発明の機能を実行するシステムの例を示す概略図である。
図9】本発明の機能を実行する外部エージェントを含む例示的なスピーカーシステムの概略図である。
【発明を実施するための形態】
【0019】
ここで、本発明の実施形態を詳細に参照する。実施形態の例は添付の図面に示される。可能である限り、同じ参照符号は、図面及び説明において、同じ部分又は類似した部分を参照するのに用いられる。
【0020】
以下の定義は、本明細書に開示する実施形態の特徴に適用される用語を解釈するのに有用であり、本開示における要素を定義することのみを意図したものである。特許請求の範囲において用いられる用語に対する限定は意図されておらず、これによって導出されるべきではない。添付の特許請求の範囲において用いられる用語は、適用可能な分野におけるそれらの慣例的な意味によってのみ限定されるべきである。
【0021】
本開示において用いられるとき、「楽曲」とは、オーディオレコード及び/又はビデオレコードを識別するのに用いられるメタデータである。メタデータは、楽曲タイトル、演奏アーティスト、発行者、楽曲のバージョン、楽曲の長さ、楽曲のレコーディング日、楽曲の演奏がレコーディングされた場所を示すレコーディング地、楽曲のマスタリング日、及びレコードの特定のバージョンを識別する他の情報を含むことができる。楽曲は、オーディオ又はビデオ自体を含むのではなく、レコードを識別するのに用いられる情報のみを含む。楽曲は通常、所有権情報を含まない。楽曲のレコーディングは、楽曲をレンダリング(再生)するために必要である。「楽曲のレンダリング」は、楽曲によって識別されるレコードのレンダリングの簡潔表現である。
【0022】
本開示において用いられるとき、「レコード」は、楽曲の再生をレンダリングするのに用いられる、記憶されたオーディオ及び/又はビデオ情報を指す。これは例えば、限定ではないが、磁気媒体上のアナログオーディオ、WAV又はMP3フォーマットのデータにおけるオーディオサンプル、又はMP4若しくはAVIフォーマットのデータ等の圧縮若しくは非圧縮デジタルビデオである。レコードのコンテンツは楽曲によって識別される。レコードはアナログ形態で、例えば磁気レコード媒体に記憶することもできるし、又はデジタル形態で、例えば、限定ではないが、磁気媒体、光媒体及び電子媒体を含むデジタルメディアに記憶されたアナログ波形のデジタル化サンプルとして記憶され得る。
【0023】
本開示において用いられるとき、楽曲の「レンダリング」は、楽曲に関連付けられたレコードのオーディオ及び/又はビデオによる再現、例えば、レコードの記憶されたオーディオ/ビデオファイルの再生、又は楽曲によって識別されるレコードのストリーミングメディアの再生を意味する。
【0024】
本開示において用いられるとき、「ソース」は、オーディオレコード及び/又はビデオレコードの提供者である。ソースは、レンダリングに利用可能な楽曲によって識別されるレコードを作成する。ソースの例は、データドライブ等のローカルメディア上に記憶されるオーディオファイル、及びサービス、例えばクラウドベースのメディアストリーミングサービス、又はインターネットラジオを含む。ソースは、デジタル出力又はアナログ出力(信号)を提供することができる。
【0025】
本開示において用いられるとき、「プレイリスト」は、0個以上の楽曲の順序付けされたリストを含む変更可能なデータ構造である。プレイリストは、例えば、スピーカー、サーバー、又はスマートフォン/タブレットに記憶することができる。プレイリストは、楽曲を追加、削除及び/又は並べ替えするように変更することができる。プレイリストはオーディオコンテンツ又はビデオコンテンツを含んでいないので、一般的にサイズが小さく、したがって容易にトランスポート可能である。表示プレイリストは、プレイリスト内の楽曲をリストにするテキストであり、タイトル、アーティスト及び日付等の楽曲の識別パラメーターのサブセットを含むことができる。
【0026】
本開示において用いられるとき、「ライブラリ」は、ストレージデバイスに記憶された楽曲の検索可能なリストである。プレイリストと異なり、ライブラリ内の楽曲は通常、順序付けされていない。ライブラリは通常、例えば、中でも、タイトル、アーティスト及びレコーディング日等のパラメーターによって、単一の楽曲及び/又は楽曲のクラスを突き止めるように検索可能である。ライブラリは、メディアレンダリングデバイスに利用可能であり得る。楽曲は、プレイリストに含めるためにライブラリから選択することができる。
【0027】
プレイリスト及び/又はライブラリは、プレイリストのコンテンツの人間及び/又は機械可読リストを、例えば、レンダリングデバイスのユーザーインターフェースに、又はレンダリングデバイスと通信する電子デバイスに提供することによって、「発行」することができる。
【0028】
本開示において用いられるとき、「ストリーミング」は、ソースによって受信デバイスにレコードのデジタルマルチメディアを送信するプロセスを指す。受信デバイスは、レコード全体が送信される前に、レコードのレンダリングを開始することができる。ストリーミングは通常一時的であり、したがって、ストリーミングされたデータは、レンダリングされた後、保持されない。受信ストリームの部分はレンダリングのためにバッファリングされ、例えば、ストリーミングされた送信の短い中断の間、レンダリングが中断されないことを確保することができる。対照的に、ダウンロードされたデジタルマルチメディアファイルは通常、その全体受信された後、レンダリングが可能になる。ダウンロードされたデジタルマルチメディアファイルは通常、後続のレンダリングのためにメモリ内に保持されるのに対し、ストリーミングされたファイルは通常、後続のレンダリングの場合に再ストリーミングされる。「楽曲のストリーミング」は、楽曲によって識別されるレコードのデジタルメディアのストリーミングの簡略表現である。
【0029】
本開示において用いられるとき、「スピーカー」はレンダリングのためにネットワーク化されたマルチメディアオーディオデバイスであり、楽曲の少なくとも1つのプレイリストへのアクセス及び1つ又は複数のソースへのアクセスを有する。
【0030】
認可済みソースとは、ソースと通信するスピーカー又は他のレンダリングデバイスのローカルエリアネットワーク(LAN)内の少なくとも1人の個人にライセンス付与された1つ又は複数のレコードのソースである。ローカルソース、例えば、LAN内のレコードを記憶するデバイスは通常、認可済みとみなされる。
【0031】
本開示において用いられるとき、「トークン」は、ソースからの1つ又は複数の楽曲をレンダリングすることの認可の表現である。認可は、ソースの少なくとも1人のライセンス付与されたユーザー又はソースへの加入者によるソースへのアクセスを示す。例えば、トークンは、仮想の証明書とすることができ、Spotify(商標)又はRhapsody(商標)等のデジタルメディアサービスへのアクセスをスピーカーに提供することができる。
【0032】
本明細書において用いられるとき、「ローカルメディア」は、1つ又は複数のレコードを記憶するストレージデバイスを有するソースであり、ソースは、レンダリングデバイスのLAN内に位置する。ローカルメディアにおけるレコードは、暗黙的なトークンを有するとみなすことができる。ローカルメディアの例は、mp3プレーヤー、ハードドライブ、サムドライブ、光ディスク(CD等)、及び家庭/施設の音楽サーバーへのアクセスを有するLANを含む。ローカルメディアは、アナログ又はデジタルのオーディオ及び/又はビデオインターフェース、コンピューターバス、例えばユニバーサルシリアルバス(USB)を介して、又はBluetooth(登録商標)、Wifi、RF若しくは他の無線接続手段を介して無線でスピーカーと通信することができる。
【0033】
以下で説明する実施形態は通常、オーディオレコードのレンダリングについて記載しているが、他の実施形態は、中でもビデオ及び/又はオーディオを含む、他のタイプのマルチメディアレコードをレンダリングすることができることが理解されよう。
【0034】
図2は、スピーカー200の第1の実施形態を示す概略図である。スピーカー200は、内部にメモリ300を有するコントローラー210と、ネットワークインターフェース230と、ストレージデバイス250とを備える音楽再生及び認可管理デバイスである。コントローラー210はコンピューター及び/又はプロセッサとすることができ、通常、スピーカー200の動作を制御する。
【0035】
ユーザーインターフェース280は、スピーカー200のユーザーに、スピーカー200の様々なパラメーターを制御するためのアクセスを提供する。そのようなユーザーインターフェースの例は、限定ではないが、グラフィカルユーザーインターフェース(GUI)を含むことができる。ユーザーインターフェース280には、例えば、スピーカー200上の又はスピーカー200に取り付けられたタッチスクリーン(図示せず)により、スピーカー200から直接アクセスすることができる。スピーカーにおけるローカルユーザーインターフェースに替えて、又はそれに加えて、ユーザーインターフェースは、ローカルエリアネットワーク260における1つ又は複数のデバイス、例えば、スマートフォン262、タブレット264、ハンドヘルドmp3プレーヤー266又はパーソナルコンピューター268上のアプリケーションにより提供することができる。
【0036】
ユーザーインターフェース280を用いて、ストレージデバイス250に記憶されたプレイリスト258及び/又は楽曲ライブラリ252へのアクセスを提供することができる。プレイリスト258は、スピーカー200による再生のために順序付けされたキュー(例えば、順次、ランダム)内の1つ又は複数の楽曲をリストにする。ユーザーインターフェース280は、例えば、楽曲ライブラリ252からのプレイリスト258に楽曲を追加することによって、ユーザーがプレイリスト258を管理することを可能にする。楽曲ライブラリ252は、スピーカー200によってレンダリングするために利用可能な全ての楽曲のリストである。ユーザーは、以下で更に説明するように、プレイリスト258内の楽曲を削除又は並べ替えすることもできる。
【0037】
スピーカー200は、オーディオファイルをレンダリングするための幾つかのコンポーネントを備える。補助オーディオ入力242は、補助オーディオ入力242に接続されたローカルメディアデバイス270に物理的に接続し、そこからオーディオレコードを受信するのに用いられる。例えば、補助オーディオ入力242は、MP3プレーヤー、光ディスクプレーヤー、写真プレーヤー、又はアナログオーディオ再生若しくはデジタルオーディオ再生を提供する他のデバイスに接続されたアナログオーディオケーブル又はデジタルオーディオケーブルを接続するためのケーブルレセプタクルを備えることができる。同様に、補助オーディオ入力242は、デジタルメディアアクセスポートとすることができる。デジタルメディアアクセスポートは、例えば、サムドライブ若しくはハードドライブ等の、デジタルオーディオファイルを記憶するローカルメディアデバイス270、又はスマートフォン262を接続するためのユニバーサルシリアルバス(USB)ポートである。
【0038】
オーディオプロセッサ240は、スピーカー200によって受け入れられる1つ又は複数の形態、例えば、デジタルオーディオファイル、デジタルオーディオストリーム、及び補助オーディオ入力242を介して受信されるオーディオ信号の形態でレコードを処理するのに用いられる。オーディオプロセッサ240は、デジタルデータを、例えば、デジタル/アナログコンバーター(DAC)を用いてオーディオ信号に変換し、オーディオ処理機能、例えば、中でも、等価、圧縮、フィルタリング、及び音量制御を提供することができる。オーディオプロセッサ240は、オーディオアンプ244にオーディオ信号を提供する。オーディオアンプ244は、オーディオプロセッサ240からのオーディオ信号を増幅するための利得段を提供する。オーディオアンプ244は、増幅したオーディオ信号を1つ又は複数のオーディオトランスデューサー248に提供する。オーディオトランスデューサー248は、オーディオアンプ244からの増幅したオーディオ信号を音波に変換する。
【0039】
本発明の代替的な実施形態によれば、オーディオプロセッサ240、オーディオアンプ244及び/又はオーディオトランスデューサー248は、スピーカー200内の他のコンポーネントと別個に収容することができる。更に、本発明の別個の代替的な実施形態によれば、コントローラー210、ネットワークインターフェース230及び/又はストレージデバイス250は、スピーカー200から取外し可能とすることができるか、又はスピーカー200と通信するスタンドアローン型ユニットとすることができる。
【0040】
ストレージデバイス250は、ソース254のリストを含む。ソース254はスピーカー200の1人又は複数のユーザーから収集されたものであり、楽曲ライブラリ252内の任意の楽曲にアクセスするために参照可能である。
【0041】
複数の判断基準に基づいてソースを優先順位付けすることができる。そのような判断基準は、限定ではないが、スピーカー200とソースとの間のネットワーク接続の品質(速度、輻輳、ネットワークホップ数)、ソースを用いるコスト、ソースが或る期間にわたってアクセスすることができる曲数に対する制限を有するか否か、及びサービスによって提供されるオーディオ品質(ビット深度、サンプリングレート、圧縮フォーマット)を含むことができる。例えば、ソースA及びソースBが共に楽曲1を提供する場合、スピーカー200は、ソースAが、ソースBによって提供される楽曲1のレコードよりも高いオーディオ品質を有する楽曲1のレコードを提供する場合、ソースAに楽曲1を要求することができる。
【0042】
トークンは、デジタルメディアファイルへのアクセスが認可済みであることの証明をソースに提供するのに用いられる。ストレージデバイス250は、トークン256のリストを含む。トークンは、個々の楽曲、ソースへの加入者、又はソースに関連付けることができる。トークンは、楽曲がプレイリスト258及び/又は楽曲ライブラリ252に追加される時点で、ソース若しくはソースへの加入者によってスピーカー200に提供することもできるし、又は楽曲のメディアファイルがレンダリングされる時点よりも僅かにのみ前に提供することもできる。トークンが、実質的にレンダリング時、例えば楽曲がプレイリストの先頭に到達する時点又はそれに近い時点に提供される場合、スピーカー200は、ストレージデバイス250内にトークン256のリストを記憶することができない。一方、トークンがレンダリングよりも大幅に前の時点、例えば、楽曲がプレイリスト又はライブラリに追加される時点にスピーカー200に提供されるとき、ストレージデバイス250におけるトークン256のリストにトークンを記憶することができる。
【0043】
トークンは、ソースからデジタルメディアファイルにアクセスする認可を提供する。トークンは、ソースの加入者又はアカウントホルダーの識別情報、例えば、ユーザー名及びパスワード又は個人識別番号(PIN)を提供することができる。識別情報は、識別情報を確保するために暗号化されることが好ましい。代替的に、トークンは識別情報を含まず、代わりに、ソースへのアクセスを認証するのに用いられる認可プロトコルを示す情報を含む場合がある。
【0044】
加入者がスピーカー200におけるプレイリスト258に楽曲を追加するとき、コントローラー210は、ソースから、加入者に関連付けられた1つ又は複数のトークンを取得することができる。トークンは、ソースから利用可能な全ての楽曲に対する認可を提供することもできるし、又は、ソースから利用可能な1つ若しくは複数の楽曲のサブセットに対する認可のみを提供することもできる。一般に、トークンは、ソースからレンダリングされる楽曲をストリーミングするための、ソースによって提供される認可である。トークンは、トークンと引き換えに、ソースのユーザー/加入者の識別証明書を提供することによってソースから取得することができる。一般に、トークンの形態はソースによって決定され、ソースごとに異なる形態又はフォーマットを有することができる。
【0045】
ソースは、幾つかの方法でトークンの受信に応答することができる。例えば、ソースは、例えば、ダウンロード又はストリーミングにより、レンダリングのための送信をすぐに開始することができる。ソースは、代わりに、トークンに確認応答し、レンダリングのための送信を開始するために、後続のコマンドを待つこともできる。代替的に、ソースはトークンを拒否し、否定応答メッセージを用いてコントローラー210にトークンが無効であることを示すこともできる。各ソースは独自のインターフェースを有することができ、ソースマネージャー354(図3)によって管理することができる。
【0046】
オーディオバッファー259は、レンダリングされている楽曲のオーディオデータを一時的に記憶するのに用いられるストレージデバイス250の一部である。例えば、オーディオバッファー259は、オーディオプロセッサ240によって、レンダリングするためのオーディオストリームの部分をまとめるのに用いることができる。オーディオストリームは、ソースによってスピーカー200にストリーミングされる。
【0047】
代替的に、オーディオバッファー259は、LAN260内のユーザーのユーザーデバイス262、264、266、268から転送されたレコードを一時的に記憶することができる。そのようなレコードは通常、関連付けられた楽曲メタデータがプレイリスト258の先頭に到達する時点又はその直前にユーザーデバイス262、264、266、268から読み込まれ、楽曲がオーディオプロセッサ240によってレンダリングされている間にオーディオバッファー259に記憶され、次に、レンダリングが完了した後、オーディオバッファー259から消去されるか又はオーディオバッファー259において上書きされる。オーディオバッファー259は、揮発性ストレージ、例えば読出し専用メモリ(RAM)において実装することができ、それによって、オーディオバッファー259のコンテンツはスピーカー200のパワーサイクルにわたって保持されない。
【0048】
本システム及び方法は、レコードが、レンダリングの開始時にレコードの所有者又はライセンシーがLAN260内に存在しているときにのみレンダリングされることを確保する。コントローラー210は、LAN260内のデバイス262、264、266、268(おそらく、施設にいる人物のデバイス)からのみレコードをダウンロードし、レンダリング中のみレコードを保持することによってこれを行う。レコードは、所望するだけ何度でもレンダリングすることができるが、各レンダリングの前に、所有者/ライセンシーデバイスからオーディオバッファー259に新たにダウンロードされることが好ましい。レコードの新たなレンダリングは、レコードの所有者/ライセンシーがネットワークを出た後は、レコードの別のソース、例えば、レコードを提供するプロバイダーに加入するLAN260内の別の個人が見つかるまで開始することができない。
【0049】
ネットワークインターフェース230は、スピーカー200と、ローカルエリアネットワーク260と、インターネット290と、セルラーネットワーク285との間のインターフェースを提供する。ネットワークインターフェース230は、ユーザーが、ソースを求めて、ローカルエリアネットワーク260、インターネット290及びセルラーネットワーク285のうちのいずれを検索し又はそこにアクセスすることができるかを選択することを可能にすることができる。
【0050】
代替的な実施形態では、楽曲、例えばアクティブプレイリスト内の楽曲を提供するいかなるソースにも有効なトークンが利用可能でない場合、ユーザーは、例えば、音楽サービスに加入するか、オーディオファイルをダウンロードするか、又はクラウド音楽サービスに楽曲を追加することによる、トークンを取得する機会を提案される。そのようなトランザクションは、購入エージェント(purchasing agent)360(図3)によって仲介することができる。
【0051】
スピーカー200は、楽曲ライブラリ252からの任意の楽曲をプレイリスト258に追加することができる。楽曲ライブラリ252は動的とすることができ、追加のソースがLAN260に利用可能になると拡張することができ、ソースがもはやアクセス可能でなくなると収縮することができる。楽曲ライブラリ252は、LAN260内のデバイス262、264、266、268に記憶される全ての楽曲、及びデバイス262、264、266、268に利用可能なソースを介してデバイス262、264、266、268にアクセス可能な全ての楽曲を含むことができる。楽曲ライブラリ252内の楽曲は、楽曲の唯一のソースがもはやLAN260にアクセス可能でない場合、例えば、楽曲の唯一のソースを提供するデバイス262、264、266、268がオフにされるか、又はLAN260から物理的に取り外されるか若しくは他の形でLAN260にアクセス不可能になる場合に、ライブラリ252から削除することができる。
【0052】
プレイリスト258内の楽曲は、1回又は複数回レンダリングすることができる。例えば、第1のソースの場合、楽曲のレンダリングは、第2のトークンを取得する必要なく繰り返すことができる。一方、第2のソースは、レンダリングごとに新たなトークンが取得されることを必要とする場合がある。第3のソースは、タイムスタンプをトークンに関連付けることができ、それによって、スピーカー200は、或る時間ウィンドウ内、例えば、タイムスタンプによって示される1時間又は1日の時間内で単一のトークンを用いて任意の回数楽曲をレンダリングすることができる。
【0053】
トークンの無効化、取り消し又は満了によって、スピーカー200は、ソースに応じて様々な方法で応答する場合がある。第1のソースからレンダリングされている楽曲は、スピーカー200に、即座にレンダリングを中止させ、プレイリスト280内の次の楽曲のレンダリングに進ませる場合がある。代替的に、第2のソースからレンダリングされている楽曲は、トークンが満了しているか又は無効化されているとき、再生を継続することができるが、同じソース又は別のソースから別のトークンを取得することなく後続のレンダリングを行うことを防ぐようにプレイリスト280から削除される。
【0054】
ユーザーが楽曲をスピーカー200に利用可能にするとき、楽曲は、スピーカープレイリスト258、楽曲ライブラリ252又は双方に追加することができる。ユーザーがオンライン音楽サービスを介してレコードにアクセスを有する場合、ユーザーはトークンをスピーカー200に転送し、ユーザーがスピーカー200の付近にいる間、スピーカー200がオンライン音楽サービスを介して楽曲にアクセスすることを認可することができる。例えば、スピーカー200は、以下で更に説明するように、トークンを取得するために、音楽サービスとインタラクトする仲介ウェブサーバー(図示せず)と通信することができる。スピーカー200の近接性は、幾つかの手段、例えば、LAN260内のユーザーに属するWiFi対応デバイス262、264、266、268を検出することによって判断することができる。
【0055】
図3に示すように、コントローラー250は、スピーカー(図2)の特定のタスクを管理するための幾つかのソフトウェアモジュールを含むことができる。図3は幾つかの例示的なモジュールを示すが、これらのモジュールはスピーカー(図2)の全ての実施形態に存在するわけではない場合がある。同様に、図3には示されない追加のモジュールがスピーカー(図2)に含まれる場合がある。代替的な実施形態では、図3に示すモジュールのうちの1つ又は複数によって実行される機能は、スピーカー(図2)の外部のデバイス、例えば、以下で更に説明するように、スピーカー200(図2)と1つ又は複数のソースとの間のエージェントとしての役割を果たす仲介ウェブサーバーによって実行されてもよい。
【0056】
ユーザーインターフェースマネージャー380は、ユーザーがプレイリスト258(図4)を管理することを可能にする。以下で更に説明するように、この能力において、ユーザーインターフェースマネージャー380は、ユーザーとプレイリストマネージャー358との間のインターフェースとしての役割を果たし、ユーザーに、プレイリストマネージャー358の機能、例えば、プレイリスト258(図4)をプレイリスト258内の次の楽曲に進めること、楽曲をプレイリスト258から削除すること、楽曲ライブラリ252からの楽曲をプレイリスト258(図4)に追加することのうちの1つ又は複数へのアクセスを提供する。
【0057】
ユーザーインターフェースマネージャー380は、ユーザーが、例えば、アーティスト、タイトル、ジャンル、レコーディング日等によって、スピーカー上の楽曲ライブラリ252(図2)をブラウズすることを可能にするブラウザーを提供する。ブラウザーは楽曲ライブラリマネージャー352とインタラクトすることができる。例えば、ユーザーは、アーティスト名をブラウザーに入力することができ、ユーザーインターフェースマネージャー380は、そのアーティストによる楽曲ライブラリ252(図2)内の全ての楽曲を含む第1のリストを編集する。次に、ブラウザーは、第1のリスト内の楽曲ごとに現在のソースが利用可能であるか否かに関してソースマネージャー354に問い合わせることによって、ソースマネージャー354とインタラクトすることができる。楽曲レコードを提供するソースが利用可能である場合、ユーザーインターフェースマネージャー380は、トークンマネージャー356に問い合わせて、楽曲のための有効なトークンが存在するか否かを判断し、存在する場合、楽曲が第2のリストに追加される。次に、ユーザーインターフェースマネージャー380は、第1のリスト及び/又は第2のリストを、ユーザーインターフェース280(図2)を介して、例えば、スクロール可能なウィンドウにおいてユーザーに提供することができる。次に、ユーザーは、プレイリスト258(図4)に追加される楽曲を第1のリスト又は第2のリストから選択することができる。上記で説明したように、第2のリスト内の楽曲はソースにより検証済みであるため、楽曲は第2のリストからプレイリスト258(図4)に直接移すことができる。第1のリストから選択された楽曲は、ソースマネージャー354及び/又はトークンマネージャー356により検証することができ、その後、プレイリスト258(図4)に移される。
【0058】
ソースマネージャー354は、外部ソースによって提供されるインターフェース、例えば、ソースによって提供されるウェブサイト又はアプリケーションインターフェース(API)を介して、デジタルメディアサービス295(図2)等の外部ソースとインタラクトすることができる。ソースマネージャー354は、楽曲メタデータを、ソースのAPIに従ってメッセージ又はクエリに変換し、楽曲の利用可能性を判断し、他の情報、例えば、限定ではないが、楽曲をストリーミングするための価格情報、楽曲に関連付けられた挿絵、楽曲の歌詞、及び楽曲を演奏するアーティストに関する情報を取得する。
【0059】
ユーザーインターフェースマネージャー380は、ユーザーが、ユーザーの楽曲コレクションからの1つ又は複数の楽曲を楽曲ライブラリに利用可能にすることも可能にする。例えば、ユーザーは、ユーザーのコレクションから楽曲を再生するためのスマートフォン等の音楽レンダリングデバイスを有することができる。幾つかの楽曲は、スマートフォンに記憶されるレコードと関連付けることができ、他の楽曲はクラウドサービスを介して利用可能であり、また他の楽曲は加入サービスにより利用可能である。
【0060】
ルームマネージャーモジュール320は、以下で更に説明するように、複数のスピーカー(図2)のレンダリングを同期させるのに用いられる。ネットワークマネージャーモジュール300は、スピーカー200(図2)が通信する様々なネットワーク、例えばLAN260(図2)及びセルラーネットワーク285(図2)における設定を管理するのに用いられる。レンダリングマネージャーモジュール340は、ネットワークインターフェース(図2)を介してオーディオプロセッサ240(図2)に受信されたストリーム及びダウンロードのルーティングを扱う。購入エージェント360は、楽曲のソースがいずれも現在スピーカー(図2)に利用可能でない場合、レコードの購入を仲介する。
【0061】
プレイリスト258は、スピーカー200のストレージデバイス250におけるデータ構造である。図4は、プレイリスト258の例示的な構造を示すブロック図を示す。プレイリスト258はn個の楽曲を含む。ここで、nは非負の整数である。ユーザーは、プレイリスト、例えば、ネットワークデバイス262、264、266、268(図2)上のアプリケーションとインタラクトすることができる。プレイリスト258は、例えばプレイリストマネージャーモジュール358(図3)を用いて、楽曲を追加することによって拡張することができるか、又は楽曲を削除することによって縮小することができる。プレイリスト258は、図4に楽曲0として示される、スピーカー200(図2)によってレンダリングされる次の楽曲の位置を示す先頭410を有する。楽曲は、オーディオプロセッサ240(図2)によって、レンダリングのための先頭位置から削除される場合がある。この時点で、以前の先頭位置から順次後ろの楽曲が、先頭位置、例えば図4の楽曲1に移る。末尾420は、プレイリスト内の最後の楽曲を示す。幾つかの実施形態では、先頭は、現在レンダリングされている楽曲を指すことができる。
【0062】
当業者であれば、実施時に、ストレージデバイス250(図2)内の楽曲のロケーションは、楽曲がキューに追加されるか、キューから削除されるか、又はキュー内で並べ替えされるときに一般的に変化しないことを認識するであろう。代わりに、ストレージデバイス250(図2)内の楽曲メタデータを動かすことなくプレイリスト内の楽曲を管理するためのメカニズム、例えば、一重又は二重にリンクされたリストが利用される。実際に、プレイリスト258は、楽曲データを含む別個のデータ構造ではない場合があり、代わりに、楽曲ライブラリ252(図2)内に記憶される楽曲データファイル又はデータ構造を参照するリンクされたリストである場合がある。
【0063】
プレイリスト258(図2)は、線形として示されているが、他のタイプのプレイリストが可能である。例えば、円形のキュー型のプレイリストが連続再生することができる。そのような円形構造では、先頭410及び末尾420は隣接しているものとみなすことができる。
【0064】
プレイリスト258に移された楽曲を、先頭410に移して先頭に置き換えるか、末尾420に移すか、又は先頭と末尾との間の任意の位置に移して、例えば、現在再生中の楽曲(先頭410)の直後に再生するように楽曲をキューに入れることができる。幾つかの状況では、先頭410及び末尾420は、例えば、単一の楽曲を含むプレイリスト258において同じ楽曲を指すことができる。同様に、空のプレイリスト258の場合、先頭410及び末尾420の双方がヌルエントリーを指すことができる。
【0065】
スピーカー200(図2)は、1つ又は複数のプレイリスト258を記憶することができ、ユーザーインターフェース280(図2)を介してレンダリングされるプレイリストのうちの1つを指定することができる。レンダリングされているプレイリストはアクティブプレイリストである。
【0066】
スピーカーの所有者でないユーザーのデバイスからスピーカーへのレコードの転送は通常、幾つかの状況において音楽ライセンス付与合意に違反する場合があるので、ユーザーのデバイスにおけるレコードは、楽曲がレンダリングのためのプレイリストの先頭に達するとき、代わりに、ユーザーデバイスからスピーカー(図2)にストリーミングすることができる(以下を参照されたい)。ストリーミングは、無線、例えば、中でも、WiFi又はBluetooth(登録商標)接続を介して行うことができる。
【0067】
システムにおいて2つ以上のスピーカーをリンクさせることができる。互いの可聴範囲内に複数のスピーカーが用いられているとき、通常、それらのスピーカーがそれぞれ同じプレイリストを再生することが望ましい。そのような構成におけるスピーカーは、同じ「部屋」又は「ステージ」にあるとみなされ、同じトランスポート(開始及び停止)制御に応答し、同じプレイリストにアクセスするようにリンクさせることができる。共通ネットワークにおける別個の部屋内のスピーカーも同様にリンクさせることができる。幾つかの状況において、別個の部屋内のスピーカーが共通の楽曲ライブラリを共有するが、リンクされず、このため異なる部屋が独立したプレイリスト及びスピーカートランスポート制御を有することができることが望ましい場合がある。
【0068】
リンクされたスピーカーは、1つのスピーカーがプライマリ又はマスターとして動作するように構成することができ、それによって、プライマリスピーカーの制御部及びメモリを用いて1つ又は複数のセカンダリ(スレーブ)スピーカーが制御され、セカンダリスピーカーは、プライマリスピーカーからセカンダリスピーカーにストリーミングされたオーディオをレンダリングし、ユーザーインターフェースコマンドをプライマリスピーカーに中継するにすぎない。代替的に、当該技術分野の当業者にはよく知られているように、リンクされたスピーカーは、メモリ及び処理能力等のリソースを共有し、本質的に分散システムとしてふるまうことができる。
【0069】
図5は、マルチスピーカーシステムの例示的な実施形態を示す。家500は、3つの部屋501、502、503に配置された4つのスピーカー200a〜dを備える。家500は、実質的に、ローカルエリアネットワーク260、例えば、家庭用無線ネットワークに含まれる。第1の部屋501は、第1のスピーカー200a及び第2のスピーカー200bを備える。第2の部屋502は第3のスピーカー200cを備える。第3の部屋503は第4のスピーカー200dを備える。第1のスピーカー200a、第2のスピーカー200b及び第3のスピーカー200cは、第1のスピーカー200aと第2のスピーカー200bとの間の第1の制御リンク512、及び第2のスピーカー200bと第3のスピーカー200cとの間の第2の制御リンクによって示されるように、共通制御される。上記で説明したように、リンクされたスピーカー200は、共通の第1のプレイリスト(この場合はプレイリスト511)、及び第1のプレイリスト511からレンダリングする楽曲のための共通トランスポート制御部を共有する。対照的に、第3のスピーカー200cと第4のスピーカー200dとの間のリンク534等の開いたリンクは、第3の部屋503内の第4のスピーカー200dが独立したトランスポート制御部を有し、第4のスピーカー200dが独立した第2のプレイリスト514から楽曲をレンダリングすることを示す。
【0070】
説明の目的で、第1の部屋501は、キッチン及びリビングルームが組み合わされた空間である場合があり、第1のスピーカー200aがリビングルームにあり、第2のスピーカー200bがキッチンに配置されている。第2の部屋502は第3のスピーカー200cを含む私室とすることができ、それによって、キッチン、リビングルーム及び私室内の人物は全て第1のプレイリスト511のレンダリングを聴いている。第3の部屋503は地下室とすることができ、第4のスピーカー200dは、第2のプレイリスト514を独立してレンダリングしている。
【0071】
上記で説明したように、第1のプレイリスト511及び第2のプレイリスト514は共に、楽曲ライブラリ252(図2)から楽曲を取り出す。ここで、楽曲ライブラリ252(図2)は、スピーカー200a〜dのうちの任意の1つにおけるストレージデバイス250(図2)に記憶することもできるし、スピーカー200a〜dの全てに冗長記憶することもできるし、2つ以上のスピーカー200a〜dにおけるストレージデバイス250(図2)にわたって分散させることもできる。
【0072】
図5は、簡単にするために、スピーカー200a〜dを直列でリンクされているものとして示しているが、他のリンク接続、例えば、スター型接続、又は仮想ハブ(図示せず)を介したLAN260を通じた個々の接続が好ましい場合もある。同様に、図面はスピーカー間のリンクを開いたスイッチ及び閉じたスイッチとして示しているが、これは、リンクがスピーカー200間で通信を確立又は中断することを示すものではない。そうではなく、スイッチは単に、閉じたリンクが、スピーカー間の制御関係を確立し、開いたリンクが独立した制御を示すことを示している。
【0073】
また、スピーカー200a〜200dは互いに有線接続することもできるし、又はLAN260(図2)若しくはセルラーネットワーク285(図2)を介して共に無線ネットワーク化することもできることにも留意されたい。
【0074】
図6は、ネットワーク化されたレンダリングデバイスによってデジタルメディアをレンダリングする方法の第1の例示的な実施形態のフローチャートである。フローチャートの任意のプロセスの説明又はブロックは、プロセス内の特定の論理機能を実施するための1つ又は複数の命令を含むモジュール、セグメント、コード部又はステップを表すものとして理解されるべきであり、本発明の当該技術分野における或る程度の知識を有する当業者によって理解されるように、関与する機能に応じて、機能が、実質的に同時に又は逆の順序で実行されることを含めて、示したもの又は論考したものと異なる順序で実行される場合がある代替的な実施態様が本発明の範囲内に含まれることに留意されたい。
【0075】
図6のフローチャートは、本発明のレンダリングデバイス、例えば、図2に示すようなスピーカー200等のレンダリングデバイスの第1の実施形態に追加される楽曲のライフサイクルをマッピングする。上記で説明したように、楽曲は通常、レコードを識別するメタデータのコレクションである。ブロック610に示すように、楽曲は、楽曲ライブラリマネージャー352(図3)によってレンダリングデバイスの楽曲ライブラリ内に受信される。例えば、楽曲は、レコードメディアファイルを含む電子デバイスのユーザーによって選択可能とすることができるか、又はネットワークを介して楽曲レンダリングデバイスに利用可能な音楽ストリーミングソースから利用可能とすることができる。
【0076】
ブロック620に示すように、楽曲はプレイリストマネージャー358(図3)によってライブラリから選択され、プレイリスト258(図4)に追加される。この選択は、ライブラリからの楽曲をリストにするアプリケーション、例えば、ユーザーインターフェースマネージャー360(図3)によるものとすることができる。レンダリングデバイスは、ブロック630に示すように、楽曲のレコードを提供するソースを検索する。この検索は、ソースマネージャー354(図3)によって行われ、楽曲がプレイリストの先頭に到達するとき、又はその直前に生じることができる。上記で説明したように、ソースは、中でも、ローカルストレージデバイス、ネットワーク化ストレージデバイス、又はデジタルメディアストリーミングサービスとすることができる。ブロック635によって示すように、分岐は、検索により、楽曲のソースが利用可能であると判断されるか否かに応じて生じる。楽曲のソースが利用可能でない場合、ブロック690に示すように、楽曲は、楽曲ライブラリマネージャー352(図3)によってライブラリから削除され、プレイリストマネージャー358(図3)によってプレイリストから削除される。
【0077】
ブロック640によって示すように、ソースが利用可能である場合、楽曲レンダリングデバイスのトークンマネージャー356(図3)は、ソースのためのトークンを取得することを試みる。例えば、トークンマネージャー356(図3)は、ソースによって提供されるネットワークサーバーに直接トークンを要求するメッセージを送信することができる。トークンを要求するメッセージは、例えば、ソースに対する加入者の識別情報、加入者がアクセスすることができるサービスのタイプ、要求されている楽曲、及びソースへのアクセスキー、例えばアカウントパスワードを含むことができる。代替的に、トークンの要求は、トークンマネージャー356(図3)と1つ又は複数の楽曲リソースとの間のエージェントとしての役割を果たす仲介ウェブサーバー又はプロキシサーバーによって処理することができる。プロキシサーバーは、トークンマネージャー356(図3)からのトークン要求を受理し、ソースによって提供される特定のAPIに従ってトークン要求をフォーマット設定する。このようにして、レンダリングデバイスは、ソースが追加されるか自身のAPIを変更するときに更新される必要がなく、代わりに、プロキシサーバーのみが更新されればよい。
【0078】
ブロック645に示すように、分岐は、トークンマネージャー356(図3)が、トークンが利用可能であると判断するか否かに応じて生じる。トークンが利用可能でない場合、ブロック690によって示すように、楽曲はライブラリ及びプレイリストから削除される。トークンが利用可能である場合、ブロック650に示すように、楽曲レンダリングデバイスのトークンマネージャー356(図3)は、トークンをソースに提供し、レンダリング可能な楽曲データ(レコード)の送信をソースに要求する。
【0079】
幾つかの例において、トークンは有効でない場合がある。例えば、トークンに関連付けられたソースのユーザーは、別のネットワークからのソースにアクセスし、それによってトークンを無効にすることができる。例えば、ソースは、トークンに関連付けられたユーザーが現在、例えば別のネットワークのソースからの別のストリームにアクセスしている場合、トークンを拒否することができる。そのような例では、ブロック655に示すように、分岐は、検索によってトークンが有効であると判断されるか否かに依拠して生じる。ブロック690に示すように、トークンが有効でない場合、楽曲はライブラリ及びプレイリストから削除される。トークンが有効である場合、ソースは、レコードをレンダリングデバイスに送信することを開始することができる。例えば、ソースは、ネットワークを介してレンダリングデバイスに宛てられた楽曲のレコードのデジタルメディアをストリーミングすることができる。ブロック660に示すように、レンダリングデバイスは、レンダリング可能な楽曲データを受信し、ブロック670に示すように、レンダリングマネージャー340(図3)は楽曲データをレンダリングする。楽曲データがレンダリングされた後、ブロック680に示すように、レンダリングデバイスはプレイリストから楽曲を削除することができる。1つの実施形態によれば、楽曲は、プレイリストから削除された後、ライブラリに留まることができる。次に、ブロック620に示すように、楽曲は、プレイリストマネージャー358(図3)によって再びプレイリストに追加することができる。
【0080】
代替的な実施形態において、楽曲をレンダリングすることができない場合に楽曲をライブラリ及び/又はプレイリストから削除する代わりに、レンダリングデバイスはライブラリ及び/又はプレイリストから楽曲を除去せず、単にプレイリスト内の次の楽曲に進むことができる。未来の時点において、レンダリングデバイスは、再びその楽曲をレンダリングしようとすることができる。
【0081】
ネットワークデバイス、例えばスマートフォン上のアプリケーションが、入力としてプレイリストを受信し、レンダリングのためにプレイリスト内の楽曲のソースを検索することができる。アプリケーションのユーザーが加入したソースがいずれもプレイリスト内の楽曲を提供しない場合、アプリケーションは楽曲を提供するソースのリストを提供し、ユーザーに、楽曲を購入するオプションを与えることができる。例えば、アプリケーションは、ソースのリストからのソースに反復的に接触し、楽曲の利用可能性、並びに、楽曲が利用可能である場合、楽曲にアクセスするための課金及び購入オプションについて各ソースに問い合わせることができる。代替的に、アプリケーションは、上記で説明したように、楽曲ソースとインタラクトするエージェントとしての役割を果たす仲介ウェブサーバーと通信することができる。アプリケーションは、幾つかの方法で、例えば、ネットワークのユーザーが加入したソースを価格順に最初に提示することによって、返された結果を順序付けすることができるか、又はソースはアプリケーションプロバイダーによる収益合意に基づいて優先順位付けすることができる。
【0082】
図7は、ネットワークデバイスによってデジタルメディアをレンダリングする第2の方法を示すフローチャートである。第2の方法の下で、デバイス又はアプリケーションは、デバイス/アプリケーションにアクセス可能な楽曲のライブラリに関連付けられていない場合がある楽曲のプレイリストを受信する。ブロック710に示すように、プレイリストは、デバイス/アプリケーションによって受信される。プレイリストは、1つ又は複数の楽曲を含み、ここで、各楽曲は、特定のオーディオパフォーマンスのレコードを識別するメタデータを含む。概して、楽曲は、レコードをレンダリングするためのデータを含まない。デバイス/アプリケーションは、所定の複数の認可されたソースからレコードを提供する第1のソースを検索する。例えば、特定のデバイス/アプリケーションは、第1のソースとしてローカルハードドライブ上のメディアファイルにアクセスすることができる場合があり、第2のソースとして第1のストリーミングデジタルメディアサービスにアクセスする認可を与えられる場合がある。デバイス/アプリケーションは、ローカルハードドライブのファイルのインデックスをブラウジングし、検索クエリを第1のストリーミングサービスに送信することによって楽曲を提供する第1のソースを検索することができる。デバイス/アプリケーションが、検索結果として楽曲の第1のソースを見つけ、それによって楽曲のソースが利用可能であると判断する場合(ブロック730)、ブロック740に示すように、デバイス/アプリケーションは、第1のソースによって提供されるレコードをレンダリングする。例えば、このレンダリングは、ストレージにおけるメディアファイルの再生、又はストリーミングサービスからのストリームのレンダリングを含むことができる。
【0083】
第1のソースが、デバイス/アプリケーションに利用可能な複数の認可済みソースのうちの1つでない場合、ブロック750に示すように、デバイス/アプリケーションは、レコードを提供する第2のソースを求めてネットワークを探索する。例えば、デバイス/アプリケーションは、現在デバイス/アプリケーションによって加入されていないストリーミングソース、又はメディアファイルダウンロードを提供する小売業者を見つけるためにインターネットをブラウジングすることができる。次に、デバイス/アプリケーションは、このデバイス/アプリケーションのユーザーに、例えば、ダウンロードを購入するか、1ショットストリームを購入するか、又はストリーミングサービスに加入することによって、第2のソースからレコードをレンダリングすることの認可を得ることをユーザーが望む否かを問い合わせることができる。デバイス/アプリケーションは、ユーザーと第2のサービスとの間の認可を仲介し、次に、第2のソースからレコードをレンダリングすることができる。次に、デバイス/アプリケーションは、楽曲の後続のソースの検索のために、第2のソースを所定の複数の認可済みソースに追加することができる。
【0084】
上述したように、上記で詳細に説明した機能を実行するための本システムはコンピューターとすることができ、その例が図8の概略図に示されている。システム800はプロセッサ802と、ストレージデバイス804と、上述した機能を定義するソフトウェア808を内部に記憶したメモリ806と、入出力(I/O)デバイス810(又は周辺機器)と、ローカルバス、又はシステム800内の通信を可能にするローカルインターフェース812とを含む。ローカルインターフェース812は、例えば、限定ではないが、当該技術分野において既知であるような、1つ又は複数のバス又は他の有線接続若しくは無線接続とすることができる。ローカルインターフェース812は、簡単にするために省かれる、コントローラー、バッファー(キャッシュ)、ドライバー、リピーター及び受信機等の、通信を可能にするための追加の要素を有することができる。さらに、ローカルインターフェース812は、上述した構成要素間で適切な通信を可能にするためのアドレス、制御及び/又はデータ接続を含むことができる。
【0085】
プロセッサ802は、特にメモリ806に記憶されたソフトウェアを実行するためのハードウェアデバイスである。プロセッサ802は、任意の特注の又は市販のシングルコアプロセッサ若しくはマルチコアプロセッサ、中央処理装置(CPU)、本システム800に関連付けられた幾つかのプロセッサ間の補助プロセッサ、半導体ベースのマイクロプロセッサ(マイクロチップ又はチップセットの形態)、マクロプロセッサ、又は通常、ソフトウェア命令を実行するための任意のデバイスとすることができる。
【0086】
メモリ806は、揮発性記憶素子(例えば、ランダムアクセスメモリ(DRAM、SRAM、SDRAM等のRAM))、及び不揮発性記憶素子(例えば、ROM、ハードドライブ、テープ、CDROM等)の任意の1つ又は複数の組み合わせを含むことができる。さらに、メモリ806は、電子、磁気、光及び/又は他のタイプのストレージ媒体を組み込むことができる。メモリ806は分散アーキテクチャを有することができ、様々なコンポーネントが互いに遠隔に位置するが、プロセッサ802によってアクセスすることができることに留意されたい。
【0087】
ソフトウェア808は、本発明による、システム800によって実行される機能を定義する。メモリ806内のソフトウェア808は、1つ又は複数の別個のプログラムを含むことができ、これらはそれぞれ、以下で説明するように、システム800の論理機能を実施するための実行可能な命令の順序付けされたリストを含む。メモリ806は、オペレーティングシステム(O/S)820を含むことができる。オペレーティングシステムは、本質的に、システム800内のプログラムの実行を制御し、スケジューリング、入出力制御、ファイル及びデータ管理、メモリ管理、並びに通信制御及び関連サービスを提供する。
【0088】
I/Oデバイス810は入力デバイス、例えば、限定ではないが、キーボード、マウス、スキャナー、マイクロフォン等を含むことができる。さらに、I/Oデバイス810は、出力デバイス、例えば、限定ではないが、プリンター、ディスプレイ等も含むことができる。最後に、I/Oデバイス810は、入力及び出力の両方により通信するデバイス、例えば、限定ではないが、変調器/復調器(別のデバイス、システム又はネットワークにアクセスするためのモデム)、無線周波数(RF)若しくは他の送受信機、電話インターフェース、ブリッジ、ルーター又は他のデバイスを更に含むことができる。
【0089】
システム800が動作中のとき、プロセッサ802は、上記で説明したように、メモリ806に記憶されたソフトウェア808を実行して、メモリ806に及びメモリ806からデータを通信し、ソフトウェア808に従うシステム800の動作を総括制御するように構成される。
【0090】
上記に示すように、代替的な実施形態では、図3に示すコントローラー210のモジュールのうちの1つ又は複数によって実行される機能は、スピーカー200(図2)の外部のデバイス、例えば、スピーカー200(図2)と1つ又は複数のデジタルメディアサービス295(図2)との間のエージェントとして動作する仲介ウェブサーバーによって実行することができる。
【0091】
図9は、スピーカー200がエージェント910を介して1つ又は複数のデジタルメディアサービス295と通信するシステムの例示的な実施形態を示す。スピーカー200、デジタルメディアサービス295及びエージェント910は通常、インターネット290を介して互いに通信する。エージェント910は、1つ又は複数のアプリケーション、例えば、スピーカー200及び/又はデジタルメディアサービス295の遠隔に位置する1つ又は複数のウェブサーバーによってホスティングされるアプリケーションを含むことができる。エージェント910は、スピーカー200のコントローラー210(図3)におけるモジュールと協調して機能することができるか又はスピーカー200のコントローラー210(図3)における1つ若しくは複数のモジュールの機能に取って代わることができる1つ又は複数の機能モジュール954、956、960を備える。
【0092】
概して、エージェント910は、スピーカー200とソースとの間の仲介者、特に、デジタルメディアサービス295としての役割を果たすことができる。このようにして、スピーカー200は、各デジタルメディアサービス295によって提供されるインターフェースの知識なしで動作し、代わりに、スピーカー200内部で用いられる同じ楽曲メタデータを含むエージェント910とメッセージを交換することによってデジタルメディアサービス295とインタラクトすることができる。ソースエージェントモジュール954は、楽曲メタデータを含むスピーカー200からクエリを受信し、クエリタイプ及びメタデータを、デジタルメディア295及び他のソースによって理解されるフォーマットに変換する。以上で説明したように、トークンエージェントモジュール956は、デジタルメディアをストリーミングする認可を扱うための、スピーカー200とデジタルメディアサービス295との間の仲介者としての役割を果たす。
【0093】
例えば、スピーカー200は、エージェント910に、楽曲のストリーミングを要求する楽曲メタデータを含むメッセージ920を送信することができる。メッセージが特定のソースを指定することもできるし、又はソースエージェント954が、1つ若しくは複数のデジタルメディアサービス295に問い合わせて適切なソースを突き止めることもできる。次に、トークンエージェント956は、選択されたソースへのメッセージをフォーマット設定し、選択されたデジタルメディアサービス295に、デジタルメディアデータのストリーム940をスピーカー200に送信することを認可する認証情報をソースに提供する。次に、デジタルメディアサービス295は、スピーカー200に直接トークンを供給することができる。代替的に、デジタルメディアサービス295は、トークンをエージェント910に送信してもよく、この場合、次いでエージェント910がトークンをスピーカー200に転送する。次に、スピーカーはトークンをデジタルメディアサービス295に提供し、例えば、楽曲がプレイリスト(図4)の先頭に達すると、メディアデータ940のストリーミングを開始する。
【0094】
トークンを取得することが金融取引を伴う例では、購入エージェント960は、デジタルメディアサービス295のユーザーの口座への支払い、又はユーザーの口座からの信用取引の精算を認可するための、スピーカー200とデジタルメディアサービス295との間の仲介者としての役割を果たす。
【0095】
この実施形態の構成は通常、スピーカーのコントローラー210(図3)内のソフトウェアモジュールの動作を簡単にし、スピーカー200がデジタル音楽サービス295等のソースとインタラクトする機能を集中化する。例えば、デジタル音楽サービス295が自身のAPIを変更する場合、エージェント910のみがその変化に対応するように更新されればよい。同様に、新たなソースが利用可能になると、スピーカー200は、エージェント910が新たなソースと通信するように更新されると、変更なしで新たなソースにアクセスすることができる。
【0096】
例えば、スピーカー200は、楽曲メタデータを含むクエリメッセージ920をエージェント910に送信することによって、楽曲に関してエージェント910に問い合わせることができる。次に、エージェント910は、受信した楽曲メタデータを用いて、1つ又は複数のデジタルメディアサービス295に対する1つ又は複数のクエリメッセージ930をフォーマット設定する。ここで、各クエリメッセージは、デジタルメディアサービス295のAPIに従ってフォーマット設定される。次に、エージェント910は、楽曲のためのデジタルメディアサービス295のうちの1つからトークンを取得し、このトークンをスピーカー200に提供することができる。次に、スピーカー200はトークンを供給したデジタルメディアサービス295にこのトークンを提供することができ、このとき、デジタルメディアサービス295は楽曲をスピーカー200にレンダリングするためにメディアデータ940をストリーミングする。
【0097】
代替的な実施形態において、エージェント910の1つ又は複数の機能は、デジタルメディアサービス295と同じ位置にあるアプリケーションによって実行することができる。図9は3つの機能モジュール、すなわち、ソースエージェント954、トークンエージェント956及び購入エージェント960を有するエージェント910を示しているが、エージェント910の代替的な実施形態は、スピーカー200とデジタル音楽サービス295との間の仲介者サービスを提供する追加の機能モジュールを含むことができる。
【0098】
図9は、スピーカー200からエージェント910、エージェント910からデジタルメディアサービス295、デジタルメディアサービス295からスピーカー200への方向を有するデータフローを示すが、メッセージは、スピーカー200、エージェント910及びデジタルメディアサービス295の任意のものの間でいずれの方向においても交換することができる。
【0099】
当業者には、本発明の範囲又は趣旨から逸脱することなく、本発明の構造に対し様々な変更及び変形を行うことができることが明らかであろう。上記に鑑みて、本発明の変更及び変形が添付の特許請求の範囲及びそれらの均等物の範囲内にある限り、本発明はそれらの変更及び変形を包含することが意図される。
図1
図2
図3
図4
図5
図6
図7
図8
図9