No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
db
fla
gps
php
shell
template
.gitignore
README.md

README.md

はじめに

いよいよ今年もヤングカンヌ サイバー部門の国内予選の季節になりました。

本選も合わせると、今までに四回、
この「みんなが同一条件でバナー広告を作る」という取り組みに参加してきましたが、
競技感というか、スポーツ感というか、そんな高揚が毎回あり、
このヤングカンヌのシーズンが結構楽しみだったりします。

たったの27時間。
企画から制作まで全部やるという挑戦はかなり特殊な状況です。

通常考えられないくらいのスピードで頭は働きますし、
その分テンパったりして、普段ならするはずのない見落としをしたりもします。

今までの参加を振り返ってみても、
たったの27時間でも、そこにドラマはあるし、ハイライトはあるし、 それを肴に思い出しながら呑むお酒もまた美味しいです。

そして、今年。

もちろん、真っ当に挑戦して日本代表の選出、
そして、本選での雪辱を果たすというのもありますが、
こんなものを作ってみました。

http://rokutantakayuki.onishitakuto.jp/

挑戦中の27時間を中継し、アーカイブするためのコンテンツです。

構成としては、USTREAMに中継に加え、
画面キャプチャ、GPS、そして脳波を、
それぞれ5分ごとに更新する形になっています。

ここにあるソースコード群があれば、
みなさんの環境でも使えると思うので、
是非ご自由に使ってください。
(含まれているライブラリなどはそのライセンスに順じた使用をお願いします)

5組くらい導入してくれたら、面白いと思います。

本当はMeteorあたりでリアルタイム更新出来た方が面白いんですが、
今回は公開するため導入しやすくという理由が1割、
開発時間の短縮という理由が9割で、
PHPとMySQLでちょっと泥くさく作っています。

自分のサーバーにアップしているものは、ちょっとだけ改変していますが、
commitしているものはセキュリティ面を考慮しないつくりになっているので、
そこら辺は使う方の自己責任でご調整していただければと思います。

導入方法

1.サーバー側(DBとPHP)

データベースの構造はdb/yc2013.sqlに書き出しているので、
そこからインポートしてください。

PHPについては、

  1. php/update_bw.php (脳波)
  2. php/update_locate.php (位置情報)
  3. php/update_ss.php (スクリーンショット)
  4. php/update_master.php (HTML出力用)
    の4つがあるので、それぞれMySQLへのアクセス情報を書き換え、
    (できたらセキュリティ面の実装をして、)
    アップしてください。

2.スクリーンショットの自動化(シェル+python)

スクリーンショットは、

  1. shell/ss/cap.sh (画面キャプチャ)
  2. shell/ss/send_ss.py (スクリーンショット投稿)
    の2つを使います。

send_ss.pyには、
リクエスト先と右列か左列かを選択する箇所があるので、
適宜書き換えてください。

ログインしているユーザーのホームディレクトリにssごと移動したのち、
# crontab -e
で、
*/5 * * * * ~/ss/cap.sh
と指定すると、5の倍数の分になると投稿されるようになります。

3.位置情報の送信(iOSアプリ)

位置情報はiOSアプリで、自分で動いたときに送信する方式にしています。
(あんまり移動しないと思われるので)

iOSアプリなので、AppeのDeveloperアカウントと、provisioningの用意が必要になります。

gps/updateGPS/UpdateGPS.xcodeprojを開いて、
BundleIDや、provisining関連の設定を行ったのち、
ViewController.mのリクエスト先と、右列、左列の設定を行えば動くと思うので、
あとは実機に移して使ってください。

4.脳波の取得(Flash AIRアプリ)

取得には、NeuroSky系の脳波センサーでBluetooth接続ができるものが必要です。

また、ThinkGear Connectorでの接続設定も事前に必要になります。

AIRアプリの中身はほとんど下記のままです。
・helloeeg_adobe_flash_tutorial [NeuroSky Developer - Wiki]
http://developer.neurosky.com/docs/doku.php?id=helloeeg_adobe_flash_tutorial

5分置きにcsvにしてサーバーにPOSTしているので、
リクエスト先と右列、左列を選んで、パブリッシュして使ってください。

最後に

それでは、皆さんよい27時間を!

   ,.、,、,..,、、.,、,、、..,_       /i
  ;'`;、、:、. .:、:, :,.: ::`゙:.:゙:`''':,'.´ -‐i
  '、;: ...: ,:. :.、.:',.: .:: _;.;;..; :..‐'゙  ̄  ̄
           

免責事項

 このソースコードを使用した場合のいかなる損害も、
 制作者はその責を負いません。
 ご自身の責任においてご使用ください。