Грамотный кодинг видео в Linux

Вопросы, приемы и проблемы обработки видео

Модератор: Модераторы разделов

Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Грамотный кодинг видео в Linux

Сообщение Arceny »

Как грамотно кодить видео в Линуксе? Допустим DVD с помошью DVD:::RIP нормально получается перегнать в mpeg4 , но кодеков там ограниченное число - xvid && ffmpeg . Последний может mpeg4 и h264 (только в однопроходном режиме)...

Соответственно. Как правильно сжимать допустим mpeg2 исходники (DVD) в mkv (как самый прогрессивный контейнер) 2проходным кодированием с помощью x264 например?

Какие аналоги ВиртуалДаба есть? Какой вообще софт (помимо dvdrip/acidrip) желательно с ГУЯми... Хотя можно и инструкции на русском по работе с консольными программами... :wacko:
Спасибо сказали:
Den001
Сообщения: 666
ОС: Suse 11

Re: Грамотный кодинг видео в Linux

Сообщение Den001 »

Попробуй поискать тут или на подобных.
http://www.linuxrsp.ru/win-lin-soft/table-rus.html
Спасибо сказали:
minder
Сообщения: 331
ОС: AIX, Solaris,RHEL,SLES,Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение minder »

Собственно, хотел добавить к теме автора. Как кодировать звук с DVD в mp4(aac-he) с 6 каналами.

А на счет видео h264, ИМХО, на Linux mplayer(mencoder) лучше всех поддерживает этот формат.
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

(Arceny @ Sep 4 2006, в 19:23) писал(а):Какие аналоги ВиртуалДаба есть?

Avidemux

(Arceny @ Sep 4 2006, в 19:23) писал(а):Какой вообще софт (помимо dvdrip/acidrip) желательно с ГУЯми... Хотя можно и инструкции на русском по работе с консольными программами...

mencoder + какой-нибудь фронтенд.


(Arceny @ Sep 4 2006, в 19:23) писал(а):Как правильно сжимать допустим mpeg2 исходники (DVD) в mkv (как самый прогрессивный контейнер) 2проходным кодированием с помощью x264 например?

С mkv пока напряг. Я жму в ogm, затем перегоняю mkvmerge.

(minder @ Sep 4 2006, в 21:28) писал(а):Как кодировать звук с DVD в mp4(aac-he) с 6 каналами.

avidemux-2.3-svn умеет (хотя я бы рекомендовал vorbis). svn достаточно стабилен, скоро должен появится пререлиз.
Спасибо сказали:
Аватара пользователя
Xentrix
Бывший модератор
Сообщения: 2429
Статус: PackageMonkey
ОС: OpenSuSE 11.1

Re: Грамотный кодинг видео в Linux

Сообщение Xentrix »

Arceny писал(а):
04.09.2006 20:23
Как грамотно кодить видео в Линуксе? Допустим DVD с помошью DVD:::RIP нормально получается перегнать в mpeg4 , но кодеков там ограниченное число - xvid && ffmpeg . Последний может mpeg4 и h264 (только в однопроходном режиме)...

Это зависит от сборки dvdrip. У мя, например, умеет, xvid (2,3,4), divx (4,5), fame, ffmpeg, VCD/SVCD/CVD/XFVCD, af6 - ну и там уже еще варианты. Вроде хватает :)
Intel CoreDuo 6300/2Gb/300+300Gb HDD WD+Segate/GF8800GTS 320Mb/SB Live 5.1+SB X-Fi Gamer
OpenSuSE 11.1/kernel-2.6.27.x pae i686/Xorg 7.3/KDE 4.2 & E17/Compiz/ForceWare 180.xx.xx
Спасибо сказали:
Аватара пользователя
Vorb
Сообщения: 166
Статус: Ярый антифорточник
ОС: Gentoo Linux

Re: Грамотный кодинг видео в Linux

Сообщение Vorb »

