Actionscript 3 as3将视频转换为byteArray
我正在尝试使用as3 api(Actionscript 3 as3将视频转换为byteArray,actionscript-3,file,video,path,bytearray,Actionscript 3,File,Video,Path,Bytearray,我正在尝试使用as3 api(FacebookMobile.uploadVideo)将视频上载到facebook,该api将视频作为fielerefrance或byteArray接受。a遵循示例@创建byteArrayi ma在解压缩字节数组时出现2058错误(这可能是因为我没有压缩它,但示例中的adobe也没有)。 如果我把这一点注释掉,我会得到一个353,你必须选择一个视频文件从Facebook上传错误。 字节数组代码: public function UICompleteHandler(e
FacebookMobile.uploadVideo
)将视频上载到facebook,该api将视频作为fielerefrance
或byteArray
接受。a遵循示例@创建byteArray
i ma在解压缩字节数组时出现2058错误(这可能是因为我没有压缩它,但示例中的adobe也没有)。
如果我把这一点注释掉,我会得到一个353,你必须选择一个视频文件从Facebook上传错误。
字节数组代码:
public function UICompleteHandler(event:MediaEvent):void
{
trace("Welcome back from the camera");
var media:MediaPromise = event.data;
trace("file info "+media.file.url + " - " + media.relativePath + " - " + media.mediaType);
filePath = media.file.url;
trace("Object encoding is: " + inBytes.objectEncoding + "\n\n" + "order file: \n\n");
readFileIntoByteArray(filePath, inBytes);
trace("length 1: "+inBytes.length);
trace("position 1: "+inBytes.position);
inBytes.position = 0; // reset position to beginning
//inBytes.uncompress(CompressionAlgorithm.DEFLATE);
trace("position 2: "+inBytes.position);
inBytes.position = 0; //reset position to beginning
}
private function readFileIntoByteArray(fileName:String, data:ByteArray):void
{
var inFile:File = new File(fileName);
trace ("file to byte array "+ inFile.url);
trace ("file name var : "+fileName);
inStream.open(inFile , FileMode.READ);
inStream.readBytes(data);
inStream.close();
}
句柄上载代码:
public function handleUpload(ev:TouchEvent)
{
trace ("posting to facebook - FileName: "+ accessCamera.fileName + " - FilePath: " + accessCamera.filePath);
var params:Object ={
title:'test upload on FB api',
description:'test upload on FB api',
fileName: accessCamera.fileName,
video: accessCamera.inBytes
}
trace ("params.video = "+params.video);
FacebookMobile.uploadVideo('me/videos', onComplete, params);
}
private function onComplete( result:Object, fail:Object ):void {
trace("facebook post onComplete called" );
if (result)
{
//result.id is id of post that was just posted
trace ("great");
}
else if (fail)
{
trace("post Failed");
trace('code: '+fail.error.code);
trace('message: '+fail.error.message);
trace('type: '+fail.error.type);
}
}
当我追踪参数视频时
会得到大量随机字符。问题似乎在于facebook似乎没有将bytearray
(如果我成功地创建了它)视为视频 adobe示例在写入字节时进行解压缩。试着在写的时候解压,看看解压是否仍然有问题。此外,在尝试上载之前,请更新您的问题,以包括params.video的跟踪。您的意思是将其放入readFileIntoByteArray
方法中?当我跟踪params.video
时,我在输出窗格中得到了大量随机字符。很抱歉,回复晚了。我与笔记本电脑分开了一天。我还尝试移动解压
,但没有成功