2009年11月9日月曜日

最近LX1で撮った写真(2009/10/12 - 11/7)

ひとつ前のエントリと同じく、1ヶ月でけっこう撮って(整理して軽く補正して、んでもってFlickrにもアップして)るんだなぁ、と我ながら思った。

古びた船。10/12 横浜港にて。
old ship

秋の空。10/12 横浜港から。
autumn sky

ヤクシソウ。10/25 散歩道にて。
Youngia denticulata(Yakushisou/ヤクシソウ)

カメムシ。これ成虫じゃないそうで。10/31 公園にて。
アカスジキンカメムシの終齢幼虫 - Last instar larva of Poecilocoris lewisi

階段 - 一歩。10/31 公園にて。
step(s)

どんぐり - 上から。10/31 公園にて。
どんぐり - acorns

どんぐり - 横から。10/31 公園にて。
どんぐり - acorns

階段。10/31 公園にて。
階段 - steps

落ち葉。10/31 公園入り口あたり。
落ち葉 - fallen leaves

サザンカの花びらの絨毯。11/1 公園にて。
carpet of petals - 花びらの絨毯

花びら集め。11/1 公園にて。
carpet of petals - 花びらの絨毯

水辺の草(名前わかんね)。11/1 公園にて。
herb near water - 水辺の草

ナンキンハゼの紅葉。11/7 公園にて。
Chinese tallow tree - ナンキンハゼ

フェンス。11/7 駅にて。
side of fence

最近のTwitter投稿写真(2009/10/12 - 11/8)

1ヶ月あると、けっこうTwitterに写真postしてるもんですね。
マウスオーバーで投稿時の日時やtweetが出るかと思います。クリックで大きい画像へ。



























合格祈願消しゴムの落とし物、がインパクトありますね。

2009年10月22日木曜日

audioタグとJavaScriptでピアノを作ろうとしたけど諦めた

タイトル通りの話をざっくり書いてみます。
(下の方に(挫折した)サンプルあります)

HTML5といえば、canvasタグたーのしぃーひゃっほーいで、videoタグとaudioタグでリッチなコンテンツもFlashなしで見せてやんよ、って感じでございますが、canvasタグは個人的にも多少はいじってみて可能性を感じましたが、videoタグとaudioタグはこれといった「おもしろ方向性」が思いつかなかったので今まで全然いじりませんでした。が、ちょっと思いつきまして、audioタグ利用してブラウザだけで動作するピアノを作ってみようと、こんなことをやってみました。


まずピアノ単音をG1~C5まで用意します。wavファイルで2.5sくらいの長さの。
GarageBandでソフト音源トラックを作り、音色ピアノ、BPM120、4分音符1つ、をwavで書き出しました。GarageBandが最短小節数8という縛りがあるようで、無駄に長いwavが生成されたので、QuickTimeProで2.5sまで短くして、さらにもっと低レートにして、変換します。ってのをG1~C5まで42音あるのでそれだけの回数やりました。アホみたいです。


音ネタが用意できたら、html内にaudioタグを43個作ります。idに id_C3
とかつけて、それぞれのsrcに作ったwavを指定してloadします。ちなみに、制御はJavaScriptからのみ行うので、controller
= falseで、ページ内にPlayerっぽいものを表示しません。用意したwavは42個なのに43個のタグとは如何に?それはあとで書きます。


これで、鍵盤の絵描いて(各鍵盤は独立したobjで)、たとえばC3の鍵盤クリックしたら、onClick =
document.getElementById("id_C3").play(); で該当する音鳴らす、とかやればピアノができるなーと。

ただそれだけだとおもしろくないので、シーケンサーみたいに「再生」してみようかと。でも処理が複雑且つ重くなりそうなので、まずは和音は無視の方向で、単音でメロディーを奏でるだけのを考えます(って思考が先走ったので、鍵盤は作成してないです)。メロディを記述して、それを読み込んで順次タイミング合わせて音鳴らしていく、って感じですが、BASICやってた方はわかるでしょうか、PLAYコマンドの中身みたいな感じで書いて、それを解釈して再生ってのを考えました。

たとえば。「チューリップ」の冒頭(♪さいたーさいたーちゅーりっぷーのはーなーがー)なら、こんな感じに書くことにします。

C3.4,D3.4,E3.4,R.4,C3.4,D3.4,E3.4,R.4,G3.4,E3.4,D3.4,C3.4,D3.4,E3.4,D3.4,R.4

C3.4は、3オクターブ目のC、長さは4分音符、を意味する、というフォーマットを考えました。Rは休符です。