Я всегда кодирую mencoder кодеком xvid, только не тем, который включен в ffmeg, а стянутым по цвс с сайта... С тем почемуто не дружит мой двд-проигрыватель :(
получается довольно неплохо. Если кому надо - напишу как все делаю...
И на обломках Microsoft напишут наши имена!
Спасибо сказали:
gtlinuxman
Сообщения: 184
ОС: Gentoo 2006.0

Re: Грамотный кодинг видео в Linux

Сообщение gtlinuxman »

Вот сейчас передо мной
/usr/share/doc/mplayer-1.0_pre8/DOCS/HTML/ru/encoding-guide.html (только всё-равно по-аглицки)

Там же есть ссылка на фронтэнды http://www.mplayerhq.hu/design7/projects.h...coder_frontends
Open Source
Создавать и воспитывать [сущее]; создавая, не обладать [тем, что создано];
приводя в движение, не прилагать к этому усилий; руководя, не считать себя
властелином – вот что называется глубочайшим дэ.
"Дао Дэ Цзин" && Gentoo 2005.1
Спасибо сказали:
Аватара пользователя
Xentrix
Бывший модератор
Сообщения: 2429
Статус: PackageMonkey
ОС: OpenSuSE 11.1

Re: Грамотный кодинг видео в Linux

Сообщение Xentrix »

Вы не очень-то внимание обращайте на тамошний список. 90% там - дохлятина, которая так и не превратилась во что-то стоящее. Отметить можно разве что DVDrip и gbDVDenc.
Intel CoreDuo 6300/2Gb/300+300Gb HDD WD+Segate/GF8800GTS 320Mb/SB Live 5.1+SB X-Fi Gamer
OpenSuSE 11.1/kernel-2.6.27.x pae i686/Xorg 7.3/KDE 4.2 & E17/Compiz/ForceWare 180.xx.xx
Спасибо сказали:
gtlinuxman
Сообщения: 184
ОС: Gentoo 2006.0

Re: Грамотный кодинг видео в Linux

Сообщение gtlinuxman »

То-то и оно.
с первого раза только Konvertor собрался (но сегфолтится при закрытии). (из портеджей)
kmenc15 отказался собиратся во всех (доступных в портеджах) версиях.
В принципе, учитывая, что всякое обобщение не верно, лучше конвертить в консоли, по мануалу.

С редакторами тоже не всё в ажуре:
avidemux собрался со второй попытки, но не находит аудио-кодеки.
Kino & MainActor не переваривают пожатые авишки,
щаз качаю cinelerra-cvs -- посмотрим, что за фрукт :)
Open Source
Создавать и воспитывать [сущее]; создавая, не обладать [тем, что создано];
приводя в движение, не прилагать к этому усилий; руководя, не считать себя
властелином – вот что называется глубочайшим дэ.
"Дао Дэ Цзин" && Gentoo 2005.1
Спасибо сказали:
Аватара пользователя
Xentrix
Бывший модератор
Сообщения: 2429
Статус: PackageMonkey
ОС: OpenSuSE 11.1

Re: Грамотный кодинг видео в Linux

Сообщение Xentrix »

gtlinuxman писал(а):
05.09.2006 09:48
То-то и оно.
с первого раза только Konvertor собрался (но сегфолтится при закрытии). (из портеджей)
kmenc15 отказался собиратся во всех (доступных в портеджах) версиях.

С редакторами тоже не всё в ажуре:
avidemux собрался со второй попытки, но не находит аудио-кодеки.
Kino & MainActor не переваривают пожатые авишки,
щаз качаю cinelerra-cvs -- посмотрим, что за фрукт :)

В первых двух случаях вините портежи. У меня под SuSE собриралось и собирается без проблем. И работает, ессно.

