【问题标题】:Save video in applicationStorageDirectory on iOS在 iOS 上的 applicationStorageDirectory 中保存视频
【发布时间】:2012-01-31 17:33:05
【问题描述】:

我想将视频保存到我 iPad 的 applicationStorageDirectory 中。我的代码运行良好,但在 iPad 上,它不起作用,它向我发送一个带有 errorid 16 的 MediaErrorEvent。我认为这是由于访问问题,但这很奇怪,因为我成功写入了 .flv文件。

我将 urlStream 保存到一个文件中:

// get bytes
fileData = new ByteArray();
urlStream.readBytes(fileData, 0, urlStream.bytesAvailable);
// saving
var file : File = File.applicationStorageDirectory.resolvePath(FILE_NAME);
var fileStream : FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeBytes(fileData);
fileStream.close();

这很好用,我已经可以在越狱的 iPad 上观看 flv 视频了。

但是当我想用 OSMF 播放我的视频时:

var file : File = File.applicationStorageDirectory.resolvePath(FILE_NAME);
var netLoader : NetLoader = new NetLoader();
var media : VideoElement = new VideoElement(new URLResource(file.nativePath), netLoader);
mediaPlayer = new MediaPlayer(media);
mediaPlayer.addEventListener(LoadEvent.BYTES_TOTAL_CHANGE, appendText);
mediaPlayer.addEventListener(MediaErrorEvent.MEDIA_ERROR, appendText);
var display : MediaContainer = new MediaContainer();

它向我发送了一个错误 ID 为 16 的错误。

有什么想法吗?

谢谢!

【问题讨论】:

    标签: ios actionscript-3 video air osmf


    【解决方案1】:

    不确定这是否适合你,但我发现如果我这样做:

    var _url:String = File.applicationStorageDirectory.resolvePath(FILE_NAME).nativePath;   
    
    _url = "file:///" + _url;
    

    然后根据以下内容构造元素:

    var _resource:URLResource = new new URLResource(_url);
    

    OSMF 似乎能够识别该文件。

    希望有帮助:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多