2006年04月20日

Seesaaの「簡易MP3プレーヤー」を今さら徹底解剖!



Seesaa以外のサーバにあるMP3ファイルも再生できた!
隠し機能がいくつかあった!

という訳で、調べたことを書いてたら予想よりはるかに長い文になってしまい、「何やってるんだろう、俺……」と軽い自己嫌悪におちいりながらアップします。上記2点について興味があるなら、読んでみても損はないかも。


0.前置き(飛ばしてOK!)

このブログでも既に使っているSeesaaの「簡易MP3プレーヤー」。再生、早送り、巻き戻し、音量調整、ファイルのダウンロードが可能で、機能の割にはごちゃごちゃしてないしデザインもすっきりして良い思う。

Seesaaブログ、ポッドキャスティング機能強化のお知らせ(Seesaaからのお知らせ 2005/06/01)
Seesaaブログに簡易MP3プレーヤー(ブログヘッドライン)

もう10ヶ月も前にリリースされているこの機能を、今さら感全開で詳しく調べてみた。だって上の説明だけじゃよくわからないんですもの。

なお似た機能としてSeesaaは「RSSラジオ」というプレイヤを公開している。これは名前の通り、あらかじめ登録しておいたRSSをもとにして最新の音声ファイルを再生するというもの。「簡易MP3プレーヤー」は、ページ上に埋め込む際に指定したひとつのMP3ファイルだけを再生する。

ポッドキャスティング(Podcasting)の楽しみ方: RSSラジオとは(Seesaa)
Seesaaブログ、「RSSラジオ」コンテンツ追加のお知らせ(Seesaaからのお知らせ 2005/04/28)


--- 目次 ---
1.結構自由なプレイヤの仕様:
  外部のファイルも再生可能&外部のページにも埋め込み可能
2.基礎情報:簡易MP3プレーヤーの表示
  class="audio-link"を加えるだけ
3.応用っていうか反則?
  Seesaa以外のサーバにあるMP3ファイルを再生させる
4.隠し機能を発見!?
  Flashのパラメータからわかるプレイヤの潜在能力
5.隠し機能を使いたいなら、Flash表示タグを直接書いてしまえ!
6.妄想:簡易MP3プレーヤー by Seesaaの未来
《注意》
この文章はSeesaaの「簡易MP3プレーヤー」について書かれていますが、非公式な機能や使い方の説明を含んでいます。書かれている内容をご自分で試す時は必ず自己責任でお願いします。内容を基にトラブルや損害が発生した場合、当方では一切の責任を負いません。Seesaaも負わないでしょう。以上に同意していただける方のみお読み下さい。

【いいえ、同意しません】 【はい、同意します】
                 ↓


1.結構自由なプレイヤの仕様:
  外部のファイルも再生可能&外部のページにも埋め込み可能


昨年6月の告知にあるプレイヤの使い方を読むと、「MP3ファイルを自分のディスクスペースにアップロードする方法」が説明されている。「Seesaaブログで個人ラジオ局を開設されている方であれば、どなたでも設置可能」とのこと。

まず僕はここで思った。Seesaa以外の外部サーバにあるMP3ファイルに使えるのだろうか。
後で説明する通り、仕様としてはできるようになっている。ので、僕自身もう実際に外部にあるファイルの再生用として使ってしまっている。まあ公式に「外部サーバにあるファイルでもなんでもラクラク再生できます!」とか書いてしまうといろいろ問題がありそうなので明言はしていないってことだろう、と勝手に推測。

ちなみにプレイヤの表示は、Seesaaのブログ以外でも可能な仕様。ローカルのHTMLファイルや自宅サーバ、Seesaaと全く関係ない無料HPスペースなどで埋め込むことができた(やり方は後で書きます)。ただし実際にやっても、Seesaaにとってはプレイヤが読み込まれる際にサーバに負荷がかかるだけで何の得もないので、あくまでも仕様としては可能ってことで、実際の利用はお薦めしません。



2.基礎情報:簡易MP3プレーヤーの表示
  class="audio-link"を加えるだけ


プレイヤを表示させる方法について、告知ページには「ファイルマネージャー」からHTMLが生成されると書いてある。ファイルマネージャーとは、Seesaaユーザがブログに貼る画像データなどをアップロードする際に使う管理画面の機能のひとつ。

実際にダミーのMP3を上げて試してみると<a href="ファイルのURL.mp3" class="audio-link">というタグが生成された。このタグをブログのテキスト内に<a>〜</a>という形で記述すると、ブログとして表示される際にはaタグは消え、objectタグとembedタグに変換されている。このobjectとembedによって、Flashが表示されるのだ。

もちろんclass="audio-link"をつけずに普通のaタグでMP3にリンクすれば、普通のHTMLと同じようにリンクされる(余談だが、当ブログではdel.icio.usのplaytaggerを使っているので、MP3へのリンクには強制的に再生ボタンがつけられてしまう。こんな感じ。→説明)。

