Компрессия видео

erotic

Надо компрессировать только что сграббленное с видеокамеры видео.
Если кто этим занимался, у меня несколько вопросов:
1. Граббил видео в Virtual Dub. При этом программа в своем окошке показывает идеальное видие, но при записи его на диск без какого-либо сжатия на изображении есть хорошо заметные горизонтальные полосы при движении. Частота кадров стоит 25fps. Почему так, и как это исправить?
2. Какие самые распространенные кодеки, которые стоят на большинстве машин?
3. При одном и том же битрейте (мне нужно на выходе получить видео 720*25, 233 kbps) какой из кодеков создает лучшее по качеству изображение?

family

Насчёт 1-го помотреть в Дабе фильтр DeInterlacing(или удаление гребёнки, хз как оно именно там называется, но обычно оно есть)

smvrck2000

хорошо заметные горизонтальные полосы при движении
Это не проблема качества, это interlace. Попробуй смотреть другим плеером.
233kbps - ты нигде не опустил опечатку? При динамичной картинке с таким битрейтом и 720*25 ты не заметишь разницу между разными кодеками - всё равно ничего не будет видно.

AlexV769

1. deinterlace
2. XviD, DivX
3. h264 от Nero, но он проца при проигрывании больше ест.
у pendalf'а был замечательный тред по поводу DVD->Avi. Тебе как раз это и надо считай.
тред либо уже в FAQ, либо в архиве H&S

erotic

