Покадровое продвижение видео с помощью Flex и Flash Media Server - PullRequest
2 голосов
/ 11 февраля 2011

У меня есть Adobe Flash Media Server, настроенный для потокового видео (.f4v).У меня есть приложение Flex, которое использует компонент VideoDisplay для подключения и воспроизведения видео.

Для этого конкретного приложения будет важно, чтобы пользователи могли приостанавливать видео и медленно продвигать его, одним щелчком мыши за раз.Кадр за кадром было бы довольно круто, если это возможно.

В настоящее время я делаю это, что довольно хорошо работает для значений> 0,1 с

        protected function reverseFrame(event:MouseEvent):void
        {
            mainVideo.playheadTime -= 0.1; // seconds
        }

        protected function advanceFrame(event:MouseEvent):void
        {
            mainVideo.playheadTime += 0.1; // seconds
        }

Я мог бы, вероятно, рассчитать приблизительное время, которое занимает кадр (по метаданным, я полагаю), но яне уверен, что это будет лучшим способом сделать это.Кроме того, иногда при использовании небольших значений, таких как 0,1 с, следующее изображение не будет отображаться до тех пор, пока я не перейду снова.

Я видел, что есть другие компоненты для воспроизведения флэш-медиа, но я неконечно, если они предоставляют какие-либо дополнительные преимущества по сравнению с VideoDisplay.

Ответы [ 2 ]

1 голос
/ 07 марта 2011

Flash 10.1 имеет NetStream.step для этой цели.

1 голос
/ 07 марта 2011

Если вы проявите гибкость в выборе серверного решения для потоковой передачи мультимедиа, я бы посоветовал вам взглянуть на Wowza Media Server вместо Flash Media Server.

Wowza поддерживает такие функции, как быстрая перемотка вперед, быстрая перемотка назад и замедленная съемка. Он работает за счет потоковой передачи мультимедиа с желаемой скоростью, что исключает необходимость его реализации на клиенте Flex.

Вы можете взглянуть на следующий пример кода для вышеупомянутой функциональности:

Wowza Media Server (быстрая перемотка вперед, перемотка назад, замедленная съемка)

...