Бормотухи.НЕТ

Вернуться   Бормотухи.НЕТ > Компьютеры > Software (Программное обеспечение)
Расширенный поиск

Software (Программное обеспечение) В этом разделе происходи обсуждение программ

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2010, 01:47 Вверх   #1
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
Хорошо Проблема с конвертированием кодеком x264 через ffmpeg

Пытаюсь научиться конвертировать видео через ffmpeg. Скачал нормальную версию с полным набором возможностей.

Нашел примеры составления команд для упаковки видео. К примеру, вот такой вариант:

Код:
ffmpeg -i video.avi -skip_frame none -sameq -vcodec mpeg4 -mbd rd -flags +4mv+aic+umv+mv0 -trellis 2 -cmp 2 -subcmp 2 -bf 2 -g 250 -r 25 -f mp4 -y file.mp4
@echo on
pause
отлично работает, когда заменяю кодек в флаге -vcodec на x264 (получается -vcodec libx264):

Код:
ffmpeg -i video.avi -skip_frame none -sameq -vcodec libx264 -mbd rd -flags +4mv+aic+umv+mv0 -trellis 2 -cmp 2 -subcmp 2 -bf 2 -g 250 -r 25 -f mp4 -y file.mp4
@echo on
pause
Вылезает вот такой лог:

PHP код:
c:\video>ffmpeg -i video.avi -skip_frame none -sameq -vcodec libx264 -mbd rd -fl
ags 
+4mv+aic+umv+mv0 -trellis 2 -cmp 2 -subcmp 2 -bf 2 -g 250 -r 25 -f mp4 -y fi
le
.mp4
FFmpeg version SVN
-r21874Copyright (c2000-2010 Fabrice Bellardet al.
  
built on Feb 18 2010 06:07:51 with gcc 4.4.2
  configuration
: --enable-memalign-hack --cross-prefix=i686-mingw32- --cc=ccache
-i686-mingw32-gcc --arch=i686 --target-os=mingw32 --enable-runtime-cpudetect --e
nable
-avisynth --enable-gpl --enable-version3 --enable-bzlib --enable-libgsm --e
nable
-libfaad --enable-pthreads --enable-libvorbis --enable-libtheora --enable-l
ibspeex 
--enable-libmp3lame --enable-libopenjpeg --enable-libxvid --enable-libsc
hroedinger 
--enable-libx264 --enable-libopencore_amrwb --enable-libopencore_amrn
b
  libavutil     50. 9. 0 
50. 9. 0
  libavcodec    52.54
52.540
  libavformat   52.52
52.520
  libavdevice   52. 2. 0 
52. 2. 0
  libswscale     0.10
/  0.100
Input 
#0, avi, from 'video.avi':
  
Duration00:02:33.60start0.000000bitrate5513 kb/s
    Stream 
#0.0: Video: msvideo1, rgb555le, 772x600, 10 tbr, 10 tbn, 10 tbc
    
Stream #0.1: Audio: pcm_s16le, 22050 Hz, 2 channels, s16, 705 kb/s
[libx264 01e9c900]broken ffmpeg default settings detected
[libx264 01e9c900]use an encoding preset (vpre)
Output #0, mp4, to 'file.mp4':
    
Stream #0.0: Video: libx264 (hq), yuv420p, 772x600, q=2-31, 200 kb/s, 90k tb
n25 tbc
    Stream 
#0.1: Audio: aac, 22050 Hz, 2 channels, s16, 64 kb/s
Stream mapping:
  
Stream #0.0 -> #0.0
  
Stream #0.1 -> #0.1
Error while opening encoder for output stream #0.0 - maybe incorrect parameters
such as bit_rateratewidth or height

c
:\video>pause
Для продолжения нажмите любую клавишу 
. . . 
Что только не перепробовал, ничего не помогает. Постоянно вылазиет:

Error while opening encoder for output stream #0.0 - maybe incorrect parameters
such as bit_rate, rate, width or height


Что делать, ХЗ. Никто не сталкивался такой штуковиной ?

Параметры кодека которые дал Злой я кинул сюда: Параметры (флаги) для конвертирования кодером ffmpeg
  Ответить с цитированием
Cказали cпасибо:
Старый 19.02.2010, 02:11 Вверх   #2
Fedoraвод
 
Аватар для Злой
Злой вне форума
Доп. информация
По умолчанию

Цитата Сообщение от Serberg Посмотреть сообщение
Error while opening encoder for output stream #0.0 - maybe incorrect parameters
such as bit_rate, rate, width or height
Кодек х264 ищет файл с настройками для кодирования и не находит.
Решается добвалением
PHP код:
-vpre hq 
в команды для видео кодека.
Смысл этой команды в том, что она заставляет х264 кодек считать настройки из файла под именем hq из стандартной директории с фалами пресетами.

Если после добавления этого кода ошибка остается, значит нужно проверить наличие такого файла, если его нет, но есть другие - заменить имя в настройках

Тут появляется встречный вопрос, а где в виндовс ffmpeg хранит пресеты?
Тут я затрудняюсь ответить.

Кстати команды для разных кодеков - разные, по этому мусор вида
Цитата Сообщение от Serberg Посмотреть сообщение
-mbd rd -flags +4mv+aic+umv+mv0 -trellis 2 -cmp 2 -subcmp 2 -bf 2 -g 250
будет справедлив только для кодека mpeg4
  Ответить с цитированием
Cказали cпасибо:
Старый 19.02.2010, 02:23 Вверх   #3
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

Злой, нашел в интернете норамльную команду которая заставляет упаковывать файл кодеом x264. Выглядит она вот так:

Код:
ffmpeg -i имя-входного-файла.avi имя-выходящего-файла.mp4 -vcodec libx264 -acodec libfaac -f mp4
Проверил, работает. Качество получается отвратительное.
  Ответить с цитированием
Старый 19.02.2010, 13:40 Вверх   #4
Fedoraвод
 
Аватар для Злой
Злой вне форума
Доп. информация
По умолчанию

Вот настрокйи видеокодека с которыми конвертация пойдет без фала пресета
Код:
-vcodec libx264 -b 512k -flags +loop+mv4 -cmp 256 \
	   -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 \
	   -me_method hex -subq 7 -trellis 1 -refs 5 -bf 3 \
	   -flags2 +bpyramid+wpred+mixed_refs+dct8x8 -coder 1 -me_range 16 \
           -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10\
	   -qmax 51 -qdiff 4
Без чего конкретно кодирование не идет я не разбирался, да мне и не к чему, у меня пресеты работаю как надо )))
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Старый 19.02.2010, 14:37 Вверх   #5
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