А откуда интерлайсинг берется?
Это свойство видео-потока, который на карточку передается?
Дело в том, что это не может быть свойством сжатия, потому что я без сжатия пока сохраняю видео.
Попробовал поставить фильтр (Video->Filters но полосы все равно остались.
Фильры включать не надо при этом отдельно?

erotic

Да, я немного ошибся, просто взял из расчета обычных фильмов, какой у них битрейт. Но в фильмах разрешение обычно меньше...

smvrck2000

У обычных фильмах (MPEG4) битрейт раз этак в 10 больше. Или ты перепутал килобиты с килобайтами?

erotic

Блин. Короче, опытным путем было выяснено, что, к примеру, при разрешении 320*240 полос не появляется, а если граббить при 640*480, то они есть.
И фильтр не помогает

erotic

Я имел ввиду битрейт 233 КилоБайта в секунду
Т.е. обычный фильм идет примерно 100 минут, занимая 600Мб, т.о. получаем Битрейт = 600Мб/(100 минут * 60 секунд) ~ 102 КилоБайта в секунду.
Разрешение фильмов в среднем около 550*350.
Я хочу уложить 50-ти минутный фильм на болванку, т.е. на 700Мб, получается битрейт должен быть 700Мб / 3000 секунд = 240 КилоБайт в секунду.
Т.к. размер кадра моего фильма примерна в два раза больше размера среднего фильма, а битрейт в два раза больше, то качество должно быть нормальным.
Но... Если я не придумаю, как убрать полосы при граббе в разрешении 720*480, придется делать 320*240 (

Angelika_900

а ты не пробовал грабить прогой, которая с камерой идет?

erotic

А! Во!
Нужна ли при использовании этого фильтра в меню галочка Enable RGB Filtering?
Если ее поставить, то Dub говорит: Cannot use video filtering: The capture video format must be RGB, YUY2, VYUY, I420, or IYUV.
При этом в пункте меню Format... можно выбрать только UYVY.... Блин, как решить проблему с полосами?....

smvrck2000

У твоей камеры какое разрешение? 720*576? Вот грабь тогда в 360*576 - и никакой "гребёнки" точно не будет. Только не забудь сделать неквадратные пиксели (их и так бы пришлось делать, чтобы получить точно 4:3)

erotic

Хм, с камерой ничего не идет, обычная камера Sony, кассетная. Она подключается через видеовход видеокарты только, никаких USB/IEEE

erotic

Я не знаю, какое у нее разрешение. Какое у телека разрешение?
Знаю только, что если граббить в 640*480, то лица получаются вытянутые вверх, поэтому граблю в 720*480 - тогда нормальные.

Angelika_900

я думал, камера цифровая

smvrck2000

Тогда надо захватывать прогой, которая идёт в комплекте с видеокартой. А вообще - захватывай тогда в какой-нибудь говно-360*288 или купи карту видеозахвата - с видеовхода обычной видеокарты всё равно приемлемое качество не получить.

erotic

Хм, ну если карта с видиозахватом, то нафиг еще отдельно карту видеозахвата?.... Хм, ладно
В комплекте с видеокартой идут дрова под это дело, с которыми VirtualDub м работает

erotic

О! Отлично. Фильтр убирания полосок нельзя применить на лету, но его можно применить потом при сжатии изображения.
Спасибо

Angelika_900

надо в 768x576

smvrck2000

Обычная видеокарта за $50, оборудованная, как бнусом, видеозахватом, выдаёт ОЧЕНЬ плохую картинку. Если тебе хочется получить качественное видео (которое был бы смысл хранить в 720*576) - используй профессиональную карту видеозахвата, что-нибудь от Canopus, например - это не так уж и дорого, даже за $100 можно что-то приличное купить. Это, разумеется, если у тебя приличная камера.

ppplva

Если захватывать в неправильном разрешении, то потом не всякий фильтр сможет "убрать полоски".

erotic

Два года назад GeForce FX 5600 256Mb TV In/Out стоил 135 баксов

erotic

В 720*480 смог.

erotic

Это разрешение телевизора? )

smvrck2000

Невелика разница. Видеокарта, на которой, кроме всего прочего, есть ещё и дополнительная фича - захват видео, и карта, заточенная под захват видео - совершенно разные вещи.

smvrck2000

Камера для какой страны предназначена?

erotic

Говорит, Unsupported Video Format

erotic

Хз. Но на глаз лучшее качество получается при граббе в NTSC 29 с чем-то там fps.

KISSA

А ещё лучше

KISSA

Это свойство видео-потока, который на карточку передается?
Это свойство видеопотока, которым видео снимается.
Телевизоры имеют тоже построчный вывод кадра и соответствующий сигнал.
Так что при выоде на телек полос не будет.
А у компа вывод прогрессивный (весь кадр целиком поэтому на нём видны.
Видеокамера же сама так снимает, потому что матрица для построчногй записи изображения заметно дешевле.
Если ты уменьшишь разрешение/соотношение сторон, то гребёнка, конечно, на вид может и исчезнуть, то лучше взять полноразмерные кадры и провести операцию деинтерлейсинга, качество выйдет лучше и, главное, сожмётся видео лучше, чем при прятании гребёнки ресайзом.
Знаю только, что если граббить в 640*480, то лица получаются вытянутые вверх, поэтому граблю в 720*480 - тогда нормальные.
Могу дать эмпирический совет, раз документацию на свой девайс нарыть не можешь.
Сними круг перпендикулярно, а потом подбери соотношение сторон, чтоб он кругом и остался.

erotic

Что такое VirtualDubMod?
Просто VirtualDub не пойдет?

KISSA

Программа такая.
Она лучше просто Виртуалдаба, умеет то же и гораздо больше.

erotic

Что делает Auxsetup.exe?

dimabel

А ты запусти и увидишь.
Это типа для запуска разнообразных задач прога - устанавливает/удаляет обработку *.VDR-файлов (можно включить его так, чтобы *.AVI-файлы обрабатывал как *.VDR, если по формату соответствует удаляет все настройки, ну и запускает бенчмарк.
Короче, запусти - увидишь.

erotic

Дело в том, что я ее запустил. Нажал "Install handler". Вот что именно я этим сделал, мне очень интересно, и что мне за это будет, тоже интересно.
Frameclient - это вообще что?

KISSA

Вот ещё статья.
Как раз про видеозахват, может поможет.

erotic

Я сделал захват 720*480*29 с чем-то, получил 44гб файл, пережал его до 686М Divx5.1. Качество картинки хорошее, в процессе сжатия фильтром убрались горизонтальные полосы. Одно плохо - почемe-то при проигрывании файла LA или BSPlyaer, а также, я думаю, любым плейером, который использует системные кодеки, нагрузка на проц идет полная и фильм тормозит. При проигрывании Media Player Classic, который использует свои кодеки, все играется нормально. Вот такая фигня
Надо будет попробовать либо с другими настройками пережать, либо другими кодеками, наверное. Либо действительно Nero задействовать.

KISSA

Divx5.1.
жми лучще Xvid уж тогда.
При проигрывании Media Player Classic, который использует свои кодеки, все играется нормально. Вот такая фигня
Значит как-то глючно закодировал.
MPC mpeg4 своими кодеками не декодирует, сама авишка может с битыи интексом, у него для этого свой сплиттер есть.

erotic

Ну, кстати, в статье, что ты мне дал, жмут именно DivX

KISSA

XviD работает быстрее и качесвеннее.
Я сверху ссылку давал, там жмут минимум XviD.
А нера кстати ещё больше ресурсов жрать будет.
h264 и на кодирование, и на декодирование больше потребляет...
Кстати лучше уж тогда в MeGuI им кодировать.

erotic

Вчера пробовал сделать XviD в два прохода. Поставил и лег спать. Ночью комп ушел в синий экран, причем на первом проходе, уже после 70% оного.
Думаю, кодек глючный, потому что с компом такое редко бывает.

erotic

Кстати, у меня в VirtualDubMod в меню нет ничего, связанного со звуком. Разве так должно быть?

kindr-16

нифига -- это именно комп !

KISSA

Почитай там выше моё руководство. Там про VirtualDubMod, XviD и звук в нём всё написано.
И никогда он у меня не глючил. Но может у тебя в видео глюк какой есть, придётся его обходить.
Можно ещё попробовать тогда открывать твоё видео в VDM через DirectShowSource.
меню нет ничего, связанного со звуком. Разве так должно быть?
Stream List

erotic

Я смотрел в статье на mediatory.ru, там написано, идем в Audio/Full processing mode.
А у меня все что есть в меню -

KISSA

Ну так и иди в Streams>Stream List

erotic

Эээ... ну я там был.
А, блин, понял, надо было правой кнопкой кликнуть. Туплю.

KISSA

Я, честно говоря, там только левой пользуюсь.

erotic

Везет тебе
Короче, XviD'ом по ходу не получится все равно кодировать, раз комп вылетел.

KISSA

Короче, XviD'ом по ходу не получится все равно кодировать, раз комп вылетел.
А у тебя исходный видеопоток в каком виде?
В конце концов можно просто то место, где глюк выкинуть (наверняка там 1-2 глючных кадра каких-то).

nik93

и как ты предлагаешь их найти?

KISSA

Вручную. Видно же, где он вылетает.
Возможно только на 70% такой глюк и есть.

kindr-16

ну не может кодек (читай приложение) положить системку в BSOD!
ps хотя можно и "экспресс тест" просвести -- вырезать кусок 60%-80% и попробовать его закодить

KISSA

ну не может кодек (читай приложение) положить системку в BSOD!
Действительно.
Скорее всего у него прц перегрелся.
Оставить комментарий
Имя или ник:
Комментарий: