Recent Entries
Archives
Search


Links
Creative 
Commons License
This weblog is licensed under a Creative Commons License.

2004年01月03日

WinAmp 5とPeerCast (2)

Winampで現在聞いている曲のSong ListをMTに表示させるという仕組みは、すでにいくつかのBLOGで紹介されていますが、リストだけ表示させていてもおもしろくないので、今回は昨年12月28日に書いたWinamp 5+PeerCastの話しと連携させて、現在Winampで聞いてる曲を表示させながら、PeerCastで流してしまおうという実験です。表示されたリストを眺めて、おもしろそうならクリックして聞くという寸法。

Winampの設定はChitatopopsさんの所とほぼ同じですが、WinampのDoSomethingプラグイン設定のSubmit A URLに入れる文字の中でblog_nameに任意の文字列を書きます。
ここではmusicにしました。

http://[yoursite]/mt-tb.cgi/?tb_id=[number]&excerpt=%%CURRENTSONG%%&url=blank&blog_name=music

DosomethingはPeerCastプラグインと平行して動くのがいいですね。
MTの設定:
Macro plugin
http://mt-plugins.org/archives/entry/macros.php
IfEmpty plugin
http://mt-plugins.org/archives/entry/ifempty.php
RemovePings plugin
http://mt-plugins.org/downloads/RemovePings.zip

が必要です。

virtual Venusにある設定方法からamazonの部分を除外しました。

MTのテンプレート(出力ファイル名)playlist.phpは以下のような感じ。一応最新2曲だけの表示です。

<MTRegex>
<MTMacroApply>
<MTPings category="Playlist" lastn="2">
<div style="font-size:11px; padding:2px;line-height:9px;font-family:tahoma, sans-serif;">
<? if ("<$MTPingTitle$>" == "Winamp Stopped") { echo "<em>WinAmp is off right now!</em><br />"; }
else {
?>
<MTIfEmpty var="music">
<$MTPingExcerpt convert_breaks="0"$>
</MTIfEmpty>
<? } ?>
</div>
</MTPings>
</MTMacroApply>
</MTRegex>
<span style="font-size:9px;font-style:italic;">updated <$MTDate format="%m/%d/%y %X"$></span><br />

メインのindex.php左サイドに表示させている部分

<div class="sidetitle">
PeerCast RADIO <a href="http://peercast-jp.sourceforge.jp/"><img alt="PeerCast" src="http://guitar.jp/MT/archives/images/blog/jp_small.gif" width="32" height="32" border="0" /></a>
</div>
<div class="side">
<?php
include("http://guitar.jp/MT/playlist.php");
?>
<a href="peercast://pls/0C10C8F228DCC71937B233B5D6CE0F2A">
Click to listen!</a>
</div>

これで実験運用中。
カテゴリPlaylistに溜ってしまうPingを消すためにRemovePings Plug-Inを使いますが、これ、コマンドラインツールでして手動で動かすのが推奨なんです。Remove Pingとかいう名前のテンプレートを新たに作っておいて、そいつをリビルドすると消してくれます。
いくつ残すかの設定も出来ます。

手動って面倒なので、リビルド用のPlug-In(mt-rebuild.pl)を取ってきて、cronで定期的に動かすようにしました。
このPrug-Inはall,Archive,Indexなど、個別に指定してリビルド出来るので、持っていると何かと都合がいいかもしれません。

コマンドラインのサンプル
perl [MT Install Directory]mt-rebuild.pl -mode="index" --blog_id=3 -template="Remove Ping"

あまり派手な表示になることはしたくなかったので、わかる人だけわかればいいかなと。
それと、一色政彦さんのMTPingedEntryを使ってトラックバック表示をしていたので、そっちにWinampの送るPingがどんどん書き足されてしまっていました。Playlistカテゴリにはエントリがなにもないというポイントを利用して、MTEntriesタグで挟んでやると表示されません。
<MTEntries lastn="50">
<MTPings lastn="10">
<MTPingedEntry>
<a href="<$MTPingedEntryLink$>">Re: <$MTPingedEntryTitle$></a>
</MTPingedEntry><br />
<$MTPingDate format="%m/%d %X"$> <a href="<$MTPingURL$>" target="blank"><$MTPingTitle$></a> from <$MTPingBlogName$><br />
</MTPings>
</MTEntries>
</div>

不具合など:
Winampを止めた時にWinAmp is off right now!と出るはずなんですが、今のところうまくいっていません。
もう一つはOddcast Disp V2の設定が保存されない事。Winampを終了させるとSubmit A URLの欄が空になってしまいます。仕様なのかバグなのか不明。

Posted by mugen at 2004年01月03日 02:31 | TrackBack
Trackback