Ru-Board.club
← Вернуться в раздел «Программы»

» AviSynth

Автор: Esc
Дата сообщения: 10.08.2005 05:45
Widok

Цитата:
написал так т.к не запомнил точно

Ну так запусти ещё раз и запиши. Неужели это сложнее, чем спорить тут?


Цитата:
и если ты пытаешся меня подколоть в незнании, а не помочь, то грош цена твоему ответу.

Грош цена такому вопросу. "Я чего-то сделал и мне чего-то вылезло". И как прикажешь выяснять, что именно ты сделал неправильно? Если хочешь нормальный ответ, то напиши: я запускаю вот такой конкретный скрипт и получаю дословно вот такую ошибку в вот такой строке.


Цитата:
я же написал- единственное что нашел на думе было:
http://forum.doom9.org/showthread.php?t=16628

Земля и небо. По ссылке совершенно нормальный скрипт, где переменная video получает значение. В твоём же примере video появляется с неба, на что я тебе и указал в предыдущем посте.
Если мой совет "опустить первый параметр" тебе непонятен, то пишу построчно.
Вместо строчек
mpeg2source("путь к файлу.d2v")
VD_Subtitler(video, "путь к титрам .ssa")
либо напиши
mpeg2source("путь к файлу.d2v")
VD_Subtitler("путь к титрам .ssa")
а если не сработает, то
video=mpeg2source("путь к файлу.d2v")
VD_Subtitler(video, "путь к титрам .ssa")

А лучше всего не извращаться, а просто написать вместо всей этой фигни
LoadPlugin("VSFilter.dll")
textsub("путь к титрам ssa")
Надеюсь, vsfilter у тебя имеется.
Синтакс: TextSub ("path\filename.ext"[, charset[, fps]])

Чмок!
Автор: Widok
Дата сообщения: 10.08.2005 11:39
Esc
спасибо, заработало.
Автор: unreal666
Дата сообщения: 11.08.2005 10:14
Последняя версия Avisynth 2.5.6 beta 4 (100705)
(Блин. Не заметил, что об этом уже писали. Перенесите это в шапку)

Добавлено:
Вопрос.

При использовании плагина MPEG2Dec.dll во время попытки чтения файла *.d2v выводится ошибка 'Evaluate: System exception - Access violation' , а при использовании MPEG2Dec3.dll - все нормально.
Версия Avisynth 2.5.6 Beta4 [100705].
Операционка Win XP SP1

Почему такая фигня? (на Avisynth версии 2.5.4 и ОС Win 2k SP4 - было все нормально)

И чем отличаются MPEG2Dec3.dll и MPEG2Dec3dg.dll ?
Автор: Esc
Дата сообщения: 12.08.2005 18:51
unreal666
Вообще-то выброси и то и другое.
Программа по индексированию VOB-ов не стояла на месте, а активно развивалась всё это время. С нею развивался и изменялся и формат d2v. Поэтому и библиотека по чтению его должна соответствовать той программе, которой он был создан. Я уже не помню всей этой линейки, но ты явно сделал d2v утилитой из одного набора, а читать пытаешься dll-кой из другого. Сейчас давно уже все пользуются парой DGIndex.exe и DGDecode.dll. Берётся оно на neuron2.net.
Автор: unreal666
Дата сообщения: 24.08.2005 14:26
Esc
Эта ошибка не связана с несоответствием dll-ки и моих файлов d2v. Т.к. на win 2k + Avisynth v2.5.4 - все dll-ки с этими же файлами *.d2v работали нормально.
Автор: Esc
Дата сообщения: 26.08.2005 01:32
Не веришь - не надо.
Автор: unreal666
Дата сообщения: 29.08.2005 19:14
Esc
У меня после изменения WinXP изменилась только версия Avisinth, все остальное осталось также. Но за совет совет спасибо.

+

Почему-то это dll'ки опять стали работать, но я все равно перешел на связку DGIndex.exe и DGDecode.dll самой новой версии.
Автор: bdfy
Дата сообщения: 31.08.2005 23:38
такой вопрос : а есть ли команда или плагин к ависинту , чтобы воводилось две картинки ( до и после фильтрования как в дабе ) или изменения применялись только к одной половине экрана ? т.е чтобы лучше видеть эффект.
Автор: Esc
Дата сообщения: 01.09.2005 15:18
bdfy
Вручную наверное можно извернуться.
Но я обычно делаю скриншоты до и после и сравниваю их в Фотошопе.
Автор: unreal666
Дата сообщения: 04.09.2005 19:46
bdfy
Почитай о встроенном фильтре StackHorizontal / StackVertical.
Формат фильтров:

StackHorizontal(clip1,clip2[,...])
StackVertical(clip1,clip2[,...])

