【问题标题】:I am trying to play .m4a file using stream method. but its not working [closed]我正在尝试使用流方法播放 .m4a 文件。但它不工作[关闭]
【发布时间】:2011-10-14 03:21:34
【问题描述】:
var video:Video = new Video();
addChild(video);
var netCon:NetConnection = new NetConnection();
netCon.connect(null);
var streamNS:NetStream = new NetStream(netCon);
//streamNS.client = this;
//video.attachNetStream(streamNS);
streamNS.play("AfricanElengwen.m4a");
streamNS.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);

function netStatusHandler(e:NetStatusEvent):void
{
    if (e.info.code == "NetStream.Play.FileStructureInvalid")
    {
        trace("The MP4's file structure is invalid.");
    } else if (e.info.code == "NetStream.Play.NoSupportedTrackFound")
    {
        trace("The MP4 doesn't contain any supported tracks");
    }
}

我从以下链接获得此代码, http://www.adobe.com/devnet/flashplayer/articles/hd_video_flash_player.html#articlecontentAdobe_numberedheader_0

我没有收到任何错误。 谁能说说是什么bug?

【问题讨论】:

  • 尝试在 netStatusHandler() 中的任何 IF 之外添加跟踪...它是否被调用!?
  • 我使用了 .flv 文件。那是在玩。

标签: actionscript-3 flash-cs4 flash-cs5 flash-cs3


【解决方案1】:

我刚刚遇到了 NetStream.Play.FileStructureInvalid 错误的类似问题,经过几个小时的挖掘后发现,如果服务器在之前 gzip 压缩内容,这似乎发生在 Firefox (PC/Mac) 中送货。在 Safari (Mac) 和少数其他浏览器中,它运行良好。

在 Firefox 中使用 Live HTTP Headers 插件显示内容长度没有与响应一起发送,并且提醒我它也在被压缩 - 我不认为这是可能的问题。

对本地 .htaccess 文件的快速破解证明 gzip 是罪魁祸首。禁用后,一切正常:

SetEnv no-gzip dont-vary

我们回到 Apache 配置并从 .mp4 文件中删除了压缩,以正确的方式进行(删除我之前对 .htaccess 的破解),一切正常!

【讨论】:

    【解决方案2】:

    可能是您的 .m4a 文件比特率或 Flash 播放器不支持的东西。更好的方法是你可以将它转换成一个 mp3 文件然后使用它。

    【讨论】:

    • 是的.. 我已经转换成 mp3 格式。它现在工作正常...感谢您的建议。
    猜你喜欢
    • 2019-05-08
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-18
    • 1970-01-01
    相关资源
    最近更新 更多