MP3の携帯対応(Ktai Style, Mobile Eye+)
そんなわけで、早速プラグインの改造を施し、携帯に対応させました。
先日うpした音源も聞けるようになってますんで、どうぞ。
思いのほか簡単だったんだけど、正規表現が難しい‥全然分からん。
性器表現なら簡単なのに。
あ、他にもいろいろ弄繰り回してて、またdocomo以外の携帯から閲覧できなくなってましたヽ(;´Д`)ノ
すみません‥。
気付くの遅れてさっきなおしました。
つーわけで、一応ソースうpします。
まず、Audio Playerっていうプラグイン使ってる場合は携帯表示だったときに<a href=”URL”>ファイル名</a>になるように分岐コードを追加。
の前に、485行目当たりに携帯判別用の関数をファンクションしときましょう。
// 携帯識別 by まきまき
if (! function_exists('is_mobile')) :
function is_mobile() {
$mk_mobile_agents = array(
'DoCoMo/', 'J-PHONE/', 'J-EMULATOR/', 'Vodafone/',
'MOT-', 'MOTEMULATOR-', 'SoftBank/', 'emulator/',
'DDIPOCKET;', 'WILLCOM;', 'emobile/', 'KDDI-', 'UP.Browser/',
'Nokia', 'Opera Mini', 'Windows CE;',
'(PSP (PlayStation Portable);', 'Nitro) Opera'
);
$ua = $_SERVER['HTTP_USER_AGENT'];
foreach ($mk_mobile_agents as $a) {
if (strpos($ua, $a) !== false) {
return true;
break;
}
}
return false;
}
endif;
// end by まきまき
この関数、Mobile Eye+とWP Super CacheとAudio Playerで使うようにしました。
携帯判別の必要がある部分は、全部同じ関数を使ってやると効率いいかと。
どのタイミングでファンクションされるかしらんから、! function_exists(‘is_mobile’))でファンクションされてるかどうか調べる。
つってもこの関数、元はゆりこさんのKtai StyleのCacheプラグイン用のパッチからパクった物なんだけど(^ω^)すみません(;^ω^)
で、534行目のis_feedとelseの間にelseifでis_mobileの条件を追加してやると。
} elseif (is_mobile()) { // 携帯の場合はファイル名を表示しURLにリンク by まきまき
$files = explode(",", $source);
$links = "";
for ($i = 0; $i < count($files); $i++) {
$fileparts = explode("/", $files[$i]);
$fileName = $fileparts[count($fileparts)-1];
$links .= '<a href="' . $files[$i] . '">' . $fileName . '</a><br />';
}
return $links;
この部分はis_feedの条件の時に似たような部分があったからそのままパクった 笑
で、このプラグイン使ってるひとなら$linksを’<a href=”‘ . ‘http://mp3.3gp.fm/q/Link.aspx?u=’ . $files[$i] . ‘”>’ . $fileName . ‘</a><br />’;にしてやればOKこれだけでもOK。
でもこのプラグイン使って無い人とか、携帯表示の時mp3ファイルへのリンクを全部変換したい場合は、Mobile Eye+のフィルター部分をいじってやればOK。たぶんKtai Styleでもおんなじ要領かと。
// URLGATEを使用しない
っていうコメントがあるところの直前に
// 拡張子が*.mp3の場合、URLGATEがON/OFFに関わらず3gp.fmで変換
if (preg_match("/^(?>.*)(?<=.mp3)/i", $url)) {
return 'http://mp3.3gp.fm/q/Link.aspx?u=' . rawurlencode($url);
}
を挿入。
これが結構悩んだ。
どのタイミングで飛ばしてやればどういう条件でもうまく動作するか。
それ以前に、正規表現の記法が分からないから(;^ω^)でもちょっとだけ分かったお(^ω^)
正規表現ので躓いて、頭混乱して小一時間作業がストップした 笑
正規表現はプログラミングをする上でかなり使う頻度の高い技法だけに、ちゃんと勉強しておかなければー。
// URLGATEを使用しない
より以前に↑のコードを書くことで、URLGATEがONでもOFFでもMP3ファイルへのリンクは変換されます。
携帯端末でMP3が必要になることは無いだろうってことで、あえて間にページを挟まずに直接変換ページに飛ぶようにしました。
で、更に、こうすることで変換ページへのリンクにURLが変換されたものが更にURLGATEのページに変換されるのを防いです。変換って言葉が多すぎて、もはや意味不明orz
とりあえず、こんな感じで。
俺みたいに音楽やってて音源とかアップする人にはかなり重宝するかと。
ちょうどいい具合のサービスを提供してくれてる、3gp.fmにも感謝です。
ゆりこさん、Ktai Styleの次期バージョンにも改良して標準で搭載するのはどうでしょうか?笑
追記:
あ、ちなみに、対応するのは
「何処も」(docomo), 「ぁぅ」(au), 柔らか銀行略して「柔銀」(SoftBank)
の3大キャリアだけになります(;^ω^)
他のキャリアについてはどうしようもないです。
この3キャリアだけ判別してURL置換してもいいんだけど、その分動作も重くなるし、まぁいっかって感じです。
No related posts.

うーん‥。
仮にこのサイトをゆりこさんが「ダメサイト」と認定(笑)したとして、それでも唯一このサービスを提供してくれてる3gp.fmは個人的には外せません 笑
かなーり個人的にですけど、PCでも携帯でもMP3が再生できるっていうのはかなり重宝します。
先日もちょっと触れましたが、このサイトの場合、著作権問題の方が先に出てくるかも‥?
詳しいことはぶっちゃけわかってませんが、著作権で保護されている楽曲、所謂CDなんかをエンコーディングしたMP3等の音楽ファイルを、誰にもダウンロードできるようにインターネット上にアップすると著作権違反になると思いましたが‥自分のような方法をとれば、そういったことも可能になってしまいますよね‥。
自分で楽しむ分に、単に変換する為に一時的にアップするだけなら問題なかったはずですが‥。
JASRACには何でもかんでも規制するんじゃなくて、何かうまい打開策を考えてほしいものです‥。今の時代、ここまでインターネットが普及してしまうと、規制してもキリがなくなって最後には全く自由が効かなくなるでしょうからね‥。JASRACに限らず、何でもそうなんですが。
話がそれましたが、広告の件は割と難しい問題なんですね‥。高木センセイ、なんだか凄い方ですね∑(・∀・;ノ)ノ 頭の悪い自分にはもう難しすぎてdsじfそヴぃs il|li_| ̄|○il|li
っていうか、Ktai Styleにはそんな目標があったんですね!
凄いです!流石、ゆりこさんです!
自分も後半年ぐらいすればロリポップ離れができそうなので、Ktai Styleを導入できそうです 笑
というか、それまでロリポがPHP5に移行しなかったらそれもそれもで問題ですが…(でも、まだPHP4のサポートを独自に有償で続けている会社があるみたいですね)
これからも応援してますね(ノ`・ω・)ノ!
あ、勝手ながら、リンクを貼らせて頂きました!
何か問題がありましたらお申し付けください( ´_ゝ`)ゞ
うーん。携帯サイトにおける広告モデルがどうあるべきか、はなかなか難しい点です。件のサイトが実際にどういう構成になっているかを確認してないので、「3gp.fm がダメ」かどうかは判断を留保しておきます。実際に確認して、本当にヤバければ、高木センセイにチクるなり、ウチのサイトで取り上げるなりをやってみます (でもヒマがなくてできなさそう)。
Ktai Style は、WordPress ユーザーのみならず、携帯コンテンツ制作会社に対して「簡単に携帯サイトを構築できるツール」として提案できるレベルまで持っていきたいと思っていますので、広告をどう載せるか、というのは、わりと興味があります。
携帯サイトの広告レベルが低いのは、キャリアの問題なのか、広告代理店の問題なのか、出稿側 (大企業など) の問題なのか、切り分けができてないので、これまた取り上げるのが難しい話です。こちらも時間が取れれば追っ掛けてみたいテーマですね。
3gp.fm撃沈(笑)
個人的にはこういう広告収入で運営しているサイトは多少はそういう事をしても仕方ないのかなと思います。
別に広告そのものが危険なわけではないようですし(google adsense等の真っ当な物)、もし広告収入で運営という方針を変えるとすれば、無料でのサービス提供はまず不可能になるかと‥。
ユーザー側としてもこれだけのサービスを無料で使えるというのは非常にありがたい事ですので、その辺は妥協してとりあえず使って行きたいと思います‥。
ただこのサイト、そういう事よりも著作権云々で問題になってくるかもしれませんね。自分のように個人で録音したMP3を配布したりするのは何の問題もありませんが…CDの音源とかを配布したりし始めるサイトが現れるかも‥?
JASRACは嫌いですが、一応ルールは守るべきですね。
確かにそうですね‥。
しかし、それをいい出したら、アフィリエイト広告というシステムそのものが問題になってくる気も‥。
なるほど(笑)
確かに携帯のウェブっていうのはいろんな意味でレベルが低いですね‥。怪しい広告、良く見かけます。分け合って、その辺の事情をちょっと知っていますが、一つの真っ当(に見える)サイトに登録させて、そこから他の大量のサイトに同時登録、って言うのが主流のようです。某大手企業ですらそれをやってるようで‥あきれますねorz
Ktai Style 自体が Mobile Eye+ および (デジタルスタジオの) WP MOBILE に対するアンチテーゼなので、「外部サービスを使わない」のは根源的な方針に近いです。
わたしの嫌いなのは「アダルト広告を見たくない人に見せてしまうこと」です。アダルトコンテンツ自体が嫌いなのではありません。
とはいえ、携帯コンテンツの場合、バナー広告にアダルト関連などのいかがわしいものが比較的多いため、相当気をつけないといけないです。PC の場合、大企業が提供する広告が多いので、さほど心配しなくていいんですが、なぜか携帯の場合は、あまり有名でない企業が出すあやしい広告がはこびっているんですよね……。
そうだとすると、限りなくフィシング詐欺に近い構成ですね。まっとうなビジネスをしているサイトがそういう構成なのは非常に困ります。フィッシングサイトがそういう作りにしても見破られにくくなってしまいますから。ということで、個人的には「3gp.fm はダメサイト」認定かも
なるほど。流石、慎重ですね 笑
理想的なのは、変換プログラム自体を自分で提供出来ることだと思いますが、Web系の言語ではまず不可能なようですし、このサービスもaspxから更に別のプログラムにデータを渡して変換しているみたいですね。
仮に同じ事が出来たとしても、サーバへの負担等を考えたらまず無理ですねorz
確かに、このサービスも広告が主な収入源のようで、実際に変換したデータをダウンロードできるまで何回も中継ページが出て、その度に広告で紛らわしいページを出してるのはちょっといただけないですね。
そのうち、ゆりこさんの大嫌いなアダルト広告を使いだす可能性も無きにしもあらずですし 笑(例のMobile Eye+のURLGATEの件が印象的でした 笑)
複雑なサービスほど危険性もたくさんあるでしょうし‥。
とは言え、個人的にはかなり重宝するサービスなので、明らかにヤバいサービスにならない限りは使っていってみたいと思います。
うーん。原則として Ktai Style は「外部サービスを使わない」方針なので、無理ですね。3gp.fm が現在および将来にわたって安心して使えるサービスである保証がない以上、使うのは怖いです。