動画配信
新作アニメ配信情報ブログパーツの話も忘れないうち書いておきます。
今回はブログパーツに関する
詳細な説明や使い方ページも作ったので
ブログパーツ自身に興味があったらそちらを見てください。
実はブログパーツの説明ページは
ここ1ヶ月ほど頻繁に更新してたり。
(ブログパーツもずっと改良・更新してました)
説明ページは別に作ったのでここには苦労話!?でも書こうかなと。
いつものように無駄に長いので興味がない人は読み飛ばしてください。
最初のバージョンのリリースが前回の更新日の半月後だったので
当初は
そんなに時間をかけなくてもできるという目算だったはず。
前に作った人気ランキングのやり方を踏襲すればいいだけなので。
実際にそんなに苦労してないから半月後にリリースしてるわけで。
(最初の頃は他のことも平行してやってたし)
ところが2つの要因によって当初の目算が大幅に狂ってしまうはめに。
1つ目は今回から
FC2以外のブログサービスにも広く対応するために
カッチリとしたデザイン(フルデザインモード)を導入したこと。
※上に貼ってあるのがフルデザインモード
2つ目はFC2の共有プラグインの申請に(なぜか)落ちてしまったこと。
結果として他のブログサービスへの対応が不可欠になってしまった。
人気ランキングのブログパーツはタグ構造がFC2ブログ用になってて
他のブログサービスに持っていくと期待通りの表示にならないのです。
サイドバーにリストとして並ぶタグは
サービス毎にまちまちなので。
なのでタグ構造に依存しないフルデザインモードを用意したわけです。
用意したというのは簡単だけど完成までには遠い道のりだったよ……
まずリスト要素に
表示スタイルを自己設定するのは今回が初めてで、
そのへんに絡んで幾多のハマり要素が有ったのでした。
要素自身にスタイルを設定すると美しくない(サイズも肥大する)からと
スタイルシートに追記していったら
優先度の関係で反映されなかったり。
だから要素にスタイル設定→スタイルシート追記→要素にスタイル設定と
作業内容が無駄になるような試行錯誤をやってたわけです。
ちなみに現在は!importantを付けたスタイルシート追記になってます。
正規の方法でスタイルシートに追記すると
セキュリティエラーが出たり。
テンプレートなどが読み込んでるスタイルシートは別のドメインなので
そこにブログパーツのスタイルを追記するとエラーしてしまうのです。
最初のスタイルシート→最後のスタイルシートに書き換えてみたりして
最終的にstyleタグを(なければ)作成してそれを探して追記してます。
※html内のstyleタグなら追記の問題は発生しない
スタイルシートに追記するaddRule(IE用)に{}つけてスタイルを書くと
IE8以降の標準モードで
スタイルの中身が空になるのにもハマった。
これネットにあるサンプルだと{}がついてるのが結構有ったりする。
最初に見たのがそれで真似して書いてあったからハマってしまった。
ちなみにIE8/9でもIE7以前の互換モードだと{}つきで動いちゃうのです。
IE8(標準)はダメでなぜかIE9(標準)では正常に動いてるので調べたら
IE9にはなんとinsertRuleが追加されててそちらで動いてたりとか。
※insertRuleはIE以外のスタイル追記メソッド
今回は従来型のデザイン(シームレスモード)でもボタンなどがあって
一部のスタイルを設定してるので同様の問題にハマったわけでした。
ボタンで番組を切り替えれば便利!と安易に考えた自分を呪いたいよ。
いや、実際ただランダムに表示してるよりもこの方が便利なわけです。
実は人気ランキングでも切り替えをつけるアイデアは有ったのです。
面倒だったからそのうちとか思ったまま放置プレイになってるけど。
ちなみに多くのブログパーツは自身の中にstyleタグを作成して
そこに文字でスタイルを書いていく方法が多かったりするみたい。
bodyの中にstyleタグを入れるのは文法的には間違いなんだけど
とりあえず動くから良いんじゃね?ってことで使われてるみたい。
IEとそれ以外の違いを考えなくていいし古いブラウザでも動くしね。
この方法ならOpera 8でも動くんじゃないかな。
(今さらOpera 8も無いかと思って対応しないで放置してます)
次にハマったのはフルデザインの角丸と枠の影です。
これは比較的新しいブラウザには実装されてるスタイル表現なのです。
しかしIEはついこの前出た
IE9以外には実装されてません……
この手の問題が起きるたびに多くのWeb制作者はまたIEか!と言ったとか。
デザイン志向のフルデザインモードでIEだけ見た目が違うのはアレなので
これだけはIEでもそれっぽく表示しないとダメだと考えて対処したのです。
これ何も考えずに
イメージで作ってればきっとずっと楽だっただろうね。
あ、でも下地の色があるからイメージでやるのも結構難しいかも……
IE(8以前)では角の丸い枠も枠の影もスタイルとしては表現できないけど
図形要素(VML)として
それっぽい見た目にすることは可能なのです。
JavaScriptでスタイルを再現するライブラリもいくつか有るのです。
なのでその中でFirefoxに見た感じが近かったie-css3.htcを使ってみる。
一部の問題があるものの何とかなりそうだなと思ったら問題が発生。
当初はスタイルを要素に記述してたのでhtc方式では使えなかったし。
スタイルシートに追記してもセキュリティの関係で動かなかった……
自分のサイトなら良くてもブログパーツではそのままでは使えないなと
仕方なく
ie-css3.htcのソースを改造してパーツ側から適用できるように。
で一応は動いたんだけどテンプレートによって不具合が出るのであった。
※これは元のソースの仕様がそうなってる
どうせソースを変えてるんだしとついでに不具合も修正しちゃったよ。
書き換えたie-css3もちゃんと公開しといたほうがいいのかな?
(パーツの貼り付けソースにあるURLを直に叩けば中身は見れますが)
ちなみに新統一デザインの角丸はie-css3.htcではなくてはイメージです。
JavaScriptを無効にされたら角が丸くならないのはどうかと思ったので。
(ブログパーツはJavaScriptを無効にしたら動かないから問題ない)
角が丸くないと見た目が微妙なところ以外そもそもイメージ化してないし。
つまりIE(8以前)で見ると角が丸くないところが結構あったりします。
3つ目は各ブログサービスに対応する作業でのスタイル複製でした。
それぞれのブログサービス毎にサイド用のタグ構造が違うのです。
それぞれに合わせたタグを生成するのが一番いいのだろうけど、
それをやると一部のブラウザ(IE6や7)で
やばいぐらい遅くなるので。
(文字列を繋いだりする処理が多いほど恐ろしく遅くなるみたい)
スタイル情報をコピーしてそれっぽく見せるという手法で実装してみた。
既存のタグのスタイル情報をコピーして見た目だけ同じにしたのです。
と説明するのは簡単だけどそれを実現するのは結構大変だったですよ。
まず最初にやったのはスタイルシートの値を読み取るという手法。
しかしこの方法も
またしてもセキュリティの壁に阻まれてしまう。
(テンプレートのドメインとパーツのドメインが違うので読めない)
仕方ないので要素に適用されてるスタイル情報を全て取得して、
親要素のスタイル情報と比較して違う内容をコピーするという
力技としか言いようがない無茶なアプローチで実装をしてみたり。
しかしこの方法だとブラウザによって変な情報が入って使えなかった。
なので要素のスタイルで
必要そうな分を全部コピーすることにしてみた。
穴のあるやり方だけどこれが一番問題なく動いたのが悲しいことに現実。
何でもかんでもクソ真面目にやるのがいいとは限らない例というか……
それ以外にも細かいデザインの調整をする作業だとか
いくつものブログサービスに(確認用で)入会して設定する作業だとか
テンプレートを切り替えながら表示が崩れないか確認する作業だとか
使い方やらパーツの貼り方やらを丁寧に書き記していく作業だとか
一つ一つは大した時間ではなくても塵も積もって結構時間がかかってる。
たかがブログパーツ如きにこんなに時間がかかったのはそんな理由です。
次は今回の経験を生かして
もっと時間が掛からないようにしたいなと。
スポンサーサイト
アニメ動画配信サービスナビがやっと懸案だったGyaO!に対応しました。
配信サイトとしては大手だし画質は一番だから早く対応したかったけど
サイトの構造に問題が有りすぎてリストを合成するのが大変でした。
無料配信分(GyaO!)と有料配信分(GyaO!ストア)が別サイトになってるし、
有料分は作品ページが無くて単話もパックもフラットに出てくるし、
無料分だって1話お試し無料と現在配信中のページが別になってる。
(1話無料分がストア側にある作品もある)
どういう感性だとこんなサイト設計になるのか不思議でしょうがない。
画質が悪かったら頭の中から存在を抹消したくなるよ……
裏僕とKiss×sisの配信が始まったのでたぶんこれで4月組は全部でしょう。
後は新番組の配信に消極的なTBS・ポニーキャニオン・アニプレだけだし。
今期の人気作品のトップ3が全てそれで
一つも配信がないのがアレだけど。
特にTBSの動画配信のやる気のなさには困ったもんです。
去年の7月期以降の新番組で配信してるのまだ一つもないんだから。
(デュラララ!はMBS製作で配信はアスキーメディアワークス扱い)
ちなみに新番組の動画配信を積極的にやってるレーベルは
めぼしい配信サイト全てに自前提供してるメディアファクトリーと
(あにてれのテレ東と関係ない作品はメディアファクトリー提供)
自前の配信サイトを持ってる角川とShowTime優先配信のMMVっすね。
この3社はYoutubeやニコニコに公式を持ってるという共通点もある。
あと角川系の角川コンテンツゲートが結構積極的に配信してますな。
角川コンテンツゲートって何?って感じですが主にAMWを扱ってます。
角川系のアニメ作品って本家である角川エンタ扱いの作品とは別に、
他の製作会社(スタチャ・ジェネオン・アニプレなど)からDVD/BDが出る
アスキーメディアワークス(ほとんど電撃文庫)の作品があるわけで。
そして角川エンタの作品よりも
ヒット率は高かったりするわけですよ。
それらの作品が配信では角川コンテンツゲート扱いになってるみたい。
最近のだとレールガンやデュラララ!の配信がKCG扱いになってます。
※れでぃ×ばとはBIGLOBEストリーム≒アニメワン扱い
その角川コンテンツゲート扱いの作品の一部が今週からShowTimeでは
バンダイチャンネル経由での提供ではなく直接提供になったみたい。
インデックス・レールガン・デュラララ!の3作品が
ロゴなしになったし。
無料分も嫌がらせの邪魔なテロップ入りやLB収録では無くなってます。
(切り替えにあわせて6話まで今だけ期間限定で無料になってます)
邪魔なテロップはアレだけどロゴは入れておいたほうがいいような気も。
ちなみにShowTimeではバンダイチャンネル扱いでの配信を終了して
直接提供に切り替えるということをわりとしょっちゅうやってます。
(バンダイチャンネル扱いを終了してそれっきりなのもあるけど)
話はTBSに戻って。
なんか5月1日から「けいおん!」(一期)の
配信が始まったようです。
場所は各所のTBSオンデマンドで。ことアニメに関しては超辺境の。
ろくなアニメ作品がないからリストなんてクロールしてなかったよ!
gooだけはアニメのリストに一緒に混ざってるので出てくるけど。
ShowTimeやDMMでは別扱いでアニメのリストに出てこないから面倒です。
何のためのアニメのリストやねんって感じ……
(ShowTimeは今アニメのとこに誘導バナーが貼ってあるけど)
ちなみにフジテレビOn Demandも別扱いでアニメのリストに出ないです。
その「けいおん!」の配信ですがサムネイルでは
ワイド素材に見えるね。
もしかして配信はワイドなんだろうか?レンタルDVDは4:3なのに。
実際のところは無料サンプルがない(1話から有料)ので確認できません。
さすがに確認のためだけに金を払うのもバカらしいしな……
前にバンダイチャンネルの画質を比べた時に書いた
DMMのこと。
つい最近、たぶん3月から本家と同じ新方式に変わったようです。
実は
Newtypeチャンネルで提供してた動画も数日前まで旧方式でした。
(これで
バンダイチャンネル直配信は全部新方式に変わったと思う)
サービス側が変更に対応できなくて遅れて対応になったのだろうか。
DMMは自前のシステムに新方式を組み込んだから時間がかかったのかな。
アニメワンみたいな自前とB-ch側の2階建て構造は使い勝手が悪いしね。
自前とB-ch側の
タイトルリストの不整合も含めて何とかして欲しいよ。
ちなみにNewtypeチャンネルで提供されてる作品は少年陰陽師を除いて
全て(独占配信の作品も)バンダイチャンネルのサーバーが配信してます。
よーするに配信システムを自前で用意せずに間借りしてるわけです。
そして動画データがあるのでその気になればB-chで配信ができるのです。
実際につい最近「喰霊-零-」の配信がそれぞれのB-chでも始まったし。
B-chで配信してない作品は意図的に
他には配信させてないってことです。
見た感じでは放送からある程度時間を経たのをB-chにも流してるみたい。
化物語の
公式サイトで配信してる動画も(14話は)バンダイチャンネルらしい。
FLASHは簡単には
動画のURLがわからないのでどこにあるのかと思ったら。
あれほどの人気作品は半端なサーバーじゃ耐えられないとは思ったけど、
バンダイチャンネルのサーバーなら配信開始直後以外なら大丈夫そうだ。
前回書いた
動画配信タイトルの一覧ですが、なんとか完成しました。
他のことを何ひとつやらずに作業して完成させたという表現が正確かも。
おかげでこの1ヶ月ほど
アニメをほとんど見てません……
見てないのでコメントも書きようがないし。当然ながら書く時間もない。
コミックなんか読む以前に買ってすらいません。出かけてないから(爆)。
読んでないのに通販で買っても積み上がるだけだし。買う金もないし。
にしても、それぞれの画質のチェックやサービスの使い勝手から始めて、
タイトル一覧をリストするサイトまで作るとか何を頑張ってるんだか。
確かに(自分には)便利だけど、手間かけた分のわりに合うのだろうかと。
損得勘定で計るなら明らかにバカバカしいことだとわかってはいるけど。
それでもやらずにいられないあたりがなんと言うか……
話は動画配信サービスナビに戻して。
完成と簡単に言ってるけどそこに至るまでの道のりは遠かったです。
タイトルを取得すること自体はそんなに大変ではなかったけど。
それもページ要素をツリー化するモジュールを自作したのが大きいかも。
今はなるべく手を抜いて既存のものを使う方針でやってはいるんだけど、
どうにも機能的に使えなかったりサーバー的に使えなかったりだし、
ある定番のモジュールなんかページを読み込むとクラッシュするし……
(人気ランキングで試すと大丈夫なのでページ内容によるみたい)
だったら自分で書いてしまえとJavaScriptのDOM仕様に似せて作ってみた。
思ったより簡単にできたので俺様天才かも!とか寝言をほざいたり(爆)。
構造の壊れたページの処理は超手抜きだったりしますが(汗)。
前回の更新時点で既にタイトルリストが取得できてたってことは、
ページを解析するモジュールは「ほぼ完成」をしてたってことです。
しかしこのモジュールは後で
とんでもない問題を引き起こすのでした。
タイトルリストが取れてからの方が作業量はずっと多かった。
特にサービス毎にタイトルの表記がずれてるのをすりあわせる作業と
タイトルがちゃんと50音順に並ぶように読みをいれるのが一苦労。
実はサービスから
タイトルリストを取得するのに1分以上かかるのです。
バンダイチャンネルみたいに1ページで全タイトル取れるのはいいけど
数十ページ取得しないとリストが作れないサービスがあるので。
最初は補正データや読みデータを更新するたびタイトルを取り直してて
チェック作業が非常にかったるいことになってたのでした……
そんな経験もあって今回はキャッシュ処理を最大限に最適化してみたり。
サービス毎のリストと表示してるリストは別々に持ってたりするのです。
補正データや読みデータの更新って今後も継続してやる必要があるから。
「放送中アニメの人気ランキング」を継続して更新してきた経験から
データの更新に関わる管理機能を最初からしっかり作りこんであります。
人気ランキングはとりあえずランキングが出せる状態で公開したけど。
非同期の更新はなくアイテム追加をサポートする機能も無かったのです。
(しばらくはページにほとんど訪れてる人はいなかったけどね)
よーするに、
とにかくアイデアを実装しました、というレベルだった。
そこに運用しながら足りない機能を追加し続けて今に至るわけです。
でも今回は運用に必要な機能は最初から思いつく限り入れたのでした。
実は「新着タイトルリスト」なんか当初は管理機能として考えてたよ。
追加されたのがわかれば
読みを入れる作業も楽だろうという発想で。
よく考えてみたら利用者にも便利だなと表のメニューに入れたのです。
(管理用のメニューは別に存在するのです、人気ランキングの方も)
増えたタイトがあるなら消えた(配信終了)タイトルもあったりします。
そんな消えたタイトルを表示する機能も実は管理用として存在します。
全タイトルを(違う体裁で)一覧する機能なんてのもあったりします。
このへんは利用者向けとしてはいらんだろうと表には出てませんが。
表の機能だけでも全タイトルを表示する裏技?みたいのはあるけど。
※「|」で検索すればたぶん全部出てくる
運用を補助する管理機能を充実したのは継続性を重視したからです。
あまりに手作業が必要だと
継続して更新するのが困難になるので。
かといって完全な自動処理にすると情報の質が伴わなくなってしまう。
人気ランキングだってノイズを排除するための細工をしてるわけで。
情報の質を維持しながらいかに省力化するかが継続のために重要です。
管理機能を充実すると最初が大変になるけどそこは仕方ないかなと。
サイトデザインも今回はちょっと工夫をしてみました。
ブログの体裁をコピーしたデザインのなにが工夫かって感じですが(爆)。
とりあえず今一番マシなのがブログのデザインなので真似は必然です。
という話ではなく、トップページに
ダイジェストを持ってきたところ。
人気ランキングはトップに説明が入ってるけどアレはどうかなと……
BGM全曲リストの体裁をベースにしてるからああなっているんだけど。
本来は入り口にも何らかのランキングを載せるべきではないかなと。
ランキングの仕組みや説明はヘルプとして用意すればいいわけだし。
(BGM全曲リストは今のままでいいと思う)
そんな考えで今回はトップにリストのダイジェストを載せたわけです。
タイトルリストのダイジェストを乱数で表示するのを決めてて。
でも全タイトルの中から乱数で選んで表示するのは面白くないしと。
やっぱ見る人が興味あるタイトルが並んでた方が効果があるだろうと。
トップだし絵とか入れて大きく表示したほうが見栄えもいいかなと。
絵はamazonのジャケ絵を使うとして、でも
全てに対応すると死ぬるし。
そこで新番組とオススメ(ここの注目タイトル)だけ対応することに。
ついでにその分だけブログ(ここ)の記事や公式へもリンクしてみたり。
そのへんも含めてリストで表示してみたらなんかいい感じになった!
新番組リストと注目タイトルリストは実はそれの副産物だったりして。
トップでランダム表示するタイトルを全部表示してるだけなので。
新番組の配信リストなんか結構便利で副産物としては大当たりかも。
そしてトップ以外のリストにもジャケ絵他を表示するようにしたら
新番組やオススメ作品が他より目立つようになって凄くいい感じに。
自分で作っておいてなんだけど
予想外の表示効果にビックリしたよ。
実はトップ以外のリストでも大きく表示することは原理的に可能です。
他とのバランスを考えてあえて小さく表示してるだけで。
管理用に新番組とオススメ全部を大きく表示する機能はあったりする。
※ムービーの生存チェック用で
すぐ上に書いてあるけどトップだとムービーを表示することがあります。
バンダイチャネルが提供する無料映像で埋め込み可能なのがあるので、
せっかくだから小さいサイズでサービスナビにも埋め込んでみたのです。
こっちの方がジャケ絵より
作品の雰囲気がわかりやすくていいかなと。
「R.O.D」とか「かみちゅ!」とか「あさっての方向。」とかのPVは
短い中に作品のエッセンスが詰め込んであって見本としてはいい感じ。
もっと幅広い作品のPVが埋め込み対応ならいいのにとか思ったよ。
てゆーかPVなんて宣伝目的なんだからもっと積極的に対応してくれよ。
efなんかブログの横に貼ったやつを埋め込みさせてくれればいいのに。
かと思えば1話まるごと埋め込み対応してる作品もあったりするわけで。
(1話よりもよくできたPVの方が見本としてはいいけどね)
契約の問題かメディアファクトリー関係は一つも埋め込めないので
メディアファクトリーのはYoutubeの公式チャンネルのを使いました。
こっちはバンダイチャンネルと比べて縛りがないのでチェックが楽です。
(B-chは埋め込みURLをチェックするのでローカルだと見えない)
ゆるゆるなせいか動的に表示をON/OFFしても不具合は特に出なかったし。
実はB-chのムービーは動的に表示を制御すると表示が出ない場合がある。
フラッシュが古いとメッセージを出す
余計な……親切な仕様もあるし。
だったらジャケ絵に戻そうと動的に切り替えてて凄くハマりました。
あれこれ試行錯誤した結果あまり美しくない今の方式に落ち着きました。
ちなみにどちらのムービーも音量の右のボタンで全画面表示が可能です。
話は前後するけどある程度体裁がついたところでサーバーに上げました。
定期更新が正常に動くかどうかをしばらく様子をみたかったので。
もちろん更新処理自体は手元の環境で動くことは確認済みでしたが。
と言うわけでサーバーに上げて表の処理は特に問題なく動くのを確認。
しかし試しに更新処理を走らせてみたらサーバーエラーが出てしまう。
(管理用の)エラーが見えるモードで動かしても真っ白で何もでないし。
このままではどうにもならないので個々の処理を動かしてみることに。
管理用で更新処理を処理内容毎に実行することもできるので。
そうしたらアニメワンのタイトルを取得するとこで終わっちゃう模様。
この後は終わってしまう原因がつかめずいろいろ試行錯誤するのです。
文字コードのせい?とか処理時間が長いから?とか迷走を続けて。
止まるタイミングが一定じゃないのも
事態の混迷を深めたのでした。
エラー原因を教えてくれればこんな苦労は無かったのに!と後で思った。
ちなみにサーバーエラーと言うのは500 Internal Server Errorのこと。
通常はプログラムや設定の間違いで表示不能な時に出るものだけど、
実行の途中で出る場合は途中でプログラムが止まってるということ。
後で気付いたけどシステム側に強制的に止められてたってことです。
タイトルリストの取得処理はページデザインの変更を想定してるので
エラーが発生したときはログを残して中断するようにしてあるのです。
にも関わらず処理のログが全く残ってないので途方にくれてたよ。
さくらは負荷が高すぎると500になる(止められる)という話があって、
もしかして更新処理は100円のコースでは荷が重いのか?とか思って。
ある意味では
負荷が高すぎで荷が重かったわけだけど……
人気ランキングのほうは全く問題が出ないのに変だなとも思ったけど。
このままでは埒があかないので試しに一つ上のコースで試してみたり。
しかし一月500円のコースでもやっぱり途中で止まってしまう。
処理がずいぶん速くなってエラーで落ちる時間まで早くなった(爆)。
もうどうしていいかわからなかったよ。
仕方ないのでタイトルリストを取得する部分だけ取り出して
サーバー側のコンソールで実行するプログラムを作ってみたり。
※一月100円のコースにはサーバーのコンソールが開放されてない
それでやっと気付いたんだけどやっぱり途中でシステムが止めてる。
最初は時間かなんかで止まってると思ったけど時間に関係なく止まる。
アニメワンの取得の途中で止まるのにそれだけにしたら止まらないし。
どれだけやっても
原因に近づいてる気がしなかったよ。
そんな感じでソースを書き換え何度も試していた時あるメッセージが。
いつもは無言で止めてたシステムから(?)初めて意味のある文字が。
「おんどれメモリーを使い過ぎで足りないんじゃゴルァ」(意訳)と。
横に数値が出てたので桁を数えたら500Mとか信じがたい数字だった。
(念のためにtimeを使ってメモリー消費を確認したら同じだった)
そんなバカなと思いつつ手元で同じスクリプトを動かしてみたのです。
Process Explorerでメモリーの使用量を監視しつつ。
そうしたら凄い勢いでメモリーを食いつぶして
800Mにまで到達した(爆)。
そりゃあ800Mもメモリーを使おうとしたら途中で止められるがな!
2Gメモリーをつんでると800Mじゃビクともしないので気付かなかった。
にしても何でそんなにメモリーをバカ食いしてるんだろうと。
雰囲気としてはパース処理で使ってるメモリーが蓄積してる感じだし。
ページのパース処理は同じ内容をページ分だけループしてるだけで、
大半の変数やオブジェクトはパース処理内で完結してるはずなのに。
Perlのメモリー管理は
いったいどうなってんねん!とか思った。
意図的に変数を空にしたり破棄を呼んでもメモリー浪費の状況は変わらず。
Perlのメモリー管理について情報を収集してやっとヒントを発見する。
Perlの管理のやり方だと循環参照でメモリーリークをするという話を。
ようするに互いに参照しあってるとプログラムから参照がなくなっても
使われてると判断してメモリーが解放されないという話。
この説明でやっと
今回のエラーの原因に思い当たりました。
ページをパースするモジュールがまさにその構造だと言うことに。
ページパースのモジュールはタグ構造のツリーを作っていくのです。
そして内部で要素(タグなど)の親子が互いに参照し合ってるのです。
そうするとツリー構築やページ解析の処理が凄く楽だっだから。
やっぱり解析したページの数だけ全部メモリーに残ってたわけか!
(1ページ毎にツリーを破棄するようにしたら消費が20M程度に減った)
アニメワンはページ構造が複雑でサイズが大きいので顕在化したのです。
これむしろ問題が発覚しなかった方が
えらい迷惑をかけてただろうね。
メモリー消費の問題が解決して500円コースで更新処理も正常に動いて、
(今の)100円コースではどうかなと試したらこっちも問題なく終了。
もう無理だと思ってた
100円コースでも何の問題も無かったという。
てゆーか100円コースでは荷が重くなる日なんて来るのでしょうか?
アクセスが今より二桁ぐらい多くなれば上に移れとか言われるかも?
なんだか取らぬ狸の狸鍋を思い描いてるみたいな気がしてきたよ。
と言うわけで500円コースの試用は終了してキャンセルをしました。
アクセスが増えすぎたので引っ越しました、とか言ってみたいね!
以上のようにえらい手間をかけた
アニメ動画配信サービスナビ。
今までの経験を結集した自信作なので良かったら見てやってください。
※リンクはブログや本家の索引のサイドメニューにもあります
違法アップ動画が花盛りなこのご時世に
ニーズはあるのか?だけど。
ちなみに動画配信サービスナビを作った当人の感想としては
知らなかったけど
結構いろんな作品を公式に配信してるんだ、かな。
オンラインDVDレンタルとはまだ品揃えが天と地ほども違いますが。
それでもやっとサービスとして立ち上がったというか感じかも。
新番組中の配信タイトルの比率が特に今期なんか結構大きくなったし。
今から5年ぐらい経てばレンタルと同じ土俵に立てるかもしれない。
前回の更新の後も引き続いて動画配信サイトの探求をしてました。
さらにその流れで
動画配信タイトルの一覧を作ってみたりして。
作ると言ってもちまちまと手で作ってるわけではないですが。
レンタルに比べれば少ないけどそれでも1000タイトル以上あるので。
配信サイトのタイトルリストを取得してリスト化したわけです。
時間が無いとか言ってるわりに何をやってるって感じではありますが。
(やろうと思ってた)Perlの勉強だと考えればまぁアリなのかなと。
何か積極的な目的があった方が理解しようという意欲も高まるしね。
と言うわけで、今さらだけどPerlのモジュールを理解しました(爆)。
もちろん使うだけなら今ままでもXMLのパースとかで使ってましたが。
システムを理解してなかったから何故そう書けるかがわからなかった。
システムを理解してなかったから自分でモジュールを記述できなかった。
ちゃんと
理解してなくてもプログラムって書けるものなのです。
なんと今までは切った貼ったの原始的な書き方をしてたわけだ(汗)。
で、肝心の動画配信タイトルリストですが……
まだ出来てません。
サイト内容を解析してタイトルを抽出するのは思ったより楽だったけど
サイト毎の表記の揺れをすりあわせたり読みを入れるのが大変なので。
そもそもタイトルの読みまでリストページからは取得できないし。
タイトルリストを読みでそれっぽく並べるのが一苦労なのです。
他にもページデザインとか自動更新処理とかの作業が残ってるし。
なので早ければ次回に遅くとも1ヶ月以内にお目見えできればいいなと。
前回モアベターなバンダイチャンネルと紹介したShowTimeの話。
ShowTimeもバンダイチャンネル同様に本家の直接サービスとは別に
プロバイダーとかが提供してる動画サービスにも提供しています。
そもそも無料キャンペーンの
お知らせが来たのもSo-netのだしね。
それらの動画サービスにはバンダイチャンネルもあったりするわけで。
そして前回書いたように本家よりShowTimeで見た方がキレイなわけで。
両方あったらShowTimeで見るべきだよな、と。たとえ会費を払っても。
なんてことを考えつつふと@nifty動画からShowTimeに飛んでみたり。
そしたらなんと
バンダイチャンネルの動画が存在しなかった……
以下にそれぞれのShowTimeのアニメカテゴリーを並べてみました。
※どこかでログインしてるとそちらが有効になるのでご注意
ShowTime(本家) バンダイチャンネルあり
so-net版ShowTime バンダイチャンネルあり
@nifty版ShowTime バンダイチャンネルなし
OCN版ShowTime バンダイチャンネルなし
大ジャンル(アニメとか)のすぐ下にあるアニメジャン(プ)や東映~とかの
提供元カテゴリーの左端をよく見比べてください。
バンダイチャンネルの有るタイプと無いタイプがあるでしょ?
この中の@niftyとOCNにはバンダイチャンネルが直接提供されてるわけで
恐らくバンダイチャンネルとShowTimeとの契約の関係なのでしょう。
でも利用者にとってバンダイチャンネルの有無ってあまりに違うのですが。
だってShowTime中にバンダイチャンネル扱いが700作品以上あるんだから。
アニメが目的だったら
シャレにならない作品数の差になるわけです。
当然ながらB-ch扱いの1話お試し無料以外の会員見放題も消失します。
例えば今だとFate/stay nightが6話まで無料で見れるのです。本来なら。
同じ会費を払って無料開放分が違うってどうよ?とか思うわけですよ。
まぁ、同じタイトルはたいがい
本家の方でも無料で見れますが。
キレイなバンダイチャンネル目当てだったら大いに困るわけです。
うっかり@nifty版やOCN版に入っちゃったらどないせぇって感じですよ。
ちなみにSo-net版だとのアダルトアニメ関係(全部有料)が無いみたい。
これもShowTimeのバンダイチャンネル話と関係あるような話ですが、
他はバンダイチャンネル扱いなのにShowTimeだと違う場合があります。
バンダイチャンネルの作品リストが本家より100作品ほど少なくて
その分は無いのかと思ってたけど
どーやらそうではないようです。
(リストにない分が全て提供されてるかは不明)
恐らく番組の権利者から直接提供を受けてるんではないかと。
例えば「R.O.D THE TV」とか「かみちゅ!」とか「月詠」とか。
今4話まで会員見放題の「ガンスリンガー・ガール」もそうですね。
「月詠」なんかバンダイチャンネルのリストに無いから無いのかと。
ちなみにバンダイチャンネル提供のとShowTimeのと内容が同じかは不明。
上にあげたのは全て1話お試し無料が無いので比較できません。
ShowTimeのガンスリンガー・ガールは
OPがついてない謎仕様だけど、
これがShowTimeだけなのか他もそうなのかは全くわかりません。
にしても提供元カテゴリーにない作品って何があるのかわからないよ!
最初は提供元カテゴリーに並んでる作品だけしかないと思ってた。
その下のジャンル一覧を見たらそれ以外にもいろいろ有ったという。
アニメ全体の
タイトル一覧ぐらい作っとけ!とか激しく思いました。
(あとお試し1話を含めた無料で見れる作品の一覧も欲しい)
サイトナビゲーションセンスというか利用者の視点が足りてないぞと。
課金まわりのページ遷移も(仕方ないとはいえ)かなりウザイ感じだし。
そのへんの使い勝手でダメと思われてそう。画質はそこそこいいのに。
配信タイトルリストを作ろうと思った理由はここにあります。
※文章を書いた時間が前後してます
オマケでShowTimeを使う上でちょっとした小技を。
ShowTimeで提供されている作品で高画質(2Mbps)の選択肢があるモノは
ビュアーに全画面表示のボタンが表示されて全画面拡大で視聴できます。
しかし1M以下の画質で提供されてる動画には全画面ボタンがありません。
最もキレイな選択肢が1Mbpsの動画だと
全画面拡大が出来ないわけです。
汚い動画を全画面に拡大しないでという意思表示ですか?(笑)
実はこの汚い動画(おいおい)を全画面で見ることも簡単にできます。
動画上で右クリックすると動画の配信用のURLが出てくるので。
そのURLをコピーしてメディアプレーヤーに入れてやればいいのです。
(ブラウザのURLに入れればメディアプレーヤーが立ち上がるはず)
この方法は会員無料のだけでなく
自分が購入した動画でも出来ます。
またまたバンダイチャンネル(動画配信)についての話を。
去年のDMMに続いてShowTime今月無料キャンペーンのお知らせが来たので
それにお試し入会して提供してるコンテンツをざっと眺めてみました。
そしたら、なんか
こっちにもバンダイチャンネルが入ってるのでした。
So-net動画ではShowTimeを使えばバンダイチャンネルが見れるのか。
So-net動画でのバンダイチャンネル終了って直接提供が終了ってことね。
てゆーかSo-net動画はShowTimeの提携以外はほとんど全てやめたみたい。
あとGyaO!でもバンダイチャンネルが(不完全に)提供されてるので
バンダイチャンネルの配信仕様は
以下の4種類が存在してるわけです。
・
バンダイチャンネル (アニメワンなど)
・
DMMのバンダイチャンネル (旧方式)
・
ShowTimeのバンダイチャンネル提供作品
・
GyaO!のバンダイチャンネル提供作品
この中のDMMは以前のバンダイチャンネル直接提供の動画と同様です。
他は全て新方式に移行したのにDMMだけが旧方式で提供してるのです。
(つまりバンダイチャンネルのサーバーから配信してます)
ShowTimeとGyaO!は作品の提供をうけて自前配信しているみたいです。
それぞれの(現在の)特徴は以下のとおり
・
バンダイチャンネル
FLASHを使った動画配信で画質はHQ(1.5M)/SQ(768K)/LQ(384K)の3段階。
解像度が高め(HD?)でPC全画面(1024×768)でもあまりボケっとしない。
解像度のわりにレートが低いのでHQでも動くと
圧縮ノイズが盛大に出る。
SQとLQに至っては少しでも動くと(静止画以外だと)見るに耐えない。
月会費無料。有料配信あり。無料新作に宣伝入り。全画面表示可能。
動画仕様は不明
・
DMMのバンダイチャンネル
WMVを使った動画配信で画質は1Mと500Kの2段階。
1Mでもスカパーレベル(480×360)なので若干ぼやっとしてる。
レートがギリギリなのか動きが大きいところは圧縮ノイズが気になる。
月会費無料。有料配信あり。無料新作に宣伝入り。全画面表示可能。
[1M] 480×360(270) 1Mbps(動画904Kbps+音声96Kbps)
[500K] 320×240(180) 500Kbps
コーデック Windows Media Video 9 / Windows Media Audio 9
・
ShowTimeのバンダイチャンネル
WMVを使った動画配信で画質は高画質(2M)と通常(750K)の2段階。
高画質だとDVDと同じ解像度なので
SDテレビで見るなら十分な画質。
レートに余裕があるので動いても圧縮ノイズはあまり気にならない。
月会費有料。有料配信あり。無料新作に宣伝入り。全画面表示可能。
[高画質] 640×480(360) 2Mbps(動画1872Kbps+音声128Kbps)
[通常] 480×360(270) 700Kbps
コーデック Windows Media Video 9 / Windows Media Audio 9
・
GyaO!のバンダイチャンネル
WMVを使った動画配信で画質は768Kのみ?(それとも自動判別?)
768KでもDVDと同じ解像度なのでSDテレビで見るなら十分な画質。
レートが低いのになぜか動いても
圧縮ノイズはあまり気にならない。
有料配信がないので他に比べて見れるタイトルが大幅に少ない。
月会費無料。有料配信なし。無料新作に宣伝なし。全画面表示不可。
[通常] 640×480(360) 768Kbps(動画704Kbps+音声64Kbps)
コーデック Windows Media Video 9 / Windows Media Audio 9
それぞれのサービスで同じ動画を見比べてみたけど画質が全然違ったりして。
バンダイチャンネルだから全て同じだと思ったら大間違いだ!みたいな。
特に
ShowTimeとGyaO!は本家よりもキレイなので油断大敵だったりする。
前にDMM(旧方式)とFLASHの新方式を比べて新しいほうがキレイと書いたけど
ShowTimeとFLASH新方式だったらShowTimeの方がキレイな気がする。
FLASH新方式は解像度が高いので
止まってるシーンはキレイなんだけど、
動いてるシーンでは高圧縮な動画特有の圧縮ノイズが盛大に出るので。
もしかすると動いてるシーンは旧方式のほうがまだマシかもしれない。
で、GyaO!の話。
動画仕様は解像度がShowTimeの高画質と同じでレートはDMMの1Mより下。
解像度が高くてレートが低いので普通なら圧縮ノイズが目立ちそうだけど
なぜか
不思議なことにShowTimeよりキレイだったりして。
動画コーデックが違うならわかるけどDMMやShowTimeと同じに見えるし。
エンコーダの違いだろうか?と言うかエンコーダでこんなに違うもの?
あと、GyaO!だけは
他で入る上下の広告が入らないのがいいっすね。
ロゴはまだいいけど上下の派手な文字は見ててすごく気になるのですが。
(恐らく動画を違法アップする人間に対する嫌がらせでしょう)
これ無料分だけで有料のにはさすがに入らないよね?
つまり画質で並べると↓って感じです。
GyaO!→ShowTime(高画質)→新方式HQ→DMM(旧方式)1M
動きが多い作品だと↓かもしれないが
GyaO!→ShowTime(高画質)→DMM(旧方式)1M→新方式HQ
GyaO!は画質はいいけど
全画面表示ができないのが問題かもね。
レールガンみたいな配信中作品は1話お試し無料が無かったりするし。
※現在配信されてない作品の1話お試し無料は提供されてたりする
配信終了分や過去作品を有料で視聴することも出来ないし。
次点のShowTimeは300円程度とはいえ月会費を取られるのがアレかも。
まぁ、その分他では有料の動画が
期間限定で無料になったりするけど。
例えば今だとかのこんの3話までとOVAが(会員は)無料で見れるし。
※かのこんのOVAはバンダイチャンネルの提供ではない
そのへんを利用しまくれば300円ぐらいすぐに元が取れると言えるかも。
AT-Xでも最近放送してたけどAT-Xの方が月会費はずっと高いわけで。
それぞれのサービス毎に微妙に作品ラインナップが違ったりするので
ShowTimeだと見れないタイトルもあったりします。
あと
高画質が存在しないタイトルもまれにあったりします。
なんかヒートガイジェイは高画質の選択肢がなかったよ……
ShowTime画質ならレンタル代わりに買っていいかも!と思ったのに。
言葉だけでは実感しにくいと思うのでサンプル画像を載せておきます。
本当はマズいけど
サービスの見本ってことで許してね(オイオイ)。
比較元の動画は現在好評配信中の「とある科学の超電磁砲」の14話。
最初は1話で比較してたけどGyaO!は最新の2話分しか提供してないので。
わかりやすいように
画面の真ん中を切り出して並べてあります。
※画像をクリックすると画面全体を表示します。
バンダイチャンネルは全画面表示(1024×768)してリサイズしてます。
DMMは素材が480×360なので比較しやすいようにリサイズしてます。
なのでこの二つは他の二つと比べで
若干ぼやけてます。
あとバンダイチャンネルはタイミングが手合せなので少しズレてます。
1つ目はオープニングの1カット。動きのあるカットの例。
 |
