Интересный ресурс о работе с Video и не только + немного дебага

October 24, 2007 – 10:22 am

В недавнем разговоре 7thsky дал ссылку на интересный проект от
Stefan Richter. Дядька западает на работу с видео неподетски. На ресурсе миного всякой полезной всячины. например как используя пхп и флеш заставить проиграть видео с произвольной позиции не загружая его полностью, есть исходники, так же Steve Savage has now ported this to Coldfusion. Правда эти примеры только для AS2 (есть в архиве файл сохраненый как CS3, но там публикация выставлена все равно в AS2 и 7 плеер ( ).

Этот сайт целый клондайк для любителей и професионалов работы с видео ). Спасибо 7thsky!

UPD срочно в номер!: 7thsky говорит: “это просто тулза дает просмотривать паблик свойства компонент менять их, просматривать стили* и всякие мелочи, скоро будет метод инвокайшн и так далее.”

Я ее еще не смотрел, но обязательно посмотрю


Проект “nosmoking”

October 23, 2007 – 6:35 pm

Совершенно забыл про проект который когда-то организовывали на флешере, проект называется
“Не кури – рисуй”, ответственным за него был Cherry-Twist, я думаю что и сейчас он в ответе за тех кого приручил )) Вобщем у кого есть желание рисуем, говорим мне или ему и мы вставляем ваше творение в ленту, правила я думаю ясны, рисовать можно в конец и в начало. Еще наверное нужно сделаем имена ссылками, но по желанию авторов) .

Я думаю, что перед тем как рисовать стоит отметить это в комментах, к этому посту чтобы не вышло накладок.

Ссылка на него будет висеть все время в главном меню )

Кто уже отметился пришлите мне линки на свои сайты, если канешно есть желание ).


бдыжь бдыжь, наши на войне

October 23, 2007 – 3:35 pm

Все больше и больше флешеров/флексеров начинаю рубиться в войнушки , Рост пользуясь читаемостью его блога начал подсаживать наших(получи фашист гранату неча наверх лезть), на эту игру, сначало было мало людей, только SHAGGYSMILE да injun, но потом начал подтягиваться и другой народ ). Например я редко заходил к Александра но благодаря войнушкам посетил его уже несколько раз, он сменил дизайн блога буквально за 2 дня.

А еще сегодня мне подло в спину нанес удар Reijii, поэтому я купив супер джадайский мечь решил его бахнуть для профилактики :)

И вообще народ перестал писать нормальные посты, а стал безумно писать чушь типа как я сейчас (интересно а самого себя можно рубить?) )))


Вся правда о Видео во Flex. Часть 5. NetStream, обработка напильником.

October 21, 2007 – 5:53 pm

В этой части мы поругаемся на NetStream.

Грубо говоря NetStream – это основа всей работы с видео/аудио. На мой взгляд основа чего-либо должна быть идеальна, ну или хотя бы близка к идеалу. А тут нам подогнали реально сырое(? или просто глюченое) решение.
В процессе решения нам понадобится всего пара-тройка напильников

Напильник номер один

NetStream – как есть просто не приспособлен для работы с видео. Если попытаться использовать пример их хелпа, то мы после запуска видео сразу же ловим эксепшин:
[code lang=”actionscript”]
Error #2044: Unhandled AsyncErrorEvent:. text=Error #2095: flash.net.NetStream was unable to invoke callback onMetaData. error=ReferenceError: Error #1069: Property onMetaData not found on flash.net.NetStream and there is no default value.
[/code]
Добрые индусы забыли добавить в NetStream метод onMetaData. Верне не один метод а всего два: onCuePoint, onMetaData, вобщем эти методы я подглядел в классе VideoPlayer, правда уже после того как я наловился эксепшинов ) еще там они объявляют метод onPlayStatus, но я не сильно старался понять зачем этот пустой метод нужен:).
И тут на выручку нам приходит напильник, просто наследуемся от NetStream и вставляем не хватающие методы, я просто стал диспатчить события с полученной инфой чтобы все выглядело однообразно:
[code lang=”actionscript”]
class VideoNetStream extends NetStream
{
public function VideoNetStream(connection:NetConnection)
{
super(connection);
}

public function onMetaData(info:Object, … rest):void
{
var evt : NetStatusEvent = new NetStatusEvent(“metaData”);
evt.info = info;
dispatchEvent(evt);
}

public function onCuePoint(info:Object, … rest):void
{
var evt : NetStatusEvent = new NetStatusEvent(“cuePoint”);
evt.info = info;
dispatchEvent(evt);
}
}
[/code]

Напильник номер два

В данной ситуации я даже незнаю кого обвинять, или адоб или создателей firefox (далее фф). Вобщем в ФФ флеш плеер не соображает когда ему скормили неверный урл. вернее 50/50 иногда есть событие что поток не найден а иногда нет, вот например на такой урл [code]http://qweqweqweqweqw[/code] фф не будет ругаться и будет пытаться молча найти его всю свою жизнь, естественно уходы в раздумия на долго не радуют пользователя и он убивает фф :'(.
ИЕ работает как часики ) сразу же ругается на неверный урл.
Напильником номер два мы переопределяем метод play у NetStream и вставляем таймер который отвечает за таймаут соединения(если стрим в течении например минуты не отвечает то мы сам диспатчим событие об ошибке). Код я не буду приводить ибо его нужно чистить и приводить в порядок, а кому нужно тот сам напишет)

Грабли номер три

Если в ситуации описанной выше у ФФ еще делать close() (даже после таймера) и заново подсунуть неверный урл, то ФФ просто падает (play(badUrl) -> close() -> play(newBadUrl));
В данной ситуации нужно еще переопределить метод close() вставив проверку на то как жилось стриму до этого.

и закусочный напильник

Учитывая асинхронность работы NetStream при “нервном пользователе” не успевает сделать close(). На приход в себя, как показывает практика, достаточно 500-1000 мс.

Что я сделал собрав эти грабли с напильниками

У меня получился класс VideoNetStream, который сам справляется с критическими ситуациями, в моем случае он просто игнорирует вызовы всех методов до тех пор пока сервер или не отдаст ответ или пока сам стрим не поймет что он не дождался. я сделал флаг isBusy который показывает окружающему миру, что стрим еще думает.

Если есть какие-то еще “фичи” стрима, пишите, будем добавлять.
Если где-то написал не то говорите )

Продолжение серии может будет, а может и нет )

И немного десерта

читать и смотреть, сначало немного на русском, а потом и официальный сайт
с картинками


IDEA-7!

October 18, 2007 – 6:36 am

Вышла IDEA-7 c поддержкой Flex. И вышла 15 числа, явно день был полный ништяков

Пока особых подробностей рассказать не могу, ибо только поставил и щупаю.

Пока нащупал стандартные возможности). Фичи и не фичи пытаються обсудить тут

Поругивается на свои неймспейсы в мхмл.

Вобщем все быстро побрасили работу и давате щупать что нам дали )



]]> rss о RIA от 33 Коровы
Забадать RSS!
]]>
~~~~~~