タグの変換はサーバ内で行われるので、具体的に何が行われているかは推測するしかない。ブラックボックスってやつだ。まずclass="audio-link"と指定されているaタグをFlash表示用のobject+embedタグに書き換えることはすぐにわかる。もうひとつ、RSS 2.0のXMLに以下のような情報を追加している。

例:
<enclosure url="http://s2tf2.up.seesaa.net/image/130bpm64kbps.mp" length="309626" type="audio/mpeg" />
<itunes:title>130bpm64kbps</itunes:title>
<itunes:author>犬TV</itunes:author>
<itunes:duration />

RSSにこれらのタグが追加されることによって、iTunesやらRSSリーダやらが、このエントリに音声データ(へのリンク)が含まれていることを認識するのだ。

参考ページ:
Podcasting and iTunes: Technical Specification(Apple)
iTunesでポッドキャストを公開する方法デジパ株式会社 2005/08/07)
RSS 2.0 Noteshail2u.net



3.応用っていうか反則?
  Seesaa以外のサーバにあるMP3ファイルを再生させる


告知ページには、MP3ファイルをSeesaa内のディスクスペースにアップロードする方法しか説明されていない。では、外部サーバのMP3ファイルへのリンクにclass="audio-link"をつけてエントリを投稿したらどうなるか。みごとにプレイヤが表示されました。

そもそも告知ページでは、aタグにclass="audio-link"をつけるという説明すらされていない。説明外の使い方でやっちゃって、規約とかSeesaaのルールとしてどうなの?という疑問もわいてくる。とにかく公式な使い方ではないので、ご利用は自己責任で。なんて言いつつ、今まで書いたMP3ファイルにリンクしている3つのエントリにプレイヤを埋め込んでしまった。

Das Boogie - Muzique Vol. 1
DJ L'embrouille Electronic Netlabel DJ Set
ネットレーベル 〜ロシアからウルグアイまで〜

音源のリンク先はすべて外部サーバ。権利関係はクリエイティブ・コモンズで、クレジットと配布条件を表示しているので大丈夫ですよ。ですよね?

ここでちょっと悲しいお知らせ。

MP3ファイルがどこにあるかに関係なく、<a href="ファイルのURL.mp3" class="audio-link">と書けば、Seesaaのプログラム(通称:ブラックボックス)がobject+embedタグに書き換えてくれることはすでにわかっている。それがSeesaa内であろうと外部のサーバであろうと、HTMLの記述には変わりはない。しかしRSSを書き出す際には、ファイルの置き場所がチェックされているようだ。

MP3の置き場所がSeesaa以外のとき、ブラックボックスはXMLに追加の記述をしない。だからiTunesにもRSSリーダにもMP3があることはわからない。ブラックボックスが書き出すiTunesの拡張タグにはauthorなんてのもあるので、これは賢明だろう(外部サーバにあるMP3ファイルの作者は、必ずしもブログの筆者とは限らないから)。逆にいえば、XMLではチェックしてるけどHTMLはそのままってことは、外部にあるMP3ファイルの再生をSeesaaは認めていると考えられなくもない(自信ない)。



4.隠し機能を発見!?
  Flashのパラメータからわかるプレイヤの潜在能力


ブラックボックスによってaタグから変換されたbjectとembedタグにはどんなことが記述されているのか。

classidとかcodebaseとかプラグインに関する基本情報は省く。

一番重要な「MP3ファイルのありか」はFlashファイルのURLの後に引数としてくっついて、objectタグだと"movie"パラメータでvalue="http://〜"、embedタグだとsrc="http://〜"として指定されている。

こんな感じ

http://blog.seesaa.jp/mini_player/player.swf?dl_link=ファイルのURL.mp3&mp3=ファイルのURL.mp3&name=テキスト&skinNo=1

わかっている限り、ユーザはaタグを使って「MP3ファイルのURL」と「テキスト」のふたつを指定できる。しかし引数を見ると、要素は4つある。

[dl_link]と[mp3]
※MP3ファイルのありかを2回指定している。もちろんブラックボックスが吐き出してきたURL上では、両者はまったく同じ。
※プレイヤの仕様としては、[dl_link]はプレイヤのDLボタンを押すとダウンロードされるファイルのURL、[mp3]はプレイヤが再生するファイル、と別々に指定できる。再生用にはプレビューとして容量が少なくその分音質が悪いファイルを使用し、ダウンロード用には大きいけど音質の良いファイルを提供するなどの使い分けが考えられる。方法は後述する。
※ただしこれはあくまでもプレイヤ自体の潜在的な仕様だ。公式に告知された使い方では、この機能を使うことができない。aタグ内に何らかの方法でふたつのMP3のURLを指定するとブラックボックスが[dl_link]と[mp3]に振り分けてくれる“裏技”が存在するのだろうか。

[name]
※変換前に<a>〜</a>の間に挟まれていた文言。このテキストがプレイヤ内に表示される。今回の例では「TEST:簡易MP3プレーヤー」と表示されているはず。

[skinNo]
※プレイヤの外装を指定するパラメータだと思われる。後述する方法で“1”の部分にいくつか数字を入れてみたら、下の画像のようになった。なんと! ……機能としては持っているけど、実装はされてないってことか。