GyaO! (750Kbps) |
 |
ShowTime 高画質(2Mbps) |
 |
バンダイチャンネル HQ(1.5Mbps) ※FLASHを使用した新方式 |
 |
DMM 1M(bps) ※バンダイチャンネル旧方式 |
動画で見比べててGyaO!がやけにキレイだなとは思ってたけど
静止画で切り出すとその差は火を見るより明らかだったりして。
これで4つの中で
一番レートが低いのがちょっと信じがたいですよ。
レートに余裕のあるShowTimeでも圧縮ノイズで結構ザラついてるのに。
まぁ、ShowTimeぐらいなら動画で見ればほとんど気にならないけど。
そして後の二つはエライことになってます……
実際に動画で見るとFLASH新方式の方が特に目立つ感じがするかも。
2つ目はアバンの1カット。動きのないカットの例。
 |
GyaO! (750Kbps) |
 |
ShowTime 高画質(2Mbps) |
 |
バンダイチャンネル HQ(1.5Mbps) ※FLASHを使用した新方式 |
 |
DMM 1M(bps) ※バンダイチャンネル旧方式 |
動きがなければどれでもキレイです。終わり(おい)。
動きがないシーンでは動画の解像度がそのまま見た目になるので、
DMM(旧方式)の解像度の低さがなんとなくわかる以外は大差ないすね。
バンダイチャンネル以外で提供されてる動画もそのうち調べるかも。
アニメを見てる時間もコメント書いてる時間もねぇーー!
って全く同じフレーズを半年ぐらい前にも書いたな。
毎週見てたレールガンすら11話以降見てないし……
つまりこの2週間ほど
アニメは何ひとつ見てないってことですよ(泣)。
(それどころかテレビ番組を全く見てねぇ)
なんとか更新ネタを作ろうとサントラ名盤ネタを書き始めたものの
2時間ほど書いても
全く終着点が見えてきませんでした(爆)。
これならレールガンを7話分見て書いたほうがまだ早いかもしれん。
その分量なら見て書いても順調に行けば5~6時間ぐらいだろうし。
(順調に行かないともっと時間がかかるけどな)
と言うわけで書きかけのサントラ名盤ネタは将来のネタとして保留。
書くの忘れてたとらドラ!のDVDの話↓を思い出して書いてみました。
忙しくて書くのを忘却しただけで借りたのはそんな前じゃないですよ。
人気集中で借りにくくて
最終巻が借りれたのは今月に入ってからだし。
※レンタルの最終巻が出たのは9月末
とらドラ!のDVDの話に行く前に前回の動画配信ネタの後日談を。
つい最近だけどバンダイチャンネルの仕様がいきなり変わりました。
今までのWindowsメディアを使った配信からFLASHを使う動画配信に。
まさか書いた内容が
こんな短期間で陳腐化するとは思わなかったよ。
その新タイプの方式は今までに比べてずいぶん画質が良くなった気が。
裏技が使えなくてテレビ画面で比較できないので保証はしませんが。
PCから直にビデオ出力しないと録画も出来ないし……
色が不正確だからパソコンの画面ではあまり見たくないんだけどな。
正直言って今まで以上にレンタルの方がマシになった感じです。
この新方式への移行の過程でSo-netとDISCASでの配信が終了しました。
使い道のないSo-netのポイントを使ういい方法だと思ったのに……
Tポイントでレンタルしてないタイトルが見れると思ったのに。
まぁ、Tポイントは普通にレンタルで使えるからいいけどさ。
ちなみになぜか
DMMだけは未だに旧方式のまま配信されてます。
画質は悪いけどある方法を使えばテレビにも持っていけます。
すっとこのままなのかそれともいずれ新方式に変わるかは不明。
DMMに期限付きの500円ギフト券を貰ったので動画配信を利用してみた。
てゆーか追加投資なしの500円では他にあまり利用方法が無いから。
見てみたのはBLUE GENDERという10年ぐらい前の深夜アニメです。
1話は無料(お試し)なので
2~6話パック(420円)を購入したのです。
(ギフト券は貰い物なので実際にはお金を払っていませんが)
実質タダとはいえ予算をつぎ込んだ理由はずっと気になってたから。
実はこの作品、本放送当時にちらっと見たことが有ったのです。
ちょーどこれが放送された頃アニメに対する視聴意欲が戻ってきてて
主にレンタルメインでめぼしい作品を物色して見てたのです。
で、深夜にテレビをつけたらやってたので少しだけ見てみたわけです。
当時は今みたいにしっかり時間を調べて録画してたわけじゃなくて
偶然やってたから見たというレベルなので少しだけ見てそれっきりに。
(まともに録画チェックを再開したのは2003年から)
凄くインパクトのある内容だったのでずっと気にはなってたんだけど、
そのうち見てみようとか思ってるうちに幾年月……
DVDレンタルが出てないので今レンタルで見るのは極めて困難かも。
で、実際に見てみた(バンダイチャンネルの)動画の画質について。
配信のをアレしてソレして(おいおい)テレビ画面で見ての感想なので
本来の視聴方法での印象ではないと予めお断りしておきます。
とりあえず画質はVHSよりはマシかも。でもAT-Xよりは落ちるかなと。
もちろんDVDの方がずっとキレイです。右下に常にロゴも入ってるし。
キッズやアニマックスとの比較だと圧縮の効き具合によりけりかな。
(いい時と悪い時があってさらに時期によってもずいぶん違うので)
パンする時にやたらちらちらするのは元ソースの関係だろうか!?
そんな感じなのでDVDレンタルがあるならそっちの方がいいかなと。
レンタルと比べて特に安いわけでもないし。手軽ではあるけど。
手軽なのなら違法アップ動画(無料)があるわけで……
作品についての感想は↓に。※ブログなら今日の日付で出てきます