Злой, та же ботва получается, только в валенках.

PHP код:
c:\video>ffmpeg -i video.avi -vcodec libx264 -b 512k -flags +loop+mv4 -cmp 256 \

FFmpeg version SVN-r21874Copyright (c2000-2010 Fabrice Bellardet al.
  
built on Feb 18 2010 06:07:51 with gcc 4.4.2
  configuration
: --enable-memalign-hack --cross-prefix=i686-mingw32- --cc=ccache
-i686-mingw32-gcc --arch=i686 --target-os=mingw32 --enable-runtime-cpudetect --e
nable
-avisynth --enable-gpl --enable-version3 --enable-bzlib --enable-libgsm --e
nable
-libfaad --enable-pthreads --enable-libvorbis --enable-libtheora --enable-l
ibspeex 
--enable-libmp3lame --enable-libopenjpeg --enable-libxvid --enable-libsc
hroedinger 
--enable-libx264 --enable-libopencore_amrwb --enable-libopencore_amrn
b
  libavutil     50. 9. 0 
50. 9. 0
  libavcodec    52.54
52.540
  libavformat   52.52
52.520
  libavdevice   52. 2. 0 
52. 2. 0
  libswscale     0.10
/  0.100
Input 
#0, avi, from 'video.avi':
  
Duration00:02:33.60start0.000000bitrate5513 kb/s
    Stream 
#0.0: Video: msvideo1, rgb555le, 772x600, 10 tbr, 10 tbn, 10 tbc
    
Stream #0.1: Audio: pcm_s16le, 22050 Hz, 2 channels, s16, 705 kb/s
Unable to find a suitable output format for '\'

c:\video>-partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 \
"-partitions" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

c:\video>-me_method hex -subq 7 -trellis 1 -refs 5 -bf 3 \
"-me_method" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

c:\video>-flags2 +bpyramid+wpred+mixed_refs+dct8x8 -coder 1 -me_range 16 \
"-flags2" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

c:\video>-g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10\
"-g" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

c:\video>-qmax 51 -qdiff 4 out.mp4
"-qmax" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

c:\video>pause
Для продолжения нажмите любую клавишу . . . 
Надо короче говоря ковыряться. Я сейчас крутой упаковщик нашел сделанный я так понимают на самом ffmpeg. Пакует все что угодно во все что угодно. Настроек просто немеренно среди которых я нашел знакомые флаги трипа Б кадры, левелы качества и еще вагон всего. Имеет графический интерфейс а главное просто офигенно упаковывает. Называется это чудо MediaCoder, конвертер фришный, весит 25 мБ.

ps
Я последний видеоролик сжал так же качественно и загнал в мелкий размер как и ты )
  Ответить с цитированием