Ну и соответственно для одного из клипов примени одни фильтры, а для другого другие или вообще без фильтров. Т.е. допустим у тебя на входе переменная video1, создай переменную video2, обработанную фильтрами.

Пример:
clip1=AVISource("H:\Temp\Шрек.avi")
clip2=FlipVertical(clip1).Subtitle("600",font="Arial")
StackVertical(clip1,clip2)
Автор: Esc
Дата сообщения: 06.09.2005 16:07
unreal666
О, клёво. Я не знал про такие!
Автор: LArV
Дата сообщения: 13.10.2005 09:38
Подскажите плиз, как можно проще всего сделать преобразование 25 fps interlaced -> 50 fps progressive, или может есть хороший плагин (поскажите какой лучше выбрать)?
Видео - полностью interlaced (не гибрид), PAL, 720x576, AVI, звук MP3 mono 64kb.
И еще вопрос: При таком преобразовании будет ли рассинхронизация звука с видео? Если да, то как с этим бороться?
Автор: Esc
Дата сообщения: 13.10.2005 18:09
LArV
Ты уверен, что хочешь получить именно 50фпс?
Тогда конечно тебе нужен какой-то боббер.
Например DgBob или LeakKernelBob из пакета LeakKernelDeint.
Звук тебе придётся перешивать по-любому, так что рассинхронизации не будет.
Автор: LArV
Дата сообщения: 14.10.2005 09:20
Esc, 50 fps лучший способ деинтерлейса (без особых потерь + плавность картинки)...
Фильтра DGBob достаточно или нужно ручками делить на поля, запихивать, а затем бобить? (хотелась бы пример)
Ести ли, вариант просто скриптом это зделать? Или п¬tion=addreply
Автор: Yourbill
Дата сообщения: 14.10.2005 15:38
Рипаю ДВД диски с помощью Gordian Knot и выкладываю на свой сервер в локальной городской сети. Хотелось бы поставить логотип.
В VD все это прекрасно получается с помощью плугина - Logo by Donald Graft. Прочитал что в AviSynth можно использовать VD плугины.
Подготовил скрипт с помощью GK и попробовал подгузить туда лого от VD... Но что то не клеится Сильно не пинайте, рание опыта работы с AviSynth не было. Подскажите плиз где в скрипте ошибка?

Код:
# Файл создан при помощи Gordian Knot
#
# http://gknot.doom9.org

# PLUGINS
LoadPlugin("C:\Tools\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\Tools\GORDIA~1\AviSynthPlugins\UnDot.dll")

#################
# Logo by Donald Graft #
################

function VD_Logo (clip clip, int "x", int "y", int "alpha", bool "transparent",
\ int "xr", int "xg", int "xb", int "tolerance", string "filename",
\ bool "animate", int "start", int "duration", int "loops",
\ int "fadeinlen", int "fadeoutend", int "fadeoutlen")

{
LoadVirtualdubPlugin("C:\Tools\GordianKnot\VirtualDubMod\plugins\logo.vdf", "VD_Logo", 1)
return VD_Logo (default(x,10), default(y,10), default(alpha,150),
\ default(transparent,1), default(xr,0), default(xg,0), default(xb,255), default(tolerance,0),
\ default(filename,"C:\Tools\GordianKnot\VirtualDubMod\plugins\logo.bmp"),
\ default(animate,0), default(start,100), default(duration,600), default(loops,0),
\ default(fadeinlen,100), default(fadeoutend,700), default(fadeoutlen,100))
}

# SOURCE
mpeg2source("C:\-=Encode=-\test\test.d2v")

# ОБРЕЗАНИЕ ПОЛОС(УРЕЗАНИЕ)
crop(10,2,696,572)

# ИЗМЕНЕНИЕ РАЗМЕРОВ
BicubicResize(640,480,0,0.75)

# ОЧИСТКА ОТ ШУМОВ: ВЫБЕРИТЕ ОДИН ИЗ ВАРИАНТОВ (или ничего)
Undot()
Автор: Esc
Дата сообщения: 14.10.2005 15:40
LArV
Скрипт крайне прост в твоём случае.
1 строка: открыть видео
в случае avi: AviSource("путь к файлу")
2 строка: боббер
например: DgBob()
и всё

Добавлено:
Yourbill
Описав функцию, неплохо бы её где-нибудь ещё вызвать. Добавь последней строчкой
VD_Logo(x=горизонтальная координата помещения логотипа,y=вертикальная координата помещения логотипа)
Автор: Yourbill
Дата сообщения: 14.10.2005 15:57
Esc - Шаман

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

Код:
LoadPlugin("C:\Tools\GORDIA~1\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\Tools\GORDIA~1\AviSynthPlugins\UnDot.dll")

