FMLE 3.1 を使用して、H.264 形式でエンコードされたライブ ビデオを FMS 3 でストリーミングし、Flash プレーヤー 10 + AS 3 を使用してストリームに接続しています。
ストリームに接続すると、音声だけが再生されます。ビデオに関するメタデータ情報を取得することもできますが、オーディオを受信するだけです。
私はすでにいくつかのものを試しました
「Flash 10 は、iTunes のインストール後にライブ ストリーム H.264 を再生しません」 http://forums.adobe.com/thread/505620 . 私の環境とは全く違う環境でテストしましたが、結果は同じでした。
フォーマットを再生する方法をいくつか試しましたが、これはファイルを再生するだけです
ns.play("mp4:saple.f4v"); ns.play("mp4:sample");
また、「 http://www.flashcomguru.co.uk/forum/forum_posts.asp?TID=4649」で「ライブ h.264 を視聴して記録する方法」を読んでください。最初の場所でストリーミングします。
これは私が使用しているコードです
import flash.media.Video;
var video:Video = new Video(720, 480);
var ncVideo = new NetConnection();
this.ncVideo.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
this.ncVideo.connect("rtmp://localhost/livecast", "user");
var customClient:Object = new Object();
customClient.onMetaData = metaDataHandler;
function onNetStatus(e:NetStatusEvent) {
if (e.info.code == "NetConnection.Connect.Success")
createNetStream();
}
function createNetStream(){
var ns = new NetStream(this.ncVideo);
ns.client = customClient;
ns.addEventListener(NetStatusE vent.NET_STATUS, onNsStatus);
ns.play("livestream", -1);
this.video.attachNetStream(ns) ;
this.addChild(video);
}
function onNsStatus(e) {
trace("onNsStatus " + e.info.code);
}
function metaDataHandler(infoObject:Object):void {
trace(infoObject.width + " - " + infoObject.height);
}
もう 1 つの詳細は、ビデオを「sample.f4v」などのファイルに記録するときに、このビデオを FMS に入れますが、このストリームに接続すると「FileStructureInvalid」エラー メッセージが表示されることです。
拡張子を .flv " http://www.adobe.com/devnet/flashplayer/articles/hd_video_flash_player_04.html " に変更することから、ファイルをフラット化するソリューション " http://www.flashcomguru.com/forum/ forum_posts.asp?TID=4006」ですが、録画したビデオのストリーミングに FMS を使用しているため、これは当てはまりません。