コンテンツ再生装置及びそのプログラム
【課題】 拡張子又はMIMEタイプに基づいて、WMAであることを判別できるが、MWA STD、又は、WMA LSLのいずれであるかを判別することができない場合に、正しいデコーダを最初に選択する可能性を高くすること。
【解決手段】 過去に再生されたオーディオファイルのフォーマットを記憶しておく。再生すべきオーディオファイルのフォーマットがWMAであり、かつ、直近に再生されたオーディオファイルのフォーマットがWMA STD又はWMA LSLであれば、直近に再生されたオーディオファイルのフォーマット(WMA STD又はWMA LSL)を、再生すべきオーディオファイルのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのオーディオファイルが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【解決手段】 過去に再生されたオーディオファイルのフォーマットを記憶しておく。再生すべきオーディオファイルのフォーマットがWMAであり、かつ、直近に再生されたオーディオファイルのフォーマットがWMA STD又はWMA LSLであれば、直近に再生されたオーディオファイルのフォーマット(WMA STD又はWMA LSL)を、再生すべきオーディオファイルのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのオーディオファイルが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置に関する。
【背景技術】
【0002】
AVアンプ等のコンテンツ再生装置は、LAN等のネットワークを介してサーバに接続され、サーバからコンテンツ(例えばオーディオファイル)をストリーミング形式で取得し(又は、接続されたUSBメモリからオーディオファイルを取得してもよい。以下同様。)、再生する。オーディオファイルは、MP3、WMA、AAC等の複数のフォーマットのいずれかで圧縮されている。AVアンプは、これらのフォーマットのオーディオファイルをデコードするため、フォーマット毎にデコーダ(MP3デコーダ、WMA STDデコーダ、WMA LSLデコーダ、AACデコーダ等)を備えている。AVアンプは、サーバから曲リストを取得し、曲リストの中からユーザ操作によって選択されたオーディオファイルをサーバに要求し、取得する。AVアンプは、再生すべきオーディオファイルが選択されると、例えば曲リストに記述されているオーディオファイルの拡張子、又は、MIMEタイプ等を参照することにより、サーバから取得して再生するオーディオファイルのフォーマットを特定することができる。従って、特定したフォーマットのデコーダを起動させることにより、サーバから取得したオーディオファイルをデコードすることができる。
【0003】
ここで、WMAにはWMA STD(WMA
Standard)およびWMA LSL(WMA Lossless)の2種類のフォーマットが存在する。しかし、拡張子またはMIMEタイプ(あるいは、Profile
IDでもよい。以下同様。)を参照しても、フォーマットがWMAであることは特定できるが、WMA STDであるか、又は、WMA LSLであるかを特定することができない。従って、WMA STDおよびWMA LSLのどちらのフォーマットのデコーダを起動させる必要があるかを特定できない。従って、WMA STDおよびWMA LSLの内、最初に起動させるデコーダが予め決定されている。
【0004】
最初に起動させるデコーダがWMA LSLデコーダの場合、WMA LSLデコーダを起動させ、サーバからオーディオファイルの一部を取得して、取得したデータを使用してWMA LSLデコーダを初期化及び/又は設定させる。初期化及び/又は設定できた場合には、オーディオファイルのフォーマットはWMA LSLであるので、WMA LSLデコーダでデコードすることができる。一方、初期化及び/又は設定できなかった場合には、オーディオファイルのフォーマットはWMA STDであるので、WMA STDデコーダを起動させ、再度、サーバからオーディオファイルの一部を取得して、取得したデータを使用してWMA STDデコーダを初期化及び/又は設定させる。
【0005】
以上のように、WMA LSLデコーダ又はWMA STDデコーダの内、最初に選択して起動させたデコーダが正しいデコーダでなかった場合には、もう一方のデコーダを起動させ、再びサーバから初期化及び/又は設定に必要なデータを取得して、もう一方のデコーダを初期化及び/又は設定させる必要が生じる。その結果、不要な処理及び通信が生じ、オーディオファイルを再生開始する迄に時間がかかるという問題がある。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−35083号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができない場合に、第1所定フォーマットに対応するデコーダ、又は、第2所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできるコンテンツ再生装置を提供することである。
【課題を解決するための手段】
【0008】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであるか否かを判断する手段と、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【0009】
過去に再生されたコンテンツのフォーマットを記憶しておく。再生すべきコンテンツのフォーマットが所定フォーマットであり、かつ、直近に再生されたコンテンツのフォーマットが第1所定フォーマット又は第2所定フォーマットであれば、直近に再生されたコンテンツのフォーマット(第1所定フォーマット又は第2所定フォーマット)を、再生すべきコンテンツのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのコンテンツが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0010】
好ましい実施形態においては、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットでない場合に、前記選択手段が、第1所定フォーマット、又は、第2所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる。
【0011】
第1所定フォーマット又は第2所定フォーマットの内、過去に再生された回数が多い方が、再生すべきコンテンツのフォーマットである可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0012】
好ましい実施形態においては、前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、前記外部記憶装置毎に対応する前記フォーマット記憶手段と、再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える。
【0013】
一般的に、1つの外部記憶装置には同じフォーマットのコンテンツが記録されている可能性が高いので、外部記憶装置毎に個別に過去に再生されたコンテンツのフォーマットを記憶しておくことにより、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0014】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、コンテンツの品質に関する情報に対応付けて、第1所定フォーマットの基準サイズと、第2所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第1所定フォーマットの基準サイズと第2所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【発明の効果】
【0015】
所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができない場合に、第1所定フォーマットに対応するデコーダ、又は、第2所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできる。
【図面の簡単な説明】
【0016】
【図1】本発明の好ましい実施形態によるAVアンプ100を示すブロック図である。
【図2】プレイリストを示す図である。
【図3】履歴テーブルを示す図である。
【図4】ネットマイコン4の処理を示すフローチャートである。
【図5】USBリストを示す図である。
【図6】各USBメモリに対する履歴テーブルを示す図である。
【図7】サーバリストを示す図である。
【図8】ネットマイコン4の処理を示すフローチャートである。
【図9】フォーマットサイズテーブルを示す図である。
【図10】ネットマイコン4とサーバの処理を示すシーケンスチャートである。
【図11】プレイリスト画面を示す図である。
【図12】デコーダアプリが実行するSEEK、READの関数を示す図である。
【図13】デコーダアプリ、デコーダ、サーバの処理を示すフローチャートである。
【図14】キューの構造を示す図である。
【図15】キューの構造を示す図である。
【発明を実施するための形態】
【0017】
以下、本発明の好ましい実施形態について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。
【0018】
図1は、本発明の好ましい実施形態によるコンテンツ再生装置(以下、AVアンプという。)100と、サーバ200とを示すブロック図である。AVアンプ100は、LAN等の任意のネットワークを介してサーバ200に接続可能であり、サーバにコンテンツを要求し、サーバから例えばストリーミング形式でコンテンツを取得し、コンテンツを再生する。コンテンツは、映像データ、静止画データ、音楽データ(オーディオファイル)等の総称であるが、本例ではオーディオファイルである。また、AVアンプ100は、USB端子9に接続されたUSBメモリに記録されているオーディオファイルを取得して、再生する。USBメモリは、例えば、フラッシュメモリ内蔵の携帯型プレーヤ等である。
【0019】
AVアンプ100は、メインマイコン1、RAM2、ROM3、ネットワークマイコン(以下、ネットマイコンという。)4、ビデオマイコン5、再生部6、表示部7、操作部8及びUSB端子9を備える。これらは、バスを介して互いに接続されている。再生部6には、図示しないスピーカーが外部に接続されている。
【0020】
メインマイコン1は、ROM3に記録されているプログラムに基づいて、AVアンプ100の各部を制御する。ネットマイコン4は、ROM3又は他のメモリに記録されているプログラムに基づいて、下記の動作を実行する。ネットマイコン4は、LANを介してサーバ200にアクセスし、サーバ200から曲リスト(以下、プレイリストという。)を取得し、メインマイコン1に供給する。メインマイコン1は、プレイリストをビデオマイコン5に供給する。ビデオマイコン5は、プレイリストを描画処理し、表示部7に表示、又は、OSD画面を図示しないTV等の外部ディスプレイに表示させる。
【0021】
図2は、プレイリストの一例を示す図である。プレイリストは、例えば、各オーディオファイルのアーティスト名、アルバム名、曲名等に加えて、オーディオファイルのフォーマット情報を含む。オーディオファイルのフォーマット情報は、例えば、拡張子又はMIMEタイプといった形態で含まれている。
【0022】
ユーザが操作部8を操作してプレイリストの中から、再生すべきオーディオファイルを選択すると、ネットマイコン4は、選択されたオーディオファイルをサーバ200に要求し、サーバ200からオーディオファイルを例えばストリーミング形式で取得する。なお、最初はユーザ操作によって再生すべきオーディオファイルが選択されるが、一度選択された後は、ネットマイコン4は、オーディオファイルを再生し終える毎に、プレイリストの順番にサーバ200からオーディオファイルを取得して、再生することができる。
【0023】
ネットマイコン4は、その内部に、オーディオファイルのフォーマット毎に、デコーダ(ソフトウェアデコーダ)を有している。例えば、オーディオファイルのフォーマットが、MP3、AAC、WMA STD、WMA LSL、Ogg Vorvis等である場合には、ネットマイコン4は、MP3デコーダ、AACデコーダ、WMA STDデコーダ、WMA LSLデコーダ、Ogg Vorvisデコーダ等を有する。
【0024】
ネットマイコン4は、プレイリストから再生すべきオーディオファイルが選択されると、選択されたオーディオファイルのフォーマットを、例えばプレイリストに記述された拡張子又はMIMEタイプ(あるいは、Profile IDでもよい。以下同様。)に基づいて特定する。そして、ネットマイコン4は、特定したフォーマットに対応するデコーダを起動させ、サーバ200から受信したオーディオファイルを、起動したデコーダを使用して、デコードする。デコードされたオーディオファイルは、再生部6によってデジタル−アナログ変換、増幅処理等が実行され、スピーカーに音声信号が供給される。
【0025】
ここで、例えばプレイリストに記述されている拡張子やMIMEタイプ(又は、サーバ200から別途取得したMIMEタイプでもよい。)等から、フォーマットがWMA(所定フォーマット)であることは特定することができるが、WMA STD(第1所定フォーマット)、又は、WMA LSL(第2所定フォーマット)のいずれであるかを特定することができない(なお、図2のプレイリストでは、説明の為に便宜上、WMA STDやWMA LSLと記述しているだけである)。従って、ネットマイコン4は、オーディオファイルをデコードするために、WMA STDデコーダ又はWMA LSLデコーダのいずれを最初に起動させるとよいかを特定することができない。
【0026】
この問題を解決するために、本実施形態においては、拡張子又はMIMEタイプがWMAである場合に、ネットマイコン4は、直近に(最後に)再生したオーディオファイルのフォーマットがWMA STDであり、直近に(最後に)使用したデコーダがWMA STDデコーダであれば、今回再生するオーディオファイルのフォーマットもWMA STDであると推定し、WMA STDデコーダを最初に起動させ、オーディオファイルをデコードする。一方、拡張子又はMIMEタイプがWMAである場合に、直近に(最後に)再生したオーディオファイルのフォーマットがWMA LSLであり、直近に(最後に)使用したデコーダがWMA LSLデコーダであれば、今回再生するオーディオファイルのフォーマットもWMA LSLであると推定し、WMA LSLデコーダを最初に起動させ、オーディオファイルをデコードする。このようにフォーマットを推定するのは、一般的には、図2(a)に示すように、オーディオファイルを連続再生する場合、又は、同一のサーバ等からオーディオファイルを取得して再生する場合、同一のフォーマットが連続する確率が高いからである。
【0027】
これを実現するために、ネットマイコン4は、その内部のメモリ領域に、図3に示す履歴テーブルを格納している。履歴テーブルは、過去に再生されたオーディオファイルに使用したデコーダのフォーマット(すなわち、過去に再生したオーディオファイルのフォーマット)を時系列で記憶しておくテーブルである。図3においては、下側が再生された時刻が古く、上側が再生された時刻が新しいオーディオファイルのフォーマットを示す。つまり、直近に(最後に)再生されたオーディオファイルのフォーマットはMP3であり、その前に再生されたオーディオファイルのフォーマットがWMA LSLであることを示す。
【0028】
履歴テーブルには最初は何も記憶されておらず、ネットマイコン4がオーディオファイルのフォーマットを確定し、確定したフォーマットのデコーダでオーディオファイルをデコードし、再生する際に、履歴テーブルにフォーマットを記憶する。
【0029】
ここで、拡張子又はMIMEタイプがWMAである場合に、直近に(最後に)再生したオーディオファイルのフォーマットがWMA STDでも、WMA LSLでもない場合、直近に再生したフォーマットという条件で最初に起動させるデコーダをWMA STD又はWMA LSLの中から特定できない。そこで、ネットマイコン4は、WMA STD又はWMA LSLの中から、履歴テーブルに記憶されている数が多い方のフォーマットを、再生するオーディオファイルのフォーマットと推定し、推定したフォーマットのデコーダを最初に起動させ、オーディオファイルをデコードする。履歴テーブルに記憶されている数が多い方が、頻繁に再生されているフォーマットであるので、今回再生するオーディオファイルのフォーマットである可能性が高いからである。
【0030】
図4は、ネットマイコン4の処理を示すフローチャートである。本例では、サーバ200からオーディオファイルを取得する場合を例に説明するが、USBメモリからオーディオファイルを取得する場合も同様である。プレイリストから再生すべきオーディオファイルが選択されると、ネットマイコン4は、再生開始状態になる(S401)。ネットマイコン4は、プレイリストを参照し、選択されたオーディオファイルの拡張子又はMIMEタイプに基づいて、再生すべきオーディオファイルのフォーマットが、WMAであるか否かを判断する(S402)。
【0031】
再生すべきオーディオファイルのフォーマットがWMAではなく、例えば、MP3等であれば(S402でNO)、ネットマイコン4は、拡張子又はMIMEタイプに基づいたフォーマットのデコーダを選択し、選択したデコーダを起動させる(S410)。例えば、フォーマットがMP3であれば、MP3デコーダを選択し、起動させる。ネットマイコン4は、履歴テーブルに、選択して起動させたデコーダのフォーマットを新たに記憶させる(S408)。そして、ネットマイコン4は、選択されたオーディオファイルをサーバ200から取得して、起動させたデコーダにデコードさせ、再生を開始する(S409)。
【0032】
S402で、拡張子又はMIMEタイプがWMAであると判断された場合(S402でYES)、ネットマイコン4は、履歴テーブルのデータ数>0であるか否か、すなわち、履歴テーブルに過去に再生されたオーディオファイルのフォーマットが1つ以上記憶されているか否かを判断する(S403)。履歴テーブルにフォーマットが記憶されていない場合(S403でNO)、つまり、電源投入後最初のオーディオファイルの再生であるために、過去に再生されたオーディオファイルのフォーマットが記憶されていない場合には、ネットマイコン4は、WMA STDデコーダ又はWMA LSLデコーダの内、デフォルトとして設定されている方のデコーダを選択し、選択したデコーダを起動させて、S406に進む。
【0033】
S403で履歴テーブルにフォーマットが記憶されていると判断された場合(S403でYES)、ネットマイコン4は、履歴テーブルにおいて、最後尾(直近)に記憶されているフォーマットがWMA STD、又は、WMA LSLであるか否かを判断する(S404)。すなわち、直近に再生したオーディオファイルのフォーマットが、WMA STD、又は、WMA LSLであるか否かを判断する。
【0034】
履歴テーブルの最後尾に記憶されているフォーマットがWMA STD、又は、WMA LSLである場合(S404でYES)、ネットマイコン4は、最後尾に記憶されているフォーマットと同じフォーマットに対応するデコーダを選択し、起動させ(S405)、S406に進む。つまり、履歴テーブルの直近に記憶されているフォーマットがWMA STDであれば、ネットマイコン4は、WMA STDデコーダを選択して、起動させる。一方、履歴テーブルの直近に記憶されているフォーマットがWMA LSLであれば、ネットマイコン4は、WMA LSLデコーダを選択して、起動させる。
【0035】
S404で、履歴テーブルの最後尾に記憶されているフォーマットがWMA STD、又は、WMA LSLでない場合(S404でNO)、ネットマイコン4は、履歴テーブルに記憶されているフォーマットにおいて、WMA STDとWMA LSLとの中で数が多い方のフォーマットに対応するデコーダを選択し、起動させ(S412)、S406に進む。つまり、履歴テーブルに記憶されている数が多い方のフォーマットがWMA STDであれば、ネットマイコン4は、WMA STDデコーダを選択して、起動させる。一方、履歴テーブルに記憶されている数が多い方のフォーマットがWMA LSLであれば、ネットマイコン4は、WMA LSLデコーダを選択して、起動させる。なお、履歴テーブルに記憶されている数が同数であれば、S411と同様に、デフォルトのデコーダを選択して、起動させるとよい。
【0036】
S406において、ネットマイコン4は、サーバ200のオーディオファイルから、初期化及び/又は設定用のデータをSEEK、READして取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び/又は設定を実行する。ネットマイコン4は、S406の結果、サーバから取得したデータを使用して、デコーダが初期化及び/又は設定を実行できたか否かを判断する(S407)。初期化及び/又は設定できた場合(S407でYES)、S405,S411又はS412で選択したデコーダは正しいデコーダである。従って、ネットマイコン4は、S405,S411又はS412で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する(S408)。これにより、今回再生するオーディオファイルの正確なフォーマット(WMA STD又はWMA LSL)を履歴テーブルに記憶させることができる。その後、ネットマイコン4は、サーバ200から選択されたオーディオファイルを取得し、起動させたデコーダによってデコーダさせ、再生を開始する(S409)。
【0037】
S407で初期化及び/又は設定できなかった場合(S407でNO)、S405,S411又はS412で選択したデコーダは誤ったデコーダである。従って、ネットマイコン4は、WMA STDデコーダ又はWMA LSLデコーダの内、S405,S411又はS412で選択しなかった方のフォーマットのデコーダを選択し、起動させる(S413)。つまり、S405,S411又はS412でWMA STDデコーダが選択された場合には、ネットマイコン4は、WMA LSLデコーダを選択し、起動させる。S405,S411又はS412でWMA LSLデコーダが選択された場合には、ネットマイコン4は、WMA STDデコーダを選択し、起動させる。
【0038】
ネットマイコン4は、再度、サーバ200のオーディオファイルから、初期化及び/又は設定用のデータをSEEK、READによって取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び/又は設定を実行する(S414)。ネットマイコン4は、S414の結果、サーバから取得したデータを使用して、デコーダが初期化及び/又は設定できたか否かを判断する(S415)。デコーダが初期化及び/又は設定できた場合(S415でYES)、S413で選択したデコーダは正しいデコーダである。従って、ネットマイコン4は、S413で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する(S408)。これにより、今回再生するオーディオファイルの正確なフォーマット(WMA STD又はWMA LSL)を履歴テーブルに記憶させることができる。その後、ネットマイコン4は、サーバ200から選択されたオーディオファイルを取得して、起動させたデコーダにデコードさせ、再生を開始する(S409)。
【0039】
S415で初期化及び/又は設定できなかった場合(S415でNO)、S413で選択したデコーダも誤ったデコーダである。従って、ネットマイコン4は、選択されたオーディオファイルをデコードして、再生することができないと判断し、エラー処理を実行し(S416)、処理を終了する。
【0040】
以上のように、拡張子又はMIMEタイプに基づいてオーディオファイルのフォーマットがWMAであると判断された場合には、履歴テーブルに直近に記憶されている(直近に再生されたオーディオファイルの)フォーマットに対応するデコーダを最初に起動させることにより、正確なデコーダを最初に起動できる可能性を高くすることができる。
【0041】
次に、本発明の別の好ましい実施形態を説明する。本例では、USB端子9に接続されるUSBメモリ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているUSB端子に対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。また、サーバ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているサーバに対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。ここで、USBメモリやサーバを、総称して外部記憶装置という。
【0042】
ネットマイコン4は、その内部のメモリ領域に、図5に示すUSBリストを格納している。USBリストは、USB端子9に接続されたUSBメモリ毎に、番号NO.に対応付けて、モデル名、ベンダーID、シリアル番号及び履歴テーブルを記憶するリストである。ベンダーIDとシリアル番号とは、USBメモリを一意に特定するための識別情報である。履歴テーブルは、上記の通り、各USBメモリ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。各USBメモリに対する履歴テーブルの例を図6に示す。例えば、NO.1のUSBメモリについては、履歴テーブルUSB−Tb1を参照すると、直近に再生されたオーディオファイルのフォーマットはMP3であり、その1つ前に再生されたオーディオファイルのフォーマットもMP3であることが分かる。
【0043】
ネットマイコン4は、その内部のメモリ領域に、図7に示すサーバリストを格納している。サーバリストは、過去に接続されたサーバ200毎に、番号NO.に対応付けて、サーバ名、UUID(又はMACアドレス)、及び履歴テーブルを記憶するリストである。UUID(又はMACアドレス)は、サーバ200を一意に特定するための識別情報である。履歴テーブルは、上記の通り、各サーバ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。
【0044】
図8は、本例におけるネットマイコン4の処理の要部を説明する図である。なお、ネットマイコン4のオーディオファイルのフォーマットを推定する基本的な処理は図4と同じであり、ここでは、使用する履歴テーブルの選択処理のみを説明する。ネットマイコン4は、拡張子又はMIMEタイプに基づいて選択されたオーディオファイルのフォーマットがWMAであると判断する(図4のS402でYES)と、図8のS601に進む。ネットマイコン4は、再生すべきオーディオファイルがUSBメモリに記録されているか否かを判断する(S602)。
【0045】
USBメモリに記録されている場合には(S602でYES)、ネットマイコン4は、再生すべきオーディファイルが記録されているUSBメモリのベンダーIDとシリアル番号とをUSBメモリから読み出して取得する(S603)。ネットマイコン4は、図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在するか否かを判断する(S604)。すなわち、再生すべきオーディオファイルが記録されたUSBメモリの履歴テーブルがUSBリストに記憶されているか否かを判断する。
【0046】
図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在すると判断された場合(S604でYES)、ネットマイコン4は、USBリストからベンダーIDとシリアル番号との組合せに対応する履歴テーブルを取得し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。例えば、ベンダーIDが0x7A8B,シリアル番号が0xCK2349cksであれば、NO.1のUSBメモリであることが特定され、履歴テーブルUSB−Tb1が取得される。その後、S612に進み、図4のS403以降の処理を実行する。
【0047】
S604で図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在しないと判断された場合(S604でNO)、初めて当該USBメモリに記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン4は新たに履歴テーブルを生成し、USBリストに、モデル名、ベンダーID、シリアル番号と関連付けて登録すると共に、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。(S605)。その後、S612に進み、図4のS403以降の処理を実行する。
【0048】
以上の処理により、再生すべきオーディオファイルが記録されているUSBメモリ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するために、各USBメモリの履歴テーブルが使用される。一般的に、1つのUSBメモリには同一のフォーマットのオーディオファイルを記録することが多いので、図4の処理において、WMA STD又はWMA LSLのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のUSBメモリの中からUSBメモリを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【0049】
S602でNOと判断された場合、ネットマイコン4は、再生すべきオーディオファイルがサーバ200に記録されているか否かを判断する(S607)。
【0050】
サーバ200に記録されている場合には(S607でYES)、ネットマイコン4は、再生すべきオーディファイルが記録されているサーバ200のUUID(又はMACアドレス)をサーバ200から取得する(S608)。ネットマイコン4は、図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在するか否かを判断する(S609)。すなわち、再生すべきオーディオファイルが記録されたサーバの履歴テーブルがサーバリストに記憶されているか否かを判断する。
【0051】
図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在すると判断された場合(S609でYES)、ネットマイコン4は、サーバリストからUUID(又はMACアドレス)に対応する履歴テーブルを取得し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。その後、S612に進み、図4のS403以降の処理を実行する。
【0052】
S609で図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在しないと判断された場合(S609でNO)、初めて当該サーバ200に記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン4は新たに履歴テーブルを生成し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用すると共に、サーバリストに、サーバ名、UUID(又はMACアドレス)と関連付けて登録する(S611)。その後、S612に進み、図4のS403以降の処理を実行する。
【0053】
以上の処理により、再生すべきオーディオファイルが記録されているサーバ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するために、各サーバの履歴テーブルが使用される。一般的に、1つのサーバには同一のフォーマットのオーディオファイルが記録されていることが多いので、図4の処理において、WMA STD又はWMA LSLのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のサーバの中からサーバを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【0054】
次に、本発明のさらに別の実施形態を説明する。本例では、ネットマイコン4は、その内部のメモリ領域に、図9のフォーマットサイズテーブルを予め格納している。フォーマットサイズテーブルには、オーディオファイルのビットレート、サンプリング周波数、サンプルサイズ等(これらを総称してオーディオファイルの品質に関する情報という。)に関連付けて、WMA STDの単位チャンネル、かつ、単位時間(1秒)あたりのサイズ(基準サイズという。)と、WMA LSLの単位チャンネル、かつ、単位時間(1秒)あたりのサイズ(基準サイズという。)とが予め登録されている。
【0055】
図10は本例の処理を示す図であり、UI層、コンテンツ管理層、ネットワーク通信層は、それぞれネットマイコン4のソフトウェア、サーバ側通信層はサーバ200のソフトウェアである。
【0056】
図11は、UI層が表示部7又は外部ディスプレイに表示させるプレイリスト画面を示す図である。21番目〜30番目のオーディオファイルが表示されている。ここで、UI層にユーザ操作によってプレイリストのページ移動指示が入力される(S301)。UI層は、ネットワーク通信層に、プレイリストの次ページ情報を取得するように要求する(S302)。例えば、UI層は、GetContentList関数を実行し、start及びendの引数で情報の取得範囲をネットワーク通信層に供給する(ここでは、start=31,end=40)。ネットワーク通信層は、サーバ側通信層に対し、Browseリクエストを送信し、サーバから次ページ情報を取得し、infoに取得した次ページ情報を格納する。この時点で、引数で渡したinfoには、No.31から40までのオーディオファイルのコンテンツ情報(アーティスト名、トラック名、サンプリング周波数、ビットレート等)がすべて含まれている。コンテンツ管理層は、No.31-No.40のページから外れない限り、このinfoを保持しておく(S304)。
【0057】
続いて、UI層にユーザ操作によってオーディオファイルを選択して再生する指示が入力される(S305)。UI層は、コンテンツ管理層に、選択されたオーディオファイルを再生する指示であるPlay(index)を送信する(なお、indexはプレイリストにおける選択されたオーディオファイルの番号を示す)(S306)。
【0058】
コンテンツ管理層は、indexを元にinfoに格納されている各オーディオファイルのプロパティの中から、選択されたオーディオファイルのプロパティを引き出す(S307)。次に、コンテンツ管理層は、選択されたオーディオファイルのフォーマットが、拡張子又はMIMEタイプに基づいて、WMAであるか否かを判断する(S308)。フォーマットがWMAでなければ、以下の処理を実行せずに、フォーマットに対応するデコーダを選択し、起動させる(図示せず)。一方、フォーマットがWMAであれば、S309に進み、S307で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報(例えば、ビットレート、サンプリング周波数、サンプルサイズであるが、これに限定されない。)が含まれているか否かを判断する。仮に、S307で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれていない場合には、以下の処理を実行せずに、デフォルトのフォーマット(WMA STD又はWMA LSL)のデコーダを選択し、起動する(図示せず)。
【0059】
フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれている場合には、S310に進み、ネットマイコン4は、フォーマットサイズテーブルの該当する行を特定する。つまり、ネットマイコン4は、S307で取得したオーディオファイルのプロパティを参照し、ビットレート、サンプリング周波数、サンプルサイズ等の情報を読み出して、フォーマットサイズテーブルの行を特定する。
【0060】
さらに、ネットマイコン4は、再生すべきオーディオファイルの単位チャンネル、単位時間(1秒)当たりのサイズ(基準サイズという。)を算出する(S311)。オーディオファイルのサイズ、チャンネル数、再生時間は上記のプロパティに含まれているので、これらの情報に基づいて基準サイズを算出する。ネットマイコン4は、フォーマットサイズテーブルのS310で特定した行において、WMA STDの基準サイズと、WMA LSLの基準サイズとの中から、S311で算出した再生すべきオーディオファイルの基準サイズに近い方のフォーマットを特定する。そして、ネットマイコン4は、特定した方のフォーマットのデコーダを選択し、最初に起動させる。
【0061】
以上の処理によって、フォーマットサイズテーブルと、再生すべきオーディオファイルのプロパティとに基づいて、WMA STDデコーダとWMA LSLデコーダとの中から、最初に正確なフォーマットのデコーダを選択できる可能性を高くすることができる。
【0062】
次に、本発明のさらに別の実施形態を説明する。本例では、WMA STDデコーダ又はWMA LSLデコーダの内、最初に選択したデコーダにおいて、デコーダを初期化及び/又は設定するためにサーバ又はUSBメモリから取得したデータ(オーディオファイルの一部)を一時的にキュー(メモリであり、スタックでもよい。)に保存する。そして、最初に選択したデコーダが誤っており、初期化及び/又は設定ができなかった場合に、もう一方のデコーダを選択して起動するのであるが、この時、デコーダを初期化及び/又は設定するためのデータをサーバ又はUSBメモリから再取得するのではなく、キューに保存しているデータを読み出して、デコーダに供給する。これにより、デコーダを初期化及び/又は設定するためのデータをサーバ又はUSBメモリから再取得する必要がないので、無駄な処理及び通信が不要になり、オーディオファイルを再生開始するまでに要する時間を短縮できる。
【0063】
図12は、WMA LSLデコーダ又はWMA STDデコーダに初期化及び/又は設定を実行させるためのデータをUSBメモリから取得する際のデコーダアプリケーションプログラム(以下、デコーダアプリという。)が実行する関数の一例である。デコーダアプリは、ネットマイコン4が実行するプリケーションプログラムであり、各フォーマットのデコーダを制御する機能を有する。WMA LSLデコーダを初期化及び/又は設定するためには、図12上側に示すような関数が実行され、WMA STDデコーダを初期化及び/又は設定するためには、図12下側に示すような関数が実行される。FSEEK(又はfseek)は、オーディオファイルをシークする(読み出し開始位置(ポインタ)を移動させる)関数であり、0、1220、4900,5396等の数字は、オーディオファイルにおけるポインタの移動先の相対アドレス(バイト)を示す。つまり、オーディオファイルの先頭のアドレスが0とされている。freadは、オーディオファイルをシークされた位置から読み出す関数であり、256、248、252等は、シークされた位置から読み出すデータサイズ(バイト)を示す。
【0064】
従来では、オーディオファイルのフォーマットがWMAであると判断され、最初にWMA LSLデコーダが選択され、起動された場合には、デコーダアプリは、図12の上側に示すようなSEEK及びREADの関数を実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得し、WMA LSLデコーダに供給する。WMA LSLデコーダは、供給されたデータを用いて初期化及び/又は設定を実行する。ここで、正しいデコーダではないために初期化及び/又は設定に失敗した場合に、次に、WMA STDデコーダが選択され、起動される。デコーダアプリは、図12の下側に示すようなSEEK及びREADの関数を再度実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得し、WMA STDデコーダに供給する。WMA STDデコーダは、供給されたデータを用いて、初期化及び/又は設定を実行する。このように、デコーダアプリは、略同一のSEEK及びREAD関数を2回実行し、同一のデータをUSBメモリ又はサーバから2回取得している。
【0065】
そこで、本例では、上記のように、最初にWMA LSLデコーダが選択された場合に、デコーダアプリは、図12の上側に示すようなSEEK及びREADの関数を実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得して、キューに保存する。次に、WMA STDデコーダが選択された場合に、デコーダアプリは、キューに保存してあるデータをWMA STDデコーダに供給し、WMA STDデコーダは当該データを用いて初期化及び/又は設定を実行する。
【0066】
図13は本例の処理を示す図である。ユーザ操作によって再生すべきオーディオファイルが選択されると(S201)、デコーダアプリは、選択されたオーディオファイルの拡張子又はMIMEタイプに基づいて、オーディオファイルのフォーマットがWMAであるか否かを判断する(S202)。フォーマットがWMAでなければ、判別したフォーマットのデコーダを起動して、オーディオファイルを再生する(図示せず)。一方、フォーマットがWMAである場合には、デコーダアプリは、WMA LSLデコーダ又はWMA STDデコーダの内、デフォルトに設定されている方のデコーダ(ここでは、WMA LSLデコーダ)を選択して、起動させる(S203)。なお、S203でデフォルトのデコーダを選択するのではなく、WMA LSLデコーダ又はWMA STDデコーダの内、前の実施形態における図4、図8、図10のいずれかの処理によって、オーディオファイルのフォーマットであると推定され、最初に起動すべきと判断されたフォーマットのデコーダを起動させてよい。つまり、本例は、前の実施形態と適宜組合せて実行されることによって、より顕著な効果が得られるものである。
【0067】
起動したWMA LSLデコーダは、自身の初期化及び/又は設定のために必要なデータ(オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等)をデコーダアプリに要求する(S204)。つまり、WMA LSLデコーダは、デコーダアプリにSEEK及びREADの関数を実行するように要求すると共に、SEEK先のオーディオファイルのデータ位置や、READすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、WMA LSLデコーダに予め設定されている。
【0068】
デコーダアプリは、WMA LSLデコーダからSEEK及びREADの要求を受信すると、選択されたオーディオファイルのデータをサーバ200から取得するか、又は、USBメモリ等のローカルストレージから取得するかを、プレイリストの記述に基づいて判断する(S205)。データをサーバ200から取得する場合には、S206に示すように、図12の上側に示す関数とほぼ同様の関数を実行し、サーバ200に対してSEEK及びREADを含むHTTP GETコマンドを送信する。サーバ200は、これに応答して、選択されたオーディオファイルを指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、デコーダアプリ(及びWMA LSLデコーダ)に返信する。
【0069】
一方、データをUSBメモリから取得する場合には、S207に示すように、デコーダアプリは、図12の上側に示す関数を実行し、USBメモリに記録され、選択されたオーディオファイルにおいて、指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、WMA LSLデコーダに供給する。
【0070】
併せて、デコーダアプリは、サーバから取得、又は、USBメモリから読み出したデータをキューに一時的に保存する(S208)。図14はキューのデータ構造の例を示す図である。WMA LSLデコーダ及びWMA STDデコーダが指定する、SEEKする位置及びREADするデータサイズが常に同じである場合には、図14に示すように、キューにはSEEKする位置及びREADするデータサイズを管理することなく、取得したデータを順番にキューに保存しておくだけでよい。しかし、WMA LSLデコーダ及びWMA STDデコーダが指定する、SEEKする位置及びREADするデータサイズが随時変更される場合には、図15に示すように、SEEKする位置及びREADするデータサイズに対応付けて、データを保存するとよい。
【0071】
WMA LSLデコーダは、サーバ200から受信したデータ又はUSBメモリから読み出されたデータを使用して、自身の初期化及び/又は設定を実行する。そして、WMA LSLデコーダは、選択されたオーディオファイルのフォーマットがWMA LSLであれば、初期化及び/又は設定に成功し、選択されたオーディオファイルのフォーマットがWMA STDであれば、初期化及び/又は設定に失敗する。WMA LSLデコーダは、初期化及び/又は設定の結果(成功又は失敗)をデコーダアプリに通知する。
【0072】
デコーダアプリは、WMA LSLデコーダからの初期化及び/又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがWMA LSLであり、WMA LSLデコーダが初期化及び/又は設定に成功したか否かを判断する(S209)。WMA LSLデコーダが初期化及び/又は設定に成功した場合には(S209でYES)、デコーダアプリは、キューに保存されている初期化及び/又は設定のためのデータを消去して(S215)、WMA LSLデコーダは、オーディオファイルを再生(デコード)を開始する(S215)。
【0073】
一方、WMA LSLデコーダが初期化及び/又は設定に失敗した場合には(S209でNO)、デコーダアプリは、WMA LSLデコーダ及びWMA STDデコーダの内、S203で選択されなかった方のデコーダであるWMA STDデコーダを起動させる(S210)。起動したWMA STDデコーダは、自身の初期化及び/又は設定のために必要なデータ(オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等)をデコーダアプリに要求する(S211)。つまり、WMA STDデコーダは、デコーダアプリにSEEK及びREADの関数を実行するように要求すると共に、SEEK先のオーディオファイルのデータ位置や、READすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、WMA STDデコーダに予め設定されている。
【0074】
デコーダアプリは、WMA STDデコーダからSEEK及びREADの要求を受信すると、要求されたデータをキューから読み出し、WMA STDデコーダに供給する(S212)。上記の通り、SEEKする位置及びREADするデータサイズが常に同じである場合には、図14に示すようなキューが使用され、最初に保存したデータ(例えばデータ1)から順番に読み出して、WMA STDデコーダに供給する。一方、SEEKする位置及びREADするデータサイズが随時変更される場合には、図15のようなキューが使用されており、WMA STDデコーダから受信したSEEKする位置及びREADするデータサイズに対応するデータを特定してキューから読み出し、WMA STDデコーダに供給する。
【0075】
WMA STDデコーダは、キューから読み出されたデータを使用して、自身の初期化及び/又は設定を実行する。そして、WMA STDデコーダは、選択されたオーディオファイルのフォーマットがWMA STDであれば、初期化及び/又は設定に成功し、選択されたオーディオファイルのフォーマットがWMA STDでなければ、初期化及び/又は設定に失敗する。WMA STDデコーダは、初期化及び/又は設定の結果(成功又は失敗)をデコーダアプリに通知する。
【0076】
デコーダアプリは、WMA STDデコーダからの初期化及び/又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがWMA STDであり、WMA STDデコーダが初期化及び/又は設定に成功したか否かを判断する(S213)。WMA STDデコーダが初期化及び/又は設定に成功した場合には(S213でYES)、デコーダアプリは、オーディオファイルの再生開始する位置(最初に読み出されるデータ位置)を、S211でWMA STDデコーダから受信したSEEKする位置及びREADするデータサイズに基づいて特定し、サーバ200に通知し、オーディオファイルの読み出し位置としてシークさせる、又は、USBメモリのオーディオファイルの読み出し位置としてシークする(S214)。これは、WMA STDデコーダを初期化及び/又は設定するためのデータをオーディオファイルから取得するのではなく、キューに保存されているデータを使用したために、オーディオファイルのポインタがシークされておらず0のままであり、再生開始するための位置に予めシークしておく必要があるからである。つまり、仮にキューからデータを読み出すのではなく、オーディオファイルからSEEK、READを実行して、初期化及び/又は設定に必要なデータを取得した場合に、オーディオファイルのポインタが位置する位置まで再生開始位置を進めておく。例えば、図12に示すようにSEEK及びREADが実行される場合、最後のSEEK位置である5396に、最後のREADデータサイズ256+252を加算した5904が、再生開始位置であるので、この値にポインタが移動される。
【0077】
その後、デコーダアプリは、キューに保存した初期化及び/又は設定用のデータを消去し(S215)、サーバ又はUSBメモリからオーディオファイルを取得する。WMA STDデコーダは、オーディオファイルを再生(デコード)開始する(S216)。一方、S213で、WMA STDデコーダが初期化及び/又は設定に失敗したと判断した場合には(S213でNO)、デコーダアプリは、エラー処理を実行して処理を終了する。
【0078】
以上の処理によって、2回目に起動されたデコーダを初期化及び/又は設定するためのデータは、サーバ又はUSBメモリから再取得されず、1回目に起動されたデコーダのために取得してキューに保存しておいたデータが使用される。その結果、不要な処理および通信を実行する必要が無く、再生開始までの時間を短縮できる。
【0079】
以上、本発明の好ましい実施形態を説明したが、本発明はこれらの実施形態には限定されない。サーバやUSBメモリからオーディオファイルを取得して再生する代わりに、DVDやHDD等の記憶媒体から取得して再生してもよい。本発明は、上記のコンテンツ再生装置を動作させるためのコンピュータプログラムまたはそのコンピュータプログラムを記録した記録媒体という形態で提供されてもよい。
【産業上の利用可能性】
【0080】
本発明はコンテンツを再生するコンテンツ再生装置(例えば、AVアンプ、ネットワークオーディオクライアント等)に好適に適用され得る。
【符号の説明】
【0081】
100 AVアンプ(コンテンツ再生装置)
200 サーバ
1 メインマイコン
2 RAM
3 ROM
4 ネットワークマイコン
5 ビデオマイコン
6 再生部
7 表示部
8 操作部
9 USB端子
【技術分野】
【0001】
本発明は、所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置に関する。
【背景技術】
【0002】
AVアンプ等のコンテンツ再生装置は、LAN等のネットワークを介してサーバに接続され、サーバからコンテンツ(例えばオーディオファイル)をストリーミング形式で取得し(又は、接続されたUSBメモリからオーディオファイルを取得してもよい。以下同様。)、再生する。オーディオファイルは、MP3、WMA、AAC等の複数のフォーマットのいずれかで圧縮されている。AVアンプは、これらのフォーマットのオーディオファイルをデコードするため、フォーマット毎にデコーダ(MP3デコーダ、WMA STDデコーダ、WMA LSLデコーダ、AACデコーダ等)を備えている。AVアンプは、サーバから曲リストを取得し、曲リストの中からユーザ操作によって選択されたオーディオファイルをサーバに要求し、取得する。AVアンプは、再生すべきオーディオファイルが選択されると、例えば曲リストに記述されているオーディオファイルの拡張子、又は、MIMEタイプ等を参照することにより、サーバから取得して再生するオーディオファイルのフォーマットを特定することができる。従って、特定したフォーマットのデコーダを起動させることにより、サーバから取得したオーディオファイルをデコードすることができる。
【0003】
ここで、WMAにはWMA STD(WMA
Standard)およびWMA LSL(WMA Lossless)の2種類のフォーマットが存在する。しかし、拡張子またはMIMEタイプ(あるいは、Profile
IDでもよい。以下同様。)を参照しても、フォーマットがWMAであることは特定できるが、WMA STDであるか、又は、WMA LSLであるかを特定することができない。従って、WMA STDおよびWMA LSLのどちらのフォーマットのデコーダを起動させる必要があるかを特定できない。従って、WMA STDおよびWMA LSLの内、最初に起動させるデコーダが予め決定されている。
【0004】
最初に起動させるデコーダがWMA LSLデコーダの場合、WMA LSLデコーダを起動させ、サーバからオーディオファイルの一部を取得して、取得したデータを使用してWMA LSLデコーダを初期化及び/又は設定させる。初期化及び/又は設定できた場合には、オーディオファイルのフォーマットはWMA LSLであるので、WMA LSLデコーダでデコードすることができる。一方、初期化及び/又は設定できなかった場合には、オーディオファイルのフォーマットはWMA STDであるので、WMA STDデコーダを起動させ、再度、サーバからオーディオファイルの一部を取得して、取得したデータを使用してWMA STDデコーダを初期化及び/又は設定させる。
【0005】
以上のように、WMA LSLデコーダ又はWMA STDデコーダの内、最初に選択して起動させたデコーダが正しいデコーダでなかった場合には、もう一方のデコーダを起動させ、再びサーバから初期化及び/又は設定に必要なデータを取得して、もう一方のデコーダを初期化及び/又は設定させる必要が生じる。その結果、不要な処理及び通信が生じ、オーディオファイルを再生開始する迄に時間がかかるという問題がある。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−35083号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は上記従来の課題を解決するためになされたものであり、その目的は、所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができない場合に、第1所定フォーマットに対応するデコーダ、又は、第2所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできるコンテンツ再生装置を提供することである。
【課題を解決するための手段】
【0008】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであるか否かを判断する手段と、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【0009】
過去に再生されたコンテンツのフォーマットを記憶しておく。再生すべきコンテンツのフォーマットが所定フォーマットであり、かつ、直近に再生されたコンテンツのフォーマットが第1所定フォーマット又は第2所定フォーマットであれば、直近に再生されたコンテンツのフォーマット(第1所定フォーマット又は第2所定フォーマット)を、再生すべきコンテンツのフォーマットであると推定する。そして、推定されたフォーマットに対応するデコーダを最初に選択する。一般的に、同じフォーマットのコンテンツが連続して再生される可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0010】
好ましい実施形態においては、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットでない場合に、前記選択手段が、第1所定フォーマット、又は、第2所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる。
【0011】
第1所定フォーマット又は第2所定フォーマットの内、過去に再生された回数が多い方が、再生すべきコンテンツのフォーマットである可能性が高いので、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0012】
好ましい実施形態においては、前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、前記外部記憶装置毎に対応する前記フォーマット記憶手段と、再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える。
【0013】
一般的に、1つの外部記憶装置には同じフォーマットのコンテンツが記録されている可能性が高いので、外部記憶装置毎に個別に過去に再生されたコンテンツのフォーマットを記憶しておくことにより、正確なフォーマットのデコーダを最初に選択する可能性を高くできる。
【0014】
本発明の好ましい実施形態によるコンテンツ再生装置は、所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、コンテンツの品質に関する情報に対応付けて、第1所定フォーマットの基準サイズと、第2所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第1所定フォーマットの基準サイズと第2所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える。
【発明の効果】
【0015】
所定フォーマットであることを判別できるが、所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができない場合に、第1所定フォーマットに対応するデコーダ、又は、第2所定フォーマットに対応するデコーダの内、正しいデコーダを最初に選択する可能性を高くできる。
【図面の簡単な説明】
【0016】
【図1】本発明の好ましい実施形態によるAVアンプ100を示すブロック図である。
【図2】プレイリストを示す図である。
【図3】履歴テーブルを示す図である。
【図4】ネットマイコン4の処理を示すフローチャートである。
【図5】USBリストを示す図である。
【図6】各USBメモリに対する履歴テーブルを示す図である。
【図7】サーバリストを示す図である。
【図8】ネットマイコン4の処理を示すフローチャートである。
【図9】フォーマットサイズテーブルを示す図である。
【図10】ネットマイコン4とサーバの処理を示すシーケンスチャートである。
【図11】プレイリスト画面を示す図である。
【図12】デコーダアプリが実行するSEEK、READの関数を示す図である。
【図13】デコーダアプリ、デコーダ、サーバの処理を示すフローチャートである。
【図14】キューの構造を示す図である。
【図15】キューの構造を示す図である。
【発明を実施するための形態】
【0017】
以下、本発明の好ましい実施形態について、図面を参照して具体的に説明するが、本発明はこれらの実施形態には限定されない。
【0018】
図1は、本発明の好ましい実施形態によるコンテンツ再生装置(以下、AVアンプという。)100と、サーバ200とを示すブロック図である。AVアンプ100は、LAN等の任意のネットワークを介してサーバ200に接続可能であり、サーバにコンテンツを要求し、サーバから例えばストリーミング形式でコンテンツを取得し、コンテンツを再生する。コンテンツは、映像データ、静止画データ、音楽データ(オーディオファイル)等の総称であるが、本例ではオーディオファイルである。また、AVアンプ100は、USB端子9に接続されたUSBメモリに記録されているオーディオファイルを取得して、再生する。USBメモリは、例えば、フラッシュメモリ内蔵の携帯型プレーヤ等である。
【0019】
AVアンプ100は、メインマイコン1、RAM2、ROM3、ネットワークマイコン(以下、ネットマイコンという。)4、ビデオマイコン5、再生部6、表示部7、操作部8及びUSB端子9を備える。これらは、バスを介して互いに接続されている。再生部6には、図示しないスピーカーが外部に接続されている。
【0020】
メインマイコン1は、ROM3に記録されているプログラムに基づいて、AVアンプ100の各部を制御する。ネットマイコン4は、ROM3又は他のメモリに記録されているプログラムに基づいて、下記の動作を実行する。ネットマイコン4は、LANを介してサーバ200にアクセスし、サーバ200から曲リスト(以下、プレイリストという。)を取得し、メインマイコン1に供給する。メインマイコン1は、プレイリストをビデオマイコン5に供給する。ビデオマイコン5は、プレイリストを描画処理し、表示部7に表示、又は、OSD画面を図示しないTV等の外部ディスプレイに表示させる。
【0021】
図2は、プレイリストの一例を示す図である。プレイリストは、例えば、各オーディオファイルのアーティスト名、アルバム名、曲名等に加えて、オーディオファイルのフォーマット情報を含む。オーディオファイルのフォーマット情報は、例えば、拡張子又はMIMEタイプといった形態で含まれている。
【0022】
ユーザが操作部8を操作してプレイリストの中から、再生すべきオーディオファイルを選択すると、ネットマイコン4は、選択されたオーディオファイルをサーバ200に要求し、サーバ200からオーディオファイルを例えばストリーミング形式で取得する。なお、最初はユーザ操作によって再生すべきオーディオファイルが選択されるが、一度選択された後は、ネットマイコン4は、オーディオファイルを再生し終える毎に、プレイリストの順番にサーバ200からオーディオファイルを取得して、再生することができる。
【0023】
ネットマイコン4は、その内部に、オーディオファイルのフォーマット毎に、デコーダ(ソフトウェアデコーダ)を有している。例えば、オーディオファイルのフォーマットが、MP3、AAC、WMA STD、WMA LSL、Ogg Vorvis等である場合には、ネットマイコン4は、MP3デコーダ、AACデコーダ、WMA STDデコーダ、WMA LSLデコーダ、Ogg Vorvisデコーダ等を有する。
【0024】
ネットマイコン4は、プレイリストから再生すべきオーディオファイルが選択されると、選択されたオーディオファイルのフォーマットを、例えばプレイリストに記述された拡張子又はMIMEタイプ(あるいは、Profile IDでもよい。以下同様。)に基づいて特定する。そして、ネットマイコン4は、特定したフォーマットに対応するデコーダを起動させ、サーバ200から受信したオーディオファイルを、起動したデコーダを使用して、デコードする。デコードされたオーディオファイルは、再生部6によってデジタル−アナログ変換、増幅処理等が実行され、スピーカーに音声信号が供給される。
【0025】
ここで、例えばプレイリストに記述されている拡張子やMIMEタイプ(又は、サーバ200から別途取得したMIMEタイプでもよい。)等から、フォーマットがWMA(所定フォーマット)であることは特定することができるが、WMA STD(第1所定フォーマット)、又は、WMA LSL(第2所定フォーマット)のいずれであるかを特定することができない(なお、図2のプレイリストでは、説明の為に便宜上、WMA STDやWMA LSLと記述しているだけである)。従って、ネットマイコン4は、オーディオファイルをデコードするために、WMA STDデコーダ又はWMA LSLデコーダのいずれを最初に起動させるとよいかを特定することができない。
【0026】
この問題を解決するために、本実施形態においては、拡張子又はMIMEタイプがWMAである場合に、ネットマイコン4は、直近に(最後に)再生したオーディオファイルのフォーマットがWMA STDであり、直近に(最後に)使用したデコーダがWMA STDデコーダであれば、今回再生するオーディオファイルのフォーマットもWMA STDであると推定し、WMA STDデコーダを最初に起動させ、オーディオファイルをデコードする。一方、拡張子又はMIMEタイプがWMAである場合に、直近に(最後に)再生したオーディオファイルのフォーマットがWMA LSLであり、直近に(最後に)使用したデコーダがWMA LSLデコーダであれば、今回再生するオーディオファイルのフォーマットもWMA LSLであると推定し、WMA LSLデコーダを最初に起動させ、オーディオファイルをデコードする。このようにフォーマットを推定するのは、一般的には、図2(a)に示すように、オーディオファイルを連続再生する場合、又は、同一のサーバ等からオーディオファイルを取得して再生する場合、同一のフォーマットが連続する確率が高いからである。
【0027】
これを実現するために、ネットマイコン4は、その内部のメモリ領域に、図3に示す履歴テーブルを格納している。履歴テーブルは、過去に再生されたオーディオファイルに使用したデコーダのフォーマット(すなわち、過去に再生したオーディオファイルのフォーマット)を時系列で記憶しておくテーブルである。図3においては、下側が再生された時刻が古く、上側が再生された時刻が新しいオーディオファイルのフォーマットを示す。つまり、直近に(最後に)再生されたオーディオファイルのフォーマットはMP3であり、その前に再生されたオーディオファイルのフォーマットがWMA LSLであることを示す。
【0028】
履歴テーブルには最初は何も記憶されておらず、ネットマイコン4がオーディオファイルのフォーマットを確定し、確定したフォーマットのデコーダでオーディオファイルをデコードし、再生する際に、履歴テーブルにフォーマットを記憶する。
【0029】
ここで、拡張子又はMIMEタイプがWMAである場合に、直近に(最後に)再生したオーディオファイルのフォーマットがWMA STDでも、WMA LSLでもない場合、直近に再生したフォーマットという条件で最初に起動させるデコーダをWMA STD又はWMA LSLの中から特定できない。そこで、ネットマイコン4は、WMA STD又はWMA LSLの中から、履歴テーブルに記憶されている数が多い方のフォーマットを、再生するオーディオファイルのフォーマットと推定し、推定したフォーマットのデコーダを最初に起動させ、オーディオファイルをデコードする。履歴テーブルに記憶されている数が多い方が、頻繁に再生されているフォーマットであるので、今回再生するオーディオファイルのフォーマットである可能性が高いからである。
【0030】
図4は、ネットマイコン4の処理を示すフローチャートである。本例では、サーバ200からオーディオファイルを取得する場合を例に説明するが、USBメモリからオーディオファイルを取得する場合も同様である。プレイリストから再生すべきオーディオファイルが選択されると、ネットマイコン4は、再生開始状態になる(S401)。ネットマイコン4は、プレイリストを参照し、選択されたオーディオファイルの拡張子又はMIMEタイプに基づいて、再生すべきオーディオファイルのフォーマットが、WMAであるか否かを判断する(S402)。
【0031】
再生すべきオーディオファイルのフォーマットがWMAではなく、例えば、MP3等であれば(S402でNO)、ネットマイコン4は、拡張子又はMIMEタイプに基づいたフォーマットのデコーダを選択し、選択したデコーダを起動させる(S410)。例えば、フォーマットがMP3であれば、MP3デコーダを選択し、起動させる。ネットマイコン4は、履歴テーブルに、選択して起動させたデコーダのフォーマットを新たに記憶させる(S408)。そして、ネットマイコン4は、選択されたオーディオファイルをサーバ200から取得して、起動させたデコーダにデコードさせ、再生を開始する(S409)。
【0032】
S402で、拡張子又はMIMEタイプがWMAであると判断された場合(S402でYES)、ネットマイコン4は、履歴テーブルのデータ数>0であるか否か、すなわち、履歴テーブルに過去に再生されたオーディオファイルのフォーマットが1つ以上記憶されているか否かを判断する(S403)。履歴テーブルにフォーマットが記憶されていない場合(S403でNO)、つまり、電源投入後最初のオーディオファイルの再生であるために、過去に再生されたオーディオファイルのフォーマットが記憶されていない場合には、ネットマイコン4は、WMA STDデコーダ又はWMA LSLデコーダの内、デフォルトとして設定されている方のデコーダを選択し、選択したデコーダを起動させて、S406に進む。
【0033】
S403で履歴テーブルにフォーマットが記憶されていると判断された場合(S403でYES)、ネットマイコン4は、履歴テーブルにおいて、最後尾(直近)に記憶されているフォーマットがWMA STD、又は、WMA LSLであるか否かを判断する(S404)。すなわち、直近に再生したオーディオファイルのフォーマットが、WMA STD、又は、WMA LSLであるか否かを判断する。
【0034】
履歴テーブルの最後尾に記憶されているフォーマットがWMA STD、又は、WMA LSLである場合(S404でYES)、ネットマイコン4は、最後尾に記憶されているフォーマットと同じフォーマットに対応するデコーダを選択し、起動させ(S405)、S406に進む。つまり、履歴テーブルの直近に記憶されているフォーマットがWMA STDであれば、ネットマイコン4は、WMA STDデコーダを選択して、起動させる。一方、履歴テーブルの直近に記憶されているフォーマットがWMA LSLであれば、ネットマイコン4は、WMA LSLデコーダを選択して、起動させる。
【0035】
S404で、履歴テーブルの最後尾に記憶されているフォーマットがWMA STD、又は、WMA LSLでない場合(S404でNO)、ネットマイコン4は、履歴テーブルに記憶されているフォーマットにおいて、WMA STDとWMA LSLとの中で数が多い方のフォーマットに対応するデコーダを選択し、起動させ(S412)、S406に進む。つまり、履歴テーブルに記憶されている数が多い方のフォーマットがWMA STDであれば、ネットマイコン4は、WMA STDデコーダを選択して、起動させる。一方、履歴テーブルに記憶されている数が多い方のフォーマットがWMA LSLであれば、ネットマイコン4は、WMA LSLデコーダを選択して、起動させる。なお、履歴テーブルに記憶されている数が同数であれば、S411と同様に、デフォルトのデコーダを選択して、起動させるとよい。
【0036】
S406において、ネットマイコン4は、サーバ200のオーディオファイルから、初期化及び/又は設定用のデータをSEEK、READして取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び/又は設定を実行する。ネットマイコン4は、S406の結果、サーバから取得したデータを使用して、デコーダが初期化及び/又は設定を実行できたか否かを判断する(S407)。初期化及び/又は設定できた場合(S407でYES)、S405,S411又はS412で選択したデコーダは正しいデコーダである。従って、ネットマイコン4は、S405,S411又はS412で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する(S408)。これにより、今回再生するオーディオファイルの正確なフォーマット(WMA STD又はWMA LSL)を履歴テーブルに記憶させることができる。その後、ネットマイコン4は、サーバ200から選択されたオーディオファイルを取得し、起動させたデコーダによってデコーダさせ、再生を開始する(S409)。
【0037】
S407で初期化及び/又は設定できなかった場合(S407でNO)、S405,S411又はS412で選択したデコーダは誤ったデコーダである。従って、ネットマイコン4は、WMA STDデコーダ又はWMA LSLデコーダの内、S405,S411又はS412で選択しなかった方のフォーマットのデコーダを選択し、起動させる(S413)。つまり、S405,S411又はS412でWMA STDデコーダが選択された場合には、ネットマイコン4は、WMA LSLデコーダを選択し、起動させる。S405,S411又はS412でWMA LSLデコーダが選択された場合には、ネットマイコン4は、WMA STDデコーダを選択し、起動させる。
【0038】
ネットマイコン4は、再度、サーバ200のオーディオファイルから、初期化及び/又は設定用のデータをSEEK、READによって取得し、起動させたデコーダに供給する。デコーダは、供給されたデータを使用して、初期化及び/又は設定を実行する(S414)。ネットマイコン4は、S414の結果、サーバから取得したデータを使用して、デコーダが初期化及び/又は設定できたか否かを判断する(S415)。デコーダが初期化及び/又は設定できた場合(S415でYES)、S413で選択したデコーダは正しいデコーダである。従って、ネットマイコン4は、S413で選択したデコーダのフォーマットを履歴テーブルの最後尾に記憶する(S408)。これにより、今回再生するオーディオファイルの正確なフォーマット(WMA STD又はWMA LSL)を履歴テーブルに記憶させることができる。その後、ネットマイコン4は、サーバ200から選択されたオーディオファイルを取得して、起動させたデコーダにデコードさせ、再生を開始する(S409)。
【0039】
S415で初期化及び/又は設定できなかった場合(S415でNO)、S413で選択したデコーダも誤ったデコーダである。従って、ネットマイコン4は、選択されたオーディオファイルをデコードして、再生することができないと判断し、エラー処理を実行し(S416)、処理を終了する。
【0040】
以上のように、拡張子又はMIMEタイプに基づいてオーディオファイルのフォーマットがWMAであると判断された場合には、履歴テーブルに直近に記憶されている(直近に再生されたオーディオファイルの)フォーマットに対応するデコーダを最初に起動させることにより、正確なデコーダを最初に起動できる可能性を高くすることができる。
【0041】
次に、本発明の別の好ましい実施形態を説明する。本例では、USB端子9に接続されるUSBメモリ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているUSB端子に対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。また、サーバ毎に上記の履歴テーブルを管理し、再生するオーディオファイルが格納されているサーバに対応する履歴テーブルを使用して、上記実施形態と同様に、オーディオファイルのフォーマットを推定する。ここで、USBメモリやサーバを、総称して外部記憶装置という。
【0042】
ネットマイコン4は、その内部のメモリ領域に、図5に示すUSBリストを格納している。USBリストは、USB端子9に接続されたUSBメモリ毎に、番号NO.に対応付けて、モデル名、ベンダーID、シリアル番号及び履歴テーブルを記憶するリストである。ベンダーIDとシリアル番号とは、USBメモリを一意に特定するための識別情報である。履歴テーブルは、上記の通り、各USBメモリ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。各USBメモリに対する履歴テーブルの例を図6に示す。例えば、NO.1のUSBメモリについては、履歴テーブルUSB−Tb1を参照すると、直近に再生されたオーディオファイルのフォーマットはMP3であり、その1つ前に再生されたオーディオファイルのフォーマットもMP3であることが分かる。
【0043】
ネットマイコン4は、その内部のメモリ領域に、図7に示すサーバリストを格納している。サーバリストは、過去に接続されたサーバ200毎に、番号NO.に対応付けて、サーバ名、UUID(又はMACアドレス)、及び履歴テーブルを記憶するリストである。UUID(又はMACアドレス)は、サーバ200を一意に特定するための識別情報である。履歴テーブルは、上記の通り、各サーバ毎に、過去に再生されたオーディオファイルのフォーマットを時系列で記憶するテーブルである。
【0044】
図8は、本例におけるネットマイコン4の処理の要部を説明する図である。なお、ネットマイコン4のオーディオファイルのフォーマットを推定する基本的な処理は図4と同じであり、ここでは、使用する履歴テーブルの選択処理のみを説明する。ネットマイコン4は、拡張子又はMIMEタイプに基づいて選択されたオーディオファイルのフォーマットがWMAであると判断する(図4のS402でYES)と、図8のS601に進む。ネットマイコン4は、再生すべきオーディオファイルがUSBメモリに記録されているか否かを判断する(S602)。
【0045】
USBメモリに記録されている場合には(S602でYES)、ネットマイコン4は、再生すべきオーディファイルが記録されているUSBメモリのベンダーIDとシリアル番号とをUSBメモリから読み出して取得する(S603)。ネットマイコン4は、図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在するか否かを判断する(S604)。すなわち、再生すべきオーディオファイルが記録されたUSBメモリの履歴テーブルがUSBリストに記憶されているか否かを判断する。
【0046】
図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在すると判断された場合(S604でYES)、ネットマイコン4は、USBリストからベンダーIDとシリアル番号との組合せに対応する履歴テーブルを取得し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。例えば、ベンダーIDが0x7A8B,シリアル番号が0xCK2349cksであれば、NO.1のUSBメモリであることが特定され、履歴テーブルUSB−Tb1が取得される。その後、S612に進み、図4のS403以降の処理を実行する。
【0047】
S604で図5のUSBリストに、S603で取得したベンダーIDとシリアル番号との組合せが存在しないと判断された場合(S604でNO)、初めて当該USBメモリに記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン4は新たに履歴テーブルを生成し、USBリストに、モデル名、ベンダーID、シリアル番号と関連付けて登録すると共に、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。(S605)。その後、S612に進み、図4のS403以降の処理を実行する。
【0048】
以上の処理により、再生すべきオーディオファイルが記録されているUSBメモリ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するために、各USBメモリの履歴テーブルが使用される。一般的に、1つのUSBメモリには同一のフォーマットのオーディオファイルを記録することが多いので、図4の処理において、WMA STD又はWMA LSLのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のUSBメモリの中からUSBメモリを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【0049】
S602でNOと判断された場合、ネットマイコン4は、再生すべきオーディオファイルがサーバ200に記録されているか否かを判断する(S607)。
【0050】
サーバ200に記録されている場合には(S607でYES)、ネットマイコン4は、再生すべきオーディファイルが記録されているサーバ200のUUID(又はMACアドレス)をサーバ200から取得する(S608)。ネットマイコン4は、図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在するか否かを判断する(S609)。すなわち、再生すべきオーディオファイルが記録されたサーバの履歴テーブルがサーバリストに記憶されているか否かを判断する。
【0051】
図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在すると判断された場合(S609でYES)、ネットマイコン4は、サーバリストからUUID(又はMACアドレス)に対応する履歴テーブルを取得し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用する。その後、S612に進み、図4のS403以降の処理を実行する。
【0052】
S609で図7のサーバリストに、S608で取得したUUID(又はMACアドレス)が存在しないと判断された場合(S609でNO)、初めて当該サーバ200に記録されたオーディオファイルを再生するので、未だ履歴テーブルが生成されていない。従って、ネットマイコン4は新たに履歴テーブルを生成し、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するための履歴テーブルとして使用すると共に、サーバリストに、サーバ名、UUID(又はMACアドレス)と関連付けて登録する(S611)。その後、S612に進み、図4のS403以降の処理を実行する。
【0053】
以上の処理により、再生すべきオーディオファイルが記録されているサーバ毎に履歴テーブルが生成され、オーディオファイルのフォーマットがWMA STDであるか、WMA LSLであるかを推定するために、各サーバの履歴テーブルが使用される。一般的に、1つのサーバには同一のフォーマットのオーディオファイルが記録されていることが多いので、図4の処理において、WMA STD又はWMA LSLのうち、履歴テーブルの直近に記憶されているフォーマット、あるいは、履歴テーブルに記憶されている数が多い方のフォーマットを選択することによって、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。従って、複数のサーバの中からサーバを適宜切り換えながらオーディオファイルを再生する場合でも、正しいフォーマットのデコーダを最初に起動できる可能性をより高くすることができる。
【0054】
次に、本発明のさらに別の実施形態を説明する。本例では、ネットマイコン4は、その内部のメモリ領域に、図9のフォーマットサイズテーブルを予め格納している。フォーマットサイズテーブルには、オーディオファイルのビットレート、サンプリング周波数、サンプルサイズ等(これらを総称してオーディオファイルの品質に関する情報という。)に関連付けて、WMA STDの単位チャンネル、かつ、単位時間(1秒)あたりのサイズ(基準サイズという。)と、WMA LSLの単位チャンネル、かつ、単位時間(1秒)あたりのサイズ(基準サイズという。)とが予め登録されている。
【0055】
図10は本例の処理を示す図であり、UI層、コンテンツ管理層、ネットワーク通信層は、それぞれネットマイコン4のソフトウェア、サーバ側通信層はサーバ200のソフトウェアである。
【0056】
図11は、UI層が表示部7又は外部ディスプレイに表示させるプレイリスト画面を示す図である。21番目〜30番目のオーディオファイルが表示されている。ここで、UI層にユーザ操作によってプレイリストのページ移動指示が入力される(S301)。UI層は、ネットワーク通信層に、プレイリストの次ページ情報を取得するように要求する(S302)。例えば、UI層は、GetContentList関数を実行し、start及びendの引数で情報の取得範囲をネットワーク通信層に供給する(ここでは、start=31,end=40)。ネットワーク通信層は、サーバ側通信層に対し、Browseリクエストを送信し、サーバから次ページ情報を取得し、infoに取得した次ページ情報を格納する。この時点で、引数で渡したinfoには、No.31から40までのオーディオファイルのコンテンツ情報(アーティスト名、トラック名、サンプリング周波数、ビットレート等)がすべて含まれている。コンテンツ管理層は、No.31-No.40のページから外れない限り、このinfoを保持しておく(S304)。
【0057】
続いて、UI層にユーザ操作によってオーディオファイルを選択して再生する指示が入力される(S305)。UI層は、コンテンツ管理層に、選択されたオーディオファイルを再生する指示であるPlay(index)を送信する(なお、indexはプレイリストにおける選択されたオーディオファイルの番号を示す)(S306)。
【0058】
コンテンツ管理層は、indexを元にinfoに格納されている各オーディオファイルのプロパティの中から、選択されたオーディオファイルのプロパティを引き出す(S307)。次に、コンテンツ管理層は、選択されたオーディオファイルのフォーマットが、拡張子又はMIMEタイプに基づいて、WMAであるか否かを判断する(S308)。フォーマットがWMAでなければ、以下の処理を実行せずに、フォーマットに対応するデコーダを選択し、起動させる(図示せず)。一方、フォーマットがWMAであれば、S309に進み、S307で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報(例えば、ビットレート、サンプリング周波数、サンプルサイズであるが、これに限定されない。)が含まれているか否かを判断する。仮に、S307で取得したオーディオファイルのプロパティに、フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれていない場合には、以下の処理を実行せずに、デフォルトのフォーマット(WMA STD又はWMA LSL)のデコーダを選択し、起動する(図示せず)。
【0059】
フォーマットサイズテーブルにおいて行を一意に特定できる情報が含まれている場合には、S310に進み、ネットマイコン4は、フォーマットサイズテーブルの該当する行を特定する。つまり、ネットマイコン4は、S307で取得したオーディオファイルのプロパティを参照し、ビットレート、サンプリング周波数、サンプルサイズ等の情報を読み出して、フォーマットサイズテーブルの行を特定する。
【0060】
さらに、ネットマイコン4は、再生すべきオーディオファイルの単位チャンネル、単位時間(1秒)当たりのサイズ(基準サイズという。)を算出する(S311)。オーディオファイルのサイズ、チャンネル数、再生時間は上記のプロパティに含まれているので、これらの情報に基づいて基準サイズを算出する。ネットマイコン4は、フォーマットサイズテーブルのS310で特定した行において、WMA STDの基準サイズと、WMA LSLの基準サイズとの中から、S311で算出した再生すべきオーディオファイルの基準サイズに近い方のフォーマットを特定する。そして、ネットマイコン4は、特定した方のフォーマットのデコーダを選択し、最初に起動させる。
【0061】
以上の処理によって、フォーマットサイズテーブルと、再生すべきオーディオファイルのプロパティとに基づいて、WMA STDデコーダとWMA LSLデコーダとの中から、最初に正確なフォーマットのデコーダを選択できる可能性を高くすることができる。
【0062】
次に、本発明のさらに別の実施形態を説明する。本例では、WMA STDデコーダ又はWMA LSLデコーダの内、最初に選択したデコーダにおいて、デコーダを初期化及び/又は設定するためにサーバ又はUSBメモリから取得したデータ(オーディオファイルの一部)を一時的にキュー(メモリであり、スタックでもよい。)に保存する。そして、最初に選択したデコーダが誤っており、初期化及び/又は設定ができなかった場合に、もう一方のデコーダを選択して起動するのであるが、この時、デコーダを初期化及び/又は設定するためのデータをサーバ又はUSBメモリから再取得するのではなく、キューに保存しているデータを読み出して、デコーダに供給する。これにより、デコーダを初期化及び/又は設定するためのデータをサーバ又はUSBメモリから再取得する必要がないので、無駄な処理及び通信が不要になり、オーディオファイルを再生開始するまでに要する時間を短縮できる。
【0063】
図12は、WMA LSLデコーダ又はWMA STDデコーダに初期化及び/又は設定を実行させるためのデータをUSBメモリから取得する際のデコーダアプリケーションプログラム(以下、デコーダアプリという。)が実行する関数の一例である。デコーダアプリは、ネットマイコン4が実行するプリケーションプログラムであり、各フォーマットのデコーダを制御する機能を有する。WMA LSLデコーダを初期化及び/又は設定するためには、図12上側に示すような関数が実行され、WMA STDデコーダを初期化及び/又は設定するためには、図12下側に示すような関数が実行される。FSEEK(又はfseek)は、オーディオファイルをシークする(読み出し開始位置(ポインタ)を移動させる)関数であり、0、1220、4900,5396等の数字は、オーディオファイルにおけるポインタの移動先の相対アドレス(バイト)を示す。つまり、オーディオファイルの先頭のアドレスが0とされている。freadは、オーディオファイルをシークされた位置から読み出す関数であり、256、248、252等は、シークされた位置から読み出すデータサイズ(バイト)を示す。
【0064】
従来では、オーディオファイルのフォーマットがWMAであると判断され、最初にWMA LSLデコーダが選択され、起動された場合には、デコーダアプリは、図12の上側に示すようなSEEK及びREADの関数を実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得し、WMA LSLデコーダに供給する。WMA LSLデコーダは、供給されたデータを用いて初期化及び/又は設定を実行する。ここで、正しいデコーダではないために初期化及び/又は設定に失敗した場合に、次に、WMA STDデコーダが選択され、起動される。デコーダアプリは、図12の下側に示すようなSEEK及びREADの関数を再度実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得し、WMA STDデコーダに供給する。WMA STDデコーダは、供給されたデータを用いて、初期化及び/又は設定を実行する。このように、デコーダアプリは、略同一のSEEK及びREAD関数を2回実行し、同一のデータをUSBメモリ又はサーバから2回取得している。
【0065】
そこで、本例では、上記のように、最初にWMA LSLデコーダが選択された場合に、デコーダアプリは、図12の上側に示すようなSEEK及びREADの関数を実行し、USBメモリ又はサーバからオーディオファイルの該当する部分を取得して、キューに保存する。次に、WMA STDデコーダが選択された場合に、デコーダアプリは、キューに保存してあるデータをWMA STDデコーダに供給し、WMA STDデコーダは当該データを用いて初期化及び/又は設定を実行する。
【0066】
図13は本例の処理を示す図である。ユーザ操作によって再生すべきオーディオファイルが選択されると(S201)、デコーダアプリは、選択されたオーディオファイルの拡張子又はMIMEタイプに基づいて、オーディオファイルのフォーマットがWMAであるか否かを判断する(S202)。フォーマットがWMAでなければ、判別したフォーマットのデコーダを起動して、オーディオファイルを再生する(図示せず)。一方、フォーマットがWMAである場合には、デコーダアプリは、WMA LSLデコーダ又はWMA STDデコーダの内、デフォルトに設定されている方のデコーダ(ここでは、WMA LSLデコーダ)を選択して、起動させる(S203)。なお、S203でデフォルトのデコーダを選択するのではなく、WMA LSLデコーダ又はWMA STDデコーダの内、前の実施形態における図4、図8、図10のいずれかの処理によって、オーディオファイルのフォーマットであると推定され、最初に起動すべきと判断されたフォーマットのデコーダを起動させてよい。つまり、本例は、前の実施形態と適宜組合せて実行されることによって、より顕著な効果が得られるものである。
【0067】
起動したWMA LSLデコーダは、自身の初期化及び/又は設定のために必要なデータ(オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等)をデコーダアプリに要求する(S204)。つまり、WMA LSLデコーダは、デコーダアプリにSEEK及びREADの関数を実行するように要求すると共に、SEEK先のオーディオファイルのデータ位置や、READすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、WMA LSLデコーダに予め設定されている。
【0068】
デコーダアプリは、WMA LSLデコーダからSEEK及びREADの要求を受信すると、選択されたオーディオファイルのデータをサーバ200から取得するか、又は、USBメモリ等のローカルストレージから取得するかを、プレイリストの記述に基づいて判断する(S205)。データをサーバ200から取得する場合には、S206に示すように、図12の上側に示す関数とほぼ同様の関数を実行し、サーバ200に対してSEEK及びREADを含むHTTP GETコマンドを送信する。サーバ200は、これに応答して、選択されたオーディオファイルを指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、デコーダアプリ(及びWMA LSLデコーダ)に返信する。
【0069】
一方、データをUSBメモリから取得する場合には、S207に示すように、デコーダアプリは、図12の上側に示す関数を実行し、USBメモリに記録され、選択されたオーディオファイルにおいて、指定された位置にポインタをシークすると共に、シークした位置から指定されたデータサイズ分のデータを読み出して、WMA LSLデコーダに供給する。
【0070】
併せて、デコーダアプリは、サーバから取得、又は、USBメモリから読み出したデータをキューに一時的に保存する(S208)。図14はキューのデータ構造の例を示す図である。WMA LSLデコーダ及びWMA STDデコーダが指定する、SEEKする位置及びREADするデータサイズが常に同じである場合には、図14に示すように、キューにはSEEKする位置及びREADするデータサイズを管理することなく、取得したデータを順番にキューに保存しておくだけでよい。しかし、WMA LSLデコーダ及びWMA STDデコーダが指定する、SEEKする位置及びREADするデータサイズが随時変更される場合には、図15に示すように、SEEKする位置及びREADするデータサイズに対応付けて、データを保存するとよい。
【0071】
WMA LSLデコーダは、サーバ200から受信したデータ又はUSBメモリから読み出されたデータを使用して、自身の初期化及び/又は設定を実行する。そして、WMA LSLデコーダは、選択されたオーディオファイルのフォーマットがWMA LSLであれば、初期化及び/又は設定に成功し、選択されたオーディオファイルのフォーマットがWMA STDであれば、初期化及び/又は設定に失敗する。WMA LSLデコーダは、初期化及び/又は設定の結果(成功又は失敗)をデコーダアプリに通知する。
【0072】
デコーダアプリは、WMA LSLデコーダからの初期化及び/又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがWMA LSLであり、WMA LSLデコーダが初期化及び/又は設定に成功したか否かを判断する(S209)。WMA LSLデコーダが初期化及び/又は設定に成功した場合には(S209でYES)、デコーダアプリは、キューに保存されている初期化及び/又は設定のためのデータを消去して(S215)、WMA LSLデコーダは、オーディオファイルを再生(デコード)を開始する(S215)。
【0073】
一方、WMA LSLデコーダが初期化及び/又は設定に失敗した場合には(S209でNO)、デコーダアプリは、WMA LSLデコーダ及びWMA STDデコーダの内、S203で選択されなかった方のデコーダであるWMA STDデコーダを起動させる(S210)。起動したWMA STDデコーダは、自身の初期化及び/又は設定のために必要なデータ(オーディオファイルの一部であり、例えば、サンプリング周波数、ビットレート、バージョン等)をデコーダアプリに要求する(S211)。つまり、WMA STDデコーダは、デコーダアプリにSEEK及びREADの関数を実行するように要求すると共に、SEEK先のオーディオファイルのデータ位置や、READすべきオーディオファイルのデータサイズをデコーダアプリに通知する。これらのデータ位置やデータサイズ等の値は、WMA STDデコーダに予め設定されている。
【0074】
デコーダアプリは、WMA STDデコーダからSEEK及びREADの要求を受信すると、要求されたデータをキューから読み出し、WMA STDデコーダに供給する(S212)。上記の通り、SEEKする位置及びREADするデータサイズが常に同じである場合には、図14に示すようなキューが使用され、最初に保存したデータ(例えばデータ1)から順番に読み出して、WMA STDデコーダに供給する。一方、SEEKする位置及びREADするデータサイズが随時変更される場合には、図15のようなキューが使用されており、WMA STDデコーダから受信したSEEKする位置及びREADするデータサイズに対応するデータを特定してキューから読み出し、WMA STDデコーダに供給する。
【0075】
WMA STDデコーダは、キューから読み出されたデータを使用して、自身の初期化及び/又は設定を実行する。そして、WMA STDデコーダは、選択されたオーディオファイルのフォーマットがWMA STDであれば、初期化及び/又は設定に成功し、選択されたオーディオファイルのフォーマットがWMA STDでなければ、初期化及び/又は設定に失敗する。WMA STDデコーダは、初期化及び/又は設定の結果(成功又は失敗)をデコーダアプリに通知する。
【0076】
デコーダアプリは、WMA STDデコーダからの初期化及び/又は設定の結果の通知に基づいて、選択されたオーディオファイルのフォーマットがWMA STDであり、WMA STDデコーダが初期化及び/又は設定に成功したか否かを判断する(S213)。WMA STDデコーダが初期化及び/又は設定に成功した場合には(S213でYES)、デコーダアプリは、オーディオファイルの再生開始する位置(最初に読み出されるデータ位置)を、S211でWMA STDデコーダから受信したSEEKする位置及びREADするデータサイズに基づいて特定し、サーバ200に通知し、オーディオファイルの読み出し位置としてシークさせる、又は、USBメモリのオーディオファイルの読み出し位置としてシークする(S214)。これは、WMA STDデコーダを初期化及び/又は設定するためのデータをオーディオファイルから取得するのではなく、キューに保存されているデータを使用したために、オーディオファイルのポインタがシークされておらず0のままであり、再生開始するための位置に予めシークしておく必要があるからである。つまり、仮にキューからデータを読み出すのではなく、オーディオファイルからSEEK、READを実行して、初期化及び/又は設定に必要なデータを取得した場合に、オーディオファイルのポインタが位置する位置まで再生開始位置を進めておく。例えば、図12に示すようにSEEK及びREADが実行される場合、最後のSEEK位置である5396に、最後のREADデータサイズ256+252を加算した5904が、再生開始位置であるので、この値にポインタが移動される。
【0077】
その後、デコーダアプリは、キューに保存した初期化及び/又は設定用のデータを消去し(S215)、サーバ又はUSBメモリからオーディオファイルを取得する。WMA STDデコーダは、オーディオファイルを再生(デコード)開始する(S216)。一方、S213で、WMA STDデコーダが初期化及び/又は設定に失敗したと判断した場合には(S213でNO)、デコーダアプリは、エラー処理を実行して処理を終了する。
【0078】
以上の処理によって、2回目に起動されたデコーダを初期化及び/又は設定するためのデータは、サーバ又はUSBメモリから再取得されず、1回目に起動されたデコーダのために取得してキューに保存しておいたデータが使用される。その結果、不要な処理および通信を実行する必要が無く、再生開始までの時間を短縮できる。
【0079】
以上、本発明の好ましい実施形態を説明したが、本発明はこれらの実施形態には限定されない。サーバやUSBメモリからオーディオファイルを取得して再生する代わりに、DVDやHDD等の記憶媒体から取得して再生してもよい。本発明は、上記のコンテンツ再生装置を動作させるためのコンピュータプログラムまたはそのコンピュータプログラムを記録した記録媒体という形態で提供されてもよい。
【産業上の利用可能性】
【0080】
本発明はコンテンツを再生するコンテンツ再生装置(例えば、AVアンプ、ネットワークオーディオクライアント等)に好適に適用され得る。
【符号の説明】
【0081】
100 AVアンプ(コンテンツ再生装置)
200 サーバ
1 メインマイコン
2 RAM
3 ROM
4 ネットワークマイコン
5 ビデオマイコン
6 再生部
7 表示部
8 操作部
9 USB端子
【特許請求の範囲】
【請求項1】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであるか否かを判断する手段と、
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項2】
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットでない場合に、前記選択手段が、第1所定フォーマット、又は、第2所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる、請求項1に記載のコンテンツ再生装置。
【請求項3】
前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、
前記外部記憶装置毎に対応する前記フォーマット記憶手段と、
再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、
特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える、請求項1または2に記載のコンテンツ再生装置。
【請求項4】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
コンテンツの品質に関する情報に対応付けて、第1所定フォーマットの基準サイズと、第2所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第1所定フォーマットの基準サイズと第2所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、
特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項5】
請求項1〜4のいずれかに記載のコンテンツ再生装置の各手段をコンピュータに実行させる、コンテンツ再生プログラム。
【請求項1】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
過去に再生されたコンテンツのフォーマットを記憶するフォーマット記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであるか否かを判断する手段と、
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットであると判断された場合に、前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項2】
前記フォーマット記憶手段に記憶されている直近に再生されたコンテンツのフォーマットが、第1所定フォーマット、又は、第2所定フォーマットでない場合に、前記選択手段が、第1所定フォーマット、又は、第2所定フォーマットの内、前記フォーマット記憶手段に記憶されている数が多い方のフォーマットに対応するデコーダを選択して起動させる、請求項1に記載のコンテンツ再生装置。
【請求項3】
前記コンテンツ再生装置が、前記コンテンツ再生装置の外部に所定のインターフェース又はネットワークを介して接続される外部記録装置からコンテンツを取得して再生するものであり、
前記外部記憶装置毎に対応する前記フォーマット記憶手段と、
再生すべきコンテンツが記録されている前記外部記憶装置を特定する外部記憶装置特定手段と、
特定された前記外部記憶装置に対応する前記フォーマット記憶手段を、前記フォーマット記憶手段として選択する手段とをさらに備える、請求項1または2に記載のコンテンツ再生装置。
【請求項4】
所定フォーマットであることを判別できるが、前記所定フォーマットの内の第1所定フォーマット、又は、第2所定フォーマットのいずれであるかを判別することができないコンテンツを再生するコンテンツ再生装置であって、
コンテンツの複数のフォーマットにそれぞれ対応する複数のデコーダと、
コンテンツの品質に関する情報に対応付けて、第1所定フォーマットの基準サイズと、第2所定フォーマットの基準サイズとを記憶するフォーマットサイズ記憶手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであるか否かを判断する手段と、
再生すべきコンテンツのフォーマットが前記所定フォーマットであると判断された場合、再生すべきコンテンツの基準サイズを算出し、かつ、再生すべきコンテンツの品質に対応付けて前記フォーマットサイズ記憶手段に記憶されている第1所定フォーマットの基準サイズと第2所定フォーマットの基準サイズとの内、再生すべきコンテンツの基準サイズに近い方のフォーマットを特定する手段と、
特定されたフォーマットに対応するデコーダを選択して起動させる選択手段とを備える、コンテンツ再生装置。
【請求項5】
請求項1〜4のいずれかに記載のコンテンツ再生装置の各手段をコンピュータに実行させる、コンテンツ再生プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2010−281918(P2010−281918A)
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願番号】特願2009−133674(P2009−133674)
【出願日】平成21年6月3日(2009.6.3)
【出願人】(000000273)オンキヨー株式会社 (502)
【Fターム(参考)】
【公開日】平成22年12月16日(2010.12.16)
【国際特許分類】
【出願日】平成21年6月3日(2009.6.3)
【出願人】(000000273)オンキヨー株式会社 (502)
【Fターム(参考)】
[ Back to top ]