我目前有一个SWF应用程序,可以录制音频并将其保存到FMS。然后在Flash Professional中,我尝试使用FLVPlayback组件来播放录音,但它从未播放过。
录音保存在这里:RootInstall/applications/myapp/streams/folder/audioFile.flv
然后我让我的FLVPlayback组件源代码查看rtmp://server-ip/myapp/streams/folder/audioFile,但是我不能让它播放。
我还复制了录制的音频文件,并将其粘贴到vod应用程序中,但无法播放。当我尝试sample.flv视频时,它们起作用了。
下面是我在AS3中录制音频的方式:
nc.connect("rtmp://server-ip/myapp/folder");
...
ns = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
mic = Microphone.getMicrophone();
ns.attachAudio(mic);
// start publishing
ns.publish("audioFile", "record");发布于 2012-08-16 04:37:58
录制方面的一切都是正确的,这是我试图读取FLV的方式是不正确的。
基于上面的代码,这里是我编写的player端。
...
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
nc.connect("rtmp://server-ip/myapp/folder");
private function netStatusHandler(event:NetStatusEvent):void
{
trace(event.info.code);
switch (event.info.code)
{
case "NetConnection.Connect.Success" :
//Connected Successfully
playLiveStream();
break;
case "NetConnection.Connect.Rejected" :
// Connection Rejected
break;
case "NetConnection.Connect.Failed" :
// The server may be down or unreachable
break;
case "NetConnection.Connect.AppShutDown" :
// The application is shutting down
nc.close();
break;
case "NetConnection.Connect.Closed" :
//Connection Closed
break;
}
}
private function playLiveStream():void {
nsPlay = new NetStream(nc);
nsPlay.client = this;
nsPlay.bufferTime = 0.1;
nsPlay.play("audioFile", -1);
}https://stackoverflow.com/questions/11971067
复制相似问题