Как сжать фильм FLV в Java? - PullRequest
1 голос
/ 29 ноября 2009

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

Ответы [ 3 ]

3 голосов
/ 12 декабря 2009

Вы можете использовать Xuggler , чтобы сделать это прямо из Java. Вот 3 строки кода API MediaTool от Xuggler, которые перекодируют файл:

 // create a media reader
 IMediaReader reader = ToolFactory.makeReader("videofile.flv");

 // add a viewer to the reader, to see the decoded media
 reader.addListener(ToolFactory.makeWriter("output.mov", reader));

 // read and decode packets from the source file and
 // and dispatch decoded audio and video to the writer
 while (reader.readPacket() == null)
   ;

См. Учебные пособия, группы пользователей и другие примеры, как настроить параметры кодирования.

2 голосов
/ 29 ноября 2009

Взгляните на ffmpeg хорошее место для начала может быть http://sourceforge.net/projects/jffmpeg/
Это оболочка Java для ffmpeg

1 голос
/ 29 ноября 2009

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

Согласно Википедии , файлы FLV, вероятно, содержат видео, сжатое с использованием Sorenson Spark или VP6. Если вы знаете, какой кодек использует ваш фильм, вы можете попытаться найти библиотеку, которая будет работать с ним.

Вполне вероятно, однако, что уже есть инструменты для кодирования или перекодирования FLV-файлов, которые вы можете использовать через JAVA или другой язык.

...