FmTube(インターネット動画ラジオ)の公開

※以前別の場所で書いた文章を備忘的に書き記しておきます。

【投稿年月日】2008-02-15 【ジャンル】JavaScript

 FmTubeというマッシュアップサイトを公開しました。
 好みのジャンル(アーティスト)に関連した音楽を自動選曲して流すネット動画ラジオです。YouTubeのミュージックビデオをLast.fmのように連続再生します。

FmTube
http://fmtube.tisoku.net/?lan=ja

 操作は簡単。チャンネルかアーティストを選択するだけです。後は関連するビデオがラジオのように連続して流れます。

FmTube
 
 アーティストのデータはLast.fmを、ミュージックビデオはYouTubeを利用しているので洋楽(英語)が中心となります。と言うことで、苦手な英語に四苦八苦しながら英語版も作成してみました。日本語版とは微妙に構成を変えています。

 主なポイントは以下の通り。
  1. 操作が簡単で手間がかからない。
  2. 1アーティストにつき関連性の高い動画が10曲ずつ連続して流れる。曲順については上部の「プレイリスト」で確認可能。
  3. 関連するアーティストの動画が連続して流れる。
  4. ジャンルごとに人気の高い100組のアーティストをリストアップ。
  5. アーティスト検索が可能。検索結果は、関連するアーティスト(最大数50)を含むチャンネルとして自動設定される。
  6. お気に入りアーティストの登録が可能。
  7. 動画のサイズを5段階で変更可能。
  8. シャッフル可能。(標準でシャッフルはオン)
  9. サイドバーに各種情報を表示可能。「チャンネル」「ビデオの情報」「プレイリスト」「お気に入り」「ヘルプ」。サイドバーを隠すことも可能。

 中には関連性の薄い動画などが再生されることもありますが、そんな時は動画をスキップしたり、アーティストを変更したりしてください(画面左下にボタンがあります)。

 サイトは主にJavaScriptで構築しました。外部サイトとのデータのやり取りはPHPを絡ませて、JSONPで行なっています。ただ、JSONPのことがよく分かっていないので、タイムアウトした場合の動作が完全ではありません。やはりJSONでAjax通信をした方がいいのでしょうかね。。
 今回、JavaScriptのグローバル変数を大量に使用してサイトを構築しました。画面遷移のないAjaxでグローバル変数をうまく利用すると、クッキーの代りになることを学びました(と言っても、クッキーと違ってページを再読込したら消えちゃうけど)。
 グローバルな配列にデータを格納してあちこちで再利用するメリットとして、バイト数の制限を気にしなくてもいいことがあります。クッキーだと格納できるバイト数の制限がきついですから。

 次はiGoogleへの移植作業です。

EDIUNET | PHP/MySQL | 独り言 | 提供サービス | JavaScript