タグ

ブックマーク / weblogs.macromedia.com (13)

  • akihiro kamijo: RTMP スペック公開

    RTMP のスペックが公開されました。Adobe サイトからダウンロードできます。(Real-Time Messaging Protocol specification v1.0@Adobe developer connection) 公開された仕様は誰でも無償で (ライセンスに記述された範囲で) 利用可能です。 公開された仕様は、TCP 上で映像・音声・データを送信するためのプロトコルです。ハンドシェイクの手順やストリーム上を送信されるデータの作り方、コマンドメッセージのフォーマット等が記述されています。 セキュリティ関連の仕様 (RTMPE や SWF verification) は含まれていません。また、UDP ベースの RTMFP も公開された仕様には含まれていません。 今回の発表にあわせて、RTMP を使って FMS にデータをパブリッシュするアプリケーションを実装したい人のため

  • akihiro kamijo: windowing API Archives

    April 20, 2007 NativeWindow クラスのイベント(その2) displayStateChanging イベントのキャンセル 前回書いたように、ing 系のイベントは必要に応じて処理自体をキャンセルするために使用できます。displayStateChanging イベントであれば displayState の変更をキャンセルするわけですから、最大化や最小化を行わないという指示を出すことになります。 AS3 では、イベントにより標準的に行われることになっている処理をキャンセルするには、イベントハンドラ内で preventDefault() を呼び出します。前回のサンプルをそのまま使うと、onDispStateEvent() メソッド内に preventDefault() を追加すればよいことになります。 onDispStateEvent() メソッドは display

  • akihiro kamijo: Application Update Framework for Adobe AIR ベータ公開

    AIR アプリケーションのアップデート機能を簡単に実装するためのフレームワークが Adobe Labs に公開されました。(Application Update Framework for Adobe AIR@Labs) フレームワークやドキュメントは air_appupdater_061608.zip (ZIP : 0.92 MB) に含まれています。 このフレームワークにはアップデートの有無からインストール完了の確認までに必要な機能と UI がひととおり含まれています。標準の UI の代わりにカスタム UI も使用することも可能です。 SDK 内には 4 つの同じような名前のファイルが提供されていますが swc ファイルが Flash 用、swf ファイルが HTML 用です。標準で提供される UI を使用する場合は ApplicationUpdaterUI.swc (swf) を、U

  • akihiro kamijo: Adobe AIR 1.1 公開です

    Adobe AIR 1.1 が公開されました。(Adobe AIR) AIR 1.1 からは、日語を含む 10 の言語に正式対応です。AIR アプリケーションのインストール画面にも日語を表示できます。 日語のダウンロードページはまだのようですがとりあえずリンクです。(http://get.adobe.com/air/?loc=jp) 既に AIR 1.0 がインストールされている環境では AIR の自動アップデート機能が更新の有無を定期的に確認するため、わざわざ手間をかけなくてもそのうちアップデートされることと思います。(なお、今回 Linux 版についての更新はありません。いまのところ夏の間には次のアップデートが行われる予定とのこと。) 下記は、AIR 1.1 の主な新機能のリストです。 インストール時や実行時のダイアログボックスのローカライズ 日語のキー入力など英語以外の言語向

  • akihiro kamijo: イベントリスナ (AS3) とガーベジコレクション

    不要になったオブジェクトへの参照が残っていると、そのオブジェクトの使用しているメモリを開放することができません。特に複数の参照を持つオブジェクトに対しては、参照の消し忘れによるメモリリークが発生しないよう注意が必要です。 イベントリスナを登録すると、イベントのターゲットになるオブジェクトとイベントリスナを持つオブジェクトの間で参照ができます。AS3 では下のような記述になります。 eventTarget.addEventLisener("type", eventHandler); このコードを実行すると eventTarget と this の間に参照がつくられます。(eventHandler は this オブジェクトのメソッド) ところが、これは明示的な参照の追加ではありません。そのため、参照の削除が必要な場合でも見落としてしまいそうですよね。 というわけで、今回はイベントリスナ追加

  • akihiro kamijo: Flex Component Kit for Flash CS3 を使った Flex コンポーネントの開発

    以下は、Flex Component Kit for Flash CS3 を使った Flex コンポーネントの開発における注意点です。 基準点 基準点はシンボルの左上の角である必要があります。もし他の箇所が基準点になっている場合は別のシンボルでくるんで外側のシンボルの基準点が左上になるようにすれば OK です。 フレームレート Flash コンポーネントのフレームレートと Flex のフレームレートは同じでないと正しく動作しません。Flex のフレームレートはデフォルトで 24 fps になっていますのでそれにあわせるのがお勧めです。Flex 側のフレームレートを変えることも可能ですが、これは非常用の手段くらいの位置づけと考えた方がよさそうです。特に 24 fps より遅くするとと UI の表示がもたつくことがあるようです。 コンテンツのサイズ 通常のケースでは Flash コンテンツの大

  • akihiro kamijo: カスタムイベントのディスパッチ

    Event クラスを拡張すると、自前のイベントクラスを定義することができます。例えば、以下のような感じです。(あまり意味のない例ですが...) public class CustomEvent extends Event { public function CustomEvent() { super("customEvent"); } public override function clone():Event { return new CustomEvent(); } } (Event のサブクラスを実装する際は、clone() メソッドを実装する必要があります。override キーワードについては別の機会に説明します。) EventDispatcher クラスの記事で紹介した dispatchEvent() メソッドを使うと、自分でイベントのディスパッチができます。例えば Sprit

  • akihiro kamijo: コンストラクタ (と Singleton)

    コンストラクタはクラス名と同じ名前を持つ関数で、インスタンスを初期化する際に呼び出されます。コンストラクタは初期化時の定型処理を記述するのに使われますが、特に定義されていなくても文法上の問題は有りません。 class SampleClass { // コンストラクタ定義 public function SampleClass() { // 初期化処理の記述 } } ActionScript では基的に関数のオーバーロードができないのに倣って、コンストラクタも一つしか定義することができません。コンストラクタを定義する際は、とりあえず引数無しにするか、引数を持つ場合はデフォルト値を指定するというケースが多くなりそうです。 もう一つのコンストラクタの特徴は、返り値の型を指定しないことです。また、AS3 ではコンストラクタのアクセス修飾子として public のみが指定できます。 コンストラクタ

  • akihiro kamijo: 文字列のエスケープ

    escape() 関数と unescape() 関数 escape() 関数は (livedocs@lab) は文字列を URL エンコードのフォーマットに変換するグローバル関数です。基的に、英数字以外の文字であれば % 付の16進数に変換されます。+ などいくつか変換されない文字もあります。 trace(escape("1+3%2=0")); // 1+3%252%3D0 が出力される trace(escape("h:m@u/a?b&c")); // h%3Am@u/a%3Fb%26c が出力される trace(escape("ハロー")); // %u30CF%u30ED%u30FC が出力される escape() で変換された文字を戻すには unescape() 関数 (livedocs@lab) を使います。 var str:String = escape("1+3%2=0");

  • akihiro kamijo

    September 22, 2008 Adobe AIR Linux 版ベータ公開と AIR 1.5 の情報 AIR Linux 版のベータが公開されています。(Adobe AIR 1.1 for Linux beta@Labs) 今回のリリースでは AIR 1.1 の機能がほぼ実装されていますので、既存の AIR アプリケーションはおおよそそのまま Linux 上で実行できることになります。サポートされるプラットフォームは Fedora 8, Ubuntu 7.10, Open Suse 10.3 です。 ベータ版には、以下の 2 つの制限があります。 DRM 機能が実装されていない。そのため Adobe Media Player は正しく動作しない。 バッジからのシームレスインストールが機能しない。AIR パッケージをダウンロードしてインストールする必要がある。 これらの制限は正式版ま

  • akihiro kamijo: FLVCheck アルファ版公開

    FLVCheck のアルファ版が Adobe Labs に公開されました。(Adobe FLVCheck tool@Labs) FLVCheck は Adobe 製品以外で作成された flv ファイルのフォーマットが仕様にしたがっているかどうかをチェックします。誤ったフォーマットの flv ファイルが存在して、FMS からのストリーミング再生時に問題を起こしていることが分かったために、公開前にファイルの検査ができるようこのツールは開発されました。 FLVCheck は内部タイムスタンプ、メタデータ、メッセージヘッダーに問題が見つかるとそれを修正して書き出すことができます。その際オリジナルは別ファイルとして保存されます。映像や音声のデータ体が正しくない場合はエラーの通知のみで修正は行いません。 FLVCheck は Labs のダウンロードページから入手できます。(Adobe Labs D

  • akihiro kamijo: AS3 と正規表現

    AS3 では ECMAScript3 に定義されている正規表現が使用できます。これで文字列の操作もずいぶん便利になりました。おかげで前より普通にスクリプト言語らしくなった気がします。 RegExp クラス 正規表現は「数字だけから成る文字列」とか「<p> と </p> で囲まれた文字列」のようなパターンを記述するための表現です。ECMAScript3 の仕様では、先に挙げた2つの例であればそれぞれ \d+ と <p>.*</p> といった記述ができます。 これらの正規表現を AS3 で使用するには RegExp クラス (livedocs@lab) を使用します。対象となる具体的なパターンを / (スラッシュ)で挟むと RegExp のインスタンスの初期化ができます。 var myPattern1:RegExp = /\d+/; var myPattern2:RegExp = /<p>

  • akihiro kamijo: Flash Media Encoder プレリリース版公開

    Adobe Labs に Flash Media Encoder のプレリリース版が公開されました。(Flash Media Encoder@Labs) ダウンロードはこちらからどうぞ。(Flash Media Encoder Prerelease: EXE, 1.1 MB) Flash Media Encoder はカメラ等から PC に取り込んだ映像を Flash Video フォーマット (VP6 ) に変換してそのまま Flash Media Server (FMS) にストリーミングすることで Flash Video でのライブ配信を可能にします。これでようやく、オンデマンド配信には Flash 8 Professional のエンコーダ、ライブ配信には Flash Media Encoder とペアが揃いました。Flash Media Encoder はストリームをファイルに記

  • 1