NHK Radio Japan バックナンバー ダウンロードページ 開設

NHK World の公式サイトでは、Radio Japan の世界18ヵ国語によるラジオニュースの音声ファイル ( mp3 ファイル ) が聴取&ダウンロードできます。 惜しむらくは、このサイトで公開されているのが最新版のファイルだけだということ。 例えば、「 ミャンマーで日本人ジャーナリストが殺害されたときのニュースを聞きたい 」 などと思っても、2007年9月末のこのファイルはもう公開されていないのです。
そこでわきたは 2007年8月中頃より 自鯖を利用して、毎日の外国語ニュース ( 英語 & 韓国語 ) が更新される都度、自動的にその音声ファイルを取り貯めるシステムを運用しています。
しくみは単純。 wget でファイル更新されていたらダウンロードしてファイル保存する ようなスクリプトを書き、これを cron で毎時1回起動する だけです。
 
運用開始から10ヵ月たち、ファイルも相当に貯まってきました。 このファイルを簡便に利用する方法をあれこれ考えた結果、日付&言語指定で目的のファイルを検索してダウンロードするような、ブラウザベースのアプリを作ることにしました。
幸いにも更新年月日時分秒を保存ファイル名に反映させていましたので、最初は指定日付からファイル名を探すような単純なスクリプトを考えました。 でも、後々の拡張性・応用性を考えて、ここはやはりDB管理することにしました。
 
まず、DBの設計。 と言っても、テーブル1つだけの、DBなんておこがましいシロモノですが。 これに、過去に取り貯めたファイルを登録。
次に、取り貯めるスクリプト側で、ファイル保存時にDB登録も行うように改造。 これは、psql で行います。
そして、検索&ダウンロードするアプリは php で新規に書き下ろし。 php なら PostgreSQL のハンドルは簡単。 SQL で得られた目的のファイルを、lame を使って リサンプル&ビットレート変換して、クライアントにダウンロード。
 
わきた自身のリスニング鍛錬のために作ったシステムですが、外国語リスニング ( とりわけ時事英語 ) を学ぶ方々のお役に立てばと思い、公開することにしました。
 
興味があったら覗いてやってください ⇒ rj.wakita.no-ip.com
投稿者:WAKITA, Yoshi
May 13, 2008 14:09:45
| 外国語 | trackback(0) | comment(0) | ↑TOP |

Naruto の PostgreSQL 対応 − 続報

標題の件、まだ格闘中です。
 
公開マークをつけた記事が公開されてしまい、これをコード上で修正すると、今度は管理者ページでも参照できなくなってしまう。
事中で特定の文字 (例えば '<') を表示するためには '<' などと記述しますが、こうして書かれた記事を再編集するために管理者ページの編集フォームに呼び出すと、表示されているとおりの '<' に置き換わっており、更新をかける前にこれを再度 '<' に記述し直さなくてはならない。
ラバ送信先で、記事タイトルの全角文字が化ける。
角英数文字で始まる記事からトラバ送信しようとすると失敗する。
 
前途多難です。
投稿者:WAKITA, Yoshi
March 15, 2008 19:12:15
| 自宅サーバ | trackback(0) | comment(0) | ↑TOP |

Naruto の PostgreSQL 対応

わきたの自鯖では、apache2.0 + php4.3 + postgresql7.4 が稼動しています。
この環境下で動作する (フリーの) ブログツールを見つけるのには、結構苦労しました。
多くのメジャーなブログツールでは、
  •  ⇒ PostgreSQL をサポートしていない (大抵は MySQL)
  •  ⇒ PostgreSQL をサポートしていたとしても、バージョン 8.0 以上
  •  ⇒ PHP では書かれていない (大抵は Perl )
となっており、わきたの requirements にバッチリ合致するものはなかなか見当たらなかったんですね。
そんななかで見つけたのが、「Naruto」。 PHP で書かれており、PostgreSQL7.3 以上をサポートすると案内されていたので ・・・ でも、ちょっと問題がありました。
Naruto サポートサイトには、PostgreSQL への対応について以下のような記述があります。
1.0より暫定的にPostgreSQLのサポートを開始しました。ただし現在動作は未確認のため、非公式サポートとさせて頂きます。
謳われているとおり、本当に 「動作は未確認」 であったようで、わきたの自鯖の上ではそのままでは動きませんでした。 Naruto はもともと MySQL 用に書かれていたようですが、MySQL と PostgreSQL との差異が完全には埋め合わされていないようで、わきたの PostgreSQL 環境下では SQL エラーを吐きます。
でも、あの読み難い Perl でなく、解り易い PHP で書かれているのが幸いしました。 コードを追ってみたところ、
  •  ⇒ GROUP BY 句を伴う SELECT 文で MySQL 独自の仕様拡張を使っている
  •  ⇒ LIMIT <offset>, <limit> 構文を使用している
  •  ⇒ date 文字列フォーマットが異なる
このあたりに手を入れて、無事にわきたの自鯖上でも稼動するようになりました。
そのうち、パッチをどこかに上げます。
投稿者:WAKITA, Yoshi
March 9, 2008 11:51:44
| 自宅サーバ | trackback(0) | comment(0) | ↑TOP |

Myブログ@自鯖 見参!

なんだか今どきは、「ブロガーにあらずんば、人にあらず」 ・・・ 自分のブログくらい持ってないと人間扱いされないみたい(被害妄想)だし、他人のブログにコメントするときも自ブログ持ってないと 「書き逃げ」 みたいで後ろめたいし、なにより先方のブログの 「流れをブッタ切る」 みたいな書き込みは、コメントで書くよりは自ブログに書いてトラバ残すようにしたほうが失礼にならなくて良いし、そんなこんなで自ブログを立てました。
契約プロバイダのブログサービスを使う って手もあったんですけど、わきたは自鯖師の端くれだし、どうせブログ立てるんなら自鯖のうえで ・・・ てな訳で、studiofly software さんの Naruto (なると) を使わせて頂くことにしました。
 
不定期に書き込んでいきます。
投稿者:WAKITA, Yoshi
March 6, 2008 09:31:38
| 自宅サーバ | trackback(0) | comment(0) | ↑TOP |