Каким фильтром лучше уменьшать изображение 2:1 reduction или resize ?
» VirtualDub
drema
Я преобразовывал звук фильма из АС3 в МР3 через Winamp. На входе фильм, а на выходе Nulsoft Direct Writer с преобразованием в МР3.
Я преобразовывал звук фильма из АС3 в МР3 через Winamp. На входе фильм, а на выходе Nulsoft Direct Writer с преобразованием в МР3.
Здравствуйте. У меня такой вопрос. Подскажите где можно найти толковую инфу по собственноручному написанию фильтров для VD?
Я нашел один примерчик с картинками и пошаговым объяснением. Попробовал. Сначала попробовал ДЛЛ в Билдере сделать. ДЛЛ компилится, но при попытке подключения ее к дубу - говорит что "Данный модуль не содержит фильтров для дуба". (опыт написания небольших ДЛЛ для своих проектов у меня есть, но чем Дубу моя ДЛЛ непонравилась - немогу понять).
Почитав инструкцию еще раз - я увидел что народ говорит собирать ДЛЛ в VC++. попробовал и я. Так как в VC ниразу до этого неработал, то немного покопавшись вроде понял как там делать ДЛЛ. загрузил туда свой примерчик и откомпилировал.
Так вот. Данная ДЛЛ подключилась к дубу (то есть появилась в списке возможных фильтров). При наведении на него курсором - даже появляется комментарий, возвращаемый моей ДЛЛ (то есть типа краткое описание и автор в строке состояния окошка). Но вот при попытке вставить этот фильтр в список ВЫБРАННЫХ фильтров... Ничего не происходит. Окошко с ВОЗМОЖНЫМИ фильтрами закрывается, но в окошко с ВЫБРАННЫМИ фильтрами ничего не добавляется. И никакого сообщения об ошибках невылетает.
В чем может быть трабла? Мож есть какие-нить тонкости?
P.S. или это в ветку программистов нужно спрашивать?
Я нашел один примерчик с картинками и пошаговым объяснением. Попробовал. Сначала попробовал ДЛЛ в Билдере сделать. ДЛЛ компилится, но при попытке подключения ее к дубу - говорит что "Данный модуль не содержит фильтров для дуба". (опыт написания небольших ДЛЛ для своих проектов у меня есть, но чем Дубу моя ДЛЛ непонравилась - немогу понять).
Почитав инструкцию еще раз - я увидел что народ говорит собирать ДЛЛ в VC++. попробовал и я. Так как в VC ниразу до этого неработал, то немного покопавшись вроде понял как там делать ДЛЛ. загрузил туда свой примерчик и откомпилировал.
Так вот. Данная ДЛЛ подключилась к дубу (то есть появилась в списке возможных фильтров). При наведении на него курсором - даже появляется комментарий, возвращаемый моей ДЛЛ (то есть типа краткое описание и автор в строке состояния окошка). Но вот при попытке вставить этот фильтр в список ВЫБРАННЫХ фильтров... Ничего не происходит. Окошко с ВОЗМОЖНЫМИ фильтрами закрывается, но в окошко с ВЫБРАННЫМИ фильтрами ничего не добавляется. И никакого сообщения об ошибках невылетает.
В чем может быть трабла? Мож есть какие-нить тонкости?
P.S. или это в ветку программистов нужно спрашивать?
VirtualDub-MPEG2 1.5.10 build 18270
Цитата:
http://fcchandler.home.comcast.net/stable/VirtualDub-MPEG2.zip
Цитата:
Changes in VirtualDub-MPEG2 1.5.10:
Version 1.5.10 build 18270 (September 18, 2004)
- "Direct Stream Copy" of audio from MPEG files to AVI files is possible again. (This is a special "hidden" feature which was inadvertently disabled in a previous build.) To make it work, you must check the box in the "extended open options" when you first open the MPEG file. Otherwise, all MPEG audio is passed as uncompressed PCM by default.
http://fcchandler.home.comcast.net/stable/VirtualDub-MPEG2.zip
DOE_JOHN
resize
resize
постепенно к концу фильма звук начинает опережать изображение...
Подскажите, можно Дабом это исправить?
Спасибо
Подскажите, можно Дабом это исправить?
Спасибо
Mr Bungle
Цитата:
Вообще, эту рассинхронизацию исправлять чрезвычайно трудно - один из методов - ловить по фильму где и насколько отстаёт и править, - как см мой пост на прошлой странице.
drema
Цитата:
DVD2Avi (см здесь )
Цитата:
постепенно к концу фильма звук начинает опережать изображение...
Вообще, эту рассинхронизацию исправлять чрезвычайно трудно - один из методов - ловить по фильму где и насколько отстаёт и править, - как см мой пост на прошлой странице.
drema
Цитата:
как вытащить из фильма ас3 звук?
DVD2Avi (см здесь )
Русификатор VirtualDub-MPEG2 1.5.10 build 18270
_http://samlab.ru/rus/sam_vdubmpeg1510b18270rus.rar
_http://camelto-uo.com/SAMLAB_RU/rus/sam_vdubmpeg1510b18270rus.rar
Русская версия VirtualDub-MPEG2 1.5.10 build 18270
_http://samlab.ru/soft/virtualdub-mpeg2_1.5.10_b18270_rus.cab
_http://camelto-uo.com/SAMLAB_RU/soft/virtualdub-mpeg2_1.5.10_b18270_rus.cab
_http://samlab.ru/rus/sam_vdubmpeg1510b18270rus.rar
_http://camelto-uo.com/SAMLAB_RU/rus/sam_vdubmpeg1510b18270rus.rar
Русская версия VirtualDub-MPEG2 1.5.10 build 18270
_http://samlab.ru/soft/virtualdub-mpeg2_1.5.10_b18270_rus.cab
_http://camelto-uo.com/SAMLAB_RU/soft/virtualdub-mpeg2_1.5.10_b18270_rus.cab
Цитата:
постепенно к концу фильма звук начинает опережать изображение...
Я обычно прявлю это подбором частоты кадров. То есть в Дабе это Video->FrameRate
После чего ставишь режимы DirectStreamCopy для видео и звука и сохраняешь в другой файл. Файл опять смотришь на разных участках (в начале, середине и конце, желательно в тех моментах, где можешь однозначно точно определить рассинхрон - выстрел, хлопок двери машины, крупным планом лицо говорящего и т.п.). И делаешь поправку в частоте кадров, и снова сохраняешь (исходным всегда пусть будет первый файл, а второй - экспериментальный, как только частоту подберешь - исходный можешь репать .
В твоем случае если звук к концу фильма опережает изображение, это значит, что изображение отстает (железная логика), то есть изображение нужно немного ускорить. Т.е. увеличить частоту кадров (например если текущая частота 25.000, то можно попробовать 25.002 и т.п.). Если изображение будет опережать, то соответвенно частоту кадров уменьшаешь.
Это не телевизор. и изменение частоты кадров на сотые доли кадров в сек. никак не отразятся на восприятии и качестве. Зато рассинхрон может исчезнуть (в 95% случаев)
в остальных 5% это может так легко непрокатить, но это уже другая история.
P.S. Единственный недостаток в такой коррекции - это то, что ты потом этот ролик в 50% несможешь приклеить Дабом к другому ролику, так как этот другой ролик может иметь собственную частоту кадров . А такие ролики дабом несклеиваются...
Использовал VirtualDub 1.6.0. Перекодирование фильма из формата xViD Mpeg-4 в формат DivX Pro 5.0.5 выдаёт ошибку примерно через минуту работы:
Цитата:
В чём может быть дело?
Цитата:
Crash reason: Access Violation
Crash context:
An out-of-bounds memory access (access violation) occurred in module 'xvidcore'...
...while decompressing video frame 416 (VideoSource.cpp:3117)...
...while using input buffer at 03580000-03580007 (VideoSource.cpp:3116)...
...while using output buffer at 01300000-01363003 (VideoSource.cpp:3115)...
...while running thread "Processing" (thread.cpp:124).
В чём может быть дело?
1) 1.6 - экспериментальная версия. (на ней так и написано . Возьми другую версию.
2) попробуй поставить кодек xVid поновее (только предварительно старяй xVid снеси, а то могет неполучиться)
3) попробуй открыть исходный файл дивиксовым кодеком (либо поменяй FourCC у исходного файла при помощи утилиты FourCC change, которая поставляется вместе с иксвидом, либо при открытии в виртулдубе поставь галочку "Popup extended open options" и в строчках где есть слово "FourCC" пропиши XVID). Мож он по умолчанию Дивиксом открывается.
2) попробуй поставить кодек xVid поновее (только предварительно старяй xVid снеси, а то могет неполучиться)
3) попробуй открыть исходный файл дивиксовым кодеком (либо поменяй FourCC у исходного файла при помощи утилиты FourCC change, которая поставляется вместе с иксвидом, либо при открытии в виртулдубе поставь галочку "Popup extended open options" и в строчках где есть слово "FourCC" пропиши XVID). Мож он по умолчанию Дивиксом открывается.
Johny777
Спасибо. Начну с первого пункта.
Добавлено
Johny777
Первый пункт - увы.
Цитата:
В том-то и дело, что хочу получить на выходе кодек 5.0.5
Цитата:
Не сумел найти... Где это?
Спасибо. Начну с первого пункта.
Добавлено
Johny777
Первый пункт - увы.
Цитата:
2) попробуй поставить кодек xVid поновее
В том-то и дело, что хочу получить на выходе кодек 5.0.5
Цитата:
при открытии в виртулдубе поставь галочку "Popup extended open options"
Не сумел найти... Где это?
Уважаемые к вам такой вопрос.
Произвожу захват видео через TV-IN. Сразу жму в realtime Divx.
После захвата видео в динамических сценах наблюдается искажение изображения. (как этого избежать?). Выставлял битрейд 5000, не помогает. Кол-во кадров ставил 25.
Подскажите может какой фильтр использовать или вообще какие настройки для оптимального захвата видео
Произвожу захват видео через TV-IN. Сразу жму в realtime Divx.
После захвата видео в динамических сценах наблюдается искажение изображения. (как этого избежать?). Выставлял битрейд 5000, не помогает. Кол-во кадров ставил 25.
Подскажите может какой фильтр использовать или вообще какие настройки для оптимального захвата видео
Есть фильм с двумя звуковыми дорожками (mp3 мик), как с помощью nandub'a их вытащить или поменять местами?
p.s. основную получается вытащить, а вторичную нет
p.s. основную получается вытащить, а вторичную нет
Цитата:
Сразу жму в realtime Divx
А ты налету жми в Huffy или Mjpeg, а потом уже во что угодно (DivX, Mjpeg, 3ivX)
Цитата:
Есть фильм с двумя звуковыми дорожками (mp3 мик), как с помощью nandub'a их вытащить или поменять местами?
Не мик, а VBR (punto исправил)
Mr Bungle
Цитата:
Ох уж эта синхронизация...
Товарищи : Snach и Johny777, уже написали несколько сходных методов. Однако резка, это крайний случай. Иногда рассинхронизация может произойти из-за автоматического разбиения файла при захвате, в этом случае "режим, клеим" - иначе никак. Но обычно, это:
- Звуковая дорожка AC3 идёт с небольшим запаздыванием, допустим в 80-150 ms
- Вы перегоняете фильм не с начала фильма, а какой-то определённый момент
- Вы пожали звук в MP3 VBR
- Частота кадров, допустим 23.97, а звук идёт на 29.
Случаи бывают разные, иногда самому непонятно, - почему же так? Ну скажем, перегонял я Бумера, так там звук отставал на 2-3 секунды от видео, причём, в середине фильма всё было наоборот - звук опережал видеодорожку. То-ли специально так было сделано, то ли нет, но на DVD всё шло хорошо, а после перегона на MPEG4 пришлось помучаться немного.
Итак, рецепт здесь прост. Если звук опережает или отстаёт к окончанию записи, это прямой признак того, что на сколько-то там ms нужна коррекция.
Запускаем видео и звук в VirtualDubMod, засекаем на сколько секунд отстаёт или идёт вперёд звук (обычно сходу определить сложно) и задаём значение коррекции.
Streams --> StreamList --> Interleaving --> Audio Skew Correction
Ставим сначала: -150, смотрим...
Если результат не положителен, увеличиваем до -350 и т.д.
Если расхождение видно на глаз (сколько-то там сек.), то можно сразу ставить -1500 или 1500.
Вот таким образом и подбирается значение.
Можно воспользоваться и MPC, воткнуть туда видео и звук отдельно, потом кнопками уменьшать или увеличивать коррекцию звука, замечать "попал - не попал" (там значение коррекции в ms будет выдаваться) ну и потом пишем его в VirtualDubMod.
Есть ещё одна "тонкость". Для начала зайдите во FrameRate, и посмотрите на значение видеодорожки и звуковой. Если там будет, к примеру: 25 и 24.99, - это не беда, править можно; ну а если 23.9 и 29.9, - то сначала изменяем FPS видеорожки к звуковой, а дальше, если не устраивает синхронизация, пробуем добавить еще коррекцию вручную. Но пример с большим расхождением по FPS между звуком и видео, это глупый пример, лучше заново подготовить звук... Иначе придётся резать, либо грамотно совмещать видео и звук уже в Adobe Premiere (всё это долго).
Добавлено
artem123
Цитата:
Проще и лучше делать захват в MPEG2, либо в Huffyuv, а потом жать как хочешь. По поводу DivX... Убери там Psyсhovisual... И вообще отключи всё - что включено, поставь битрет максимум (ну или 5000 kbps), Framerate в данном случае не играет большой роли. Так же не используй заданные preset'ы для разрешений кадра. Что ещё... ну разрешение кадра тоже, лучше не ставить больше 640x480.
В DivX есть еще опция : "Scene Change Threshold", там-где keyframe. Поставь значение в 75% (больше поставишь, - на медленных сценах будут квадратики, меньше - на быстрых), а так - вроде ни тем и ни тем
Добавлено
Spaun
Цитата:
А не проще-ли взять VirtualDub Mod? Далее в StreamList, Save as... direct stream copy.
Цитата:
постепенно к концу фильма звук начинает опережать изображение...
Подскажите, можно Дабом это исправить?
Ох уж эта синхронизация...
Товарищи : Snach и Johny777, уже написали несколько сходных методов. Однако резка, это крайний случай. Иногда рассинхронизация может произойти из-за автоматического разбиения файла при захвате, в этом случае "режим, клеим" - иначе никак. Но обычно, это:
- Звуковая дорожка AC3 идёт с небольшим запаздыванием, допустим в 80-150 ms
- Вы перегоняете фильм не с начала фильма, а какой-то определённый момент
- Вы пожали звук в MP3 VBR
- Частота кадров, допустим 23.97, а звук идёт на 29.
Случаи бывают разные, иногда самому непонятно, - почему же так? Ну скажем, перегонял я Бумера, так там звук отставал на 2-3 секунды от видео, причём, в середине фильма всё было наоборот - звук опережал видеодорожку. То-ли специально так было сделано, то ли нет, но на DVD всё шло хорошо, а после перегона на MPEG4 пришлось помучаться немного.
Итак, рецепт здесь прост. Если звук опережает или отстаёт к окончанию записи, это прямой признак того, что на сколько-то там ms нужна коррекция.
Запускаем видео и звук в VirtualDubMod, засекаем на сколько секунд отстаёт или идёт вперёд звук (обычно сходу определить сложно) и задаём значение коррекции.
Streams --> StreamList --> Interleaving --> Audio Skew Correction
Ставим сначала: -150, смотрим...
Если результат не положителен, увеличиваем до -350 и т.д.
Если расхождение видно на глаз (сколько-то там сек.), то можно сразу ставить -1500 или 1500.
Вот таким образом и подбирается значение.
Можно воспользоваться и MPC, воткнуть туда видео и звук отдельно, потом кнопками уменьшать или увеличивать коррекцию звука, замечать "попал - не попал" (там значение коррекции в ms будет выдаваться) ну и потом пишем его в VirtualDubMod.
Есть ещё одна "тонкость". Для начала зайдите во FrameRate, и посмотрите на значение видеодорожки и звуковой. Если там будет, к примеру: 25 и 24.99, - это не беда, править можно; ну а если 23.9 и 29.9, - то сначала изменяем FPS видеорожки к звуковой, а дальше, если не устраивает синхронизация, пробуем добавить еще коррекцию вручную. Но пример с большим расхождением по FPS между звуком и видео, это глупый пример, лучше заново подготовить звук... Иначе придётся резать, либо грамотно совмещать видео и звук уже в Adobe Premiere (всё это долго).
Добавлено
artem123
Цитата:
Сразу жму в realtime Divx.
После захвата видео в динамических сценах наблюдается искажение изображения
Проще и лучше делать захват в MPEG2, либо в Huffyuv, а потом жать как хочешь. По поводу DivX... Убери там Psyсhovisual... И вообще отключи всё - что включено, поставь битрет максимум (ну или 5000 kbps), Framerate в данном случае не играет большой роли. Так же не используй заданные preset'ы для разрешений кадра. Что ещё... ну разрешение кадра тоже, лучше не ставить больше 640x480.
В DivX есть еще опция : "Scene Change Threshold", там-где keyframe. Поставь значение в 75% (больше поставишь, - на медленных сценах будут квадратики, меньше - на быстрых), а так - вроде ни тем и ни тем
Добавлено
Spaun
Цитата:
Есть фильм с двумя звуковыми дорожками (mp3 VBR), как с помощью nandub'a их вытащить или поменять местами?
p.s. основную получается вытащить, а вторичную нет
А не проще-ли взять VirtualDub Mod? Далее в StreamList, Save as... direct stream copy.
Подскажите, плиз, склеиваю VirtualDub-ом два файла, и в месте склейки прослушивается очень громкий "щелчок". Его можно как-нибудь убрать?
Цитата:
В том-то и дело, что хочу получить на выходе кодек 5.0.5
Судя по сообщению об ошибке - проблема при воспроизведении файла, а не при кодировании. Если фильма закодирована кодеком XVID, то ето незначит что он и играться будет ИксВидом. Большинство новых дивиксов без проблем играют иксвидовские файлы. Мож тебе лучше так сделать? чем пережимать? Для этого воспользуйся утилиткой "FourCC changer" которая поставляется вместе с иксвидом. Этой утилиткой установи в своем файле, чтобы он игрался дивиксом (DIVX). а потом попробуй открыть плеером и посмотри каким кодеком он играется после этого.
P.S. тока сделай на всякий случай резервную копию авишки ... мало ли чего...
Цитата:
Не сумел найти... Где это?
VirtualDub
File -> Open AVI -> тама внизу диалога открытия файла, есть галочка "Popup extended open options" - смысл типа "дай мне открыть это файло, указав дополнительные настройки". Ставишь эту галочку, потом выбираешь свой файл и говоришь "Открыть".
После этого откроется еще одно окошко, в котором ты можешь увидеть те надписи, что я описывал выше...
Добавлено
Цитата:
в месте склейки прослушивается очень громкий "щелчок". Его можно как-нибудь убрать?
если в этих роликах у тебя звук неупакованный (PCM), то очень просто. Выгружаешь звуковую дорожку у склеенного файла и правишь ее в своем любимом звуковом редакторе (CoolEdit например). После чего подключаешь исправленную дорожку обратно в файл.
если же звук упакованный (MP3 например), то тут хуже. Первое что приходит в голову - это в виртуалдубе выделить по ключевым кадрам тот кусочек фильма в котором есть щелчок (буквально несколько секунд).
поставить режимы DirectStreamCopy для видео и аудио потоков и сохранить на диск три файла.
1 - от начала до ключевого кадра, который перед щелчком
2 - от ключевого кадра, который ДО щелчка до ключевого кадра, который после щелчка
3- все что осталось.
затем открываешь второй файл в дабе, ставишь в звуковой дорожке - FullProcessingMode и выгружаешь этот небольшой кусочек звука в отдельный WAV файл, который потом и правиш в своем любимом редакторе.
Затем необходимо будет этот звук упаковать опять тем же кодеком (MP3 например) c тем же самым битрейтом что и был в фильме.
подключаешь его к своей второй части и потом ве три части опять склеиваешь...
P.S. Очень трудоемко и может неполучиться. В результате ты можешь получить небольшой рассинхрон звука и даже можешь получить два дополнительных щелчка в местах склейки ...
А может и прокатить на ОК ...
P.S. Если неполучится, то возможно придется выгрузить всю звуковую дорожку в распакованном виде, исправить ее и потом снова запаковать. естественно при этом потеряешь в какчестве звука немного...
Вот у меня такой глюк проявляется (пробовал на разных версиях VirtualDubMod и VirtualDub), когда строишь Chunk tree AVI-файла (Tools > Hex editor > File > Open Filename.avi > Edit > RIFF chunk tree) полноразмерного (700 мег), дерево строится, но потом не удаётся его прокрутить до конца в окошке. Только на треть всего, мег до 250-ти, а дальше слайдер не движется. То ли ресурсов каких не хватает, то ли глюк программы. Пробовал место под свап-файл освобождать побольше - не помогает. У кого-нибудь полное дерево показывается для полноразмерного фильма (700 мег).
Народ подскажите как организовать с помощью VDM распределенное кодирование? Видел как то статью, а теперь не могу найти
Johny777
Спасибо... Звук конечно упакованный, так что пока оставлю фильм в двух файлах.
А может есть прога которая автоматом может щелчок убрать при склейке avi?
Спасибо... Звук конечно упакованный, так что пока оставлю фильм в двух файлах.
А может есть прога которая автоматом может щелчок убрать при склейке avi?
Spaun
Тебе НанДаб нужен. Там в Аудио меню есть закладка - вторая дорожка - заходишь туда и убиваешь её (no audio), после чего жмёшь save wav. Так по крайне мере выдернешь первую дорожку чисто (и не забудь сделать резервную копию). Удачи.
Тебе НанДаб нужен. Там в Аудио меню есть закладка - вторая дорожка - заходишь туда и убиваешь её (no audio), после чего жмёшь save wav. Так по крайне мере выдернешь первую дорожку чисто (и не забудь сделать резервную копию). Удачи.
Есть очень зашумлённый источник.. типа как бутта из песка изображение.. зернистое очень.. И яркость чуть завышена.. Каким фильтром в дабе воспользоваться для того чтобы отфильтровать как следует и снизить яркость??
Цитата:
Народ подскажите как организовать с помощью VDM распределенное кодирование?
Тебе нужна версия виртуалдуба VirtualDubMod_1_4_13_2v2 (поищи в тырнете)
как я слышал - только в ней есть эта фича. (в ней она действительно есть. но попробовать ее я несмог, так как она загибается на БОЛЬШИХ корпоративных сетях ...
мож кто знает как это лечить?
P.S. Фича эта находится в File->Job_Control
Добавлено
Цитата:
Каким фильтром в дабе воспользоваться для того чтобы отфильтровать как следует и снизить яркость??
Для регулировки яркости и контрастности в дубе есть несколько фильтров. Как встроенных (Brightness/Contrast, Levels), так и сторонних. Поищи фильтры, в которых есть регуляторы Brightness и Contrast.
Фильтры шума тоже бывают разные. Каждый имеет свои недостатки. И применяются к конкретным типам шумов. Также бывают как встроенные (Blur, Blur more, Motion blur, temporal smoother), так и сторонние (chroma noise reduction, dynamic noise reduction, smart smoother, TV, VHS, Video DeNoise и др.)
в общем все, где есть слова Noise, blur, smoother $-)...
P.S. Если источник этого видео - это пленка, и планируется делать захватт изображения с нее, то рекомендую при захвате правильно установить движки яркости/контрастности платы захвата (по умолчанию они стоят неправильно, т.е. насередине). иначе потом можно это изображение вообще ничем неисправить...
Движки яркости/контрастности захвата выставляются таким образом, чтобы гистограмма распределения яркостей полностью умещалась в диапазон 0-255 (можно 10-235 $-)... Чтобы небыло трамплинов яркости в нуле и в максимуме.
(регулятор яркости двигает левый край гистограммы, регулятор контрастности - правый)
Существует ли быстрый кодек для захвата налету в mpeg2?
fly_house
Area : RU.MPEG
From : Andrey Gule, 2:5020/400 (30 Июл 03 16:58)
Вероятно, многие из вас видели надстройки в диалоге Job control в
VirtualDubMod 1.4.13. Hекоторые, вероятно, даже не поленились заглянуть в
хелп и посмотреть, зачем оно нужны. И, на сколько я знаю, ещё никто эту
возможность не использовал реально.
Распределённая обработка видео.
Идея проста: дробим файл на части и раздаём части на обработку нескольким
компьютерам. Hесколько компьютеров работают быстрее, чем один ;)
В плане реализации тоже всё достаточно прозрачно. Есть главный компьютер --
Master, есть несколько управляемых - Slave. Задача на обработку видео
ставится с основного компьютера, на ведомых только производится процессинг.
Сразу остужу горячие головы, которые не читали хелп: распределённым способом
можно производить только однопроходный процессинг. Лично мне и этого более
чем достаточно, потому что файл, снятый с VHS пакетом фильтров
обрабатывается со скоростью ок. 1 кадра в секунду на домашнем iCel
1.1@1.46GHz. Как только дома настали проблемы с электропитанием и держать
машину включённой круглые сутки стало большой проблемой -- я начал искать
другие варианты.
В принципе в хелпе к ДабМоду эта фича описана довольно подробно -- нет
смысла повторяться. Скажу только, что ключ командной строки "/j" у меня так
и не заработал -- ну да в конце концов не так сложно запустить Даб на
слейве: три простых нажатия на кнопки (если он уже отконфигурирован).
Очевидно, что на каждом из клиентов должен быть ДабМод и установлены
используемые фильтры и кодеки. Однако запустить ДабМод из одного сетевого
каталога на получается -- вероятно, он хранит какую-то информацию о
запущенной сессии в файлах конфигурации.. Короче ДабМод с фильтрами надо
скопировать на каждый компьютер.
Теперь что с источником и результатом. Каждая из программ использует
одинаковый путь для файлов источника и результата. Потому крайне разумным
является использование сетевых путей: вам не нужно держать копию
файла-источника на каждой машине (очевидно, все участники процесса должны
иметь разрешение на чтение из этого каталога). С результатом не всё так
просто: если вы будете сохранять результат в доступной по сети папке, то вам
нужно будет в два раза больше места, чем занимает файл результата.
Во-первых, будут сохранятся кусочки обработанного видео, а во-вторых туда же
будет сохранён склеенный файл результата - он склеивается из кусочков
автоматически после окончания процессинга (потом кусочки удаляются, но в
момент склеивания вам нужна прорва места ;).
Так что альтернативой может быть сохранять результат в некий каталог
C:\Dir\ -- но при этом надо иметь на КАЖДОЙ машине такой каталог, в который
влезут все кусочки, которые эта машина будет считать. А на Мастере в этом
каталоге должен поместиться ещё и склеенный файл результата. (Очевидно, что
надо проверить наличие у всех участников прав на запись ;)
Следующий ваш вопрос: а как с загрузкой сети? В моём случае исходник это ави
(PicVideo MJPEG @ 19, 768x576) с битрейтом примерно 25 Мбит/с - все 8 компов
читают с одного места - загрузка 100 Мбти сети примерно 20%. Результат
(HuffYUV, 384x288) сваливается на другую машину -- там примерно такой же
поток и примерно такая же загурзка сетевого интерфейса.
Кодек/фильтры могут использоваться любые. Вчера я пробовал DivX 5.05 (1
проход с заданным битрейтом и 1 проход с заданным уровнем качества),
сегодня -- HuffYUV 2.1.1 (patch 0.2.2). Учтите, что фильтр должен работать
на ВСЕХ машинах, потому нельзя использовать, скажем, фильтр оптимизированный
под iP4, если в сети есть iP!!!. Очевидно, также, что фильтры должны
работать стабильно на ВСЕХ машинах. А то дома я, например, запросто
использовал QS Deinterlace 0.52b, а в сети на разных компах он начал
виснуть -- что вам сказать ;)) Пришлось заменить его на Smart Deinterlace
2.72b -- всё заработало, пока ни единого вылета ;)
Hастройка. Hачнём с Мастера -- все настройки, которые касаются процесса
кодирования в целом, выставляются именно тут. Длина сегмента -- рекомендую
использовать минимальный в 1 мин. Это позволит более аккуратно распределять
вычислительные ресурсы. Hапример, если есть два компьютера, со скоростью 5 и
10, то при 2 кусках скорость всего процесса будет ограничиваться скорость
медленной машины. Если сделать 10 кусов, то быстрая машина сделает вдвое
больше кусков -- к результату придём быстрее. Учтите, что максимальное
кол-во кусков -- 512 (опять же, RTFM ;) -- но это около 8,5 часов, то есть
время практически нереально большое ;)))
Приоритет. Это приоритет процесса кодирования на этой машине, то есть эта
настройка должна быть выставлена на КАЖДОЙ машине. Кстати, тут же
выставляется приоритет и для кодирования в обычном режиме -- что я только не
делал, чтобы заставить ДабМод 1.4.13.2.2 кодировать всегда в Idle! ;))
Мда, так вот я рекомендую всегда и везде ставить Idle, и просто не
возвращаться к этому вопросу. В этом режиме ВСЕ программы на компьютере
имеют приоритет над Дабом, так что Даб по сути собирает "остатки"
процессорного времени за всеми остальными программами.
Always restart jobs. Означает будет ли даб продолжать задачу, в случае если
в каталоге результата есть уже какие-то части с таким же именем файла, как у
результата -- или начнёт считать задачу заново.
Process Audio - рекомендую выключать. Всё равно обработка с аудио происходит
на несколько порядков быстрее, чем видео -- аудио проще сделать на одной
машине и потом приклеить к результату. Дело в том, что с синхронизацией
аудио возникают некоторые проблемы, за подробностями -- в доку, кому
интересно.
Send slave to tray - минимизирует окно Job control на Slave машине в system
tray.
Как видите, настройки элементарны.
Создаём задачу на Мастер машине как обычно -- пути к файлам используем как я
сказал выше, Save AVI, ставим галку Put in job list. Можно запросто таким
образом обрабатывать несколько задач.
Ещё одно напоминание для неумеющих читать хелп: все машины должны быть в
пределах одного сегмента сети. И -- только один мастер на сетевой сегмент.
Только одна распределённая задача.
Собственно запуск процесса. Мастер: запускаем VirtualDubMod, F4 (Job
control), Update, Master, Start. Мастер начинает обработку своего кусочка
первой задачи из списка.
Каждый слейв: запускаем VirtualDubMod, F4 (Job control), Update, Slave.
Слейв ждёт от мастера информации о своей задаче и начинает её обработку.
За всем процессом очень наглядно можно наблюдать с Мастера -- опять же RTFM
что означают цвета на градуснике.
Любой из слейвов можно исключить из процесса кнопкой Abort -- его
незаконченный кусок Мастер отдаст другому слейву. А потом, при желании, этот
же слейв можно опять подключить к процессу, см. выше как.
Удобны также кнопочки Shutdown clients when finished (выключать слейвы по
окончании процесса) и Shutdown when finished (выключение Мастера).
Я у себя в сети проверял работу на Windows XP, XP SP1, 2000 SP2. Попытка
запустпть клиентк на Windows 98 SE привела к тому, что ДабМоды Мастера и на
98й вошли в состояние Not respondning -- причём надо отдать должное, что
после прибивания Даба на 98й процесс продолжился -- у Мастера прогресс
прыгнул вперёд на 2% (это другие компы наработали ;)
Забавно, кстати, что эту возможность не включили в очередную версию ДабМода:
1.5. Я использовал последний из линейки 1.4: 1.4.13.2.2.
Результат:
вместо 20 часов, которые задача собиралась считаться на домашнем iCel
1.1@1.46GHz кластером из 8 компьютеров от 866MHz до 2,4GHz задача была
выполнена за 4 часа - при этом все сотрудники спокойно работали на своих
машинах как обычно. "Эффективная скорость" кластера составила примерно 7,5
GHz -- сами понимаете, такой скорости на современных компьютерах не
достигнешь. Один из компов среди работы надо было выключить - на качестве
результата это не сказалось.
--EOF
Area : RU.MPEG
From : Andrey Gule, 2:5020/400 (30 Июл 03 16:58)
Вероятно, многие из вас видели надстройки в диалоге Job control в
VirtualDubMod 1.4.13. Hекоторые, вероятно, даже не поленились заглянуть в
хелп и посмотреть, зачем оно нужны. И, на сколько я знаю, ещё никто эту
возможность не использовал реально.
Распределённая обработка видео.
Идея проста: дробим файл на части и раздаём части на обработку нескольким
компьютерам. Hесколько компьютеров работают быстрее, чем один ;)
В плане реализации тоже всё достаточно прозрачно. Есть главный компьютер --
Master, есть несколько управляемых - Slave. Задача на обработку видео
ставится с основного компьютера, на ведомых только производится процессинг.
Сразу остужу горячие головы, которые не читали хелп: распределённым способом
можно производить только однопроходный процессинг. Лично мне и этого более
чем достаточно, потому что файл, снятый с VHS пакетом фильтров
обрабатывается со скоростью ок. 1 кадра в секунду на домашнем iCel
1.1@1.46GHz. Как только дома настали проблемы с электропитанием и держать
машину включённой круглые сутки стало большой проблемой -- я начал искать
другие варианты.
В принципе в хелпе к ДабМоду эта фича описана довольно подробно -- нет
смысла повторяться. Скажу только, что ключ командной строки "/j" у меня так
и не заработал -- ну да в конце концов не так сложно запустить Даб на
слейве: три простых нажатия на кнопки (если он уже отконфигурирован).
Очевидно, что на каждом из клиентов должен быть ДабМод и установлены
используемые фильтры и кодеки. Однако запустить ДабМод из одного сетевого
каталога на получается -- вероятно, он хранит какую-то информацию о
запущенной сессии в файлах конфигурации.. Короче ДабМод с фильтрами надо
скопировать на каждый компьютер.
Теперь что с источником и результатом. Каждая из программ использует
одинаковый путь для файлов источника и результата. Потому крайне разумным
является использование сетевых путей: вам не нужно держать копию
файла-источника на каждой машине (очевидно, все участники процесса должны
иметь разрешение на чтение из этого каталога). С результатом не всё так
просто: если вы будете сохранять результат в доступной по сети папке, то вам
нужно будет в два раза больше места, чем занимает файл результата.
Во-первых, будут сохранятся кусочки обработанного видео, а во-вторых туда же
будет сохранён склеенный файл результата - он склеивается из кусочков
автоматически после окончания процессинга (потом кусочки удаляются, но в
момент склеивания вам нужна прорва места ;).
Так что альтернативой может быть сохранять результат в некий каталог
C:\Dir\ -- но при этом надо иметь на КАЖДОЙ машине такой каталог, в который
влезут все кусочки, которые эта машина будет считать. А на Мастере в этом
каталоге должен поместиться ещё и склеенный файл результата. (Очевидно, что
надо проверить наличие у всех участников прав на запись ;)
Следующий ваш вопрос: а как с загрузкой сети? В моём случае исходник это ави
(PicVideo MJPEG @ 19, 768x576) с битрейтом примерно 25 Мбит/с - все 8 компов
читают с одного места - загрузка 100 Мбти сети примерно 20%. Результат
(HuffYUV, 384x288) сваливается на другую машину -- там примерно такой же
поток и примерно такая же загурзка сетевого интерфейса.
Кодек/фильтры могут использоваться любые. Вчера я пробовал DivX 5.05 (1
проход с заданным битрейтом и 1 проход с заданным уровнем качества),
сегодня -- HuffYUV 2.1.1 (patch 0.2.2). Учтите, что фильтр должен работать
на ВСЕХ машинах, потому нельзя использовать, скажем, фильтр оптимизированный
под iP4, если в сети есть iP!!!. Очевидно, также, что фильтры должны
работать стабильно на ВСЕХ машинах. А то дома я, например, запросто
использовал QS Deinterlace 0.52b, а в сети на разных компах он начал
виснуть -- что вам сказать ;)) Пришлось заменить его на Smart Deinterlace
2.72b -- всё заработало, пока ни единого вылета ;)
Hастройка. Hачнём с Мастера -- все настройки, которые касаются процесса
кодирования в целом, выставляются именно тут. Длина сегмента -- рекомендую
использовать минимальный в 1 мин. Это позволит более аккуратно распределять
вычислительные ресурсы. Hапример, если есть два компьютера, со скоростью 5 и
10, то при 2 кусках скорость всего процесса будет ограничиваться скорость
медленной машины. Если сделать 10 кусов, то быстрая машина сделает вдвое
больше кусков -- к результату придём быстрее. Учтите, что максимальное
кол-во кусков -- 512 (опять же, RTFM ;) -- но это около 8,5 часов, то есть
время практически нереально большое ;)))
Приоритет. Это приоритет процесса кодирования на этой машине, то есть эта
настройка должна быть выставлена на КАЖДОЙ машине. Кстати, тут же
выставляется приоритет и для кодирования в обычном режиме -- что я только не
делал, чтобы заставить ДабМод 1.4.13.2.2 кодировать всегда в Idle! ;))
Мда, так вот я рекомендую всегда и везде ставить Idle, и просто не
возвращаться к этому вопросу. В этом режиме ВСЕ программы на компьютере
имеют приоритет над Дабом, так что Даб по сути собирает "остатки"
процессорного времени за всеми остальными программами.
Always restart jobs. Означает будет ли даб продолжать задачу, в случае если
в каталоге результата есть уже какие-то части с таким же именем файла, как у
результата -- или начнёт считать задачу заново.
Process Audio - рекомендую выключать. Всё равно обработка с аудио происходит
на несколько порядков быстрее, чем видео -- аудио проще сделать на одной
машине и потом приклеить к результату. Дело в том, что с синхронизацией
аудио возникают некоторые проблемы, за подробностями -- в доку, кому
интересно.
Send slave to tray - минимизирует окно Job control на Slave машине в system
tray.
Как видите, настройки элементарны.
Создаём задачу на Мастер машине как обычно -- пути к файлам используем как я
сказал выше, Save AVI, ставим галку Put in job list. Можно запросто таким
образом обрабатывать несколько задач.
Ещё одно напоминание для неумеющих читать хелп: все машины должны быть в
пределах одного сегмента сети. И -- только один мастер на сетевой сегмент.
Только одна распределённая задача.
Собственно запуск процесса. Мастер: запускаем VirtualDubMod, F4 (Job
control), Update, Master, Start. Мастер начинает обработку своего кусочка
первой задачи из списка.
Каждый слейв: запускаем VirtualDubMod, F4 (Job control), Update, Slave.
Слейв ждёт от мастера информации о своей задаче и начинает её обработку.
За всем процессом очень наглядно можно наблюдать с Мастера -- опять же RTFM
что означают цвета на градуснике.
Любой из слейвов можно исключить из процесса кнопкой Abort -- его
незаконченный кусок Мастер отдаст другому слейву. А потом, при желании, этот
же слейв можно опять подключить к процессу, см. выше как.
Удобны также кнопочки Shutdown clients when finished (выключать слейвы по
окончании процесса) и Shutdown when finished (выключение Мастера).
Я у себя в сети проверял работу на Windows XP, XP SP1, 2000 SP2. Попытка
запустпть клиентк на Windows 98 SE привела к тому, что ДабМоды Мастера и на
98й вошли в состояние Not respondning -- причём надо отдать должное, что
после прибивания Даба на 98й процесс продолжился -- у Мастера прогресс
прыгнул вперёд на 2% (это другие компы наработали ;)
Забавно, кстати, что эту возможность не включили в очередную версию ДабМода:
1.5. Я использовал последний из линейки 1.4: 1.4.13.2.2.
Результат:
вместо 20 часов, которые задача собиралась считаться на домашнем iCel
1.1@1.46GHz кластером из 8 компьютеров от 866MHz до 2,4GHz задача была
выполнена за 4 часа - при этом все сотрудники спокойно работали на своих
машинах как обычно. "Эффективная скорость" кластера составила примерно 7,5
GHz -- сами понимаете, такой скорости на современных компьютерах не
достигнешь. Один из компов среди работы надо было выключить - на качестве
результата это не сказалось.
--EOF
nasgool
Цитата:
Качеством МПЕГ-2, или в МПЕГ-2?
В пронципе если у тебя есть кодек МПЕГ-2 (Лигос, МайнКонценрн или др.) то ты можешь хватать на лету в МПЕГ-2. Другое дело тут нужен очень мощный проц. ИМХО хватай в MotionJPEG - тут тоже есть много кодеков - тотже МайнКонценрн, PICVideo и тому подобное.
Цитата:
Существует ли быстрый кодек для захвата налету в mpeg2?
Качеством МПЕГ-2, или в МПЕГ-2?
В пронципе если у тебя есть кодек МПЕГ-2 (Лигос, МайнКонценрн или др.) то ты можешь хватать на лету в МПЕГ-2. Другое дело тут нужен очень мощный проц. ИМХО хватай в MotionJPEG - тут тоже есть много кодеков - тотже МайнКонценрн, PICVideo и тому подобное.
Snach
Цитата:
Именно в сам МПЕГ-2.
Цитата:
вот мой и не тянет - слишком много дропов, поэтому и интересует наиболее быстрый кодек mpeg2 из всех существующих
Цитата:
Качеством МПЕГ-2, или в МПЕГ-2?
Именно в сам МПЕГ-2.
Цитата:
тут нужен очень мощный проц
вот мой и не тянет - слишком много дропов, поэтому и интересует наиболее быстрый кодек mpeg2 из всех существующих
Я уже спрашивал в другом топике, может, мне кто-нить здесь помогёт А как сделать на выходе широкоэкранный режим фильма, когда чёрные полосы сверху и снизу? Исходный видеоряд полноэкранный.
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
Предыдущая тема: DivX версии 4.x
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.