недавно сам озадачился этим вопросом... Пока остановился на ffmpeg. Досконально не разобрался еще со всеми возможностями,которых просто море,но в первом приближениий - очень даже не плохо. кодирует быстро. Сам использую в основном для сжатия видео на смартфон в avi и для телефона в 3gp.
А можно поподробней?
Как имеено,какой командой?
_________________
В команду может входить огромное количество опций: и относительно параметров звука,и относительно параметров видео.Все зависит от задач,которые ставишь перед собой. Из чего,а главное что,ты хочешь получить?
Да вот фильм в формате mp4,тормозит при показе.Ниче не помогает.Судя по всему срезан с двд,весит 1.4,надо сжать и чуть хуже сделать качество.
_________________
Celeron 766,256ram,geforce MX440,hdd ide samsung 120
Portage 2.1.1-r2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r6 i686)
ACCEPT_KEYWORDS="x86"
CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer"
Да вот фильм в формате mp4,тормозит при показе.Ниче не помогает.Судя по всему срезан с двд,весит 1.4,надо сжать и чуть хуже сделать качество.
_________________
Если притормаживает по причине слабого процессора,то можно попробовать пережать видео с меньшим разрешением,а так же можно уменьшить битрейт видео.Если нет звуковой карты,то и обработка звукового потока ложится на плечи процессора,а значит, я думаю,что уменьшение битрейта звукового потока,тоже скажется положительно.
Я рад,если информация оказалась полезной...
Еще могу посоветовать собрать ffmpeg с поддержкой ffplay (собрать надо с флагом sdl).Тогда можно будет и быстро просмотреть результаты...типа такой маленький комплекс для работы с видео получится.Хотя,если чесно,то с твоим процессором кодировать видео будет несколько проблематично.
я кодирую mencoder-ом
и когда сдергиваю с двд строкой
mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
(ну и там еще опции по необходимости, касабельно размера, но базовые эти)
то выходной файл просто супер качества, почти оригинал, только в местах быстрого движения квадратируется, DIV3 все-таки...
но(!!!)
если пишу с тв-тюнера строкой:
mencoder tv:// -tv driver=v4l2 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq:vbitrate=4000 -o out.avi
пишет нормально, только размер выходного файла 2Г/час
(временный, типа пофиг)
а потом пытаюсь его свернуть до нормального
mencoder 1.avi -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
(пробовал добавлять trell:mbd=1,2, кодек менять на mpeg4, ниче не помогает)
то качество выходного файла просто жуть, пока битрейт до 1800-2000 не поднимешь смотреть невозможно...
может подскажешь какие еще опции заюзать чтоп качество поднять??
точно конечно не знаю,но мне кажется,что ты используешь кодек плохой (msmpeg4)... помню еже по винде,что нормальное соотношение качество/размер можно было получить только используя divx или xvid,а все остальное от лукавого...попробуй xvid.
точно конечно не знаю,но мне кажется,что ты используешь кодек плохой (msmpeg4)... помню еже по винде,что нормальное соотношение качество/размер можно было получить только используя divx или xvid,а все остальное от лукавого...попробуй xvid.
Полностю согласен, msmpeg4 кодек просто ужасный. Мой совет Xvid, причём оптимально - двух проходное кодирование. Для хорошего качества при 640х480 битрейт ~1500, 720x576 - 2500, 1280x720 - 6000.Лично я юзаю mencoder.
Вот пример:
mencoder org.avi -oac copy -vf crop=720:426:0:74 -ovc xvid -xvidencopts bitrate=2500:vhq=4:gmc:pass=1 -o dec.avi && mencoder org.avi -oac copy -vf crop=720:426:0:74 -ovc xvid -xvidencopts bitrate=2500:vhq=4:qmc:pass=2 -o dec.avi
Битрейт не задает качество картинки, он задет количество информации, если описывать только один чб пиксель, то достаточно 25 бит в секунду, а если hdtv... Так что вопрос в настоящей его формулировке бесмыссленный.
а) В чем меряется битрейт? В битах/c? килобитах/c, мегабитах/c, килобайтх/с, мегабайтах/с?
б) Каково разрешение видео?
в) Какова глубина цвета?
Имхо, 1-2 мегабита/с вполне нормальный битрейт, если хочется получить качественное видео ( 768x576 24bpp ).
Я бы советовал захватывать с намного большим битрейтом, мегабит этак 12, чтобы потом фильтр деинтерлейсинга хорошо сработал и не путался из-за дефектов кодирования. А потом бы пожал видео в theora, а звук в vorbis, используя контейнер ogg.
я не согласен... у меня с остальными качество еще хуже :(
Цитата:
Мой совет Xvid, причём оптимально - двух проходное кодирование. Для хорошего качества при 640х480 битрейт ~1500, 720x576 - 2500, 1280x720 - 6000.Лично я юзаю mencoder.
я тоже :)
Xvid я конечно еще попробую...
что касается битрейта, я же говорю, с двд (дн.дозор) резал "плохим" кодеком, в разрешении 720х576, с дефолтным битрейтом (около 800), и качество отменное (только не надо плиз говорить что "быть того не может", я тож думал что если уж в разрешении 640х480-тв качество позорное, то с двд еще хуже буит, ан нет...)
Цитата:
Битрейт не задает качество картинки, он задет количество информации, если описывать только один чб пиксель, то достаточно 25 бит в секунду, а если hdtv...
я не говорю что он "задает", я говорю что влияет...
если битрейт будет 25б/с то мы увидим картинку 1х1 пиксель с частотой 25 к/с... (а вообще говоря нужен битрейт 24х25бит/с, чтоп отображать труколорный пиксель :))
это все я понимаю.. не тупой :(
Цитата:
Так что вопрос в настоящей его формулировке бесмыссленный.
а) В чем меряется битрейт? В битах/c? килобитах/c, мегабитах/c, килобайтх/с, мегабайтах/с?
б) Каково разрешение видео?
в) Какова глубина цвета?
а)я думал что величина стандартная килобит/с
б)640х480
ц)24
Цитата:
Имхо, 1-2 мегабита/с вполне нормальный битрейт, если хочется получить качественное видео ( 768x576 24bpp ).
ага, при битрейте в 1.8 уже нормально, только вот мне бы хотелось, чтоб на сидюк влазил час-полтора видео... а при таком битрейте час занимает около(или чуть больше) гига
Цитата:
Я бы советовал захватывать с намного большим битрейтом, мегабит этак 12, чтобы потом фильтр деинтерлейсинга хорошо сработал и не путался из-за дефектов кодирования.
1.еслиб винт позволял, я бы raw захватывал, но эксперименты показали, что подымать битрейт выше 4000 смысла нет, качество не улутшается
2.и деинтерлейсинг ему не нужен... наверное... надо проверить, я об этом както не подумал
Цитата:
А потом бы пожал видео в theora, а звук в vorbis, используя контейнер ogg.
а че такое theora?? я как-то не слыхал....
звук в ogg/vorbis меня не устраивает, я хочу чтобы видео потом нормально читалось как виндовыми кодеками, так и двд-плеерами
2.и деинтерлейсинг ему не нужен... наверное... надо проверить, я об этом както не подумал
Тогда действительно не стоит захватывать с таким битрейтом. Я просто с видеокамеры захватываю и чтобы потом нормальную картинку получить мне надо, чтобы гребенка с шагом в один пиксель не потерялась, её тогда убрать нормально получается.
Цитата:
а че такое theora?? я как-то не слыхал....
звук в ogg/vorbis меня не устраивает, я хочу чтобы видео потом нормально читалось как виндовыми кодеками, так и двд-плеерами
В виндах оно прекрасно читается, а dvd плееров у меня нет и не предвидится. theora - абсолютно свободный видеокодек уровня divx. То видео, которое я кодировал в theora смотрелось намного лучше, чем в divx, но это похоже связанно со спецификой самого видео, темное помещение, камера дает сильный шум и divx попытался его передать, получилась пестрая некрасивая каша. Возможно на другом видео divx быдет выглядеть лучше. Для моих целей мне theora больше понравилась.
PS Возможно у тебя просто видео, плохо поддающееся сжатию? Движения много?
в обчем подсобрал я немного статистики и вот что могу сказать
1. msmpeg4 - это вообще-то DIVXv3(DIV3)- дает у меня наилутшее качество картинки (в соотношении битрейт/качество)
2.Xvid я попробовал, качество жуть
3.отменное качество дает DV и mJpeg (визуально как бы даже лутше оригинала, хз, мож фильтры применяются), но у них битрейт сумасшедший :(
4. изорбажение интерлейсенное, но применение деинтерлейсера (любого из 5ти встроенных в mencoder) улутшений не дает, напротив, изображение размазывается, и даже в более-менее однородно-цветовых местах появляется шум
5. звук ас3
я принял среднее решение:
-vf scale=480:360,hue=0,0.5 -lavcopts vcodec=msmpeg4:vhq:vbitrate=1500:acodec=ac3
час выходил около 700м
кстати, об плохих кодеках...
я пролистал много фильмов, и 95% из них пожаты DIV3, и качество нормальное...
опять же повторюсь, когда с двд сливаю, то div3+битрейт=800 == нормальное качество с нормальным размером...
с тв вот только плохо :(
4. изорбажение интерлейсенное, но применение деинтерлейсера (любого из 5ти встроенных в mencoder) улутшений не дает, напротив, изображение размазывается, и даже в более-менее однородно-цветовых местах появляется шум
Попробуй применять bob&weave, точно есть в cinelerra. Это наилучший из простых способов дентерлейсинга. Лучше могут только специальные железки и очень дорогие программы, которые распознают объекты, их движение, вычисляют скорость...
В смысле? cinelerra - видеоредактор. bob&weave, если не ошибаюсь, вычисляет места, где видна гребенка и там показывает только одно поле, а там, где она не заметна показывает оба поля. Порог настраивается.
я кодирую mencoder-ом
и когда сдергиваю с двд строкой
mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
(ну и там еще опции по необходимости, касабельно размера, но базовые эти)
то выходной файл просто супер качества, почти оригинал, только в местах быстрого движения квадратируется, DIV3 все-таки...
можно добавить 3d фильтр еще. имхо.
imar написал:
если пишу с тв-тюнера строкой:
mencoder tv:// -tv driver=v4l2 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq:vbitrate=4000 -o out.avi
пишет нормально, только размер выходного файла 2Г/час
(временный, типа пофиг)
а если здесь тоже копи поставить? файл то все равно временный.
imar написал:
а потом пытаюсь его свернуть до нормального
mencoder 1.avi -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
т.к. видео взято с телевизора - то нужно сначала по любому выяснить типа видео -т.е. черезстрочность, фильтры и т.п. - это в данном случае (тв-тюнер) очень важно. а потом соответсвующим образом обрабатывать - т.е. размер /соотношение сторон играет огромную роль - не помню точно какова должна быть кратность - но я пробовал делать сначала сам, а потом учитывая рекомендации с доки на официальном сайте мплеера (там и по русски есть. я всю папку рекурсивно залил) - имхо отличнейший мануал. попробуй там прочти. имхо
для видео с тв-тюнера не катит.. да и кодек конечно еще тот.. пробуй ffmpeg - отличный проверенный, или стремительно развивающийся x264 - я для пробы и тем и тем пробовал, но особой разницы для себя не ощутил..
имхо ffmpeg - сейчас наилучший вариант в плане скорость/качество.
—
Success is simple. Do what's right, the right way, at the right time.
для видео с тв-тюнера не катит.. да и кодек конечно еще тот.. пробуй ffmpeg - отличный проверенный, или стремительно развивающийся x264 - я для пробы и тем и тем пробовал, но особой разницы для себя не ощутил..
имхо ffmpeg - сейчас наилучший вариант в плане скорость/качество.
Странно, xvid почему-то всегда выдовал лутшее качеcтво чем mpeg4 из libavcodec, когда я их сравнивал...
А x264 на мой взгляд предпочтительнее если комп хороший (и процессор >1Ггц), т.к. по отношению качество/объём алгоритм H.264 самый лутший какой сейчас есть (среди папулярных и открытых кодеков).
А что про x264 (GPL реализация H.264/AVC) никто не говорит? Мне больше чем xvid понравилось как оно сжимает. Правда и к процу требования выше. Хотя xvid тоже очень хорош.
Кстати, да, последние год-два во всех тестах x264 кодирует лучше, чем xvid. На forums.gentoo.org к тому же можно найти оверлей с SVN-сборками mplayer и x264.
А звук лучше всего в OGG кодировать, благо он даже 5.1 поддерживает (см. топик на linuxforum)
сделал скриптик может кому пригодится...
кодирует DVD -> x264 в матрешку
есть мозможность сохранить звук как он есть на ДВД, либо перекодировать в ogg (переменная в скрипте REENCODE_SOUND)
на выходе получается mkv файл.
Необходимые пакеты:emerge mplayer mkvtoolnix gpac c соответствующими use flags
PS подскажите если mplayer собран c ru и en как вывод в консоле принудительно сделать английским? мне это нужно для автоматизации скрипта.
serega@blackbox ~ $ cat dvd_x264.encode
#!/bin/bash
#emerge mplayer mkvtoolnix gpac
#этот битрейт вроде бы расчитан на xvid, при 1393 с 4гб двд у меня получается гдето 1200мб
#Recommended video bitrate for 700MB CD: 637
#Recommended video bitrate for 800MB CD: 745
#Recommended video bitrate for 2 x 700MB CD: 1393
#Recommended video bitrate for 2 x 800MB CD: 1609
DVDdevice="/opt/tmp/video_ts2"
Bitrate=1393
REENCODE_SOUND=0
passes="1 2"
#8x8dct в старых версиях вызывает Segmentation fault :(
# с какойто версии видимо убраны:
#Option x264encopts: Unknown suboption novisualize
#Option x264encopts: Unknown suboption 4x4mv
#Option x264encopts: Unknown suboption qp_constant
x264encopts="bframes=2:b_pyramid:weight_b:qcomp=0.75:me=umh:cabac:8x8dct:b_adapt:threads=4"
for title in 1
do
DVDtitle=$title
# for chapter in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
for chapter in 1
do
DVDchapter=$chapter
NAME=${title}_${chapter}
#chapter=${chapter}-${chapter} #если надо DVD не одним куском, а по клипам
tmpfilename=$RANDOM
PASSLOG=/tmp/mencoder_${tmpfilename}.passlog
nohup mplayer -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -vf cropdetect -nosound -vo null 1>&2 >/tmp/crop.${tmpfilename}.log &
sleep 60; pkill -9 -x mplayer
vfs="`tail /tmp/crop.${tmpfilename}.log|head -1|sed -e 's/.*(//'|sed -e 's/).*//'`"
fps="`grep fps /tmp/crop.${tmpfilename}.log | awk '{ print $6}'`"
rm /tmp/crop.${tmpfilename}.log
echo ======== turbo pass !
mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=1:turbo=1:subq=1 -o /dev/null
for i in $passes
do
mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=3:psnr:subq=7:bitrate=${Bitrate} -o /dev/null
done
mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=3:psnr:subq=7:bitrate=${Bitrate} \
-info name="${NAME}":comment="encoded by Slayer605":srcform="Hellfest syracuse, NY-Summer 2000" \
-of rawvideo -o "${tmpfilename}.264"
#./countquant $PASSLOG > PSNR
#rm $PASSLOG
if [[ $REENCODE_SOUND != 0 ]] ; then
# PCM не сжатый звук, кодируем его в ogg 7 = 224Kbps
mplayer -vo null -ao pcm:waveheader:file=sound.${tmpfilename}.wav -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter}
oggenc -q 7 sound.${tmpfilename}.wav
rm sound.${tmpfilename}.wav
else
#AC3 все каналы без перекодирования
mplayer -vo null -dumpaudio -dumpfile "sound.${tmpfilename}.ac3" -aid 128 -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter}
fi
# дальше нужно упаковать видео и звук в матрешку
MP4Box -fps $fps -add ${tmpfilename}.264 ${tmpfilename}.mp4
mkvmerge -o "${NAME}.mkv" ${tmpfilename}.mp4 sound.${tmpfilename}.???
rm ${tmpfilename}.mp4 sound.${tmpfilename}* #${tmpfilename}.264
done #chapters
done #titles
блин советчики, хоть бы сам перед советом попробовал...
locale -a
выдаст список всех локалей в системе, там выбери аглицкий
LC_ALL="en_US.UTF-8"
попробуй, если не заработает напиши в начале в скрипта
export LC_ALL="en_US.UTF-8"
но всётаки для mplayer у меня почему-то неработает...
тем что руссифицированныи и английский мплееры выводят по разному информацию в консоле (некоторые слова поменяны местами :) скажем результат использования grep ....| awk '{print $3}' в разных версиях будет разным.
ffmpeg, mencoder(оно с
ffmpeg, mencoder(оно с mplayer идёт)
Жать лучше с
Жать лучше с помошью xvid`а, по сравнению с ffmpeg он дает лучшее качество, хотя и требует более мощной машины.
ffmpeg
недавно сам озадачился этим вопросом... Пока остановился на ffmpeg. Досконально не разобрался еще со всеми возможностями,которых просто море,но в первом приближениий - очень даже не плохо. кодирует быстро. Сам использую в основном для сжатия видео на смартфон в avi и для телефона в 3gp.
А можно
А можно поподробней?
Как имеено,какой командой?
_________________
Celeron 766,256ram,geforce MX440,hdd ide samsung 120
Portage 2.1.1-r2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r6 i686)
ACCEPT_KEYWORDS="x86"
CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer"
Re: А можно
В команду может входить огромное количество опций: и относительно параметров звука,и относительно параметров видео.Все зависит от задач,которые ставишь перед собой. Из чего,а главное что,ты хочешь получить?
Да вот фильм в
Да вот фильм в формате mp4,тормозит при показе.Ниче не помогает.Судя по всему срезан с двд,весит 1.4,надо сжать и чуть хуже сделать качество.
_________________
Celeron 766,256ram,geforce MX440,hdd ide samsung 120
Portage 2.1.1-r2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r6 i686)
ACCEPT_KEYWORDS="x86"
CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer"
Re: Да вот фильм в
Если притормаживает по причине слабого процессора,то можно попробовать пережать видео с меньшим разрешением,а так же можно уменьшить битрейт видео.Если нет звуковой карты,то и обработка звукового потока ложится на плечи процессора,а значит, я думаю,что уменьшение битрейта звукового потока,тоже скажется положительно.
вот пример для ffmpeg:
ffmpeg -i исходный.avi -s 208x176 -vcodec xvid -b 200k -bf 2 -acodec mp3 -ab 80 конечный.avi
здесь: -s разрешение, -b битрейт видео, -vcodec кодек, -bf 2-стерео,1-моно,
-acodec кодек звука, -ab битрейт звука.
вносишь поправки в комманду,запускаешь,кодируешь немного,останавливаешь по "q", смотришь на результаты,опять пробуешь...
p.s. http://www.xoro.ru/docs/mpeg4/index.htm - здесь просто очень много информации,в том числе должна быть и по твоему вопросу.
http://ffmpeg.mplayerhq.hu/ffmpeg-doc.html - здесь документация по ffmpeg.
Спасибо за
Спасибо за исчерпывающий ответ
_________________
Celeron 766,256ram,geforce MX440,hdd ide samsung 120
Portage 2.1.1-r2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r6 i686)
ACCEPT_KEYWORDS="x86"
CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer"
Re: Спасибо за
Я рад,если информация оказалась полезной...
Еще могу посоветовать собрать ffmpeg с поддержкой ffplay (собрать надо с флагом sdl).Тогда можно будет и быстро просмотреть результаты...типа такой маленький комплекс для работы с видео получится.Хотя,если чесно,то с твоим процессором кодировать видео будет несколько проблематично.
о! хоть кто-то
о! хоть кто-то шарит в теме :)
подскажи пжлста такую весчь:
я кодирую mencoder-ом
и когда сдергиваю с двд строкой
mencoder dvd://1 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
(ну и там еще опции по необходимости, касабельно размера, но базовые эти)
то выходной файл просто супер качества, почти оригинал, только в местах быстрого движения квадратируется, DIV3 все-таки...
но(!!!)
если пишу с тв-тюнера строкой:
mencoder tv:// -tv driver=v4l2 -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq:vbitrate=4000 -o out.avi
пишет нормально, только размер выходного файла 2Г/час
(временный, типа пофиг)
а потом пытаюсь его свернуть до нормального
mencoder 1.avi -oac copy -ovc lavc -lavcopts vcodec=msmpeg4:vhq -o out.avi
(пробовал добавлять trell:mbd=1,2, кодек менять на mpeg4, ниче не помогает)
то качество выходного файла просто жуть, пока битрейт до 1800-2000 не поднимешь смотреть невозможно...
может подскажешь какие еще опции заюзать чтоп качество поднять??
может надо
может надо деинтерлейсинг сделать?
_________________
Athlon 1400 RAM 512 KDE 3.5.5
точно конечно
точно конечно не знаю,но мне кажется,что ты используешь кодек плохой (msmpeg4)... помню еже по винде,что нормальное соотношение качество/размер можно было получить только используя divx или xvid,а все остальное от лукавого...попробуй xvid.
Re: точно конечно
Полностю согласен, msmpeg4 кодек просто ужасный. Мой совет Xvid, причём оптимально - двух проходное кодирование. Для хорошего качества при 640х480 битрейт ~1500, 720x576 - 2500, 1280x720 - 6000.Лично я юзаю mencoder.
Вот пример:
mencoder org.avi -oac copy -vf crop=720:426:0:74 -ovc xvid -xvidencopts bitrate=2500:vhq=4:gmc:pass=1 -o dec.avi && mencoder org.avi -oac copy -vf crop=720:426:0:74 -ovc xvid -xvidencopts bitrate=2500:vhq=4:qmc:pass=2 -o dec.avi
Битрейт не
Битрейт не задает качество картинки, он задет количество информации, если описывать только один чб пиксель, то достаточно 25 бит в секунду, а если hdtv... Так что вопрос в настоящей его формулировке бесмыссленный.
а) В чем меряется битрейт? В битах/c? килобитах/c, мегабитах/c, килобайтх/с, мегабайтах/с?
б) Каково разрешение видео?
в) Какова глубина цвета?
Имхо, 1-2 мегабита/с вполне нормальный битрейт, если хочется получить качественное видео ( 768x576 24bpp ).
Я бы советовал захватывать с намного большим битрейтом, мегабит этак 12, чтобы потом фильтр деинтерлейсинга хорошо сработал и не путался из-за дефектов кодирования. А потом бы пожал видео в theora, а звук в vorbis, используя контейнер ogg.
Quote: Полностю
я не согласен... у меня с остальными качество еще хуже :(
я тоже :)
Xvid я конечно еще попробую...
что касается битрейта, я же говорю, с двд (дн.дозор) резал "плохим" кодеком, в разрешении 720х576, с дефолтным битрейтом (около 800), и качество отменное (только не надо плиз говорить что "быть того не может", я тож думал что если уж в разрешении 640х480-тв качество позорное, то с двд еще хуже буит, ан нет...)
я не говорю что он "задает", я говорю что влияет...
если битрейт будет 25б/с то мы увидим картинку 1х1 пиксель с частотой 25 к/с... (а вообще говоря нужен битрейт 24х25бит/с, чтоп отображать труколорный пиксель :))
это все я понимаю.. не тупой :(
а)я думал что величина стандартная килобит/с
б)640х480
ц)24
ага, при битрейте в 1.8 уже нормально, только вот мне бы хотелось, чтоб на сидюк влазил час-полтора видео... а при таком битрейте час занимает около(или чуть больше) гига
1.еслиб винт позволял, я бы raw захватывал, но эксперименты показали, что подымать битрейт выше 4000 смысла нет, качество не улутшается
2.и деинтерлейсинг ему не нужен... наверное... надо проверить, я об этом както не подумал
а че такое theora?? я как-то не слыхал....
звук в ogg/vorbis меня не устраивает, я хочу чтобы видео потом нормально читалось как виндовыми кодеками, так и двд-плеерами
Quote:2.и
Тогда действительно не стоит захватывать с таким битрейтом. Я просто с видеокамеры захватываю и чтобы потом нормальную картинку получить мне надо, чтобы гребенка с шагом в один пиксель не потерялась, её тогда убрать нормально получается.
В виндах оно прекрасно читается, а dvd плееров у меня нет и не предвидится. theora - абсолютно свободный видеокодек уровня divx. То видео, которое я кодировал в theora смотрелось намного лучше, чем в divx, но это похоже связанно со спецификой самого видео, темное помещение, камера дает сильный шум и divx попытался его передать, получилась пестрая некрасивая каша. Возможно на другом видео divx быдет выглядеть лучше. Для моих целей мне theora больше понравилась.
PS Возможно у тебя просто видео, плохо поддающееся сжатию? Движения много?
Quote:PS Возможно
да не много вроде... я ComedyClub пишу... они ж там большую часть времени на сцене пляшут...
я не пойму в чем проблема... говорю же, с двд режу, и разрешение выше, и битрейт 800, и качество отменное... а тут вот заковыка :(
в обчем
в обчем подсобрал я немного статистики и вот что могу сказать
1. msmpeg4 - это вообще-то DIVXv3(DIV3)- дает у меня наилутшее качество картинки (в соотношении битрейт/качество)
2.Xvid я попробовал, качество жуть
3.отменное качество дает DV и mJpeg (визуально как бы даже лутше оригинала, хз, мож фильтры применяются), но у них битрейт сумасшедший :(
4. изорбажение интерлейсенное, но применение деинтерлейсера (любого из 5ти встроенных в mencoder) улутшений не дает, напротив, изображение размазывается, и даже в более-менее однородно-цветовых местах появляется шум
5. звук ас3
я принял среднее решение:
-vf scale=480:360,hue=0,0.5 -lavcopts vcodec=msmpeg4:vhq:vbitrate=1500:acodec=ac3
час выходил около 700м
кстати, об плохих кодеках...
я пролистал много фильмов, и 95% из них пожаты DIV3, и качество нормальное...
опять же повторюсь, когда с двд сливаю, то div3+битрейт=800 == нормальное качество с нормальным размером...
с тв вот только плохо :(
Quote:4.
Попробуй применять bob&weave, точно есть в cinelerra. Это наилучший из простых способов дентерлейсинга. Лучше могут только специальные железки и очень дорогие программы, которые распознают объекты, их движение, вычисляют скорость...
эт че такое??
эт че такое??
В смысле? cinelerra -
В смысле? cinelerra - видеоредактор. bob&weave, если не ошибаюсь, вычисляет места, где видна гребенка и там показывает только одно поле, а там, где она не заметна показывает оба поля. Порог настраивается.
Re: о! хоть кто-то
можно добавить 3d фильтр еще. имхо.
а если здесь тоже копи поставить? файл то все равно временный.
т.к. видео взято с телевизора - то нужно сначала по любому выяснить типа видео -т.е. черезстрочность, фильтры и т.п. - это в данном случае (тв-тюнер) очень важно. а потом соответсвующим образом обрабатывать - т.е. размер /соотношение сторон играет огромную роль - не помню точно какова должна быть кратность - но я пробовал делать сначала сам, а потом учитывая рекомендации с доки на официальном сайте мплеера (там и по русски есть. я всю папку рекурсивно залил) - имхо отличнейший мануал. попробуй там прочти. имхо
для видео с тв-тюнера не катит.. да и кодек конечно еще тот.. пробуй ffmpeg - отличный проверенный, или стремительно развивающийся x264 - я для пробы и тем и тем пробовал, но особой разницы для себя не ощутил..
имхо ffmpeg - сейчас наилучший вариант в плане скорость/качество.
Success is simple. Do what's right, the right way, at the right time.
Re: о! хоть кто-то
Странно, xvid почему-то всегда выдовал лутшее качеcтво чем mpeg4 из libavcodec, когда я их сравнивал...
А x264 на мой взгляд предпочтительнее если комп хороший (и процессор >1Ггц), т.к. по отношению качество/объём алгоритм H.264 самый лутший какой сейчас есть (среди папулярных и открытых кодеков).
А что про x264
А что про x264 (GPL реализация H.264/AVC) никто не говорит? Мне больше чем xvid понравилось как оно сжимает. Правда и к процу требования выше. Хотя xvid тоже очень хорош.
Кстати, да,
Кстати, да, последние год-два во всех тестах x264 кодирует лучше, чем xvid. На forums.gentoo.org к тому же можно найти оверлей с SVN-сборками mplayer и x264.
А звук лучше всего в OGG кодировать, благо он даже 5.1 поддерживает (см. топик на linuxforum)
чем ас3 не
чем ас3 не устраивает??
OGG поддерживает
OGG поддерживает до 256 каналов, если не ошибаюсь.
предлагаешь
предлагаешь разместить по квартире 255 колонок и сабвуфер? :))
скриптик DVD->x264
сделал скриптик может кому пригодится...
кодирует DVD -> x264 в матрешку
есть мозможность сохранить звук как он есть на ДВД, либо перекодировать в ogg (переменная в скрипте REENCODE_SOUND)
на выходе получается mkv файл.
Необходимые пакеты:emerge mplayer mkvtoolnix gpac c соответствующими use flags
PS подскажите если mplayer собран c ru и en как вывод в консоле принудительно сделать английским? мне это нужно для автоматизации скрипта.
serega@blackbox ~ $ cat dvd_x264.encode #!/bin/bash #emerge mplayer mkvtoolnix gpac #этот битрейт вроде бы расчитан на xvid, при 1393 с 4гб двд у меня получается гдето 1200мб #Recommended video bitrate for 700MB CD: 637 #Recommended video bitrate for 800MB CD: 745 #Recommended video bitrate for 2 x 700MB CD: 1393 #Recommended video bitrate for 2 x 800MB CD: 1609 DVDdevice="/opt/tmp/video_ts2" Bitrate=1393 REENCODE_SOUND=0 passes="1 2" #8x8dct в старых версиях вызывает Segmentation fault :( # с какойто версии видимо убраны: #Option x264encopts: Unknown suboption novisualize #Option x264encopts: Unknown suboption 4x4mv #Option x264encopts: Unknown suboption qp_constant x264encopts="bframes=2:b_pyramid:weight_b:qcomp=0.75:me=umh:cabac:8x8dct:b_adapt:threads=4" for title in 1 do DVDtitle=$title # for chapter in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 for chapter in 1 do DVDchapter=$chapter NAME=${title}_${chapter} #chapter=${chapter}-${chapter} #если надо DVD не одним куском, а по клипам tmpfilename=$RANDOM PASSLOG=/tmp/mencoder_${tmpfilename}.passlog nohup mplayer -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -vf cropdetect -nosound -vo null 1>&2 >/tmp/crop.${tmpfilename}.log & sleep 60; pkill -9 -x mplayer vfs="`tail /tmp/crop.${tmpfilename}.log|head -1|sed -e 's/.*(//'|sed -e 's/).*//'`" fps="`grep fps /tmp/crop.${tmpfilename}.log | awk '{ print $6}'`" rm /tmp/crop.${tmpfilename}.log echo ======== turbo pass ! mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=1:turbo=1:subq=1 -o /dev/null for i in $passes do mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=3:psnr:subq=7:bitrate=${Bitrate} -o /dev/null done mencoder -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} -passlogfile $PASSLOG $vfs -nosound -ovc x264 -x264encopts ${x264encopts}:pass=3:psnr:subq=7:bitrate=${Bitrate} \ -info name="${NAME}":comment="encoded by Slayer605":srcform="Hellfest syracuse, NY-Summer 2000" \ -of rawvideo -o "${tmpfilename}.264" #./countquant $PASSLOG > PSNR #rm $PASSLOG if [[ $REENCODE_SOUND != 0 ]] ; then # PCM не сжатый звук, кодируем его в ogg 7 = 224Kbps mplayer -vo null -ao pcm:waveheader:file=sound.${tmpfilename}.wav -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} oggenc -q 7 sound.${tmpfilename}.wav rm sound.${tmpfilename}.wav else #AC3 все каналы без перекодирования mplayer -vo null -dumpaudio -dumpfile "sound.${tmpfilename}.ac3" -aid 128 -dvd-device "$DVDdevice" dvd://${DVDtitle} -chapter ${DVDchapter} fi # дальше нужно упаковать видео и звук в матрешку MP4Box -fps $fps -add ${tmpfilename}.264 ${tmpfilename}.mp4 mkvmerge -o "${NAME}.mkv" ${tmpfilename}.mp4 sound.${tmpfilename}.??? rm ${tmpfilename}.mp4 sound.${tmpfilename}* #${tmpfilename}.264 done #chapters done #titlesВызывай его как
Вызывай его как LC_ALL="EN_en" mplayer и вывод будет на английском
не помогает :(
не помогает :(
блин советчики,
блин советчики, хоть бы сам перед советом попробовал...
locale -a
выдаст список всех локалей в системе, там выбери аглицкий
LC_ALL="en_US.UTF-8"
попробуй, если не заработает напиши в начале в скрипта
export LC_ALL="en_US.UTF-8"
но всётаки для mplayer у меня почему-то неработает...
это все я
это все я конечно пробовал, не работает...
я вот несовсем
я вот несовсем понял чем мешает автоматизации русский язык?
тем что
тем что руссифицированныи и английский мплееры выводят по разному информацию в консоле (некоторые слова поменяны местами :) скажем результат использования grep ....| awk '{print $3}' в разных версиях будет разным.
Ну и я тогда свой...
...кину для пережатия dvd->xvid, правдо без звука...
gmc кстати лутше не применять, на качество всёравно мало влияет...
но без vhq=4 и pass2 палучается ещё большее уродство ;)
PS 2Slayer605 респект за скрипт