ADOBE® MEDIA SERVER 5.0.3
デベロッパーズガイド
![]() ![]() ![]() |
翻訳:株式会社サムライズ |
---|
注意
Adobe Media Server® バージョン 5についての本ドキュメントは第三者によって翻訳されたものであり、Adobe Systems Incorporated(アドビ システムズ社)は本翻訳物の正確性や完全性を査閲していません。
RAW ファイル形式でライブビデオのパブリッシュ
Flash Media Server 3.5.3
Record and Watch(RAW)ファイル形式では、メディアを、どのバージョンの Flash Player にもストリーミングされる設定可能なブロックに記録します。RAW ファイル形式を使用して、パフォーマンスに関する問題を引き起こさずに、長い複数のビットレートに対応する DVR ストリームを提供します。RAW ファイル形式は、H.264 ビデオ、データのみ、オーディオのみなどを含む Adobe Media Server がサポートするすべてのストリームを記録および再生します。
RAW ファイル形式はサーバーの機能であり、どのバージョンの Flash Player も RAW ストリームをパブリッシュしたり、再生したりできます。ただし、複数のビットレートに対応するストリームサポート(動的ストリ-ミングとも呼ばれます)は Flash Player 10 以上を必要とします。
重要:RAW ファイル形式は Adobe Media Server の内部にあります。この時点で、サードパーティのツールを使用してこれらのファイルを編集したり、これらのファイルを FLV 形式または MP4 形式に変換したりすることはできません。
RAW ファイル形式は、次のファイルに断片化される FLV ファイルです。
ファイル名 |
説明 |
index |
セグメントファイルと、そのタイムスタンプの範囲のリストが含まれます。 |
context |
ストリームのすべての「コンテキストメッセージ」が含まれます。 |
16 桁の 16 進数値 |
ストリームのセグメントごとに 1 つのファイルがあります。ファイルの数が、セグメントの最初のメッセージのストリームインデックスになります。最初のセグメント名は常に 0 です。最初のセグメントに234 個のメッセージが含まれる場合は、次のセグメント名は EA になり、その後も同様になります。 |
ファイルは、名前がストリームの名前と同一のフォルダーに格納されます。ストリーム「foo」は「foo」という名前のフォルダーに格納されます。「foo」フォルダーには、index、context、0000000000000000、00000000000001C3、0000000000000386 などのファイルが含まれます。
RAW ファイル形式を使用すると、Adobe Media Server は次のシナリオを処理できます。
パラメーター |
値 |
同時 DVR ストリーム |
25 |
各ストリームのビットレート |
2 M ビット |
パラメーター |
値 |
コーデック |
H.264 および AAC |
ストリームの継続時間 |
4 時間(x 2 M ビット = 7 GB サイズ) |
クライアント数 |
オリジン/エッジの設定によって異なる |
注意:継続時間の長い RAWストリームによって、1つのディレクトリに多くのファイルが作成されます。システムリソースによっては、ファイルシステムが、記録または再生に対応する十分な速度でディレクトリにアクセスできないことがあります。
関連項目
注意:ActionScript 2.0 と ActionScript 3.0 は、いずれも RAW ファイル形式をサポートしています。Flash Media Live Encoder 3.0 は RAW ファイル形式をサポートしません。
ライブストリームを RAWストリームとして記録するには、接頭辞 raw:を NetStream.publish()呼び出しまたは Stream.get() 呼び出しで使用します。
次のクライアントサイド ActionScript では、RAW ファイル形式を使用してライブストリームをパブリッシュします。
nc:NetConnection = new NetConnection();
nc.connect("rtmp://ams.example.com/live");
// In production code, test for a successful NetConnection here
ns:NetStream = new NetStream(nc);
ns.publish("raw:livestream", "record");
// You can use the "record" or the "append" flag.
次のサーバーサイド ActionScript は、ライブストリームを RAW ストリームとして記録します。
s = Stream.get("raw:recordedStream");
s.record();
s.play("livestream", -1, -1);
次のクライアントサイド ActionScript は RAW ストリームを再生します。
ns.play("raw:livestream", 0, -1)
Flash Media Live Encoder を使用するには、接頭辞 raw: を Stream フィールドで使用します。サーバーサイドスクリプトを使用してストリームを記録します。サーバーサイドスクリプトは DVRCast アプリケーションで使用できます。DVRCastアプリケーションを www.adobe.com/go/fms_tools からダウンロードします。次の例では、Flash Media Live Encoder および DVRCast アプリケーションを使用します。
1 Flash Media Live Encoder を www.adobe.com/jp/products/flashmediaserver/flashmediaencoder/ からダウンロードしてインストールします。
2 DVRCast アプリケーションを www.adobe.com/go/fms_tools からダウンロードし、次の操作を行います。
a パッケージを解凍します。
b dvrcast1_1\DVRCast1.1\adobe\fms\samples\applications\dvrcast_origin フォルダーとその内容を Adobe Media Server の rootinstall/applications フォルダーにコピーします。
c そのアプリケーションがサーバーに登録されていることを確認するには、Adobe Media Server Administration Console を開きます。「View Applications」をクリックし、画面下部の「New Instance」メニューから dvrcast_origin を選択します。
3 コンピューターにカメラを接続します。
4 Flash Media Live Encoder を開き、次の操作を行います。
a プリセットを選択します。RAW 形式は、Flash Player がサポートするすべてのコーデックをサポートしています。
b FMS URL の「Output」セクションに rtmp://localhost/dvrcast_origin と入力します。
c ストリームに raw:livestream と入力します。
d 「DVR Auto Record」を選択します。
e 「Start」をクリックします。
5 rootinstall\applications\dvrcast_origin\streams\_definst_\livetream を参照します。このフォルダーで RAWファイルが生成されます。
6 再生を表示するには、次の操作を行います。
a ブラウザーで rootinstall/samples/videoPlayer/videoplayer.html を開きます。
b ストリーム URL に rtmp://localhost/dvrcast_origin/raw:livestream と入力します。
c 「VOD」を選択します。
d 「Play Stream」をクリックします。
RAW ストリームが有効であることを確認するには、フォルダーを FLVCheck ツールに渡します。たとえば、「foo」とい名前の RAW ストリームがフォルダー「C:\media\foo」にある場合は、次のコマンドを FLVCheck ツールに渡します。
flvcheck -f C:\media\foo -v -w
次のエラーが FLVCheck ツールバージョン 2.0 によって報告され、ログファイルに書き込まれます。
コード |
エラー |
レベル |
メッセージ |
-32 |
インデックスまたはコンテキストファイルが見つからない/破損している |
エラー |
Index or Contexts file missing or corrupted(. インデックスまたはコンテキストファイルが見つからないか、破損しています。) |
-33 |
RAW ファイルのインデックスのバージョンが AMS のバージョンと一致しない |
エラー |
Index File Version %x Not Supported. AMS Requires Version %x.(インデックスファイルバージョン %x はサポートされていません。AMS にはバージョン %x が必要です。) |
-34 |
セグメントファイルが見つからないか、破損している |
エラー |
Failed read in segment file %s. File missing or corrupted.(セグメントファイル %s で読み取りに失敗しました。ファイルが見つからないか、破損しています。) |
-35 |
セグメントファイルのメッセージが切り捨てられている |
エラー |
Truncated message in segment file %s.(セグメントファイル %s でメッセージが切り捨てられています。) |
-36 |
メッセージタイプが間違っている |
エラー |
Unrecognized message type in segment file %s.(セグメントファイル %s に認識されないメッセージタイプがあります。) |
-37 |
メッセージのバックタグが長さに一致しない |
エラー |
Invalid message footer in segment file %s.(セグメントファイル %s に無効なメッセージフッターがあります。) |
コード |
エラー |
レベル |
メッセージ |
-38 |
セグメントデータがセグメントの範囲に一致しない |
エラー |
Segment file %s does not match index file.(セグメントファイル %s がインデックスファイルに一致しません。) |
-119 |
コンテキストファイルに onMetadata メッセージが含まれない(また、少なくとも 1 つのセグメントファイルがある) |
警告 |
Missing FLV metadata.(FLV メタデータが見つかりません。) |
-126 |
1 つのメッセージから次のメッセージへの間にタイムスタンプが戻る |
警告 |
Found backward timestamp in segment file %s.(セグメントファイル %s で過去のタイムスタンプが検出されました。) |
最終更新日 2013/9/30