(57)【要約】【課題】  拡張子又はＭＩＭＥタイプに基づいて、ＷＭＡであることを判別できるが、ＭＷＡ  ＳＴＤ、又は、ＷＭＡ  ＬＳＬのいずれであるかを判別することができない場合に、正しいデコーダを最初に選択する可能性を高くすること。【解決手段】  過去に再生されたオーディオファイルのフォーマットを記憶しておく。再生すべきオーディオファイルのフォーマットがＷＭＡであり、かつ、直近に再生されたオーディオファイルのフォーマットがＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬであれば、直近に再生されたオーディオファイルのフォーマット（ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬ）を、再生すべきオーディオファイルのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのオーディオファイルが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。【選択図】図４
2010281918.tif 000002
【特許請求の範囲】
【請求項１】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットであるか否かを判断する手段と、
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項２】
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットでない場合に、前記選択手段が、第１所定フォーマット、又は、第２所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる、請求項１に記載のコンテンツ再生装置。
【請求項３】
前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、
前記外部記憶装置毎に対応する前記フォーマット記憶手段と、
再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、
特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える、請求項１または２に記載のコンテンツ再生装置。
【請求項４】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
コンテンツの品質に関する情報に対応付けて、第１所定フォーマットの基準サイズと、第２所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第１所定フォーマットの基準サイズと第２所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、
特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項５】
請求項１〜４のいずれかに記載のコンテンツ再生装置の各手段をコンピュータに実行させる、コンテンツ再生プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定フォーマットであることを判別できるが、所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置に関する。
【背景技術】
【０００２】
ＡＶアンプ等のコンテンツ再生装置は、ＬＡＮ等のネットワークを介してサーバに接続され、サーバからコンテンツ（例えばオーディオファイル）をストリーミング形式で取得し（又は、接続されたＵＳＢメモリからオーディオファイルを取得してもよい。以下同様。）、再生する。オーディオファイルは、ＭＰ３、ＷＭＡ、ＡＡＣ等の複数のフォーマットのいずれかで圧縮されている。ＡＶアンプは、これらのフォーマットのオーディオファイルをデコードするため、フォーマット毎にデコーダ（ＭＰ３デコーダ、ＷＭＡ  ＳＴＤデコーダ、ＷＭＡ  ＬＳＬデコーダ、ＡＡＣデコーダ等）を備えている。ＡＶアンプは、サーバから曲リストを取得し、曲リストの中からユーザ操作によって選択されたオーディオファイルをサーバに要求し、取得する。ＡＶアンプは、再生すべきオーディオファイルが選択されると、例えば曲リストに記述されているオーディオファイルの拡張子、又は、ＭＩＭＥタイプ等を参照することにより、サーバから取得して再生するオーディオファイルのフォーマットを特定することができる。従って、特定したフォーマットのデコーダを起動させることにより、サーバから取得したオーディオファイルをデコードすることができる。
【０００３】
ここで、ＷＭＡにはＷＭＡ  ＳＴＤ（WMA
Standard）およびＷＭＡ  ＬＳＬ（WMA Lossless）の２種類のフォーマットが存在する。しかし、拡張子またはＭＩＭＥタイプ（あるいは、Profile
IDでもよい。以下同様。）を参照しても、フォーマットがＷＭＡであることは特定できるが、ＷＭＡ  ＳＴＤであるか、又は、ＷＭＡ  ＬＳＬであるかを特定することができない。従って、ＷＭＡ  ＳＴＤおよびＷＭＡ  ＬＳＬのどちらのフォーマットのデコーダを起動させる必要があるかを特定できない。従って、ＷＭＡ  ＳＴＤおよびＷＭＡ  ＬＳＬの内、最初に起動させるデコーダが予め決定されている。
【０００４】
最初に起動させるデコーダがＷＭＡ  ＬＳＬデコーダの場合、ＷＭＡ  ＬＳＬデコーダを起動させ、サーバからオーディオファイルの一部を取得して、取得したデータを使用してＷＭＡ  ＬＳＬデコーダを初期化及び／又は設定させる。初期化及び／又は設定できた場合には、オーディオファイルのフォーマットはＷＭＡ  ＬＳＬであるので、ＷＭＡ  ＬＳＬデコーダでデコードすることができる。一方、初期化及び／又は設定できなかった場合には、オーディオファイルのフォーマットはＷＭＡ  ＳＴＤであるので、ＷＭＡ  ＳＴＤデコーダを起動させ、再度、サーバからオーディオファイルの一部を取得して、取得したデータを使用してＷＭＡ  ＳＴＤデコーダを初期化及び／又は設定させる。
【０００５】
以上のように、ＷＭＡ  ＬＳＬデコーダ又はＷＭＡ  ＳＴＤデコーダの内、最初に選択して起動させたデコーダが正しいデコーダでなかった場合には、もう一方のデコーダを起動させ、再びサーバから初期化及び／又は設定に必要なデータを取得して、もう一方のデコーダを初期化及び／又は設定させる必要が生じる。その結果、不要な処理及び通信が生じ、オーディオファイルを再生開始する迄に時間がかかるという問題がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−３５０８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、所定フォーマットであることを判別できるが、所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができない場合に、第１所定フォーマットに対応するデコーダ、又は、第２所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできるコンテンツ再生装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットであるか否かを判断する手段と、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【０００９】
過去に再生されたコンテンツのフォーマットを記憶しておく。再生すべきコンテンツのフォーマットが所定フォーマットであり、かつ、直近に再生されたコンテンツのフォーマットが第１所定フォーマット又は第２所定フォーマットであれば、直近に再生されたコンテンツのフォーマット（第１所定フォーマット又は第２所定フォーマット）を、再生すべきコンテンツのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのコンテンツが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【００１０】
好ましい実施形態においては、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第１所定フォーマット、又は、第２所定フォーマットでない場合に、前記選択手段が、第１所定フォーマット、又は、第２所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる。
【００１１】
第１所定フォーマット又は第２所定フォーマットの内、過去に再生された回数が多い方が、再生すべきコンテンツのフォーマットである可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【００１２】
好ましい実施形態においては、前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、前記外部記憶装置毎に対応する前記フォーマット記憶手段と、再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える。
【００１３】
一般的に、１つの外部記憶装置には同じフォーマットのコンテンツが記録されている可能性が高いので、外部記憶装置毎に個別に過去に再生されたコンテンツのフォーマットを記憶しておくことにより、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【００１４】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、コンテンツの品質に関する情報に対応付けて、第１所定フォーマットの基準サイズと、第２所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第１所定フォーマットの基準サイズと第２所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【発明の効果】
【００１５】
所定フォーマットであることを判別できるが、所定フォーマットの内の第１所定フォーマット、又は、第２所定フォーマットのいずれであるかを判別することができない場合に、第１所定フォーマットに対応するデコーダ、又は、第２所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできる。
【図面の簡単な説明】
【００１６】
【図１】本発明の好ましい実施形態によるＡＶアンプ１００を示すブロック図である。
【図２】プレイリストを示す図である。
【図３】履歴テーブルを示す図である。
【図４】ネットマイコン４の処理を示すフローチャートである。
【図５】ＵＳＢリストを示す図である。
【図６】各ＵＳＢメモリに対する履歴テーブルを示す図である。
【図７】サーバリストを示す図である。
【図８】ネットマイコン４の処理を示すフローチャートである。
【図９】フォーマットサイズテーブルを示す図である。
【図１０】ネットマイコン４とサーバの処理を示すシーケンスチャートである。
【図１１】プレイリスト画面を示す図である。
【図１２】デコーダアプリが実行するＳＥＥＫ、ＲＥＡＤの関数を示す図である。
【図１３】デコーダアプリ、デコーダ、サーバの処理を示すフローチャートである。
【図１４】キューの構造を示す図である。
【図１５】キューの構造を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の好ましい実施形態について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。
【００１８】
図１は、本発明の好ましい実施形態によるコンテンツ再生装置（以下、ＡＶアンプという。）１００と、サーバ２００とを示すブロック図である。ＡＶアンプ１００は、ＬＡＮ等の任意のネットワークを介してサーバ２００に接続可能であり、サーバにコンテンツを要求し、サーバから例えばストリーミング形式でコンテンツを取得し、コンテンツを再生する。コンテンツは、映像データ、静止画データ、音楽データ（オーディオファイル）等の総称であるが、本例ではオーディオファイルである。また、ＡＶアンプ１００は、ＵＳＢ端子９に接続されたＵＳＢメモリに記録されているオーディオファイルを取得して、再生する。ＵＳＢメモリは、例えば、フラッシュメモリ内蔵の携帯型プレーヤ等である。
【００１９】
ＡＶアンプ１００は、メインマイコン１、ＲＡＭ２、ＲＯＭ３、ネットワークマイコン（以下、ネットマイコンという。）４、ビデオマイコン５、再生部６、表示部７、操作部８及びＵＳＢ端子９を備える。これらは、バスを介して互いに接続されている。再生部６には、図示しないスピーカーが外部に接続されている。
【００２０】
メインマイコン１は、ＲＯＭ３に記録されているプログラムに基づいて、ＡＶアンプ１００の各部を制御する。ネットマイコン４は、ＲＯＭ３又は他のメモリに記録されているプログラムに基づいて、下記の動作を実行する。ネットマイコン４は、ＬＡＮを介してサーバ２００にアクセスし、サーバ２００から曲リスト（以下、プレイリストという。）を取得し、メインマイコン１に供給する。メインマイコン１は、プレイリストをビデオマイコン５に供給する。ビデオマイコン５は、プレイリストを描画処理し、表示部７に表示、又は、ＯＳＤ画面を図示しないＴＶ等の外部ディスプレイに表示させる。
【００２１】
図２は、プレイリストの一例を示す図である。プレイリストは、例えば、各オーディオファイルのアーティスト名、アルバム名、曲名等に加えて、オーディオファイルのフォーマット情報を含む。オーディオファイルのフォーマット情報は、例えば、拡張子又はＭＩＭＥタイプといった形態で含まれている。
【００２２】
ユーザが操作部８を操作してプレイリストの中から、再生すべきオーディオファイルを選択すると、ネットマイコン４は、選択されたオーディオファイルをサーバ２００に要求し、サーバ２００からオーディオファイルを例えばストリーミング形式で取得する。なお、最初はユーザ操作によって再生すべきオーディオファイルが選択されるが、一度選択された後は、ネットマイコン４は、オーディオファイルを再生し終える毎に、プレイリストの順番にサーバ２００からオーディオファイルを取得して、再生することができる。
【００２３】
ネットマイコン４は、その内部に、オーディオファイルのフォーマット毎に、デコーダ（ソフトウェアデコーダ）を有している。例えば、オーディオファイルのフォーマットが、ＭＰ３、ＡＡＣ、ＷＭＡ  ＳＴＤ、ＷＭＡ  ＬＳＬ、Ｏｇｇ  Ｖｏｒｖｉｓ等である場合には、ネットマイコン４は、ＭＰ３デコーダ、ＡＡＣデコーダ、ＷＭＡ  ＳＴＤデコーダ、ＷＭＡ  ＬＳＬデコーダ、Ｏｇｇ  Ｖｏｒｖｉｓデコーダ等を有する。
【００２４】
ネットマイコン４は、プレイリストから再生すべきオーディオファイルが選択されると、選択されたオーディオファイルのフォーマットを、例えばプレイリストに記述された拡張子又はＭＩＭＥタイプ（あるいは、Profile IDでもよい。以下同様。）に基づいて特定する。そして、ネットマイコン４は、特定したフォーマットに対応するデコーダを起動させ、サーバ２００から受信したオーディオファイルを、起動したデコーダを使用して、デコードする。デコードされたオーディオファイルは、再生部６によってデジタル−アナログ変換、増幅処理等が実行され、スピーカーに音声信号が供給される。
【００２５】
ここで、例えばプレイリストに記述されている拡張子やＭＩＭＥタイプ（又は、サーバ２００から別途取得したＭＩＭＥタイプでもよい。）等から、フォーマットがＷＭＡ（所定フォーマット）であることは特定することができるが、ＷＭＡ  ＳＴＤ（第１所定フォーマット）、又は、ＷＭＡ  ＬＳＬ（第２所定フォーマット）のいずれであるかを特定することができない（なお、図２のプレイリストでは、説明の為に便宜上、ＷＭＡ  ＳＴＤやＷＭＡ  ＬＳＬと記述しているだけである）。従って、ネットマイコン４は、オーディオファイルをデコードするために、ＷＭＡ  ＳＴＤデコーダ又はＷＭＡ  ＬＳＬデコーダのいずれを最初に起動させるとよいかを特定することができない。
【００２６】
この問題を解決するために、本実施形態においては、拡張子又はＭＩＭＥタイプがＷＭＡである場合に、ネットマイコン４は、直近に（最後に）再生したオーディオファイルのフォーマットがＷＭＡ  ＳＴＤであり、直近に（最後に）使用したデコーダがＷＭＡ  ＳＴＤデコーダであれば、今回再生するオーディオファイルのフォーマットもＷＭＡ  ＳＴＤであると推定し、ＷＭＡ  ＳＴＤデコーダを最初に起動させ、オーディオファイルをデコードする。一方、拡張子又はＭＩＭＥタイプがＷＭＡである場合に、直近に（最後に）再生したオーディオファイルのフォーマットがＷＭＡ  ＬＳＬであり、直近に（最後に）使用したデコーダがＷＭＡ  ＬＳＬデコーダであれば、今回再生するオーディオファイルのフォーマットもＷＭＡ  ＬＳＬであると推定し、ＷＭＡ  ＬＳＬデコーダを最初に起動させ、オーディオファイルをデコードする。このようにフォーマットを推定するのは、一般的には、図２（ａ）に示すように、オーディオファイルを連続再生する場合、又は、同一のサーバ等からオーディオファイルを取得して再生する場合、同一のフォーマットが連続する確率が高いからである。
【００２７】
これを実現するために、ネットマイコン４は、その内部のメモリ領域に、図３に示す履歴テーブルを格納している。履歴テーブルは、過去に再生されたオーディオファイルに使用したデコーダのフォーマット（すなわち、過去に再生したオーディオファイルのフォーマット）を時系列で記憶しておくテーブルである。図３においては、下側が再生された時刻が古く、上側が再生された時刻が新しいオーディオファイルのフォーマットを示す。つまり、直近に（最後に）再生されたオーディオファイルのフォーマットはＭＰ３であり、その前に再生されたオーディオファイルのフォーマットがＷＭＡ  ＬＳＬであることを示す。
【００２８】
履歴テーブルには最初は何も記憶されておらず、ネットマイコン４がオーディオファイルのフォーマットを確定し、確定したフォーマットのデコーダでオーディオファイルをデコードし、再生する際に、履歴テーブルにフォーマットを記憶する。
【００２９】
ここで、拡張子又はＭＩＭＥタイプがＷＭＡである場合に、直近に（最後に）再生したオーディオファイルのフォーマットがＷＭＡ  ＳＴＤでも、ＷＭＡ  ＬＳＬでもない場合、直近に再生したフォーマットという条件で最初に起動させるデコーダをＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬの中から特定できない。そこで、ネットマイコン４は、ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬの中から、履歴テーブルに記憶されている数が多い方のフォーマットを、再生するオーディオファイルのフォーマットと推定し、推定したフォーマットのデコーダを最初に起動させ、オーディオファイルをデコードする。履歴テーブルに記憶されている数が多い方が、頻繁に再生されているフォーマットであるので、今回再生するオーディオファイルのフォーマットである可能性が高いからである。
【００３０】
図４は、ネットマイコン４の処理を示すフローチャートである。本例では、サーバ２００からオーディオファイルを取得する場合を例に説明するが、ＵＳＢメモリからオーディオファイルを取得する場合も同様である。プレイリストから再生すべきオーディオファイルが選択されると、ネットマイコン４は、再生開始状態になる（Ｓ４０１）。ネットマイコン４は、プレイリストを参照し、選択されたオーディオファイルの拡張子又はＭＩＭＥタイプに基づいて、再生すべきオーディオファイルのフォーマットが、ＷＭＡであるか否かを判断する（Ｓ４０２）。
【００３１】
再生すべきオーディオファイルのフォーマットがＷＭＡではなく、例えば、ＭＰ３等であれば（Ｓ４０２でＮＯ）、ネットマイコン４は、拡張子又はＭＩＭＥタイプに基づいたフォーマットのデコーダを選択し、選択したデコーダを起動させる（Ｓ４１０）。例えば、フォーマットがＭＰ３であれば、ＭＰ３デコーダを選択し、起動させる。ネットマイコン４は、履歴テーブルに、選択して起動させたデコーダのフォーマットを新たに記憶させる（Ｓ４０８）。そして、ネットマイコン４は、選択されたオーディオファイルをサーバ２００から取得して、起動させたデコーダにデコードさせ、再生を開始する（Ｓ４０９）。
【００３２】
Ｓ４０２で、拡張子又はＭＩＭＥタイプがＷＭＡであると判断された場合（Ｓ４０２でＹＥＳ）、ネットマイコン４は、履歴テーブルのデータ数＞０であるか否か、すなわち、履歴テーブルに過去に再生されたオーディオファイルのフォーマットが１つ以上記憶されているか否かを判断する（Ｓ４０３）。履歴テーブルにフォーマットが記憶されていない場合（Ｓ４０３でＮＯ）、つまり、電源投入後最初のオーディオファイルの再生であるために、過去に再生されたオーディオファイルのフォーマットが記憶されていない場合には、ネットマイコン４は、ＷＭＡ  ＳＴＤデコーダ又はＷＭＡ  ＬＳＬデコーダの内、デフォルトとして設定されている方のデコーダを選択し、選択したデコーダを起動させて、Ｓ４０６に進む。
【００３３】
Ｓ４０３で履歴テーブルにフォーマットが記憶されていると判断された場合（Ｓ４０３でＹＥＳ）、ネットマイコン４は、履歴テーブルにおいて、最後尾（直近）に記憶されているフォーマットがＷＭＡ  ＳＴＤ、又は、ＷＭＡ  ＬＳＬであるか否かを判断する（Ｓ４０４）。すなわち、直近に再生したオーディオファイルのフォーマットが、ＷＭＡ  ＳＴＤ、又は、ＷＭＡ  ＬＳＬであるか否かを判断する。
【００３４】
履歴テーブルの最後尾に記憶されているフォーマットがＷＭＡ  ＳＴＤ、又は、ＷＭＡ  ＬＳＬである場合（Ｓ４０４でＹＥＳ）、ネットマイコン４は、最後尾に記憶されているフォーマットと同じフォーマットに対応するデコーダを選択し、起動させ（Ｓ４０５）、Ｓ４０６に進む。つまり、履歴テーブルの直近に記憶されているフォーマットがＷＭＡ  ＳＴＤであれば、ネットマイコン４は、ＷＭＡ  ＳＴＤデコーダを選択して、起動させる。一方、履歴テーブルの直近に記憶されているフォーマットがＷＭＡ  ＬＳＬであれば、ネットマイコン４は、ＷＭＡ  ＬＳＬデコーダを選択して、起動させる。
【００３５】
Ｓ４０４で、履歴テーブルの最後尾に記憶されているフォーマットがＷＭＡ  ＳＴＤ、又は、ＷＭＡ  ＬＳＬでない場合（Ｓ４０４でＮＯ）、ネットマイコン４は、履歴テーブルに記憶されているフォーマットにおいて、ＷＭＡ  ＳＴＤとＷＭＡ  ＬＳＬとの中で数が多い方のフォーマットに対応するデコーダを選択し、起動させ（Ｓ４１２）、Ｓ４０６に進む。つまり、履歴テーブルに記憶されている数が多い方のフォーマットがＷＭＡ  ＳＴＤであれば、ネットマイコン４は、ＷＭＡ  ＳＴＤデコーダを選択して、起動させる。一方、履歴テーブルに記憶されている数が多い方のフォーマットがＷＭＡ  ＬＳＬであれば、ネットマイコン４は、ＷＭＡ  ＬＳＬデコーダを選択して、起動させる。なお、履歴テーブルに記憶されている数が同数であれば、Ｓ４１１と同様に、デフォルトのデコーダを選択して、起動させるとよい。
【００３６】
Ｓ４０６において、ネットマイコン４は、サーバ２００のオーディオファイルから、初期化及び／又は設定用のデータをＳＥＥＫ、ＲＥＡＤして取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び／又は設定を実行する。ネットマイコン４は、Ｓ４０６の結果、サーバから取得したデータを使用して、デコーダが初期化及び／又は設定を実行できたか否かを判断する（Ｓ４０７）。初期化及び／又は設定できた場合（Ｓ４０７でＹＥＳ）、Ｓ４０５，Ｓ４１１又はＳ４１２で選択したデコーダは正しいデコーダである。従って、ネットマイコン４は、Ｓ４０５，Ｓ４１１又はＳ４１２で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する（Ｓ４０８）。これにより、今回再生するオーディオファイルの正確なフォーマット（ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬ）を履歴テーブルに記憶させることができる。その後、ネットマイコン４は、サーバ２００から選択されたオーディオファイルを取得し、起動させたデコーダによってデコーダさせ、再生を開始する（Ｓ４０９）。
【００３７】
Ｓ４０７で初期化及び／又は設定できなかった場合（Ｓ４０７でＮＯ）、Ｓ４０５，Ｓ４１１又はＳ４１２で選択したデコーダは誤ったデコーダである。従って、ネットマイコン４は、ＷＭＡ  ＳＴＤデコーダ又はＷＭＡ  ＬＳＬデコーダの内、Ｓ４０５，Ｓ４１１又はＳ４１２で選択しなかった方のフォーマットのデコーダを選択し、起動させる（Ｓ４１３）。つまり、Ｓ４０５，Ｓ４１１又はＳ４１２でＷＭＡ  ＳＴＤデコーダが選択された場合には、ネットマイコン４は、ＷＭＡ  ＬＳＬデコーダを選択し、起動させる。Ｓ４０５，Ｓ４１１又はＳ４１２でＷＭＡ  ＬＳＬデコーダが選択された場合には、ネットマイコン４は、ＷＭＡ  ＳＴＤデコーダを選択し、起動させる。
【００３８】
ネットマイコン４は、再度、サーバ２００のオーディオファイルから、初期化及び／又は設定用のデータをＳＥＥＫ、ＲＥＡＤによって取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び／又は設定を実行する（Ｓ４１４）。ネットマイコン４は、Ｓ４１４の結果、サーバから取得したデータを使用して、デコーダが初期化及び／又は設定できたか否かを判断する（Ｓ４１５）。デコーダが初期化及び／又は設定できた場合（Ｓ４１５でＹＥＳ）、Ｓ４１３で選択したデコーダは正しいデコーダである。従って、ネットマイコン４は、Ｓ４１３で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する（Ｓ４０８）。これにより、今回再生するオーディオファイルの正確なフォーマット（ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬ）を履歴テーブルに記憶させることができる。その後、ネットマイコン４は、サーバ２００から選択されたオーディオファイルを取得して、起動させたデコーダにデコードさせ、再生を開始する（Ｓ４０９）。
【００３９】
Ｓ４１５で初期化及び／又は設定できなかった場合（Ｓ４１５でＮＯ）、Ｓ４１３で選択したデコーダも誤ったデコーダである。従って、ネットマイコン４は、選択されたオーディオファイルをデコードして、再生することができないと判断し、エラー処理を実行し（Ｓ４１６）、処理を終了する。
【００４０】
以上のように、拡張子又はＭＩＭＥタイプに基づいてオーディオファイルのフォーマットがＷＭＡであると判断された場合には、履歴テーブルに直近に記憶されている（直近に再生されたオーディオファイルの）フォーマットに対応するデコーダを最初に起動させることにより、正確なデコーダを最初に起動できる可能性を高くすることができる。
【００４１】
次に、本発明の別の好ましい実施形態を説明する。本例では、ＵＳＢ端子９に接続されるＵＳＢメモリ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているＵＳＢ端子に対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。また、サーバ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているサーバに対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。ここで、ＵＳＢメモリやサーバを、総称して外部記憶装置という。
【００４２】
ネットマイコン４は、その内部のメモリ領域に、図５に示すＵＳＢリストを格納している。ＵＳＢリストは、ＵＳＢ端子９に接続されたＵＳＢメモリ毎に、番号ＮＯ．に対応付けて、モデル名、ベンダーＩＤ、シリアル番号及び履歴テーブルを記憶するリストである。ベンダーＩＤとシリアル番号とは、ＵＳＢメモリを一意に特定するための識別情報である。履歴テーブルは、上記の通り、各ＵＳＢメモリ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。各ＵＳＢメモリに対する履歴テーブルの例を図６に示す。例えば、ＮＯ．１のＵＳＢメモリについては、履歴テーブルＵＳＢ−Ｔｂ１を参照すると、直近に再生されたオーディオファイルのフォーマットはＭＰ３であり、その１つ前に再生されたオーディオファイルのフォーマットもＭＰ３であることが分かる。
【００４３】
ネットマイコン４は、その内部のメモリ領域に、図７に示すサーバリストを格納している。サーバリストは、過去に接続されたサーバ２００毎に、番号ＮＯ．に対応付けて、サーバ名、ＵＵＩＤ（又はＭＡＣアドレス）、及び履歴テーブルを記憶するリストである。ＵＵＩＤ（又はＭＡＣアドレス）は、サーバ２００を一意に特定するための識別情報である。履歴テーブルは、上記の通り、各サーバ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。
【００４４】
図８は、本例におけるネットマイコン４の処理の要部を説明する図である。なお、ネットマイコン４のオーディオファイルのフォーマットを推定する基本的な処理は図４と同じであり、ここでは、使用する履歴テーブルの選択処理のみを説明する。ネットマイコン４は、拡張子又はＭＩＭＥタイプに基づいて選択されたオーディオファイルのフォーマットがＷＭＡであると判断する（図４のＳ４０２でＹＥＳ）と、図８のＳ６０１に進む。ネットマイコン４は、再生すべきオーディオファイルがＵＳＢメモリに記録されているか否かを判断する（Ｓ６０２）。
【００４５】
ＵＳＢメモリに記録されている場合には（Ｓ６０２でＹＥＳ）、ネットマイコン４は、再生すべきオーディファイルが記録されているＵＳＢメモリのベンダーＩＤとシリアル番号とをＵＳＢメモリから読み出して取得する（Ｓ６０３）。ネットマイコン４は、図５のＵＳＢリストに、Ｓ６０３で取得したベンダーＩＤとシリアル番号との組合せが存在するか否かを判断する（Ｓ６０４）。すなわち、再生すべきオーディオファイルが記録されたＵＳＢメモリの履歴テーブルがＵＳＢリストに記憶されているか否かを判断する。
【００４６】
図５のＵＳＢリストに、Ｓ６０３で取得したベンダーＩＤとシリアル番号との組合せが存在すると判断された場合（Ｓ６０４でＹＥＳ）、ネットマイコン４は、ＵＳＢリストからベンダーＩＤとシリアル番号との組合せに対応する履歴テーブルを取得し、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するための履歴テーブルとして使用する。例えば、ベンダーＩＤが０ｘ７Ａ８Ｂ，シリアル番号が０ｘＣＫ２３４９ｃｋｓであれば、ＮＯ．１のＵＳＢメモリであることが特定され、履歴テーブルＵＳＢ−Ｔｂ１が取得される。その後、Ｓ６１２に進み、図４のＳ４０３以降の処理を実行する。
【００４７】
Ｓ６０４で図５のＵＳＢリストに、Ｓ６０３で取得したベンダーＩＤとシリアル番号との組合せが存在しないと判断された場合（Ｓ６０４でＮＯ）、初めて当該ＵＳＢメモリに記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン４は新たに履歴テーブルを生成し、ＵＳＢリストに、モデル名、ベンダーＩＤ、シリアル番号と関連付けて登録すると共に、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するための履歴テーブルとして使用する。（Ｓ６０５）。その後、Ｓ６１２に進み、図４のＳ４０３以降の処理を実行する。
【００４８】
以上の処理により、再生すべきオーディオファイルが記録されているＵＳＢメモリ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するために、各ＵＳＢメモリの履歴テーブルが使用される。一般的に、１つのＵＳＢメモリには同一のフォーマットのオーディオファイルを記録することが多いので、図４の処理において、ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のＵＳＢメモリの中からＵＳＢメモリを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【００４９】
Ｓ６０２でＮＯと判断された場合、ネットマイコン４は、再生すべきオーディオファイルがサーバ２００に記録されているか否かを判断する（Ｓ６０７）。
【００５０】
サーバ２００に記録されている場合には（Ｓ６０７でＹＥＳ）、ネットマイコン４は、再生すべきオーディファイルが記録されているサーバ２００のＵＵＩＤ（又はＭＡＣアドレス）をサーバ２００から取得する（Ｓ６０８）。ネットマイコン４は、図７のサーバリストに、Ｓ６０８で取得したＵＵＩＤ（又はＭＡＣアドレス）が存在するか否かを判断する（Ｓ６０９）。すなわち、再生すべきオーディオファイルが記録されたサーバの履歴テーブルがサーバリストに記憶されているか否かを判断する。
【００５１】
図７のサーバリストに、Ｓ６０８で取得したＵＵＩＤ（又はＭＡＣアドレス）が存在すると判断された場合（Ｓ６０９でＹＥＳ）、ネットマイコン４は、サーバリストからＵＵＩＤ（又はＭＡＣアドレス）に対応する履歴テーブルを取得し、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するための履歴テーブルとして使用する。その後、Ｓ６１２に進み、図４のＳ４０３以降の処理を実行する。
【００５２】
Ｓ６０９で図７のサーバリストに、Ｓ６０８で取得したＵＵＩＤ（又はＭＡＣアドレス）が存在しないと判断された場合（Ｓ６０９でＮＯ）、初めて当該サーバ２００に記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン４は新たに履歴テーブルを生成し、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するための履歴テーブルとして使用すると共に、サーバリストに、サーバ名、ＵＵＩＤ（又はＭＡＣアドレス）と関連付けて登録する（Ｓ６１１）。その後、Ｓ６１２に進み、図４のＳ４０３以降の処理を実行する。
【００５３】
以上の処理により、再生すべきオーディオファイルが記録されているサーバ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがＷＭＡ  ＳＴＤであるか、ＷＭＡ  ＬＳＬであるかを推定するために、各サーバの履歴テーブルが使用される。一般的に、１つのサーバには同一のフォーマットのオーディオファイルが記録されていることが多いので、図４の処理において、ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のサーバの中からサーバを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【００５４】
次に、本発明のさらに別の実施形態を説明する。本例では、ネットマイコン４は、その内部のメモリ領域に、図９のフォーマットサイズテーブルを予め格納している。フォーマットサイズテーブルには、オーディオファイルのビットレート、サンプリング周波数、サンプルサイズ等（これらを総称してオーディオファイルの品質に関する情報という。）に関連付けて、ＷＭＡ  ＳＴＤの単位チャンネル、かつ、単位時間（１秒）あたりのサイズ（基準サイズという。）と、ＷＭＡ  ＬＳＬの単位チャンネル、かつ、単位時間（１秒）あたりのサイズ（基準サイズという。）とが予め登録されている。
【００５５】
図１０は本例の処理を示す図であり、ＵＩ層、コンテンツ管理層、ネットワーク通信層は、それぞれネットマイコン４のソフトウェア、サーバ側通信層はサーバ２００のソフトウェアである。
【００５６】
図１１は、ＵＩ層が表示部７又は外部ディスプレイに表示させるプレイリスト画面を示す図である。２１番目〜３０番目のオーディオファイルが表示されている。ここで、ＵＩ層にユーザ操作によってプレイリストのページ移動指示が入力される（Ｓ３０１）。ＵＩ層は、ネットワーク通信層に、プレイリストの次ページ情報を取得するように要求する（Ｓ３０２）。例えば、ＵＩ層は、GetContentList関数を実行し、start及びendの引数で情報の取得範囲をネットワーク通信層に供給する(ここでは、start=31,end=40)。ネットワーク通信層は、サーバ側通信層に対し、Browseリクエストを送信し、サーバから次ページ情報を取得し、infoに取得した次ページ情報を格納する。この時点で、引数で渡したinfoには、No.31から40までのオーディオファイルのコンテンツ情報（アーティスト名、トラック名、サンプリング周波数、ビットレート等）がすべて含まれている。コンテンツ管理層は、No.31-No.40のページから外れない限り、このinfoを保持しておく（Ｓ３０４）。
【００５７】
続いて、ＵＩ層にユーザ操作によってオーディオファイルを選択して再生する指示が入力される（Ｓ３０５）。ＵＩ層は、コンテンツ管理層に、選択されたオーディオファイルを再生する指示であるPlay(index)を送信する（なお、indexはプレイリストにおける選択されたオーディオファイルの番号を示す）（Ｓ３０６）。
【００５８】
コンテンツ管理層は、indexを元にinfoに格納されている各オーディオファイルのプロパティの中から、選択されたオーディオファイルのプロパティを引き出す（Ｓ３０７）。次に、コンテンツ管理層は、選択されたオーディオファイルのフォーマットが、拡張子又はＭＩＭＥタイプに基づいて、ＷＭＡであるか否かを判断する（Ｓ３０８）。フォーマットがＷＭＡでなければ、以下の処理を実行せずに、フォーマットに対応するデコーダを選択し、起動させる（図示せず）。一方、フォーマットがＷＭＡであれば、Ｓ３０９に進み、Ｓ３０７で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報（例えば、ビットレート、サンプリング周波数、サンプルサイズであるが、これに限定されない。）が含まれているか否かを判断する。仮に、Ｓ３０７で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれていない場合には、以下の処理を実行せずに、デフォルトのフォーマット（ＷＭＡ  ＳＴＤ又はＷＭＡ  ＬＳＬ）のデコーダを選択し、起動する（図示せず）。
【００５９】
フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれている場合には、Ｓ３１０に進み、ネットマイコン４は、フォーマットサイズテーブルの該当する行を特定する。つまり、ネットマイコン４は、Ｓ３０７で取得したオーディオファイルのプロパティを参照し、ビットレート、サンプリング周波数、サンプルサイズ等の情報を読み出して、フォーマットサイズテーブルの行を特定する。
【００６０】
さらに、ネットマイコン４は、再生すべきオーディオファイルの単位チャンネル、単位時間（１秒）当たりのサイズ（基準サイズという。）を算出する（Ｓ３１１）。オーディオファイルのサイズ、チャンネル数、再生時間は上記のプロパティに含まれているので、これらの情報に基づいて基準サイズを算出する。ネットマイコン４は、フォーマットサイズテーブルのＳ３１０で特定した行において、ＷＭＡ  ＳＴＤの基準サイズと、ＷＭＡ  ＬＳＬの基準サイズとの中から、Ｓ３１１で算出した再生すべきオーディオファイルの基準サイズに近い方のフォーマットを特定する。そして、ネットマイコン４は、特定した方のフォーマットのデコーダを選択し、最初に起動させる。
【００６１】
以上の処理によって、フォーマットサイズテーブルと、再生すべきオーディオファイルのプロパティとに基づいて、ＷＭＡ  ＳＴＤデコーダとＷＭＡ  ＬＳＬデコーダとの中から、最初に正確なフォーマットのデコーダを選択できる可能性を高くすることができる。
【００６２】
次に、本発明のさらに別の実施形態を説明する。本例では、ＷＭＡ  ＳＴＤデコーダ又はＷＭＡ  ＬＳＬデコーダの内、最初に選択したデコーダにおいて、デコーダを初期化及び／又は設定するためにサーバ又はＵＳＢメモリから取得したデータ（オーディオファイルの一部）を一時的にキュー（メモリであり、スタックでもよい。）に保存する。そして、最初に選択したデコーダが誤っており、初期化及び／又は設定ができなかった場合に、もう一方のデコーダを選択して起動するのであるが、この時、デコーダを初期化及び／又は設定するためのデータをサーバ又はＵＳＢメモリから再取得するのではなく、キューに保存しているデータを読み出して、デコーダに供給する。これにより、デコーダを初期化及び／又は設定するためのデータをサーバ又はＵＳＢメモリから再取得する必要がないので、無駄な処理及び通信が不要になり、オーディオファイルを再生開始するまでに要する時間を短縮できる。
【００６３】
図１２は、ＷＭＡ  ＬＳＬデコーダ又はＷＭＡ  ＳＴＤデコーダに初期化及び／又は設定を実行させるためのデータをＵＳＢメモリから取得する際のデコーダアプリケーションプログラム（以下、デコーダアプリという。）が実行する関数の一例である。デコーダアプリは、ネットマイコン４が実行するプリケーションプログラムであり、各フォーマットのデコーダを制御する機能を有する。ＷＭＡ  ＬＳＬデコーダを初期化及び／又は設定するためには、図１２上側に示すような関数が実行され、ＷＭＡ  ＳＴＤデコーダを初期化及び／又は設定するためには、図１２下側に示すような関数が実行される。ＦＳＥＥＫ（又はｆｓｅｅｋ）は、オーディオファイルをシークする（読み出し開始位置（ポインタ）を移動させる）関数であり、０、１２２０、４９００，５３９６等の数字は、オーディオファイルにおけるポインタの移動先の相対アドレス（バイト）を示す。つまり、オーディオファイルの先頭のアドレスが０とされている。ｆｒｅａｄは、オーディオファイルをシークされた位置から読み出す関数であり、２５６、２４８、２５２等は、シークされた位置から読み出すデータサイズ（バイト）を示す。
【００６４】
従来では、オーディオファイルのフォーマットがＷＭＡであると判断され、最初にＷＭＡ  ＬＳＬデコーダが選択され、起動された場合には、デコーダアプリは、図１２の上側に示すようなＳＥＥＫ及びＲＥＡＤの関数を実行し、ＵＳＢメモリ又はサーバからオーディオファイルの該当する部分を取得し、ＷＭＡ  ＬＳＬデコーダに供給する。ＷＭＡ  ＬＳＬデコーダは、供給されたデータを用いて初期化及び／又は設定を実行する。ここで、正しいデコーダではないために初期化及び／又は設定に失敗した場合に、次に、ＷＭＡ  ＳＴＤデコーダが選択され、起動される。デコーダアプリは、図１２の下側に示すようなＳＥＥＫ及びＲＥＡＤの関数を再度実行し、ＵＳＢメモリ又はサーバからオーディオファイルの該当する部分を取得し、ＷＭＡ  ＳＴＤデコーダに供給する。ＷＭＡ  ＳＴＤデコーダは、供給されたデータを用いて、初期化及び／又は設定を実行する。このように、デコーダアプリは、略同一のＳＥＥＫ及びＲＥＡＤ関数を２回実行し、同一のデータをＵＳＢメモリ又はサーバから２回取得している。
【００６５】
そこで、本例では、上記のように、最初にＷＭＡ  ＬＳＬデコーダが選択された場合に、デコーダアプリは、図１２の上側に示すようなＳＥＥＫ及びＲＥＡＤの関数を実行し、ＵＳＢメモリ又はサーバからオーディオファイルの該当する部分を取得して、キューに保存する。次に、ＷＭＡ  ＳＴＤデコーダが選択された場合に、デコーダアプリは、キューに保存してあるデータをＷＭＡ  ＳＴＤデコーダに供給し、ＷＭＡ  ＳＴＤデコーダは当該データを用いて初期化及び／又は設定を実行する。
【００６６】
図１３は本例の処理を示す図である。ユーザ操作によって再生すべきオーディオファイルが選択されると（Ｓ２０１）、デコーダアプリは、選択されたオーディオファイルの拡張子又はＭＩＭＥタイプに基づいて、オーディオファイルのフォーマットがＷＭＡであるか否かを判断する（Ｓ２０２）。フォーマットがＷＭＡでなければ、判別したフォーマットのデコーダを起動して、オーディオファイルを再生する（図示せず）。一方、フォーマットがＷＭＡである場合には、デコーダアプリは、ＷＭＡ  ＬＳＬデコーダ又はＷＭＡ  ＳＴＤデコーダの内、デフォルトに設定されている方のデコーダ（ここでは、ＷＭＡ  ＬＳＬデコーダ）を選択して、起動させる（Ｓ２０３）。なお、Ｓ２０３でデフォルトのデコーダを選択するのではなく、ＷＭＡ  ＬＳＬデコーダ又はＷＭＡ  ＳＴＤデコーダの内、前の実施形態における図４、図８、図１０のいずれかの処理によって、オーディオファイルのフォーマットであると推定され、最初に起動すべきと判断されたフォーマットのデコーダを起動させてよい。つまり、本例は、前の実施形態と適宜組合せて実行されることによって、より顕著な効果が得られるものである。
【００６７】
起動したＷＭＡ  ＬＳＬデコーダは、自身の初期化及び／又は設定のために必要なデータ（オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等）をデコーダアプリに要求する（Ｓ２０４）。つまり、ＷＭＡ  ＬＳＬデコーダは、デコーダアプリにＳＥＥＫ及びＲＥＡＤの関数を実行するように要求すると共に、ＳＥＥＫ先のオーディオファイルのデータ位置や、ＲＥＡＤすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、ＷＭＡ  ＬＳＬデコーダに予め設定されている。
【００６８】
デコーダアプリは、ＷＭＡ  ＬＳＬデコーダからＳＥＥＫ及びＲＥＡＤの要求を受信すると、選択されたオーディオファイルのデータをサーバ２００から取得するか、又は、ＵＳＢメモリ等のローカルストレージから取得するかを、プレイリストの記述に基づいて判断する（Ｓ２０５）。データをサーバ２００から取得する場合には、Ｓ２０６に示すように、図１２の上側に示す関数とほぼ同様の関数を実行し、サーバ２００に対してＳＥＥＫ及びＲＥＡＤを含むＨＴＴＰ  ＧＥＴコマンドを送信する。サーバ２００は、これに応答して、選択されたオーディオファイルを指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、デコーダアプリ（及びＷＭＡ  ＬＳＬデコーダ）に返信する。
【００６９】
一方、データをＵＳＢメモリから取得する場合には、Ｓ２０７に示すように、デコーダアプリは、図１２の上側に示す関数を実行し、ＵＳＢメモリに記録され、選択されたオーディオファイルにおいて、指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、ＷＭＡ  ＬＳＬデコーダに供給する。
【００７０】
併せて、デコーダアプリは、サーバから取得、又は、ＵＳＢメモリから読み出したデータをキューに一時的に保存する（Ｓ２０８）。図１４はキューのデータ構造の例を示す図である。ＷＭＡ  ＬＳＬデコーダ及びＷＭＡ  ＳＴＤデコーダが指定する、ＳＥＥＫする位置及びＲＥＡＤするデータサイズが常に同じである場合には、図１４に示すように、キューにはＳＥＥＫする位置及びＲＥＡＤするデータサイズを管理することなく、取得したデータを順番にキューに保存しておくだけでよい。しかし、ＷＭＡ  ＬＳＬデコーダ及びＷＭＡ  ＳＴＤデコーダが指定する、ＳＥＥＫする位置及びＲＥＡＤするデータサイズが随時変更される場合には、図１５に示すように、ＳＥＥＫする位置及びＲＥＡＤするデータサイズに対応付けて、データを保存するとよい。
【００７１】
ＷＭＡ  ＬＳＬデコーダは、サーバ２００から受信したデータ又はＵＳＢメモリから読み出されたデータを使用して、自身の初期化及び／又は設定を実行する。そして、ＷＭＡ  ＬＳＬデコーダは、選択されたオーディオファイルのフォーマットがＷＭＡ  ＬＳＬであれば、初期化及び／又は設定に成功し、選択されたオーディオファイルのフォーマットがＷＭＡ  ＳＴＤであれば、初期化及び／又は設定に失敗する。ＷＭＡ  ＬＳＬデコーダは、初期化及び／又は設定の結果（成功又は失敗）をデコーダアプリに通知する。
【００７２】
デコーダアプリは、ＷＭＡ  ＬＳＬデコーダからの初期化及び／又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがＷＭＡ  ＬＳＬであり、ＷＭＡ  ＬＳＬデコーダが初期化及び／又は設定に成功したか否かを判断する（Ｓ２０９）。ＷＭＡ  ＬＳＬデコーダが初期化及び／又は設定に成功した場合には（Ｓ２０９でＹＥＳ）、デコーダアプリは、キューに保存されている初期化及び／又は設定のためのデータを消去して（Ｓ２１５）、ＷＭＡ  ＬＳＬデコーダは、オーディオファイルを再生（デコード）を開始する（Ｓ２１５）。
【００７３】
一方、ＷＭＡ  ＬＳＬデコーダが初期化及び／又は設定に失敗した場合には（Ｓ２０９でＮＯ）、デコーダアプリは、ＷＭＡ  ＬＳＬデコーダ及びＷＭＡ  ＳＴＤデコーダの内、Ｓ２０３で選択されなかった方のデコーダであるＷＭＡ  ＳＴＤデコーダを起動させる（Ｓ２１０）。起動したＷＭＡ  ＳＴＤデコーダは、自身の初期化及び／又は設定のために必要なデータ（オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等）をデコーダアプリに要求する（Ｓ２１１）。つまり、ＷＭＡ  ＳＴＤデコーダは、デコーダアプリにＳＥＥＫ及びＲＥＡＤの関数を実行するように要求すると共に、ＳＥＥＫ先のオーディオファイルのデータ位置や、ＲＥＡＤすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、ＷＭＡ  ＳＴＤデコーダに予め設定されている。
【００７４】
デコーダアプリは、ＷＭＡ  ＳＴＤデコーダからＳＥＥＫ及びＲＥＡＤの要求を受信すると、要求されたデータをキューから読み出し、ＷＭＡ  ＳＴＤデコーダに供給する（Ｓ２１２）。上記の通り、ＳＥＥＫする位置及びＲＥＡＤするデータサイズが常に同じである場合には、図１４に示すようなキューが使用され、最初に保存したデータ（例えばデータ１）から順番に読み出して、ＷＭＡ  ＳＴＤデコーダに供給する。一方、ＳＥＥＫする位置及びＲＥＡＤするデータサイズが随時変更される場合には、図１５のようなキューが使用されており、ＷＭＡ  ＳＴＤデコーダから受信したＳＥＥＫする位置及びＲＥＡＤするデータサイズに対応するデータを特定してキューから読み出し、ＷＭＡ  ＳＴＤデコーダに供給する。
【００７５】
ＷＭＡ  ＳＴＤデコーダは、キューから読み出されたデータを使用して、自身の初期化及び／又は設定を実行する。そして、ＷＭＡ  ＳＴＤデコーダは、選択されたオーディオファイルのフォーマットがＷＭＡ  ＳＴＤであれば、初期化及び／又は設定に成功し、選択されたオーディオファイルのフォーマットがＷＭＡ  ＳＴＤでなければ、初期化及び／又は設定に失敗する。ＷＭＡ  ＳＴＤデコーダは、初期化及び／又は設定の結果（成功又は失敗）をデコーダアプリに通知する。
【００７６】
デコーダアプリは、ＷＭＡ  ＳＴＤデコーダからの初期化及び／又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがＷＭＡ  ＳＴＤであり、ＷＭＡ  ＳＴＤデコーダが初期化及び／又は設定に成功したか否かを判断する（Ｓ２１３）。ＷＭＡ  ＳＴＤデコーダが初期化及び／又は設定に成功した場合には（Ｓ２１３でＹＥＳ）、デコーダアプリは、オーディオファイルの再生開始する位置（最初に読み出されるデータ位置）を、Ｓ２１１でＷＭＡ  ＳＴＤデコーダから受信したＳＥＥＫする位置及びＲＥＡＤするデータサイズに基づいて特定し、サーバ２００に通知し、オーディオファイルの読み出し位置としてシークさせる、又は、ＵＳＢメモリのオーディオファイルの読み出し位置としてシークする（Ｓ２１４）。これは、ＷＭＡ  ＳＴＤデコーダを初期化及び／又は設定するためのデータをオーディオファイルから取得するのではなく、キューに保存されているデータを使用したために、オーディオファイルのポインタがシークされておらず０のままであり、再生開始するための位置に予めシークしておく必要があるからである。つまり、仮にキューからデータを読み出すのではなく、オーディオファイルからＳＥＥＫ、ＲＥＡＤを実行して、初期化及び／又は設定に必要なデータを取得した場合に、オーディオファイルのポインタが位置する位置まで再生開始位置を進めておく。例えば、図１２に示すようにＳＥＥＫ及びＲＥＡＤが実行される場合、最後のＳＥＥＫ位置である５３９６に、最後のＲＥＡＤデータサイズ２５６＋２５２を加算した５９０４が、再生開始位置であるので、この値にポインタが移動される。
【００７７】
その後、デコーダアプリは、キューに保存した初期化及び／又は設定用のデータを消去し（Ｓ２１５）、サーバ又はＵＳＢメモリからオーディオファイルを取得する。ＷＭＡ  ＳＴＤデコーダは、オーディオファイルを再生（デコード）開始する（Ｓ２１６）。一方、Ｓ２１３で、ＷＭＡ  ＳＴＤデコーダが初期化及び／又は設定に失敗したと判断した場合には（Ｓ２１３でＮＯ）、デコーダアプリは、エラー処理を実行して処理を終了する。
【００７８】
以上の処理によって、２回目に起動されたデコーダを初期化及び／又は設定するためのデータは、サーバ又はＵＳＢメモリから再取得されず、１回目に起動されたデコーダのために取得してキューに保存しておいたデータが使用される。その結果、不要な処理および通信を実行する必要が無く、再生開始までの時間を短縮できる。
【００７９】
以上、本発明の好ましい実施形態を説明したが、本発明はこれらの実施形態には限定されない。サーバやＵＳＢメモリからオーディオファイルを取得して再生する代わりに、ＤＶＤやＨＤＤ等の記憶媒体から取得して再生してもよい。本発明は、上記のコンテンツ再生装置を動作させるためのコンピュータプログラムまたはそのコンピュータプログラムを記録した記録媒体という形態で提供されてもよい。
【産業上の利用可能性】
【００８０】
本発明はコンテンツを再生するコンテンツ再生装置（例えば、ＡＶアンプ、ネットワークオーディオクライアント等）に好適に適用され得る。
【符号の説明】
【００８１】
１００      ＡＶアンプ（コンテンツ再生装置）
２００      サーバ
１          メインマイコン
２          ＲＡＭ
３          ＲＯＭ
４          ネットワークマイコン
５          ビデオマイコン
６          再生部
７          表示部
８          操作部
９          ＵＳＢ端子
【図１】
2010281918.tif 000003
【図２】
2010281918.tif 000004
【図３】
2010281918.tif 000005
【図４】
2010281918.tif 000006
【図５】
2010281918.tif 000007
【図６】
2010281918.tif 000008
【図７】
2010281918.tif 000009
【図８】
2010281918.tif 000010
【図９】
2010281918.tif 000011
【図１０】
2010281918.tif 000012
【図１１】
2010281918.tif 000013
【図１２】
2010281918.tif 000014
【図１３】
2010281918.tif 000015
【図１４】
2010281918.tif 000016
【図１５】
2010281918.tif 000017