.NET: Как создать миниатюру из flash - PullRequest
6 голосов
/ 30 июля 2009

Можно ли как-нибудь создать миниатюру изображения из файла флэш-фильма (flv / swf) [НЕ ИЗ ВИДЕО-файла] в ASP.NET? Какие-нибудь образцы реализации?

Ответы [ 7 ]

4 голосов
/ 30 июля 2009

вы можете использовать ffmpeg для создания миниатюр флеш-видео

2 голосов
/ 30 июля 2009

Для .flv вы можете использовать ffmpeg для преобразования частей видео (например, одного кадра) в изображение (последовательность)

Я использовал его в качестве приложения командной строки, вызывая Process.Start(), но для .NET есть по крайней мере одна оболочка (я сам не проверял): http://www.codeplex.com/ffmpegdotnet

Для .swf Я не знаю способа достичь этого без какого-либо инструмента Adobe.

1 голос
/ 31 июля 2009

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

1 голос
/ 30 июля 2009

для flv это можно сделать легко, как уже упоминали другие ...

для SWF, это ОЧЕНЬ зависит от SWF ... Если внешний вид SWFS определяется кодом, нет другого способа, кроме как встроить в ваше приложение флеш-плеер и позволить флеш-плееру делать снимки, кодировать их как JPEG / PNG, и отправьте их куда-нибудь, используя TCP или LocalConnection (соединение флэш-памяти <-> flash, которое также можно использовать с C #) или попробуйте как-нибудь самостоятельно захватить его выходной буфер ... первая возможность должна быть не более 10-20 строк кода ActionScript ... не знаю о последнем ...

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

Greetz

back2dos

0 голосов
/ 10 августа 2009

Проверьте этот пост.Это не говорит вам все, но я предполагаю, что обеспечивает основную работу, требуемую для этого.Возможно, вам придется выяснить, как получить тег объекта из flash-html, который вы пытаетесь загрузить с веб-страницы.После этого вам придется выяснить, когда снимать кадры.Однако долгая поездка.Вам не нужна часть asp.net.Просто сконцентрируйтесь на части проекта Windows.Надеюсь это поможет.:)

0 голосов
/ 10 августа 2009

Мы работали над этим в моей компании, и мы получили доказательство того, что концепция работает довольно быстро (но проект, для которого мы его создали, сейчас приостановлен). Я не могу поделиться кодом, но могу дать вам несколько советов.

Это не чистый ASP.NET, но, возможно, вы все еще можете его использовать. Мы создали службу Windows, которую можно вызывать из ASP.NET.

Обычно вы устанавливаете плагин flash на сервер, затем службы Windows могут просто открыть SWF-файл через компонент SWX ActiveX, а затем вы можете получить представление обо всем этом. Он работает довольно хорошо, обратите внимание, что вам не нужно фактически отображать компонент ActiveX на экране, чтобы сделать снимок.

0 голосов
/ 06 августа 2009

Единственный способ получить изображение - использовать полнофункциональный клиент Flash, который начинает воспроизведение и позволяет захватить первый кадр.

Я бы внимательно посмотрел на flirt (на самом деле у них есть пример, который отображает pngs) Может быть, некоторые другие флэш-библиотеки могут быть полезны ( swfdec gnash swift tools gplflash )

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

...