Криво собранный avidemux (о-дно-зна-чно! :) ) - вот уж на что пряморукая программа - уж она-то без проблем всегда собиралась и работала.
Kino переваривает пожатые avi-шки если он версии 0.9.0 и собран "в присутствующих" на системе ffmpeg и xvid.
MainActor - да. Но он и закрытый и его просто так не пересобрать - с чем дают, с тем едим.

Учитывая, как у вас все косо с гораздо более простыми программами, боюсь с cinelerra вам тоже не повезет ;)
Intel CoreDuo 6300/2Gb/300+300Gb HDD WD+Segate/GF8800GTS 320Mb/SB Live 5.1+SB X-Fi Gamer
OpenSuSE 11.1/kernel-2.6.27.x pae i686/Xorg 7.3/KDE 4.2 & E17/Compiz/ForceWare 180.xx.xx
Спасибо сказали:
Аватара пользователя
StraNNicK
Бывший модератор
Сообщения: 1005
Статус: добрый хиппи

Re: Грамотный кодинг видео в Linux

Сообщение StraNNicK »

Как насчёт [url=http://handbrake.m0k.org/}хэндбрейка[url]?
Жмёт он правда в ogm или в mp4, но какая фиг разница - что за контейнер? Если есть горячее непреодолимое желание - можно потом ручками в mkv перепаковать...
Ушёл навсегда. В личку не заглядываю.
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

Прочитал кучу документации по mencoder. Потом один раз взял и написал сприпты для XviD и x264. Всё, больше ничего не надо. Если кто хочет, то скриптами поделюсь.
Если кому надо - напишу как все делаю...

Да, интересно.
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

Скрипты конечно очень хочется !

Если кому надо - напишу как все делаю...

Конечно!
Спасибо сказали:
Аватара пользователя
Xentrix
Бывший модератор
Сообщения: 2429
Статус: PackageMonkey
ОС: OpenSuSE 11.1

Re: Грамотный кодинг видео в Linux

Сообщение Xentrix »

Да, скрипты были бы очень кстати для любого - ведь и во фронтендах используется система скриптов, которые можно ручками прописать. И было бы вообще отлично, если бы они были с комментариями - маны - манами, но толковое пояснение на родном языке - вещь более удобная и внятная.

Vorb писал(а):
05.09.2006 01:19
Я всегда кодирую mencoder кодеком xvid, только не тем, который включен в ffmeg, а стянутым по цвс с сайта... С тем почемуто не дружит мой двд-проигрыватель :(

Ясное дело, что не дружит :) - он не умеет H264, а xvid, который в ffmpeg как раз и использует этот стандарт энкодинга :) (ну и заворот - да? - энкодер, использующий энкодер, который в свою очередь использует другой энкодер :lol: ) А cvs-ный xvid - это обычный, стандартный.
Intel CoreDuo 6300/2Gb/300+300Gb HDD WD+Segate/GF8800GTS 320Mb/SB Live 5.1+SB X-Fi Gamer
OpenSuSE 11.1/kernel-2.6.27.x pae i686/Xorg 7.3/KDE 4.2 & E17/Compiz/ForceWare 180.xx.xx
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

С mkv пока напряг. Я жму в ogm, затем перегоняю mkvmerge.


А как в данном случае быть с размером файла? Он ведь в любом случае изменится. В какую сторону?
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

Ну раз хотите, то выкладываю свои скрипты и постараюсь их прокомментировать. Итак, 2 скрипта:
  • Копирование DVD диска на HDD, вычисление битрейта и кодирование с помощью XviD в два прохода.
  • Копирование DVD диска на HDD, вычисление битрейта и кодирование с помощью x264 в четыре прохоа.
П.С. В скриптах есть неопределённые значение, которые Вам надо будет вычислять самим. Это конечно же "bitrate" и "crop" (обрезание чёрных полос по диагонали и вертикали), в случае с XviD. Как вычислять "bitrate" я написал в скрипте, а вот с "crop" как поступить более разумно и правильно я не знаю, а точнее забыл. Я использую для его вычисления AcidRIP. Там легко это сделать.
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