function VD_Logo (clip clip, int "x", int "y", int "alpha", bool "transparent",
\ int "xr", int "xg", int "xb", int "tolerance", string "filename",
\ bool "animate", int "start", int "duration", int "loops",
\ int "fadeinlen", int "fadeoutend", int "fadeoutlen")
{
LoadVirtualdubPlugin("C:\Tools\GordianKnot\VirtualDubMod\plugins\logo.vdf", "VD_Logo", 1)
return clip.VD_Logo (default(x,10), default(y,10), default(alpha,150),
\ default(transparent,1), default(xr,0), default(xg,0), default(xb,255), default(tolerance,0),
\ default(filename,"C:\Tools\GordianKnot\VirtualDubMod\plugins\logo.bmp"),
\ default(animate,0), default(start,100), default(duration,600), default(loops,0),
\ default(fadeinlen,100), default(fadeoutend,700), default(fadeoutlen,100))
}

mpeg2source("C:\-=Encode=-\test\test.d2v")
crop(10,2,696,572)
BicubicResize(640,480,0,0.75)
Undot()
ConvertToRGB
VD_Logo()
ConvertToYUY2
Автор: Esc
Дата сообщения: 14.10.2005 16:45
Yourbill

Цитата:
Спасибо все получилось, только там еще была синтаксическая ошибка вкравшаяся по неопытности и пришлось еще функцию добавить - ConvertToRGB.

Прости, забыл. Практически все плугины даба работают в RGB. А практически все кодеки показывают в YUV (YV12). Я эту фишку никогда не помню, потому что она ненапряжная. Даб ругнётся и сразу понятно, на что и как чинить. Строчку вставил и снова забыл. %)

Цитата:
PS. Нужно ли поcле VD плугина применять ConvertToYUY2 ??

Вовсе нет. Потому что энкодер схавает в любом виде. Вот если бы у тебя после этого фильтра другие шли, которые RGB не понимают. Обычно в описании фильтра сказано, в каких пространствах он умеет работать.
Автор: LArV
Дата сообщения: 14.10.2005 17:15
Esc, я имел в виду зделать все средствами сабжа, без дополнительных фильтров.
Автор: Yourbill
Дата сообщения: 18.10.2005 14:11
Вышел финальный релиз - AviSynth 2.5.6. Приятной неожиданностью стала документация на русском, идущая в комплекте с программой (варианты помощи на разных языках нужно указать при установке).
Автор: Widok
Дата сообщения: 28.10.2005 21:26
AviSynth 2.5.6 temporarily withdrawn

Цитата:
The AviSynth 2.5.6 release has a corruption at the end of the IScriptEnvironment vtable and has been temporarily withdrawn from distribution.
Any pluggin compiled with avisynth.h from version 2.5.5 and prior (i.e just about all of them) using the following calls (fortunatly almost none) may have unpredictable results :-

IScriptEnvironment::SubFrame()
IScriptEnvironment::SetMemoryMax()
IScriptEnvironment::SetWorkingDir()
User not using any pluggins effected by these calls need take no further action.

Any new pluggins using the following calls in avisynth.h from version 2.5.6
IScriptEnvironment::SubFrame()
IScriptEnvironment::SetMemoryMax()
IScriptEnvironment::SetWorkingDir()
IScriptEnvironment::ManageCache()
IScriptEnvironment::PlanarChromaAlignment()

Will need to be recompiled with the avisynth.h in the replacement version 2.5.6 available shortly

источник- http://forum.doom9.org/showthread.php?t=101954

Добавлено:
если я всё правильно понял, то исправленный релиз уже можно скачать.
Автор: Esc
Дата сообщения: 29.10.2005 00:46
Там проблема не с самим Ависинтом, а со скомпилированными под ним плагинами. Нас как юзеров это канает по минимуму.
Автор: Widok
Дата сообщения: 29.10.2005 13:36
Esc
дистрибутив AviSynth изменён, конкретно: DirectShowSource.dll TCPDeliver.dll, avisynth.dll
этого вполне достаточная причина чтобы обновиться.
да и никто тебя лично и не заставляет качать

Добавлено:
а так конечно, измения не значительны:

Цитата:
it effects only a small number of plugins compiled with the old avisynth.h.
Автор: unreal666
Дата сообщения: 05.02.2006 07:52
Какой фильтр в ависинте наиболее близкий по принципу обработки к фильтру WNR (wavelet noise reduction) из VirtualDub? И где его можно взять?
А то для применения WNR фильтра из VirtualDub нужно преобразовывать цветовое пространство, что не желательно.
Автор: Esc
Дата сообщения: 06.02.2006 17:18
unreal666
Я уж сто лет не пользовался плагинами под VD. )))
Кто познал Ависинт, тот на нём и висит.
Опиши, чего надо сделать.
Автор: unreal666
Дата сообщения: 06.02.2006 18:24
Esc
Нужен вейвлетный фильтр для цветового пространства YV12, наподобие WNR.
Вот описание этого фильтра

