Adobe AIR에 로컬 비디오 (관련 서버 없음)를 재생하기 위해 NetStream.appendBytes()를 사용하고 있습니다. 나는 비디오 출력의 사진을 찍을 BitmapData.draw()
를 사용하려면,하지만 난이 오류가 무엇입니까 것 : 여기NetStream.appendBytes에서 BitmapData.draw를 어떻게 사용할 수 있습니까?
Error #2123: Security sandbox violation: BitmapData.draw: cannot access null. No policy files granted access.
하는 몇 가지 예제 코드입니다 :
package
{
import flash.display.Sprite;
import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.net.NetStreamAppendBytesAction;
import flash.utils.ByteArray;
import flash.display.BitmapData;
class ByteArrayPlayer extends Sprite
{
private var _ns:NetStream;
private var _nc:NetConnection;
private var _video:Video;
public function playVideo(path:String):void
{
_nc = new NetConnection();
_nc.connect(null);
_ns = new NetStream(_nc);
_video = new Video();
addChild(_video);
_video.attachNetStream(_ns);
_ns.play(null);
_ns.appendBytesAction(NetStreamAppendBytesAction.RESET_BEGIN);
var file:File = new File(path);
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var bytes:ByteArray = new ByteArray();
fileStream.readBytes(bytes);
_ns.appendBytes(bytes);
}
public function getImage(video:Video):BitmapData
{
var bit:BitmapData = new BitmapData(_video.width, _video.height);
bit.draw(_video); //This will cause the error
return bit;
}
}
}
에만 샘플 코드 사용은입니다 설명. 비디오가 재생되는 동안 getImage 메서드를 호출하면 오류가 발생합니다. 오류가 정책 파일을 찾을 수 없음을 언급합니다. 파일이 로컬에로드되기 때문에 실제로 정책 파일을 넣을 곳이 없습니다. 정책 설정이 필요하거나 을 사용할 때 BitmapData.draw
기능을 사용할 수 없습니까?
나는 정확히 같은 배입니다. urlstream 객체를 사용하여 데이터를 가져 와서 원하는 바일을 로컬, 헤더로 추가 ... 모든 성공했지만, 시도하기 전에. 본질적으로 발에 자신을 쐈다. 문제를 극복 할 수 있었습니까, 아니면 원격 서버로이를 수행하는 방법에 대한 생각이 있습니까? 현재 FMS 4.5를 풀어서 문제가 해결되는지 확인하고 있습니다. 문서는 또한 플래시 액세스의 방향으로 가리 킵니다. – stat
아주 긴 밤 이후에, 나는 단순히 Http Dynamic Streaming (HDS)에서 appendBytes() 메서드를 사용하여 픽셀을 수행 할 수있는 방법이 없다는 것을 발견했습니다 디코딩 된 비디오에 대한 레벨 조작. 한 가지 가능성은 f4f 파일에 보조 바이트 스트림을 해킹하는 것입니다.하지만 실제로 수행되는 검사와 AVM이 appendBytes 스트리밍 모델의 모든 정책 플래그를 무시하는 경우에 따라 달라집니다. – stat
이? 나는 같은 문제에 직면 해있다. – WesleyJohnson