mp3player.JPGオレンジ!

objectとembedタグではこの他、width"296"、height"42"、id(name)"mini_player"、align=""、quality"high"、bgcolor"#ffffff"が指定されている。

参考ページ:
パラメータオプション(Macromedia - Flash TechNotes)



5.隠し機能を使いたいなら、Flash表示タグを直接書いてしまえ!

ここまで見てきたように「簡易MP3プレーヤー」は、class="audio-link"を書き加えられたaタグが、Flashを表示するタグに変換されることでブログ上に表示される。変換の際には、RSSにも情報が書き込まれる(ファイルがSeesaaのサーバにある場合のみ)。

また、aタグからは指定できないものの、プレイヤ自体は実装している“隠し機能”があった。
隠し機能を使いたいのであれば、エントリを入力する際にaタグを書くのではなく、プレイヤを表示するobjectとembedタグを自分で生成してしまうという方法がある。すでにプレイヤが埋め込まれているページのソースからobjectとembedタグを抜き出してパラメータ部分を書き換え、新しいエントリに貼り付ければ良いのだ。

こうすれば、例えば再生用とダウンロード用のファイルを別にするといった隠し機能を使えるようになる。もちろん他のパラメータも変更できるけど、スキン変更とか表示サイズ変更とかあまり実用的ではないかも。align指定あたりは使えるかな。
あと、上の方で書いた「Seesaaブログ以外のページでのプレイヤ表示」も、このobject+embedタグ直書きという方法を使えば可能になる。

ただしFlash表示用のタグを直接書いてしまうとaタグからの変換が行われないため、音声ファイルがSeesaaサーバ内にあったとしても、RSSには情報が書き込まれない。



6.妄想:簡易MP3プレーヤー by Seesaaの未来

「ページに簡単に貼り付けるFlashメイドのMP3プレイヤ」って結構需要があるのではないだろうか? 自分が関心を持っているからそう思うだけだろうか。ポッドキャスターはもちろん、音声ファイルを扱うサイトの作者にとって、自サイトのページ上で再生できるプレイヤは魅力的なはずだ。現状、必ずしもそのようなサイトでプレイヤが使われていないのは、認知度の不足もあるような気がする。その存在がもっと知られれば、さらに広く使われるようになると思うのだ。

そのようなプレイヤはSeesaaの「簡易MP3プレーヤー」の他にもある。
以前にも書いたが、del.icio.us“playtagger”が、個人的にはベストだと思っている。何よりもまず小さいので、文章やデザインの邪魔にならない。機能は最小限だが、ページ上から聞く分にはむしろその方が良いと思う。→設置方法
またその他の同類のプレイヤについて、僕は試していないのだが、YOKOHAMA BLUE RADiOというブログのエントリでまとめられているのが参考になるだろう。
MT・Bloggerユーザに捧げるMP3フラッシュプレーヤー(2005/09/25)
FLASH MP3プレーヤー紹介・パート2「FLASH SINGLE MP3 PLAYER」「del.icio.usの"Play Tagger"」(2006/02/10)

「del.icio.usのplaytaggerでは小さすぎる」とか「早送りや時間表示の機能も欲しい」とか「いかにも“プレイヤ置いてます”って感じの見た目が欲しい!」というニーズには、Seesaaの「簡易MP3プレーヤー」が応えてくれるだろう。前置きで書いたように、機能の割にデザインが良くまとめられている。

ここはひとつ「簡易MP3プレーヤー」を、非営利であれば誰でもどこでも利用可能なフリーのFlashとして公開してしまってはどうだろうか。ユーザは、再生したいMP3ファイルに応じたobject+embedタグを書くだけで、ページにプレイヤを埋め込むことができるという訳だ。サーバの負荷を回避するために、ユーザの自前サーバにアップロードしての利用という制限をつけてたとしても、存在を知らしめることができれば結構広がっていくのではないだろうか。色気を出すのなら「RSSラジオ」のように、デザインの良さを壊さない程度にSeesaaのロゴとリンクも考えられる。「簡易MP3プレーヤー」というのもやめて小洒落た名前をつけるのもいいだろう。

こういったプレイヤはシンプルな方が良いと思うのだが、すでに実装されている隠し機能の正式なリリースも期待したい。特にスキン機能が実現されればユーザもより楽しめる。どういった仕組みでスキンを表示するのかはわからないが、ユーザが自作のスキンをアップできるようにしてもおもしろい。

そんなことをしてSeesaaに何の得があるのかってのは重要な問題だ。大げさに言うと、ビジネスモデルとして成立するの?ってこと。まあユーザとして「こうなったら楽しいなあ」という視点で妄想したに過ぎないが、例えばSeesaaのサーバ上にあるFlashを使ってもいいことにしてその代わりプレイヤに広告を表示しちゃうとか、ポッドキャストや音楽系コミュニティサイトへの誘導ツールとして使うとかどうでしょうか。商いは苦手だ。


posted by 犬TV at 05:28 | Comment(0) | TrackBack(0) | WEB - TECH
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。