タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

kamaitachiに関するikasam_aのブックマーク (8)

  • Kamaitachi入門(その5) - download_takeshi’s diary

    Kamaitachi の追っかけ記事の第5回目です。 いいかげんねちっこく人のソースを追いかけるのもいかがなものか、と感じつつも、id:ZIGOROuに励ましてもらったので、もう少し続けます。 さて今回はKamaitachi::IOStreamを攻めます。 Kamaitachi::IOStreamとはRTMPストリームのreader/writerです。 主立った役割としてはこんな感じ。 Socketに入ってきたデータはKamaitachi::IOStreamのBufferにpushされる Bufferに入ったデータはget_packet()により適切なBytes数がread()される read()では適宜バイナリをunpack 逆にwrite()ではデータをAMFのカタチにserializeしてからsocketに書き込む またIO−Bufferのための操作用のメソッド(spinとか)が色々

    Kamaitachi入門(その5) - download_takeshi’s diary
  • Kamaitachi入門(その4) - download_takeshi’s diary

    Kamaitachi コードリーティングの4回目です。 前回はKamaitachi::Sessionで接続確立の処理(HandShake)をすることろまで読みすすめました。今回はKamaitachi::Sessionの続きです。 HandShakeが成功するとSessionのhandlerに&handle_packetという関数が登録されます。 これにより次回以降のパケット受信時にはこの関数が呼び出されることになりました。 さて、それではhandle_packetでは何をするのでしょうか。 sub handle_packet { my ($self) = @_; while (my $packet = $self->io->get_packet) { next if $packet->type == 0x14 and $packet->size > bytes::length($packe

    Kamaitachi入門(その4) - download_takeshi’s diary
  • Kamaitachi入門(その3) - download_takeshi’s diary

    ちょっと間が空いてしまいましたが、Kamaitachiのコードリーディング第3弾です。 今回はユーザセッションを管理するKamaitachi::Sessionを見て行きます。 ですがその前に、Kamaitachiについて改めておさらいしますよ。 Kamaitachiとは、typesterさんとid:hide-Kさんが鋭意開発中のperlによるRTMPサーバの実装( =~ Flash Media Server)です。Danga::SocketやMooseといったperl界隈では有名な先進的モジュールを駆使したオープンソースプロダクトです。また話題のgithubで開発が公開されているあたりもニクいですね。 そんなオシャレなKamaitachiに触れてみようと、old typeなperlプログラマであるダウンロードたけし(寅年)が、突然入門日記を書き始めてしまったが、2回書いたところで放置じゃん

    Kamaitachi入門(その3) - download_takeshi’s diary
  • Kamaitachi入門(その2) - download_takeshi’s diary

    前回に引き続きperlのRTMP実装であるKamaitachiのコードリーディングです。 今回はKamaitachi体のソースコードを見ていきます。 lib以下のモジュールファイルの構成 [miki@vmware kamaitachi]$ tree lib lib |-- Kamaitachi | |-- IOStream.pm | |-- Packet | | `-- Function.pm | |-- Packet.pm | |-- Service | | |-- AMFHandler.pm | | |-- AutoConnect.pm | | |-- AutoConnectACL.pm | | |-- Broadcaster.pm | | |-- ChildHandler.pm | | |-- ConnectionHandler.pm | | |-- Core.pm | | |--

    Kamaitachi入門(その2) - download_takeshi’s diary
  • Kamaitachi入門 - download_takeshi’s diary

    Kamaitachiとは、typesterさんが鋭意開発中のperlによるRTMPサーバの実装( =~ Flash Media Server)です。 RTMPサーバのオープンソース実装としてはRed5やWowza、RubyIzumiなどが知られていますが、「perl使いだったらKamaitachiだよ!」ということで、年の瀬の忙しい中、家族の冷たい視線に刺されつつKamaitachiに入門してみようと思います。 Kamaitachi とは まずは周辺情報の整理から。 Kamaitachiの紹介サイト http://bm11.kayac.com/project/kamaitachi/ 作っている人 id:typester id:hide-K typesterさんのブログ http://unknownplace.org/memo/search?q=kamaitachi ソース http://g

    Kamaitachi入門 - download_takeshi’s diary
  • Perl使いのためのRTMPサーバ実装·Kamaitachi MOONGIFT

    サーバサイドのプラグラミング言語には慣れていても、クライアントサイドで動く言語には不慣れな方が多い。昔で言えばJavaScriptだが最近では随分ライブラリが増えてきた。その次としてActionScriptはどうだろう。 サンプルのチャットクライアント ActionScriptは無償で開発ができるが、なかなか手出しがしづらい。とは言え最近では動画を中心にインタラクティブなサイトが増え、そろそろ触れないといけなくなっている。いや、そんなことはない。RTMPプロトコルに対応したサービスならPerlでも実装できるのだ。 今回紹介するオープンソース・ソフトウェアはKamaitachi、PerlによるRTMPサーバだ。 RTMPと言えば、Flash Media Serverで使われているプロトコルだ。同種のソフトウェアとしてRubyIZUMIが知られている。ストリーミングを流したり、インタラクティブ

    Perl使いのためのRTMPサーバ実装·Kamaitachi MOONGIFT
  • 2008/12/09 - memo - unknownplace.org

    Wowza Media ServerでSWFVerification(っぽいこと)をする方法 - blog.katsuma.tv それなら kamaitachi でもできるよ。ってことで使いやすいようにサービス化。 AutoConnect の代わりに、AutoConnectACL というサービスを使うと URL ベースでのアクセスコントロールをつけることができるようにしてみた。 echo サンプルの例なら、 package Service::Echo; use Moose; extends 'Kamaitachi::Service'; with 'Kamaitachi::Service::AutoConnectACL'; sub allow_pages { 'http://www.unknownplace.org/*', 'http://unknownplace.org/*', } sub

  • 2008/12/08 - memo - unknownplace.org

    土曜に FMS 勉強会という名目で行われた kitasando.as で kamaitachi を紹介してきました。 スライド: http://svn.coderepos.org/share/docs/typester/kitasandoas-2/start.html 家 FMS の話と、Wowza の話がおもしろかった。Wowza完成度高杉だろ。 SWFVerification とか機能自体しらなかった。どうやるんだろうなぁ。connect時swfのURLは送られてくるけど、それだけじゃ無理だし。

  • 1