Чем можно рипнуть русские сабы с ДВД? Сдаётся мне, что ничем, так как их надо ОСРить?

Как выбрать язык звуковой дорожке при сжатии менкодером? Эх, навернео стоит ман почитать :)
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

CnupT
ИМХО делать scale нет смысла, если не ставить задачей поместить фильм на одну болванку.
-lameopts vol=5 даст дикий клиппинг, нужно использовать -af volnorm.

Очень сильно помогает экономить битрейт фильтр hqdn3d. При желании можно добавить шум во время просмотра - noise=8a:4a.

Почему max_bframes=1?

Использовать gmc:vhq=4 есть смысл, если время кодирования абсолютно не волнует, так как эффект от их использования небольшой, относительно увеличения времени кодирования.

Для хорошего рипа нужно делать deinterlace где нужно (kerndeint хорошо себя зарекомендовал).

Arceny писал(а):
05.09.2006 14:49
С mkv пока напряг. Я жму в ogm, затем перегоняю mkvmerge.


А как в данном случае быть с размером файла? Он ведь в любом случае изменится. В какую сторону?

В меньшею, иначе какой смысл.
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

В меньшею, иначе какой смысл.


Вот только как эту разницу предусматривать заранее :)
Спасибо сказали:
Аватара пользователя
NIK1910
Сообщения: 269
ОС: SlackWare

Re: Грамотный кодинг видео в Linux

Сообщение NIK1910 »

Для DVD Обычно делаю так:
Копирую VIDEO_TS на жесткий.

Crop обычно определяю так:

mplayer -vf cropdetect VTS_XX_X.VOB
Записываем результат crop=XXX:XXX:XX:XX

А потом проверка правильности:

mplayer -vf crop=704:544:8:8 -aspect 16:9 VTS_XX_X.VOB
Если есть расческа то при кодировании применяю pp=lb
Можно сразу посмотреть работу фильтров:
mplayer -vf pp=lb,crop=XXX:XXX:XX:XX -aspect 16:9 VTS_XX_X.VOB
Если определил не правильно то подгоняю вручную (кратно 16). Лучше подрезать немного видео, чем оставить черные полосы.

Далее кодирую кодером xvid в два прохода.

cat VTS_XX_X.VOB VTS_XX_X.VOB | mencoder -nosound -ovc xvid -xvidencopts vhq=4:pass=1:max_bframes=1 -vf pp=lb,crop=XXX:XXX:XX:XX, -aspect 16:9 -o /dev/null - ; cat VTS_XX_X.VOB VTS_XX_X.VOB | mencoder -oac copy -ovc xvid -xvidencopts vhq=4:pass=2:max_bframes=1:bitrate=1200 -vf pp=lb,crop=XXX:XXX:XX:XX, -aspect 16:9 -o file.avi -

Звук не сжимаю (не вижу смысла).

to CnupT
gmc лучше не использовать, trellis по умолчанию on, а что за фильтр pp=dl?
to Arceny
Выбор дорожки -aid 0x80 или -aid 128
Спасибо сказали:
minder
Сообщения: 331
ОС: AIX, Solaris,RHEL,SLES,Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение minder »

Arceny писал(а):
05.09.2006 18:43
Чем можно рипнуть русские сабы с ДВД? Сдаётся мне, что ничем, так как их надо ОСРить?

http://subtitleripper.sourceforge.net/

Video Tools for Linux
http://forum.doom9.org/showthread.php?t=114966
Спасибо сказали:
minder
Сообщения: 331
ОС: AIX, Solaris,RHEL,SLES,Gentoo

Re: Грамотный кодинг видео в Linux

Сообщение minder »

kreator писал(а):
04.09.2006 23:59
(minder @ Sep 4 2006, в 21:28) писал(а):
Как кодировать звук с DVD в mp4(aac-he) с 6 каналами.