さてここで、42音用意したのに43個audioタグを作った意味を書いておきます。43個目は、42個のどれでもいいので名前変えてコピーしてloadしてobj.volume
= 0.0 にして、休符代わりに使います。
はい。

C3.4,D3.4,E3.4,R.4,C3.4,D3.4,E3.4,R.4,G3.4,E3.4,D3.4,C3.4,D3.4,E3.4,D3.4,R.4

これをどう読み込んで、解釈して、audioタグの制御に使うか、ですが、全部JavaScriptでやります。

http://なんららかんたら?BPM=120&Melody=C3.4,D3.4,E3.4,R.4,C3.4,D3.4,E3.4,R.4

という感じにサーバサイドでなんかやるっぽい記述なんかしてみちゃったりして。別にたいしたことやるわけじゃないのですが、document.locationでURI拾ってきて、?で分割、&で分割、"指定ワード="で対象を変数に読み込む、とやります。で、Melody=で取得した文字列は、さらにカンマで分割して配列に。この配列を順次再生していけばいいのです。


まず配列先頭には「C3.4」があります。ピリオドで分割して、キーと長さにわけて、

document.getElementById("id_C3").play();

で音を鳴らします。が、長さが問題。まあ自然減衰するピアノ音ってことで深く考えず、長さは次の音をいつ鳴らすか、にします。とすると、BPM120で4分音符の長さ、というのを計算すると、500msなので、配列の次の要素「D3.4」を500ms後に鳴らせばいい、ということに。

具体的には、今何個目の音(配列のデータ)を鳴らしているかを管理する変数を用意しておき、それをインクリメントして、

setTimeout(playNextSound, 500);

とかこんな感じで、500ms後に処理が実行されるようにします。これを配列が空になるまで、順繰りやっていけばいいのです。やったね!


…とうまくできたーと思ったのですが、まともなメロディを作ろうとすると、なんかうまく再生タイミングが合わなかったりします。
Safari4(audioタグサポートしてるはずだけど)では最初の音源の読み込みが激重かったり、同じキーを連続で鳴らすと汚かったり。Firefoxでもテンポ設定次第で、指定タイミングで発音されない音が出たり(Script自体は指定タイミングで走っているが、発音がずれる)、と、現実的なモノはできませんでした。あとiPhoneのSafariから使えるブラウザベースのをピアノシーケンサーを夢見ていたのですが、iPhone版Safariはもっとダメでした。audioタグを思うように制御できん。


一応サンプル。
Macの最新Safari、最新Firefox、Windowsなら最新Firefox、以外ではアクセスしない方がいいです。あとplayボタンが緑になるまで待って、クリックしてください。読み込みはMac Safariで10秒くらい。音量注意。(リンク先、MelodyのEditできそうな感じになってますが、いやできるのですが、動作不安定です)

audio tag sample(聞いたことある曲がサンプルとして読み込まれます)

audio tag sample (URL引数をPlay)(上に書いたようにチューリップをURLで渡してます)


やっぱこういう、音(とか映像)をぐりぐり用いるような遊びは、Flashやサーバサイドの力借りてやるべし、ってなところでしょうかね、今のところは。うーん、PC性能にもよるのかもしれませんが、PC性能が問題なくても、ブラウザの力の限界的なところかもしれません。僕のプログラミング能力が低いせいかもしれません。PrototypeやjQuery等のJavaScriptのLibraryまともにさわったことすらないもんでして…。

2009年10月12日月曜日

連休中に撮った写真

Flickrから3枚。金木犀、夕暮れ前、野アザミ。一応iPhotoで露出、コントラスト、色調など補正してあります。トリミングは、今回はしてるのないかな。blogへの貼付けは、各写真のページでALL SIZES→指定サイズ→表示されてるhtmlコードをひとつずつコピペ。枚数多いと面倒。

金木犀/Orange osmanthuscoming twilightノアザミ/Cirsium japonicum


こっちはTwitterで投稿してた写真5枚。Twitterログhtmlソース化の自作JavaScriptを改変して、↓みたいに、画像の投稿だけ抜粋してhtmlコード吐くやつ作った。title属性につぶやき本文埋め込まれてます。


おまけ。チョウを運ぶアリ。

ant work from chordstriker on Vimeo.

2009年10月10日土曜日

最近のTwitter投稿写真(2009/09/29 - 10/9)

そんなわけで、写真ばっかりTwitterで投稿してる日ってのはそんなになかったのですが、まあいくつかたまってきたので、ここにまとめてみる。投稿時にTweetしたテキストは画像にポインタのせて少々すると出ます。っていうかtitle属性にtweet textを突っ込んだだけ。




今回は6割くらい手動編集。過去500Tweetから画像投稿のみ抜き出して、↑のhtmlソース吐くやつも作りたいなぁ。

