我正在尝试获取在我的客户端上播放的 Wowza 视频流的位图/快照,如下所示:
var bitmapData:BitmapData = new BitmapData(view.videoPlayerComponent.width, view.videoPlayerComponent.height);
bitmapData.draw(view.videoPlayerComponent);
当我这样做时,我收到以下错误消息:
SecurityError:错误 #2123:安全沙箱违规:BitmapData.draw:http://localhost:51150/Resources/WRemoteWebCam.swf无法访问 rtmp://localhost/videochat/smithkl42._default/。没有策略文件被授予访问权限。
我认为错误来自无法找到适当的 crossdomain.xml 文件。我不太确定它在哪里寻找它,wireshark 嗅探也没有定论,所以我尝试在以下每个地方放置一个:
http://localhost/crossdomain.xml
http://localhost:1935/crossdomain.xml
http://localhost:51150/crossdomain.xml
我可以从这三个位置中的每一个位置成功检索文件。(我很确定最后一个不会有任何影响,因为它只是托管 .swf 文件的页面所在的网站的位置,但机会不大......)
这些是它在每个实例中抓取的文件的内容:
<cross-domain-policy>
<allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>
它仍然抛出同样的错误信息。
我还按照Wowza 论坛上的说明,在 [install]\conf[appname]\Application.xml 中打开 StreamVideoSampleAccess,但并不高兴:
<Client>
<IdleFrequency>-1</IdleFrequency>
<Access>
<StreamReadAccess>*</StreamReadAccess>
<StreamWriteAccess>*</StreamWriteAccess>
<StreamAudioSampleAccess>*</StreamAudioSampleAccess>
<StreamVideoSampleAccess>*</StreamVideoSampleAccess>
<SharedObjectReadAccess>*</SharedObjectReadAccess>
<SharedObjectWriteAccess>*</SharedObjectWriteAccess>
</Access>
</Client>
有什么想法吗?