avidemux-2.3-svn умеет (хотя я бы рекомендовал vorbis). svn достаточно стабилен, скоро должен появится пререлиз.

Это вряд ли, т.к. он использует FAAC. FAAC является открытым проектом и не умеет работать с HE профилем, который в свою очередь является комерческим. Мне не известны open-source программы, которые кодировали бы звук с использованием HE профиля. Разве что, NeroAacEncoder - для Windows, бесплатная, закрытый код.
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

За опции командной строки менкодера спасибо.

По поводу транскодера: он может юзать мультипроцессорность. То есть на моём двуядернике прирост скорости очень существенный. Менкодер такое умеет? Я чтото не нашёл.

По поводу субтитров: с первым так и не разобрался инструментом.
А по поводу gocr , что тот использует - так ведь он кажется только английские буковки понимает, а кирилицу - нет?
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

Arceny писал(а):
05.09.2006 19:41
В меньшею, иначе какой смысл.


Вот только как эту разницу предусматривать заранее :)


Я жму xvid'ом в один проход (q=4), мне важнее качество, чем размер. Фильмы получаются размером 600-1000mb (разрешение исходное, только чёрные поля убираю). Звук vorbis q3 (стерео). Я не вижу смысла втискивать фильм ровно на 1-2cd, так как всё пишу на dvd-r.
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

minder писал(а):
05.09.2006 22:07
kreator писал(а):
04.09.2006 23:59

(minder @ Sep 4 2006, в 21:28) писал(а):
Как кодировать звук с DVD в mp4(aac-he) с 6 каналами.

avidemux-2.3-svn умеет (хотя я бы рекомендовал vorbis). svn достаточно стабилен, скоро должен появится пререлиз.

Это вряд ли, т.к. он использует FAAC. FAAC является открытым проектом и не умеет работать с HE профилем, который в свою очередь является комерческим. Мне не известны open-source программы, которые кодировали бы звук с использованием HE профиля. Разве что, NeroAacEncoder - для Windows, бесплатная, закрытый код.

Да, верно - в faac нет HE.
Спасибо сказали:
Аватара пользователя
Snupt
Бывший модератор
Сообщения: 2062
Статус: No Place for RTFM Here…
ОС: Mac OS X

Re: Грамотный кодинг видео в Linux

Сообщение Snupt »

(kreator @ Sep 5 2006, в 19:22) писал(а):ИМХО делать scale нет смысла, если не ставить задачей поместить фильм на одну болванку.

Я ставлю задачу перекодировать фильм в определённый мною размер. Не обязательно он будет 600 или 700 Mb, но он должен быть таким, каким я хочу. Если ситуация позволяет, то я убираю "scale" из скрипта, но чаще всего не делаю этого.
(kreator @ Sep 5 2006, в 19:22) писал(а):...
-lameopts vol=5 даст дикий клиппинг, нужно использовать -af volnorm
...
Очень сильно помогает экономить битрейт фильтр hqdn3d. При желании можно добавить шум во время просмотра - noise=8a:4a
...
Для хорошего рипа нужно делать deinterlace где нужно (kerndeint хорошо себя зарекомендовал)
...

Спасибо за советы, попробуем, поэкспериментируем.
(kreator @ Sep 5 2006, в 19:22) писал(а):Почему max_bframes=1?

max_bframes является аналогом параметра vmax_b_frames lavc. По умолчанию XviD создаёт не больше 2–х B–кадров. Я бы порекомендовал устанавливать его в 1, т.е. создавать не больше 1 B-кадра между P-кадрами

(с) http://aquatique.rusunix.org/mencoding.html
(kreator @ Sep 5 2006, в 19:22) писал(а):Использовать gmc:vhq=4 есть смысл, если время кодирования абсолютно не волнует, так как эффект от их использования небольшой, относительно увеличения времени кодирования.