Старый 19.02.2010, 21:44 Вверх   #6
Fedoraвод
 
Аватар для Злой
Злой вне форума
Доп. информация
По умолчанию

Serberg, а так понял что ты команды прописал так как я тебе их показал? Ты вытяни их в одну строчку, эти бэкслеши справиедливы только для bash, в винде другие переносы (я ен знаю какие), короче, сделай из того что я тебе дал одну строчку и будет тебе счастье.


Цитата Сообщение от Serberg Посмотреть сообщение
я нашел знакомые флаги трипа Б кадры, левелы качества и еще вагон всего
Все это умеет ffmpeg, ты скорее всего гуи просто под него нашел )))
  Ответить с цитированием
Cказали cпасибо:
Старый 19.02.2010, 22:00 Вверх   #7
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
По умолчанию

Цитата Сообщение от Злой Посмотреть сообщение
Все это умеет ffmpeg, ты скорее всего гуи просто под него нашел )))
Типа того, но интерфейс просто мега шикарный + сам подказывает то что не хватает (кодеки, библиотеки) + есть шаблоны которыми я не пользуюсь )


Цитата Сообщение от Злой Посмотреть сообщение
Serberg, а так понял что ты команды прописал так как я тебе их показал? Ты вытяни их в одну строчку, эти бэкслеши справиедливы только для bash, в винде другие переносы (я ен знаю какие), короче, сделай из того что я тебе дал одну строчку и будет тебе счастье.
Переделал. Сделал вот так:

PHP код:
ffmpeg -i video.avi -vcodec libx264 -b 512k -flags +loop+mv4 -cmp 256 -partitions +parti4x4+parti8x8+partp4x4+partp8x8+partb8x8 -me_method hex -subq 7 -trellis 1 -refs 5 -bf 3 -flags2 +bpyramid+wpred+mixed_refs+dct8x8 -coder 1 -me_range 16 -g 250 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -qmin 10 -qmax 51 -qdiff 4 out.mp4
@echo on
pause 
и все пошло, но я уже тем кодером пакую. Там пакетный вариант упаковки шикарно работает )
  Ответить с цитированием
Ответ

Метки
ffmpeg


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Вопрос] ffmpeg на dle noggano77777 DataLife Engine 7 10.06.2011 21:24
Ищу мануал по установке кодека x264 на Ubuntu 10.04 TLS Serberg Linux 12 01.04.2011 01:01
[Вопрос] Проблема по установке ПО через флешку Evgen93 Windows 0 20.02.2011 15:35
[Вопрос] Можно ли через ffmpeg конвертировать целые папки с видео ? Serberg Software (Программное обеспечение) 3 10.09.2010 14:18
[Инструкция] Пересжатие DVD в MKV (x264, AAC) для GNU/Linux Cobra Linux 0 21.04.2009 17:07


Текущее время: 02:39. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
 

Время генерации страницы 0.14972 секунды с 14 запросами