音频FLVPlayback无法正常工作

时间:2012-08-15 14:22:14

标签: actionscript-3 flash netstream flash-media-server flvplayback

我目前有一个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");

1 个答案:

答案 0 :(得分:0)

录音方面的一切都是正确的,这是我尝试阅读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); 
}