Не скажи. На некоторых фильмах эффект это даёт хоть и не большой, но и не маленький, уж точно. Поэтому предпочитаю пожертвовать временем ради качества.
kreator, Выложите свои скрипты, посмотрю.
(NIK1910 @ Sep 5 2006, в 21:08) писал(а):gmc лучше не использовать

Почему это?
(NIK1910 @ Sep 5 2006, в 21:08) писал(а):а что за фильтр pp=dl

Не помню уже точно. Но качество картинки он даёт хорошее, в большинстве случаях. Использую ещё pp=de, но гораздо реже.
Спасибо сказали:
Аватара пользователя
romuil
Сообщения: 2095
Статус: Ромунцель
ОС: ALTLinux Sisyphus

Re: Грамотный кодинг видео в Linux

Сообщение romuil »

Заметил одну неприятную особенность -ovc xvid дает мне масмимум 10 fps на ядре smp (процессор с HT ). ffmpeg дает до 35 , но вендовые плейеры его не понимают , вернее редко у кого этот кодек установлен.Получается mencoder не умеет кодировать на мультипроцессорных ядрах ? Загрузка только на одном виртуальном ядре 99 % второе не нагружется вообще.
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Грамотный кодинг видео в Linux

Сообщение Arceny »

Виртуальный СМП преимущества особого не даёт. Вот реальный - да. transcode это может, один процесс грузит 160% проца :) так по крайней мере top информирует. 1й проход шпарит кадров 70 в секунду. Второй - поменьше...
Спасибо сказали:
kreator
Сообщения: 384
ОС: LFS

Re: Грамотный кодинг видео в Linux

Сообщение kreator »

(CnupT @ Sep 6 2006, в 11:01) писал(а):Не скажи. На некоторых фильмах эффект это даёт хоть и не большой, но и не маленький, уж точно. Поэтому предпочитаю пожертвовать временем ради качества.

Я и сам долгое время использовал gmc+vhq=4, но решил поэкспериментировать: взял фрагмент пару минут, где был плавный переход от статичной картинки к быстрому движению, выставил настройки (q=4) и начал сравнивать. При включении gmc+vhq4 размер уменьшается на 4.2%, скорость меньше на 40%. Возможно на другом материале эффективность будет выше (а может и ниже). Включение qpel - размер меньше на 5-8%, скорость на 30%. Хотя был у меня какой-то ролик, где qpel только на 2% сжатие увеличивал.
(CnupT @ Sep 6 2006, в 11:01) писал(а):kreator, Выложите свои скрипты, посмотрю.

Я жму в avidemux, так как мне в нём удобнее фильтры подгонять (crop/kerneldeint/hqdn3d) и отрезать надоевшие заставки. Ещё я в нём home video чищу/нарезаю и в силу некоторых обстоятельств (точнее багов :)) являюсь одним из разработчиков.

xvid:
q=4, chroma optimizer, I-frame interval = 500, trellis quant, quant type = mpeg, остальное не меняю.
Звук: ogg q3 стерео + нормализация.
Контейнер ogm, потом mkvmerge.

C x264 пробовал несколько фильмов, но результат меня не впечатлил. При равном качестве с xvid'ом, скорость на 40-60% меньше, размер меньше на 5-10%. Хотя опять же зависит от фильма.
Спасибо сказали:
Аватара пользователя
NIK1910
Сообщения: 269
ОС: SlackWare

Re: Грамотный кодинг видео в Linux

Сообщение NIK1910 »

На счет pp=de согласен, это комбинация pp=hb/vb/dr. А pp=dl, сейчас специально в man глянул (mencoder -pphelp), там нет такого. Недавно пробовал еще pp=al:f для повышения контраста на тусклом мультфильме.

gmc - глобальная компенсация движения, предназначена для экономии битов на вращающихся и приблищающе-удаляющихся изображениях. Раньше тоже использовал не задумываясь, а в результате не живой (менее подвижный) фон.
Спасибо сказали: