投稿

ラベル(趣味)が付いた投稿を表示しています

いまさらPHP

いまさらながら、PHPでコーディングをして遊んでいる。C言語的な感覚で、なおかつ、スクリプト言語の気軽さで記述できるところがなかなか良い。 HTMLと混ぜることもできるので、動的サイトが少ないコード量で実現可能でもある。ただし、プレゼンテーション(表示)とロジック(計算)が分離しにくいという問題もある。 完全に分離させようとするのであれば、プレゼンテーションのHTMLには、コンテンツ部分を特殊マークアップしておいて、PHPコードでそれを置き換える方法をとれば良いのだろう。 と、どうでもいいことを思っている。

TV録画閲覧サイトに検索機能を追加

イメージ
TV録画(録画じゃなくてもいいのだが。。)閲覧用のサイトに検索機能を追加してみた。タイトルのみで(疑似)フリーワード検索。データベースは使用せず、PHPの単純なパターンマッチングで引っ掛けてくる検索アルゴリズム。例えば、「ショーン」で検索すると、「ひつじのショーン」のみが表示される。 ところが、検索がキーワードのOR条件になっていたことが判明した。例えば、「女子のフィギュアスケート」を検索しようと、「女子 フィギュア」で検索すると、女子も男子も関係なく、フィギュアスケートに引っかかった録画が表示されてしまう。 アルゴリズムを改良せねば。。パターンマッチングを少し工夫して点数化してソートかな。

TV録画閲覧サイト試作

イメージ
というわけで、TV録画閲覧サイトを試作してみた。ほとんど初めて本格的に(?)PHPを触ったので、少々時間がかかってしまい、結局昨夜はほとんど徹夜だった。でも、一番時間がかかったのはスマホやタブレットに対応したサイトにするところと、スタイルシートの設定のところだったりするのだが。。。 当初はTiny Web Gallery をいじるつもりだったが、なかなか大掛かりなシステムになっていたので、結局少しずつ自分でスクラッチから作ることにした。まずはファイルリストを表示するところから初め、少しずつインクリメンタルに強化していった。 そして出来たのが、以下のページ。ひとまず、録画開始日時で降順にリスト表示するようにした。録画が、サムネイルとともに、リスト表示される。このリンクをクリックすると、HTML5のvideoタグで埋め込まれた動画が表示されるようになっている。動画表示ページもPHPになっていて、query stringsでファイルを渡すようになっている。(まあ、大したことないが。。)あれ、今見ると、タイトル表示が変(日付の情報が入っている。。)修正しないと。。。 今後は、曜日やフリーキーワードで検索できるようにしようと思う。あとは、外でもアクセスできるように、アクセスコントロールも追加したい。少しずつ改造していこう。

Raspberry Pi + dovecot (IMAP server)

Postfix で SMTP サーバーができたので、つづいて dovecot を使用して IMAP サーバーを設定してみた。 ネットの解説を頼りに設定したのだが、なかなか動かなかった。というより、IMAP へ接続できなかった。しばらく悩んだ末、 dovecot-imapd のインストールが必要であることが判明、これをインストールすると難なく動いた。 続いて、TV録画した動画を Web サイトから閲覧できるようにしようと思い、Tiny Web Gallery というフリーの PHP ベースの CMS を試してみている。これに少し手を入れれば、録画番組を楽に検索したりできそうな気がする。 このシステムのいいところは、データベースを必要としないところ。つまり、RasPi のような非力な環境で DB を動かす必要もなければ、別途 DB サーバーが必要となることもない。(最近の NAS は DB サーバーにもなったりするのだろうか。。。)ただし、データが多くなってくると、動作が重くなる可能性が高いと思われる。が、とりあえずは、これで十分。 Apache2 + PHP5 を User Dir で有効にするためには、 /etc/apache2/mods-enabled/php5.conf を修正する必要があった。デフォルトでは無効になっているので、これをコメントアウトする必要がある。 これでとりあえず、サンプルギャラリーが表示されるようにはなったが、途中で読み込み中のまま固まってしまっている。もう少し見てみないといけない。 ちなみに、最近 Apple TV 2 をほとんど使っていないので、 Jailbreak してこういう動画を自由に見られるように改造したほうがいいと考えている。というわけで、やってみたいこと(なおかつ、追加の経費がほとんどかからずできること)がまた増えた。

rsync のオプション忘れ

RasPi の設定をバックアップするために cron.daily に追加したバックアップスクリプトなのだが、肝心の rsync オプションを追加し忘れて、初回以来バックアップされていなかったことにようやく気がついた。"-a" オプションを追加して、とりあえず動作するようになったみたい。 TV録画エンコードのほうは、FFmpeg のエンコーダオプションをいろいろいじってみたら、かなりエンコード速度が変わることがわかった。" FFmpeg x264EncodingGuide " を参考に、いろいろと試してみたところ、以下の設定に変更。 -c:v libx264 -preset superfast -profile:v baseline -level 3.0 Core i5 750という古いCPUのマシンで frame rate 100fps を超える。h.264 の威力をほとんど生かしきれない設定。Baseline Profile なので B frame も使わない。まあ、これぐらいしないと、非力なマシンには辛い。

WoL実験

WoL (Wake on LAN) を試して見た。起こす相手はデスクトップPCである。 Raspbian では、etherwake というツールがある。root 権限で使う必要があるが、問題なくスリープ中のPCを復帰させることができた。 調べてみると、UDPデータグラムの送出だけで簡単に実装できそうだったので、コピペを元にCコードを書いて試してみたところ、うまく行った。 うちの環境でうまくいったのは、以下の条件。 255.255.255.255 :12345 へのわブロードキャスト データは ff ff ff ff ff ff の後に、相手のMACアドレスを16回繰り返したもの。 少なくとも、自分の環境では、これで機能している。root権限も必要無い。 試しにデータを1バイト書き換えてみると、PCは起きなかった。ちゃんと認識しているようだ。

