二つのPythonを用いた
俺々DLNAサーバのすすめ
gamella
2015/11/18
LLレッドカーペット
1
自己紹介
• ソフトウェアエンジニア
– 2008年度未踏上期スーパークリエータ
• グラビアアイドル評論家
• ブログ:Future Insight http://d.hatena.ne.jp/gamella/
– グラビアアイドル(勝間和代を含む)ネタ
• tumblr.: drill equipment
http://gamella.tumblr.com/
– ネタのほとんどがグラビアアイドル
– 最近は休止中
2015/11/18
LLレッドカーペット
2
今日話すこと
• 2つのPythonで動作するcoRockets
– IronPythonとCPython
• 俺々DLNAサーバのすすめ
– YouTubeとDLNAサーバを連携させてヘブン
• PS3と連携させます!
– Tumblr.とDLNAサーバを連携させてヘブン
• PS3、デジタルフォトフレームと連携させます!
2015/11/18
LLレッドカーペット
3
一つだけ基礎知識 「DLNA」
• 家電(AVアンプやデジタルフォトフレーム)や
ゲーム機とPCを連携させる規格
• PC上のコンテンツをリビングで見られる
• ネットワーク上のデバイスの発見はUPnP
• Windows 7で正式サポート
• 例えば、
– PC上の動画ファイルをPS3上で見る
– PC上の音楽ファイルをAVアンプから聞く
2015/11/18
LLレッドカーペット
4
coRocketsとは何なのか
• 僕達のチームが未踏で2008年度上期に作成
– coRockets.comで公開中 http://www.corockets.com/
• WindowsのWPFで記述されたDLNAサーバ
– GUI:C#とIronPython
– DLNAはCPython
Twistedベースの
UPnPミドルウェア
「coherence」を使用
2015/11/18
LLレッドカーペット
5
なぜ二つのPythonなのか
• IronPython
– GUI内で動作しコンテンツの収集を担当
– C#のオブジェクトを直接いじれる
– 収集したコンテンツの情報をGUI
にスクリプトから直接反映
• CPython
– DLNAサーバはほとんど拡張Webサーバ
– Cpythonの資産をそのまま活かせる
2015/11/18
LLレッドカーペット
6
イメージとしてはこんな感じ
• IronPythonのコードがGUIとDLNAサーバがど
のように振る舞うかを定義
• Webサービスを定期的に監視し、コンテンツ
が追加されたら、DLNAを動的に変更
• WebサービスとDLNAを動的に結合させるの
が目的です。
• 詳しくはcoRocketsの最終プレゼンなど
– http://www.slideshare.net/gamella/corockets
2015/11/18
LLレッドカーペット
7
YouTubeとDLNAサーバを
連携させてヘブン
• coRocketsがビルボードのランキングを監視
• その週のTop20のPVを常にキャッシュしてお
く
• PS3側で常にビルボードのTop20のPVが閲覧
可能
• ヘブン
2015/11/18
LLレッドカーペット
8
YouTubeとDLNAサーバを
連携させてヘブン (PS3の場合)
2015/11/18
LLレッドカーペット
9
Tumblr.とDLNAサーバを
連携させてヘブン
• coRocketsがTumblr.の自分のリストを監視
• 新規グラビアアイドルがPostされたら即座に
取得
• DLNA機器で常にフレッシュなグラビアアイド
ルが楽しめる
• ヘブン
2015/11/18
LLレッドカーペット
10
Tumblr.とDLNAサーバを
連携させてヘブン (PS3の場合)
2015/11/18
LLレッドカーペット
11
DLNA対応デジタルフォトフレーム
• SONY VGF-CP1
• 無線LANを通してDLNAに対応
• デジタルフォトフレームでもヘブン
2015/11/18
LLレッドカーペット
12
Tumblr.とDLNAサーバを連携
させてヘブン (CGF-CP1の場合)
2015/11/18
LLレッドカーペット
13
まとめ
• coRocketsは二つのPythonで動いています
– この辺がLLTVっぽいところ
• みんなで自分の好きなコンテンツを俺々
DLNAサーバで配信しよう
– この辺もかろうじてLLTVっぽい
• グラビアアイドルを常に手元で閲覧しよう
– これは俺の趣味です
2015/11/18
LLレッドカーペット
14
ダウンロード

ppt