PDA

Просмотр полной версии : FLVPlayback - изменение размеров видео внутри компонента


AL.exe
25.07.2007, 03:43
Проблема в следующем.

В компоненте FLVPlayback видео растягивается по заранее установленным размерам компонента. Т.е., если оно широкоформатное, то оно растягивается. Если 3х4 (как и пропорции компонента, то все ок).

Можно, конечно, поставить значение maintainAspetRatio в true, но тогда не только видео будет изменять размер внутри плеера, но и сам плеер (т.е. панель с кнопками управления будет растягиваться горизонтально или передвигаться по вертикали) будет изменять свой размер вместе с видео.

Можно ли как-то соблюсти пропорции видео, при этом не меняя размер самого компонента? К примеру, если я загружаю широкоэкранное видео, сделать так, чтобы не компонент уменьшался по вертикали и панель с органами управления поднималась вверх к самому видео, а сделать так, чтобы пропорции видео сохранялись(просто видео вписывалось в прямоугольник в тех же пропорциях), а органы управления оставались на месте?

~ ~ ~

Как-то я все сложно объяснил::rolleyes:

Короче говоря, можно ли сделать соблюдение пропорций видео и при этом зафиксировать размеры и положение панели с кнопками управления?

etc
25.07.2007, 10:04
Сделать свой плеер :)

AL.exe
25.07.2007, 12:39
Да я вот уже сам об этом подумал, поковыряв еще этот компонент :) Спасибо :)

Единственная вещь меня смущает. Метаданные (в частности, конечно, интересует duration), прописываются в начале FLV-ролика? Т.е. не нужно чем-то отдельно процессить видео и куда-то сохранять длительность ролика? А то в mp3, например, данные о длительности могут подгрузиться уже когда полфайла проигралось..ясное дело, что в таком случае ни о каком seek-bar'е речи быть не может :)

etc
25.07.2007, 12:55
Да, метаданные должны быть в начале ролика. Точнее они там либо есть, либо их там нет.

AL.exe
25.07.2007, 13:33
Спасибо :)

AL.exe
25.07.2007, 19:47
В процессе создания возник вопрос. Не нашел ничего аналогичного OnSoundComplete. Как определить, что ролик дошел до конца? Можно, конечно, сравнить NetStream.duration и NetStream.time, но в хелпе написано, что NetStream.duration является приближенным значением и NetStream.time может выйти за его пределы

etc
25.07.2007, 19:49
А onStatus на что?

AL.exe
25.07.2007, 19:53
Ну, onStatus сработает и если я кнопкой Play/Pause видео остановлю... Нет, я, конечно, могу добавить переменную-флаг, но это немного через кгхм... :)

С onSoundComplete было однозначнее - он срабатывал только когда закончилось воспроизведение, а не остановилось...

Спасибо :) Будупробовать.

etc
25.07.2007, 19:55
Ну, onStatus сработает и если я кнопкой Play/Pause видео остановлю...
Откуда такая уверенность? Когда я делал плееры, при Play/Pause никаких onStatus не вызывалось.

AL.exe
25.07.2007, 19:58
Да, Вы правы. Что-то я с выводами поторопился. Надо больше пробовать, чем читать хелпы :rolleyes:
Извиняюсь за беспокойтво :o