EpgTimerでTV録画

昨晩はEpgTimerで録画を試してみた。色々なサイトで紹介されているように設定していくと、難なく動作した。試しに録画予約をしてPCをサスペンドにしてみたところ、予約時間の5分前くらいに自動的に復帰して、きちんと録画してくれた。 正直、ここまで簡単だと、あまり「やった」感がない。 というわけで、Spinel + EDCB + EpgTimer + TvTestでうまく予約録画から視聴ができるようになった。 ちなみに、PT3には、地上 x2、BS x2 の、計 4 チューナーが搭載されていることを今頃知った。なので、同時に最大 4chの録画が可能なのであった。ただし、うちは BS 見れないので最大 2chである。 時間をみつけて、iPadやiPhoneから録画番組を見られるようにしようと思う。 一番簡単なのは単純にファイルの共有かな。それか、メディアサーバを動作させるか。外部から見られるようにするには、トランスコードも必要。それはまた後で検討。

インドアな週末

イメージ
スキーへ行った先週とはうってかわって、ほぼインドアな週末を過ごした。テーマは料理、映画鑑賞、ペーパークラフト。 週末の料理担当は、 「猫のしっぽカエルの手」 で紹介されていた南仏のスープ、チキングリルのハニーマスタードソースあえ、豚しゃぶ。スープはベーコンと野菜から良い出汁が出るので、とくにコンソメなどは必要なしで美味。写真は、妻が作った焼きたてフォカッチャ。 手作りフォカッチャと南仏風スープ そういえば、「北秋田 大吟醸」の日本酒がハニーマスタードソースと絶妙のマッチングだった。甘みと酸味がほどよくハニーマスタードと溶け合うよう。フルーティーな香りが高い、好みの酒である。 ちなみに日本酒といえば、斑尾でも「水尾 辛口」を買って飲んでみたが、香りが弱く、好みではなかった。「後切れの良い旨味と香り」と書かれていたとおり、ほとんど余韻が残らない。そのため、さらっと飲みやすいタイプだった。 豚しゃぶは、群馬産のネギがとろとろで美味しかったのと、豚バラ肉が意外に美味しかった。豚しゃぶと合わせたのは、銀河高原ビールとシェリー。シェリーはイダルゴのアモンティリャード(開けて忘れていたので、かなり香りがとんでいたけれど。。)。やはりアモンの香りは素晴らしい。 映画鑑賞は、"The Blind Side"。ストーリー展開はほとんど予想通りで、やや面白みに欠けたけれど、これも実話がベースになっているということがすごい。そして、日本にいるとまず知ることが出来ない、様々な価値観の境界を端的に描かれていて興味深かった。 ペーパークラフトは、子供の頃よく作ったものだったが、ふとネットで検索してみると、フリーの展開図がいっぱいころがっている。あとは、プリントアウトして切り抜いて組み立てれば良い。というわけで、 JALのサイトにあったB787 を試しに作ってみた。普通のコピー用紙なのだが、まあ、それなりに形になった。次は 零戦21型 に挑戦してみる。飛行機のペーパークラフトは 「ペーパークラフトDATABASE」 とか。 JAL B787 ペーパークラフト アウトドアの趣味だけではなく、インドアの趣味も増やした方がいいということで、ほとんど金のかからないペーパークラフトに、しばらく凝ってみようかと思う。ただ、思うのは、ペーパークラフトだ...

ホンダの面白い取り組み

ホンダが、"dots by internavi"という名称で、面白い取り組みを行ってます。 リンク: http://www.honda.co.jp/internavi-dots/ 1. RoadMovies 映像撮影・作成のiPhone(Android)無料アプリ。とあるウェブ記事から知ったのですが、もともと自動車の運転をより楽しんでもらう事を目的として作られたアプリのようです。ドライブ中の映像を数秒の細切れで撮影し、それをつなげた映像にBGMをつけ、短い(24秒)の作品に仕上げることができます。単純な操作で作成できるのにも関わらず、プロが作ったような仕上がりになります。出来上がった作品はワンタッチでYouTubeで公開することも可能。 2. アイルトンセナ1989 アイルトンセナが1989年の日本GP予選でたたき出した最速ラップを音と映像で再現するというプロジェクトです。ホンダが初めてF1に導入したテレメトリー(走行中の車両センシング情報を全て記録する技術)によって収集されたデータから、セナの操るマクラーレン・ホンダのエンジン音を合成・再現したものです。サイトから映像や再現音を聞くことができます。もっとすごいのは、鈴鹿サーキットのコース上にスピーカーを何十台と並べ、コース上を走行するセナを音で再現してしまったことです。その映像も公開されています。「そこまでやるか」という感じで、とにかく圧巻です。 3. Sound of Honda これもアプリ。これを起動して、歩いたり走ったりすると、あたかも車で走っているようにエンジン音を出すだけのアプリです。加速するとエンジン音が高くなり、ちゃんとギアチェンジもします。車種も往年のホンダ車数種類のなかから選ぶことができます。マクラーレン・ホンダ MP4/5もあります。 自動車をもっと楽しむためのホンダの取り組み、なかなか良いと思います。ただ、ホンダにはもっと本業で頑張ってもらいたいという思いはあります。もっと個性的なクルマを作ってもらいたいなと、かつてのホンダユーザーは思います。そんな中、ホンダがF1への復帰を決めたのは大歓迎ですね。