Site search
2009年5月28日木曜日
YouTube-mp4アドレス変換スクリプト(修正版)
去年、試しに書いたYouTubeのアドレス変換スクリプト http://backup-beta.blogspot.com/2008/06/youtube_21.htmlなんですが、不完全だった部分を修正したものを載せときますね。。。いつか直したの載せようって思ってたんですが、ずっと後回しにしてたら忘れかけてたんですよ^^;
このスクリプトはYouTubeのアドレスをmp4の動画アドレスに変換して、土地のメディアURLに設定します。(自分名義の土地が必要)
今回の修正では、次のようなYouTubeアドレスのビデオIDの後ろにパラメータが付いてるものも正しく変換するようにしています。
http://www.youtube.com/watch?v=6KgHDLORnWY&feature=channel_page
あと、当時は土地持ってなかったので、ちょっと動作に自信なくてスクリプトに注釈も入れてませんが、今回はテキトーに入れときましたw
オーナーのチャットでユーチューブのURLを入力するようにしてますが、今回のスクリプトではチャンネルを1にしてます。
/1 http://www.youtube.com/watch?v=6KgHDLORnWY&feature=channel_page
それからllParcelMediaCommandListでのアバター限定をつけてませんので、設定された動画はオーナー以外も見れます。
mp4アドレス変換サービスは前回のスクリプト同様www.youtubemp4.comを利用させてもらいましたが、www.vidney.comを使う場合
string mp4url1="http://www.vidney.com/d/download_vidney.php?v=yt";
string mp4url2="&f=mp4";
に変えてくださいね。
6月4日追記: www.vidney.comは仕様が変わって使えなくなってました。
2010年6月28日追記: 2010年3月のYouTubeの仕様変更以来www.youtubemp4.comも有効なMP4アドレスを取得できなくなっています。
このスクリプトはYouTubeのアドレスをmp4の動画アドレスに変換して、土地のメディアURLに設定します。(自分名義の土地が必要)
今回の修正では、次のようなYouTubeアドレスのビデオIDの後ろにパラメータが付いてるものも正しく変換するようにしています。
http://www.youtube.com/watch?v=6KgHDLORnWY&feature=channel_page
あと、当時は土地持ってなかったので、ちょっと動作に自信なくてスクリプトに注釈も入れてませんが、今回はテキトーに入れときましたw
オーナーのチャットでユーチューブのURLを入力するようにしてますが、今回のスクリプトではチャンネルを1にしてます。
/1 http://www.youtube.com/watch?v=6KgHDLORnWY&feature=channel_page
それからllParcelMediaCommandListでのアバター限定をつけてませんので、設定された動画はオーナー以外も見れます。
// YouTube mp4 converter
integer ch=1; // チャット入力用チャンネル
string youtube2mp4url(string video_url)
{
if (llGetSubString(video_url,0,6) != "http://") return ""; // httpアドレス以外は空文字を返す
string yturl=".youtube.com/watch?v=";
string mp4url1="http://www.youtubemp4.com/video/";
string mp4url2=".mp4";
integer ytl=llStringLength(yturl);
integer i=llSubStringIndex(video_url,yturl); // URLチェック
if (i > 7) { // youtube.comだったら
string str=llGetSubString(video_url,i+ytl,-1); // ビデオID以降の文字列
i=llSubStringIndex(str,"&"); // &チェック
if (~i) str=llGetSubString(str,0,i-1); // &があったら&以降をカット
video_url=mp4url1+str+mp4url2; // URLを変換
}
return video_url; // URLの文字列をリターン
}
default
{
state_entry()
{
llListen(ch, "", llGetOwner(), ""); // チャンネル(1)でオーナーの発言をリッスン
}
on_rez(integer start_param)
{
llResetScript(); // 持ち物から出したときリセット
}
listen(integer channel, string name, key id, string msg)
{
if (channel == ch && id == llGetOwner())
{ // オーナーのチャット受信
string url=youtube2mp4url(msg); // URL変換
if (url) { // URLを得たら土地に設定
llParcelMediaCommandList([
PARCEL_MEDIA_COMMAND_URL,url,
PARCEL_MEDIA_COMMAND_TYPE,"video/*"]);
llOwnerSay("Video URL = "+url);
}
}
}
}
mp4アドレス変換サービスは前回のスクリプト同様www.youtubemp4.comを利用させてもらいましたが、www.vidney.comを使う場合
string mp4url1="http://www.vidney.com/d/download_vidney.php?v=yt";
string mp4url2="&f=mp4";
に変えてくださいね。
6月4日追記: www.vidney.comは仕様が変わって使えなくなってました。
2010年6月28日追記: 2010年3月のYouTubeの仕様変更以来www.youtubemp4.comも有効なMP4アドレスを取得できなくなっています。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