我有一个加载在XML文件中的站点,该文件告诉在哪里可以找到要加载到主SWF中的资产。图像和外部SWF正确加载,但由于某些原因FLV根本没有加载,除非contentPath是一个绝对路径,我不能为此项目。我也建立了相对于HTML页面的链接。
我的文件结构是这样的:
index.html - 主要加载程序文件
project / shared / published / section1 / loader.swf - 要加载的主要SWF
project / english / images / videos / welcome.flv - 要加载的电影。
FLVPlayback contentPath的路径是否可能相对于SWF而不是HTML页面?任何帮助将不胜感激。
加载视频的网页代码
导入mx.video。*;
import mx.video.*;
playback1.contentPath = getNodeValue(findNode(videos, "one"));
// Assign the mySeekBar instance to the flvPlayback instance
playback1.playPauseButton = playpause;
playback1.backButton = myrewind;
playback1.seekBar = seekbar_container.myseek;
playback1.bufferingBar = mybuffer;
答案 0 :(得分:1)
希望这会对你有所帮助。我创建了一个测试,这就是我所拥有的:
文件夹设置:
flash / application / - loader.swf和index.html
flash / movies / - movie.flv
我使用的路径是 - ../ movies / movie.flv
代码示例是:
/**
Requires:
- FLVPlayback component on the Stage with an instance name of my_FLVPlybk
*/
import mx.video.*;
my_FLVPlybk.contentPath = "../movies/movie.flv";
var listenerObject:Object = new Object();
listenerObject.metadataReceived = function(eventObject:Object):Void {
my_FLVPlybk.setSize(my_FLVPlybk.preferredWidth, my_FLVPlybk.preferredHeight);
}
my_FLVPlybk.addEventListener("metadataReceived", listenerObject);
我将它上传到我的localhost,它运行正常。
我还通过将应用程序文件夹外的索引移动到flash文件夹来测试它,这表明FLV确实相对于swf而不是html。
答案 1 :(得分:0)
FLV文件的路径是相对于.swf文件的。
其他文件的路径是相对于.html文件。
不仅在组件中,而且在一般情况下。