fl.video.VideoPlayer загружает flv относительно swf?

Обновление: Оказывается, это недокументированное поведение NetStream class - NetStream загружается относительно swf, в отличие от URLRequest, который загружается относительно документа HTML ... раздражает.


У меня возникает странная проблема при загрузке FLV-файла с использованием класса fl.video.VideoPlayer, поставляемого с CS4: Adobe docs здесь

Обычно при загрузке внешнего содержимого в flashplayer путь указывается относительно HTML-страницы, в которую встроен swf, но когда я пытаюсь загрузить FLV с помощью класса VideoPlayer, проигрыватель ищет путь относительно swf, а не HTML (как и следовало ожидать).

например: Мои настройки файла:
index.html (который содержит swf)
swf/my-video-player.swf
video/my-video.flv

Когда я вызываю videoPlayer.play("video/my-video.flv") из swf (в index.html), браузер пытается загрузить "swf/video/my-video.flv", который относится к swf, а не к HTML.

Кто-нибудь еще испытывал такое поведение с классом VideoPlayer? Есть идеи, почему это может происходить?


person Reuben    schedule 09.11.2009    source источник
comment
Популярность flash по сравнению с cs4 может привлечь больше людей.   -  person Amarghosh    schedule 09.11.2009


Ответы (1)


Flash "всегда" использует путь html в качестве основы для относительных путей (точнее, все URLRequests) ... Это если только не установлен параметр base html (см. Здесь).

Однако я помню, что когда FileReference появился в AS2 (не знаю о NetStream), по какой-то причине его пути всегда были относительно swf ... когда вышел AS3, я думаю, что URLRequest исправил его.

Я не знаю, к какому классу "VideoPlayer" вы относитесь ... быстрый поиск в Google дает мне ссылку на класс AS2, поэтому, если вы используете AS2 (плохие теги BTW ^^), вы можете столкнуться с проблемой: я упомянуть.

И теперь, когда я думаю об этом, NetStream не использует URLRequests (это единственный внешний процесс загрузки, который этого не делает?), Так что это может быть связано с этим ... возможно, URLRequest.url дает исправленный URL-адрес, я не пробовал.

person Cay    schedule 09.11.2009
comment
Я использую as3 - я обновил свой вопрос, добавив ссылку на документы класса. - person Reuben; 09.11.2009
comment
Насколько я могу судить, fl.video.VideoPlayer использует NetStream в качестве подключения, так что это может быть проблемой - я посмотрю на нее. - person Reuben; 09.11.2009
comment
Как упоминалось в обновлении OP, проблема здесь в том, что NetStream имеет недокументированную ошибку; он всегда загружается относительно SWF, а не HTML, и BASE игнорируется. Следовательно, этот ответ неверен с NetStream из-за этой ошибки. - person apinstein; 26.12.2011