2009年9月27日日曜日

2009/09/26 の Twitterログ

またTwitterログですが、写真いくつか入ってるので、掲載します。
写真のみ貼るためのソース吐き出しScriptも作ろうかなぁ。

  • 02:30:39 mukuri

  • 04:02:04 ガーナミルクチョコレートはおいしいなあ!

  • 04:05:38 阿修羅男爵気味。 http://bit.ly/1eOCR

  • 04:11:32 ニュー速別府

  • 04:23:16 700系っていうんですか、こういう新幹線。これね、ぷりぷり県のイサム本部長に見えてしかたないんですよ http://bit.ly/17m139

  • 04:24:25 イサム本部長クラスになると、さすがに画像検索でもなかなか出ないな… http://bit.ly/6Buhs

  • 04:35:38 あーこんな時間だからこそカップヌードル食いたい

  • 04:54:49 少年少女阿部ちゃんのブログからたんぶった。 http://chordstriker.tumblr.com/post/196821989/30

  • 05:01:36 怪しい勧誘にひっかかり、お茶でもしながら話をとか言って洗脳工作に持ち込まれた場合に、「これを置いたままどこか行くはずがない」というガジェット等のフェイクを用意して席を外せば逃げられるかも、そして自分だけのフェイクを作れるキットとかあれば意外と売れるのでは?などと妄想。

  • 05:17:47 世の中の人がみんなAR用に頭装着ディスプレイ付けるようになったら「癇癪持ち」って表示されるAR用マーカーを前と背にプリントしたTシャツを着て町中を練り歩くつもり

  • 05:19:16 セカイカメラで僕に「癇癪持ち」ってタグ付けるといいよ

  • 16:41:25 すべり台 #Colorsplash #TiltShiftGen http://twitgoo.com/3rn20

  • 16:55:20 砂場 #TiltShiftGen http://twitgoo.com/3rn5w

  • 16:59:13 並木 #TiltShiftGen http://twitgoo.com/3rn6p

  • 17:28:57 スキルファミリーミヨシのママがなかなか。

  • 18:53:08 腹が痛くてトイレでウンウンウナズキン #TiltShiftGen http://twitgoo.com/3rnr7

  • 19:00:53 http://twitpic.com/j6qzb - レインボーアント #PictTweet

  • 19:01:45 outputなし

  • 22:32:23 裸iPhone歴3ヶ月。

  • 23:19:17 裸iPhone=ライフォンと @moperon に命名されたわかちこ

2009年9月25日金曜日

2009/09/24 の Twitterログ

昨日までは「TwitterのTLに流れ去った自分の投稿した写真(画像)って、ちょっともったいないな」という思惑から、Twitterログのblogへの転載をしてましたが、今日は画像ほとんどなしで試しに投稿。なんか、やっぱ画像なしログはあまり魅力感じないです。僕がテキスト(文章)じゃない方法で主張するタイプってことなのかもしれない。


  • 02:38:09 いいんだ。今日は有休とることにしたんだ。

  • 03:55:31 乗るしかない この(眠気の)ビッグウェーブに

  • 09:48:24 なんかだいぶ前からセカイカメラへの興味が失せている。試しに使って経験してみた方がいいかなぁくらい。

  • 09:49:13 有休取った。役所行く。そのうち。

  • 10:31:12 http://twitpic.com/iw545 - Google 急上昇ワード(日本)にて #PictTweet

  • 11:23:36 LOST IN TIMEの最後の一球だけをずっと繰り返し再生しながら洗濯物を干していた

  • 11:23:54 歌覚えたい

  • 15:43:51 双子ちゃんの出生届提出完了。三女から先に記入したせいか、つい次女を二女って書いてしまい、間違いではないが、ニ欠女と修正した。

  • 16:30:30 通勤路が変わるので定期買いに行ったら、変な経路しか選べなくて高かったので結局買わなかった。

  • 16:32:22 あ。窓口行けばよかった。

  • 17:29:36 100均で子どもに買った色鉛筆が細くて普通の削り機でうまく削れないので、カッターナイフで削ってたら、なんかいい感触・削り心地で、こういう「手で道具を研く」という感覚は大切にしたいなぁとふと思った。

  • 22:33:17 どうやら僕はセカイカメラから見えるセカイがおもしろくない圏に住んでいるらしい。コオロギとかスズメとかもiPhone使ってランドマーク「誰々宅の庭の木」とかタグ打ってください。お願いします。

  • 23:21:02 娘が好きみたいなので買った「フリフリくんを探せ」アプリ、初回プレイが自分的に神懸かっていて、なんかランキング26位にいます、今のところ。