Цитата:
Фильтр Wavelet Noise Reduction (WNR) реализует относительно новый и перспективный метод: представление сигнала как совокупность элементарных волн - вейвлетов. По сравнению с другими распространенными фильтрами шумоподавления, WNR работает не в пространственном, а частотном представлении изображения. Это делает его весьма эффективным для подготовки материала к дальнейшему сжатию, т.к. в алгоритмах MPEG и MJPEG сигнал представлен подобным образом. Не меньшее значение имеет тот факт, что природа очень многих шумов в аналоговой аппаратуре имеет гармонический характер, а это, в свою очередь, существенно облегчает их фильтрацию именно в частотном представлении. Вот что говорят об этом фильтре разработчики:

WNR может удалять спектральные компоненты шумов в трех различных частотных диапазонах, независимо для осей X,Y и компонент Y, Cr, Cb. Анализируя спектральные составляющие изображения фильтр обрезает их в соответствии с установленными параметрами. В нормальном видеосигнале обычно отсутствуют спектральные компоненты с амплитудой превышающей остальные, это признак шумов, которые WNR способен удалить без добавления заметных артефактов в изображение. В качестве примера предположим, что на изображении есть интерференционная сетка в виде вертикальных полос (такое может быть из-за помех от электросети на телевизионный кабель). В этом случае по горизонтали яркость меняется с определенной частотой, то есть горизонтальное расстояние между двумя полосами всегда одинаково. Все другие изменения яркости вызваны собственно изображением и обычно имеют случайный характер. На общем фоне амплитудно-частотной характеристики будет виден пик, соответствующий помехе от сети, который можно убрать этим фильтром. Другой пример - макроблоки, вызванные некачественным кодированием MPEG. Это квадраты по 4, 8, 16 пикселей, которые также четко представлены своими частотами.

Дополняют эту картину весьма развитые средства настройки и контроля параметров. И несмотря на то, что восемнадцать регулировок чувствительности фильтра немного шокируют, работать с WNR очень легко и удобно.

Автор: Esc
Дата сообщения: 07.02.2006 00:10
Как насчёт Vague Denoiser?

Цитата:
Это основанный на вейвлетах (коротких волнах) шумоподавитель.
По существу, он преобразует каждый кадр входного видео в пространство вейвлетов, используя различные вейвлет-фильтры. Затем он применяет некоторую фильтрацию к полученным коэффициентам. Потом он делает обратное вейвлет-преобразование. Благодаря свойствам вейвлетов, это дает хороший сглаженный результат и снижение шума, без размазывания деталей изображения. Данное вейвлет-преобразование может быть сделано для каждой плоскости цветового пространства. Данный фильтр использует вейвлеты из руководства Брислауна (Brislawn).


Но есть и более прогрессивные методы!

Цитата:
FFT3DFilter использует метод быстрого дискретного преобразования Фурье (БПФ, FFT) для обработки видео изображений в частотной области. Он основан на некоторых продвинутых математических алгоритмах оптимальной фильтрации. Он работает не локально, но делает некоторую делокализованную (блочную) обработку. В режиме 3D, это приводит к эффекту подобному частичной компенсации движения. Данный фильтр может уменьшить шум без видимой потери качества и артефактов, даже с вполне сильными настройками. Он может значительно улучшить сжимаемость и снизить размер закодированного файла.

Автор: unreal666
Дата сообщения: 07.02.2006 00:50
Спасибо. Нашел их в справке и скачал FFT3DFilter. VagueDenoiser слишком простой - настроек практически 0. А FFT3DFilter возможно подходит. Только его настраивать замучаешься.
Автор: Alex_Dragon
Дата сообщения: 13.02.2006 22:37
Люди, а что посоветуете для преобразования 23,976 > 25 fps, так что бы со звуком не разъехаться?
Есть два avi, один рипнут нормально из PAL (25 fps), а другой с NTSC (23.976 fps) драли, судя по всему. Нужно сделать из них DVD (токо не говорите, что маразм — сам знаю, но вот так вот). Сижу, репу чешу. Проще всего тупо 23.976 на 25 поменять, но звук жать сильно неохота (мне ещё не попадались редакторы, которые могли бы такое преобразование точно сделать, к тому же при преобразовании mp3 > ac3 время и так плывёт, несинхрон в результате всех конвертаций обеспечен).
Технология в общем такая: через avisynth mpeg2 кодеру скармливается видео, звук выдирается отдельно, потом всё сшивается в DVDlab или чём-то подобном (это уже не я делаю).
Кто чего посоветует?
Автор: namchik
Дата сообщения: 14.02.2006 09:35
Alex_Dragon
в Belight'e можно конвертнуть частоту кадров для звука

Страницы: 12345678910111213141516171819

Предыдущая тема: Вставка из clipboard'а в MS Outlook 2000


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.