端末装置、画像表示方法、およびプログラム
【課題】音楽データを再生するための効果的なユーザインタフェースを提供する。
【解決手段】ジャケット画像受信部12は再生される音楽のデータとともにその音楽に関連づけられた関連画像を取得する。3次元画像生成部30は過去に再生された音楽に関連づけられた関連画像を現在再生中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する。3次元画像生成部30は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える。
【解決手段】ジャケット画像受信部12は再生される音楽のデータとともにその音楽に関連づけられた関連画像を取得する。3次元画像生成部30は過去に再生された音楽に関連づけられた関連画像を現在再生中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する。3次元画像生成部30は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、音楽配信サービスを利用する端末装置、配信された音楽に関する画像を表示する画像表示方法に関する。
【背景技術】
【0002】
音楽のストリーム配信をするサイトを利用して、インターネットで音楽を聴く機会が増えている。インターネットプロトコルを用いて音楽番組をリアルタイムで配信するインターネットラジオのサイトが多くあり、サイトに接続してチャネルを選ぶと、音楽がパーソナルコンピュータにストリーム配信され、音楽をリアルタイムで再生して聴くことができる。
【0003】
特許文献1は、音楽再生が可能なゲーム機を開示する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許第6563999号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来のインターネットラジオなどの音楽配信サービスでは、配信される音楽を受信して再生するための各種のソフトウエアが提供されているが、リアルタイムで配信される音楽の再生が主眼であり、必ずしも魅力的なユーザインタフェースは提供されていない。また、過去に配信された音楽を検索したり、試聴するためのユーザインタフェースは提供されていないのが現状である。
【0006】
本発明はこうした課題に鑑みてなされたものであり、その目的は音楽配信サービスを利用するためのユーザインタフェースを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様のプログラムは、順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示する機能と、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える機能とをコンピュータに実現させる。
【0008】
本発明の別の態様は、端末装置である。この装置は、再生される音楽のストリームデータとともにその音楽に関連づけられた関連画像を取得する取得部と、過去に再生された音楽に関連づけられた関連画像を現在配信中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する3次元画像生成部とを含む。前記3次元画像生成部は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える。
【0009】
本発明のさらに別の態様は、画像表示方法である。この方法は、順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示するステップと、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えるステップとを含む。
【0010】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0011】
本発明によれば、音楽配信サービスを利用するための効果的なユーザインタフェースを提供することができる。
【図面の簡単な説明】
【0012】
【図1】実施の形態に係るゲームシステムの概略構成図である。
【図2】ゲーム機の内部回路の概略構成を示すブロック回路図である。
【図3】実施の形態に係るインターネットラジオシステムの構成図である。
【図4】図3のクライアントの機能構成図である。
【図5】図3のクライアントによる画像表示手順を説明するフローチャートである。
【図6】図3のクライアントの画面に表示されるインターネットラジオのチャネルの選択画面を示す図である。
【図7A】現在配信中の音楽が再生されているときの画面を示す図である。
【図7B】新しい音楽が配信されたときの画面を示す図である。
【図7C】新しい音楽が配信されたときの画面を示す図である。
【図8A】図7Aの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図8B】図7Bの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図8C】図7Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図9A】過去の音楽のジャケット画像をサーチするときの画面を示す図である。
【図9B】過去の音楽のジャケット画像をサーチするときの画面を示す図である。
【図9C】サーチした音楽の購入画面を示す図である。
【図10A】図9Aの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図10B】図9Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図11】図3のクライアントによる音楽再生用のメディアプレイヤーのチャネル選択画面を示す図である。
【図12A】メディアプレイヤーにより音楽が再生されているときの画面を示す図である。
【図12B】メディアプレイヤーにより音楽が再生されているときの画面を示す図である。
【図13】実施の形態に係る携帯型電子機器の概略構成図である。
【図14】携帯型電子機器の内部回路の概略構成を示すブロック回路図である。
【図15】汎用的なPCの内部回路構成図である。
【発明を実施するための形態】
【0013】
図1は、本発明の一実施の形態としてのゲームシステムの概略構成を示す。
【0014】
本実施の形態のゲームシステムは、ゲーム機200と、コントローラ202と、テレビジョンモニタ204とからなる。ゲーム機200は、各種のゲームの実行、電子メールの作成や編集、Webページの閲覧、映画や音楽の再生等の機能を有する。コントローラ202は、無線によってゲーム機200に接続される。テレビジョンモニタ204は、ゲーム機200と接続され、ゲーム内容やWebページ、映画等を表示すると共に音を出力する。
【0015】
[ゲーム機の概要]
ゲーム機200は、直径12cmの光ディスクに対応したディスク挿入口206やUSB接続端子208等を備えている。ディスク挿入口206はBD(ブルーレイディスク、Blu−ray Disk(商標または登録商標))やDVD−ROM、CD−ROM等の光ディスクが装填可能に構成されている。タッチセンサ210はディスクを取り出すためのセンサであり、タッチセンサ212は電源のオン/オフを行うためのセンサである。また、図示は省略するが、当該ゲーム機200の背面側には、電源スイッチ、音響映像出力端子、光ディジタル出力端子、AC電源入力端子、LANポート、HDMI端子等が設けられている。この他、IEEE1394端子を有し、IEEE1394で通信できるようにしても良い。
【0016】
ゲーム機200はマルチメディアスロットも備える。マルチメディアスロットケース214は蓋部材となっており、図示は省略するが、当該マルチメディアスロットケース214を開口するとマルチメディアスロットが露出する構造となっている。
【0017】
ゲーム機200は、ゲームや電子メール、Webブラウザ用のアプリケーションプログラムと、コントローラ202を介したユーザからの指示とに応じて、ゲームの実行や電子メールの作成、編集、受信、Webページの閲覧等のための各種処理を実行する。アプリケーションプログラムは、CD−ROM、DVD−ROM、BD等の光ディスクやハードディスクドライブ、半導体メモリ等の各種記録媒体から読み出したもの、もしくはLAN、CATV回線等の各種伝送媒体を介してダウンロードしたものの何れでも良い。
【0018】
さらに、ゲーム機200は、アプリケーションプログラムに基づくゲームの実行や電子メールの作成、編集、受信、Webページの閲覧等を実行するだけでなく、例えばCDに記録されたオーディオデータやDVD、BDに記録された映画等のビデオおよびオーディオデータを再生(デコード)可能である。またゲーム機200は、その他の各種アプリケーションプログラムに基づいて動作することも可能である。なお、DVDやBDの再生を行うためのドライバプログラムは、例えばゲーム機200に内蔵されているハードディスクドライブ334に記録されている。
【0019】
[コントローラ概要]
コントローラ202は、図示しないバッテリによって駆動され、ゲーム等を進行させる操作入力を行うための複数のボタンやキーを有して構成される。ユーザがコントローラ202のボタンやキーを操作すると、その操作入力が無線または有線によりゲーム機200に送信される。
【0020】
コントローラ202は、方向キー216、アナログスティック218と、4種の操作ボタン220が設けられている。方向キー216、アナログスティック218、操作ボタン220は、筐体上面222に設けられた入力部である。4種のボタン224、226、228、230には、それぞれを区別するために、異なる色で異なる図形が記されている。すなわち、○ボタン224には赤色の丸、×ボタン226には青色のバツ、□ボタン228には紫色の四角形、△ボタン230には緑色の三角形が記されている。図示は省略するが、コントローラ202筐体背面232には複数のLEDが設けられている。
【0021】
ユーザは左手で左側把持部234bを把持し、右手で右側把持部234aを把持して、コントローラ202を操作する。方向キー216、アナログスティック218、操作ボタン220はユーザが左側把持部234b、右側把持部234aを把持した状態で操作可能なように、筐体上面222上に設けられる。
【0022】
筐体上面222には、LED付きボタン236も設けられる。LED付きボタン236は、例えばゲーム機200にメニュー画面を表示させるためのボタンとして利用される。また、LEDの発光状態によりユーザへのメールの着信の知らせや、コントローラ202のバッテリの充電状態などを示す機能をもつ。例えば充電中は赤色、充電が終了すると緑色に点灯し、充電残存量が残り少ないときには赤色を点滅させるようにLEDを点灯させる。
【0023】
方向キー216には、例えばゲームのゲームキャラクタを画面上で上下左右等に移動させたり、電子メール作成画面上で文字入力カーソルを上下左右方向に移動させたり、Webページ閲覧中にページスクロールをしたり、画面上のカーソルを上下左右方向に移動させたりする際にユーザが操作する「上」、「下」、「左」、「右」方向指示キーが設けられている。なお、「上」、「下」、「左」、「右」方向指示キーは、上下左右の方向指示のみならず、斜め方向の方向指示にも用いられる。例えば「上」方向指示キーと「右」方向指示キーとを同時に押圧操作することで、ユーザは、右斜め上方向の方向指示をゲーム機200に与えることができる。他の方向指示キーにおいても同様であり、例えば「下」方向指示キーおよび「左」方向指示キーを同時に押圧操作することで、ユーザは、左斜め下方向の方向指示をゲーム機200に与えることができる。
【0024】
操作ボタン220は、アプリケーションプログラムによりそれぞれ異なる機能が割り付けられる。例えば、△ボタン230は、メニューの表示を指定する機能が割り付けられており、×ボタン226は、選択した項目の取り消し等を指定する機能が、○ボタン224は、選択した項目の決定等を指定する機能が、□ボタン228は、例えば目次等の表示/非表示を指定する機能が割り付けられている。
【0025】
アナログスティック218は操作軸の回転支点を中心にして任意の方向に傾倒操作が可能な回転操作子と、当該回転操作子の操作に応じた可変のアナログ値を出力する可変アナログ値出力手段とを備えている。回転操作子は、弾性部材により中立位置に復帰するように取り付けられた操作軸の先端側に取り付けられている。回転操作子は、ユーザにより傾倒操作がなされていない時には起立した状態(傾きのない状態)でそのポジションを保持(基準ポジション)する。可変アナログ値出力手段は、可変抵抗素子等を備えている。可変抵抗素子は回転操作子の操作に応じてその抵抗値が変化する。コントローラ202は、アナログスティック218の回転操作子が傾倒操作された時、基準ポジションに対する傾き量とその傾き方向に応じたXY座標上の座標値を検出し、その座標値を操作出力信号としてゲーム機200へ送る。
【0026】
またコントローラ202は、セレクトボタン240、スタートボタン238等を備えている。スタートボタン238は、ゲーム開始や電子メール画面の表示開始、映画や音楽の再生開始、一時停止などをユーザが指示するためのボタンである。セレクトボタン240は、テレビジョンモニタ204上に表示されたメニュー表示の選択等をユーザが指示するためのボタンである。
【0027】
コントローラ202は、左右の把持部234a、234b内に、振動発生機構をも備えている。振動発生機構は、例えばモータの回転軸に対して偏心した状態の重なりを備え、その重りを当該モータにて回転させることによって、コントローラ202を振動させる。この振動発生機構は、ゲーム機200からの指示に応じて動作する。コントローラ202は、当該振動発生機構を動作させることにより、ユーザの手に振動を伝える。
【0028】
[ゲーム機の内部構成]
次に、ゲーム機200の内部回路構成について説明する。
【0029】
図2は、ゲーム機の内部回路の概略構成を示すブロック回路図である。ゲーム機200は、メインCPU300とGPU(グラフィックプロセッサユニット)302と、入出力プロセッサ304と、光ディスク再生部306と、メインメモリ308と、マスクロム310と、サウンドプロセッサ312とを基本構成として備える。メインCPU300は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU302は、画像処理を行う。入出力プロセッサ304は、外部と装置内部との間のインターフェース処理や下位互換性を保つための処理を実行する。光ディスク再生部306は、アプリケーションプログラムやマルチメディアデータが記録されているBDやDVD、CD等の光ディスクを再生する。メインメモリ308は、メインCPU300のワークエリアや光ディスクから読み出されたデータを一時的に格納するバッファとして機能する。マスクロム310は、主にメインCPU300や入出力プロセッサ304が実行するオペレーティングシステムプログラムを格納している。サウンドプロセッサ312は、音声信号を処理する。
【0030】
また、このゲーム機200は、CD/DVD/BDプロセッサ314と、光ディスク再生ドライバ316と、メカコントローラ318と、ハードディスクドライブ334、カード型コネクタ(例えばPCカードスロット)320も有している。CD/DVD/BDプロセッサ314は、光ディスク再生部306によりCD/DVD/BDから読み出されてRFアンプ328で増幅されたディスク再生信号に対して、例えば誤り訂正処理(例えばCIRC(Cross Interleave Reed-Solomon Coding)処理)や伸張復号化処理等を施すことにより、それらCD/DVD/BDに記録されたデータを再生(復元)する。光ディスク再生ドライバ316及びメカコントローラ318は、光ディスク再生部306のスピンドルモータの回転制御、光ピックアップのフォーカス/トラッキング制御、ディスクトレイのローディング制御等を行う。
【0031】
また、ハードディスクドライブ334は例えば光ディスク再生部306で読み出されたアプリケーションプログラムやゲームのセーブデータを記憶、あるいは入出力プロセッサ304を介して取得した写真、動画、音楽等のデータ等を記憶する。カード型コネクタ320は、例えば通信カードや外付けハードディスクのドライブ等の接続ポートである。
【0032】
これらの各部は、主にバスライン322、324等を介してそれぞれ相互に接続されている。なお、メインCPU300とGPU302は、専用バスで接続されている。また、メインCPU300と入出力プロセッサ304はSBUSにより接続されている。入出力プロセッサ304とCD/DVD/BDプロセッサ314、マスクロム310、サウンドプロセッサ312、カード型コネクタ320、ハードディスクドライブ334はSSBUSにより接続されている。
【0033】
メインCPU300は、マスクロム310に記憶されているメインCPU用のオペレーティングシステムプログラムを実行することにより、当該ゲーム機200の全動作を制御する。また、メインCPU300は、CD、DVD、BD等の光ディスクから読み出されてメインメモリ308にロードする。また、通信ネットワークを介してダウンロードされた各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0034】
入出力プロセッサ304は、マスクロム310に記憶されている入出力プロセッサ用のオペレーティングシステムプログラムを実行することにより、ユーザの操作に応じたコントローラ202からの信号やゲームの設定、電子メールの内容やアドレス、WebサイトのURL等を記憶するメモリカード326からのデータ等の入出力を制御する。その他、入出力プロセッサ304は、USB接続端子208やイーサネット330、図示しないIEEE1394端子やPCカードスロット等におけるデータの入出力も制御する。また、図示しないPCカードスロットを介してメモリカード326に対しデータの入出力を行う。コントローラ202やメモリカードからの情報はマルチメディアスロットや無線送受信ポートを含むインタフェース332を介してやりとりする。
【0035】
GPU302は、座標変換等の処理をするジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU300からの描画指示に従って描画し、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU302は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を計算する。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU302は、この作成した画像に対応するビデオ信号を出力する。
【0036】
サウンドプロセッサ312は、ADPCM(Adaptive Differential Pulse Code Modulation)復号機能、オーディオ信号再生機能、信号変調機能等を備えている。ADPCM復号機能とは、当該サウンドプロセッサ312に内蔵或いは外付けされた図示しないサウンドバッファに記憶されている波形データを読み出すことで、効果音等のオーディオ信号を再生して出力する機能である。信号変調機能とは、上記サウンドバッファに記憶されている波形データから、楽音や効果音等のオーディオ信号を発生する、所謂サンプリング音源としても動作する。
【0037】
以上のような構成を有するゲーム機200は、例えば電源が投入されると、マスクロム310からメインCPU300用及び入出力プロセッサ304用のオペレーティングシステムプログラムが読み出される。メインCPU300と入出力プロセッサ304は、それぞれ対応したオペレーティングシステムプログラムを実行する。これにより、メインCPU300は、ゲーム機200の各部を統括的に制御する。また、入出力プロセッサ304は、コントローラ202やメモリカード326等との間の信号の入出力を制御する。また、メインCPU300は、オペレーティングシステムプログラムを実行すると、まず動作確認等の初期化処理をする。つづいて光ディスク再生部306を制御して光ディスクに記録されているゲーム等のアプリケーションプログラムを読み出し、メインメモリ308にロードした後、そのゲームアプリケーションプログラムを実行する。このゲームアプリケーションプログラムの実行により、メインCPU300は、入出力プロセッサ304を介してコントローラ202から受け付けたユーザの指示に応じて、GPU302やサウンドプロセッサ312を制御し、画像の表示や効果音、楽音の発生を制御する。
【0038】
なお、例えば光ディスクに記録された映画等を再生する場合、メインCPU300は、入出力プロセッサ304を介してコントローラ202から受け付けたユーザからの指示(コマンド)にしたがってGPU302やサウンドプロセッサ312を制御し、光ディスクから再生された映画の映像の表示や効果音や音楽等の発生を制御する。
【0039】
図3は、実施の形態に係るインターネットラジオシステムの構成図である。ストリーミングサーバ50は、音楽データ記憶部52に記憶された音楽ストリームをイーサネット330などのネットワーク70を介してクライアント10に配信する。クライアント10は、あたかもラジオ放送を受信するように、ストリーミングサーバ50から配信される音楽を受信して再生する。
【0040】
ストリーミングサーバ50の音楽データ記憶部52には、ストリーム配信する音楽のCD/DVDジャケットの画像も記憶されており、音楽ストリーム配信の開始時に当該音楽のCD/DVDジャケットの画像をクライアント10に送信する。クライアント10は、音楽ストリームを受信して再生するだけでなく、ストリーム配信される音楽に対応するCD/DVDジャケットの画像も受信して画面に表示する。なお、CD/DVDなどの媒体で販売されていない音楽については、CD/DVDジャケットの画像でなくても、音楽に関連づけられた何らかの画像を「ジャケット画像」として用いればよい。
【0041】
また、クライアント10は、ストリーム配信された音楽に対応するCD/DVDを購入を促すためのユーザインタフェースも提供する。ユーザがストリーム配信された音楽の内、気に入ったものを選択し、そのCD/DVDの購入を促すボタンを押すと、クライアント10はネットワーク70を介して音楽販売サイト60に接続され、当該音楽販売サイトにおいて当該音楽のCD/DVDを購入することができる。なお、音楽はCDやDVDのような記録媒体の形態で販売されてもよく、MP3などの圧縮符号化データの形態でダウンロード形式で販売されてもよい。
【0042】
図4は、クライアント10の機能構成図である。クライアント10は、前述のゲームシステムのゲーム機200に実現される機能構成である。インターネットラジオシステムの各機能ブロックは、ゲーム機200の主にメインCPU300やGPU302によって実行される、メインメモリ308にロードされたアプリケーションプログラムのモジュールにより実現される。
【0043】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信中の音楽ストリームのデータをイーサネット330経由で受信してストリームデータ記憶部40に蓄積する。ストリームデータ記憶部40は、例えばハードディスクドライブ334の一部として実現される。
【0044】
ストリームデータ記憶部40はハードディスクドライブ334の記憶容量の許す範囲で、過去に配信された音楽ストリームのデータが保存される。ハードディスクドライブ334が許容する容量を超えると、古いものから順に消去される。ストリームデータ記憶部40には、過去に配信された音楽の履歴情報も記憶される。履歴情報には、曲のストリームデータを特定する識別情報、曲名、アーティスト名、ジャケット画像ファイルの識別情報などが含まれる。過去の音楽ストリームがストリームデータ記憶部40から消去された場合でも、履歴情報は残っている。そのため、消去された過去の音楽ストリームが必要になった場合、履歴情報からそのストリームの識別情報を取得し、ストリーミングサーバ50にストリームの識別情報を通知してリクエストすれば、ストリームデータを再度取得することができる。
【0045】
音楽再生部22は、ストリームデータ記憶部40からストリームデータを読み出し、サウンドプロセッサ312において復号処理をして再生する。
【0046】
ジャケット画像受信部12は、現在配信中の音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信してハードディスクドライブ334の一部としてのジャケット画像記憶部36に保存する。
【0047】
クライアント10は、現在配信中の音楽のジャケット画像だけでなく、過去に配信された音楽のジャケット画像も、テレビジョンモニタ204等の画面に表示する。過去から現在までに配信された音楽のジャケット画像を表示するにあたって、3次元仮想空間に音楽CD/DVDのジャケットがオブジェクトとして配置されているとして、仮想的なカメラ位置から視線方向に見た場合の、過去から現在までに配信された音楽のジャケット画像の3次元画像を生成する。これは例えばCPU300からの命令によりGPU302において計算して実現する。
【0048】
また、クライアント10は、現在配信されている音楽のジャンルやムードなどの種別に適した背景画像をテレビジョンモニタ204等に表示するとともに、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面を表す画像に背景画像やジャケット画像が映り込んだリフレクション画像を生成する。そして、リフレクション画像にパーリンノイズの揺らぎを加えることで、音楽の種別や音楽のビートに合わせて水面が波打つような印象を与える。
【0049】
さらに、クライアント10は、過去に配信された音楽のジャケット画像をサーチするためのユーザインタフェースを備える。3次元仮想空間内に配信順に配置されたジャケットに対して、例えばコントローラ202のアナログスティック218の傾倒操作に応じて仮想的なカメラを移動させるか、あるいは、カメラの位置は固定してジャケットの方を移動させることで、ユーザはジャケット画像をブラウズして、目的のジャケット画像を例えばコントローラ202の○ボタン224を押下することで選択する。選択されたジャケット画像に対して、そのCD/DVDを購入するためのユーザインタフェースがさらに提供される。
【0050】
ジャケットを3次元仮想空間内に表示する画像処理に関する構成、およびジャケットをブラウズするためのユーザインタフェースに関する構成を詳しく説明する。
【0051】
ユーザ操作取得部14は、ユーザからジャケットの探索などのコントローラ202からの操作コマンドを受け付ける。
【0052】
カメラ移動制御部16は、ユーザの操作コマンドに応じて仮想的なカメラの位置や向きを変える。仮想的なカメラの位置と向きは、3次元仮想空間を見るユーザの視点位置と視線方向に対応する。
【0053】
オブジェクト移動制御部18は、ユーザの操作コマンドに応じてジャケットのオブジェクトを移動させる。たとえば、ユーザが特定のジャケットをコントローラ202を通じて選択すると、オブジェクト移動制御部18は、そのジャケットのオブジェクトを仮想空間内でカメラに近い位置に移動させる。ジャケットのオブジェクトの位置情報はハードディスクドライブ334の一部としてのオブジェクトデータ記憶部38に記憶される。オブジェクトデータ記憶部38には、ジャケットのオブジェクト以外に、音楽の曲名やアーティスト名を表示するためのテクスチャのオブジェクトも記憶される。
【0054】
チャネル選択部24は、ストリーミングサーバ50が提供しているラジオ放送のチャネルの選択をユーザからコントローラ202を通じて受け付ける。チャネル選択部24により選択されたチャネルの情報は例えばイーサネット330を通じてストリーミングサーバ50に送信される。チャネルは、一例として、音楽のムードで分けられている。CPU300を用いて音楽の成分を解析することにより、音楽はアップビートやリラックスなどのいくつかの種類のチャネルに分類される。より具体的には、例えばRecommended、Energetic、Relax、Mellow、Upbeat、Emotional、Lounge、Dance、Extremeの9種類のムードや「お気に入り」、「シャッフル」、「最近追加した曲」の3つのジャンル、合計12種類のチャネルに分類される。ストリーミングサーバ50は、ユーザが選択したチャネルに対応するムードに分類されている音楽の中からユーザの嗜好に合った音楽をお勧めの曲として選択し、その音楽のストリームをクライアント10に配信する。チャネル選択部24により選択されたチャネルの情報は3次元画像生成部30にも通知される。
【0055】
3次元画像生成部30は、カメラ位置から見た3次元仮想空間内のジャケットの画像を背景画像に合成した3次元画像を生成する。表示部32は、3次元画像生成部30により生成された3次元画像をテレビジョンモニタ204に表示する。
【0056】
3次元画像生成部30は、リフレクション画像生成部26とパーリンノイズ生成部28を含む。3次元画像生成部30は、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0057】
リフレクション画像生成部26は、チャネル選択部24により選択されたチャネルに対応した背景画像を背景画像記憶部34から取得する。背景画像記憶部34には、音楽のムードに適した背景画像が格納されており、リフレクション画像生成部26は、ユーザの選択したチャネルにふさわしい背景画像を選択する。背景画像記憶部34は例えばハードディスクドライブ334の一部として実現されており、リフレクション画像生成部26は、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0058】
リフレクション画像生成部26は、ジャケット画像記憶部36から過去から現在まで配信された音楽のジャケット画像を取得し、オブジェクトデータ記憶部38から各ジャケットのオブジェクトの3次元仮想空間内の位置情報を取得する。また、リフレクション画像生成部26は、カメラ移動制御部16からカメラの位置と向きの情報を取得する。
【0059】
リフレクション画像生成部26は、各ジャケットの位置情報にもとづいて、カメラ位置から見た場合の過去から現在までのジャケットの画像を生成し、生成された画像を背景画像に合成し、3次元画像を生成する。これにより、過去から現在までのジャケットの背景には現在配信されている音楽にふさわしい背景画像が表示される。過去から現在までのジャケットが水面に浮かんでいるような印象を与えるように、リフレクション画像生成部26は、水面を表す画像をジャケットの並びの下側に表示し、背景画像をその水面の画像に映し込む。さらに、リフレクション画像生成部26は、水面の画像に各ジャケットの画像も映し込む処理を実行する。これにより、ジャケットの並びの下側には、背景とジャケット画像が映り込んだリフレクション画像が表示される。
【0060】
パーリンノイズ生成部28は、ジャケットの並びの下側に表示される水面を表す画像に対して、パーリンノイズによる揺らぎを発生させる。パーリンノイズ生成部28は、パーリンノイズのパラメータとして、チャネル選択部24により選択されたチャネルの情報、音楽再生部22により生成された音楽データ、オブジェクト移動制御部18により供給されるジャケットオブジェクトの動き情報を用いる。パーリンノイズ生成部28は、リフレクション画像生成部26と同様に、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0061】
パーリンノイズ生成部28は、音楽のムードの種別を示すチャネル情報を参照して、たとえば、音楽のムードが「アップビート」であれば、ノイズが大きくなるように、音楽のムードが「リラックス」であれば、ノイズが小さくなるようなノイズパラメータを設定する。また、パーリンノイズ生成部28は、再生される音楽のビートの情報を用いて、ビートが発生するたびに、ノイズが大きくなるようにノイズパラメータを設定する。また、パーリンノイズ生成部28は、ジャケットのオブジェクトが動いた場合に、その動いたジャケットの位置の周辺においてノイズが大きくなるようにノイズパラメータを設定する。
【0062】
パーリンノイズ生成部28により、ジャケットが浮かぶ水面の画像に揺らぎが加えられ、あたかも水面が揺れて波打っているような印象を与えることができる。また、この水面の揺れは、音楽のジャンルやムードによって違ったり、音楽のビートに連動したり、ジャケットオブジェクトの動きに連動するため、ある種の躍動感をユーザに提供することができる。
【0063】
図5は、上記の構成のクライアント10による画像表示手順を説明するフローチャートである。
【0064】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信されている音楽ストリームを受信し(S10)、音楽再生部22が受信された音楽ストリームを再生する(S12)。
【0065】
ジャケット画像受信部12は、現在配信されている音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信して保存する(S14)。
【0066】
リフレクション画像生成部26は、過去から現在まで配信された音楽のジャケット画像を3次元空間に配置し、受信中のチャネルに適した背景画像に合成して3次元表示する(S16)。リフレクション画像生成部26は、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面に背景画像やジャケット画像を映り込ませるリフレクション処理を行う(S18)。さらに、パーリンノイズ生成部28は、水面に揺らぎを加えることにより、音楽のビートなどに連動した波打ち効果を与える(S20)。
【0067】
ユーザは、グラフィカルユーザインタフェースを介して、水面に浮かぶ過去に配信された音楽のジャケット画像をブラウジングする(S22)。ブラウジングしながら、ユーザが特定のジャケット画像を選択すると、そのジャケット画像に対応する音楽ストリームの一部が試聴の目的で再生される(S24)。ユーザは試聴した音楽ストリームを正式に購入することもできる。
【0068】
ブラウジングの最中に、新しい音楽ストリームが配信されると、ステップS10に戻り、新しい音楽ストリームの再生され、その新しい音楽のジャケット画像が新たに3次元表示される。
【0069】
以下、クライアント10の表示装置の画面例を図を参照しながら説明する。
【0070】
図6は、クライアント10のテレビジョンモニタ204に表示されるインターネットラジオのチャネルの選択画面の例である。9枚の画像100a〜100iは、9チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときにテレビジョンモニタ204に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0071】
ユーザはコントローラ202などを操作して、9枚の画像100a〜100iのいずれかを選択することで、対応するチャネルを選択することができる。ここでは、ユーザは中央の画像100eを選択しており、画像100eは他の画像よりもやや大きく表示される。また、テレビジョンモニタ204の下部には選択した画像100eに対応するチャネルのムードが文字で表示される。ここでは「アップビート」(符号102)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図7Aの画面に移る。また、チャネルの種類が9種類よりも多い場合には、ユーザは例えばコントローラのアナログスティック218を傾倒操作するなどによって画面をスクロールし、新たなチャネルに対応する画像を表示させることができる。
【0072】
図7Aは、ユーザが選択したチャネルにおいて現在配信中の音楽が再生されているときの通常画面の例である。テレビジョンモニタ204には、カメラ位置から見た、3次元仮想空間内のジャケットの画像110a〜110gが表示されている。過去に配信された音楽のジャケットは現在選択しているチャネルとは関係なく、奥から配信順に配置されており、現在選択しているチャネルにて配信中の音楽のジャケットは最も手前に表示されている。テレビジョンモニタ204に左下には、現在配信中の音楽の曲名「G」(符号132)とアーティスト名「g」(符号134)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Gで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。
【0073】
ジャケット画像110a〜110gの背後には、選択されたチャネルに対応する背景画像(符号120)が表示されている。ジャケット画像110a〜110gの並びは水面に浮かんでおり、水面を表す画像には背景画像120が映り込んでいる(符号122)ほか、各ジャケットの画像も映り込んでいる(符号112a〜112g)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0074】
現在配信中の音楽の再生が終わり、現在選択しているチャネルの新しい音楽が入ってくると、図7B、図7Cのように画面が推移する。音楽Gの配信が終わり、新しい音楽Hが受信されたとき、図7Bに示すように、以前の音楽Gのジャケット画像110gは後方に下がり、新しい音楽Hのジャケット画像110hがテレビジョンモニタ204に向かって右側から手前に入ってくる。そして、図7Cに示すように、新しい音楽Hのジャケット画像110hが、以前の音楽Gのジャケットがあった位置に配置され、以前の音楽Gのジャケット画像を含め、過去のジャケット画像110a〜110gは配信順に新しい音楽Hのジャケット画像110hの背後に表示される。テレビジョンモニタ204の左下には、新しい音楽Hの曲名「H」とアーティスト名「h」が表示される(符号132、134)。
【0075】
図8A〜図8Cは、図7A〜図7Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。3次元仮想空間はGPU302で処理される、テレビジョンモニタ204に表示すべき画像を計算するために仮想に設定される空間である。
【0076】
図8Aは、図7Aの初期画面が生成されるときの3次元仮想空間を示す。3次元仮想空間を上側から見ており、符号140で示す位置にカメラがある。過去に配信された音楽A〜Fのジャケットのオブジェクトは、符号110a〜110fで示される位置に配置されている。現在配信中の音楽Gのジャケットのオブジェクトは、カメラ110gから見て最も手前の位置に配置されている。カメラから見た視野内に過去から現在までの音楽A〜Gのジャケットがすべて見えており、ジャケットの背後には背景画像が見えている。
【0077】
図8Aの位置関係において3次元画像が生成されると、図7Aのように、現在配信中の音楽Gのジャケットがもっとも手前に表示され、過去の音楽A〜Fのジャケットはその後ろに古いものほど遠くに表示される。また、ジャケットの背後には背景画像が描画される。さらに、リフレクション処理とパーリンノイズ処理により、過去から現在までのジャケット画像の並びの下側には、水面を表す揺らぎのあるリフレクション画像が描画される。
【0078】
図8Bは、図7Bの画面が生成されるときの3次元仮想空間を示す。新しい音楽Hのジャケットのオブジェクトが、カメラに非常に近い符号110hで示される位置に入ってくる。このとき、一つ前の音楽Gのジャケットのオブジェクトは符号110gで示される位置に後退する。この位置関係でカメラから見た3次元画像を生成すると、図7Bに示すように、一つ前の音楽Gのジャケット画像が後方に退き、新しい音楽Hのジャケット画像が大きく手前に描画される。
【0079】
図8Cは、図7Cの画面が生成されるときの3次元仮想空間を示す。新しい音楽Hのジャケットのオブジェクトは、符号110hで示すように、一つ前の音楽Gのジャケットのオブジェクトの元の位置に移動する。音楽Gのジャケットのオブジェクトは音楽Fのジャケットのオブジェクトの位置に移動し、音楽Fのジャケットのオブジェクトは音楽Eのジャケットのオブジェクトの位置に移動するといった具合に、過去のジャケットのオブジェクトは順次押し出されて後方に移動していく。この位置関係でカメラから見た3次元画像を描画すると図7Cのようになる。
【0080】
図9A〜図9Cは、過去の音楽のジャケット画像をサーチするときの画面例を示す。ユーザはコントローラ202の方向キー216などを操作することで、過去の音楽のジャケット画像をサーチすることができる。図9Aに示すように、テレビジョンモニタ204には、ユーザが見易いようにジャケット画像が水面上に重なりなく表示され、コントローラの方向キー216を押し続けると、ジャケット画像の並びが水面上を符号150で示す横方向に移動する。ユーザはジャケットの画像を閲覧しながら、目的のジャケットの画像が中央に来たときに方向キー216の押し下げをやめる。ユーザが水面上を動くジャケットを閲覧しているとき、ジャケットの動きに応じて水面が波打つようにパーリンノイズが加えられてもよい。
【0081】
図9Bは、ユーザが音楽Eのジャケットが中央に来たときに方向キー216の押し下げをやめたときの画面例を示す。音楽Eのジャケット画像110eは少し手前に描画され、テレビジョンモニタ204の左下には曲名「E」とアーティスト名「e」が表示される(符号132、134)。このとき、音楽Eは、たとえば最初の30秒など一部が試聴できるが、全部を聴くことはできないように制限がかかる。クライアント10のストリームデータ記憶部40には、過去に配信された音楽のデータを少なくとも一部が保存されており、そのデータを用いて、過去の音楽Eを再生してユーザに試聴させることができる。過去に配信された必要な音楽のデータがストリームデータ記憶部40から既に消去されている場合は、クライアント10は、過去に配信された音楽の履歴情報を参照して、ストリーミングサーバ50に必要な音楽のストリームデータをリクエストして取得する。そして、取得したストリームの一部を再生してユーザに試聴させる。
【0082】
図9Bの状態でユーザがコントローラ202の○ボタン224などを押すと、音楽Eに決定され、図9Cに示すように、音楽Eのジャケット画像110eは、過去の音楽のジャケットの並びを外れて、手前に大きく描画される。音楽Eのジャケット画像110eが手前に移動する過程で、ジャケット画像の下部で水面が波打つようにパーリンノイズが加えられてもよい。テレビジョンモニタ204の右下には、曲名「E」とアーティスト名「e」が表示され(符号132、134)、その右には購入を促すボタンが表示される(符号136)。ユーザが購入を促すボタンを押すと、クライアント10から音楽販売サイト60へ音楽Eを特定する情報が送信される。クライアント10は音楽販売サイト60に接続され、テレビジョンモニタ204等に音楽販売サイト60が表示される。ユーザは音楽販売サイト60において音楽EのCD/DVDを購入することができる。
【0083】
通常、インターネットラジオでは過去に配信された音楽は再び聴くことはできないが、本実施の形態では、過去に配信された音楽のジャケット画像をユーザがサーチし、試聴した上で購入することができる。
【0084】
図10Aは、過去の音楽のジャケットをサーチする図9Aの画面が生成されるときの3次元仮想空間オブジェクトの位置関係を示す。ジャケット画像が重なって表示されないように、カメラの位置を過去の音楽のジャケットのオブジェクトの位置に近づける。そして、カメラの位置を固定して、ユーザのコントローラ202の方向キー216の操作に応じて、過去の音楽A〜Iのジャケットのオブジェクト(符号110a〜110i)を符号152で示す方向に仮想空間内を移動させる。これにより、図9Aに示すようにジャケット画像が横方向に動いて表示される。このとき、ジャケットのオブジェクトの動きに応じてパーリンノイズを発生させてリフレクション画像に揺らぎを与えれば、ジャケットによって波が打っているような視覚効果を与えることができる。
【0085】
図9Aのサーチ画面を生成する別の方法として、過去の音楽のジャケットのオブジェクトは動かさずに、ユーザのコントローラ202の方向キー216の操作に応じてカメラを符号154で示す方向に移動させてもよい。これにより、視点が横方向に移動することになり、相対的には、図9Aに示すようにジャケット画像が横方向に動いて表示される。
【0086】
図10Bは、選択した音楽のジャケットが手前に大きく表示される図9Cの画面が生成されるときの3次元仮想空間におけるオブジェクトの位置関係を示す。選択された音楽Eのジャケットのオブジェクトは、符号110eで示すように、カメラに近い位置に移動する。また、音楽Eの曲名、アーティスト名、および購入ボタンのテクスチャのオブジェクト111が音楽Eのジャケットのオブジェクトの横に配置される。この位置関係で描画された3次元画像が図9Cである。
【0087】
以上、実施の形態にかかるインターネットラジオシステムにおいて、順次配信される音楽の再生、そのジャケットを3次元仮想空間内に表示する画像処理に関する構成、およびジャケットをブラウズするためのユーザインタフェースについて説明した。クライアント10は、音楽販売サイト60において購入し、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データを再生するためのメディアプレイヤーのインターフェースも持つ。このメディアプレイヤーは音楽販売サイト60において購入した音楽ファイルのみならず、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データであれば再生可能である。また、音楽ファイルにジャケット画像が埋め込まれている場合には、メディアプレイヤーは埋め込まれたジャケット画像をその音楽ファイルのジャケット画像として用いることもできる。以下、このメディアプレイヤーのインターフェースについて説明する。
【0088】
図11は、クライアント10のテレビジョンモニタ204に表示されるメディアプレイヤーのチャネルの選択画面の例である。10枚の画像150a〜150jは、10チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど、音楽を解析して分類した複数の音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときにテレビジョンモニタ204に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0089】
ユーザはコントローラ202を操作して、10枚の画像150a〜150jのいずれかを選択することで、対応するチャネルを選択することができる。また、チャネルが10種類以上(例えば前述の12種類)ある場合には、ユーザはコントローラ202を操作することで画像をスクロールし、図示していない他のチャネルに対応する画像を選択することもできる。ここでは、ユーザは中央下の画像150hを選択しており、画像150hは他の画像よりもやや大きく表示される。また、テレビジョンモニタ204の下部には選択した画像150hに対応するチャネルのムードが文字で表示される。ここでは「リラックス」(符号152)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図12Aの画面に移る。
【0090】
なお、図示はしていないが、チャネルの選択画面においては、前回メディアプレイヤーを終了する直前に再生していたアルバムのジャケット画像を背景に薄く表示する構成としてもよい。
【0091】
図12Aは、ユーザが選択したチャネルにおいてハードディスクドライブ334等ローカルなストレージに記憶された音楽が再生されているときの通常画面の例である。テレビジョンモニタ204には、仮想のカメラ位置から見た、3次元仮想空間内に5種類のジャケット画像160a〜160eが表示されている。これらのジャケットは、例えば音楽データに埋め込まれているジャケットのうち、現在選択しているチャネルに分類されるジャケット画像がランダムに配置されている。また、現在再生中の音楽のジャケットは最も手前に表示されている。テレビジョンモニタ204の右下には、現在配信中の音楽の曲名「A」(符号170)とアーティスト名「a」(符号172)およびアルバム名α(符号174)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Eで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。なお、ジャケット画像の配列はランダムの他、例えば購入した順や五十音順、お気に入りの順など任意に変更することができる。
【0092】
ジャケット画像160a〜160eの背後には、選択されたチャネルに対応する背景画像(符号180)が表示されている。ジャケット画像160a〜160eの並びは水面に浮かんでおり、水面を表す画像には背景画像160が映り込んでいる(符号164)ほか、各ジャケットの画像も映り込んでいる(符号162a〜162e)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0093】
テレビジョンモニタ204の下側にはコントローラ202の方向キー216(符号166a)、セレクトボタン240(符号166b)、スタートボタン238(符号166c)、△ボタン230(符号266d)をそれぞれ表すアイコンが表示される。アイコンに対応するコントローラ202のボタンを押下操作をすることにより、音楽をお気に入りから削除したり、選択するチャネルの変更、再生の一時停止、オプションの表示をしたりすることができる。これらは「お気に入りから削除」(符号168a)、「チャンネル変更」(符号168b)、「一時停止」(符号168c)、「オプション」(符号168d)という文字としてアイコンに隣接してそれぞれ表示される。
【0094】
再生中の音楽Aの再生が終わると、図12Bのように画面が推移する。図12Bに示すように、音楽Aのジャケット画像160aは後方に下がり、音楽Bのジャケット画像160bが押し出されるようにして拡大表示される。そして、図12Bに示すように、新しい音楽Bのジャケット画像160bが、以前の音楽Aのジャケットがあった位置に配置され、テレビジョンモニタ204の左下には、新しい音楽Bの曲名「B」とアーティスト名「b」およびアルバム名「β」が表示される(符号190、192、194)。
【0095】
前述のインターネットラジオシステムのインターフェースでは、再生が終わった音楽のジャケット画像は、現在再生中の音楽のジャケット画像のひとつ後方に下がる形で表示される(図7Cにおける符号110g)。これに対し、メディアプレイヤーのインターフェースでは、再生が終わった音楽のジャケット画像は、現在選択しているチャネルに分類されるジャケット画像列の最後尾に配置される(図12Bにおける160a)。
【0096】
例えば、現在選択しているチャネルに分類されるジャケット画像が「A、B、C、D、E」の5種類で、それらが「A、B、C、D、E」の順で配置されている場合を考える。楽曲Aの再生が終わると、ジャケット配置は「B、C、D、E、A」の順となり、楽曲Bの再生が終わると、ジャケット配置は「C、D、E、A、B」の順となる。以後、ジャケットの配置は循環的に変更される。このことにより、現在選択しているチャネルに分類されるジャケット画像の数が少ない場合にも、インターフェース上に表示される音楽のジャケット画像が残らなくなるという問題を回避することができる。
【0097】
次に、本発明の別の実施の形態に係る携帯型電子機器400を説明する。
【0098】
図13は、携帯型電子機器400の外観を示す。携帯型電子機器400は動画、静止画、音楽などのデジタルコンテンツを再生できるほか、ゲームプログラムなどのコンテンツを実行することができる。各コンテンツは、携帯型電子機器400に着脱できる外部記録媒体から主に読み出される。本実施の形態における外部記録媒体は、小型の光ディスク402とメモリカード426である。小型光ディスク402およびメモリカード426は、それぞれ携帯型電子機器400に設けられた図示しない駆動装置に装填される。小型光ディスク402は、音楽データや静止画データはもちろんのこと、映画などの比較的データサイズの大きな動画データを格納することができる。メモリカード426は、デジタルカメラや携帯電話にも着脱できる小型のメモリカードであり、静止画データ、動画データ、音声データなど、ユーザ自身が他の機器などで作成したデータや他の機器との間で受け渡しされるデータが主に格納される。
【0099】
携帯型電子機器400には、液晶ディスプレイ404と、十字キー416、アナログスティック418、ボタンキー420などのキーが設けられている。ユーザは携帯型電子機器400の左右端を両手で把持し、主に左手の親指で十字キー416またはアナログスティック418を用いて上下左右の方向を指示し、主に右手の親指でボタンキー420を用いて各種の操作を指示する。ホームボタン436は、十字キー416やボタンキー420と異なり、携帯型電子機器400の左右端を両手で把持したときにいずれかの指で押下しにくい位置に設けられ、誤操作の防止が図られている。液晶ディスプレイ404には、グラフィカルユーザインタフェースによるメニュー画面および各コンテンツの再生画面が表示される。また、携帯型電子機器400には、USBポート、無線LAN通信の機能が搭載されており、これらのポートまたは通信機能を介して他の装置との間でデータを送受信する。さらに、赤外線ポートを備え、赤外線通信を介して他の装置との間でデータを送受信する構成を備えてもよい。
【0100】
また、携帯型電子機器400は、セレクトボタン440、スタートボタン438等を備えている。スタートボタン438は、ゲーム開始や電子メール画面の表示開始、映画や音楽の再生開始、一時停止などをユーザが指示するためのボタンである。セレクトボタン440は、液晶ディスプレイ404上に表示されたメニュー表示の選択等をユーザが指示するためのボタンである。
【0101】
図14は、携帯型電子機器400の内部回路構成を図示したものである。
【0102】
携帯型電子機器400は、メインCPU500とGPU502と、入出力プロセッサ504と、光ディスク再生部506と、メインメモリ508と、マスクロム510と、サウンドプロセッサ512とを基本構成として備える。メインCPU500は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU502は、画像処理を行う。入出力プロセッサ504は、外部と装置内部との間のインターフェース処理や下位互換性を保つための処理をする。光ディスク再生部506は、アプリケーションプログラムやマルチメディアデータが記録されているUMD等の光ディスクを再生する。メインメモリ508は、メインCPU500のワークエリアや光ディスクから読み出されたデータを一時的に格納するバッファとして機能する。マスクロム510は、主にメインCPU500や入出力プロセッサ504が実行するオペレーティングシステムプログラムを格納している。サウンドプロセッサ512は、音声信号を処理する。
【0103】
また、この携帯型電子機器400は、UMDプロセッサ514と、光ディスク再生ドライバ516およびメカコントローラ518をも有している。UMDプロセッサ514は、光ディスク再生部506によりUMDから読み出されてRFアンプ528で増幅されたディスク再生信号に対して、例えば誤り訂正処理(例えばCIRC処理)や伸張復号化処理等を施すことにより、UMDに記録されたデータを再生(復元)する。光ディスク再生ドライバ516及びメカコントローラ518は、光ディスク再生部506のスピンドルモータの回転制御、光ピックアップのフォーカス/トラッキング制御、ディスクトレイのローディング制御等を行う。
【0104】
これらの各部は、主にバスライン522、524等を介してそれぞれ相互に接続されている。なお、メインCPU500とGPU502は、専用バスで接続されている。また、メインCPU500と入出力プロセッサ504はSBUSにより接続されている。入出力プロセッサ504とUMDプロセッサ514、マスクロム510、サウンドプロセッサ512はSSBUSにより接続されている。
【0105】
メインCPU500は、マスクロム510に記憶されているメインCPU用のオペレーティングシステムプログラムを実行することにより、携帯型電子機器400の全動作を制御する。また、メインCPU500は、UMD等の光ディスクから読み出されてメインメモリ508にロードされたり、無線LAN530を介してダウンロードされた、各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0106】
入出力プロセッサ504は、マスクロム510に記憶されている入出力プロセッサ用のオペレーティングシステムプログラムを実行することにより、ユーザの操作に応じたコントローラ540からの信号やゲームの設定、電子メールの内容やアドレス、WebサイトのURL等を記憶するメモリカード326からのデータ等の入出力、その他、USB接続端子542や無線LAN530等におけるデータの入出力を制御する。ここでコントローラ540とは、十字キー416、アナログスティック418、ボタンキー420などのユーザが携帯型電子機器400を制御するためのキーの総称である。
【0107】
GPU502は、座標変換等の処理を行うジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU500からの描画指示に従って描画を行い、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU502は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を実行する。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU502は、この作成した画像に対応するビデオ信号を出力する。
【0108】
サウンドプロセッサ512は、ADPCM(Adaptive Differential Pulse Code Modulation)復号機能、オーディオ信号再生機能、信号変調機能等を備えている。ADPCM復号機能とは、当該サウンドプロセッサ512に内蔵或いは外付けされた図示しないサウンドバッファに記憶されている波形データを読み出すことで、効果音等のオーディオ信号を再生して出力する機能である。信号変調機能とは、上記サウンドバッファに記憶されている波形データから、楽音や効果音等のオーディオ信号を発生する、所謂サンプリング音源としても動作する。
【0109】
以上のような構成を有する携帯型電子機器400は、例えば電源が投入されると、マスクロム510からメインCPU500用及び入出力プロセッサ504用のオペレーティングシステムプログラムが読み出される。メインCPU500と入出力プロセッサ504は、それぞれ対応したオペレーティングシステムプログラムを実行する。これにより、メインCPU500は、携帯型電子機器400の各部を統括的に制御する。また、入出力プロセッサ504は、コントローラ540やメモリカード526等との間の信号の入出力を制御する。また、メインCPU500は、オペレーティングシステムプログラムを実行すると、まず動作確認等の初期化を行う。つづいて光ディスク再生部506を制御して、光ディスクに記録されているゲーム等のアプリケーションプログラムを読み出し、メインメモリ508にロードする。そのゲームアプリケーションプログラムを実行する。このゲームアプリケーションプログラムの実行により、メインCPU500は、入出力プロセッサ504を介してコントローラ540から受け付けたユーザの指示に応じて、GPU502やサウンドプロセッサ512を制御し、画像の表示や効果音、楽音の発生を制御する。
【0110】
なお、例えば光ディスクに記録された映画等を再生する場合、メインCPU500は、入出力プロセッサ504を介してコントローラ540から受け付けたユーザからの指示(コマンド)にしたがってGPU502やサウンドプロセッサ512を制御し、光ディスクから再生された映画の映像の表示や効果音や音楽等の発生を制御する。GPU502の処理結果を液晶ディスプレイ404に表示し、サウンドプロセッサ512で生成された効果音や音楽等はスピーカ544にて再生される。
【0111】
図4のクライアント10は、前述のゲームシステムのゲーム機200に実現される機能構成である。インターネットラジオシステムの各機能ブロックは、ゲーム機200の主にメインCPU300やGPU302によって実行される、メインメモリ308にロードされたアプリケーションプログラムのモジュールにより実現される。
【0112】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信中の音楽ストリームのデータを無線LAN530経由で受信してストリームデータ記憶部40に蓄積する。ストリームデータ記憶部40は、例えばメモリカード426の一部として実現される。
【0113】
ストリームデータ記憶部40はメモリカード426の記憶容量の許す範囲で、過去に配信された音楽ストリームのデータが保存される。メモリカード426の許容容量を超えると、古いものから順に消去される。
【0114】
音楽再生部22は、ストリームデータ記憶部40からストリームデータを読み出し、サウンドプロセッサ512において復号処理をして再生する。
【0115】
ジャケット画像受信部12は、現在配信中の音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信してメモリカード426の一部としてのジャケット画像記憶部36に保存する。
【0116】
クライアント10は、現在配信中の音楽のジャケット画像だけでなく、過去に配信された音楽のジャケット画像も、液晶ディスプレイ404に表示する。過去から現在までに配信された音楽のジャケット画像を表示するにあたって、3次元仮想空間に音楽CD/DVDのジャケットがオブジェクトとして配置されているとして、仮想的なカメラ位置から視線方向に見た場合の、過去から現在までに配信された音楽のジャケット画像の3次元画像を生成する。これは例えばCPU500からの命令によりGPU502において計算して実現する。
【0117】
また、クライアント10は、現在配信されている音楽のジャンルやムードなどの種別に適した背景画像を液晶ディスプレイ404等に表示するとともに、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面を表す画像に背景画像やジャケット画像が映り込んだリフレクション画像を生成する。そして、リフレクション画像にパーリンノイズの揺らぎを加えることで、音楽の種別や音楽のビートに合わせて水面が波打つような印象を与える。
【0118】
さらに、クライアント10は、過去に配信された音楽のジャケット画像をサーチするためのユーザインタフェースを備える。3次元仮想空間内に配信順に配置されたジャケットに対して、例えばアナログスティック418の傾倒操作に応じて仮想的なカメラを移動させるか、あるいは、カメラの位置は固定してジャケットの方を移動させることで、ユーザはジャケット画像をブラウズして、目的のジャケット画像を例えばボタンキー420の○ボタンを押下することで選択する。選択されたジャケット画像に対して、そのCD/DVDを購入するためのユーザインタフェースがさらに提供される。
【0119】
ユーザ操作取得部14は、ユーザからジャケットの探索などのコントローラ540からの操作コマンドを受け付ける。
【0120】
カメラ移動制御部16は、ユーザの操作コマンドに応じて仮想的なカメラの位置や向きを変える。仮想的なカメラの位置と向きは、3次元仮想空間を見るユーザの視点位置と視線方向に対応する。
【0121】
オブジェクト移動制御部18は、ユーザの操作コマンドに応じてジャケットのオブジェクトを移動させる。たとえば、ユーザが特定のジャケットをコントローラ540を通じて選択すると、オブジェクト移動制御部18は、そのジャケットのオブジェクトを仮想空間内でカメラに近い位置に移動させる。ジャケットのオブジェクトの位置情報はメモリカード426の一部としてのオブジェクトデータ記憶部38に記憶される。オブジェクトデータ記憶部38には、ジャケットのオブジェクト以外に、音楽の曲名やアーティスト名を表示するためのテクスチャのオブジェクトも記憶される。
【0122】
チャネル選択部24は、ストリーミングサーバ50が提供しているラジオ放送のチャネルの選択をユーザからコントローラ540を通じて受け付ける。チャネル選択部24により選択されたチャネルの情報は例えば無線LAN530を通じてストリーミングサーバ50に送信される。チャネルは、一例として、音楽のムードで分けられている。CPU500を用いて音楽の成分を解析することにより、音楽はアップビートやリラックスなどのいくつかの種類のジャンルに分類される。
【0123】
3次元画像生成部30は、カメラ位置から見た3次元仮想空間内のジャケットの画像を背景画像に合成した3次元画像を生成する。表示部32は、3次元画像生成部30により生成された3次元画像を液晶ディスプレイ404に表示する。
【0124】
3次元画像生成部30は、リフレクション画像生成部26とパーリンノイズ生成部28を含む。3次元画像生成部30は、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。
【0125】
背景画像記憶部34は例えばメモリカード426の一部として実現されており、リフレクション画像生成部26は、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。パーリンノイズ生成部28は、リフレクション画像生成部26と同様に、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。
【0126】
クライアント10は、音楽販売サイト60において購入し、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データを再生するためのメディアプレーヤのインターフェースも持つ。このメディアプレイヤーは音楽販売サイト60において購入した音楽ファイルのみならず、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データであれば再生可能である。また、音楽ファイルにジャケット画像が埋め込まれている場合には、メディアプレイヤーは埋め込まれたジャケット画像をその音楽ファイルのジャケット画像として用いることもできる。以下、このメディアプレイヤーのインターフェースについて説明する。
【0127】
図11は、クライアント10の液晶ディスプレイ404に表示されるメディアプレイヤーのチャネルの選択画面の例である。10枚の画像150a〜150jは、10チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど、音楽を解析して分類した複数の音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときに液晶ディスプレイ404に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0128】
ユーザはコントローラ540を操作して、10枚の画像150a〜150jのいずれかを選択することで、対応するチャネルを選択することができる。また、チャネルは10種類以上(例えば前述の12種類)ある場合には、ユーザはコントローラ540を操作することで画像をスクロールし、図示していない他のチャネルに対応する画像を選択することもできる。ここでは、ユーザは中央下の画像150hを選択しており、画像150hは他の画像よりもやや大きく表示される。また、液晶ディスプレイ404の下部には選択した画像150hに対応するチャネルのムードが文字で表示される。ここでは「リラックス」(符号152)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図12Aの画面に移る。
【0129】
図12Aは、ユーザが選択したチャネルにおいてハードディスクドライブ334等ローカルなストレージに記憶された音楽が再生されているときの通常画面の例である。液晶ディスプレイ404には、仮想のカメラ位置から見た、3次元仮想空間内に5種類のジャケットの画像160a〜160eが表示されている。これらのジャケットは、例えば音楽データに埋め込まれているジャケットのうち、現在選択しているチャネルに分類されるジャケット画像がランダムに配置されている。また、現在再生中の音楽のジャケットは最も手前に表示されている。液晶ディスプレイ404の右下には、現在配信中の音楽の曲名「A」(符号170)とアーティスト名「a」(符号172)およびアルバム名α(符号174)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Eで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。なお、ジャケット画像の配列はランダムの他、例えば購入した順や五十音順、お気に入りの順など任意に変更することができる。
【0130】
ジャケット画像160a〜160eの背後には、選択されたチャネルに対応する背景画像(符号180)が表示されている。ジャケット画像160a〜160eの並びは水面に浮かんでおり、水面を表す画像には背景画像160が映り込んでいる(符号164)ほか、各ジャケットの画像も映り込んでいる(符号162a〜162e)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0131】
液晶ディスプレイ404の下側には十字キー416(符号166a)、セレクトボタン440(符号166b)、スタートボタン438(符号166c)、ボタンキー420の△ボタン(符号266d)をそれぞれ表すアイコンが表示される。アイコンに対応するコントローラ202のボタンを押下操作をすることにより、音楽をお気に入りから削除したり、選択するチャネルの変更、再生の一時停止、オプションの表示をしたりすることができる。これらは「お気に入りから削除」(符号168a)、「チャンネル変更」(符号168b)、「一時停止」(符号168c)、「オプション」(符号168d)という文字としてアイコンに隣接してそれぞれ表示される。
【0132】
上記の説明ではゲーム機200や携帯型電子機器400を用いてコンテンツ再生装置100の機能を実現することについて説明したが、これは汎用のPC(パーソナルコンピュータ)を用いても実現できる。以下、PCを用いてクライアント10の機能を実現する場合について説明する。
【0133】
図15は汎用的なPCの内部回路構成を図示したものである。
【0134】
汎用的なPCは、メインCPU600とグラフィックプロセッサユニット(GPU)602と、入力部604と、出力部605と、ドライブ614と、メインメモリ608と、ロム610とを基本構成として備える。メインCPU600は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU602は、画像処理を行う。
【0135】
これらの各部は、主にバスライン622等を介してそれぞれ相互に接続されている。バスライン622には、さらに、入出力インタフェースが接続されている。入出力インタフェースには、ハードディスクや不揮発性のメモリなどよりなる記憶部634、ディスプレイやスピーカなどよりなる出力部605、キーボードやマウス、マイクロホンなどよりなる入力部604、USB、IEEE1394等のインタフェースや、有線LAN、無線LANのネットワークインタフェースなどよりなる通信部630、磁気ディスク、光ディスク、或いは半導体メモリなどのリムーバブル記録媒体626を駆動するドライブ614が接続される。
【0136】
メインCPU600は、ハードディスク等に記録されているオペレーティングシステムプログラムを実行することにより、PCの全動作を制御する。また、メインCPU600は、CD、DVD、BD等の光ディスクから読み出されてメインメモリ608にロードされた、あるいは通信ネットワークを介してダウンロードされた、各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0137】
またメインCPU600は、入出力インタフェース632を介して得られるユーザの操作に応じた入力部604からの信号や、リムーバブル記録媒体626等からのデータの入出力、その他、通信部630におけるデータの入出力やドライブ614を制御する。
【0138】
GPU602は、座標変換等を処理するジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU600からの描画指示に従って描画を行い、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU602は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算等する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を行う。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU602は、この作成した画像に対応するビデオ信号を出力する。
【0139】
以上のような構成を有するPCは、例えば電源が投入されると、記憶部634の一部である不揮発メモリからBIOSを読み込んで初期化を実行し、続いてオペレーティングシステムプログラムが読み出され、メインCPU600はオペレーティングシステムプログラムを実行する。これにより、メインCPU600は、PCの各部を統括的に制御する。
【0140】
図4のクライアント10は、主にメインCPU600とGPU602によって実行される、メインメモリ608にロードされたアプリケーションプログラムのモジュールにより実現される。
【0141】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0142】
上記の説明では、ジャケット画像の並びの下側の水面の画像は、背景画像を反転させたテクスチャにジャケット画像を映り込ませたリフレクション画像にパーリンノイズの揺らぎを加えたものであったが、これ以外のリフレクション画像を用いてもよい。たとえば、デザイナがリフレクション画像の方もテクスチャとしてあらかじめ作成してもよい。デザイナが作成したリフレクション画像にジャケット画像を映り込ませ、パーリンノイズの揺らぎを加える。また、湖などの実写画像をリフレクション画像として用いてもよい。その場合、湖の実写画像にジャケット画像を映り込ませ、パーリンノイズを加える。
【0143】
さらに、ユーザが背景画像となる写真などの画像を提供してもよい。その場合、ユーザから提供された画像の少なくとも一部を反転することでリフレクション画像を生成し、ジャケット画像を映り込ませればよい。背景画像記憶部34に記憶された背景画像がユーザが提供したものであるかどうかを示す識別ビットを背景画像に付けてもよい。背景画像がユーザが提供したものである場合は、反転画像を生成する。また、デザイナが特別に作り込んだリフレクション画像があるかどうかを示す識別ビットを背景画像に付けてもよい。背景画像に対してリフレクション画像が存在する場合は、背景画像の反転画像を生成せずに、デザイナが作り込んだリフレクション画像を用いる。
【符号の説明】
【0144】
10 クライアント、 12 ジャケット画像受信部、 14 ユーザ操作取得部、 16 カメラ移動制御部、 18 オブジェクト移動制御部、 20 ストリームデータ受信部、 22 音楽再生部、 24 チャネル選択部、 26 リフレクション画像生成部、 28 パーリンノイズ生成部、 30 3次元画像生成部、 32 表示部、 34 背景画像記憶部、 36 ジャケット画像記憶部、 38 オブジェクトデータ記憶部、 40 ストリームデータ記憶部、 50 ストリーミングサーバ、 52 音楽データ記憶部、 60 音楽販売サイト、 70 ネットワーク、 200 ゲーム機、 400 携帯型電子機器。
【技術分野】
【0001】
この発明は、音楽配信サービスを利用する端末装置、配信された音楽に関する画像を表示する画像表示方法に関する。
【背景技術】
【0002】
音楽のストリーム配信をするサイトを利用して、インターネットで音楽を聴く機会が増えている。インターネットプロトコルを用いて音楽番組をリアルタイムで配信するインターネットラジオのサイトが多くあり、サイトに接続してチャネルを選ぶと、音楽がパーソナルコンピュータにストリーム配信され、音楽をリアルタイムで再生して聴くことができる。
【0003】
特許文献1は、音楽再生が可能なゲーム機を開示する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許第6563999号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来のインターネットラジオなどの音楽配信サービスでは、配信される音楽を受信して再生するための各種のソフトウエアが提供されているが、リアルタイムで配信される音楽の再生が主眼であり、必ずしも魅力的なユーザインタフェースは提供されていない。また、過去に配信された音楽を検索したり、試聴するためのユーザインタフェースは提供されていないのが現状である。
【0006】
本発明はこうした課題に鑑みてなされたものであり、その目的は音楽配信サービスを利用するためのユーザインタフェースを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある態様のプログラムは、順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示する機能と、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える機能とをコンピュータに実現させる。
【0008】
本発明の別の態様は、端末装置である。この装置は、再生される音楽のストリームデータとともにその音楽に関連づけられた関連画像を取得する取得部と、過去に再生された音楽に関連づけられた関連画像を現在配信中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する3次元画像生成部とを含む。前記3次元画像生成部は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える。
【0009】
本発明のさらに別の態様は、画像表示方法である。この方法は、順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示するステップと、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えるステップとを含む。
【0010】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0011】
本発明によれば、音楽配信サービスを利用するための効果的なユーザインタフェースを提供することができる。
【図面の簡単な説明】
【0012】
【図1】実施の形態に係るゲームシステムの概略構成図である。
【図2】ゲーム機の内部回路の概略構成を示すブロック回路図である。
【図3】実施の形態に係るインターネットラジオシステムの構成図である。
【図4】図3のクライアントの機能構成図である。
【図5】図3のクライアントによる画像表示手順を説明するフローチャートである。
【図6】図3のクライアントの画面に表示されるインターネットラジオのチャネルの選択画面を示す図である。
【図7A】現在配信中の音楽が再生されているときの画面を示す図である。
【図7B】新しい音楽が配信されたときの画面を示す図である。
【図7C】新しい音楽が配信されたときの画面を示す図である。
【図8A】図7Aの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図8B】図7Bの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図8C】図7Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図9A】過去の音楽のジャケット画像をサーチするときの画面を示す図である。
【図9B】過去の音楽のジャケット画像をサーチするときの画面を示す図である。
【図9C】サーチした音楽の購入画面を示す図である。
【図10A】図9Aの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図10B】図9Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。
【図11】図3のクライアントによる音楽再生用のメディアプレイヤーのチャネル選択画面を示す図である。
【図12A】メディアプレイヤーにより音楽が再生されているときの画面を示す図である。
【図12B】メディアプレイヤーにより音楽が再生されているときの画面を示す図である。
【図13】実施の形態に係る携帯型電子機器の概略構成図である。
【図14】携帯型電子機器の内部回路の概略構成を示すブロック回路図である。
【図15】汎用的なPCの内部回路構成図である。
【発明を実施するための形態】
【0013】
図1は、本発明の一実施の形態としてのゲームシステムの概略構成を示す。
【0014】
本実施の形態のゲームシステムは、ゲーム機200と、コントローラ202と、テレビジョンモニタ204とからなる。ゲーム機200は、各種のゲームの実行、電子メールの作成や編集、Webページの閲覧、映画や音楽の再生等の機能を有する。コントローラ202は、無線によってゲーム機200に接続される。テレビジョンモニタ204は、ゲーム機200と接続され、ゲーム内容やWebページ、映画等を表示すると共に音を出力する。
【0015】
[ゲーム機の概要]
ゲーム機200は、直径12cmの光ディスクに対応したディスク挿入口206やUSB接続端子208等を備えている。ディスク挿入口206はBD(ブルーレイディスク、Blu−ray Disk(商標または登録商標))やDVD−ROM、CD−ROM等の光ディスクが装填可能に構成されている。タッチセンサ210はディスクを取り出すためのセンサであり、タッチセンサ212は電源のオン/オフを行うためのセンサである。また、図示は省略するが、当該ゲーム機200の背面側には、電源スイッチ、音響映像出力端子、光ディジタル出力端子、AC電源入力端子、LANポート、HDMI端子等が設けられている。この他、IEEE1394端子を有し、IEEE1394で通信できるようにしても良い。
【0016】
ゲーム機200はマルチメディアスロットも備える。マルチメディアスロットケース214は蓋部材となっており、図示は省略するが、当該マルチメディアスロットケース214を開口するとマルチメディアスロットが露出する構造となっている。
【0017】
ゲーム機200は、ゲームや電子メール、Webブラウザ用のアプリケーションプログラムと、コントローラ202を介したユーザからの指示とに応じて、ゲームの実行や電子メールの作成、編集、受信、Webページの閲覧等のための各種処理を実行する。アプリケーションプログラムは、CD−ROM、DVD−ROM、BD等の光ディスクやハードディスクドライブ、半導体メモリ等の各種記録媒体から読み出したもの、もしくはLAN、CATV回線等の各種伝送媒体を介してダウンロードしたものの何れでも良い。
【0018】
さらに、ゲーム機200は、アプリケーションプログラムに基づくゲームの実行や電子メールの作成、編集、受信、Webページの閲覧等を実行するだけでなく、例えばCDに記録されたオーディオデータやDVD、BDに記録された映画等のビデオおよびオーディオデータを再生(デコード)可能である。またゲーム機200は、その他の各種アプリケーションプログラムに基づいて動作することも可能である。なお、DVDやBDの再生を行うためのドライバプログラムは、例えばゲーム機200に内蔵されているハードディスクドライブ334に記録されている。
【0019】
[コントローラ概要]
コントローラ202は、図示しないバッテリによって駆動され、ゲーム等を進行させる操作入力を行うための複数のボタンやキーを有して構成される。ユーザがコントローラ202のボタンやキーを操作すると、その操作入力が無線または有線によりゲーム機200に送信される。
【0020】
コントローラ202は、方向キー216、アナログスティック218と、4種の操作ボタン220が設けられている。方向キー216、アナログスティック218、操作ボタン220は、筐体上面222に設けられた入力部である。4種のボタン224、226、228、230には、それぞれを区別するために、異なる色で異なる図形が記されている。すなわち、○ボタン224には赤色の丸、×ボタン226には青色のバツ、□ボタン228には紫色の四角形、△ボタン230には緑色の三角形が記されている。図示は省略するが、コントローラ202筐体背面232には複数のLEDが設けられている。
【0021】
ユーザは左手で左側把持部234bを把持し、右手で右側把持部234aを把持して、コントローラ202を操作する。方向キー216、アナログスティック218、操作ボタン220はユーザが左側把持部234b、右側把持部234aを把持した状態で操作可能なように、筐体上面222上に設けられる。
【0022】
筐体上面222には、LED付きボタン236も設けられる。LED付きボタン236は、例えばゲーム機200にメニュー画面を表示させるためのボタンとして利用される。また、LEDの発光状態によりユーザへのメールの着信の知らせや、コントローラ202のバッテリの充電状態などを示す機能をもつ。例えば充電中は赤色、充電が終了すると緑色に点灯し、充電残存量が残り少ないときには赤色を点滅させるようにLEDを点灯させる。
【0023】
方向キー216には、例えばゲームのゲームキャラクタを画面上で上下左右等に移動させたり、電子メール作成画面上で文字入力カーソルを上下左右方向に移動させたり、Webページ閲覧中にページスクロールをしたり、画面上のカーソルを上下左右方向に移動させたりする際にユーザが操作する「上」、「下」、「左」、「右」方向指示キーが設けられている。なお、「上」、「下」、「左」、「右」方向指示キーは、上下左右の方向指示のみならず、斜め方向の方向指示にも用いられる。例えば「上」方向指示キーと「右」方向指示キーとを同時に押圧操作することで、ユーザは、右斜め上方向の方向指示をゲーム機200に与えることができる。他の方向指示キーにおいても同様であり、例えば「下」方向指示キーおよび「左」方向指示キーを同時に押圧操作することで、ユーザは、左斜め下方向の方向指示をゲーム機200に与えることができる。
【0024】
操作ボタン220は、アプリケーションプログラムによりそれぞれ異なる機能が割り付けられる。例えば、△ボタン230は、メニューの表示を指定する機能が割り付けられており、×ボタン226は、選択した項目の取り消し等を指定する機能が、○ボタン224は、選択した項目の決定等を指定する機能が、□ボタン228は、例えば目次等の表示/非表示を指定する機能が割り付けられている。
【0025】
アナログスティック218は操作軸の回転支点を中心にして任意の方向に傾倒操作が可能な回転操作子と、当該回転操作子の操作に応じた可変のアナログ値を出力する可変アナログ値出力手段とを備えている。回転操作子は、弾性部材により中立位置に復帰するように取り付けられた操作軸の先端側に取り付けられている。回転操作子は、ユーザにより傾倒操作がなされていない時には起立した状態(傾きのない状態)でそのポジションを保持(基準ポジション)する。可変アナログ値出力手段は、可変抵抗素子等を備えている。可変抵抗素子は回転操作子の操作に応じてその抵抗値が変化する。コントローラ202は、アナログスティック218の回転操作子が傾倒操作された時、基準ポジションに対する傾き量とその傾き方向に応じたXY座標上の座標値を検出し、その座標値を操作出力信号としてゲーム機200へ送る。
【0026】
またコントローラ202は、セレクトボタン240、スタートボタン238等を備えている。スタートボタン238は、ゲーム開始や電子メール画面の表示開始、映画や音楽の再生開始、一時停止などをユーザが指示するためのボタンである。セレクトボタン240は、テレビジョンモニタ204上に表示されたメニュー表示の選択等をユーザが指示するためのボタンである。
【0027】
コントローラ202は、左右の把持部234a、234b内に、振動発生機構をも備えている。振動発生機構は、例えばモータの回転軸に対して偏心した状態の重なりを備え、その重りを当該モータにて回転させることによって、コントローラ202を振動させる。この振動発生機構は、ゲーム機200からの指示に応じて動作する。コントローラ202は、当該振動発生機構を動作させることにより、ユーザの手に振動を伝える。
【0028】
[ゲーム機の内部構成]
次に、ゲーム機200の内部回路構成について説明する。
【0029】
図2は、ゲーム機の内部回路の概略構成を示すブロック回路図である。ゲーム機200は、メインCPU300とGPU(グラフィックプロセッサユニット)302と、入出力プロセッサ304と、光ディスク再生部306と、メインメモリ308と、マスクロム310と、サウンドプロセッサ312とを基本構成として備える。メインCPU300は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU302は、画像処理を行う。入出力プロセッサ304は、外部と装置内部との間のインターフェース処理や下位互換性を保つための処理を実行する。光ディスク再生部306は、アプリケーションプログラムやマルチメディアデータが記録されているBDやDVD、CD等の光ディスクを再生する。メインメモリ308は、メインCPU300のワークエリアや光ディスクから読み出されたデータを一時的に格納するバッファとして機能する。マスクロム310は、主にメインCPU300や入出力プロセッサ304が実行するオペレーティングシステムプログラムを格納している。サウンドプロセッサ312は、音声信号を処理する。
【0030】
また、このゲーム機200は、CD/DVD/BDプロセッサ314と、光ディスク再生ドライバ316と、メカコントローラ318と、ハードディスクドライブ334、カード型コネクタ(例えばPCカードスロット)320も有している。CD/DVD/BDプロセッサ314は、光ディスク再生部306によりCD/DVD/BDから読み出されてRFアンプ328で増幅されたディスク再生信号に対して、例えば誤り訂正処理(例えばCIRC(Cross Interleave Reed-Solomon Coding)処理)や伸張復号化処理等を施すことにより、それらCD/DVD/BDに記録されたデータを再生(復元)する。光ディスク再生ドライバ316及びメカコントローラ318は、光ディスク再生部306のスピンドルモータの回転制御、光ピックアップのフォーカス/トラッキング制御、ディスクトレイのローディング制御等を行う。
【0031】
また、ハードディスクドライブ334は例えば光ディスク再生部306で読み出されたアプリケーションプログラムやゲームのセーブデータを記憶、あるいは入出力プロセッサ304を介して取得した写真、動画、音楽等のデータ等を記憶する。カード型コネクタ320は、例えば通信カードや外付けハードディスクのドライブ等の接続ポートである。
【0032】
これらの各部は、主にバスライン322、324等を介してそれぞれ相互に接続されている。なお、メインCPU300とGPU302は、専用バスで接続されている。また、メインCPU300と入出力プロセッサ304はSBUSにより接続されている。入出力プロセッサ304とCD/DVD/BDプロセッサ314、マスクロム310、サウンドプロセッサ312、カード型コネクタ320、ハードディスクドライブ334はSSBUSにより接続されている。
【0033】
メインCPU300は、マスクロム310に記憶されているメインCPU用のオペレーティングシステムプログラムを実行することにより、当該ゲーム機200の全動作を制御する。また、メインCPU300は、CD、DVD、BD等の光ディスクから読み出されてメインメモリ308にロードする。また、通信ネットワークを介してダウンロードされた各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0034】
入出力プロセッサ304は、マスクロム310に記憶されている入出力プロセッサ用のオペレーティングシステムプログラムを実行することにより、ユーザの操作に応じたコントローラ202からの信号やゲームの設定、電子メールの内容やアドレス、WebサイトのURL等を記憶するメモリカード326からのデータ等の入出力を制御する。その他、入出力プロセッサ304は、USB接続端子208やイーサネット330、図示しないIEEE1394端子やPCカードスロット等におけるデータの入出力も制御する。また、図示しないPCカードスロットを介してメモリカード326に対しデータの入出力を行う。コントローラ202やメモリカードからの情報はマルチメディアスロットや無線送受信ポートを含むインタフェース332を介してやりとりする。
【0035】
GPU302は、座標変換等の処理をするジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU300からの描画指示に従って描画し、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU302は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を計算する。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU302は、この作成した画像に対応するビデオ信号を出力する。
【0036】
サウンドプロセッサ312は、ADPCM(Adaptive Differential Pulse Code Modulation)復号機能、オーディオ信号再生機能、信号変調機能等を備えている。ADPCM復号機能とは、当該サウンドプロセッサ312に内蔵或いは外付けされた図示しないサウンドバッファに記憶されている波形データを読み出すことで、効果音等のオーディオ信号を再生して出力する機能である。信号変調機能とは、上記サウンドバッファに記憶されている波形データから、楽音や効果音等のオーディオ信号を発生する、所謂サンプリング音源としても動作する。
【0037】
以上のような構成を有するゲーム機200は、例えば電源が投入されると、マスクロム310からメインCPU300用及び入出力プロセッサ304用のオペレーティングシステムプログラムが読み出される。メインCPU300と入出力プロセッサ304は、それぞれ対応したオペレーティングシステムプログラムを実行する。これにより、メインCPU300は、ゲーム機200の各部を統括的に制御する。また、入出力プロセッサ304は、コントローラ202やメモリカード326等との間の信号の入出力を制御する。また、メインCPU300は、オペレーティングシステムプログラムを実行すると、まず動作確認等の初期化処理をする。つづいて光ディスク再生部306を制御して光ディスクに記録されているゲーム等のアプリケーションプログラムを読み出し、メインメモリ308にロードした後、そのゲームアプリケーションプログラムを実行する。このゲームアプリケーションプログラムの実行により、メインCPU300は、入出力プロセッサ304を介してコントローラ202から受け付けたユーザの指示に応じて、GPU302やサウンドプロセッサ312を制御し、画像の表示や効果音、楽音の発生を制御する。
【0038】
なお、例えば光ディスクに記録された映画等を再生する場合、メインCPU300は、入出力プロセッサ304を介してコントローラ202から受け付けたユーザからの指示(コマンド)にしたがってGPU302やサウンドプロセッサ312を制御し、光ディスクから再生された映画の映像の表示や効果音や音楽等の発生を制御する。
【0039】
図3は、実施の形態に係るインターネットラジオシステムの構成図である。ストリーミングサーバ50は、音楽データ記憶部52に記憶された音楽ストリームをイーサネット330などのネットワーク70を介してクライアント10に配信する。クライアント10は、あたかもラジオ放送を受信するように、ストリーミングサーバ50から配信される音楽を受信して再生する。
【0040】
ストリーミングサーバ50の音楽データ記憶部52には、ストリーム配信する音楽のCD/DVDジャケットの画像も記憶されており、音楽ストリーム配信の開始時に当該音楽のCD/DVDジャケットの画像をクライアント10に送信する。クライアント10は、音楽ストリームを受信して再生するだけでなく、ストリーム配信される音楽に対応するCD/DVDジャケットの画像も受信して画面に表示する。なお、CD/DVDなどの媒体で販売されていない音楽については、CD/DVDジャケットの画像でなくても、音楽に関連づけられた何らかの画像を「ジャケット画像」として用いればよい。
【0041】
また、クライアント10は、ストリーム配信された音楽に対応するCD/DVDを購入を促すためのユーザインタフェースも提供する。ユーザがストリーム配信された音楽の内、気に入ったものを選択し、そのCD/DVDの購入を促すボタンを押すと、クライアント10はネットワーク70を介して音楽販売サイト60に接続され、当該音楽販売サイトにおいて当該音楽のCD/DVDを購入することができる。なお、音楽はCDやDVDのような記録媒体の形態で販売されてもよく、MP3などの圧縮符号化データの形態でダウンロード形式で販売されてもよい。
【0042】
図4は、クライアント10の機能構成図である。クライアント10は、前述のゲームシステムのゲーム機200に実現される機能構成である。インターネットラジオシステムの各機能ブロックは、ゲーム機200の主にメインCPU300やGPU302によって実行される、メインメモリ308にロードされたアプリケーションプログラムのモジュールにより実現される。
【0043】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信中の音楽ストリームのデータをイーサネット330経由で受信してストリームデータ記憶部40に蓄積する。ストリームデータ記憶部40は、例えばハードディスクドライブ334の一部として実現される。
【0044】
ストリームデータ記憶部40はハードディスクドライブ334の記憶容量の許す範囲で、過去に配信された音楽ストリームのデータが保存される。ハードディスクドライブ334が許容する容量を超えると、古いものから順に消去される。ストリームデータ記憶部40には、過去に配信された音楽の履歴情報も記憶される。履歴情報には、曲のストリームデータを特定する識別情報、曲名、アーティスト名、ジャケット画像ファイルの識別情報などが含まれる。過去の音楽ストリームがストリームデータ記憶部40から消去された場合でも、履歴情報は残っている。そのため、消去された過去の音楽ストリームが必要になった場合、履歴情報からそのストリームの識別情報を取得し、ストリーミングサーバ50にストリームの識別情報を通知してリクエストすれば、ストリームデータを再度取得することができる。
【0045】
音楽再生部22は、ストリームデータ記憶部40からストリームデータを読み出し、サウンドプロセッサ312において復号処理をして再生する。
【0046】
ジャケット画像受信部12は、現在配信中の音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信してハードディスクドライブ334の一部としてのジャケット画像記憶部36に保存する。
【0047】
クライアント10は、現在配信中の音楽のジャケット画像だけでなく、過去に配信された音楽のジャケット画像も、テレビジョンモニタ204等の画面に表示する。過去から現在までに配信された音楽のジャケット画像を表示するにあたって、3次元仮想空間に音楽CD/DVDのジャケットがオブジェクトとして配置されているとして、仮想的なカメラ位置から視線方向に見た場合の、過去から現在までに配信された音楽のジャケット画像の3次元画像を生成する。これは例えばCPU300からの命令によりGPU302において計算して実現する。
【0048】
また、クライアント10は、現在配信されている音楽のジャンルやムードなどの種別に適した背景画像をテレビジョンモニタ204等に表示するとともに、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面を表す画像に背景画像やジャケット画像が映り込んだリフレクション画像を生成する。そして、リフレクション画像にパーリンノイズの揺らぎを加えることで、音楽の種別や音楽のビートに合わせて水面が波打つような印象を与える。
【0049】
さらに、クライアント10は、過去に配信された音楽のジャケット画像をサーチするためのユーザインタフェースを備える。3次元仮想空間内に配信順に配置されたジャケットに対して、例えばコントローラ202のアナログスティック218の傾倒操作に応じて仮想的なカメラを移動させるか、あるいは、カメラの位置は固定してジャケットの方を移動させることで、ユーザはジャケット画像をブラウズして、目的のジャケット画像を例えばコントローラ202の○ボタン224を押下することで選択する。選択されたジャケット画像に対して、そのCD/DVDを購入するためのユーザインタフェースがさらに提供される。
【0050】
ジャケットを3次元仮想空間内に表示する画像処理に関する構成、およびジャケットをブラウズするためのユーザインタフェースに関する構成を詳しく説明する。
【0051】
ユーザ操作取得部14は、ユーザからジャケットの探索などのコントローラ202からの操作コマンドを受け付ける。
【0052】
カメラ移動制御部16は、ユーザの操作コマンドに応じて仮想的なカメラの位置や向きを変える。仮想的なカメラの位置と向きは、3次元仮想空間を見るユーザの視点位置と視線方向に対応する。
【0053】
オブジェクト移動制御部18は、ユーザの操作コマンドに応じてジャケットのオブジェクトを移動させる。たとえば、ユーザが特定のジャケットをコントローラ202を通じて選択すると、オブジェクト移動制御部18は、そのジャケットのオブジェクトを仮想空間内でカメラに近い位置に移動させる。ジャケットのオブジェクトの位置情報はハードディスクドライブ334の一部としてのオブジェクトデータ記憶部38に記憶される。オブジェクトデータ記憶部38には、ジャケットのオブジェクト以外に、音楽の曲名やアーティスト名を表示するためのテクスチャのオブジェクトも記憶される。
【0054】
チャネル選択部24は、ストリーミングサーバ50が提供しているラジオ放送のチャネルの選択をユーザからコントローラ202を通じて受け付ける。チャネル選択部24により選択されたチャネルの情報は例えばイーサネット330を通じてストリーミングサーバ50に送信される。チャネルは、一例として、音楽のムードで分けられている。CPU300を用いて音楽の成分を解析することにより、音楽はアップビートやリラックスなどのいくつかの種類のチャネルに分類される。より具体的には、例えばRecommended、Energetic、Relax、Mellow、Upbeat、Emotional、Lounge、Dance、Extremeの9種類のムードや「お気に入り」、「シャッフル」、「最近追加した曲」の3つのジャンル、合計12種類のチャネルに分類される。ストリーミングサーバ50は、ユーザが選択したチャネルに対応するムードに分類されている音楽の中からユーザの嗜好に合った音楽をお勧めの曲として選択し、その音楽のストリームをクライアント10に配信する。チャネル選択部24により選択されたチャネルの情報は3次元画像生成部30にも通知される。
【0055】
3次元画像生成部30は、カメラ位置から見た3次元仮想空間内のジャケットの画像を背景画像に合成した3次元画像を生成する。表示部32は、3次元画像生成部30により生成された3次元画像をテレビジョンモニタ204に表示する。
【0056】
3次元画像生成部30は、リフレクション画像生成部26とパーリンノイズ生成部28を含む。3次元画像生成部30は、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0057】
リフレクション画像生成部26は、チャネル選択部24により選択されたチャネルに対応した背景画像を背景画像記憶部34から取得する。背景画像記憶部34には、音楽のムードに適した背景画像が格納されており、リフレクション画像生成部26は、ユーザの選択したチャネルにふさわしい背景画像を選択する。背景画像記憶部34は例えばハードディスクドライブ334の一部として実現されており、リフレクション画像生成部26は、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0058】
リフレクション画像生成部26は、ジャケット画像記憶部36から過去から現在まで配信された音楽のジャケット画像を取得し、オブジェクトデータ記憶部38から各ジャケットのオブジェクトの3次元仮想空間内の位置情報を取得する。また、リフレクション画像生成部26は、カメラ移動制御部16からカメラの位置と向きの情報を取得する。
【0059】
リフレクション画像生成部26は、各ジャケットの位置情報にもとづいて、カメラ位置から見た場合の過去から現在までのジャケットの画像を生成し、生成された画像を背景画像に合成し、3次元画像を生成する。これにより、過去から現在までのジャケットの背景には現在配信されている音楽にふさわしい背景画像が表示される。過去から現在までのジャケットが水面に浮かんでいるような印象を与えるように、リフレクション画像生成部26は、水面を表す画像をジャケットの並びの下側に表示し、背景画像をその水面の画像に映し込む。さらに、リフレクション画像生成部26は、水面の画像に各ジャケットの画像も映し込む処理を実行する。これにより、ジャケットの並びの下側には、背景とジャケット画像が映り込んだリフレクション画像が表示される。
【0060】
パーリンノイズ生成部28は、ジャケットの並びの下側に表示される水面を表す画像に対して、パーリンノイズによる揺らぎを発生させる。パーリンノイズ生成部28は、パーリンノイズのパラメータとして、チャネル選択部24により選択されたチャネルの情報、音楽再生部22により生成された音楽データ、オブジェクト移動制御部18により供給されるジャケットオブジェクトの動き情報を用いる。パーリンノイズ生成部28は、リフレクション画像生成部26と同様に、主にCPU300からの命令に従いGPU302にて演算を行うことで実現される。
【0061】
パーリンノイズ生成部28は、音楽のムードの種別を示すチャネル情報を参照して、たとえば、音楽のムードが「アップビート」であれば、ノイズが大きくなるように、音楽のムードが「リラックス」であれば、ノイズが小さくなるようなノイズパラメータを設定する。また、パーリンノイズ生成部28は、再生される音楽のビートの情報を用いて、ビートが発生するたびに、ノイズが大きくなるようにノイズパラメータを設定する。また、パーリンノイズ生成部28は、ジャケットのオブジェクトが動いた場合に、その動いたジャケットの位置の周辺においてノイズが大きくなるようにノイズパラメータを設定する。
【0062】
パーリンノイズ生成部28により、ジャケットが浮かぶ水面の画像に揺らぎが加えられ、あたかも水面が揺れて波打っているような印象を与えることができる。また、この水面の揺れは、音楽のジャンルやムードによって違ったり、音楽のビートに連動したり、ジャケットオブジェクトの動きに連動するため、ある種の躍動感をユーザに提供することができる。
【0063】
図5は、上記の構成のクライアント10による画像表示手順を説明するフローチャートである。
【0064】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信されている音楽ストリームを受信し(S10)、音楽再生部22が受信された音楽ストリームを再生する(S12)。
【0065】
ジャケット画像受信部12は、現在配信されている音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信して保存する(S14)。
【0066】
リフレクション画像生成部26は、過去から現在まで配信された音楽のジャケット画像を3次元空間に配置し、受信中のチャネルに適した背景画像に合成して3次元表示する(S16)。リフレクション画像生成部26は、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面に背景画像やジャケット画像を映り込ませるリフレクション処理を行う(S18)。さらに、パーリンノイズ生成部28は、水面に揺らぎを加えることにより、音楽のビートなどに連動した波打ち効果を与える(S20)。
【0067】
ユーザは、グラフィカルユーザインタフェースを介して、水面に浮かぶ過去に配信された音楽のジャケット画像をブラウジングする(S22)。ブラウジングしながら、ユーザが特定のジャケット画像を選択すると、そのジャケット画像に対応する音楽ストリームの一部が試聴の目的で再生される(S24)。ユーザは試聴した音楽ストリームを正式に購入することもできる。
【0068】
ブラウジングの最中に、新しい音楽ストリームが配信されると、ステップS10に戻り、新しい音楽ストリームの再生され、その新しい音楽のジャケット画像が新たに3次元表示される。
【0069】
以下、クライアント10の表示装置の画面例を図を参照しながら説明する。
【0070】
図6は、クライアント10のテレビジョンモニタ204に表示されるインターネットラジオのチャネルの選択画面の例である。9枚の画像100a〜100iは、9チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときにテレビジョンモニタ204に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0071】
ユーザはコントローラ202などを操作して、9枚の画像100a〜100iのいずれかを選択することで、対応するチャネルを選択することができる。ここでは、ユーザは中央の画像100eを選択しており、画像100eは他の画像よりもやや大きく表示される。また、テレビジョンモニタ204の下部には選択した画像100eに対応するチャネルのムードが文字で表示される。ここでは「アップビート」(符号102)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図7Aの画面に移る。また、チャネルの種類が9種類よりも多い場合には、ユーザは例えばコントローラのアナログスティック218を傾倒操作するなどによって画面をスクロールし、新たなチャネルに対応する画像を表示させることができる。
【0072】
図7Aは、ユーザが選択したチャネルにおいて現在配信中の音楽が再生されているときの通常画面の例である。テレビジョンモニタ204には、カメラ位置から見た、3次元仮想空間内のジャケットの画像110a〜110gが表示されている。過去に配信された音楽のジャケットは現在選択しているチャネルとは関係なく、奥から配信順に配置されており、現在選択しているチャネルにて配信中の音楽のジャケットは最も手前に表示されている。テレビジョンモニタ204に左下には、現在配信中の音楽の曲名「G」(符号132)とアーティスト名「g」(符号134)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Gで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。
【0073】
ジャケット画像110a〜110gの背後には、選択されたチャネルに対応する背景画像(符号120)が表示されている。ジャケット画像110a〜110gの並びは水面に浮かんでおり、水面を表す画像には背景画像120が映り込んでいる(符号122)ほか、各ジャケットの画像も映り込んでいる(符号112a〜112g)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0074】
現在配信中の音楽の再生が終わり、現在選択しているチャネルの新しい音楽が入ってくると、図7B、図7Cのように画面が推移する。音楽Gの配信が終わり、新しい音楽Hが受信されたとき、図7Bに示すように、以前の音楽Gのジャケット画像110gは後方に下がり、新しい音楽Hのジャケット画像110hがテレビジョンモニタ204に向かって右側から手前に入ってくる。そして、図7Cに示すように、新しい音楽Hのジャケット画像110hが、以前の音楽Gのジャケットがあった位置に配置され、以前の音楽Gのジャケット画像を含め、過去のジャケット画像110a〜110gは配信順に新しい音楽Hのジャケット画像110hの背後に表示される。テレビジョンモニタ204の左下には、新しい音楽Hの曲名「H」とアーティスト名「h」が表示される(符号132、134)。
【0075】
図8A〜図8Cは、図7A〜図7Cの画面が生成されるときの3次元仮想空間内のジャケットのオブジェクトの位置を説明する図である。3次元仮想空間はGPU302で処理される、テレビジョンモニタ204に表示すべき画像を計算するために仮想に設定される空間である。
【0076】
図8Aは、図7Aの初期画面が生成されるときの3次元仮想空間を示す。3次元仮想空間を上側から見ており、符号140で示す位置にカメラがある。過去に配信された音楽A〜Fのジャケットのオブジェクトは、符号110a〜110fで示される位置に配置されている。現在配信中の音楽Gのジャケットのオブジェクトは、カメラ110gから見て最も手前の位置に配置されている。カメラから見た視野内に過去から現在までの音楽A〜Gのジャケットがすべて見えており、ジャケットの背後には背景画像が見えている。
【0077】
図8Aの位置関係において3次元画像が生成されると、図7Aのように、現在配信中の音楽Gのジャケットがもっとも手前に表示され、過去の音楽A〜Fのジャケットはその後ろに古いものほど遠くに表示される。また、ジャケットの背後には背景画像が描画される。さらに、リフレクション処理とパーリンノイズ処理により、過去から現在までのジャケット画像の並びの下側には、水面を表す揺らぎのあるリフレクション画像が描画される。
【0078】
図8Bは、図7Bの画面が生成されるときの3次元仮想空間を示す。新しい音楽Hのジャケットのオブジェクトが、カメラに非常に近い符号110hで示される位置に入ってくる。このとき、一つ前の音楽Gのジャケットのオブジェクトは符号110gで示される位置に後退する。この位置関係でカメラから見た3次元画像を生成すると、図7Bに示すように、一つ前の音楽Gのジャケット画像が後方に退き、新しい音楽Hのジャケット画像が大きく手前に描画される。
【0079】
図8Cは、図7Cの画面が生成されるときの3次元仮想空間を示す。新しい音楽Hのジャケットのオブジェクトは、符号110hで示すように、一つ前の音楽Gのジャケットのオブジェクトの元の位置に移動する。音楽Gのジャケットのオブジェクトは音楽Fのジャケットのオブジェクトの位置に移動し、音楽Fのジャケットのオブジェクトは音楽Eのジャケットのオブジェクトの位置に移動するといった具合に、過去のジャケットのオブジェクトは順次押し出されて後方に移動していく。この位置関係でカメラから見た3次元画像を描画すると図7Cのようになる。
【0080】
図9A〜図9Cは、過去の音楽のジャケット画像をサーチするときの画面例を示す。ユーザはコントローラ202の方向キー216などを操作することで、過去の音楽のジャケット画像をサーチすることができる。図9Aに示すように、テレビジョンモニタ204には、ユーザが見易いようにジャケット画像が水面上に重なりなく表示され、コントローラの方向キー216を押し続けると、ジャケット画像の並びが水面上を符号150で示す横方向に移動する。ユーザはジャケットの画像を閲覧しながら、目的のジャケットの画像が中央に来たときに方向キー216の押し下げをやめる。ユーザが水面上を動くジャケットを閲覧しているとき、ジャケットの動きに応じて水面が波打つようにパーリンノイズが加えられてもよい。
【0081】
図9Bは、ユーザが音楽Eのジャケットが中央に来たときに方向キー216の押し下げをやめたときの画面例を示す。音楽Eのジャケット画像110eは少し手前に描画され、テレビジョンモニタ204の左下には曲名「E」とアーティスト名「e」が表示される(符号132、134)。このとき、音楽Eは、たとえば最初の30秒など一部が試聴できるが、全部を聴くことはできないように制限がかかる。クライアント10のストリームデータ記憶部40には、過去に配信された音楽のデータを少なくとも一部が保存されており、そのデータを用いて、過去の音楽Eを再生してユーザに試聴させることができる。過去に配信された必要な音楽のデータがストリームデータ記憶部40から既に消去されている場合は、クライアント10は、過去に配信された音楽の履歴情報を参照して、ストリーミングサーバ50に必要な音楽のストリームデータをリクエストして取得する。そして、取得したストリームの一部を再生してユーザに試聴させる。
【0082】
図9Bの状態でユーザがコントローラ202の○ボタン224などを押すと、音楽Eに決定され、図9Cに示すように、音楽Eのジャケット画像110eは、過去の音楽のジャケットの並びを外れて、手前に大きく描画される。音楽Eのジャケット画像110eが手前に移動する過程で、ジャケット画像の下部で水面が波打つようにパーリンノイズが加えられてもよい。テレビジョンモニタ204の右下には、曲名「E」とアーティスト名「e」が表示され(符号132、134)、その右には購入を促すボタンが表示される(符号136)。ユーザが購入を促すボタンを押すと、クライアント10から音楽販売サイト60へ音楽Eを特定する情報が送信される。クライアント10は音楽販売サイト60に接続され、テレビジョンモニタ204等に音楽販売サイト60が表示される。ユーザは音楽販売サイト60において音楽EのCD/DVDを購入することができる。
【0083】
通常、インターネットラジオでは過去に配信された音楽は再び聴くことはできないが、本実施の形態では、過去に配信された音楽のジャケット画像をユーザがサーチし、試聴した上で購入することができる。
【0084】
図10Aは、過去の音楽のジャケットをサーチする図9Aの画面が生成されるときの3次元仮想空間オブジェクトの位置関係を示す。ジャケット画像が重なって表示されないように、カメラの位置を過去の音楽のジャケットのオブジェクトの位置に近づける。そして、カメラの位置を固定して、ユーザのコントローラ202の方向キー216の操作に応じて、過去の音楽A〜Iのジャケットのオブジェクト(符号110a〜110i)を符号152で示す方向に仮想空間内を移動させる。これにより、図9Aに示すようにジャケット画像が横方向に動いて表示される。このとき、ジャケットのオブジェクトの動きに応じてパーリンノイズを発生させてリフレクション画像に揺らぎを与えれば、ジャケットによって波が打っているような視覚効果を与えることができる。
【0085】
図9Aのサーチ画面を生成する別の方法として、過去の音楽のジャケットのオブジェクトは動かさずに、ユーザのコントローラ202の方向キー216の操作に応じてカメラを符号154で示す方向に移動させてもよい。これにより、視点が横方向に移動することになり、相対的には、図9Aに示すようにジャケット画像が横方向に動いて表示される。
【0086】
図10Bは、選択した音楽のジャケットが手前に大きく表示される図9Cの画面が生成されるときの3次元仮想空間におけるオブジェクトの位置関係を示す。選択された音楽Eのジャケットのオブジェクトは、符号110eで示すように、カメラに近い位置に移動する。また、音楽Eの曲名、アーティスト名、および購入ボタンのテクスチャのオブジェクト111が音楽Eのジャケットのオブジェクトの横に配置される。この位置関係で描画された3次元画像が図9Cである。
【0087】
以上、実施の形態にかかるインターネットラジオシステムにおいて、順次配信される音楽の再生、そのジャケットを3次元仮想空間内に表示する画像処理に関する構成、およびジャケットをブラウズするためのユーザインタフェースについて説明した。クライアント10は、音楽販売サイト60において購入し、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データを再生するためのメディアプレイヤーのインターフェースも持つ。このメディアプレイヤーは音楽販売サイト60において購入した音楽ファイルのみならず、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データであれば再生可能である。また、音楽ファイルにジャケット画像が埋め込まれている場合には、メディアプレイヤーは埋め込まれたジャケット画像をその音楽ファイルのジャケット画像として用いることもできる。以下、このメディアプレイヤーのインターフェースについて説明する。
【0088】
図11は、クライアント10のテレビジョンモニタ204に表示されるメディアプレイヤーのチャネルの選択画面の例である。10枚の画像150a〜150jは、10チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど、音楽を解析して分類した複数の音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときにテレビジョンモニタ204に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0089】
ユーザはコントローラ202を操作して、10枚の画像150a〜150jのいずれかを選択することで、対応するチャネルを選択することができる。また、チャネルが10種類以上(例えば前述の12種類)ある場合には、ユーザはコントローラ202を操作することで画像をスクロールし、図示していない他のチャネルに対応する画像を選択することもできる。ここでは、ユーザは中央下の画像150hを選択しており、画像150hは他の画像よりもやや大きく表示される。また、テレビジョンモニタ204の下部には選択した画像150hに対応するチャネルのムードが文字で表示される。ここでは「リラックス」(符号152)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図12Aの画面に移る。
【0090】
なお、図示はしていないが、チャネルの選択画面においては、前回メディアプレイヤーを終了する直前に再生していたアルバムのジャケット画像を背景に薄く表示する構成としてもよい。
【0091】
図12Aは、ユーザが選択したチャネルにおいてハードディスクドライブ334等ローカルなストレージに記憶された音楽が再生されているときの通常画面の例である。テレビジョンモニタ204には、仮想のカメラ位置から見た、3次元仮想空間内に5種類のジャケット画像160a〜160eが表示されている。これらのジャケットは、例えば音楽データに埋め込まれているジャケットのうち、現在選択しているチャネルに分類されるジャケット画像がランダムに配置されている。また、現在再生中の音楽のジャケットは最も手前に表示されている。テレビジョンモニタ204の右下には、現在配信中の音楽の曲名「A」(符号170)とアーティスト名「a」(符号172)およびアルバム名α(符号174)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Eで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。なお、ジャケット画像の配列はランダムの他、例えば購入した順や五十音順、お気に入りの順など任意に変更することができる。
【0092】
ジャケット画像160a〜160eの背後には、選択されたチャネルに対応する背景画像(符号180)が表示されている。ジャケット画像160a〜160eの並びは水面に浮かんでおり、水面を表す画像には背景画像160が映り込んでいる(符号164)ほか、各ジャケットの画像も映り込んでいる(符号162a〜162e)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0093】
テレビジョンモニタ204の下側にはコントローラ202の方向キー216(符号166a)、セレクトボタン240(符号166b)、スタートボタン238(符号166c)、△ボタン230(符号266d)をそれぞれ表すアイコンが表示される。アイコンに対応するコントローラ202のボタンを押下操作をすることにより、音楽をお気に入りから削除したり、選択するチャネルの変更、再生の一時停止、オプションの表示をしたりすることができる。これらは「お気に入りから削除」(符号168a)、「チャンネル変更」(符号168b)、「一時停止」(符号168c)、「オプション」(符号168d)という文字としてアイコンに隣接してそれぞれ表示される。
【0094】
再生中の音楽Aの再生が終わると、図12Bのように画面が推移する。図12Bに示すように、音楽Aのジャケット画像160aは後方に下がり、音楽Bのジャケット画像160bが押し出されるようにして拡大表示される。そして、図12Bに示すように、新しい音楽Bのジャケット画像160bが、以前の音楽Aのジャケットがあった位置に配置され、テレビジョンモニタ204の左下には、新しい音楽Bの曲名「B」とアーティスト名「b」およびアルバム名「β」が表示される(符号190、192、194)。
【0095】
前述のインターネットラジオシステムのインターフェースでは、再生が終わった音楽のジャケット画像は、現在再生中の音楽のジャケット画像のひとつ後方に下がる形で表示される(図7Cにおける符号110g)。これに対し、メディアプレイヤーのインターフェースでは、再生が終わった音楽のジャケット画像は、現在選択しているチャネルに分類されるジャケット画像列の最後尾に配置される(図12Bにおける160a)。
【0096】
例えば、現在選択しているチャネルに分類されるジャケット画像が「A、B、C、D、E」の5種類で、それらが「A、B、C、D、E」の順で配置されている場合を考える。楽曲Aの再生が終わると、ジャケット配置は「B、C、D、E、A」の順となり、楽曲Bの再生が終わると、ジャケット配置は「C、D、E、A、B」の順となる。以後、ジャケットの配置は循環的に変更される。このことにより、現在選択しているチャネルに分類されるジャケット画像の数が少ない場合にも、インターフェース上に表示される音楽のジャケット画像が残らなくなるという問題を回避することができる。
【0097】
次に、本発明の別の実施の形態に係る携帯型電子機器400を説明する。
【0098】
図13は、携帯型電子機器400の外観を示す。携帯型電子機器400は動画、静止画、音楽などのデジタルコンテンツを再生できるほか、ゲームプログラムなどのコンテンツを実行することができる。各コンテンツは、携帯型電子機器400に着脱できる外部記録媒体から主に読み出される。本実施の形態における外部記録媒体は、小型の光ディスク402とメモリカード426である。小型光ディスク402およびメモリカード426は、それぞれ携帯型電子機器400に設けられた図示しない駆動装置に装填される。小型光ディスク402は、音楽データや静止画データはもちろんのこと、映画などの比較的データサイズの大きな動画データを格納することができる。メモリカード426は、デジタルカメラや携帯電話にも着脱できる小型のメモリカードであり、静止画データ、動画データ、音声データなど、ユーザ自身が他の機器などで作成したデータや他の機器との間で受け渡しされるデータが主に格納される。
【0099】
携帯型電子機器400には、液晶ディスプレイ404と、十字キー416、アナログスティック418、ボタンキー420などのキーが設けられている。ユーザは携帯型電子機器400の左右端を両手で把持し、主に左手の親指で十字キー416またはアナログスティック418を用いて上下左右の方向を指示し、主に右手の親指でボタンキー420を用いて各種の操作を指示する。ホームボタン436は、十字キー416やボタンキー420と異なり、携帯型電子機器400の左右端を両手で把持したときにいずれかの指で押下しにくい位置に設けられ、誤操作の防止が図られている。液晶ディスプレイ404には、グラフィカルユーザインタフェースによるメニュー画面および各コンテンツの再生画面が表示される。また、携帯型電子機器400には、USBポート、無線LAN通信の機能が搭載されており、これらのポートまたは通信機能を介して他の装置との間でデータを送受信する。さらに、赤外線ポートを備え、赤外線通信を介して他の装置との間でデータを送受信する構成を備えてもよい。
【0100】
また、携帯型電子機器400は、セレクトボタン440、スタートボタン438等を備えている。スタートボタン438は、ゲーム開始や電子メール画面の表示開始、映画や音楽の再生開始、一時停止などをユーザが指示するためのボタンである。セレクトボタン440は、液晶ディスプレイ404上に表示されたメニュー表示の選択等をユーザが指示するためのボタンである。
【0101】
図14は、携帯型電子機器400の内部回路構成を図示したものである。
【0102】
携帯型電子機器400は、メインCPU500とGPU502と、入出力プロセッサ504と、光ディスク再生部506と、メインメモリ508と、マスクロム510と、サウンドプロセッサ512とを基本構成として備える。メインCPU500は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU502は、画像処理を行う。入出力プロセッサ504は、外部と装置内部との間のインターフェース処理や下位互換性を保つための処理をする。光ディスク再生部506は、アプリケーションプログラムやマルチメディアデータが記録されているUMD等の光ディスクを再生する。メインメモリ508は、メインCPU500のワークエリアや光ディスクから読み出されたデータを一時的に格納するバッファとして機能する。マスクロム510は、主にメインCPU500や入出力プロセッサ504が実行するオペレーティングシステムプログラムを格納している。サウンドプロセッサ512は、音声信号を処理する。
【0103】
また、この携帯型電子機器400は、UMDプロセッサ514と、光ディスク再生ドライバ516およびメカコントローラ518をも有している。UMDプロセッサ514は、光ディスク再生部506によりUMDから読み出されてRFアンプ528で増幅されたディスク再生信号に対して、例えば誤り訂正処理(例えばCIRC処理)や伸張復号化処理等を施すことにより、UMDに記録されたデータを再生(復元)する。光ディスク再生ドライバ516及びメカコントローラ518は、光ディスク再生部506のスピンドルモータの回転制御、光ピックアップのフォーカス/トラッキング制御、ディスクトレイのローディング制御等を行う。
【0104】
これらの各部は、主にバスライン522、524等を介してそれぞれ相互に接続されている。なお、メインCPU500とGPU502は、専用バスで接続されている。また、メインCPU500と入出力プロセッサ504はSBUSにより接続されている。入出力プロセッサ504とUMDプロセッサ514、マスクロム510、サウンドプロセッサ512はSSBUSにより接続されている。
【0105】
メインCPU500は、マスクロム510に記憶されているメインCPU用のオペレーティングシステムプログラムを実行することにより、携帯型電子機器400の全動作を制御する。また、メインCPU500は、UMD等の光ディスクから読み出されてメインメモリ508にロードされたり、無線LAN530を介してダウンロードされた、各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0106】
入出力プロセッサ504は、マスクロム510に記憶されている入出力プロセッサ用のオペレーティングシステムプログラムを実行することにより、ユーザの操作に応じたコントローラ540からの信号やゲームの設定、電子メールの内容やアドレス、WebサイトのURL等を記憶するメモリカード326からのデータ等の入出力、その他、USB接続端子542や無線LAN530等におけるデータの入出力を制御する。ここでコントローラ540とは、十字キー416、アナログスティック418、ボタンキー420などのユーザが携帯型電子機器400を制御するためのキーの総称である。
【0107】
GPU502は、座標変換等の処理を行うジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU500からの描画指示に従って描画を行い、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU502は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を実行する。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU502は、この作成した画像に対応するビデオ信号を出力する。
【0108】
サウンドプロセッサ512は、ADPCM(Adaptive Differential Pulse Code Modulation)復号機能、オーディオ信号再生機能、信号変調機能等を備えている。ADPCM復号機能とは、当該サウンドプロセッサ512に内蔵或いは外付けされた図示しないサウンドバッファに記憶されている波形データを読み出すことで、効果音等のオーディオ信号を再生して出力する機能である。信号変調機能とは、上記サウンドバッファに記憶されている波形データから、楽音や効果音等のオーディオ信号を発生する、所謂サンプリング音源としても動作する。
【0109】
以上のような構成を有する携帯型電子機器400は、例えば電源が投入されると、マスクロム510からメインCPU500用及び入出力プロセッサ504用のオペレーティングシステムプログラムが読み出される。メインCPU500と入出力プロセッサ504は、それぞれ対応したオペレーティングシステムプログラムを実行する。これにより、メインCPU500は、携帯型電子機器400の各部を統括的に制御する。また、入出力プロセッサ504は、コントローラ540やメモリカード526等との間の信号の入出力を制御する。また、メインCPU500は、オペレーティングシステムプログラムを実行すると、まず動作確認等の初期化を行う。つづいて光ディスク再生部506を制御して、光ディスクに記録されているゲーム等のアプリケーションプログラムを読み出し、メインメモリ508にロードする。そのゲームアプリケーションプログラムを実行する。このゲームアプリケーションプログラムの実行により、メインCPU500は、入出力プロセッサ504を介してコントローラ540から受け付けたユーザの指示に応じて、GPU502やサウンドプロセッサ512を制御し、画像の表示や効果音、楽音の発生を制御する。
【0110】
なお、例えば光ディスクに記録された映画等を再生する場合、メインCPU500は、入出力プロセッサ504を介してコントローラ540から受け付けたユーザからの指示(コマンド)にしたがってGPU502やサウンドプロセッサ512を制御し、光ディスクから再生された映画の映像の表示や効果音や音楽等の発生を制御する。GPU502の処理結果を液晶ディスプレイ404に表示し、サウンドプロセッサ512で生成された効果音や音楽等はスピーカ544にて再生される。
【0111】
図4のクライアント10は、前述のゲームシステムのゲーム機200に実現される機能構成である。インターネットラジオシステムの各機能ブロックは、ゲーム機200の主にメインCPU300やGPU302によって実行される、メインメモリ308にロードされたアプリケーションプログラムのモジュールにより実現される。
【0112】
ストリームデータ受信部20は、ストリーミングサーバ50から現在配信中の音楽ストリームのデータを無線LAN530経由で受信してストリームデータ記憶部40に蓄積する。ストリームデータ記憶部40は、例えばメモリカード426の一部として実現される。
【0113】
ストリームデータ記憶部40はメモリカード426の記憶容量の許す範囲で、過去に配信された音楽ストリームのデータが保存される。メモリカード426の許容容量を超えると、古いものから順に消去される。
【0114】
音楽再生部22は、ストリームデータ記憶部40からストリームデータを読み出し、サウンドプロセッサ512において復号処理をして再生する。
【0115】
ジャケット画像受信部12は、現在配信中の音楽ストリームに対応するジャケット画像をストリーミングサーバ50から受信してメモリカード426の一部としてのジャケット画像記憶部36に保存する。
【0116】
クライアント10は、現在配信中の音楽のジャケット画像だけでなく、過去に配信された音楽のジャケット画像も、液晶ディスプレイ404に表示する。過去から現在までに配信された音楽のジャケット画像を表示するにあたって、3次元仮想空間に音楽CD/DVDのジャケットがオブジェクトとして配置されているとして、仮想的なカメラ位置から視線方向に見た場合の、過去から現在までに配信された音楽のジャケット画像の3次元画像を生成する。これは例えばCPU500からの命令によりGPU502において計算して実現する。
【0117】
また、クライアント10は、現在配信されている音楽のジャンルやムードなどの種別に適した背景画像を液晶ディスプレイ404等に表示するとともに、ジャケット画像が水面に浮かんでいるような視覚効果を与えるため、水面を表す画像に背景画像やジャケット画像が映り込んだリフレクション画像を生成する。そして、リフレクション画像にパーリンノイズの揺らぎを加えることで、音楽の種別や音楽のビートに合わせて水面が波打つような印象を与える。
【0118】
さらに、クライアント10は、過去に配信された音楽のジャケット画像をサーチするためのユーザインタフェースを備える。3次元仮想空間内に配信順に配置されたジャケットに対して、例えばアナログスティック418の傾倒操作に応じて仮想的なカメラを移動させるか、あるいは、カメラの位置は固定してジャケットの方を移動させることで、ユーザはジャケット画像をブラウズして、目的のジャケット画像を例えばボタンキー420の○ボタンを押下することで選択する。選択されたジャケット画像に対して、そのCD/DVDを購入するためのユーザインタフェースがさらに提供される。
【0119】
ユーザ操作取得部14は、ユーザからジャケットの探索などのコントローラ540からの操作コマンドを受け付ける。
【0120】
カメラ移動制御部16は、ユーザの操作コマンドに応じて仮想的なカメラの位置や向きを変える。仮想的なカメラの位置と向きは、3次元仮想空間を見るユーザの視点位置と視線方向に対応する。
【0121】
オブジェクト移動制御部18は、ユーザの操作コマンドに応じてジャケットのオブジェクトを移動させる。たとえば、ユーザが特定のジャケットをコントローラ540を通じて選択すると、オブジェクト移動制御部18は、そのジャケットのオブジェクトを仮想空間内でカメラに近い位置に移動させる。ジャケットのオブジェクトの位置情報はメモリカード426の一部としてのオブジェクトデータ記憶部38に記憶される。オブジェクトデータ記憶部38には、ジャケットのオブジェクト以外に、音楽の曲名やアーティスト名を表示するためのテクスチャのオブジェクトも記憶される。
【0122】
チャネル選択部24は、ストリーミングサーバ50が提供しているラジオ放送のチャネルの選択をユーザからコントローラ540を通じて受け付ける。チャネル選択部24により選択されたチャネルの情報は例えば無線LAN530を通じてストリーミングサーバ50に送信される。チャネルは、一例として、音楽のムードで分けられている。CPU500を用いて音楽の成分を解析することにより、音楽はアップビートやリラックスなどのいくつかの種類のジャンルに分類される。
【0123】
3次元画像生成部30は、カメラ位置から見た3次元仮想空間内のジャケットの画像を背景画像に合成した3次元画像を生成する。表示部32は、3次元画像生成部30により生成された3次元画像を液晶ディスプレイ404に表示する。
【0124】
3次元画像生成部30は、リフレクション画像生成部26とパーリンノイズ生成部28を含む。3次元画像生成部30は、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。
【0125】
背景画像記憶部34は例えばメモリカード426の一部として実現されており、リフレクション画像生成部26は、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。パーリンノイズ生成部28は、リフレクション画像生成部26と同様に、主にCPU500からの命令に従いGPU502にて演算を行うことで実現される。
【0126】
クライアント10は、音楽販売サイト60において購入し、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データを再生するためのメディアプレーヤのインターフェースも持つ。このメディアプレイヤーは音楽販売サイト60において購入した音楽ファイルのみならず、ハードディスクドライブ334等ローカルなストレージに記憶されている音楽データであれば再生可能である。また、音楽ファイルにジャケット画像が埋め込まれている場合には、メディアプレイヤーは埋め込まれたジャケット画像をその音楽ファイルのジャケット画像として用いることもできる。以下、このメディアプレイヤーのインターフェースについて説明する。
【0127】
図11は、クライアント10の液晶ディスプレイ404に表示されるメディアプレイヤーのチャネルの選択画面の例である。10枚の画像150a〜150jは、10チャネルに対応している。ここでは、チャネルは、アップビート、リラックス、エモーショナルなど、音楽を解析して分類した複数の音楽のムードに対応して設けられている。また各チャネルの画像は、そのチャネルを選択したときに液晶ディスプレイ404に表示される背景画像の縮小画像もしくは背景画像に対応して作られたサムネイル画像である。
【0128】
ユーザはコントローラ540を操作して、10枚の画像150a〜150jのいずれかを選択することで、対応するチャネルを選択することができる。また、チャネルは10種類以上(例えば前述の12種類)ある場合には、ユーザはコントローラ540を操作することで画像をスクロールし、図示していない他のチャネルに対応する画像を選択することもできる。ここでは、ユーザは中央下の画像150hを選択しており、画像150hは他の画像よりもやや大きく表示される。また、液晶ディスプレイ404の下部には選択した画像150hに対応するチャネルのムードが文字で表示される。ここでは「リラックス」(符号152)と表示されている。ユーザが選択したチャネルに対して決定コマンドを与えると、図12Aの画面に移る。
【0129】
図12Aは、ユーザが選択したチャネルにおいてハードディスクドライブ334等ローカルなストレージに記憶された音楽が再生されているときの通常画面の例である。液晶ディスプレイ404には、仮想のカメラ位置から見た、3次元仮想空間内に5種類のジャケットの画像160a〜160eが表示されている。これらのジャケットは、例えば音楽データに埋め込まれているジャケットのうち、現在選択しているチャネルに分類されるジャケット画像がランダムに配置されている。また、現在再生中の音楽のジャケットは最も手前に表示されている。液晶ディスプレイ404の右下には、現在配信中の音楽の曲名「A」(符号170)とアーティスト名「a」(符号172)およびアルバム名α(符号174)が表示される。ここでは、ジャケット画像を簡略的に文字A〜Eで代用しているが、実際はCD/DVDのジャケット画像がテクスチャマッピングされて表示される。なお、ジャケット画像の配列はランダムの他、例えば購入した順や五十音順、お気に入りの順など任意に変更することができる。
【0130】
ジャケット画像160a〜160eの背後には、選択されたチャネルに対応する背景画像(符号180)が表示されている。ジャケット画像160a〜160eの並びは水面に浮かんでおり、水面を表す画像には背景画像160が映り込んでいる(符号164)ほか、各ジャケットの画像も映り込んでいる(符号162a〜162e)。さらにこのリフレクション画像にはパーリンノイズにより、揺らぎが加えられており、その結果、水面が波立っているように見える。
【0131】
液晶ディスプレイ404の下側には十字キー416(符号166a)、セレクトボタン440(符号166b)、スタートボタン438(符号166c)、ボタンキー420の△ボタン(符号266d)をそれぞれ表すアイコンが表示される。アイコンに対応するコントローラ202のボタンを押下操作をすることにより、音楽をお気に入りから削除したり、選択するチャネルの変更、再生の一時停止、オプションの表示をしたりすることができる。これらは「お気に入りから削除」(符号168a)、「チャンネル変更」(符号168b)、「一時停止」(符号168c)、「オプション」(符号168d)という文字としてアイコンに隣接してそれぞれ表示される。
【0132】
上記の説明ではゲーム機200や携帯型電子機器400を用いてコンテンツ再生装置100の機能を実現することについて説明したが、これは汎用のPC(パーソナルコンピュータ)を用いても実現できる。以下、PCを用いてクライアント10の機能を実現する場合について説明する。
【0133】
図15は汎用的なPCの内部回路構成を図示したものである。
【0134】
汎用的なPCは、メインCPU600とグラフィックプロセッサユニット(GPU)602と、入力部604と、出力部605と、ドライブ614と、メインメモリ608と、ロム610とを基本構成として備える。メインCPU600は、ゲームや電子メール、Webブラウザ用のアプリケーション等の各種プログラムに基づいて、信号処理や内部構成要素を制御する。GPU602は、画像処理を行う。
【0135】
これらの各部は、主にバスライン622等を介してそれぞれ相互に接続されている。バスライン622には、さらに、入出力インタフェースが接続されている。入出力インタフェースには、ハードディスクや不揮発性のメモリなどよりなる記憶部634、ディスプレイやスピーカなどよりなる出力部605、キーボードやマウス、マイクロホンなどよりなる入力部604、USB、IEEE1394等のインタフェースや、有線LAN、無線LANのネットワークインタフェースなどよりなる通信部630、磁気ディスク、光ディスク、或いは半導体メモリなどのリムーバブル記録媒体626を駆動するドライブ614が接続される。
【0136】
メインCPU600は、ハードディスク等に記録されているオペレーティングシステムプログラムを実行することにより、PCの全動作を制御する。また、メインCPU600は、CD、DVD、BD等の光ディスクから読み出されてメインメモリ608にロードされた、あるいは通信ネットワークを介してダウンロードされた、各種アプリケーションプログラム等を実行し、ゲームや電子メールの作成編集、Webページの閲覧等の動作を制御する。
【0137】
またメインCPU600は、入出力インタフェース632を介して得られるユーザの操作に応じた入力部604からの信号や、リムーバブル記録媒体626等からのデータの入出力、その他、通信部630におけるデータの入出力やドライブ614を制御する。
【0138】
GPU602は、座標変換等を処理するジオメトリトランスファエンジンの機能と、レンダリングプロセッサの機能とを有し、メインCPU600からの描画指示に従って描画を行い、描画された画像を図示しないフレームバッファに格納する。すなわち例えば、光ディスクに記録されている各種アプリケーションプログラムがゲームのように所謂3次元(3D)グラフィックを利用するものである場合、当該GPU602は、ジオメトリ演算処理により、3次元オブジェクトを構成するためのポリゴンの座標等を計算等する。さらに、レンダリング処理により、この3次元オブジェクトを仮想的なカメラで撮影することにより得られる画像を生成するための計算、すなわち透視変換(3次元オブジェクトを構成する各ポリゴンの頂点を仮想的なカメラスクリーン上に投影した場合における座標値の計算など)を行う。最終的に得られた画像データをフレームバッファ上へ書き込む。そして、GPU602は、この作成した画像に対応するビデオ信号を出力する。
【0139】
以上のような構成を有するPCは、例えば電源が投入されると、記憶部634の一部である不揮発メモリからBIOSを読み込んで初期化を実行し、続いてオペレーティングシステムプログラムが読み出され、メインCPU600はオペレーティングシステムプログラムを実行する。これにより、メインCPU600は、PCの各部を統括的に制御する。
【0140】
図4のクライアント10は、主にメインCPU600とGPU602によって実行される、メインメモリ608にロードされたアプリケーションプログラムのモジュールにより実現される。
【0141】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0142】
上記の説明では、ジャケット画像の並びの下側の水面の画像は、背景画像を反転させたテクスチャにジャケット画像を映り込ませたリフレクション画像にパーリンノイズの揺らぎを加えたものであったが、これ以外のリフレクション画像を用いてもよい。たとえば、デザイナがリフレクション画像の方もテクスチャとしてあらかじめ作成してもよい。デザイナが作成したリフレクション画像にジャケット画像を映り込ませ、パーリンノイズの揺らぎを加える。また、湖などの実写画像をリフレクション画像として用いてもよい。その場合、湖の実写画像にジャケット画像を映り込ませ、パーリンノイズを加える。
【0143】
さらに、ユーザが背景画像となる写真などの画像を提供してもよい。その場合、ユーザから提供された画像の少なくとも一部を反転することでリフレクション画像を生成し、ジャケット画像を映り込ませればよい。背景画像記憶部34に記憶された背景画像がユーザが提供したものであるかどうかを示す識別ビットを背景画像に付けてもよい。背景画像がユーザが提供したものである場合は、反転画像を生成する。また、デザイナが特別に作り込んだリフレクション画像があるかどうかを示す識別ビットを背景画像に付けてもよい。背景画像に対してリフレクション画像が存在する場合は、背景画像の反転画像を生成せずに、デザイナが作り込んだリフレクション画像を用いる。
【符号の説明】
【0144】
10 クライアント、 12 ジャケット画像受信部、 14 ユーザ操作取得部、 16 カメラ移動制御部、 18 オブジェクト移動制御部、 20 ストリームデータ受信部、 22 音楽再生部、 24 チャネル選択部、 26 リフレクション画像生成部、 28 パーリンノイズ生成部、 30 3次元画像生成部、 32 表示部、 34 背景画像記憶部、 36 ジャケット画像記憶部、 38 オブジェクトデータ記憶部、 40 ストリームデータ記憶部、 50 ストリーミングサーバ、 52 音楽データ記憶部、 60 音楽販売サイト、 70 ネットワーク、 200 ゲーム機、 400 携帯型電子機器。
【特許請求の範囲】
【請求項1】
順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示する機能と、
各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える機能とをコンピュータに実現させることを特徴とするプログラム。
【請求項2】
背景画像を反転した画像をもとに水面を表す画像を生成する機能をさらにコンピュータに実現させることを特徴とする請求項1に記載のプログラム。
【請求項3】
水面を表す画像に前記関連画像を映り込ませるリフレクション機能をさらにコンピュータに実現させることを特徴とする請求項1または2に記載のプログラム。
【請求項4】
前記水面を表す画像に揺らぎを加える機能は、3次元仮想空間における前記関連画像のオブジェクトの動きに応じた揺らぎを加えることを特徴とする請求項1から3のいずれかに記載のプログラム。
【請求項5】
前記水面を表す画像に揺らぎを加える機能は、現在再生中の音楽のビートに応じた揺らぎを加えることを特徴とする請求項1から4のいずれかに記載のプログラム。
【請求項6】
前記水面を表す画像に揺らぎを加える機能は、現在再生中の音楽の種別に応じた揺らぎを加えることを特徴とする請求項1から5のいずれかに記載のプログラム。
【請求項7】
過去に再生された音楽に関連づけられた関連画像を、水面上を前記関連画像が移動する視覚効果をもたせてユーザに閲覧させるためのユーザインタフェース機能をさらにコンピュータに実現させることを特徴とする請求項1から6のいずれかに記載のプログラム。
【請求項8】
閲覧過程で過去に再生された音楽に関連づけられた関連画像をユーザが選択した際、選択された音楽データの一部だけが再生されるように制限する機能をさらにコンピュータに実現させることを特徴とする請求項7に記載のプログラム。
【請求項9】
請求項1から8のいずれかに記載のプログラムを格納したことを特徴とする記録媒体。
【請求項10】
再生される音楽のデータとともにその音楽に関連づけられた関連画像を取得する取得部と、
過去に再生された音楽に関連づけられた関連画像を現在再生中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する3次元画像生成部とを含み、
前記3次元画像生成部は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えることを特徴とする端末装置。
【請求項11】
順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示するステップと、
各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えるステップとを含むことを特徴とする画像表示方法。
【請求項1】
順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示する機能と、
各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加える機能とをコンピュータに実現させることを特徴とするプログラム。
【請求項2】
背景画像を反転した画像をもとに水面を表す画像を生成する機能をさらにコンピュータに実現させることを特徴とする請求項1に記載のプログラム。
【請求項3】
水面を表す画像に前記関連画像を映り込ませるリフレクション機能をさらにコンピュータに実現させることを特徴とする請求項1または2に記載のプログラム。
【請求項4】
前記水面を表す画像に揺らぎを加える機能は、3次元仮想空間における前記関連画像のオブジェクトの動きに応じた揺らぎを加えることを特徴とする請求項1から3のいずれかに記載のプログラム。
【請求項5】
前記水面を表す画像に揺らぎを加える機能は、現在再生中の音楽のビートに応じた揺らぎを加えることを特徴とする請求項1から4のいずれかに記載のプログラム。
【請求項6】
前記水面を表す画像に揺らぎを加える機能は、現在再生中の音楽の種別に応じた揺らぎを加えることを特徴とする請求項1から5のいずれかに記載のプログラム。
【請求項7】
過去に再生された音楽に関連づけられた関連画像を、水面上を前記関連画像が移動する視覚効果をもたせてユーザに閲覧させるためのユーザインタフェース機能をさらにコンピュータに実現させることを特徴とする請求項1から6のいずれかに記載のプログラム。
【請求項8】
閲覧過程で過去に再生された音楽に関連づけられた関連画像をユーザが選択した際、選択された音楽データの一部だけが再生されるように制限する機能をさらにコンピュータに実現させることを特徴とする請求項7に記載のプログラム。
【請求項9】
請求項1から8のいずれかに記載のプログラムを格納したことを特徴とする記録媒体。
【請求項10】
再生される音楽のデータとともにその音楽に関連づけられた関連画像を取得する取得部と、
過去に再生された音楽に関連づけられた関連画像を現在再生中の音楽に関連づけられた関連画像とともに3次元空間内に配置して表示する3次元画像生成部とを含み、
前記3次元画像生成部は、各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えることを特徴とする端末装置。
【請求項11】
順次再生される音楽に関連づけられた関連画像を3次元仮想空間内に配置して表示するステップと、
各関連画像が水面上に浮かぶように見える視覚効果を与えるために水面を表す画像に揺らぎを加えるステップとを含むことを特徴とする画像表示方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8A】
【図8B】
【図8C】
【図9A】
【図9B】
【図9C】
【図10A】
【図10B】
【図11】
【図12A】
【図12B】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図7C】
【図8A】
【図8B】
【図8C】
【図9A】
【図9B】
【図9C】
【図10A】
【図10B】
【図11】
【図12A】
【図12B】
【図13】
【図14】
【図15】
【公開番号】特開2010−134908(P2010−134908A)
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願番号】特願2009−177326(P2009−177326)
【出願日】平成21年7月30日(2009.7.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願日】平成21年7月30日(2009.7.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】
[ Back to top ]