(57)【要約】【課題】  インテリジェント音楽トラック選択を提供する。【解決手段】  デジタル作品に関するユーザプリファレンス情報に基づいて、演奏されるデジタル作品の少なくとも２つの異なるシーケンスに含まれる利用可能なデジタル作品を選択し、異なるシーケンスが、プリファレンス情報の異なる態様に基づき、異なるシーケンスを演奏システムによって同時に演奏することを可能にすることによって、マルチメディア作品の演奏をユーザから示されたプリファレンスに基づいて制御する。【選択図】  図３５Ｂ
2005243214.tif 000002
【特許請求の範囲】
【請求項１】
デジタル作品に関するユーザプリファレンス情報に基づいて、演奏されるデジタル作品の少なくとも２つの異なるシーケンスに含まれる利用可能なデジタル作品を選択し、前記異なるシーケンスが、前記プリファレンス情報の異なる態様に基づくことと、
前記異なるシーケンスを演奏システムによって同時に演奏することを可能にすること、
を含む方法。
【請求項２】
前記選択は、作品選択処理の複数のインスタンスによって実行される、請求項１に記載の方法。
【請求項３】
単一の大容量記憶装置から、演奏のために前記異なるシーケンスの前記デジタル作品を送出することも含む、請求項１に記載の方法。
【請求項４】
前記プリファレンス情報の前記異なる態様が、異なるユーザまたはユーザの異なるグループに関連する、請求項１に記載の方法。
【請求項５】
異なるシーケンスの前記選択が、デジタル作品選択処理の異なるインスタンスによって実行される、請求項１に記載の方法。
【請求項６】
前記異なるインスタンスが、前記デジタル作品に関する情報のノードの共通ネットワークを使用して前記選択を行う、請求項５に記載の方法。
【請求項７】
演奏されるデジタル作品に関して供給される入来プリファレンス情報を受け取り、
前記入来プリファレンス情報が供給される間に、前記入来プリファレンス情報によって影響されない形で、プリファレンス情報の本体に基づいて、演奏される前記デジタル作品を選択する、
ことを含む方法。
【請求項８】
前記入来プリファレンス情報が、１つのユーザまたはユーザのグループからであり、そのユーザまたはユーザのグループに演奏される前記デジタル作品が、異なるユーザまたはユーザの異なるグループによって供給されるプリファレンス情報に基づいて選択される、請求項７に記載の方法。
【請求項９】
演奏されるデジタル作品に関する２つの異なるソースから供給される、前記２つの異なるソースに関するプリファレンス情報を受け取り、
演奏されるデジタル作品を選択するために、前記ソースの両方からの前記受け取られたプリファレンス情報を使用する、
ことを含む方法。
【請求項１０】
前記プリファレンス情報が、２つの異なる時に単一のユーザによって前記２つの異なるソースから供給される、請求項９に記載の方法。
【請求項１１】
前記プリファレンス情報が、２つの異なるユーザによって前記２つの異なるソースから供給される、請求項９に記載の方法。
【請求項１２】
ユーザから、前記ユーザのために演奏される、前記ユーザに属するデジタル作品のコレクション内にないデジタル作品に関するプリファレンス情報を受け取り、
前記ユーザのために演奏されるデジタル作品を前記ユーザに属するデジタル作品のコレクションから選択するのに使用するために前記プリファレンス情報を記憶する、
ことを含む方法。
【請求項１３】
前記ユーザのために演奏される前記作品が、第２コレクションに属する、請求項１２に記載の方法。
【請求項１４】
前記プリファレンス情報を使用して前記デジタル作品を選択することも含み、該選択が、
前記ユーザのために演奏された作品に関連する第１の記憶されたプリファレンス情報を使用してノードの第１ネットワークを生成し、
前記コレクション内の作品に関連する第２の記憶されたプリファレンス情報を使用してノードの第２ネットワークを生成し、
前記第２ネットワークを介して前記第１の記憶されたプリファレンス情報を伝搬させる、
ことを含む、請求項１２に記載の方法。
【請求項１５】
前記第２コレクションに実際に存在するトラックの祖先の値だけが更新され、
演奏されたが前記コレクション内にない作品について、前記コレクション内の作品に関係するがそれ自体は前記コレクション内にない作品の第１プリファレンス情報を前記第２ネットワークに適用する、
請求項１４に記載の方法。
【請求項１６】
第１遠隔制御デバイスのユーザが、前記遠隔制御デバイスと相互作用する音楽システムで使用可能なデジタル作品のデータベースの第１構造化照会を公式化できるようにし、
前記音楽システムに前記構造化照会を送る、
ことを含む方法。
【請求項１７】
第２遠隔制御デバイスのユーザが、前記第１構造化照会が公式化される間に、前記データベースの第２構造化照会を公式化できるようにすることも含む、請求項１６に記載の方法。
【請求項１８】
前記第１構造化照会および前記第２構造化照会が、独立に供給され、前記それぞれの照会に独立に応答してアクションが行われる、請求項１７に記載の方法。
【請求項１９】
遠隔制御デバイスのユーザが、音楽システムによって演奏されつつあるデジタル作品に関する第１プリファレンスを明示的に示すことを可能にし、演奏されるデジタル作品の第１の将来のシーケンスを選択する際に前記プリファレンス指示を使用すること、を含む方法。
【請求項２０】
遠隔制御デバイスのユーザが、前記音楽システムによって演奏されつつあるデジタル作品に関する第２プリファレンスを明示的に示すことを可能にし、演奏されるデジタル作品の第２の将来のシーケンスを選択する際に前記第２プリファレンス指示を使用することも含む、請求項１９に記載の方法。
【請求項２１】
前記第１プリファレンスおよび前記第２プリファレンスが、単一のユーザによって示される、請求項２０に記載の方法。
【請求項２２】
前記第１プリファレンスおよび前記第２プリファレンスが、単一のユーザによって２つの異なる遠隔制御デバイスで示される、請求項２０に記載の方法。
【請求項２３】
前記第１プリファレンスおよび前記第２プリファレンスが、２つの異なるユーザによって２つの異なる遠隔制御デバイスで示される、請求項２０に記載の方法。
【請求項２４】
前記第１の将来のシーケンスおよび前記第２の将来のシーケンスが、２つの異なるユーザのために演奏される、請求項２０に記載の方法。
【請求項２５】
ユーザが、デジタル作品に関する情報のデータベースに照会するのに使用される１つまたは複数の値を定義することを可能にし、前記値が、前記データベースのサブセットを識別するのに使用され、
前記サブセットに関するアクションを実行し、
前記作品に関するプリファレンス情報に基づいて、演奏される前記デジタル作品の一部のリストを生成し、前記演奏リストの前記デジタル作品が、前記サブセットに属する、
ことを含む方法。
【請求項２６】
ユーザが、デジタル作品に関する情報のデータベースに照会するのに使用される１つまたは複数の値を定義することを可能にし、前記値が、前記データベースのサブセットを識別するのに使用され、
ユーザ指定のプリファレンスを前記サブセット内のデジタル作品に関連付ける、
ことを含む方法。
【請求項２７】
前記サブセットに関して実行される前記アクションを前記ユーザが示すことを可能にすることも含む、請求項２５に記載の方法。
【請求項２８】
前記可能にすることが、前記ユーザのために前記データベースのフィールドの少なくとも１つの識別子を表示することを含む、請求項２５に記載の方法。
【請求項２９】
前記可能にすることが、前記ユーザが前記フィールドの値を識別することを可能にすることを含む、請求項２８に記載の方法。
【請求項３０】
前記可能にすることが、前記ユーザが前記フィールドの値を表すデフォルトを示すことを可能にすることを含む、請求項２８に記載の方法。
【請求項３１】
前記データベースの前記フィールドが、ジャンル、アーティスト、アルバム、プロデューサ、作曲者、アンサンブル、指揮者、特別出演者、および年の少なくとも１つを含む、請求項２８に記載の方法。
【請求項３２】
前記ユーザは、より一般的なものからより一般的でないものに配列されたリストから前記値を選択することが可能にされる、請求項２５に記載の方法。
【請求項３３】
前記より一般的でない判断基準が、より一般的なレベルにあるアイテムの複数の可能な値に関連する値を有することができる、請求項３２に記載の方法。
【請求項３４】
ユーザのために演奏できるデジタル作品のカテゴリの識別子をユーザに表示し、前記カテゴリのそれぞれが、前記デジタル作品の組を含み、
少なくとも前記カテゴリのより広い１つが、それぞれ複数のより狭いカテゴリに属するデジタル作品を含み、
少なくとも前記カテゴリのより狭い１つが、それぞれ複数のより広いカテゴリに属するデジタル作品を含み、
ユーザが、前記より広いカテゴリの１つの前記識別子の値を選択することを可能にし、
前記ユーザが、前記より狭いカテゴリの１つの前記識別子の値を選択することを可能にし、前記値が、前記より広いカテゴリの前記選択された値に基づいて制約される、
ことを含む方法。
【請求項３５】
前記カテゴリが、ジャンル、アーティスト、アルバム、プロデューサ、作曲者、アンサンブル、指揮者、特別出演者、および年の少なくとも１つを含む、請求項３４に記載の方法。
【請求項３６】
前記ユーザが、手動制御を使用してカテゴリの間をナビゲートすること、および別々の手動制御を使用して所与の識別子に関する可能な値の間をナビゲートすることを可能にすることも含む、請求項３４に記載の方法。
【請求項３７】
前記ユーザによって選択された前記より広いカテゴリ値およびより狭いカテゴリ値を使用して前記デジタル作品に関する記憶された情報を照会することも含む、請求項３４に記載の方法。
【請求項３８】
前記ユーザが、より広いカテゴリの第１識別子に関する可能な値の間をナビゲートすることを可能にし、前記ユーザがナビゲートした前記より広いカテゴリ値によって許容される値だけを含むように、より狭いカテゴリの第２識別子に関する選択に使用可能な値の表示を更新することも含む、請求項３４に記載の方法。
【請求項３９】
２つの別々にアドレス可能な位置で使用可能な少なくとも２つのデジタル作品に関して、前記作品を演奏するデバイスの１つの動作モードで、前記作品の１つの前記演奏を、前記作品のもう１つも演奏することなく、自動的に防止する、
ことを含む方法。
【請求項４０】
前記２つのデジタル作品が、シーケンシャルである、請求項３９に記載の方法。
【請求項４１】
ユーザから、前記作品の少なくとも１つを演奏させることの要求を受け取ることも含む、請求項３９に記載の方法。
【請求項４２】
前記ユーザの前記要求が、２つのデジタルオーディ作品を含むように定義されたグループを再生する要求を含む、請求項４１に記載の方法。
【請求項４３】
前記作品が、記憶媒体の２つの別々にアドレス可能な位置に記憶される、請求項３９に記載の方法。
【請求項４４】
前記媒体がＣＤを含む、請求項４３に記載の方法。
【請求項４５】
前記１つの動作モードが、ユーザプリファレンスに基づいて、演奏のために作品を自動的に選択することを含む、請求項３９に記載の方法。
【請求項４６】
もう１つの動作モードで、前記一方の作品および前記他方の作品のそれぞれを、ユーザによる要求時に個別に演奏することができる、請求項３９に記載の方法。
【請求項４７】
別々にアドレス可能な位置にある少なくとも２つのデジタル作品を、一緒に演奏される作品としてこれらを識別する形で関連付け、前記デジタル作品が、所与の記憶媒体に記憶されたすべてのデジタル作品より少数のデジタル作品を含む、ことを含む方法。
【請求項４８】
前記関連付けが、前記デジタル作品を記述したメタデータに基づく、請求項４７に記載の方法。
【請求項４９】
前記関連付けが、ユーザによって供給される情報に基づく、請求項４７に記載の方法。
【請求項５０】
前記ユーザによって供給される前記情報が、単一の媒体に記憶された、関連付けられる２つ以上のデジタル作品を識別する、請求項４９に記載の方法。
【請求項５１】
前記ユーザによって供給される情報が、単一の媒体に記憶された前記作品のどれをも関連付けないこと、前記単一の媒体に記憶された前記作品のすべてを関連付けること、または単一の媒体に記憶された前記作品の少なくとも一部を自動的に関連付けることの少なくとも１つを示す、請求項４９に記載の方法。
【請求項５２】
前記ユーザが前記作品の少なくとも一部の自動的な関連付けを示す時であっても、関連付けを行わない、請求項５１に記載の方法。
【請求項５３】
デジタル作品を演奏するデバイスを制御するユーザインターフェースにおいて、ユーザが、少なくとも２つの作品を、それらを一緒に再生させる形で関連付けることを可能にすることを含む方法。
【請求項５４】
前記ユーザが、単一の媒体に記憶された少なくとも２つの作品を識別することを可能にされる、請求項５３に記載の方法。
【請求項５５】
前記ユーザが、単一の媒体に記憶された作品を、単一の媒体に記憶された前記作品のどれをも関連付けない形、前記単一の媒体に記憶された前記作品のすべてを関連付ける形、または単一の媒体に記憶された前記作品の少なくとも一部を自動的に関連付ける形の少なくとも１つで識別することを可能にされる、請求項５３に記載の方法。
【請求項５６】
前記ユーザが、前記作品の少なくとも一部の自動的な関連付けを示す時であっても、関連付けを行わない、請求項５５に記載の方法。
【請求項５７】
少なくとも２つのデジタル作品を特定の順序で自動的に関連付けるのにデジタル作品に関するメタデータを使用し、
プリファレンスベースの選択処理が、演奏される作品のシーケンスに含まれる作品の１つを選択する時に、前記処理が、必ず、前記２つの作品のうちで前記シーケンスで次に含まれる他方の作品を選択する、
ことを含む方法。
【請求項５８】
前記選択処理が、作品の１つを選択する時に、前記メタデータによって自動的に関連付けられる前記作品のすべてが、前記メタデータによって指定される順序で演奏のために前記シーケンスに含まれる、請求項５７に記載の方法。
【請求項５９】
デジタル作品の組の作品ごとに、前記作品を識別する情報と、前記作品の演奏に関する１つまたは複数のユーザのプリファレンスを示すプリファレンスデータとを記憶し、前記情報およびプリファレンスデータが、ポータブル記憶媒体に記憶される、ことを含む方法。
【請求項６０】
前記識別する情報が、コンパクトディスクのアルバム番号、媒体番号、およびトラック番号を含む、請求項５９に記載の方法。
【請求項６１】
前記アルバム番号が、一意のアルバム識別子を含むことができる、請求項６０に記載の方法。
【請求項６２】
前記プリファレンスデータが、スコアを含む、請求項６１に記載の方法。
【請求項６３】
前記プリファレンスデータが、前記プリファレンスデータの信頼レベルを表す値を含む、請求項６１に記載の方法。
【請求項６４】
前記作品のそれぞれの前記情報およびデータが、作品ごとに６４ビットを超えないビットを含む、請求項６１に記載の方法。
【請求項６５】
デバイスが、作品の演奏に関するプリファレンスに基づいて、演奏される一連の前記デジタル作品を選択することを可能にする情報を担持する媒体であって、前記情報が、前記作品を識別する情報と、前記作品の演奏に関する１つまたは複数のユーザのプリファレンスを示すプリファレンスデータとを含む、媒体。
【請求項６６】
ポータブル記憶媒体を含む請求項６５に記載の媒体。
【請求項６７】
デジタル作品が属するカテゴリの値の組を選択することによって、演奏されるデジタルオーディオ作品に関する情報のデータベースの検索を可能にし、前記カテゴリが、前記作品に関連するアンサンブルの識別子を含み、
前記検索の結果に関してアクションを行い、
部分的に前記アクションに基づいて、演奏される作品のシーケンスを選択する、
ことを含む方法。
【請求項６８】
前記カテゴリが、作曲者の識別子および演奏の識別子を含む、請求項６７に記載の方法。
【請求項６９】
デジタル作品が属するカテゴリの値の組を選択することによって、演奏されるデジタルオーディオ作品に関する情報のデータベースをユーザが検索することを可能にし、前記カテゴリが、少なくとも１つのより広いカテゴリおよび少なくとも１つのより狭いカテゴリを含む、ことを含み、
そこから値を選択できる前記より狭いカテゴリの識別が、そこから値を選択することができる前記より広いカテゴリの識別に依存し、
前記より広いカテゴリが、クラシック音楽を含み、前記より狭いカテゴリが、アンサンブルを含む、方法。
【請求項７０】
演奏されるデジタル作品の組を選択し、リストが、ユーザプリファレンスの確率的適用に基づき、前記組が、作品のより大きいライブラリから選択され、
ポータブル媒体にデジタル作品の前記リストを記憶する、
ことを含む方法。
【請求項７１】
前記選択によって決定される順序で、前記媒体に前記作品を記憶することも含む、請求項７０に記載の方法。
【請求項７２】
前記媒体に、前記ユーザプリファレンスに関連するプリファレンスデータを記憶することも含む、請求項７０に記載の方法。
【請求項７３】
前記媒体に前記デジタル作品を任意の順序で記憶することも含む、請求項７２に記載の方法。
【請求項７４】
前記媒体で、それぞれが演奏されるデジタル作品の選択された組を含むフォルダに、前記デジタル作品を記憶することも含む、請求項７０に記載の方法。
【請求項７５】
前記作品が、前記選択によって決定される順序で各フォルダに記憶される、請求項７４に記載の方法。
【請求項７６】
前記それぞれのフォルダが、前記ユーザプリファレンスに基づく相対プリファレンスの順序で識別される、請求項７４に記載の方法。
【請求項７７】
前記媒体に前記ユーザプリファレンスおよび前記デジタル作品に関連するプリファレンスデータを記憶し、
前記媒体に記憶された前記作品の再生の順序を制御するのに前記記憶されたプリファレンスデータを使用する、
ことも含む、請求項７０に記載の方法。
【請求項７８】
前記ポータブル媒体が、前記デジタル作品の選択または演奏に使用されるデバイスと独立にポータブルである、請求項７０に記載の方法。
【請求項７９】
ユーザのために演奏されるデジタル作品のシーケンスに含めるために確率的に選択できるデジタル作品に関する記憶されたプリファレンス情報を維持するのに、演奏されるデジタル作品に関する第三者によって供給される情報を使用する、ことを含む方法。
【請求項８０】
前記第三者が批評家を含む、請求項７９に記載の方法。
【請求項８１】
前記第三者によって供給される前記情報が、ＣＤの他のトラックより好ましいと思われる、前記ＣＤのトラックの少なくとも１つの指示を含む、請求項７９に記載の方法。
【請求項８２】
デジタル作品の選択の前記確率が、前記第三者によって供給される前記情報に基づいて増やされる、請求項７９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの反応に基づくアイテムの選択に関する。
【背景技術】
【０００２】
本願は、２００４年１月６日出願の米国特許出願第１０／７５２３９１号の一部継続出願であり、２００３年１２月２４日出願の米国特許出願第１０／７４６３０１号の一部継続出願であり、後者は、２００２年６月２５日出願の米国特許出願第１０／１８０９００号、表題「Ｓｅｌｅｃｔｉｏｎ  ｏｆ  Ｉｔｅｍｓ  Ｂａｓｅｄ  ｏｎ  Ｕｓｅｒ  Ｒｅａｃｔｉｏｎｓ」の一部継続出願である。これらの特許出願のすべてが、その全体を本明細書に援用される。
【０００３】
たとえばコンパクトディスク上の音楽のトラックであるアイテムについて、一部のＣＤプレイヤでは、ユーザが、トラックを再生するシーケンスをプログラミングすることによって、自分のプリファレンス（好み）を示すことができる。あるトラックが終わると、ＣＤプレイヤは、プログラムされたシーケンスに基づいて次のトラックを選択する。
【０００４】
一部の音楽再生デバイスおよび音楽再生ソフトウェアでは、ユーザが、音楽のタイプ、たとえばジャズのプリファレンスを示すことができ、デバイスまたはソフトウェアは、選択されたタイプの音楽のアイテムを再生する。
【０００５】
提案されるシステムの１つでは、ユーザによって供給されるレーティング情報に基づいて、次に再生されるトラックの選択が行われる。あるシステムは、ユーザがプリファレンスを示すためのサムアップ／サムダウン（ｔｈｕｍｂｓ  ｕｐ／ｔｈｕｍｂｓ  ｄｏｗｎ）インターフェースを提供する。もう１つのシステムでは、聴取する聴衆によってサムアップ／サムダウンインターフェースで示されるプリファレンスに基づいて、再生される音楽アイテムが選択される。一部のシステムは、音楽のタイプのプリファレンスを示す質問に対するユーザの回答に基づいて、音楽アイテムが再生のために選択される、自動再生リスト機能を提供する。少なくとも１つのオンラインマーチャントが、ユーザによって購入された音楽に基づいてユーザの趣味を推論している。
【０００６】
他の場合に、選択されるアイテムは、ソフトウェアアプリケーションの機能またはソフトウェアアプリケーションによって使用されるファイルである。ユーザは、機能またはファイルを使用することによって、自分のプリファレンスを表現する。たとえばＭｉｃｒｏｓｏｆｔ  Ｗｏｒｄでは、最近使用されたファイルが、ドロップダウンメニューの最近使用されたファイルリストに表示するためにアプリケーションによって選択され、最近使用された機能（たとえばアウトライン機能）だけが、ユーザによる可能な呼出しのためにドロップダウンメニューでの表示について選択される。
【発明の開示】
【課題を解決するための手段】
【０００７】
一般に、本発明は、一態様では、デジタルワーク（作品）に関するユーザプリファレンス情報に基づいて、演奏されるデジタル作品の少なくとも２つの異なるシーケンスに含まれる使用可能なデジタル作品を選択するステップであって、前記異なるシーケンスが、前記プリファレンス情報の異なる態様に基づく、ステップと、前記異なるシーケンスを演奏システムによって同時に演奏することを可能にするステップとを含む方法を特徴とする。
【０００８】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記選択するステップが、作品選択処理の複数のインスタンス（事例）によって実行される。前記異なるシーケンスの前記デジタル作品が、単一の大容量記憶装置から演奏のために送出される。前記プリファレンス情報の前記異なる態様が、異なるユーザまたはユーザの異なるグループに関連する。異なるシーケンスの前記選択が、デジタル作品選択処理の異なるインスタンスによって実行される。前記異なるインスタンスが、前記デジタル作品に関する情報のノードの共通ネットワークを使用して前記選択を行う。
【０００９】
一般に、もう１つの態様で、本発明は、演奏されるデジタル作品に関して供給されつつある入来プリファレンス情報を受け取るステップと、前記入ってくるプリファレンス情報が供給されつつある間に、前記入ってくるプリファレンス情報によって影響されない形で、プリファレンス情報の本体に基づいて、演奏される前記デジタル作品を選択するステップとを特徴とする。
【００１０】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記入ってくるプリファレンス情報が、１つのユーザまたはユーザのグループからであり、そのユーザまたはユーザのグループに演奏される前記デジタル作品が、異なるユーザまたはユーザの異なるグループによって供給されるプリファレンス情報に基づいて選択される。
【００１１】
一般に、もう１つの態様で、本発明は、演奏されるデジタル作品に関する２つの異なるソースから供給される、前記２つの異なるソースに関するプリファレンス情報を受け取るステップと、演奏されるデジタル作品を選択するために、前記ソースの両方からの前記受け取られたプリファレンス情報を使用するステップとを含む方法を特徴とする。
【００１２】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記プリファレンス情報が、２つの異なる時に単一のユーザによって前記２つの異なるソースから供給される。前記プリファレンス情報が、２つの異なるユーザによって前記２つの異なるソースから供給される。
【００１３】
一般に、もう１つの態様で、本発明は、ユーザから、前記ユーザのために演奏されつつある、前記ユーザに属するデジタル作品のコレクション内にないデジタル作品に関するプリファレンス情報を受け取るステップと、前記ユーザのために演奏されるデジタル作品を前記ユーザに属するデジタル作品のコレクションから選択するのに使用するために前記プリファレンス情報を格納（記憶）するステップとを含む方法を特徴とする。
【００１４】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記ユーザのために演奏されつつある前記作品が、第２コレクションに属する。前記デジタル作品が、前記プリファレンス情報を使用して選択され、前記選択するステップが、前記ユーザのために演奏された作品に関連する第１の記憶されたプリファレンス情報を使用してノードの第１ネットワークを生成するステップと、前記コレクション内の作品に関連する第２の記憶されたプリファレンス情報を使用してノードの第２ネットワークを生成するステップと、前記第２ネットワークを介して前記第１の記憶されたプリファレンス情報を伝搬させるステップとを含む。前記第２コレクションに実際に存在するトラックの祖先の値だけが更新される。演奏されたが前記コレクション内にない作品について、前記コレクション内の作品に関係するがそれ自体は前記コレクション内にない作品の第１プリファレンス情報を前記第２ネットワークに適用する。
【００１５】
一般に、もう１つの態様で、本発明は、第１遠隔制御デバイスのユーザが、前記遠隔制御デバイスと相互作用する音楽システムで使用可能なデジタル作品のデータベースの第１構造化照会を公式（定式）化できるようにするステップと、前記音楽システムに前記構造化照会を送るステップとを含む方法を特徴とする。
【００１６】
実施形態に、下記の特徴の１つまたは複数を含めることができる。この方法は、第２遠隔制御デバイスのユーザが、前記第１構造化照会が定式化されつつある間に、前記データベースの第２構造化照会を定式化できるようにするステップも含む。前記第１構造化照会および前記第２構造化照会が、独立に供給され、前記それぞれの照会に独立に応答してアクションが行われる。
【００１７】
一般に、もう１つの態様で、本発明は、遠隔制御デバイスのユーザが、音楽システムによって演奏されつつあるデジタル作品に関する第１プリファレンスを明示的に示すことを可能にし、演奏されるデジタル作品の第１の将来のシーケンスを選択する際に前記プリファレンス指示を使用するステップを含む方法を特徴とする。遠隔制御デバイスのユーザが、前記音楽システムによって演奏されつつあるデジタル作品に関する第２プリファレンスを明示的に示すことを可能にされ、演奏されるデジタル作品の第２の将来のシーケンスを選択する際に、前記第２プリファレンス指示が使用される。
【００１８】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記第１プリファレンスおよび前記第２プリファレンスが、単一のユーザによって示される。前記第１プリファレンスおよび前記第２プリファレンスが、単一のユーザによって２つの異なる遠隔制御デバイスで示される。前記第１プリファレンスおよび前記第２プリファレンスが、２つの異なるユーザによって２つの異なる遠隔制御デバイスで示される。前記第１の将来のシーケンスおよび前記第２の将来のシーケンスが、２つの異なるユーザのために演奏される。
【００１９】
一般に、もう１つの態様で、本発明は、ユーザが、デジタル作品に関する情報のデータベースに照会するのに使用される１つまたは複数の値を定義することを可能にするステップであって、前記値が、前記データベースのサブセットを識別するのに使用される、ステップと、前記サブセットに関するアクションを実行するステップと、前記作品に関するプリファレンス情報に基づいて、演奏される前記デジタル作品の一部のリストを生成するステップであって、前記演奏リストの前記デジタル作品が、前記サブセットに属する、ステップと、を含む方法を特徴とする。
【００２０】
一般に、もう１つの態様で、本発明は、ユーザが、デジタル作品に関する情報のデータベースに照会するのに使用される１つまたは複数の値を定義することを可能にするステップであって、前記値が、前記データベースのサブセットを識別するのに使用される、ステップと、ユーザ指定のプリファレンスを前記サブセット内のデジタル作品に関連付けるステップとを含む方法を特徴とする。
【００２１】
実施形態に、下記の特徴の１つまたは複数を含めることができる。この方法には、前記サブセットに関して実行される前記アクションを前記ユーザが示すことを可能にするステップも含まれる。前記可能にするステップが、前記ユーザのために前記データベースのフィールドの少なくとも１つの識別子を表示するステップを含む。前記可能にするステップが、前記ユーザが前記フィールドの値を識別することを可能にするステップを含む。前記可能にするステップが、前記ユーザが前記フィールドの値を表すデフォルトを示すことを可能にするステップを含む。前記データベースの前記フィールドが、ジャンル、アーティスト、アルバム、プロデューサ、作曲者、アンサンブル、指揮者、特別出演者、および年の少なくとも１つを含む。前記ユーザが、より一般的なものからより一般的でないものに配列されたリストから前記値を選択することを可能にされる。前記より一般的でない判断基準が、より一般的なレベルにあるアイテムの複数の可能な値に関連する値を有することができる。
【００２２】
一般に、もう１つの態様で、本発明は、ユーザのために演奏できるデジタル作品のカテゴリの識別子をユーザに表示するステップであって、前記カテゴリのそれぞれが、前記デジタル作品の組を含み、少なくとも前記カテゴリのより広い１つが、それぞれ複数のより狭いカテゴリに属するデジタル作品を含み、少なくとも前記カテゴリのより狭い１つが、それぞれ複数のより広いカテゴリに属するデジタル作品を含むステップと、ユーザが、前記より広いカテゴリの１つの前記識別子の値を選択することを可能にするステップと、前記ユーザが、前記より狭いカテゴリの１つの前記識別子の値を選択することを可能にするステップであって、前記値が、前記より広いカテゴリの前記選択された値に基づいて制約される、ステップとを含む方法を特徴とする。
【００２３】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記カテゴリが、ジャンル、アーティスト、アルバム、プロデューサ、作曲者、アンサンブル、指揮者、特別出演者、および年の少なくとも２つを含む。前記ユーザが、手動制御を使用してカテゴリの間をナビゲートすること、および別々の手動制御を使用して所与の識別子に関する可能な値の間をナビゲートすることを可能にされる。前記ユーザによって選択された前記より広いカテゴリ値およびより狭いカテゴリ値を使用して、前記デジタル作品に関する記憶された情報が照会される。前記ユーザが、より広いカテゴリの第１識別子に関する可能な値の間をナビゲートすることを可能され、前記ユーザがナビゲートした前記より広いカテゴリ値によって許容される値だけを含むように、より狭いカテゴリの第２識別子に関する選択に使用可能な値の表示が更新される。
【００２４】
一般に、もう１つの態様で、本発明は、２つの別々にアドレス可能な位置で使用可能な少なくとも２つのデジタル作品に関して、前記作品を演奏するデバイスの１つの動作モードで、前記作品の１つの前記演奏を、前記作品のもう１つも演奏することなく、自動的に防ぐステップを含む方法を特徴とする。
【００２５】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記２つのデジタル作品が、シーケンシャルである。ユーザから、前記作品の少なくとも１つを演奏させることの要求が受け取られる。前記ユーザの前記要求が、２つのデジタルオーディ作品を含むように定義されたグループを再生する要求を含む。前記作品が、記憶媒体の２つの別々にアドレス可能な位置に記憶される。前記媒体が、ＣＤを含む。前記１つの動作モードが、ユーザプリファレンスに基づいて、演奏のために作品を自動的に選択するステップを含む。もう１つの動作モードで、前記一方の作品および前記他方の作品のそれぞれを、ユーザによる要求時に個別に演奏することができる。
【００２６】
一般に、もう１つの態様で、本発明は、別々にアドレス可能な位置にある少なくとも２つのデジタル作品を、一緒に演奏される作品としてこれらを識別する形で関連付けるステップであって、前記デジタル作品が、所与の記憶媒体に記憶されたすべてのデジタル作品より少数のデジタル作品を含む、ステップを含む方法を特徴とする。
【００２７】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記関連付けるステップが、前記デジタル作品を記述したメタデータに基づく。前記関連付けるステップが、ユーザによって供給される情報に基づく。前記ユーザによって供給される前記情報が、単一の媒体に記憶された、関連付けられる２つ以上のデジタル作品を識別する。前記ユーザによって供給される情報が、単一の媒体に記憶された前記作品のどれをも関連付けないこと、前記単一の媒体に記憶された前記作品のすべてを関連付けること、または単一の媒体に記憶された前記作品の少なくとも一部を自動的に関連付けることの少なくとも１つを示す。前記ユーザが前記作品の少なくとも一部の自動的な関連付けを示す時であっても、関連付けを行わない。
【００２８】
一般に、もう１つの態様で、本発明は、デジタル作品を演奏するデバイスを制御するユーザインターフェースにおいて、ユーザが、少なくとも２つの作品を、それらを一緒に再生させる形で関連付けることを可能にするステップを含む方法を特徴とする。
【００２９】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記ユーザが、単一の媒体に記憶された少なくとも２つの作品を識別することを可能にされる。前記ユーザが、単一の媒体に記憶された作品を、単一の媒体に記憶された前記作品のどれをも関連付けない形、前記単一の媒体に記憶された前記作品のすべてを関連付ける形、または単一の媒体に記憶された前記作品の少なくとも一部を自動的に関連付ける形の少なくとも１つで識別することを可能にされる。前記ユーザが、前記作品の少なくとも一部の自動的な関連付けを示す時であっても、関連付けを行わない。
【００３０】
一般に、もう１つの態様で、本発明は、少なくとも２つのデジタル作品を特定の順序で自動的に関連付けるのにデジタル作品に関するメタデータを使用するステップと、プリファレンスベースの選択処理が、演奏される作品のシーケンスに含まれる作品の１つを選択する時に、前記処理が、必ず、前記２つの作品のうちで前記シーケンスで次に含まれる他方の作品を選択するステップとを含む方法を特徴とする。
【００３１】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記選択処理が、作品の１つを選択する時に、前記メタデータによって自動的に関連付けられる前記作品のすべてが、前記メタデータによって指定される順序で演奏のために前記シーケンスに含まれる。
【００３２】
一般に、もう１つの態様で、本発明は、デジタル作品の組の作品ごとに、前記作品を識別する情報と、前記作品の演奏に関する１つまたは複数のユーザのプリファレンスを示すプリファレンスデータとを記憶するステップであって、前記情報およびプリファレンスデータが、ポータブル記憶媒体に記憶される、ステップを含む方法を特徴とする。
【００３３】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記識別する情報が、コンパクトディスクのアルバム番号、媒体番号、およびトラック番号を含む。前記アルバム番号が、一意のアルバム識別子を含むことができる。前記プリファレンスデータが、スコアを含む。前記プリファレンスデータが、前記プリファレンスデータの信頼レベルを表す値を含む。前記作品のそれぞれの前記情報およびデータが、作品ごとに、６４ビットを超えないビットを含む。
【００３４】
一般に、もう１つの態様で、本発明は、デバイスが、作品の演奏に関するプリファレンスに基づいて、演奏される一連の前記デジタル作品を選択することを可能にする情報を担持する媒体であって、前記情報が、前記作品を識別する情報と、前記作品の演奏に関する１つまたは複数のユーザのプリファレンスを示すプリファレンスデータとを含む、媒体を特徴とする。媒体は、ポータブル記憶媒体を含むことができる。
【００３５】
一般に、もう１つの態様で、本発明は、デジタルオーディオ作品が属するカテゴリの値の組を選択することによって、演奏される前記デジタルオーディオ作品に関する情報のデータベースの検索を可能にするステップであって、前記カテゴリが、前記作品に関連するアンサンブルの識別子を含む、ステップと、前記検索の結果に関してアクションを行うステップと、部分的に前記アクションに基づいて、演奏される作品のシーケンスを選択するステップとを含む方法を特徴とする。
【００３６】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記カテゴリが、作曲者の識別子および演奏の識別子を含む。
一般に、もう１つの態様で、本発明は、デジタルオーディオ作品が属するカテゴリの値の組を選択することによって、演奏される前記デジタルオーディオ作品に関する情報のデータベースをユーザが検索することを可能にするステップであって、前記カテゴリが、少なくとも１つのより広いカテゴリおよび少なくとも１つのより狭いカテゴリを含む、ステップを含み、そこから値を選択できる前記より狭いカテゴリの識別が、そこから値を選択することができる前記より広いカテゴリの識別に依存し、前記より広いカテゴリが、クラシック音楽を含み、前記より狭いカテゴリが、アンサンブルを含む方法を特徴とする。
【００３７】
一般に、もう１つの態様で、本発明は、演奏されるデジタル作品の組を選択するステップであって、リストが、ユーザプリファレンスの確率的適用に基づき、前記組が、作品のより大きいライブラリから選択される、ステップと、ポータブル媒体にデジタル作品の前記リストを記憶するステップとを含む方法を特徴とする。
【００３８】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記作品を、前記選択によって決定される順序で、前記媒体に記憶することができる。前記ユーザプリファレンスに関連するプリファレンスデータを前記媒体に記憶することができる。前記媒体に前記デジタル作品を任意の順序で記憶することができる。前記デジタル作品を、前記媒体で、それぞれが演奏されるデジタル作品の選択された組を含むフォルダに記憶することができる。前記作品が、前記選択によって決定される順序で各フォルダに記憶される。前記それぞれのフォルダが、前記ユーザプリファレンスに基づく相対プリファレンスの順序で識別される。プリファレンスデータを前記媒体に前記ユーザプリファレンスおよび前記デジタル作品に関連して記憶することができ、前記記憶されたプリファレンスデータを、前記媒体に記憶された前記作品の再生の順序を制御するのに使用することができる。前記ポータブル媒体が、前記デジタル作品の選択または演奏に使用されるデバイスと独立にポータブルである。
【００３９】
一般に、もう１つの態様で、本発明は、ユーザのために演奏されるデジタル作品のシーケンスに含めるために確率的に選択できるデジタル作品に関する記憶されたプリファレンス情報を維持するのに、演奏されるデジタル作品に関する第三者によって供給される情報を使用するステップを含む方法を特徴とする。
【００４０】
実施形態に、下記の特徴の１つまたは複数を含めることができる。前記第三者が、批評家を含む。前記第三者によって供給される前記情報が、ＣＤの他のトラックより好ましいと思われる、前記ＣＤのトラックの少なくとも１つの指示を含む。デジタル作品の選択の前記確率が、前記第三者によって供給される前記情報に基づいて増やされる。
【００４１】
本発明の他の態様に、他の方法、これらの方法を実行する装置、その装置を含むシステム、および方法を実行する手段の組合せが含まれる。
他の長所および特徴は、以下の説明および請求項から明白になるであろう。
【発明を実施するための最良の形態】
【００４２】
概要
図３５からわかるように、システム１５００では、ユーザ１５０２が、通常はポータブルまたはモバイルである（モバイルでない場合もある）ローカル電子デバイス１５０４、１５０６、１５０８、および１５１０によってユーザのために演奏されるマルチメディアワーク（作品）を有することができる。少数だけが示されているが、システム内で動作する数千台または数百万台のそのようなデバイスが存在することができる。様々な技法の１つまたは複数によって、１つまたは複数のユーザが、ローカルデバイス１５０４で、特定のマルチメディア作品またはマルチメディア作品の種類に関するプリファレンス、たとえばビートルズのアルバムを好むことを示すことができる。プリファレンスの指示を、デバイスのそれぞれで、プリファレンスデータとして累積することができる。累積されたプリファレンスデータは、他のデバイス（たとえば、他のローカルデバイスあるいは１つまたは複数のホスト電子デバイス１５１２）によって、いくつかの場合にその情報をそれぞれのユーザに特に関連付けるプリファレンス情報の生成、更新、および格納（記憶）に使用することができる。記憶されたプリファレンス情報に基づいて、ホストまたは他のデバイスは、ローカルデバイスで使用される１つまたは複数の再生リスト（再生シーケンスの一種）を生成して、マルチメディア作品の再生を管理することができる。１つまたは複数のホストが、再生リストおよび／またはプリファレンス情報に従うローカルデバイスへのマルチメディア作品のダウンロードを管理することもできる。
【００４３】
その結果、ユーザは、大幅に高められた体験を享受することができ、この体験は、マルチメディア作品に関して、プリファレンスとのより高い一貫性を有する。後で説明する様々な他の特徴も、図のシステム１５００と共に使用することができる。
【００４４】
デバイス１５０４、１５０６、１５０８、および１５１０の少なくともいくつか（たとえば、小さいハンドヘルドデバイス）は、マルチメディア選好システムの機能性のすべてを提供するソフトウェアを実行させるのに十分な処理機能を有しない場合がある。その場合に、限られた機能性を有するローカルデバイスは、プリファレンスシステムの機能のうちの少数だけを実行でき、他の機能は、ホストで集中的に実行される。たとえば、ローカルデバイスは、生（未処理）の形のプリファレンスデータなど、ある種の情報を取り込むことができるが、別のデバイスが、そのデータを使用して、演奏される作品を決定する（再生シーケンスを作成し、ローカルデバイスにダウンロードすること、および／またはローカルデバイスでの使用のためにダウンロードされるライブラリを更新することによって）他の情報（プリファレンス情報など）を導出する。他の例では、ローカルドライブが、適当な処理機能を有し、ホストまたは他のデバイスと調和し、その結果、プリファレンス情報が、特定のユーザが使用しているデバイスに転送される（または、デバイスが不十分な記憶リソースを有する場合に、ライブラリを更新する）。
【００４５】
語句「マルチメディア作品」には、単独で使用される時に、オーディオ作品（特に音楽）、ビデオ作品（特に映画）、イメージ、サウンド、および人間の感覚、特に視覚または聴覚によって体験できる作品（簡単な文字またはテキスト以外の）が含まれる。他の場所で、オーディオまたはビデオなどの単語と共に使用される時に、語句マルチメディア作品は、単なるオーディオ作品またはビデオ作品でない作品を意味する場合がある。
【００４６】
語句「ローカルデバイス」には、ＭＰ３プレイヤを含む音楽プレイヤ、携帯電話機、携帯情報端末、ラジオ、ビデオ、ＣＤ、ならびに車両、船、および飛行機内の他の種類のマルチメディアプレイヤ、家庭ベースの音楽、ビデオ、および他のマルチメディアシステム、および一般に１人または少数の個人ユーザにサービスするすべての種類のマルチメディアプレイヤが含まれる。
【００４７】
単語または語句「プリファレンスデータ」または「プリファレンス情報」には、ユーザが個々のマルチメディア作品またはマルチメディア作品の種類を好むか嫌うことの指示が含まれる。たとえば、プリファレンスデータは、途中で作品の演奏を打ち切ることのユーザの選択程度に簡単なものとすることができる。しかし、プリファレンスデータを、複雑で詳細にすることができる。プリファレンス情報は、プリファレンスデータから導出することができ、プリファレンスデータより抽象的にすることができる。たとえば、ユーザが、ロック音楽作品の演奏を繰り返して停止する場合に、生データは、個々のイベントを取り込むことができるが、生のプリファレンスデータから導出されるプリファレンス情報は、ユーザがロック音楽を嫌うこととすることができる。
【００４８】
図３５をもう一度参照すると、ハンドヘルドデバイス１５０４は、一実施例で、Ａｐｐｌｅ社のｉＰｏｄまたは、ＭＰ３フォーマットでエンコードされたオーディオ作品をユーザの制御の下で記憶でき、再生できる、様々ないわゆるＭＰ３プレイヤとすることができる。
【００４９】
デバイス１５０４に、ＲＡＭ  １５１８（またはファームウェア）に含まれるソフトウェア１５１６を実行するマイクロプロセッサ１５１４が含まれる。再生中のまたは再生できる作品に関する情報およびデバイスの使用の関連する他の情報は、ＲＡＭ  １５１８または大容量記憶装置１５２４に記憶され、ディスプレイ１５２６でユーザに表示することができる。記憶装置は、ディスクドライブ、フラッシュメモリ、または他の形のストレージ（記憶装置）とすることができる。ユーザは、１つまたは複数の制御手段１５２８を使用してプレイヤの動作を制御する。制御は、機械式のボタンまたはスイッチとするか、ディスプレイ上でアクセスできるタッチ制御とするか、音声制御または他の種類のデバイスの非機械式制御によって実施することができる。記憶装置１５２４は、取外し可能ディスクドライブまたはメモリカードなどのデバイスから取外し可能で再利用可能な種類とするか、取外し不能とすることができる。
【００５０】
デバイス１５０４には、マルチメディア作品、プリファレンスデータ、プリファレンス情報、および他の情報を、他のローカルデバイスあるいは１つまたは複数のホストを含む他のデバイスとこのデバイスの間で無線で送るようにするトランシーバ１５２７および関連するアンテナ１５２９も含めることができる。コネクタ１５３０を設けて、有線接続での類似する転送を可能にすることができる。無線転送、有線転送、またはその両方のどれが使用可能である場合であっても、通信は、専用チャネル上で、あるいは１つまたは複数の私有または公共のネットワーク１５３２上で行うことができる。いくつかのバージョンのローカルデバイスに、オーディオおよびビデオの演奏が可能なハードウェア１５３３、たとえばＤＶＤプレイヤを含めることができる。
【００５１】
ストレージ１５２４は、様々な種類の情報を記憶することができる。マルチメディア作品は、個別に１５３８、サブライブラリ１５４０内に、またはライブラリ１５４２内に記憶することができる。記憶された作品は、取外し可能媒体で受け取ることができ、あるいは、無線または有線接続を介してダウンロードすることができる。記憶された作品は、追加の作品を追加し、記憶された作品を除去することによって更新することができ、更新は、プリファレンスデータまたはプリファレンス情報に取り込まれたユーザの明示されたプリファレンスまたは暗黙のプリファレンスに少なくとも部分的に基づくものとすることができる。
【００５２】
したがって、ローカルデバイスに記憶されたマルチメディア作品が、ホストで使用可能な他のマルチメディア作品より低い相対プリファレンススコアを有する場合に、低いプリファレンスの作品を高いプリファレンスの作品と入れ替える、スワップアウトプロセスを実施することができる。スワッピングによって、ローカルデバイスの限られたストレージにもかかわらず、ユーザを満足させる可能性が高まる。スワッピングを制御する１つの形が、最低のレーティング（ある閾値まで、またはストレージスペースのある比率まで）の作品を除去し、より大きいライブラリから最高のレーティングを有する作品によってそれらを置換することである。レーティングは、未レーティング作品のメタデータをメタデータネットワーク（メタデータネットワークの例は、以下で図１２に関して詳細に説明する）に挿入し、スコア計算エンジンを使用して、他の作品について収集された情報に基づいて予測スコアを判定することによって予測することができる。このプロセスでは、未レーティング作品のレーティングを予測するために、未レーティング作品およびレーティング済み作品のメタデータの間のオーバーラップが使用される。
【００５３】
再生された作品の識別子、再生が完了したかどうか、および再生が完了した時刻を含む再生ヒストリ１５４４も、記憶することができる。デバイスが、デバイスの異なる識別されたユーザの別々の情報を維持する場合に、再生ヒストリによって、作品を再生したユーザ１５０２の識別子を示すこともできる。たとえばＡｐｐｌｅ社のｉＰｏｄは、所与の作品の再生回数、最終再生時刻、およびユーザによって入力される各作品のレーティング（１つ星から５つ星）を記憶するように構成されている。
【００５４】
ストレージに、所定の再生シーケンス１５５０も含めることができ、この再生シーケンス１５５０のそれぞれによって、演奏される作品のシーケンスが識別される。再生シーケンスは、ユーザが入力することができ、あるいは、ホストまたは別のローカルデバイスから供給することができる。作品が演奏されるローカルデバイスが、十分な処理能力を有する場合に、再生シーケンスは、ローカルデバイス自体で供給することができる。いくつかの場合に、再生シーケンスは、ローカルデバイスで使用可能な作品と、ユーザによって入力されたヒストリカルプリファレンスデータまたはユーザに関連するプリファレンス情報あるいはその両方に基づいて決定される。再生シーケンスに、再生される作品の順々の簡単なリストである再生リスト、または再生されるものを制御するが必ずしも簡単な順序でないアイテムのより複雑なリストを含めることができる。
【００５５】
ストレージに、１つまたは複数のユーザに関連する生のプリファレンスデータ１５５２または、前に述べたように生データから導出されるプリファレンス情報も含めることができる。プリファレンスデータに、デバイスで演奏されるか演奏に使用可能な作品のそれぞれのレーティング（たとえばｉＰｏｄの星レーティング）を含めることができ、あるいは、個々の作品または作品のグループに関する肯定または否定のプリファレンスの他の種類の指示を含めることができる。
【００５６】
たとえば、ユーザは、途中で作品の演奏を停止することができ、これから、システムは、ユーザがその作品について（およびおそらくはそれに似た作品について）否定的なプリファレンスを有すると推論することができる。再生された作品のリストを、完了した作品のヒストリと比較して、どの作品が、再生されたが完了しなかったかを判定することができる。逆に、ユーザが、ある作品を完全に再生させた場合に、ユーザが、その作品について（およびおそらくはそれに似た作品について）肯定的なプリファレンスを有するという推論を引き出すことができる。
【００５７】
ローカルデバイス内のＲＡＭまたは他のプログラムストレージに、再生シーケンスのフェッチおよび実行１５５４、圧縮オーディオデータの圧縮解除１５５６、再生ヒストリの記録１５５８、プリファレンスデータの記録１５６０（および、いくつかの場合に、プリファレンスデータからのプリファレンス情報の導出）、ホストおよび他のローカルデバイスとの相互作用１５６２、異なるユーザの登録およびログイン１５６４、演奏される作品のロックおよびロック解除１５６５、ならびに、ライブラリ、サブライブラリ、および個々の作品の更新１５６６を含む様々な機能を実行するプログラムを含めることができる。
【００５８】
作品の受け取りおよび記憶のほかに、ローカルデバイスは、媒体１５７０上での（または通信チャネルを介して電子的に）１つまたは複数の所与のユーザに関するプリファレンスデータおよびプリファレンス情報のエクスポートおよびインポートの能力を有する。この形で、ユーザは、複数のローカルデバイスと共に使用するために、自分のプリファレンス情報を一緒に携帯する（または電子的に送信する）ことができる。たとえば、ユーザは、自分のプリファレンス情報を、飛行機１５１０、自動車１５０８、またはホテルの部屋１５０６に持ち込み、これらの位置のローカルデバイスの再生シーケンスを制御させることができる。プリファレンスデータおよびプリファレンス情報を、ホストから媒体１５７２にダウンロードまたは配信することもできる。プリファレンスデータは、マルチメディア作品が再生されつつある同一のデバイスで記憶または作成する必要はなく、別々のデバイスで記憶または作成することができる。
【００５９】
ローカルデバイスに記憶された作品に追加される作品は、たとえばネットワーク１５３２を介して（有線接続または無線接続のいずれかを介して）電子的にダウンロードすることができ、あるいは、媒体１５３４上に配布（分配）することができる。ダウンロードは、バックグラウンドプロセスによって行うことができ、その結果、ユーザは、ダウンロードが行われつつあることを知らなくなる。
【００６０】
ホスト１５１２は、ワークステーション、サーバ、または他の電子デバイスとすることができ、通常は、マイクロプロセッサ１５７６、入出力デバイス１５７８、ＲＡＭ  １５８０、およびストレージ１５８２が含まれる。ホストは、作品またはプリファレンス情報をダウンロードまたはエクスポートするコネクタ１５８４を有することができる。
【００６１】
ホストのストレージに、多数の個々の作品１５８６、ならびに個々の作品のサブライブラリおよびライブラリ１５８８を含めることができる。作品は、ＣＤ、ＤＶＤ、または他の使用可能な移動可能な媒体、ラジオ局、またはテレビジョン局、あるいは、ダウンロード可能メディアコンテンツを提供するインターネットウェブサイトなどのホストのネットワーク接続を介して入手可能にすることができる他のソースなど、様々なソース１５９０から受け取ることができる。ストレージに、各ユーザのプリファレンス情報１５９２、および複数のユーザまたはユーザのグループに有用になる可能性がある集約ユーザ情報１５９４も含めることができる。ホストによって生成された再生シーケンス１５９６（再生リストを含む）も、ローカルデバイスへのダウンロードまたは配布のために記憶される。ユーザ情報のレジストリ１５９８に、システムが各ユーザを一意に識別し、各ユーザと相互作用（対話）することを可能にする登録情報および他の情報が含まれる。
【００６２】
ホストで実行されるソフトウェアに、再生リストを含む再生シーケンスを、プリファレンス情報および使用可能な作品のリストから生成する再生リスト生成ソフトウェアを含めることができる。ライブラリ生成ソフトウェア１７０２が、それから作品をローカルデバイスにダウンロードまたは配布できる作品のライブラリおよびサブライブラリの受取および作成を管理する。更新ソフトウェア１７０４は、更新プロセスを管理する。ダウンロードソフトウェア１７０６は、ダウンロードまたは配布の処理を管理する。プリファレンス生成ソフトウェア１７０８（以下で詳細に説明する）は、１つまたは複数のユーザからのプリファレンスデータを使用して、記憶および再生リストを作る際の使用のためにプリファレンス情報を推論し、展開する。料金査定ソフトウェア１７１０は、ローカルデバイスで再生された作品についてユーザに請求する処理を管理する。逆に、権利管理ソフトウェア１７１２は、作品の使用に関する権利所有者への報酬支払いの処理を管理する。圧縮ソフトウェア１７１４は、配布およびダウンロードのための作品の圧縮を管理する。
【００６３】
プリファレンスデータをプリファレンス情報に変換する処理を、完全にホストで実行するか、完全にローカルデバイスで実行するか、この２つの組合せにするかの設計選択は、この２つのデバイスの相対的な能力に少なくとも部分的に依存する。
【００６４】
ローカルデバイス（たとえばポータブル音楽プレイヤ）で入力されるプリファレンスデータは、ユーザによって購入される作品の推薦に関連して使用することもできる（購入推薦に関する追加情報を、後で示す）。購入推薦は、ＣＤ全体、ＤＶＤ全体、または作品の他の編集物全体に関するものとすることができ、あるいは、個々のトラックに関するものとすることができる。ローカルデバイスからのプリファレンスデータは、プリファレンス情報に変換されたならば、購入推薦の生成に使用することができる。一実施例で、Ａｐｐｌｅ社のｉＰｏｄなどのハンドヘルド音楽プレイヤで累積されたプリファレンスデータ（またはそのデータから導出されたプリファレンス情報）を、Ａｐｐｌｅ社のｉＴｕｎｅｓなどの音楽リテール（販売）ウェブサイトにアップロードすることができる。ウェブサイトでは、プリファレンスデータを、プリファレンス情報に変換することができる。変換されたまたはアップロードされたプリファレンス情報は、音楽販売サイトのユーザに、ユーザが彼の音楽プレイヤへのダウンロードのために購入を望む可能性がある、編集物または個々の作品（トラック）の推薦を行う特徴の制御に使用することができる。もう１つの実施例では、プリファレンスデータが、音楽販売ウェブサイトへの転送の前にプリファレンス情報に変換される。プリファレンスデータからプリファレンス情報への変換は、ローカルデバイスまたはホストで行うことができ、あるいは、部分的にローカルデバイス、部分的にホストで実行することができる。
【００６５】
さらに、販売ウェブサイトは、ユーザが関心を持つと判定された作品のプレビュー部分のユーザのローカルデバイスへの自動化されたダウンロード（直接に、あるいは別のサーバを介してまたはユーザがアクセスできるパーソナルコンピュータを介して間接的に）を提供することができる。そのようなプレビューは、やはりローカルデバイスにダウンロードされる再生シーケンスの一部とすることができる。ローカルデバイス（たとえばプレイヤ）が、その部分の１つを再生する時に、その演奏に、「Ｔｈｅ  ｃｏｍｐｌｅｔｅ  ｔｒａｃｋ  ｉｓ  ａｖａｉｌａｂｌｅ  ｆｏｒ  ｐｕｒｃｈａｓｅ  ｆｒｏｍ  ｉＴｕｎｅｓ．    Ｐｌｅａｓｅ  ｐｒｅｓｓ  ｔｈｅ  ｅｎｔｅｒ  ｂｕｔｔｏｎ  ｉｆ  ｙｏｕ  ｗｏｕｌｄ  ｌｉｋｅ  ｔｏ  ｐｕｒｃｈａｓｅ  ｔｈｅ  ｔｒａｃｋ（完全なトラックはｉＴｕｎｅｓから購入できます。このトラックを購入したい場合にはエンターボタンを押してください）」のような可聴メッセージまたは表示されるメッセージを続けることができる。プレイヤは、購入要求を記録し、プレイヤがウェブサイト（またはウェブサイトに接続できるネットワーク）に接続されている場合に、販売ウェブサイトにその購入要求を即座に転送するか、後に、プレイヤが次にネットワークまたはウェブサイトに接続される時に依頼に応じるためにその要求をメモリに保存することができる。
【００６６】
販売ウェブサイトとの相互作用は、図３５に示されたホストを介し、コンピュータを介してユーザのローカルデバイスに達するものとすることができる。その実施例では、図３５のローカルデバイスの他の実施形態でも、コンピュータは、ダウンロードされた作品、再生シーケンス、およびプリファレンス情報を記憶し、これらを都合のよい時と場所でローカルデバイスに転送することによってローカルデバイスのプロキシとして働く、ホストとローカルデバイスの間の媒介として働くことができる。ホストにアップロードされるプリファレンスデータおよびプリファレンス情報を、コンピュータに一時的に記憶することもできる。ホストは、ユーザのプリファレンス情報をウェブサイトに自動的に、あるいはユーザに要求された時または承認された時に供給することによって、販売ウェブサイトと相互作用するように構成することができる。ホストは、ローカルデバイスにダウンロードされる作品を買うために、ユーザの代わりに媒介として作用することもできる。
【００６７】
他の実施例では、販売サイトとホストまたはローカルデバイスの間の相互作用（購入された作品のダウンロードを含む）は、ローカルデバイスと販売サイトまたはホストがネットワークを介して通信する時に、直接に行うことができる。いくつかの実施例で、購入要求を、ローカルデバイスで保存し、後に、処理および依頼に応じるためにホストにアップロードすることができる。
【００６８】
ローカルデバイスが、賃借されるか、一時的に使用されているか、ユーザ以外の当事者によって所有されるシステムの場合に、演奏される実際の作品、およびこれらの作品が属する編集物も、購入の提案に含まれる。
【００６９】
ホストおよびローカルデバイスの実施形態と、ユーザ入力からプリファレンス情報を導出し、再生リストを生成する形の多数の詳細が、この後の説明に含まれる（および、参照によってその全体を本明細書に援用される、２００２年６月２５日出願の米国特許出願第１０／１８０９００号から引用された。この特許出願の多くが、以下に示される）。
【００７０】
システム１５００を使用してローカルデバイスのユーザの経験を改善できる多数の例の中に、以下のものがある。
ローカルデバイスのユーザは、曲のシーケンスの再生をトリガすることができる。再生シーケンスは、事前に定義され、デバイスに記憶される。曲ごとに、ユーザは、曲を最後まで再生させることができ（この場合に、その事実および完了の時刻が記憶される）、あるいは、終わる前に曲を止め、次の曲に進むことができる。その場合に、再生ヒストリには何も記録されない（少なくともｉＰｏｄの例では）。ローカルデバイスまたはホストは、曲の再生を完了しないというユーザの判断から、ユーザがその曲を好まないと推論することができる。再生シーケンスを修正するか、後に再生シーケンスを構成して、ユーザに、ユーザが楽しむ可能性が高い曲を提供することができる。いくつかの場合に、ユーザのプリファレンスに関する唯一の情報は、曲の再生を完了できないことから推論される否定的情報である可能性がある。他の場合に、ユーザは、たとえばレーティングシステムによって、肯定と否定の明示的フィードバックを提供することができる。
【００７１】
いくつかの場合に、所与のユーザが、複数のローカルデバイス、たとえばポータブルＭＰ３プレイヤ、家庭のオーディオシステム、およびレンタカーを介して自分のプリファレンスを示すことができる。プリファレンスデータを集約し、分析し、それからプリファレンス情報を導出することによって、システムは、ローカルデバイスのそれぞれでそのユーザにとってより効果的に再生リストを制御することができる。再生リストが改善されるだけではなく、どの作品を、当初にまたは更新で、ローカルデバイスのそれぞれにダウンロードまたは配布するかの選択が、重要になる可能性がある。所与のローカルデバイスに記憶された作品の増補は、ストレージスペースによって制限される場合があり、したがって、ダウンロードまたは配布された作品が、ホストに記憶されたライブラリのサブセットだけになる場合がある。
【００７２】
システムが、演奏された作品についてユーザに料金を請求するように構成される時に、料金は、作品ごとに、使用ごとに、または所与のライブラリ内の作品のすべての演奏について１回払いに基づいて、査定することができる。作品に対するアクセスは、電子的にロックすることができ、作品の演奏が適当な料金によって支払われた時に限ってロックを解除することができる。このシステムでは、たとえばレンタカーに含まれるストレージに、作品の膨大なライブラリをダウンロードすることが可能になる。料金が支払われたライブラリまたは作品だけが、ロック解除され、自動車での演奏に使用可能にされる。そのようなライブラリに、たとえば１００００個以上の作品を含めることができる。演奏された作品についてユーザに料金を請求するように配置されたシステムでは、作品を含む実際のデータへのユーザアクセスを、演奏以外のアクセスについて禁止することができる。デバイスのストレージシステムに存在する作品の修正に関する許可は、その修正に作品の削除、作品の追加、コピー、あるいはデータまたはデータファイルに対する操作が含まれる場合に、作品の所有者に制限されるか、作品の所有者によってデータへのアクセスを明示的に許可された人に制限される。
【００７３】
１つまたは複数のローカルデバイス（ユーザによって所有されても所有されなくてもよい）の使用から導出されるユーザのプリファレンス情報を、他のローカルデバイス（ユーザによって所有されないものを含む）で適用して、他のローカルデバイスまたはそれにサービスするホストに記憶された作品の知識をユーザが有することなく、ユーザが好む可能性が高い作品をユーザに提示することができる。
【００７４】
ローカルデバイスの使用のもう１つの実施例では、たとえば現在演奏されつつある作品または完了したばかりの作品などの別の作品に似た（または似ていない）別の作品の演奏を好むことをユーザが明示的に示すことができるように、デバイスを構成することができる。ユーザは、ユーザインターフェースを介してその情報を入力することができる。
【００７５】
作品のあるライブラリからの作品の再生中に展開されるプリファレンス情報を、他のライブラリに適用することができ、２つのライブラリが、共通してある作品を有することができる。
【００７６】
複数の異なるユーザが、プリファレンス情報またはプリファレンスデータの本体を生成することができ、システムは、これらを集約して、それぞれのユーザまたは他のユーザによる使用のために作品の再生シーケンスおよびダウンロードを生成するのに使用することができるプリファレンス情報の共用される本体を生成することができる。たとえば、１組の学友が、共同のプリファレンスを表す再生シーケンスを生成するために、プリファレンスをプールさせることに同意することができる。ある集約された情報を、元のグループのメンバでなかったユーザが使用することもできる。集約されたプリファレンス情報では、あるユーザのプリファレンス情報を、第２のユーザのプリファレンス情報と異なる作品のライブラリについて生成することができる。プリファレンス情報を集約する形の１つが、ユーザごとに、再生された作品のリスト、それに対して実行されたアクション（再生されたか、スキップされたか、レーティングされたか）、または基本的なフィードバック動作のリスト（トラックＸ：暗黙の肯定；トラックＹ：暗黙の否定；…）を維持することである。データをマージ（併合）するために、フィードバックデータの両方の組が、後で説明する同一のメタデータネットワークを介して実行される。
【００７７】
パーソナルデバイスが、限られたストレージを有する場合に、デバイスに記憶された作品のサブセット（より大きいライブラリからの）を、ユーザのプリファレンスを反映するために、経時的な作品の追加および削除によって調整することができる。したがって、デバイスは、より大きいライブラリの、繰り返して更新される変化するサブセットを保持する。所与の時にローカルデバイスに記憶される作品は、平均して、常に増加する、ユーザによって好まれる可能性を有する。
【００７８】
ホストからローカルデバイスへの、作品のサブライブラリおよび再生シーケンスの更新は、転送が行われていることをユーザが明示的に知らない形で、バックグラウンドで行うことができる。
【００７９】
ユーザが、ローカルデバイスを利用する時に、ユーザは、デバイスまたはホストがそのユーザを識別できる形でデバイスにログオンし、ローカルデバイスとのユーザのセッションについてプリファレンス情報の１つまたは複数の組を利用することができる。ユーザは、リストからプリファレンス情報の組を選択することを許可される場合がある。
【００８０】
たとえばｉＰｏｄと共に使用されるシステムの実施形態は、ｉＰｏｄによって維持されるデータベースに関する公衆が入手可能な情報に基づくものとすることができる。たとえば、すべてが参照によって本明細書に援用される、ｈｔｔｐ：／／ｓｏｕｒｃｅｆｏｒｇｅ．ｎｅｔ／ｄｏｃｍａｎ／ｄｉｓｐｌａｙ＿ｄｏｃ．ｐｈｐ？ｄｏｃｉｄ＝１１１９１＆ｇｒｏｕｐ＿ｉｄ＝５２９７６、ｈｔｔｐ：／／ｓｏｕｒｃｅｆｏｒｇｅ．ｎｅｔ／ｄｏｃｍａｎ／ｄｉｓｐｌａｙ＿ｄｏｃ．ｐｈｐ？ｄｏｃｉｄ＝１１２１２＆ｇｒｏｕｐ＿ｉｄ＝５２９７６、ｈｔｔｐ：／／ｉｐｏｄ−ｏｎ−ｌｉｎｕｘ．ｓｏｕｒｃｅｆｏｒｇｅ．ｎｅｔ／ｄｏｃｓ．ｐｈｐ、ｈｔｔｐ：／／ｎｅｕｒｏｎ．ｃｏｍ／〜ｊａｓｏｎ／ｄｂ．ｐｙ  ｖｉａ、およびｈｔｔｐ：／／ｎｅｕｒｏｎ．ｃｏｍ／〜ｊａｓｏｎ／ｉｐｏｄ＿ａｒｃｈｉｖｅ．ｈｔｍｌを参照されたい。
【００８１】
この公然入手可能な情報によって、ｉＰｏｄデータベースが、２つのファイルすなわち、「ｉｔｕｎｅｓｄｂ」および「ｐｌａｙ  ｃｏｕｎｔｓ」と称するファイルに分割されることが示される。「ｉｔｕｎｅｓｄｂ」には、ファイル名、トラック番号、トラックタイトル、アルバムタイトル、アーティスト名、作曲者名、ジャンル、およびｉＰｏｄに記憶された再生リストのリストを含む（他の情報の中で）、ｉＰｏｄに記憶されたトラックのリストが含まれる。
【００８２】
「ｐｌａｙ  ｃｏｕｎｔｓ」には、トラックごとに１つのエントリが含まれ、このエントリには、最終再生時刻、再生回数、およびトラックレーティング（５星システムに基づく）が記憶される。このファイルは、ｉＰｏｄによって作成され、トラックが再生されるかユーザがレーティングを変更する時に、必ず更新される。
【００８３】
データベース内の情報を使用する簡単なプログラムは、下記の形で作動する。
「ｉｔｕｎｅｓｄｂ」を読み取り、すべてのトラックのリストを、そのファイル名、アルバムタイトル、アーティスト名、およびジャンルと共に得る。
【００８４】
これらに基づき、最初にジャンル、その後にアーティスト、アルバム、およびファイル名を続けて、メタデータネットワークを作成する。
ｉｔｕｎｅｓｄｂ内のメタデータに基づいて各アルバムのリストを再構築することを含めて、ｉＰｏｄ内のすべての再生リストのリストを作成する。
【００８５】
「ｐｌａｙ  ｃｏｕｎｔｓ」を読み取り、最終再生時刻の順でソートする。最終再生時刻リストのトラックの各シーケンシャル対について、再生リストのリスト内のトラックの間の最小ギャップ（中間に入るトラックの数に関する）を探す。対の各トラックに、肯定の暗黙のフィードバックを与え、ギャップ内のトラックのすべてに、否定の暗黙のフィードバックを与える。すべてのトラックをレーティングしたならば、肯定／否定の暗黙のフィードバックを、適当として与える。このフィードバックのすべてを、データファイルに保存し、経時的に累積する。
【００８６】
前に保存されたフィードバックのすべてを、ネットワークを介して処理する。
バッチモードで再生リスト生成アルゴリズム（以下の議論を参照されたい）を実行して、新しい再生リスト生成する、すなわち、各トラックがフィードバックなしで再生される場合のように、ある多数のトラックを順次選択させる
再生リストを「ｉｔｕｎｅｓｄｂ」に挿入する。
【００８７】
上で説明した技法を実施する方法の理解に有用な追加情報を、以下に示す。
図３３からわかるように、ユーザプリファレンスに基づいてアイテムを選択するシステム１０の一実施例では、アイテムが、使用可能なトラックのサプライ１２の一部である音楽の一部（トラック）である。
【００８８】
トラックは、トラックのソース１４から供給され、トラックのソース１４には、オーディオテープ、コンパクトディスク、ミニディスク、デジタル多用途ディスク、あるいは、放送媒体、無線接続、衛星ラジオ、インターネットまたは他のコンピュータネットワーク上のストリーミングメディア、または他のソースを含む他のソースなどの媒体を含めることができる。したがって、用語トラックを、有形の媒体のトラックとしてのみ現れるかのように使用するが、用語トラックが、それが作成されるか記憶されるかユーザに配布される形が何であれ、すべてのアイテムを含むことが意図されている。
【００８９】
また、この議論の多くで音楽の例を使用するが、プリファレンスが表現されるアイテムは、とりわけ、オーディオ、ビデオ、およびマルチメディアアイテムを含むすべての種類のアイテムと、データベースのレコード、ワールドワイドウェブで検索することによって入手できるアイテム、またはソフトウェアプログラムの特徴を含む非オーディオビジュアルアイテムとすることができる。同様に、たとえば商業的に使用可能なソースおよびユーザによって作られるソースを含むすべての種類のトラックのソース１４が、可能である。用語ＣＤおよびコンパクトディスクは、すべてのタイプのトラックのソースを含むものとして使用される。いくつかの場合に、トラックがソフトウェアプログラムの特徴を表す場合に、トラックのソースが、システム自体になる（ソフトウェアが、それ自体の特徴の「ソース」なので）。その代わりに、この実施例では、ＣＤが、たとえば、ソフトウェアの特徴の論理サブセットを表すことができ、すべてのテキストフォーマッティングコマンドが、単一のＣＤを構成し、各コマンドが、単一のトラックになる。
【００９０】
使用可能なトラックのサプライは、大容量記憶装置に記憶することができ、その結果、このサプライが、必要に応じてローカルに使用可能になる。記憶装置に、ハードディスク（ポータブルハードドライブを含む）、ＣＤ−ＲＷドライブ、テープレコーダ、ビデオレコーダ、メモリデバイス、またはユーザへの演奏のために複数のアイテムを保持できる他のストレージデバイスを含めることができる。説明を簡単にするために、本明細書では、その代わりに、読み取りアクセスを提供する（書込アクセスはあってもなくてもよい）すべてのストレージデバイスをハードディスクまたはストレージデバイスと称する。いくつかの場合に、使用可能なトラックをローカルに記憶する必要がない場合がある。その代わりに、使用可能なトラックを、有線または無線の通信チャネルを介して遠隔ソースからオンザフライで入手可能にすることが可能である場合がある。ストレージが使用される時に、システムは、トラックを取り込み、適当なフォーマットに変換し、関連する識別情報を生成し、これらを記憶媒体に記録する機構を提供することができる。
【００９１】
図３３に示されたシステムでは、トラックが、トラックプレイヤ１６によってユーザのために再生される。所与の時に再生されるトラックは、次トラック識別子１８によって識別される。トラックプレイヤには、再生されるトラックを識別する信号に応答してユーザのためにトラックを演奏できるすべてのデバイスを含めることができる。したがって、プレイヤに、たとえば、ＣＤプレイヤ、ＣＤチェンジャ、テーププレイヤ、無線音楽再生デバイス、ＭＰ３プレイヤ、ビデオテーププレイヤ、ＤＶＤプレイヤ、ウェブブラウザ、ディスプレイデバイス、携帯情報端末、携帯電話機、固定電話機、またはコンピュータを含めることができる。トラックプレイヤの性質は、トラックの性質に依存する。たとえば、トラックがソフトウェアプログラムの特徴を表す場合に、トラックプレイヤは、ソフトウェアプログラム自体になる。いくつかの実施例で、トラックセレクタによって、複数のトラックプレイヤを制御することができる。
【００９２】
プレイヤが、トラックセレクタから次トラック識別子を受け取る時に、トラックプレイヤは、識別されたトラックをサプライから取り出し、ユーザ２０のために演奏する。オーディオ、ビデオ、または他のマルチメディアトラックの場合に、トラックの再生は、通常は、シーケンシャルに行われる。たとえば、トラックに、データベース内のレコードまたはインターネットを介して入手可能なリソースが含まれる時に、トラックを、次トラックセレクタの組に基づいて同時にグループで表示することができる。したがって、本明細書では、再生または演奏の用語を使用して、トラックおよびユーザに適当な形でユーザにアイテムを表示、演奏、または他の形で配布することを広義に意味する。
【００９３】
どのトラックを次に再生するかの判定は、トラックセレクタ２２によって行われる。トラックセレクタは、様々な形をとることができる。いくつかの場合に、トラックセレクタは、マイクロプロセッサ、メモリ、適当なバスおよびキャッシュ、大容量記憶装置、オペレーティングシステムソフトウェア、アプリケーションソフトウェア、ならびに関連する入力デバイスおよび出力デバイス用の入出力ドライバを含む汎用コンピュータとすることができる。他の場合に、トラックセレクタを、本明細書に記載の特定の目的のために設計された回路のカスタムビルドの組とすることができる。トラックセレクタは、車両または建物の中あるいはコンピュータまたはハンドヘルドデバイス内の既存のシステムの一部とすることができる。図３３に示された要素の組全体を、携帯情報端末、携帯電話機、または音楽プレイヤなどのハンドヘルドデバイス内で、あるいは車両または建物の中に配置されたシステム内で実施することができる。
【００９４】
トラックセレクタに、ソフトウェア、ファームウェア、またはハードウェアの形のロジック２４と、メモリまたは大容量記憶装置の形のストレージ２６を含めることができる。トラック選択は、トラック選択モジュール２８によって実行される。トラック選択処理の詳細を後で説明するが、一般に、トラック選択は、ユーザによってユーザインターフェース３０を介して供給される情報およびストレージ２６で保持されるトラックに関する情報に基づく。いくつかの場合に、ユーザによって供給される情報は、トラックに関するユーザの反応またはプリファレンスを示す暗黙のまたは明示的なフィードバックと、そのフィードバックに依存して再生されるトラックの選択である。反応情報は、ユーザによって入力される生情報、または生情報から導出される情報（たとえば変数）とすることができるが、記憶され、将来に再生されるトラックの選択を行うことを含む目的に使用される。他の場合に、トラック選択は、過去のユーザプリファレンスまたは反応情報に基づくのではなく、ユーザインターフェースの入力側３２を介してユーザによって供給されるコマンドのより普通の組だけに基づく。普通のコマンドは、たとえばユーザが、システムに、選択されたＣＤのすべてのトラックをトラック順で再生させることを望むことをユーザが指定できるようにするユーザインターフェースの態様を介して供給することができる。
【００９５】
ユーザインターフェースには、入力側３２および出力側３４の両方が含まれる。入力側には、ボタン、ノブ、タッチパネル、音声認識ソフトウェア、およびユーザがシステムに行わせたいことまたはユーザが供給しようとしているプリファレンス情報を暗黙のうちに決定できるセンサを含めることができる。出力側には、可聴信号、ディスプレイ、ライト、音声合成、またはシステムの動作の状態に関してユーザに情報を供給する他のデバイスを含めることができる。
【００９６】
入力側に、ユーザがトラックに関するプリファレンスを示し、他の形でフィードバックまたは反応を供給する明示的なおよび暗黙の機構を含めることができる。明示的な機構には、ユーザがトラック、たとえば再生中のトラックを好むか嫌うかをユーザが直接に示すことを可能にする、ボタンまたは他のデバイスを含めることができる。暗黙の機構を使用することもでき、たとえば、ユーザがトランスポートボタンを押して次のトラックにスキップする時に、このアクションを、ユーザが再生中のトラックを好まないことの暗黙の指示として解釈することができる。
【００９７】
トラックセレクタのストレージは、システムが再生についてトラックを選択できるようにする情報を保持する。トラックスコアリング情報３６を、トラックのサプライ内のすべてのトラックについて供給することができる。トラックのサプライ内のすべてのトラックのトラックスコアリング情報は、トラックが再生されるか、ユーザがユーザフィードバックおよびプリファレンスを反映するアクションをユーザインターフェースを介して行うたびに、更新される。トラックは、後で説明する形で、相対スコアに基づいて選択される。
【００９８】
ストレージ２６は、前に再生されたトラックの識別子のシーケンスを記録する再生ヒストリ３８と、トラックに関する情報（たとえば、タイトル、演奏者、ジャンル）を保持するメタデータ４０も保持する。その代わりに、メタデータを、ストレージと別々の読取専用リポジトリ、たとえばＣＤ−ＲＯＭに配置することができ、あるいは、外部中央データソースから無線機構を介してアクセスすることができる。他の情報も、ストレージに保持され、この情報については以下で詳細に説明する。
【００９９】
トラック選択モジュール２８の他に、ロジック２４に、ユーザインターフェースとの相互作用を制御するモジュール５０、および使用可能なトラックのサプライへのトラックの記憶を制御するモジュール５２が含まれる。メタデータ保守モジュール５６は、メタデータを獲得し、保守し、メタデータは、メタデータのソース６０から供給され、いくつかの場合に、ユーザによって直接に、ユーザインターフェースの入力を介して、またはストレージへのパーソナルコンピュータインターフェースを介して供給することができる。再生ヒストリ保守モジュール５８は、再生ヒストリ３８を保守する。トラックスコアリングモジュール５４は、前に再生されたトラックに対するユーザ反応に関するデータを保守することができ、トラック選択モジュール２８による使用のためにトラックにスコアを割り当てることができる。以下の説明から明白になるように、他のロジックモジュールを含めることができる。
【０１００】
アイテム選択システム１０は、ユーザに、ユーザのプリファレンスを満足する、音楽トラックなどのアイテムへの、事前の構成を必要としない簡単で直観的なアクセスを提供する。このシステムは、アイテムすなわちトラックを、過去および現在のユーザの挙動およびアイテムの内容の内部知識を考慮に入れて、サプライから自動的に選択する。このシステムは、ユーザからのフィードバックの供給が簡単になるように配置される。ユーザからの最小限の介入で、このシステムは、ユーザが関心を持つアイテムを選択する。
【０１０１】
このシステムの動作の簡単な実施例では、ユーザは、トラックを聴取している時に、そのトラックを好むことを示すプリファレンスボタンまたはそのトラックを嫌うことを示す別のプリファレンスボタンを押すことができる。どちらの場合でも、ユーザのプリファレンスに関する情報が、累積され、そのトラックのスコアの一部として記憶される。それと同時に、プリファレンス情報が、他のトラック、たとえば同一ＣＤの別のトラックまたは同一アーティストによる他のＣＤの他のトラックの、スコアを変更するのに使用される。ユーザが、トラックを嫌うことを示す時に、システムは、別のトラックにジャンプする。ユーザは、やはり、プリファレンスボタンの１つを押すことによって自分のプリファレンスを示すことができ、情報が、やはり、そのトラックを再スコアリングするのに使用される。ユーザが、トラックを完全に再生させる場合に、または、トランスポートボタンを押してシステムに強制的に次のトラックへジャンプさせる場合に、その暗黙のプリファレンス情報も、使用される。
【０１０２】
トラックのスコアは、たとえばＣＤのどのトラックが、よりよいトラックまたはより悪いトラックであるかに関する音楽評論家からの情報を考慮に入れるために調整することができる。一実施例で、批評家が、ＣＤの最良のトラックを識別することができ、その情報を使用して、トラックのスコアを高めることができる。その効果は、ＣＤが初めて再生される時に、批評家によって最良として識別されたトラックが、最初に再生される、より高い確率を有することである。「最良」のトラックが最初に再生される場合に、ユーザは、そのトラックについて否定のプリファレンス（サムダウン）を示す可能性が低く、トラックスコアリングシステムが、ＣＤのトラックに関するユーザの真のプリファレンスを学習する可能性が高い。
【０１０３】
システムが、トラックを自動的に選択するモードで動作している時に、使用可能なトラックのサプライ内の各トラックは、トラックのスコアを考慮するアルゴリズムに従って、次に再生される、０でない確率を有する。したがって、システムは、すばやく効果的にユーザプリファレンスに適応し、ユーザによるユーザのプリファレンスを示す最小限の量の相互作用だけを必要としながらこれを行う。ユーザがプリファレンスを表す形、システムが再生についてトラックを選択する形、およびトラックスコアが維持される形に関する詳細を、後で示す。
【０１０４】
利点
選択システムの長所の中に、下記の１つまたは複数がある。
（１）平易性。システムは、トラックのコレクションへの簡単なアクセスを提供する。システムは、ユーザが単に「電源」ボタンを押し、ユーザが楽しむトラックを聞き始めることを可能にする。
（２）制御。システムは、再生されるものに対する制御をユーザが失うことなく、この簡単なアクセスを提供する。現在再生されつつあるトラックに対する簡単な応答を表すことによって、ユーザは、システムが次の再生に選択するものに影響することができる。音楽の分野では、ＣＤプレイヤは、高い度合の制御を提供するが、音楽選択プロセスでのかなりのユーザ介入を必要とし、総合的な簡単さが減る可能性がある。ラジオは、最小限のユーザ介入を必要とし、高い度合の簡単さ（平易性）を可能にするが、制御をほとんど許容しない。図２９を参照されたい。音楽トラックに適用される時に、このシステムは、そのギャップを補うことが意図されている。
（３）アクセス。システムは、元の媒体が使用可能であることを必ずしも要求せずに、トラックの記憶されたコレクション全体へのアクセスを提供する。
（４）セットアップなし。システムは、ユーザが前もって何を再生するかを判断することを必要とせずに、この制御を提供する。
（５）安全。システムは、ユーザが、自動車を安全に運転するか、特に注意を要する他の作業を行いながら、コレクション全体を享受できるようにする。
【０１０５】
プラットフォーム
音楽アイテムの文脈で、選択システムは、図７に示された形のハードウェアシステムで実施することができる。システム７０８に、コンピュータ７０４、記憶装置７０５、増幅器７０６、およびスピーカ７０７が含まれる。外部コンポーネントに、ＣＤドライブ７０１、ユーザ入力７０２、およびユーザ用のディスプレイ７０３を含めることができる。
【０１０６】
選択システムの組込みに関する３つの可能なプラットフォームが、図１、２、および３に示されているが、様々なプラットフォームを使用することができる。
図１からわかるように、システム１０３は、後の再生のために音楽を記憶するハードドライブ１０１を追加することによって、Ｂｏｓｅ社のＬｉｆｅｓｔｙｌｅ  ３５（１０６）などのホームエンターテイメントシステムに組み込むことができる。このシステムは、再生されるトラックのシーケンスを判定し、そのシーケンスを、ハードドライブからエンターテイメントシステムに供給する。ユーザプリファレンス情報およびフィードバックが、一体化された遠隔制御１０７でユーザから受け取られ、将来に再生されるトラックを判定するのに使用するためにシステム１０３に送り返される。エンターテイメントシステム１０６は、ＡＭおよびＦＭラジオ１０４、コンパクトディスクまたはＤＶＤ１０５、またはそのハードドライブ１０１から音楽を再生する能力を有し、マルチゾーン対応であり、家庭の異なる区域で音楽の異なるアイテムを再生することができる。遠隔制御１０７は、コアユニット１０８およびアイテム選択システム１０３の両方とインターフェースする。
【０１０７】
図２に示されたもう１つの実施例では、アイテム選択システム２０２を、やはりハードドライブまたは他のランダムアクセス記憶媒体２０１を追加することによって、Ｂｏｓｅ  Ａｃｏｕｓｔｉｃ  Ｗａｖｅ  Ｍｕｓｉｃ  Ｓｙｓｔｅｍ  ２０５などのより小さいユニットでホスト処理することができる。そのような構成では、システムが、ＡＭおよびＦＭラジオ２０３、コンパクトディスク２０４、および内蔵ハードドライブ２０１から音楽を再生することができる。遠隔制御２０６は、コアユニット２０７およびアイテム選択システム２０２の両方とインターフェースする。
【０１０８】
図３に示された第３の実施例では、アイテム選択システム３０５を、車両の音楽ネットワークに一体化することができる。この実施形態では、システムが、標準的な自動車エンターテイメントシステム３０９（最低限でも、コンパクトディスクプレイヤ３０２およびスピーカ３０３などのオーディオソースを含む）、ハードドライブまたは他のランダムアクセス記憶媒体３０４、コンピューティングエンジン３０７、および追加ユーザインターフェース制御３０６を増補し、自動車のオーディオビジュアルネットワークにリンクされる。この構成では、システムが、その内蔵ハードドライブ３０４から音楽を再生し、ハードドライブ３０４は、ＡＭおよびＦＭラジオ３０１、ＣＤまたはＤＶＤ３０２、および潜在的に衛星ラジオ３０８から音楽を記録することができる。
【０１０９】
前に注記したように、このシステムは、ビデオジュークボックスシステム、データベースエンジン、またはソフトウェアプログラム（選択されるアイテムが、特徴またはメニューアイテムになる場合がある）などの他のプラットフォームでも実施することができる。
【０１１０】
動作モード
前に述べたように、このシステムは、たとえば下記などの様々なソースからトラックを再生することができる。
（１）ＣＤ／ＤＶＤ。システムは、現在ロードされているＣＤ／ＤＶＤディスクを再生する。このモードでは、現在ロードされているＣＤ／ＤＶＤディスクに関して、ユーザが、たとえば再生、一時停止、次のトラック、前のトラックなど、コンパクトディスクプレイヤで使用可能な標準的なオプションを選択することができる。ＣＤ／ＤＶＤモードでの動作は、新しいモードが選択されるまで継続される。
（２）ＡＭ／ＦＭ／衛星ラジオ。システムは、標準的なＡＭ／ＦＭラジオまたは衛星ラジオとして動作する。
（３）カセットテープ。システムは、カセットプレイヤとして動作する。
（４）ステレオトラック。システムは、その内蔵ハードドライブからトラックを再生する。
（５）インターネット。システムは、インターネットに配置された別のコンピュータから取り出されたトラックを再生する。
（６）内部。たとえば、トラックが、コンピュータソフトウェアの特徴である場合に、外部データが不要である場合がある。
【０１１１】
システムが、そのハードディスクからトラックを再生する時、または外部データが不要である場合に、システムは、下記のモードの１つで動作することができる。
（１）自動選択モード。図６からわかるように、このモードでは、システムが、システムが使用可能なすべてのトラックからとられたセレクションを再生する。ユーザは、再生されるトラックに関して、明示的または暗黙のフィードバックを供給する。フィードバックは、ユーザプリファレンスを表すことができる。システムは、ユーザフィードバック（より最近のフィードバックを強調する）および最近再生されたトラックのヒストリに基づいて、ユーザのためにトラックを選択する。選択システムは、現在のいわゆるユーザステーションに記憶されたフィードバックも考慮に入れることができる（下の「ステーションおよびプリセット」を参照されたい）。いくつかの実施形態で、簡単さを高めるために、自動選択モードが、デフォルトモードであり、他のモードが再生を完了した時に、システムが、自動選択モードに戻る。
【０１１２】
図６に、自動選択モードである時に選択システムがそれによって機能する処理を示す。トラック選択は、自動選択モジュールによって達成される（以下の「モジュール」を参照されたい）。自動選択モジュールは、当初はアイドル状態２２０１である（他のモジュールがアイドルでない場合があり、具体的には、システムがトラックを再生している場合があることに留意されたい）。モジュールが、次のトラックを選択する時であることの通知２２０４を受け取る（トラックが完了した後またはすぐに完了する時を示す信号を、プレイヤによって供給することができる）時に、「モジュール」セクションで説明するように、モジュールは、「トラック選択」状態２２０２に切り替わる。モジュールは、後のセクションで説明するように、次に再生するトラックを選択する。モジュールがトラック選択状態である間に、さらなるトラック選択要求が受け取られる場合には、モジュールは、その要求をトラック選択キューに追加する。モジュールが、トラックの選択を完了した時に、トラック選択キューまたはフィードバックキューにアイテムがない場合には、システムはアイドル状態に戻る（２２０５）。さらなるトラック選択要求がある場合には、システムは、トラック選択状態に戻る（２２０６）。
【０１１３】
モジュールが、フィードバックイベント（すなわち、現在再生されているトラックに関するユーザからの暗黙のまたは明示的な指示があったことの、ユーザインターフェースモジュールからのメッセージ）を受け取る時に、モジュールがアイドル状態である場合には、システムは、「フィードバック構造更新」状態２２０３に切り替わる（２２０９）。モジュールが、トラック選択状態またはフィードバック構造更新状態である間にメッセージを受け取る場合には、モジュールは、そのイベントをフィードバックキューに置く。モジュールが、トラック選択処理を完了した時に、フィードバックキューが空でなく、さらなるトラック選択イベントがない場合に、モジュールは、「フィードバック構造更新」状態に切り替わる（２２０７）。その状態で、以下で説明するように、モジュールは、記憶済みトラックグラフを更新する。終了した時に、モジュールは、フィードバックキューおよびトラック選択キューが空である場合に、アイドル状態に戻る（２２１０）。フィードバックキューが空でない場合には、モジュールは、フィードバック構造更新状態に戻る（２２１１）。トラック選択キューが空でない場合には、モジュールは、トラック選択状態に戻る（２２０８）。
【０１１４】
他の実施形態では、自動選択モードがトラックレベルではなくＣＤレベルまたはアルバムレベルで動作しなければならないことをユーザが指定することが可能にされる。この構成では、自動選択モードで、ユーザが関心を持つと予想されるＣＤを選択し、最初から最後までそのＣＤを再生する。
【０１１５】
（２）トラックモード。このモードでは、システムが、事前に指定されたトラックだけ、たとえば、ユーザによって定義された所与のプリセットにリストされたトラックだけ、あるいは特定のＣＤまたはアルバムのすべてのトラックを再生する。このモードは、（ａ）通常、（ｂ）シャッフル、および（ｃ）リピートを含む複数の再生オプションを有することができる。
【０１１６】
（ａ）「通常」オプションは、システムに、ユーザがプログラムした順序ですべてのトラックを再生させる。最後のトラックの終りに、システムは、自動選択モードに戻ることができる。
【０１１７】
（ｂ）「シャッフル」オプションは、システムに、ユーザによって指定されたトラックをランダムな順序で再生させる。すべてのトラックが再生された時に、システムは、自動選択モードに戻ることができる。
【０１１８】
（ｃ）「リピート」オプションは、システムに、変更するようにユーザがシステムに指定するまで、トラックモードに留まらせる。このモードは、「通常」オプションまたは「シャッフル」オプションと共に使用して、繰り返される前に、トラックがどの順序で再生されるかを判定することができる。
【０１１９】
（３）ビンモード。このモードでは、各プリセット（制御パネルのキーパッドボタンなどのユーザインターフェースオブジェクトによって表される）に、１つまたは複数のＣＤが含まれる。システムは、ユーザが現在のプリセットに追加したすべてのＣＤのトラックを再生する。ＣＤが、部分的にのみ記憶されている場合に、システムは、記憶されているトラックだけを再生する。ビンモードを実施するシステムでは、設定メニューを介して、ＣＤをビンプリセットに追加し、削除することができる。いくつかの実施例で、システムが、何らかのモードで、記憶されたトラックを再生している時に、ユーザが、現在のトラックがそこからプリセットに記録されたＣＤを追加するために、プリセットキーを押下げ、保持することができる。トラックが再生される順序は、「トラック」で説明した同一の再生オプションによって指定される。「通常」オプションまたは「シャッフル」オプションでの再生の終りに、システムは、自動選択モードに戻ることができる。
【０１２０】
（４）仮想ＣＤチェンジャモード。このモードは、各プリセットが単一のＣＤだけを表すことを除いて、ビンモードに似ている。したがって、ユーザは、キーパッド１８０５のボタンを押して、再生するＣＤを選択することができる。その代わりに、ユーザが、２桁または３桁のコードを入力して、特定のＣＤを選択することができる。ユーザは、「トラック」で説明した再生オプションの１つを選択することもできる。このオプションは、現在のＣＤだけに適用されるが、追加のオプションで、これらをプリセットのいずれかのすべてのＣＤのすべてのトラックに適用できるようにすることができる。再生の終りに、システムは、自動選択モードに戻ることができる。
【０１２１】
（５）検索モード（図９を参照されたい）。検索モードでは、ユーザが、ディスク番号、アーティスト、または使用可能な他の情報によってソートされた、使用可能なコンテンツの表示されたリストをスクロールすることができる。ユーザは、再生のために、ディスク全体、アーティスト、ジャンルまたは任意の組合せを選択することができる。ユーザは、その代わりに、システムのハードディスクに記録されたＣＤを表すコードを入力して、そのＣＤのトラックを再生することができる。
【０１２２】
トラックモードについて説明した再生オプションは、検索モードにも適用される。「通常」オプションまたは「シャッフル」オプションでの再生の終了時に、システムは、自動選択モードに戻る。再生は、実際にはトラックモードで行われ、検索モードでは、単に、トラックモードによる再生のための特殊な再生リストがセットアップされる。
【０１２３】
一例で、システムは、１つの再生リストだけを維持し、ユーザは、キーパッドの０を押すことによってこの再生リストをアクティブ化する。この例では、一部のモードの間の切替が、図２０の状態図に従って行われる。システムは、デフォルトで、自動選択モード２００１で開始する。ユーザは、遠隔コントローラのキーパッド１８０５（図１８を参照されたい）の対応するボタンを押すことによって、ユーザステーションを変更することができる（以下の「ユーザステーションおよびプリセット」を参照されたい）（２００５）。トラックが完了する時に（２００６）、システムは、自動選択モードのままであり、新しいトラックを選択する。ユーザが、ｃｈａｎｇｅｒ（チェンジャ）１８０６を押す時に、システムは、チェンジャモード２００３に切り替わる（２００７）。チェンジャモードでは、ユーザが、キーパッドボタンを押すか、コードを直接に入力することによってＣＤを選択する場合に、システムは、チェンジャモード２００３に留まり（２０１２）、コードが指定されたＣＤまたはキーパッドボタン（本明細書ではスロットと呼ぶ）に割り当てられたＣＤからのトラックの再生を開始する。トラックの終りに、システムは、次のトラックを再生する（２０１１）。ＣＤが完了した時に、システムは、次のスロットによって指定されるＣＤの再生を開始する（２０１３）。すなわち、ユーザがキーパッドボタン２を押す場合に、システムは、スロット２のＣＤを再生し、その後、スロット３のＣＤを再生する。ユーザが、「Ｓｍａｒｔ  ｐｌａｙ（スマート再生）」を押す場合に、システムは、自動選択モードに切り替わる２００８。ユーザが、チェンジャモードからＷｈｏｌｅ  Ａｌｂｕｍ（全アルバム）を押す場合に、システムは、チェンジャモードに留まる（２０２３）が、現在のアルバムを先頭から始める。
【０１２４】
ユーザが、ｓｅａｒｃｈ（検索）１８１２を押し（および、検索画面から選択を行う）、再生リスト１８０７を押す時に、システムは、自動選択モード２００１またはチェンジャモード２００３からトラックモード２００２に戻る（２００９、２０１０）。自動選択モードから、Ｗｈｏｌｅ  Ａｌｂｕｍボタンによって、システムが、トラックモードに切り替わる（２００９）。検索ボタンが押された場合に、システムは、検索結果を表す再生リストをセットアップする。再生リストが押された場合に、システムは、再生リストのトラックを再生する。Ｗｈｏｌｅ  Ａｌｂｕｍが押された場合に、システムは、現在再生されつつあるＣＤのトラックのそれぞれを表す再生リストをセットアップする。トラックモードでは、前に述べたように再生リストが再生される。再生は、再生すべきトラックがある限り、継続される（２０１６）。ユーザが、「Ｓｍａｒｔ  Ｐｌａｙ」を押す場合、または、システムが、再生リストのすべてのトラックを完了し、前の状態が自動再生モードであった場合に、システムは、自動選択モードに切り替わる（２０１４）。ユーザが、「Ｃｈａｎｇｅｒ（チェンジャ）」を押す場合、または、システムが、再生リストのすべてのトラックを完了し、前の状態がチェンジャモードであった場合に、システムは、チェンジャモードに切り替わる（２０１５）。
【０１２５】
ユーザが、３つの状態のいずれかからａｎｏｔｈｅｒ  ｓｏｕｒｃｅ（別のソース）ボタンを押す場合に、システムは、その状態を保存した後に、新規ソース２００４に切り替わる（２０１８、２０２０、２０２１）。他のソースから、ユーザは、現在再生されているトラックをシステムのハードディスクに記録させることができる。記憶が完了した時に、システムは、前の状態に戻る（２０１７、２０１９、２０２２）。ユーザが、他のソースモードから「Ｓｍａｒｔ  ｐｌａｙ」を押す場合に、システムは、最も最近に使用されたユーザステーションに切り替わる（２０１９）。ユーザが、「Ｃｈａｎｇｅｒ」を押す場合に、システムは、チェンジャモードに切り替わる（２０２２）。ユーザが、再生リストを押す場合に、システムは、トラックモードに戻る。
【０１２６】
この実施例では、トラックがチェンジャモード、トラックモード、または自動選択モードで再生されつつある間に０を押したままにすることによって、現在のトラックが再生リストに追加される。ユーザは、ｒｅｍｏｖｅ（除去）ボタンを押すか、設定メニューからオプションを選択することによって、再生リストからトラックを除去することができる。
【０１２７】
他の実施形態では、複数の再生リストが許容され、いくつかの実施形態では、おそらくはトラックモードを修正して、ＣＤの個々のトラックではなくＣＤ全体を再生することによって、上で説明した「ビン」モードも実施される。いくつかの実施形態には、上にリストしたモードの一部が含まれない。他の実施形態に、追加のまたは置換のモードを含めることができる。たとえば、いくつかの実施形態に、現在再生されているトラックと同一のアーティストによって演奏されたすべてのトラックを再生することを除いて「ｗｈｏｌｅ  ａｌｂｕｍ（全アルバム）」ボタンに似ている、「ａｌｌ  ｉｔｅｍｓ  ｂｙ  ｔｈｉｓ  ａｒｔｉｓｔ（このアーティストによるすべてのアイテム）」ボタンを含めることができる。「ａｌｌ  ｉｔｅｍｓ  ｉｎ  ｔｈｉｓ  ｇｅｎｒｅ（このジャンルのすべてのアイテム）」など、検索機能性の他のサブセットも可能である。
【０１２８】
動的な複雑性の調整
選択システムは、たとえばユーザによるすべての機能の完全な制御を可能にする複雑な動作モード、ならびにたとえば簡単なユーザ制御だけを許容する、ユーザが使用可能な特徴の数を減らしたより自動的なモードの両方を提供することができる。ユーザの注意が、主に別のタスクに焦点を合わせている情況で、たとえばユーザインターフェースの複雑な態様などの一部の特徴が、ディスエーブルされる。その時間中は、システムは、主要なタスクからユーザの注意をそらさずに、ユーザのプリファレンスを満足できる、簡単だが機能的なインターフェースを提供する。
【０１２９】
この特徴の１つの実施例を、自動車に設置された選択システムで使用することができる（図１７を参照されたい）。自動車が走っている間に、検索モードがユーザから使用可能でなくなるように、このシステムを構成することができる。このモードは、自動車のギアがパーキングになっているか、パーキングブレーキが効いている間に限って許容されるように制限することができる。他のギアになっている間は、他のモードが使用可能である。
【０１３０】
パーソナルコンピュータ接続
このシステムのいくつかの実施形態では、パーソナルコンピュータとの任意選択のインターフェースを許容することができる。これらの実施形態では、ユーザが、システムから記憶装置を取り外し、コンピュータに直接に取り付けることができる。ユーザは、すべての記憶されたトラックのリストを、各ＣＤを表すコードと共に保存することができる。ユーザは、直接アクセス機能を使用する後のすばやいアクセスのために、各ＣＤに関連するコードをプリントアウトすることができる。
【０１３１】
ハードディスクがコンピュータに接続されている間に、ユーザは、コンピュータのハードウェアを利用して、追加のトラックをハードディスクに記憶することができる。これは、たとえば、コンピュータのＣＤプレイヤが、システムのプレイヤよりすばやくＣＤデータを読み取り、記憶できる場合に有利である。
【０１３２】
コンピュータは、再生リストを作成し、アイテム選択システムで使用可能でないメタデータデータベースから、記憶されたトラックのメタデータをルックアップする能力を提供することもできる。最後に、ユーザは、記憶されたトラックコレクションを、バックアップのために自分のコンピュータに保存することができる。
【０１３３】
ユーザインターフェース
ユーザは、システムが組み込まれるプラットフォームに依存するインターフェース機構を介して、選択システムと対話する。たとえば、図１８からわかるように、ユーザは、遠隔制御を使用することができる。あるいは、図２３のように、たとえばホームエンターテイメントシステムに組み込まれる時に、制御パネルによってシステムを制御することができる。自動車に設置される時に、システムは、図２４に示されているように、ステアリングホイールに配置された制御と、図２５に示されているように、ダッシュボードに配置された残りの制御を有することができる。システムが、コンピュータソフトウェアの特徴の選択を制御する場合に、ユーザインターフェースは、そのソフトウェア自体によって提供される。以下で説明するユーザインターフェース要素の一部は、非音楽トラックに適用可能でない場合がある。
【０１３４】
図１８の遠隔制御には、ユーザが使用可能な機能性のほとんどが示されているが、この制御自体は、コンソールに、オンスクリーンメニューからの選択として、または別の場所に配置することができる。電力は、標準的なオン／オフボタン１８１６を使用して制御することができる。ユーザは、ミュートボタン１８１８を用いてサウンドを消音することができる。ユーザは、ボタンの組１８２６を用いてトラックのソースを選択することができる。その代わりに、システムが使用可能なソースを循環する単一のボタンを設けることができる。システムが、記憶されたトラック以外のソースモードである時に、ユーザは、「Ｓｔｏｒｅｄ（記憶）」ボタン１８１７を押し、保持して、システムに、現在のトラックをハードディスクに記憶するように指示することができる。その代わりに、図２５のように、システムが、ユーザが現在のトラックを保存できるようにする別々のボタン２５０３を備えることができる。システムは、システムが記憶されたトラックを再生している場合に、ユーザが現在のトラックを削除できるようにするボタン２５０２も備えることができる。その代わりに、このボタンが、現在のＣＤまたはアルバムからのすべてのトラックを削除する機能性を提供することができる。
【０１３５】
ユーザは、ｓｅｔｔｉｎｇｓ（設定）ボタン１８０１を使用して、システムの高度な設定にアクセスすることができる。ＤＶＤモードである時に、ＤＶＤにエンコードされた特殊な特徴および情報に、ＤＶＤ  ｍｅｎｕ（ＤＶＤメニュー）ボタン１８０４を用いてアクセスすることができる。これらのメニューのどれからも、ｅｘｉｔ（抜ける）ボタン１８０３を用いて抜けることができる。これらのメニューでのナビゲーションは、矢印キー１８２５を用いて達成される。ｅｎｔｅｒ（エンター）キー１８０２は、これらのメニューで選択肢を受け入れるのに使用される。
【０１３６】
ユーザは、ｖｏｌｕｍｅ（ボリューム）キー１８２６を用いてボリュームを制御することができる。ボタン１８２７を使用して、自動選択モードで動作している時に、現在のユーザステーション（「ユーザステーションおよびプリセット」を参照されたい）を変更することができ、トラックの変更をサポートする入力モードである時に、現在再生されているトラックを変更することができる。現在のユーザステーションは、キーパッド１８０５から新しいステーションを直接に選択することによっても変更することができる。
【０１３７】
再生リストモード以外のすべてのモードから、ユーザは、トラックがシステムのハードディスクから再生されている時に、０を押し、保持することによって、トラックを再生リストに追加することができる。ユーザは、キーパッド１８０７で０を１回押すことによって、再生リストモードに入ることができる。ユーザは、この目的のために指定されたボタン１８１９を押すことによって、前の再生モードに戻ることができる。
【０１３８】
現在再生中のトラックに対する制御は、標準的なトランスポート制御を使用して行使することができる。ユーザは、ｐｌａｙ（再生）ボタン１８２０を使用して再生を開始し、ｐａｕｓｅ（一時停止）ボタン１８２２を使用して再生を一時停止し、ｓｔｏｐ（停止）ボタン１８２１を使用して再生を停止することができる。さらに、ユーザは、次トラックボタン１８２３を使用して次のトラックにスキップし、ボタン１８２４を使用して前のトラックに戻ることができる。
【０１３９】
ハードディスクのトラックを再生している時に、再生モードを、ボタン１８１１、１８０６、１８１０、および１８１３を使用して調整することができる。ｗｈｏｌｅ  ａｌｂｕｍボタン１８１１は、システムに、現在のトラックがそれから記録されたアルバムのすべてのトラックを再生させる。ｃｈａｎｇｅｒボタン１８０６は、システムに、仮想ＣＤチェンジャモード（「動作のモード」を参照されたい）に切り替えさせる。ｓｍａｒｔ  ｐｌａｙボタン１８１０は、システムに、自動選択モードに切り替えさせる。ｂｉｎｓ（ビン）ボタン１８１３は、システムに、ビンモードに切り替えさせる。ユーザは、ｓｅａｒｃｈボタン１８１２を押すことによって、検索モードに入ることができる。
【０１４０】
システムには、ユーザが、トラック、たとえば現在再生されているトラックに対する反応（プリファレンス）を示せるようにするフィードバック機構が含まれる。これは、簡単な＋レーティングボタン１８１５および−レーティングボタン１８１４を設けることによって達成することができる。他の実施例では、図２３に示されているように、＋ボタン２３０２が、−ボタン２３０３の上に配置され、この２つのボタンが、最大値と最小値の間でプリファレンス値をスクロールするように働くことができる。他の実施例で、図２４および３２に示されているように、＋ボタン２４０１が、−ボタン２４０２より大きく、その上にあるものとすることができる。いくつかの実施例で、これらのボタンは、システムがスマート再生モードである時のレーティングボタンと、システムが再生の他のモードである時のスクロールボタンという２つの目的のために働く。他のインジケータも使用することができる。たとえば、＋および−の代わりに、システムに、サムアップインジケータおよびサムダウンインジケータを設けることができる。ボタンは、色コード付き（たとえば、否定の反応に赤いボタン、肯定の反応に緑のボタン）とすることもできる。
【０１４１】
フィードバックボタンのほかに、このシステムのいくつかの実施例に、元に戻すボタンを設けることができる。このボタンは、記憶済みトラックグラフ（「メタデータ」を参照されたい）に対する前に作動されたフィードバックボタンの効果を完全に元に戻す。ユーザが、前のトラックに戻り、そのトラックの前の再生で与えられたものと反対のフィードバックを示すことによって、うっかり入力したプリファレンス表示の効果を減らせるようにすることも可能である。
【０１４２】
様々な機構をインターフェースに設けて、ユーザがトラックに対する肯定または否定の反応を示せるようにすることができる。３つ以上のボタンを設けて、３つ以上のオプションからプリファレンスの明示的な指示を可能にすることができる。逆に、単一の肯定のフィードバックボタンまたは単一の否定のフィードバックボタンのいずれかの、またはある時間だけ押してユーザのプリファレンスのレベルを示すことができる単一のボタンの、単一のフィードバックボタンの使用が可能である。簡単ではないが、簡単な好みおよび嫌悪など以外の種類のフィードバックを提供することを意図されたボタン、たとえば、幸せ、悲しみ、冷淡などの、トラックに対する感情的反応のタイプを表すボタンが可能である。フィードバックの機構は、ボタンである必要はなく、ノブ、ダイアル、サムホイール、タッチスクリーン、音声認識、バイオメトリックリーダー、またはユーザの入力を受け取れる任意の他のデバイスとすることができる。ボタンの形状は、図に示された形状と異なるものとすることができる。
【０１４３】
フィードバックデバイスの形状、輪郭、位置、および他の態様は、ボタンの機能に対応する直観的な触覚感覚をユーザに与えるように選択することができる。たとえば、＋ボタンを−ボタンの上に置き、プラスボタンを−ボタンより大きくすることによって、ボタンのそれぞれの意味の直観的な感覚を伝えることができる。２つの異なるプリファレンスボタンの表面輪郭は、その意味を直観的に示すように配置することができる。たとえば、＋ボタンは、へこんだ表面（通常は快適として感じられる）を有することができ、−ボタンは、凸の表面（通常は、不快として感じられる）を有することができる。
【０１４４】
プリファレンスボタンを、互いの近くに置き、１つまたは複数の主トランスポートボタンの近く、たとえば、ユーザが手全体の動きなしで指の動きだけでこれらのボタンのどれでも押せるようになるのに十分に近くに置くことも望ましい。図２４からわかるように、ボタンをクラスタ化する１つの有用な形が、＋および−のボタンを互いの上下に置き、前後のトランスポートボタンを、＋ボタンと−ボタンをつなぐ垂直軸の左右ですぐそばに置くことである。たとえばステアリングホイールに取り付けられる時に、ユーザは、親指を使い、手全体を動かさずに、レーティングおよびトランスポートを行うことができる。便利であるほかに、そのような配置は、車両内での使用に関して他の配置より安全である可能性がある。
【０１４５】
システムは、表されたプリファレンスおよび他の事項に関してユーザにフィードバックを提供することができる。ある手法で、図２３に示されているように、フィードバックを、組込み画面２３０１で提供することができる。もう１つの手法で、図２５に示されているように、フィードバックを、ＬＣＤディスプレイ２５０１で提供することができる。フィードバックには、再生されたトラックの識別、再生しているユーザステーション、トラックの長さ、経過時間、および再生中のトラックに関するユーザのありそうなプリファレンスレベルのシステムの解釈の指示を含めることができる。
【０１４６】
一部の実施形態では、上で説明したボタンおよびディスプレイを、音声認識システムによって増補するかこれと置換することができる。システムは、ユーザに口頭のフィードバックを供給し、口頭のコマンドを聴取する。その代わりに、システムが、口頭メニュー選択を提供することができ、これは、ボタン押下げまたは音声応答によって選択することができる。
【０１４７】
ディスプレイ
オンスクリーンディスプレイを使用してユーザにフィードバックを提供する実施形態で、システムが、記憶されたトラックを再生している時に、システムは、図２６に示されているように、現在再生中のトラックに関する情報を表示することができる。システムは、現在のアルバムの名前２６０１、現在のトラックのタイトル２６０２、アーティストの名前２６０３、ジャンル２６０４、現在のトラックの経過時間２６０５、現在再生しているユーザステーション２６０６（「ユーザステーションおよびプリセット」を参照されたい）、およびトラックのソース２６０７を表示することができる。
【０１４８】
検索モードでは、図９に示されているように、システムは、ユーザがジャンル９０４、アーティスト９０３、トラック９０２、またはアルバム９０１によって検索できるようにするメニューを表示することができる。システムは、現在の検索結果の範囲９０５を表示することができ、この範囲は、当初は、記憶されたトラックの組全体とすることができる。いくつかの実施例で、検索の初期範囲が、現在生成中のトラックに基づく。ユーザは、たとえば同一のアーティストによって、同一のアルバム内、同一のジャンル内で、比較的すばやく類似するトラックを選択することができる。
【０１４９】
ユーザが、プリセットまたはユーザステーションの編集を望む時に、システムは、図１９に示された画面を表示することができる。プリセットが、ユーザステーションでない場合に、ユーザは、所与のトラックをプリセットに追加するか、プリセットから削除することができる。プリセットが、ユーザステーションである場合に、ユーザは、ステーションに関する明示的な肯定または否定のフィードバックを与えることができる。
【０１５０】
自動車またはポータブルステレオシステムなど、より小さいディスプレイが必要である時には、ディスプレイが、図２７の形をとることができる。システムは、現在のモード２７０１および経過時間２７０２を継続的に表示する。現在のアーティストに関する画面情報２７０３（たとえば「Ｔｈｅ  Ｂｅａｔｌｅｓ」）および現在のトラックのタイトル２７０４（たとえば「Ｈａｒｄ  Ｄａｙ’ｓ  Ｎｉｇｈｔ」）をスクロールさせることもできる。
【０１５１】
ユーザが、明示的フィードバックボタン（たとえば図１８のボタン１８１４または１８１５）を押す時に、どの実施形態でも、ディスプレイで、フィードバックを確認することができる（たとえば、「Ｆｅｅｄｂａｃｋ  ａｃｋｎｏｗｌｅｄｇｅｄ」などの、確認メッセージを一時的に表示することによって）。いくつかの実施形態では、確認を、暗黙のフィードバックならびに明示的フィードバックの受取の際に表示する。
【０１５２】
システムが、トラックを再生している時に、ディスプレイに、そのトラックに関するユーザのプリファレンスレベルのシステムの理解を表すインジケータ２６０８（図２６）を示すことができる。このインジケータは、たとえば、図３１に示された５つのアイコンの１つとすることができる。５つのアイコンに、中実のプラス３１０１、輪郭のプラス３１０２、円３１０３、輪郭のマイナス３１０４、および中実のマイナス３１０５を含めることができる。他のアイコン、他の個数のアイコン、およびアイコンの他の意味も、使用することができる。
【０１５３】
ユーザが、設定モードに入る時に、設定画面２８０１が表示される（図２８を参照されたい）。この画面を用いると、ユーザが、現在再生中のプリセットまたはステーション２８０２を変更できるようになる。この画面を用いると、ユーザが、ユーザが指定した時間の後にシステムが自動的に電源を切る２８０３か、指定された時刻に電源を入れるように構成することができる。この画面を用いると、ユーザが、高音、低音、およびバランスなど、標準的なオーディオ設定２８０４を調整できるようになる。この画面を用いると、ユーザが、高度な設定２８０５を表示し、修正できるようになる。
【０１５４】
ユーザが、高度な設定の編集を選択する場合に、２８０６などの画面を表示することができる。システムは、現在再生中のステーション２８０７を表示し、フィードバックを記録されたトラックの数２８０８およびフィードバックの内容２８０９に関する情報を表示し、現在のステーションで最高のフィードバックレーティングを有するアーティスト２８１０を表示する。ユーザが、現在のステーションのすべての情報をクリア２８１１できるようにすることもできる。
【０１５５】
システムが、オンスクリーンディスプレイではなく音声合成を使用する場合に、類似する情報およびオプションを、口頭でユーザに提示することができる。
【０１５６】
ユーザステーションおよびプリセット
概念上、プリセットは、再生されるトラックのシステムによる選択に影響する、各記憶されたトラックに関する情報を表す。システムがこの情報を使用する機構は、現在のモードに依存し、いくつかのプリセット情報は、あるモードだけに適用可能である。たとえば、トラックモード、ビンモード、または仮想ＣＤチェンジャモードである時に、プリセットに、トラックまたはアルバムが現在のプリセットに含まれるか否かを表す、記憶されたトラックまたはアルバムごとの簡単なイエス／ノーデータが含まれる。ユーザステーションモードでは、プリセットに、自動選択モードでトラックを選択するのにシステムが使用する情報が含まれる。たとえば、図１２では、記憶済みトラックグラフ内のノードごとにフィードバックレコード１２１３を含めることができる（「メタデータ」を参照されたい）。
【０１５７】
選択システムは、任意の個数のプリセットの組を維持することができる（図１５のデータベーススキーマを参照されたい）。たとえば、システムは、４つのプリセットを維持することができ、このプリセットのそれぞれは、１から４のラベルを付けられた物理的ユーザインターフェースのボタンまたは他のユーザインターフェースアイテムによって表される（図２３のアイテム１８０５を参照されたい）。トラックが、いずれかのモードで再生されている間に、ユーザは、たとえば対応するボタンを押したままにすることによって、そのトラックを所与のプリセットに追加しなければならないことを指定することができる。システムが、自動選択モードである時に、これは、現在のトラックに肯定のレーティングを与えることと同一の効果を有する。ユーザは、対応するボタンを押すことによって、プリセットをアクティブ化する。各プリセットに、表示および選択のために番号または名前を割り当てることができる。
【０１５８】
図１５からわかるように、システムは、少なくとも３タイプのプリセットを維持することができる。１つは、ユーザが個々のトラックをプリセットに割り当てて、再生リストを作成できるようにするタイプである。第２のタイプは、ユーザが、ＣＤまたはＣＤのグループをプリセットに割り当てて、ＣＤからのトラックを再生できるようにする。プリセットの第３のタイプを、ユーザステーションと称する。さらに、ユーザは、ＣＤプリセットをセットして、単一のＣＤを再生することができる。
【０１５９】
ユーザステーションは、自動選択モードで使用されるプリセットである。各ユーザステーションは、システムに記憶された各トラックに確率を関連付ける。この確率は、以下で説明する自動選択アルゴリズムによって生成され、たとえば、暗黙、明示的、またはその両方の組合わせの、ユーザが示したプリファレンスに基づいて、動的に更新される。プリセットが使用中である間に、再生されるトラックの選択は、プリセットに記憶された、トラックのコレクション全体に関連する確率の特定の組に基づく。複数のプリセットを、コレクション全体のアイテムの異なる確率に基づいて選択されるトラックを再生する形として定義することができる。
【０１６０】
いくつかの実施形態で、ユーザステーションを、個々のユーザに関連付けることができる。したがって、システムの３つのユーザがある場合に、ユーザステーション１が、ユーザ１のプリファレンスを反映でき、ユーザステーション２が、ユーザ２のプリファレンスを反映でき、ユーザステーション３が、ユーザ３のプリファレンスを反映することができる。ユーザステーション１は、ユーザステーション１によるトラックの再生中に示されたユーザプリファレンスから導出されるトラックのスコアリングに基づくセレクションを再生し、他も同様である。
【０１６１】
いくつかの実施形態は、ユーザの自動識別（同一性確認）およびユーザのプリセットの自動的な使用を許容することができる。これは、バイオメトリック同一性確認によって達成することができる。たとえば、システムは、音声認識機能を備えることができ、ユーザを、そのユーザの声の音によって識別することができる。識別されたならば、システムは、そのユーザのステーションに自動的に切り替えることができる。他のシステムは、指紋識別、網膜スキャン、または他のバイオメトリック測定技法を使用することができる。さらなる他のシステムは、外部識別デバイスとインターフェースすることができる。たとえば、自動車に組み込まれるシステムは、ユーザが、ドライバーズシートをユーザ１の前に記憶された好ましい位置に変更する時に、ユーザ１のステーションに切り替えることができる。
【０１６２】
いくつかの場合に、システムがユーザからフィードバックを受け取るたびにプリセットを自動的に更新するのではなく、プリセットを、ユーザからの明示的な指示の時に限って更新することができる。その形で、ユーザは、プリセットが再生アイテムのシーケンスの選択に使用されたセッションの後であっても、好ましいプリセットに戻ることができる。
【０１６３】
モジュール
図２１は、１つの可能な実施形態に含まれる機能モジュールと、その相互作用の性質を表す。この実施形態では、ＭｕｓｉｃＰｌａｙｅｒ  ２１０７が、入力に応答してトラックの再生を制御し、Ｅｎｄ Ｏｆ Ｔｒａｃｋ ＰｌａｙｂａｃｋメッセージおよびＴｉｍｅＵｐｄａｔｅメッセージ２１２２の形で、トラックの再生に関する状況情報をＰｌａｙＭｏｄｅｓモジュール２１０３に供給する。ＭｕｓｉｃＰｌａｙｅｒ  ２１０７は、ＴｉｍｅＵｐｄａｔｅメッセージおよびＮｅｗＴｒａｃｋＰｌａｙｉｎｇメッセージ２１１８をオンスクリーンディスプレイ（ＯＳＤ）モジュール２１０１に送る。ＭｕｓｉｃＰｌａｙｅｒ  ２１０７は、Ｅｎｄ Ｏｆ Ｔｒａｃｋ Ｐｌａｙｂａｃｋメッセージ２１１５をＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４に送る。ＭｕｓｉｃＰｌａｙｅｒ  ２１０７は、ＲｉｐＴｉｍｅＵｐｄａｔｅメッセージ、ＣＤＩｎｓｅｒｔｅｄメッセージ、ＣＤＥｊｅｃｔｅｄメッセージ、およびＣＤＲｅａｄｙメッセージ２１１６をリッパーモジュール２１０６（以下を参照されたい）に送って、リッパーモジュールに、リッピング処理に残された時間、ＣＤが挿入された時、ＣＤが取り出された時、およびＣＤが記憶の準備ができた時を知らせる。
【０１６４】
リッパー２１０６は、制御ユーザインターフェースモジュール２１０２からの記憶コマンドに応答し、メッセージ２１１７を自動選択モジュールに送って、記憶されたトラックを記憶済みトラックグラフ（「メタデータ」を参照されたい）に追加する。リッパー２１０６は、所与のトラックがグラフに既に記憶されているかどうかを自動選択モジュールに尋ねる２１１７。リッパーモジュールは、ｒｉｐＴｒａｃｋメッセージ２１２３をＭｕｓｉｃＰｌａｙｅｒモジュールに送って、ＭｕｓｉｃＰｌａｙｅｒモジュールに、トラックを実際に記憶するように指示する。ＭｕｓｉｃＰｌａｙｅｒは、記憶が完了した時に確認メッセージを送る。
【０１６５】
ＰｌａｙＭｏｄｅｓモジュール２１０３は、制御ユーザインターフェースからのボタン押下げ２１０９に応答する。ＰｌａｙＭｏｄｅｓモジュール２１０３は、メッセージ２１１１をＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４に送って、現在の状態を「停止」または「再生中」に変更する。ＰｌａｙＭｏｄｅｓモジュール２１０３は、自動選択モジュールに照会（２１２４）して、どのトラックを次に再生するかを見つけるか、現在の再生リストを得る。ＰｌａｙＭｏｄｅｓモジュール２１０３は、自動選択モジュールに、フィードバックイベントを処理するように指示（２１２４）することもできる。ＰｌａｙＭｏｄｅｓモジュール２１０３は、トラックヒストリ、ユーザステーションの状態（「ユーザステーションおよびプリセット」を参照されたい）、および仮想ＣＤチェンジャの状態（「動作のモード」を参照されたい）も維持する。
【０１６６】
ＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４は、ユーザの制御からのトランスポート制御イベントおよびＰｌａｙＭｏｄｅｓモジュールからのコマンドに応答する。ＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４は、遠隔制御とＭｕｓｉｃＰｌａｙｅｒモジュールの間のインターフェースとしても働く。ＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４は、制御ユーザインターフェースおよびＰｌａｙＭｏｄｅｓモジュールから受け取るトランスポート制御指示およびトラック再生指示２１１２をＭｕｓｉｃＰｌａｙｅｒモジュールに送る。ＰｌａｙｅｒＳｔａｔｅｓモジュール２１０４は、現在のトラック、前のトラック、および次のトラックについてＰｌａｙＭｏｄｅｓモジュールに照会（２１１３）することができる。
【０１６７】
オンスクリーンディスプレイ（ＯＳＤ）モジュール２１０１は、現在ユーザに演奏されているものに関する情報を表す。ＯＳＤモジュール２１０１は、プリセットを「リセット」または他の形で編集するユーザ対話を処理し、自動選択モジュールにリセットメッセージ２１２０を送ることができる。ＯＳＤモジュール２１０１は、検索インターフェースのユーザインターフェースも表示し、検索結果２１２１をＰｌａｙＭｏｄｅｓモジュールに送る。ＯＳＤモジュール２１０１は、自動選択モジュールに照会２１１９して、検索結果を取り出す（ユーザによって供給された検索パラメータがＯＳＤモジュールに与えられる）。ＯＳＤモジュール２１０１は、現在再生中のトラックに関する情報についても自動選択モジュールに照会（２１１９）して、ユーザに提示する。
【０１６８】
自動選択モジュール２１０５は、ユニットが自動選択モード（「動作のモード」を参照されたい）である時に、再生するトラックを選択する。自動選択モジュール２１０５は、すべてのユーザステーションに関するすべてのフィードバック情報を維持する（「ユーザステーションおよびプリセット」を参照されたい）。自動選択モジュール２１０５は、ユーザによってＯＳＤモジュールを介して要求された時に検索を行い、ＯＳＤモジュールによって定式化された照会を、再生されるトラックのリストに変換する。自動選択モジュール２１０５は、現在再生中のトラックに関する情報をＯＳＤモジュールに供給する。自動選択モジュール２１０５は、ユーザインターフェースに、記憶済みトラックグラフのデータを編集するように要求する。このモジュールは、記憶済みトラックグラフを維持するので、システムが仮想ＣＤチェンジャモード、トラックモード、またはビンモードである時に、ＰｌａｙＭｏｄｅｓモジュールは、次に再生されるトラックをこのデータ構造から確認するために、自動選択モジュールに照会２１２４しなければならない。
【０１６９】
制御ユーザインターフェース（ＣｏｎｔｒｏｌＵＩ）２１０２モジュールは、ユーザイベントをディスパッチする。ＣｏｎｔｒｏｌＵＩ２１０２は、ユーザ対話のために、たとえば検索モードで、ボタン押下げ２１０８をＯＳＤモジュールに送る。ＣｏｎｔｒｏｌＵＩ２１０２は、ソース変更メッセージ、モード変更メッセージ、レーティングメッセージ、および次トラックメッセージ２１０９をＰｌａｙＭｏｄｅｓモジュールに送る。ＣｏｎｔｒｏｌＵＩ２１０２は、次トラックメッセージを除くトランスポート制御メッセージ２１１０をＰｌａｙｅｒＳｔａｔｅｓモジュールに送る。ＣｏｎｔｒｏｌＵＩ２１０２は、記憶ボタン押下げ２１１４をＲｉｐｐｅｒモジュールに送る。
【０１７０】
トラックの記憶
自動選択モード、トラックモード、ビンモード、仮想ＣＤチェンジャモード、および検索モードのすべてが、トラックデータがシステムのハードディスクに記憶されていることを必要とする。これは、リッパーモジュールによって行われ、リッパーモジュールは、図５に示されているように動作する。
【０１７１】
ディスクが挿入されていない（かつ、他のソースが動作していない）時５００に、モジュールは、「ディスクなし」状態５０１である。ディスクが挿入された（または、ユーザが、たとえばラジオまたはカセットテープなどの別のソースからの再生を開始する）時５０３に、システムは、使用可能な場合にＴａｂｌｅ  ｏｆ  Ｃｏｎｔｅｎｔｓ（ＴＯＣ）データを読み取り（以下の「データ記憶」を参照されたい）、「ディスク存在／アイドル」状態５０２に入る。ユーザが、記憶ボタンを押す時に、記憶すべきトラックがまだ残っている場合５０４に、システムは、記憶されていないトラックのリストを保存し、「記憶中」状態５０９に入る。記憶すべきトラックが残っていない場合５０８には、システムは、エラーメッセージを表示する。
【０１７２】
記憶中状態で、他のモジュールがソースの再生を処理している間に、トラックが、同時に、ハードドライブに記録される。すべてのトラックの記憶が完了した時に、モジュールは、確認メッセージをユーザに表示５０６し、アイドル状態５０２に戻ることができ、その代わりに、他のソースモードに戻り、先頭からソースを再生することができる。すべてのトラックを記憶する前にソースが除去された場合５０７には、システムは、ディスクなし状態５０１に戻る。ソースが除去された、ユーザが停止を押す、ユーザがソースを変更する、ハードディスクの空き容量がなくなる、またはシステムが現在のトラックの記憶を継続することが不可能になるイベントが発生した場合に、現在のトラックの記憶されたデータが、削除される。
【０１７３】
他の実施例では、トラックを、ユニットのハードドライブに記憶されつつある間に再生する必要がない。その場合、トラック記憶は、より短い時間で完了することができる。記憶モジュールは、これらの実施形態では独立に動作し、ユーザは、記憶モジュールがトラックを記憶している間に、システムのハードディスクを含む任意のソースからのトラックの聴取を継続することができる。
【０１７４】
他の実施形態では、「バックグラウンド記憶」が許容される。この特徴によって、ユーザが、所与のトラックを記憶しなければならないことを示せるようになる。システムは、後に、システムが使用中でなくなるまで、実際の記憶を延期する。システムがバックグラウンドでトラックを記憶している間に、ユーザがシステムを使用する場合には、システムは、記憶機能を打ち切る。ユーザが、バックグラウンド記憶についてキューに置かれているＣＤからのトラックを再生する場合に、そのトラックを、ユーザが再生している時に記憶することができる。
【０１７５】
バックグラウンド記憶は、下記のように標準的な記憶機能と組み合わせることができる。標準的な記憶を、普通に使用することができるが、ハードディスクの空き容量がなくなった、ユーザがＣＤを除去した、またはトラックの記憶が不可能になる他のイベントが発生した場合に、システムは、そのトラックをバックグラウンド記憶のキューに入れ、後に、可能になった時に記憶することができる。
【０１７６】
いくつかの実施形態は、記憶の時に最小限の処理を実行し、高度な機能を、システムがアイドルになるまで延期する。これらの実施形態では、元の媒体が必要になる時間の長さが減り、信号処理のほとんどが、アイドル時に行われる。
【０１７７】
メタデータ
メタデータは、基礎になるトラックデータ自体以外の、トラックに関する情報を意味する。潜在的なメタデータソースおよび階層のタイプの多数の例がある。たとえば、記憶されたトラックが、性質において音楽である場合に、システムは、デジタル信号処理アルゴリズムを使用して、たとえば特定のトラックの低音の量を分析することができる。次に、トラックに、「重低音」、「軽い低音」またはその間などのカテゴリを割り当てることができる。その代わりに、トラックが非音楽データを表す場合には、そのタイプのデータに適当なメタデータが使用される。たとえば、トラックが、コンピュータプログラムのコマンドを表す場合に、適当なメタデータカテゴリを、「スコープ」（たとえば、文書レベルコマンド、グローバルコマンド、選択レベルコマンドなど）「タイプ」（たとえば、フォント、スタイル、プリファレンス、レイアウトなど）、メニュー（たとえば、ファイル、編集、表示など）、およびコマンド名（たとえば、ページの挿入など）とすることができる。音楽データと同様に、このメタデータは、ソフトウェアと共に事前にパッケージ化することができ、あるいは、たとえばインターネットを介して、別々に入手可能とすることができる。以下のセクションでは、記憶された音楽の例を使用する。以下の説明では、アーティスト、ジャンル、およびスタイルなど、音楽データに固有の特性を表すのに適する、記憶済みトラックグラフの作成を例示する。他の実施例では、記憶されるデータのタイプに応じて、ノードの間の異なる関係を有する異なる構造が使用される。
【０１７８】
音楽の例に戻ると、メタデータは、図３０に示されたものなどの構造になる。個々のトラック３００１が、一緒に、アルバム３００２を構成し、複数のアルバムが、アーティスト３００３の作品を構成し、複数のアーティストが、ジャンル３００４を構成する。多数の実施形態で、以下で説明するように追加の層が追加される。
【０１７９】
自動選択モードは、たとえば、メタデータサポートの下記の３つのレベルのどれでも利用することができる。
（１）メタデータなし。
（２）一意のアルバム識別子によってインデクシング（インデックス処理）され、潜在的に列「ジャンル」、「アーティスト名」、「アルバムタイトル」、および「トラック番号」によって順序付けられた「トラックタイトル」のリストを含む、外部から供給されるメタデータのデータベース。そのようなデータのソースの１つが、Ｇｒａｃｅｎｏｔｅ社のＣＤＤＢデータベースであり、本明細書では、これらのフィールドを有するすべてのデータを、総称的に「ＣＤＤＢデータ」と称する。図１０を参照されたい。
（３）アルバムテーブルを含み、一意のアルバム識別子によってインデクシングされ、潜在的に列「ジャンル」、「スタイル」のリスト、一意のアーティスト識別子、「アルバムタイトル」、「ソート可能なアルバムタイトル」、および「類似する」アルバムのリスト（一意のＩＤによって参照される）を含む、外部から供給されるデータベース。このデータベースには、一意のアーティスト識別子によってインデクシングされ、潜在的に列「アーティスト名」、「ソート可能なアーティスト名」、「スタイル」のリスト、および「類似する」アーティストのリスト（一意のＩＤによって参照される）を含む、アーティストテーブルも含まれる。このデータベースには、静的な「スタイル」テーブルも含まれ、各スタイルは、「ジャンル」にリンクされる。このデータベースには、一意のアルバム識別子によってインデクシングされる、列「媒体インデックス」（マルチディスクセットのディスク通し番号）、「トラック番号」、「トラックタイトル」、「ソート可能なトラックタイトル」、および「アーティスト一意ＩＤ」を有する「トラック」テーブルも含まれる。そのようなデータのソースの１つが、Ａｌｌ−Ｍｕｓｉｃ  Ｇｕｉｄｅである。本明細書では、これらのフィールドを有するデータを、総称的に「ＡＭＧデータ」と称する。図１１を参照されたい。
【０１８０】
選択システムの他の実施例は、選択システムの内部グラフフォーマットに変換できるすべてのメタデータフォーマットを扱うことができる。システムの「記憶済みトラックグラフ」は、異なるレベルの一般性のノードを有するグラフである。ノードは、図８に示されているように、祖先−子孫関係によって、または従兄弟（カズン）−従兄弟関係によって接続することができる。一般性のレベル、したがって祖先−子孫関係は、推移的である。
【０１８１】
システムの記憶済みトラックグラフのデータ構造を、図１２に要約する。メタデータの各アイテムが、半階層ネットワーク内のノードを形成する。この図には、複数の異なるタイプのノードが示されており、そのそれぞれが、包括的ノードオブジェクトから派生する。ノードオブジェクト１２０９（したがってすべてのノード）に、「ｎａｍｅ（名前）」（ユーザに何かを表示しなければならない時に使用される）、「ｉｄ」（一意識別子）、「ｓｏｒｔｎａｍｅ」（ｎａｍｅのソート可能版）、およびフィードバックレコードの組１２１４が含まれる。フィードバックレコードは、グローバルに維持される１つのレコードおよびユーザステーションごとに１つのレコード１２１３のアレイからなり、このレコードに、すべてのフィードバック、スコア、および再生ヒストリ情報が記憶される。
【０１８２】
階層は、この図では、垂直の次元およびノード間接続によって表される。あるレベルのノードＡから上位のレベルのノードＢへの接続（すなわち、祖先−子孫関係）は、ノードＡによって表されるエンティティが、ノードＢによって表されるエンティティの一部であるか、これによって実行されたことを暗示する。
【０１８３】
図の下から上に読んでゆくと、トラックノード１２０１に、標準的なノードフィールドが含まれ、さらに、ｔｒａｃｋＮｕｍｂｅｒ（そのＣＤでの位置）、そのアーティストおよびジャンル（メタデータが使用可能な時）、その持続時間に関するフィールドが含まれる。各トラックノードは、単一のＣＤノード１２０２に接続１２２２され、マルチアーティストＣＤからのトラックは、１つまたは複数のアーティストノード１２０４に接続１２２５される（このメタデータが使用可能な時に）。
【０１８４】
ＣＤノード１２０２には、ディスクのＴａｂｌｅ  ｏｆ  Ｃｏｎｔｅｎｔｓ（ＴＯＣ）ストリングと、マルチディスクセットのディスク番号を表す序数「媒体インデックス」（使用可能な時に）が記憶される。各ＣＤノードは、単一のアルバムノード１２０３に接続される。
【０１８５】
アルバムノード１２０３は、単一のＣＤまたは複数ディスクセットのいずれかを表す。アルバムに、単一アーティストのトラックが含まれる場合に、アルバムノード１２０３は、単一のアーティストノード１２０４に接続１２２４され、複数のアーティストのトラックが含まれる場合には、どのアーティストノードにも接続されない。その代わりに、トラックノード１２０１が、アーティストノード１２０４に直接に接続１２２５される。アルバムノードを、０個以上のスタイルノード１２０６に接続１２２７することができる。アルバムノードを、従兄弟−従兄弟リンクによって、０個以上の「類似する」アルバムに接続１２２１することもできる。
【０１８６】
アーティストノード１２０４は、単一の演奏者を表し、この演奏者は、１つまたは複数のトラックをレコーディングした１人または複数の個人と定義される。アーティストノード１２０４を、０個以上のスタイルノード１２０６に接続１２２６することができる。アーティストノードを、従兄弟−従兄弟リンクによって、０個以上の「関連する」アーティストに接続１２２９することもできる。
【０１８７】
スタイルノード１２０６は、音楽のサブジャンルを表す。スタイルノード１２０６は、少なくとも１つのジャンルノード１２０７に接続１２０５される。メタデータが、スタイル情報とジャンル情報の両方を提供しない時には、ジャンルを、静的ルックアップテーブルによってスタイルから判定することができる（図１１の１１０１を参照されたい）。たとえば、スタイル「Ｃｌａｓｓｉｃ  Ｒｏｃｋ（クラシックロック）」は、ジャンル「Ｒｏｃｋ」にマッピングされる。
【０１８８】
ジャンルノード１２０７は、音楽の幅広いクラス（たとえば、「ロック」、「クラシック」、「ジャズ」）に対応する。ジャンルノード１２０７は、ルートノード（「Ｅｖｅｒｙｔｈｉｎｇ」ノード）１２０８に接続１２２８される。
【０１８９】
ルートノード１２０８は、他のすべてのノードの祖先である。ルートノード１２０８は、音楽コレクション全体を表す。
ノードの間の接続は、データ構造１２２９によって表される。接続は、両方向であり（したがって、親または左従兄弟１２３０と子または右従兄弟１２３１が含まれる）、各接続は、関係の強さを表す数値の重み（「リンク重み」）１２３２と、関係の性質を指定するタイプ１２３３を有する。リンク重みは、外部メタデータ情報から導出することができ、静的とすることができ、あるいは、すべてが１と等しいものとすることができる。
【０１９０】
明示的なメタデータが使用可能でない場合には、システムは、トラックを分類する直接の形を有しない。たとえば、新しい音楽ＣＤが購入され、システムにロードされる時に、システムは、ＣＤのトラックの間の関係を知っているが、各トラックのジャンルまたはスタイルを知らない。したがって、記憶済みトラックグラフ内の適当な位置にノードを作成することができない。いくつかの実施形態では、システムでメタデータを構築するために、必要な情報を求めるプロンプトをユーザに出し（たとえば音声合成を使用して）、その結果を使用することによって、この問題に対処する。たとえば、システムは、「これはどのジャンルになりますか」と尋ねることができる。話された結果「ジャズ」を、認識し、記憶することができる。
【０１９１】
ユーザフィードバックのタイプ
選択システムがユーザから学習し、ユーザプリファレンスを判定するのに使用する５つのイベントがある（５つのイベントを説明するが、他の種類のイベントも可能である）。
（１）ユーザが、ボタンを押すか、他の形で、あるレベルで明示的な肯定の反応を示す（たとえば、「レート＋」）；
（２）ユーザが、ボタンを押すか、他の形で、あるレベルで明示的な否定の反応を示す（たとえば、「レート−」）；
（３）たとえば、トラックが再生され始めてから、事前に指定された時間期間のうち（たとえば２秒超、２分未満）にボタン押下げが行われると仮定して、ユーザが、ボタンを押すか、他の形で、システムが次のトラックにスキップしなければならないことを示すか、他の形で現在のトラックを中止する（「次トラック」）；
（４）ユーザがトラックを聞き、それを故意に完了させる可能性が高いことを示す何らかのタイプのユーザ対話が、セットされた時間期間、たとえばトラック開始時を中心とする１時間のうちにあったと仮定して、アイテムが、最初から最後まで再生される（「トラックの成功裡の完了」）；
（５）ユーザがボリュームを上げる（「ボリューム＋」）。
【０１９２】
最初の２項目は、プリファレンスに関して何かをシステムに伝えるユーザの明示的な動作である。残りの項目は、ユーザのプリファレンスに関する暗黙の情報だけを表す。明示的および暗黙の両方の、プリファレンスに関する他の種類のフィードバックを使用することができる。
【０１９３】
ノードのスコアリング
アイテム選択システムでは、記憶済みトラックグラフのノードに、ユーザからのフィードバックに基づくスコアが割り当てられる。グラフのノードの間の接続のゆえに、１つのノードに適用されるフィードバック（たとえば、トラックに対するユーザ応答）が、潜在的にグラフのすべてのノードに影響する。したがって、システムは、１トラックだけに対するユーザの応答を基礎として、各記憶されたトラックに対するユーザの応答に関する演繹を行うことができる。さらに、システムは、短期プリファレンスと長期プリファレンスを記憶することができる。この特徴を用いると、システムが、ユーザの全般的な長期トラックプリファレンスに関する情報を失わずに、ユーザの気分の変化に対してすばやく調整できるようになる。
【０１９４】
図３１に、フィードバックを受け取る前のトラックの間のスコアの初期分布と、所望の最終的な分布の一例を表す２つのトラックスコア分布を示す。当初に（３１０６）、システムは、ユーザフィードバックを受け取っておらず、したがって、ユーザは、すべてのトラックに対して中立３１０３であると仮定される。明示的および暗黙のフィードバックが受け取られる時に、システムは、明示的なフィードバックが受け取られたトラックに類似するトラックに関する演繹を行う。最終的に、システムの一目標は、二重釣り鐘曲線分布３１０７を達成することとすることができる。ユーザは、少数のトラックに関して、明示的な肯定３１０１、明示的な否定３１０５、暗黙の肯定３１０２、または暗黙の否定３１０４のいずれかのフィードバックを与える。その情報を用いて、システムは、ユーザのプリファレンスを演繹し、レーティングされたトラックに関する未レーティングトラックの関係に基づいて、残りのトラックに肯定または否定のスコアを割り当てる。
【０１９５】
前述したように、選択システムは、すべてのトラックを表すグラフ、そのトラックに関するメタデータ、およびそのトラックと他のトラックの間の関係を維持する。以下で詳細に説明するように、システムは、現在再生されているトラック以外のノードにフィードバックを伝搬させるために、このグラフ構造を利用する。さらに、以下で完全に説明するように、ノードは、任意選択として、短期プリファレンスと別々に長期プリファレンスを追跡することができる。
【０１９６】
長期プリファレンスは、下記のように追跡することができるが、数値の重みは、単に１つの可能な例として提供されたものである（図１３を参照されたい）。
（１）ユーザが、プラスボタン１３０６を押す時に、システムは、＋１フィードバックイベントをトラックノード１３１１に送る（１３０１）。
（２）ユーザが、マイナスボタン１３０７を押す時に、システムは、−１フィードバックイベントをトラックノードに送る（１３０２）。
（３）ユーザが、次トラックボタン１３０８を押す時に、システムは、−１／３フィードバックイベントをトラックノードに送る（１３０３）。
（４）トラックが成功裡に完了する１３１０時に、システムは、＋１／３フィードバックイベントをトラックノードに送る（１３０５）。
（５）ユーザが、ボリューム増加ボタン１３０９を押す時に、システムは、任意選択として、＋１／６フィードバックイベントをトラックノードに送る（１３０４）。
【０１９７】
これらのフィードバックイベントによって、メタデータネットワーク内のトラックノード１２０１およびそのすべての祖先のａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅ変数１２１０およびａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔ変数１２１１が修正される。ａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅは、そのノードのすべてのフィードバックの合計（正および負）と等しく、ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔは、そのノードの各フィードバックイベントの絶対値の合計と等しい。したがって、比ａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅ／ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔは、必ず範囲［−１、＋１］内にある。この比を、ローカルスコアと称する。ローカルスコアが＋１である場合に、これは、受けられたすべてのフィードバックが肯定であったことを意味する。ローカルスコアが−１である場合に、これは、受けられたすべてのフィードバックが否定であったことを意味する。ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔが０である場合に、ローカルスコアは、０と定義される。
【０１９８】
いくつかの実施例で、ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔおよびａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅが、有界である。ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔが、固定された境界値を超える場合に、両方の変数に、比ｆｉｘｅｄＢｏｕｎｄａｒｙＶａｌｕｅ／ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔをかけ、これによって、これらの変数の比を維持しながら、これらを指定された境界内に保つ。
【０１９９】
短期的な気分に基づくプリファレンスを、同様に扱うことができる。たとえば、ユーザが、普段はロック音楽を楽しむが、現在はクラシック音楽を聞くことを望む場合に、システムは、ユーザの短期プリファレンスを受け取り、長期プリファレンスを実質的に修正せずに、調整する。したがって、この実施例では、システムが、ユーザがこの時だけクラシック音楽を聞くことを求めることを意味するものとしてユーザのフィードバックをすばやく解釈するが、後に電源を入れられた時に、システムは、そのユーザがロックを最も楽しむことを覚えている。
【０２００】
このために、ａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅおよびａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔに影響するのではなく、影響される変数は、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅ１２１２になる。この構成では、フィードバックイベントが処理されようとしている時に、すべてのノードにまたがるすべてのｍｏｏｄＢｏｎｕｓＳｃｏｒｅ変数が、０に向かって減らされる（たとえば、０．９などの分数を各値にかけることによって）。次に、システムは、フィードバックを受け取るトラックおよびその祖先のそれぞれについて、たとえば、肯定のフィードバックについては＋０．１を加算し、否定のフィードバックについて−０．１を加算することによって、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅを調整する。ｍｏｏｄＢｏｎｕｓＳｃｏｒｅは、有界とすることができ、上の実施例では、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅが、範囲［−１、＋１］内にあることが保証される。
【０２０１】
長期プリファレンスデータおよび短期プリファレンスデータの両方を維持するシステムは、下記のように機能することができる。
（１）「レート＋」イベントは、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅに対する大きい正の変化と、累積される変数に対する小さい正の変化をもたらす。
（２）「レート−」イベントは、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅに対する大きい負の変化と、累積される変数に対する小さい負の変化をもたらす。
（３）「次トラック」イベントは、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅに対する小さい負の変化と、累積される変数に対する小さい負の変化をもたらす。
（４）「トラックが成功裡に完了する」イベントは、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅに対する小さい正の変化と、累積される変数に対する小さい正の変化をもたらす。
（５）「ボリューム＋」イベントは、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅに対する小さい正の変化と、累積される変数に対する小さい正の変化をもたらす。
【０２０２】
したがって、累積される変数は、無限のメモリを有し、ｍｏｏｄＢｏｎｕｓＳｃｏｒｅ変数は、限られたメモリを有する（０に向かって減るので）。
さらに、いくつかの実施例で、システムは、検索画面からのスコアのシーディングを許容する（「動作のモード」を参照されたい）。すなわち、ユーザは、検索画面でトラックを突き止めることができ、明示的レーティングボタンの１つを押して、そのノードおよびその親にフィードバックを適用することができる。
【０２０３】
いくつかの実施形態で、「レート−」ボタンを押すと、現在のトラックの再生が停止され、次のトラックが開始される。ユーザにとって、これは、「次トラック」ボタンを押すのと同一の効果であるが、これは、システムの即座の挙動に対するより強い影響を有する。
【０２０４】
他の実施形態で、上記のように現在のトラックをスキップさせるほかに、各新しいトラックの再生の前に、短い一時停止がある。再生されるトラックの名前が、オンスクリーンディスプレイに表示される。ユーザは、トラック再生の前に「レート−」ボタンを押して、即座に次のトラックにスキップすることができる。この場合に、ユーザは、トラックを再生させずに、明示的なフィードバックを提供する。
【０２０５】
グラフの各ノードは、それ自体のスコア関連データを維持する。各ノードに、フィードバックレコードの組１２１４（図１２を参照されたい）が含まれる。この組には、プリセットごとに１グループの変数と、追加のグローバルグループが含まれる。各グループに、３つの数値変数すなわち、ａｃｃｕｍｕｌａｔｅｄＳｃｏｒｅ、ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔ、およびｍｏｏｄＢｏｎｕｓＳｃｏｒｅが含まれる。
【０２０６】
各トラックノード、ＣＤノード、およびアーティストノードは、単一の整数値変数ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘも有する。ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘが値−１を保持する場合に、そのノードによって表されるトラックは、システムによって一度も再生されていない。システムは、０から始まり、各トラックが再生されるたびに増分され、指定された値、たとえば１０２４に達した時に０に戻る、グローバル循環再生カウンタを保持する。あるトラックが再生される時に、ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘ変数がこのグローバルカウンタ値と等しいすべてのノードが、「−１」にリセットされる。たとえば、システムが５番目に再生したトラックがＸであり、システムが現在１０２９番目のトラックを再生している場合に、グローバルカウンタ値は、５（１０２９  ｍｏｄ  １０２４＝５）であり、したがって、トラックＸのｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘは、５であるが、−１にリセットされる。したがって、システムは、このトラックが再生されたことを「忘れる」。次に、現在のトラックノード、ＣＤノード、およびアーティストノードのｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘの値に、グローバルカウンタの現在値がセットされる。この時点で、式（ｇｌｏｂａｌＣｏｕｎｔｅｒ−ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘ）  ｍｏｄ  １０２４は、ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘが−１より大きいと仮定して、どれほど最近にトラックノード、ＣＤノード、またはアーティストノードが再生されたかを表す。
【０２０７】
システムは、プリセットごとの最も最近に再生されたトラックを表す先入れ先出しリスト（図１４を参照されたい）も維持する。この再生ヒストリは、ユーザがトランスポート制御を使用して、再生ヒストリ内で前後に移動する時に限って使用される。したがって、システムが、現在トラック１４０２を再生しつつあり、ユーザが、前トラックボタンを押す場合に、システムは、トラック１４０１を再生する。システムが次に再生するトラックは、トラック１４０２になる。システムが、トラック１４０２の再生を完了した時に、新しいトラックが、選択され、リストの末尾１４０４に追加され、最も古いトラックであるトラック１４０３が、リストから除去される。
【０２０８】
ユーザが、前トラックまたは次トラックを押し、そうでなければ再生されたはずのトラックが、ハードディスクから削除される場合に、システムは、そのトラックをスキップし、リスト内ですぐにそれの直前または直後のトラックを再生する。
【０２０９】
データ記憶フォーマット
トラックは、ＣＤから、ハードディスクまたは他のランダムアクセス記憶媒体に記録される。トラックが、音楽データを表す場合に、各トラックは、別々のファイルとして、潜在的にＭＰＥＧ−１レイヤ３フォーマット（「ＭＰ３」；Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐによって定義された標準規格）、ＡＡＣフォーマット（Ａｄｖａｎｃｅｄ  Ａｕｄｉｏ  Ｃｏｄｉｎｇ、やはりＭｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐによって定義された標準規格）、または他の適当なフォーマットで圧縮されて、媒体に記憶される。各トラックと共に、元の媒体で使用可能な場合に、ｔａｂｌｅ  ｏｆ  ｃｏｎｔｅｎｔｓ情報も記憶される。ＣＤでのトラックのインデックスも記憶される。新しい媒体のでの特定のフォーマットは、トラック番号およびｔａｂｌｅ  ｏｆ  ｃｏｎｔｅｎｔｓが使用可能である限り、重要ではない。いくつかの実施形態で、アルバムごとに別々のディレクトリが作成される（図２２を参照されたい）。これらのディレクトリには、たとえばＣＤ０００１、ＣＤ０００２など、シーケンシャルに番号が付けられる。ディレクトリ内で、トラックファイルに、シーケンシャルに番号が付けられる（ＴＲ００１、ＴＲ００２など）。ｔａｂｌｅ  ｏｆ  ｃｏｎｔｅｎｔｓは、たとえば、各ＭＰ３ファイルのＩＤ３ヘッダ内の文字列として、記憶することができる。
【０２１０】
トラックがハードドライブに記憶される時に、ノードが、記憶済みトラックグラフに追加される。前に注記したように、選択システムは、グラフを構築するために複数のソースからメタデータを入手することができる。トラックが音楽である、いくつかの場合に、選択システムは、Ａｌｌ  Ｍｅｄｉａ  Ｇｕｉｄｅ社（ＡＭＧ）によって提供されるデータおよびＧｒａｃｅｎｏｔｅ社のＣＤＤＢサービスによって提供されるデータを検索する。まず、システムは、ＴＯＣが現在のＣＤのｔａｂｌｅ  ｏｆ  ｃｏｎｔｅｎｔｓと一致する、ＣＤノードの記憶済みトラックグラフを検索する。そのＣＤが存在しない場合に、システムは、インデックスとしてＣＤのｔａｂｌｅ  ｏｆ  ｃｏｎｔｅｎｔｓを使用して、ＡＭＧデータベースに照会する。ＡＭＧデータベースが一致を返す場合には、システムは、ＣＤノードを追加し、まだ存在しない場合には、ＡＭＧデータベースからのデータを使用して、アルバムノードを追加する。新しいノードが作成される時に、必ず、その変数のすべてに０がセットされることに留意されたい。トラックノードが作成され、新たに追加されたＣＤノードの下でネットワークに追加される。システムは、ＡＭＧデータベースの類似するアルバムのリストを使用して、アルバムノードを、ネットワーク内の他のアルバムに接続する。トラックノードが、アルバムノードに接続される。アルバムノードは、適当なスタイルノードに接続され、スタイルノードは、まだ存在しない場合に作成される。
【０２１１】
これが単一アーティストＣＤであり、アルバムノードが前に存在しなかった場合、またはこれが複数アーティストＣＤである場合に、システムは、まだ存在しなければアーティストノードを作成する。アーティストノードは、複数アーティストＣＤでない場合にはアルバムノードに接続される。アーティストが前に存在しなかった場合には、アーティストノードが、ＡＭＧデータベースのアーティストテーブル内のアーティストのエントリで指定されるスタイルノードに接続される。複数アーティストＣＤの場合には、システムは、アーティストノードを直接にトラックノードに接続し、そうでない場合にはアルバムノードに接続する。
【０２１２】
前に存在しなかったスタイルノードは、適当なジャンルノード（必要に応じて作成される）に接続され、新しいジャンルノードは、ルートノードに接続される。
メタデータが返されなかった場合には、システムは、ＣＤＤＢデータベースに照会することができる。一致がある場合には、ノードが、ＡＭＧデータベースについて説明したように作成される。それでも一致がない場合には、アルバム、アーティスト、およびスタイルのレベルのダミーの「不明」ノードと共に、トラックノードおよびＣＤノードが作成される。
【０２１３】
代替案では、ＣＤＤＢデータベースに最初に照会することができる。一致が見つかる場合に、２番目にＡＭＧデータベースに照会し、入手可能な場合にＡＭＧデータベースからのより詳細な情報を使用して、ＣＤＤＢデータを増補する。
【０２１４】
前に注記したように、ＣＤＤＢデータおよびＡＭＧデータは、メタデータの２つの可能なタイプでしかなく、音楽トラックに特に適する。他のタイプのデータが使用される時に、異なるレベルを有する他の階層を作成して、データに適当なメタデータによって入手可能にされた情報をマッピングする。たとえば、データベースが、発行された特許からなる場合に、提供されるメタデータが分野、発明者、記載された従来技術、および発明の名称であるならば、これらのメタデータフィールドを上で説明した構造にマッピングする記憶済みトラックグラフが、作成される。
【０２１５】
フィードバックの伝搬
ユーザフィードバックは、下記のように所与ノードに適用することができる。システムは、関数ｉｎｓｅｒｔＦｅｅｄｂａｃｋＡｔＮｏｄｅを呼び出し、フィードバックを適用するノード（すなわち、再生されつつあるトラックノード）、整数のプリセット番号、ｍｏｏｄＢｏｎｕｓ（短期スコアの変化を表す）、ならびに浮動小数点のｒａｗＳｃｏｒｅデルタおよびｗｅｉｇｈｔデルタ（長期フィードバックの変化を表す）を渡す。まず、選択されたノードを初期化する。
【０２１６】
ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇ  １２１８  ＝  １
ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅ  １２１６  ＝  ｒａｗＳｃｏｒｅ
ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔ  １２１７  ＝  ｗｅｉｇｈｔ
ｎｏｄｅ．ｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓ  １２１９  ＝  ｍｏｏｄＢｏｎｕｓ
次に、システムは、グラフをトラバースし、上位ノードの前に下位レベルのすべてのノードに行くようにする。各ノードに行った時に、そのノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇがセットされている場合に、各ノードのカズン（従兄弟）リンクを検討する。一時変数ｔｂｏｎｕｓ、ｔｗｅｉｇｈｔ、およびｔｒａｗＳｃｏｒｅを初期化する。
【０２１７】
ｔｗｅｉｇｈｔ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔ＊ｌｉｎｋ．ｗｅｉｇｈｔ  ＊  ＣＯＵＳＩＮ＿ＰＥＮＡＬＴＹ
ｔｒａｗＳｃｏｒｅ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅ  ＊  ｌｉｎｋ．ｗｅｉｇｈｔ  ＊  ＣＯＵＳＩＮ＿ＰＥＮＡＬＴＹ  ＊  ＭＡＸ＿ＩＭＰＬＩＣＩＴ＿ＣＯＮＴＲＩＢＵＴＩＯＮ
ｔｂｏｎｕｓ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓ  ＊  ｌｉｎｋ．ｗｅｉｇｈｔ  ＊  ＣＯＵＳＩＮ＿ＰＥＮＡＬＴＹ
従兄弟ノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇがセットされておらず、ｔｗｅｉｇｈｔが従兄弟ノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔの値より大きい場合には、従兄弟ノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅの値にｔｒａｗＳｃｏｒｅ、ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔの値にｔｗｅｉｇｈｔをそれぞれセットする。一実施例で、ＣＯＵＳＩＮ＿ＰＥＮＡＬＴＹに０．４、ＭＡＸ＿ＩＭＰＬＩＣＩＴ＿ＣＯＮＴＲＩＢＵＴＩＯＮに０．８がセットされる。従兄弟ノードのｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓの絶対値が、ｔｂｏｎｕｓの絶対値より小さい場合には、従兄弟ノードのｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓにｔｂｏｎｕｓをセットする。
【０２１８】
次に、現在のノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇがセットされているという仮定を続けて、ノードの親リンクのそれぞれを順番に検討する。一時変数ｔｂｏｎｕｓ、ｔｗｅｉｇｈｔ、およびｔｒａｗＳｃｏｒｅを初期化する。
【０２１９】
ｔｂｏｎｕｓ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓ＊ｌｉｎｋ．ｗｅｉｇｈｔ
ｔｗｅｉｇｈｔ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔ＊ｌｉｎｋ．ｗｅｉｇｈｔ
ｔｒａｗＳｃｏｒｅ  ＝  ｎｏｄｅ．ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅ＊ｌｉｎｋ．ｗｅｉｇｈｔ
親ノードのｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔの値がｔｗｅｉｇｈｔより小さい場合には、親のｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇに１をセットし、親のｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅの値にｔｒａｗＳｃｏｒｅ、ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔの値にｔｗｅｉｇｈｔをセットする。親ノードのｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓの絶対値がｔｂｏｎｕｓの絶対値より小さい場合には、それをｔｂｏｎｕｓに等しくセットする。
【０２２０】
システムは、現在のノードの親についてこの処理を繰り返す。
すべてのノードを訪れた後に、すべてのノードを逆の順序で訪れる（Ｅｖｅｒｙｔｈｉｎｇノードから開始し、トラックノードまで下に進む）。各ノードを２回目に訪れる時に、ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔが非０であるならば、そのノードのフィードバック変数（指定されたプリセットの）を、次のように調整する。
【０２２１】
ａｃｃｕｍｕｌａｔｅｄＲａｗＳｃｏｒｅ  ＋＝  ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅ
ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔ  ＋＝  ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔ
各ノードタイプは、重みの限度を有することができる。他の重みが可能であるが、１つの例を示す。
【０２２２】
ＦｅｅｄｂａｃｋＬｉｍｉｔ  ＝  ［  ４．０，  ＃  トラック
１０．０，  ＃  ＣＤ
１０．０，  ＃  アルバム
２０．０，  ＃  アーティスト
４０．０，  ＃  スタイル
６０．０，  ＃  ジャンル
１００．０］  ＃  すべて
ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔが、その種類のノードの限度より大きい場合には、ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔを、限度と等しくなるようにセットする。ａｃｃｕｍｕｌａｔｅｄＲａｗＳｃｏｒｅの絶対値が、上で定義した、その種類のノードの限度より大きい場合には、限度と等しくなるように正規化する。
【０２２３】
また、ノードのｍｏｏｄＢｏｎｕｓＳｃｏｒｅ（指定されたプリセットの）に、（１−ｍｏｏｄＢｏｎｕｓ）をかけ、ｃｕｒｒｅｎｔＭｏｏｄＢｏｎｕｓの値を加える。最後に、ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＦｌａｇ、ｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＲａｗＳｃｏｒｅ、およびｃｕｒｒｅｎｔＦｅｅｄｂａｃｋＷｅｉｇｈｔの値を、すべて０にする。この時点で、システムは、すべての祖先および選択されたノードの祖先の最初の従兄弟にフィードバックを伝搬している。
【０２２４】
一実施例で、ｒａｗＳｃｏｒｅ、ｗｅｉｇｈｔ、およびｍｏｏｄＢｏｎｕｓの４つの可能な組合せの１つだけについて、ｉｎｓｅｒｔＦｅｅｄｂａｃｋＡｔＮｏｄｅ関数を呼び出す。
【０２２５】
１．「レート＋」ボタンが押された場合に、ｒａｗＳｃｏｒｅ＝１．０、ｗｅｉｇｈｔ＝１．０、およびｍｏｏｄＢｏｎｕｓ＝０．１
２．「レート−」ボタンが押された場合に、ｒａｗＳｃｏｒｅ＝−１．０、ｗｅｉｇｈｔ＝１．０、およびｍｏｏｄＢｏｎｕｓ＝０．１
３．適当な時間ウィンドウ内で「次トラック」ボタンが押された場合に、ｒａｗＳｃｏｒｅ＝−ＭＡＸ＿ＩＭＰＬＩＣＩＴ＿ＣＯＮＴＲＩＢＵＴＩＯＮ＊ＩＭＰＬＩＣＩＴ＿ＰＥＮＡＬＴＹ、ｗｅｉｇｈｔ＝ＩＭＰＬＩＣＩＴ＿ＰＥＮＡＬＴＹ、およびｍｏｏｄＢｏｎｕｓ＝０．０５
４．トラック再生が完了した場合に、ｒａｗＳｃｏｒｅ＝ＭＡＸ＿ＩＭＰＬＩＣＩＴ＿ＣＯＮＴＲＩＢＵＴＩＯＮ＊ＩＭＰＬＩＣＩＴ＿ＰＥＮＡＬＴＹ、ｗｅｉｇｈｔ＝ＩＭＰＬＩＣＩＴ＿ＰＥＮＡＬＴＹ、およびｍｏｏｄＢｏｎｕｓ＝０．０５
一実施例で、定数は、次のように設定される：ＭＡＸ＿ＩＭＰＬＩＣＩＴ＿ＣＯＮＴＲＩＢＵＴＩＯＮ＝０．８およびＩＭＰＬＩＣＩＴ＿ＰＥＮＡＬＴＹ＝０．３３。
【０２２６】
フィードバックが、グラフに伝搬されたならば、短期プリファレンスと長期プリファレンスの両方を考慮に入れて、ノードのスコアを計算する必要がある。これには、もう１つのグラフのトップダウントラバースが含まれるが、このステップは、前のトラバースと組み合わせることができる。まず、Ｅｖｅｒｙｔｈｉｎｇノードから始めて下に向かって、システムはノードのｒａｗＳｃｏｒｅ１２１６およびｗｅｉｇｈｔ  １２１７を０にする。現在のノード親（ある場合に）のそれぞれについて、そのプリセットの親ノードのｒａｗＳｃｏｒｅ（リンク重みをかけた値）をｒａｗＳｃｏｒｅに加算し、リンク重みをかけたそのプリセットの親ノードのｗｅｉｇｈｔをｗｅｉｇｈｔに加算する。すべての親フィードバックを加算した後に、ｒａｗＳｃｏｒｅとｗｅｉｇｈｔの両方にＰＡＲＥＮＴ＿ＰＥＮＡＬＴＹをかける。例の実施形態では、ＰＡＲＥＮＴ＿ＰＥＮＡＬＴＹが、０．２の値を有することができる。次に、システムは、ａｃｃｕｍｕｌａｔｅｄＲａｗＳｃｏｒｅのノードの現在のプリセットの値をｒａｗＳｃｏｒｅに加算し、ａｃｃｕｍｕｌａｔｅｄＷｅｉｇｈｔの値をｗｅｉｇｈｔに加算する。
【０２２７】
システムは、ＭＯＯＤ＿ＷＥＩＧＨＴＳ［ＧＲＡＰＨ＿ＬＥＶＥＬＳ］という定数のリストを維持し、グラフ内の階層のレベルごとに１つのムード（気分）重み定数（ＭＯＯＤ＿ＷＥＩＧＨＴＳ）がある。一実施形態で、ＣＤレベルのＭＯＯＤ＿ＷＥＩＧＨＴが１であり、アーティストレベルのＭＯＯＤ＿ＷＥＩＧＨＴが１であり、スタイルレベルのＭＯＯＤ＿ＷＥＩＧＨＴが２であることを除いて、各ＭＯＯＤ＿ＷＥＩＧＨＴが０である。
【０２２８】
選択システムは、現在のノードのｍｏｏｄＢｏｎｕｓＳｃｏｒｅにそのノードレベルの気分重みをかけ、この値をｒａｗＳｃｏｒｅに加算する。システムは、現在のレベルの気分重みをｗｅｉｇｈｔに加算する。システムは、現在のノードの子のそれぞれについてこの処理を繰り返す。
【０２２９】
比ｒａｗＳｃｏｒｅ／ｗｅｉｇｈｔは、ｗｅｉｇｈｔが０でない限り、指定されたプリセットのノードのスコアと定義され、ｗｅｉｇｈｔが０の場合には、スコアは０と定義される。ノードのスコアが、ネットワーク内のその祖先のすべてのスコア比に依存することに留意されたい。すべてのノードが、Ｅｖｅｒｙｔｈｉｎｇノードに由来するので、これによって、すべてのフィードバックイベントがすべてのノードのスコアに影響することが暗示される。
【０２３０】
次のトラックの選択
システムが、「自動選択」モードである時に、システムは、現在のリスク許容範囲および複数の他の変数と組み合わされた各ノードのスコアに基づいて、次に再生するトラックを選択する。したがって、いくつかの実施例で、再生のために選択されるトラックが、最高レーティングのトラックでない場合がある。すべてのトラックが、最低スコアのトラックであっても、各選択サイクルに再生されるある確率を有し、正確な確率は、システムの現在のリスク許容範囲に依存する。リスク許容範囲変数は、システムが続けて２つの誤りを犯さないようにすると同時に、システムが単に最高レーティングのトラックを再生する場合に可能でない度合の変動を達成することを試みる。システムは、否定のフィードバックを受け取る場合に、繰り返される過ちの可能性を避けるために、より保守的（保存的）になる。肯定のフィードバックを受け取る時には、徐々に保存的でなくなる。
【０２３１】
いくつかの実施形態で、選択処理は、下記のように進行する。まず、システムは、定数閾値を超えるスコアを有するアーティストノード、ＣＤノード、およびトラックノードを数える。一実施形態で、閾値は０．２である。その結果、システムは、ユーザが「好む」アーティスト、ＣＤ、およびトラックの数を知る。これらのカウントが、それぞれ変数ａｒｔｉｓｔＣｏｕｎｔ、ＣＤＣｏｕｎｔ、およびｔｒａｃｋＣｏｕｎｔに割り当てられる。
【０２３２】
各プリセットは、相対的に低いスコアを有するトラックを選択する際にシステムがとるリスクの量を決定するｃｏｎｓｅｒｖａｔｉｓｍＴｈｒｏｔｔｌｅ（保存的スロットル）変数１２１５を有する。ｃｏｎｓｅｒｖａｔｉｓｍＴｈｒｏｔｔｌｅは、有界であり、たとえば［０．５、７．５］の範囲内であり、あるフィードバックイベントが発生する時に、必ず調整される。これらの調整のいずれかが、スロットルに閾値を超えさせる場合に、スロットル変数に、最大値または最小値が適当にセットされる。
【０２３３】
（１）「レート−」キーが押される時に、スロットルは、１０．０をかけられ、これは、次のトラックを選択する際にとられるリスクを減らす効果を有し、ユーザが既に少なくとも控え目に不満である文脈で高すぎるリスクをとらないことが望ましいという概念を反映したものである。
（２）「次トラック」ボタンが適当な時間ウィンドウ内で押される時に、スロットルは、１．５をかけられ、これによって、レート−キーが押された時ほど大きくはないが、とられるリスクが減る。
（３）トラックが成功裡に完了する時には、スロットルは、０．９をかけられ、したがって、前のトラック選択の成功に鑑みて、とられるリスクが増える。
（４）最後に、システムが、定数閾値（たとえば０．２）未満のスコアを有するトラックを選択する時に、スロットルに１．５１をかけ、より大きい量だけとられるリスクを増やす。
【０２３４】
「レート＋」および「ボリューム＋」が、スロットルに影響しないことに留意されたい。
【０２３５】
再生のためにトラックを選択するために、一時変数ｔｏｔａｌＬｉｋｅｌｉｈｏｏｄを０にする。次に、任意の順序で各トラックを訪れる。前に述べたように、変数ｓｃｏｒｅに、そのｒａｗＳｃｏｒｅ／ｗｅｉｇｈｔをセットする。次に、トラックのｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘが−１と等しくない場合に、下記のようにこれを距離（ｄｉｓｔａｎｃｅ）に変換する（％記号は、剰余演算を表す）
ｄｉｓｔａｎｃｅ＝（ｇｌｏｂａｌＰｌａｙＩｎｄｅｘ−ｌａｓｔＰｌａｙｅｄＡｔＩｎｄｅｘ）％１０２４
【０２３６】
距離が、トラックカウント（上で計算した）未満である場合に、ｓｃｏｒｅにペナルティを適用する。
ｓｃｏｒｅ−＝２．０＊（１．０−ｔｒａｃｋＤｉｓｔａｎｃｅ／ｔｒａｃｋＣｏｕｎｔ）
【０２３７】
同様に、トラックのＣＤノードおよびアーティストノードを検査し、その距離がＣＤカウントまたはアーティストカウント未満である場合に、さらなるペナルティを適用する。
ｓｃｏｒｅ−＝０．６＊（１．０−ＣＤＤｉｓｔａｎｃｅ／ＣＤＣｏｕｎｔ）
ｓｃｏｒｅ−＝０．４＊（１．０−ａｒｔｉｓｔＤｉｓｔａｎｃｅ／ａｒｔｉｓｔＣｏｕｎｔ）
【０２３８】
この時点で、所与のノードのｓｃｏｒｅは、トラック、ＣＤ、またはアーティストが最近に再生された場合にペナルティを与えられる、そのノードが受け取ったフィードバックの平均値を表す。ここで、ｓｃｏｒｅを、次式によって尤度値（ｌｉｋｅｌｉｈｏｏｄ）に変換するが、ｐｏｗ（ｘ、ｙ）は、ｘのｙ乗を表す。
【０２３９】
ｌｉｋｅｌｉｈｏｏｄ＝ｐｏｗ（１０．０、ｓｃｏｒｅ＊ｃｏｎｓｅｒｖａｔｉｓｍＴｈｒｏｔｔｌｅ）
この関数の正確な形は、問題ではないが、Ｓｃｏｒｅ１＞Ｓｃｏｒｅ２の場合に、２つの異なるスコアの２つの尤度の比Ｌ１／Ｌ２は、ｃｏｎｓｅｒｖａｔｉｓｍＴｈｒｏｔｔｌｅの大きい値について増加し、小さい値について減少しなければならない、すなわち、この関数は、膨張性の非線形性を示さなければならない。次に、ｌｉｋｅｌｉｈｏｏｄをローカル変数ｔｏｔａｌＬｉｋｅｌｉｈｏｏｄに加算し、範囲［０、１］の乱数を生成する。ｔｏｔａｌＬｉｋｅｌｉｈｏｏｄと乱数の積が、ｐａｒｔｉａｌＬｉｋｅｌｉｈｏｏｄ未満である場合に、検討中のトラックが、ローカル変数ｃｕｒｒｅｎｔＢｅｓｔＣｈｏｉｃｅで追跡される。
【０２４０】
この処理を、トラックごとに繰り返す。この処理の終りに、システムは、ｃｕｒｒｅｎｔＢｅｓｔＣｈｏｉｃｅによって表されるトラックを再生のために選択する。１つのトラックが選択され、各トラックが選択される確率が、そのトラックのｌｉｋｅｌｉｈｏｏｄ値をすべてのトラックノードのｌｉｋｅｌｉｈｏｏｄ値の合計で割ったものと等しくなることが保証される。
【０２４１】
他の特徴
図３６からわかるように、いくつかの実施形態で、トラック選択処理１６０２は、音楽システム１６０４、たとえば家庭の１つまたは複数のゾーンまたは部屋にサービスする音楽システムの一部である。主コンソール１６０６に、ＣＤまたはＤＶＤプレイヤ１６０８、ハードドライブ１６１０（トラックライブラリ１６１２およびプリファレンス情報１６１４が記憶される）、プロセッサ１６１６、ユーザインターフェース１６１７、および１つまたは複数の遠隔コントローラ１６１８、１６２０のインターフェース１６１９が含まれる。５つ組のサテライトスピーカ１６２２（サラウンドサウンド用）および低音モジュール１６２４が、主コンソールに接続される。主コンソールは、オーディオ材料のストリームをスピーカに供給する。音楽システムを、主コンソールの制御プロトコルと互換の追加音楽プレイヤ１６２６、１６２８によって増補することができる。音楽プレイヤは、たとえば主コンソールから供給される、オーディオストリームを再生またはレンダリングするために離れて配置することができるオーディオ再生システムを意味する。いくつかの追加音楽プレイヤを、独立型デバイスとして操作することもできる。追加プレイヤを使用して、単一の音楽システムによって複数の部屋またはゾーンにサービスすることができる。追加音楽プレイヤは、遠隔デバイス１６３０、１６３２と相互作用することもできる。追加プレイヤが設置される時に、主コンソールは、これらのデバイスにオーディオ材料の追加ストリームを供給することができる。
【０２４２】
本明細書の他所で説明した他のトラック選択処理が、その選択を、少なくとも部分的に、やはり本明細書の他所に記載の様々な種類のプリファレンス情報に基づかせるのと同様に、トラック選択処理１６０２は、その選択の基礎を、少なくとも部分的に、記憶されたプリファレンス情報１６１４に基づかせる。プリファレンス情報は、どこかに配置され、多数の異なる形のいずれかで通信する１つまたは複数（または多数）のユーザインターフェースを介して１人または複数（または多数）のユーザから導出することができる。トラック選択処理は、記憶されたプリファレンス情報の異なる部分または態様を使用して、一時にオーディオ材料の複数の再生リストを生成することができ、複数の再生リストは、コンソールによってオーディオストリームにされる。たとえば、プリファレンス情報に、異なるユーザに関連するプリファレンス、単一のユーザの異なるモードに関連するプリファレンス、またはユーザのグループに関連するプリファレンスを含めることができる。トラック選択処理が、ストリームについて実行される時に、選択は、プリファレンス情報のこれらの態様の選択された１つに基づくものとすることができる。プリファレンス情報の態様または部分の他の多数の例を使用することもできる。
【０２４３】
単一のハードドライブまたは他の媒体に記憶されたオーディオ材料を使用して、同時の演奏のために異なるストリームを生成することができる。異なるストリームは、同時に実行できる、トラック選択処理の複数のインスタンスによって、それぞれ生成することができる。しかし、このインスタンスのすべてが、ライブラリ内のトラックに関するトラック情報のノードの単一のネットワークを使用することができ、その結果、ノードを複製する必要がなくなる。前に詳細に説明したように、いくつかの実施例で、ノードは、記憶済みトラックグラフと称するグラフに編成されたデータアイテムである。
【０２４４】
トラック選択処理がその選択を基づかせるプリファレンス情報は、通常は、前に記憶され、処理されている。結果のストリームが演奏されている間に、追加のプリファレンス情報を受け取ることができる。いくつかの実施例で、トラック選択は、入ってくるプリファレンス選択と独立に行われる。
【０２４５】
いくつかの実施形態で、トラックが２つの異なる位置（たとえば、家のキッチンと寝室、別の例では、空港の待合室と診療室）で演奏されている間に、２つの異なる位置の１人または複数のユーザのプリファレンスを、２つの異なる位置の、プリファレンス情報を取り込むことができるソース（たとえば、ハンドヘルドデバイスのユーザインターフェース）から受け取ることができる。演奏される作品を、両方のソースから受け取られたプリファレンス情報に基づいて選択することができる。たとえば、両方のソースから受け取られたプリファレンス情報を、合成することができる。
【０２４６】
２つ（または３つ以上）の異なるソースからのプリファレンス情報が、単一のユーザによって供給される場合がある。たとえば、ある人が、ある時にある場所で１つのデバイスのユーザインターフェースにプリファレンス情報を入力することができ、別の時に別の位置で別のデバイスのユーザインターフェースに他のプリファレンス情報を入力することができる。情報の両方の組を、１つのソースから来たものとして扱うことができる。あるいは、プリファレンス情報の入力のソースの位置および時刻の識別を、あるユーザのプリファレンス情報を使用するか組み合わせる時に考慮に入れることができる。より一般的に、単一のユーザのプリファレンス情報を、異なる場所に配置された異なるデバイスとの、異なる時のユーザ対話から、同一のまたは異なる作品のコレクションを使用して入手することができる。様々なプリファレンス情報に対処するために、ユーザを何らかの形で識別するか、ユーザが、前に記憶されたユーザのプリファレンス情報を、ユーザが対話するシステムに供給して、情報を更新できるようにすることが必要になる可能性がある。
【０２４７】
２つ（または３つ以上）の異なるソースからのプリファレンス情報を、異なるユーザによって供給し、組み合わせて、これらのユーザおよびおそらくは他のユーザを含むグループに適用可能なプリファレンス情報を形成することができる。たとえば、家族のうちの異なる２人が、異なる時と場所でプリファレンス情報を入力することができ、そのプリファレンス情報を、後に、家族のこの２人の一方または両方あるいは家族の他のメンバへの再生のためにトラックを選択する際に使用するために組み合わせることができる。
【０２４８】
その一方で、異なるソース、異なるユーザ、異なる位置、または異なる時（あるいはこれらの要因の組合せ）からのプリファレンス情報を、独立に記憶し、異なるユーザおよび異なるユーザのグループに関する演奏のためのトラックの選択を制御するのに独立に使用することができる。
【０２４９】
コレクション
プリファレンス指示およびトラック選択システムのユーザは、しばしば、演奏されるデジタル作品のコレクションを所有するか制御する場合がある。たとえば、ユーザは、音楽トラックを含むＣＤのコレクションを有する場合があり、あるいは、トラックを獲得し、コンピュータ、音楽プレイヤ（たとえばＭＰ３プレイヤ）、または他のポータブルデバイスのハードディスクまたは他の記憶媒体に記憶している場合がある。いくつかの実施形態で、コレクションを、通常は単一の媒体（または媒体の組）に記憶される、実行中のトラック選択処理のインスタンスによる使用のためにグループとして使用可能である、音楽トラックの組と考えることができる。ユーザのコレクションに含まれるトラックに関するプリファレンス情報（たとえば、いつそのトラックが再生されたか）を、ユーザが供給することができる。また、ユーザが、自分のコレクションにないトラックの演奏に関するプリファレンス情報を示し、そのプリファレンス情報だけ（または他のプリファレンス情報と組み合わせて）を、ユーザへの演奏に関するトラック選択の基礎として使用させることが可能である。したがって、あるコレクションとのユーザ対話に関連するプリファレンスデータを、異なるコレクションの使用に適用することができ、ユーザによって制御されないコレクションとの対話を表すプリファレンス情報を、ユーザによって制御されるコレクションに適用することができる。
【０２５０】
あるコレクションとのユーザの対話で生成されるプリファレンスを異なるコレクションに適用するために、必要なデータのすべてが、トラック自体のプリファレンスデータに取り込まれる。たとえば、これまでに再生されたすべてのトラックに関する過去のすべてのプリファレンス情報の要約を保持することができる。このデータをノードの異なるネットワーク（たとえば、後に再生のために使用可能になるコレクション内の音楽を表す）に適用するために、すべてのアーティスト、スタイルなどのデータを含むプリファレンスデータから、ノードの並列ネットワークを生成する。プリファレンスフィードバックを、このネットワークに再伝搬させ、その結果、並列ネットワークのすべてのノードが、最新のフィードバックを有するようにする。次に、対応するノードを、２つのネットワークの間で識別する。たとえば、トラックＡがプリファレンスネットワークにあるが、現在のコレクションにない場合に、その祖先の少なくとも一部（たとえば、アーティストまたはスタイル）が、存在するようになる。これらのプリファレンス値は、使用可能な音楽のコレクションを表すネットワークにコピーされる。
【０２５１】
データベースの照会
図３７からわかるように、演奏できるデジタル作品に関する情報は、前に述べたように、デジタル作品データベース１７０２に記憶することができる。データベースのレコード１７０４のそれぞれに、単一の作品（または単一の作品の一部）または作品のグループに関する分類および他の情報（たとえば、プリファレンススコア）を含めることができる。作品の分類カテゴリは、幅広い（より包含的）ものから狭いものまでの範囲とすることができる。音楽トラックに関する、図３７に示された実施例では、分類カテゴリに、ジャンル、アーティスト、アルバム、およびトラックが含まれる。
【０２５２】
カテゴリが、厳密に階層的ではない、すなわち、あるアーティスト（より狭いカテゴリ）のトラックのすべてが、必ずしも単一のジャンル（より広いカテゴリ）に含まれないことに留意されたい。ユーザが、データベース１７０２と対話できるようにすることが有用である。ユーザは、データベースに記載されたトラックに関する情報を検索し、見ることができ、トラックに関する情報を追加または変更でき（たとえば、１つまたは複数のトラックに関するプリファレンス情報を追加または変更する）、トラックに関する様々なアクションの１つまたは複数を行うことができる（たとえば、データベースから１つのトラックまたはトラックの組を除去するか、トラックの選択されたグループを再生させる）。
【０２５３】
ユーザインターフェース１７０６は、ユーザが、データベースに対する構造化照会１７０８を定義でき、データベースから返される結果データ１７０９を受け取れ、行うべきアクション１７１０を示せるようにするために提供される。ユーザインターフェースは、たとえば、音楽システム、コンピュータ、ハンドヘルドデバイス、遠隔コントローラ、キオスク、携帯電話機、携帯情報端末を含むあらゆる種類の電子デバイスの一部とすることができる。データベースは、様々な電子デバイス（ユーザインターフェースに関して述べたものを含む）に分配でき、そのようなデバイスの間で分散させることができる。ユーザによって入力された情報を使用するデータベースの照会は、ユーザインターフェースデバイス側または遠隔デバイス側で実行することができる。
【０２５４】
作品選択処理１７１２は、たとえば、データベース内の情報を使用して再生リストを作る。
ユーザインターフェースに、データベースの内容に関する情報をユーザに供給するディスプレイ１７１４（または他の出力デバイス）と、データベースに与えられる構造化照会に関する情報および１つまたは複数のトラックに関するプリファレンスを含む情報をユーザから受け取る入力デバイス１７１６が含まれる。小さいポータブルデバイスでの使用に関して、入力デバイスおよび出力デバイスが、小さく、限られた能力を有する場合がある。
【０２５５】
前に述べたように、ユーザインターフェースの用途の１つが、ユーザがデータベースの構造化照会のパラメータを入力できるようにすることである。構造化照会は、データベースおよびそのフィールドの構造に基づく照会を意味し、たとえば、自由形式照会（たとえば指定された用語に関するテキストの検索）ではなく、データベースのフィールドの少なくとも一部の値が指定される検索を意味する。
【０２５６】
図３７に示された例では、構造化照会に、照会に使用される１つまたは複数のカテゴリの値を指定するユーザを含めることができる。ユーザは、カテゴリのすべての値を指定する必要はなく、デフォルト値を適用させることができる（たとえば、デフォルト「すべてのレコード」）。ユーザは、値を指定したならば、終了したことを示すことができ、これによって、照会がデータベースに適用される。
【０２５７】
ユーザが、カテゴリの値を示す形の１つが、可能な値に関する情報をユーザに表示し、ユーザが値の間でナビゲートできるようにし、表示された値を選択することである。そのようなインターフェースの例が、参照によって援用される、２００４年１月６日出願の米国特許出願第１０／７５２３９１号に記載されている。
【０２５８】
その特許出願に記載の実施形態では、図３８Ａ、３８Ｂ、および３８Ｃを参照すると、画面３８７０、３８８０、および３９００に、記憶された音楽の選択が示されている。記憶された音楽ソースに、大量のディスクまたは、多数のアイテムを使用のために記憶できる位置のデバイスが含まれる可能性がある。記憶された音楽は、音楽システム自体に、または音楽システムの外部の位置に記憶することができる。記憶された音楽は、データベース内で階層的に、たとえばジャンル、アーティスト、アルバム、およびトラックに従って、配置することができる（記憶システム、音楽再生システムに対する関係、ならびにそのようなデータベースの作成および管理に関する追加情報が、前に示した２つの特許出願にある）。ユーザは、階層内でナビゲートすることによって、すべての記憶された音楽の特定のサブセットを選択する。この実施例では、音楽データベースが階層的に編成されるが、他のデータベースを、類似する形でナビゲートすることができる。
【０２５９】
ユーザは、記憶された音楽ソースを選択することによって、記憶された音楽画面３８７０にナビゲートする。記憶された音楽ソースに記憶された音楽に関する情報に、記憶された音楽画面に示されているように、タイトル３８７１、アーティスト３８７２、プリセット３８７３、および再生状態３８７４を含めることができる。記憶された音楽画面には、戻るオプション３８７５およびライブラリオプション３８７６を有するナビゲーションバーも含まれる。ユーザが、逆方向矢印を押すことによって戻るオプション３８７５を選択する時に、前に表示された画面が表示される。ユーザが、順方向矢印ボタンを押すことによってライブラリオプション３８７６を選択する時に、音楽ライブラリ検索画面（図３８Ｂを参照されたい）が表示される。この実施例のプリセット３８７３には、プリセット番号とユーザ名の両方が含まれる。プリセット（たとえば、記憶された音楽ソースのプリセット）を、特定のユーザに関連付けることができる。プリセットを、ユーザの裁量で、気分、音楽スタイル、または他の編成法則に関連付けることもできる。
【０２６０】
検索画面３８８０に、記憶された音楽ソース内で音楽を検索するのに使用される一般的なカテゴリのリストが含まれる。画面３８８０では、現在のジャンル設定３８８２が、ロック／ポップであり、アーティスト設定３８８４が、Ｔｈｅ  Ｂｅａｔｌｅｓであり、アルバム設定３８８８が、全アルバムであり、トラック設定３８９０が、全トラックである。画面３８８０に、現在の設定に関連するアルバムおよびトラックの数３８９２も表示されている。ユーザが、音楽の選択された組の再生を望む場合に、ユーザは、ナビゲーションバー３８９６から再生オプション３８９４を選択する。ユーザが、ジャンルまたはアーティストなどのアイテムの組を選択する場合に、システムは、ユーザがｕＭｕｓｉｃ機能がどのように働くように設定したかによって決定される順序で、その組のアイテムを再生する。ユーザは、エンターボタンを上に（たとえば、ディスプレイに向かって）押して、リストの現在強調表示されているアイテムの前のアイテムにナビゲートすることと、エンターボタンを下に（たとえば他のボタンに向かって）押して、現在強調表示されているアイテムの次のアイテムに移動することによって、カテゴリのリスト内で上下に移動することができる。ユーザが、リスト内で上下にナビゲートする時に、アイテムのそれぞれが、順番に強調表示される。ユーザが、特定のカテゴリの現在の設定を編集することを望む場合に、ユーザは、特定のカテゴリにナビゲートし（そのカテゴリが強調表示されるようにする）、選択画面、たとえばアーティスト選択画面３９００に入るために、カテゴリの右矢印ボタンを押す。
【０２６１】
画面３９００は、ユーザがアーティストカテゴリ３８８４を強調表示し、遠隔制御の順方向矢印ボタンを押すことに応答して生成される。したがって、アーティストのリストが、ディスプレイの本体の部分３９０２に表示される。ディスプレイの残りの部分３９０６には、前の画面３８８０の部分的なビューが含まれる。新しい画面が、前の画面に完全にオーバーレイしない（すなわちそれを隠さない）ので、ユーザは、前のオプションを見ることができ、この画面に入るためにどこからナビゲートしてきたかを見失わない。したがって、階層の上位レベルの一部がまだ可視であると同時に、別の部分が隠される。ユーザは、エンターボタンを上に（たとえば、ディスプレイに向かって）押して、現在強調表示されているアイテムの前のアイテムにナビゲートするか、エンターボタンを下に（たとえば他のボタンに向かって）押して、現在強調表示されているアイテムの後のアイテムに移動することによって、アーティスト選択画面でナビゲートする。ユーザが、リストを上下にナビゲートする時に、選択のそれぞれが、順番に強調表示される。特定の選択物、この実施例ではアーティストを選択するために、ユーザは、所望のアーティストまでナビゲートし、エンターボタンを押す。画面３９００に示された選択画面で選択を行う時に、ユーザは、画面３８８０に示された階層の前のレベルに戻る。ユーザが、選択を行わないと判断する場合には、ユーザは、逆方向矢印ボタンを押すことによって、キャンセルオプション３９０８を選択する。この選択によって、ユーザは、画面３９００に示された階層の前のレベルに戻る。
【０２６２】
ライブラリ検索画面３８８０内のカテゴリごとに、ユーザは、上でアーティストカテゴリに関して説明したように選択画面にナビゲートすることができる。ユーザは、各カテゴリの特定の選択物を選択することができ、あるいは、カテゴリに関連するすべてのトラックを再生またはレーティングすることを選択することができる。ユーザは、カテゴリ内のすべてのトラックを再生リストに追加することも選択することができる。現在の検索設定に対応するアルバムおよびトラックの数が、アルバムおよびトラックリスティング３８９２に表示される。ユーザは、エンターボタンを押すことによって再生オプション３８９４を選択することによって、検索からの記憶された音楽のサブセットを再生することを選択することができる。ユーザは、ボタン３８８６または３８８８を使用してサブセットをレーティングすることができ、これらを、ボタンを使用して再生リストに追加することができる。階層ナビゲーションは、３レベル以上の深さにすることができる。
【０２６３】
この実施例は、音楽階層に関するが、この表示方法は、この実施例に制限されない。階層内の前のレベルの一部を示すための画面の部分的オーバーレイは、あらゆる階層的選択メニューに適用することができる。さらに、この表示方法を使用して、階層内の複数のレベルの間でナビゲートすることができる。複数のレベルが使用される時には、ディスプレイで、前のレベルのそれぞれの一部を可視のままにすることができ、前のレベルだけを可視のままにすることができ、階層の設定された数のレベルを可視のままにすることができる。
【０２６４】
図３７をもう一度参照すると、いくつかの実施例で、ユーザが「ジャンル」を呼び出す時に、ジャンルの値（デフォルトの「全部」値を含む）を、スクロール可能リストに表示することができる。ユーザは、値の１つ、たとえば「ジャズ」を選択することができる。データ１７０９が、そのような表示を可能にするためにデータベースからインターフェースに配送される。カテゴリについて値が選択される時に、その選択によって、最初のカテゴリより狭い他のカテゴリについて表示される使用可能な値の選択肢が制御される。たとえば、ジャンル「ジャズ」であるデータベース内のトラックについて、アーティストの可能なすべての値が存在するのではない。Ａｒｔｈｕｒ  Ｒｕｂｉｎｓｔｅｉｎがアーティストであるトラックは、ジャンルがジャズではない。したがって、ユーザがジャズを選択したならば、Ａｒｔｈｕｒ  Ｒｕｂｉｎｓｔｅｉｎは、データベース内にトラックがあるアーティストの１人であっても、表示されるアーティストの値に含まれない。したがって、ユーザは、前もってデータベースに存在しないことを知り得るレコードについて、データベースに検索を送ることが絶対にできない。さらに、ユーザに表示されなければならない値選択肢の数は、そうでない場合より潜在的に（はるかに）少ない。
【０２６５】
ユーザがカテゴリの値を選択するや否や、他のカテゴリの値を更新することができ（要求される場合に）、これは、結局、別のカテゴリがユーザによる値選択の対象になるたびに、データベースで行われる検索か、検索の絞り込みになる。
【０２６６】
検索または検索絞り込みのどの点でも、ユーザは、データベースから選択されたレコードに関して行われるアクションを示すことができる。たとえば、ユーザは、選択されたトラックを再生しなければならないことを示すことができる。選択されたトラックが再生される順序は、ユーザが直接に指定することができ、あるいは、プリファレンス情報に基づいてトラック選択処理によって自動的に決定することができる。もう１つの実施例では、ユーザが、選択されたすべてのトラックについて、１アクションで肯定のプリファレンスを示すことができる。請求項３０１を参照されたい。
【０２６７】
複数の異なるユーザが、照会を定式化し、それらを１回でデータベースに適用させることができる。データベースは、照会を実行し、結果をそれぞれのユーザインターフェースに返す。
【０２６８】
音楽トラックに関する実施形態で、データベースのカテゴリに、既に述べたものに加えて、プロデューサ、作曲者、アンサンブル、指揮者、特別出演者、年（作曲、録音、または演奏の）、トラック番号などを含めることができる。具体的に言うと、クラシック作品の場合に、アンサンブルと、作曲者および演奏による検索が、特に有用である。
【０２６９】
トラックのリンク
いくつかの実施形態で、トラック選択処理を、実行されるトラックの選択において、たとえばユーザによって供給される情報またはデータベースによって自動的に導出される情報に基づいて、他のトラックの後に、あるトラックを必ず再生するように制限することができる。例として、ユーザが、トラック選択処理に、絶対にＣＤのトラックの全曲より少ない曲を再生のために選択させることを望む場合がある。ユーザインターフェースは、ユーザが、リンクされ順番に一緒に再生されるトラックを示すことを可能にすることができる。システムを配置し、その結果、そのシステムが演奏のためにトラックを選択するトラック選択処理である時に、必ず、リンクされたトラックが指定されたシーケンスで再生されるようにすることができる。逆に、ユーザが、トラックの直接手動選択を行っている時に、必ず、リンクをオーバーライドして、たとえば、リンクされたグループ内の単一のトラックをユーザが再生できるようにすることができる。
【０２７０】
トラックのリンクは、単一のＣＤ内のみである必要はなく、複数のＣＤまたは複数の他のソースにまたがることができる。たとえば、ユーザは、自分のコレクションのロック曲が、オンラインで入手可能なアーティストのインタビューの再生がそれに続かない限り、トラック選択処理にその曲を絶対に再生させなくすることができる。
【０２７１】
ユーザの、トラックをリンクする指示は、ユーザによって様々な形で与えることができる。指示は、通常は、トラックが再生される順序を示す。ユーザは、あるトラックのグループとしてのリンクを確立したならば、そのトラックのすべてを個別に選択する必要なしに、そのグループを演奏のために選択することができる。ユーザインターフェースを介してユーザによって供給される入力を、特定のＣＤに関するある選択に制限することができ、たとえば、ＣＤの作品をどれもリンクしないこと、ＣＤの作品のサブセットをリンクすること、ＣＤの作品のすべてをリンクすること、またはユーザのプリファレンス情報に基づいてトラックを自動的にリンクすることをシステムに指示することに制限することができる。システムは、トラックをリンクする自動的な判断の基礎になる有用な情報を有しない場合に、リンクを行わないことができる。いくつかの実施例で、システムに、ＣＤのクラシック作品の楽章をリンクするように指示するか、システムがそれを自動的に判定することができる。
【０２７２】
トラックの間のリンクに関する情報は、トラックが前にリンクされたトラックに関連するかどうかを示すフラグ（および前のトラックへのポインタ）と、トラックが後にリンクされたトラックに関連するかどうかを示すフラグ（および後のトラックへのポインタ）の形で、データベース内で維持することができる。トラック選択処理は、前のトラックが再生リストに置かれない限り、第１のフラグをセットされたトラックを絶対に選択せず、後のトラックフラグがセットされている時に、必ず次のトラックを再生リストに追加するように構成することができる。
【０２７３】
プリファレンス情報の記憶
この明細書で述べる例の実施形態の多くで、１人または複数のユーザあるいはユーザのグループに関連し、デジタル作品の１つまたは複数の組、ライブラリ、またはコレクションに関係するプリファレンスデータの本体が、生成され、維持される。プリファレンスデータの本体は、作品自体と独立に存在し、様々な記憶装置に記憶し、様々な通信チャネルで通信することができる。いくつかの実施例で、プリファレンスデータの本体を、たとえばハードディスク、ＣＤ、またはフラッシュメモリなどのポータブル記憶装置に記憶することができる。そのポータブル記憶装置を、異なる時に異なるプロセッサに結合することができ、その結果、異なるトラック選択処理によって、再生リストを選択するのに使用できるようになる。プリファレンスデータには、たとえば一意の割り当てられたアルバム識別子に基づく、関連する作品の識別が含まれる。プリファレンスデータに、各作品のスコアおよびそのスコアに関連する信頼レベルを含めることができる。作品のそれぞれのデータは、非常に小さいスペース、たとえば、作品ごとに６４ビットを超えないスペースに記憶することができ、これによって、大量の作品のプリファレンスデータを、非常にポータブルな記憶装置に記憶するか、非常に短い時間でまたは比較的狭い帯域幅のチャネルを介して通信できるようになる。
【０２７４】
いくつかの実施形態で、トラック選択処理によって選択された再生リストに含まれるデジタル作品を、本体として、ハードディスク、ＣＤ、またはフラッシュメモリなどのポータブル記憶媒体に記憶することができる。作品を、トラック選択処理によって決定される順序でトラックのシーケンスに記憶することができ、その結果、作品が、ユーザ介入なしでその順序で演奏されるようになる。後に作品が演奏される時の再生の順序を制御するのに使用されるプリファレンス情報も、記憶装置にロードすることができる。その場合に、デジタル作品を、特定の順序で記憶する必要はない。さらに、記憶装置は、フォルダおよびサブフォルダにデジタル作品を保持することができる。各フォルダに、プリファレンス情報を含めることができ、デジタル作品を、トラック選択処理によって事前に決定される順序で記憶することも、そうしないことも可能である。
【０２７５】
将来の購入に関する提案
ユーザが、十分な期間にわたって選択システムを使用した後に、グラフのノードのスコアリング値は、トラックの様々なグループをユーザがどれほど好むかによく相関する。＋１に近いスコア値は、強い好みを示し、−１に近いスコア値は、強い嫌悪を示す。
【０２７６】
ユーザが実際に所有しないＣＤに関するデータをグラフに一時的に挿入するように、システムを拡張することができる。その情報は、前に説明した外部メタデータソースの１つから導出することができる。グラフに挿入されたならば、ＣＤのスコアを、ＣＤの親ノードから継承した値を使用して計算することができる。ＣＤが高いスコアを得る場合に、システムは、そのＣＤを買うようにユーザに推薦することができる。推薦の後に、そのＣＤデータは、システムのグラフから除去される。
【０２７７】
削除するアイテムの提案
選択システムは、有限の容量の記憶機構を使用する。ある点で、システムの記憶容量を使い果たす可能性が高い。これが起きた時に、システムは、最も低いスコア／重み値を有するトラックまたはＣＤをリストし、これらを削除することを提案することができる。
【０２７８】
事前シーディング
システムは、記憶済みトラックグラフのフィードバックを、プリファレンスデータを用いてユーザが「事前シード（seed）」できるようにすることができる。たとえば、検索モード中に、ユーザは、アーティスト全体、アルバム全体、またはジャンル全体が好きまたは嫌いであることをシステムに示すことができる。その場合、このフィードバックを、記憶済みトラックグラフの適当なノードに直接に適用することができる。この例では、事前シーディングによって、単に、ノードの初期値が設定され、この値は、トラック再生の通常の過程で、上で説明したように更新され続ける。
【０２７９】
スマート状態回復
ユーザは、短い期間の間、「自動選択」モード以外のモードに切り替えることができる。たとえば、ユーザは、ラジオに切り替えて、交通状況または野球のスコアを調べることができる。ユーザが、短い期間（たとえば１時間）のうちに「自動選択」モードに戻る場合に、システムは、短期プリファレンス変数、現在のトラック情報、および再生ヒストリ情報を含む状態を、「自動選択」モードが中断された時と正確に同一に復元することができる。この時間期間の後に、システムは、再生リストヒストリおよび短期プリファレンス情報をリセットすることによって、起動直後のように振る舞う。
【０２８０】
オンスクリーンディスプレイ
選択システムが、そのハードドライブからコンテンツを再生している（すなわち、ＣＤモードおよびＡＭ／ＦＭモード以外のモード）時に、そのオンスクリーンディスプレイは、図１６の状態図によって定義される。ＯＳＤモジュールは、システムのハードディスクからトラックを再生する時にアクティブ化される（１６０４）。「再生中」状態１６０１では、最小限の情報を表示することができる。ユーザが、「ｓｅｔｔｉｎｇｓ」ボタン１８０１（図１８を参照されたい）を押す（１６０５）時に、現在再生されつつあるトラックに関するより詳細な情報が、表示されるか消される（図２６を参照されたい）。ユーザが、エンターボタンを押す（１６０６）時に、現在再生されているアイテムに関する詳細な情報が示されている場合には、プリセット編集状態１６０２のプリセット編集画面が表示される（図１９を参照されたい）。この画面で、ユーザは、プリセットにアイテムを追加または削除し（ユーザステーションの場合には、アイテムに肯定または否定のフィードバックを与え）、あるいは、プリセットを完全にクリアする（再生リストおよびユーザステーションを含む）ことができる。ユーザが、Ｅｎｔｅｒを押す（１６０７）時に、システムは、確認のためにユーザに尋ね、ユーザがｙｅｓを押す場合に、ＯＳＤは、リセットメッセージを送り、再生中状態に戻る。ユーザがｎｏを選択するか、ＥｎｔｅｒではなくＥｘｉｔまたはＳｅｔｔｉｎｇｓを押す場合には、システムは、何も行わずに再生中状態に戻る（１６０７）。
【０２８１】
プリセット編集状態または再生中状態から、ユーザが、「Ｓｅａｒｃｈ」１８１２を押す（１６０９、１６１０）時に、システムは、検索モード１６０３に入り（１６０９）（上の「動作のモード」を参照されたい）、ユーザが、再生するトラックを検索できるようにする。検索モードから、ユーザがＥｘｉｔまたはＳｅａｒｃｈを押す時に、モジュールは、何も行わずに再生中モードに戻る（１６０８）。ユーザが、ＰｌａｙまたはＥｎｔｅｒを押す場合には、モジュールは、再生リストをリセットし、現在の再生状態に「ＰｌａｙＬｉｓｔ」をセットする。ＯＳＤモジュールは、再生中モードに戻る（１６０８）。ユーザが、Ｓｅｔｔｉｎｇｓボタンを押す場合には、システムは、現在再生されているアイテムに関する詳細な情報を表示し、再生中状態に戻る（１６０８）。
【０２８２】
再生状態モジュール
再生状態モジュールのいくつかの実施形態は、図４に示されているように動作することができる。このモジュールは、ユーザがＣｈａｎｇｅｒまたはＳｍａｒｔ  Ｐｌａｙを押す時、またはトラックが記憶された時に、非ハードディスクソース４０１から再生中状態４０７に入る（４０３）。システムが最後に再生モードであったのがｋ分未満である（ｋは定数、たとえば５分）場合に、このモジュールは、前の続きを再生し、そうでない場合には、先頭から開始する。トラックの終りに達した時、またはユーザがトラックスキップを押す時に、システムは、残りのトラックがある場合に次のトラックに進み、再生中モードに戻る（４０６）。ユーザが、Ｐｒｅｖｉｏｕｓ  ｔｒａｃｋを押し、トラックの先頭から事前に指定される時間（たとえば３秒）を超える時間が経過している場合、またはシステムが既に最初のトラックを再生している場合には、システムは、現在のトラックを最初から再生し、再生中モードに戻る（４０４）。システムが再生中であった時間の長さが閾値未満であり、前のトラックがある場合には、システムは、前のトラックにスキップし、再生中に戻る（４０４）。ユーザが、再生モード中にＰａｕｓｅ／Ｐｌａｙを押す場合には、モジュールは、一時停止モード４１６に切り替わり（４１１）、再生を一時停止する。トラックの終りに達し、再生すべきトラックがこれ以上ない場合、またはユーザがＳｔｏｐを押した場合には、モジュールは、停止モードに切り替わる（４１３）。
【０２８３】
再生が一時停止４１６されている間に、ユーザが「Ｐｒｅｖｉｏｕｓ  ｔｒａｃｋ」を押し、再生が、事前に指定される時間（たとえば３秒）を超えて進行する場合、またはモジュールが既に最初のトラックを再生している場合に、モジュールは、現在のトラックを先頭から開始するが、一時停止モードに留まる（４０５）。再生時間が閾値未満であり、前のトラックがある場合には、モジュールは、前のトラックに切り替え、一時停止モードに留まる（４０５）。ユーザが「Ｓｋｉｐ  Ｔｒａｃｋ」を押し、次のトラックがある場合には、システムは、次のトラックにスキップし、一時停止モードに留まる（４１７）。モジュールが一時停止している間にユーザが「Ｐａｕｓｅ／Ｐｌａｙ」を押す場合には、モジュールは、再生中モードに切り替わる（４１１）。再生が一時停止されている間に、ユーザが、Ｐｒｅｖｉｏｕｓ  Ｔｒａｃｋ、Ｎｅｘｔ  Ｔｒａｃｋ、Ｆａｓｔ  Ｆｏｒｗａｒｄ、またはＲｅｗｉｎｄを押したままにする場合には、モジュールは、サイレントＦＦ／ＲＷモード４２９に切り替わる（４１９）。事前に指定されたタイムアウト（たとえば５分）の後、またはユーザがｓｔｏｐを押した場合に、モジュールは、停止モードに切り替わる（４１４）。ユーザが、「Ｐｌａｙ／Ｐａｕｓｅ」を押す場合に、システムは、再生を再開する（４１０）。
【０２８４】
サイレントＦＦ／ＲＷモード４２９では、モジュールが、無音で早送りまたは巻戻しを行う。トラックの終りに達し、再生すべきトラックがまだある（巻戻しの場合には現在のトラックの前、早送りの場合には現在のトラックの後に）場合に、次のトラックの末尾または前のトラックの先頭までスキップし、無音で巻戻しまたは早送りを再開する（４２６）。ユーザがボタンを押したままに保持する限り、これを継続する（４２７）。トラックの末尾に達し、再生すべきトラックがもうない場合には、モジュールは、「停止」モードに切り替わる（４２８）。ユーザがボタンを離す時に、モジュールは、一時停止状態に戻る（４１８）。トラックの末尾に達し、再生すべきトラックがもうない場合に、モジュールは、停止モード４２５に入る（４２８）。
【０２８５】
停止モード４２５では、ユーザが、Ｎｅｘｔ  ＴｒａｃｋまたはＰｒｅｖｉｏｕｓ  ｔｒａｃｋを押し、次のトラックまたは前のトラックがある場合に、システムは、そのトラックにスキップし、停止モードに留まる（４２４）。ユーザが、Ｐｌａｙを押す場合には、システムは、現在のトラックを先頭から再生し始める（４１２）。ユーザが、ｆａｓｔ  ｆｏｒｗａｒｄ、ｒｅｗｉｎｄ、ｎｅｘｔ  ｔｒａｃｋ、またはｐｒｅｖｉｏｕｓ  ｔｒａｃｋを押し、保持する場合に、システムは、ＦＦ／巻戻しモード４３０に入る（４２３）。ユーザが、ｐａｕｓｅを押す場合に、システムは、経過時間に０をセットし、現在のトラックについて一時停止モードに入る（４１５）。
【０２８６】
再生モードにいる間に、ユーザがｆａｓｔ  ｆｏｒｗａｒｄ、ｒｅｗｉｎｄ、ｐｒｅｖｉｏｕｓ  ｔｒａｃｋ、またはｎｅｘｔ  ｔｒａｃｋを押し、保持する場合に、システムは、ＦＦ／巻戻しモード４３０に切り替わる（４０８）。モジュールは、聞こえるようにトラックを早送りまたは巻戻しする。モジュールは、ボタンが保持されている間、このモードに留まる（４２１）。モジュールは、トラックの末尾に達し、再生すべきトラックがまだある場合に、巻戻しの場合には前のトラックの末尾、早送りの場合には次のトラックの先頭に切り替え、現在の状態を継続する（４２０）。ユーザがボタンを離す時に、システムは、再生モードに切り替わる（４０９）。
【０２８７】
ソースボタンが押される（テープ、ＡＭ／ＦＭラジオ、またはＣＤ／ＤＶＤ）時に、システムは、トラックの現在の経過時間を保存した後に、そのモードに切り替わる（４０２）。
【０２８８】
変形形態
様々な実施形態を説明したが、他の実施形態も、請求項の範囲に含まれる。
【０２８９】
たとえば、検索または使用されるアイテムの本体およびアイテムを互いに階層的にまたは他の形で結び付けるメタデータを、ユーザの明示的または暗黙のプリファレンスに基づく類似する選択の対象にすることができる。たとえば、アイテムのデータベースの場合に、ユーザは、普通の検索を表すことができる。システムは、検索から最初の「ヒット」を作り、ユーザに表示することができる。ユーザは、最初のヒットに関する満足または不満足を示すことができる。システムは、メタデータによって示される関係に基づいて、最初の検索から生じたアイテムを再スコアリングする。システムは、その場合、音楽に関して説明したシステムで次のトラックが選択されるのに似た形で、ユーザにもう１つのヒットを提示することができる。上で説明したシステムが、ユーザが関心を持つトラックを引き渡すためにそれ自体を適応させるのと同一の形で、データベースシステムは、データベース検索者が関心を持つヒットを引き渡すためにそれ自体を適応させることができる。そのようなデータベースの特定の例を使用して、特許データベースで特許を検索することができる。名称、譲受人、特許番号、分類、記載された従来技術、意匠特許または実用新案であるかどうか、発明者、および他の情報を取り込むメタデータを使用することができる。図３４に、そのような変形形態の記憶済みトラックツリーの例の構造を示す。
【０２９０】
もう１つの実施例は、ワールドワイドウェブのサーフィンである。ウェブページに関連するメタデータに、ＩＰアドレス、タイトル、長さ、言語、ドメイン名、および他の情報を含めることができる。検索がヒットを作る時に、ユーザは、それが自分の必要にあうか否かを示すことができる。システムは、より関連するヒットをユーザのブラウザに引き渡すように、すばやく適応することができる。
【０２９１】
いくつかの実施例を上で説明したが、他の実施形態も、請求項の範囲に含まれる。
【図面の簡単な説明】
【０２９２】
【図１】プラットフォームを示すブロック図である。
【図２】プラットフォームを示すブロック図である。
【図３】プラットフォームを示すブロック図である。
【図４Ａ】状態図である。
【図４Ｂ】状態図である。
【図５】状態図である。
【図６】状態図である。
【図７】ブロック図である。
【図８】ノードを示す図である。
【図９】ディスプレイを示す図である。
【図１０】データベーススキーマを示す図である。
【図１１Ａ】データベーススキーマを示す図である。
【図１１Ｂ】データベーススキーマを示す図である。
【図１２】データベーススキーマを示す図である。
【図１３】ユーザインターフェースを示す図である。
【図１４】トラックのヒストリを示す図である。
【図１５】データベース構造を示す図である。
【図１６】状態図である。
【図１７】流れ図である。
【図１８】遠隔コントローラを示す図である。
【図１９】ディスプレイを示す図である。
【図２０Ａ】状態図である。
【図２０Ｂ】状態図である。
【図２１】状態図である。
【図２２】階層を示す図である。
【図２３】ユーザインターフェースを示す図である。
【図２４】ユーザインターフェースを示す図である。
【図２５】ユーザインターフェースを示す図である。
【図２６】ディスプレイを示す図である。
【図２７】ディスプレイを示す図である。
【図２８】ディスプレイを示す図である。
【図２９】グラフを示す図である。
【図３０】階層を示す図である。
【図３１】グラフを示す図である。
【図３２】ユーザインターフェースを示す図である。
【図３３】ブロック図である。
【図３４】階層を示す図である。
【図３５Ａ】システムを示すブロック図である。
【図３５Ｂ】システムを示すブロック図である。
【図３６】音楽システムを示すブロック図である。
【図３７】ブロック図である。
【図３８】図３８Ａは、データベースナビゲーション画面を示す図である。図３８Ｂは、データベースナビゲーション画面を示す図である。図３８Ｃは、データベースナビゲーション画面を示す図である。
【符号の説明】
【０２９３】
１０  システム
１２  使用可能なトラックのサプライ
１４  トラックのソース
１６  トラックプレイヤ
１８  次トラック識別子
２０  ユーザ
２２  トラックセレクタ
２４  ロジック
２６  ストレージ
２８  トラック選択モジュール
３０  ユーザインターフェース
３２  入力側
３４  出力側
３６  トラックスコアリング情報
３８  再生ヒストリ
４０  メタデータ
５０、５２  モジュール
５４  トラックスコアリングモジュール
５６  メタデータ保守モジュール
５８  再生ヒストリ保守モジュール
６０  メタデータのソース
【図１】
2005243214.tif 000003
【図２】
2005243214.tif 000004
【図３】
2005243214.tif 000005
【図４Ａ】
2005243214.tif 000006
【図４Ｂ】
2005243214.tif 000007
【図５】
2005243214.tif 000008
【図６】
2005243214.tif 000009
【図７】
2005243214.tif 000010
【図８】
2005243214.tif 000011
【図９】
2005243214.tif 000012
【図１０】
2005243214.tif 000013
【図１１Ａ】
2005243214.tif 000014
【図１１Ｂ】
2005243214.tif 000015
【図１２】
2005243214.tif 000016
【図１３】
2005243214.tif 000017
【図１４】
2005243214.tif 000018
【図１５】
2005243214.tif 000019
【図１６】
2005243214.tif 000020
【図１７】
2005243214.tif 000021
【図１８】
2005243214.tif 000022
【図１９】
2005243214.tif 000023
【図２０Ａ】
2005243214.tif 000024
【図２０Ｂ】
2005243214.tif 000025
【図２１】
2005243214.tif 000026
【図２２】
2005243214.tif 000027
【図２３】
2005243214.tif 000028
【図２４】
2005243214.tif 000029
【図２５】
2005243214.tif 000030
【図２６】
2005243214.tif 000031
【図２７】
2005243214.tif 000032
【図２８】
2005243214.tif 000033
【図２９】
2005243214.tif 000034
【図３０】
2005243214.tif 000035
【図３１】
2005243214.tif 000036
【図３２】
2005243214.tif 000037
【図３３】
2005243214.tif 000038
【図３４】
2005243214.tif 000039
【図３５Ａ】
2005243214.tif 000040
【図３５Ｂ】
2005243214.tif 000041
【図３６】
2005243214.tif 000042
【図３７】
2005243214.tif 000043
【図３８】
2005243214.tif 000044
【外国語明細書】
2005243214000001.pdf