|
Мазизов
Стаж: 7 лет 5 месяцев Сообщений: 1129
|
Мазизов ·
17-Май-18 16:23
(6 лет 5 месяцев назад, ред. 17-Май-18 22:46)
ZZZanan111
Зачем разбирать контейнер на потоки и индексировать их, чтобы больше проблем было ?
Если уж так нужен индексатор, открыть файл на декодерах с индексом FFmpegSource2 или LWLibavVideoSource . При загрузке в Ависинт, декодер проиндексирует поток, и будет использовать индекс при декодировании.
|
|
ZZZanan111
Стаж: 12 лет 11 месяцев Сообщений: 175
|
ZZZanan111 ·
17-Май-18 18:19
(спустя 1 час 56 мин.)
Мазизов
Ну я уже понял что разбирать контейнер не надо.
А что делать чтоб файл индексировался правильно как мне нужно так и не понял.
Вот так получается индексом FFmpegSource2
а вот индекс LSMASHSource
ни тот и ни этот варианты не подходят для того чтобы конвертить в Карбон-кодере с AviSynth. Вот как описано тут
|
|
Мазизов
Стаж: 7 лет 5 месяцев Сообщений: 1129
|
Мазизов ·
17-Май-18 19:49
(спустя 1 час 30 мин.)
ZZZanan111 писал(а):
75367102ни тот и ни этот варианты не подходят для того чтобы конвертить в Карбон-кодере с AviSynth. Вот как описано тут
Не занимайтесь ерундой.
Поставьте нормальную программу, и нормально кодируйте кодером х264 в контейнер MKV.
В XviD4PSP 5 есть и фильтры повышения резкости, которыми Вы интересовались.
Цитата:
а вот индекс LSMASHSource
В LSMASHSource входят два декодера видео LWLibavVideoSource и LSMASHVideoSource (у которого индексатора нет).
|
|
ZZZanan111
Стаж: 12 лет 11 месяцев Сообщений: 175
|
ZZZanan111 ·
17-Май-18 21:00
(спустя 1 час 11 мин., ред. 17-Май-18 21:00)
Мазизов
Мне надо с AVI перекодировать в DVD с всеми улучшателями (ресайзами, фильтрами и тд. и тп.)
XviD4PSP 5 хорошая программа, много в ней отвёрток. Ну я её раз 40 ставил и столько-же сносил
..когда проходила на 2-pass всегда слетала, я проблему эту так и не решил. Пользуюсь MeGUI, с моими запросами мне её вполне хватает.
MKV мне не очень, много встречается и рипов и ремуксов в которых сыпется и скачет картинка. Предпочитаю ремуксы BDAV и DVD.
|
|
Мазизов
Стаж: 7 лет 5 месяцев Сообщений: 1129
|
Мазизов ·
17-Май-18 23:11
(спустя 2 часа 10 мин., ред. 17-Май-18 23:11)
ZZZanan111 писал(а):
75367765MKV мне не очень, много встречается и рипов и ремуксов в которых сыпется и скачет картинка. Предпочитаю ремуксы BDAV и DVD.
Прогрессивный поток Н264 в контейнере MKV - лучшее, что есть на сегодня для нормального плеера, и по качеству, и по размеру файла.
Цитата:
..когда проходила на 2-pass всегда слетала, я проблему эту так и не решил.
Эта проблема не стОит выеденного яйца ...
Цитата:
Мне надо с AVI перекодировать в DVD
Ну, если Вы на этом настаиваете, тогда Вам назад в эту тему, извращенцы там.
|
|
koren-a
Стаж: 11 лет 5 месяцев Сообщений: 170
|
koren-a ·
25-Май-18 20:14
(спустя 7 дней)
Помогите со скриптом для наложения одного видеоклипа на другой в автоматическом режиме
|
|
Alatena
Стаж: 17 лет 4 месяца Сообщений: 1021
|
Alatena ·
26-Янв-21 19:38
(спустя 2 года 8 месяцев)
Добрый день. Вопрос.
Задача: под аудиодорожку сделать видео из одной картинки.
Код:
img=ImageReader("19.png")
a=DirectShowSource("19.MP3")
audiodub(img, a)
В плеере открывается идеально. В VirtualDub проигрываются только первые 1000 кадров. Так задано по умолчанию. Можно ли как-то прописать, чтобы картинки открывались столько, сколько длится аудио?
Высчитывать вручную очень не хочется.
Конкретно в этом случае нужно 55мин4сек. Но есть ещё 22 файла.
|
|
грейфер
Стаж: 15 лет 6 месяцев Сообщений: 264
|
грейфер ·
26-Янв-21 23:09
(спустя 3 часа, ред. 26-Янв-21 23:09)
Alatena, есть такой способ: img=ImageSource("19.png", end = 300, fps=25) # аналог Imagereader, но работает быстрее
(название файла картинки, сколько раз её повторить, количество кадров в секунду) 55мин4сек умножьте на нужную fps, получите число для end.
|
|
Alatena
Стаж: 17 лет 4 месяца Сообщений: 1021
|
Alatena ·
26-Янв-21 23:12
(спустя 3 мин., ред. 26-Янв-21 23:12)
грейфер
Так вопрос был в другом.
Alatena писал(а):
80823059Можно ли как-то прописать, чтобы картинки открывались столько, сколько длится аудио?
Высчитывать вручную очень не хочется.
Есть такая штука: я ставлю большое-большое число повторов, но видео заканчивается, когда заканчивается аудио?
Чтобы не высчитывать для каждого файла количество повторов?
|
|
грейфер
Стаж: 15 лет 6 месяцев Сообщений: 264
|
грейфер ·
26-Янв-21 23:24
(спустя 11 мин.)
Для Ависинта? Я такого способа не знаю, может и есть.
Мне только непонятно, Вы смотреть avs-файл в плеере собираетесь, или сделать полноценный видеофайл со звуком?
|
|
Alatena
Стаж: 17 лет 4 месяца Сообщений: 1021
|
Alatena ·
26-Янв-21 23:25
(спустя 1 мин.)
грейфер
Второе, конечно.
|
|
грейфер
Стаж: 15 лет 6 месяцев Сообщений: 264
|
грейфер ·
26-Янв-21 23:29
(спустя 4 мин.)
Ну а чем тогда предложенный способ не нравится?
Я уже подсчитал число end для Вашего случая:
3304 сек х 25 = 82600
И кодируйте во что хотите!
|
|
Antioks
Стаж: 14 лет 6 месяцев Сообщений: 47
|
Antioks ·
26-Авг-21 18:59
(спустя 6 месяцев)
Подскажите скрипт для AviSynth.
Нужно разрезать видео на куски длинной в минуту.
|
|
name001
Стаж: 14 лет 6 месяцев Сообщений: 216
|
name001 ·
15-Янв-22 17:08
(спустя 4 месяца 19 дней)
Какие есть плагины для автоматического баланса белого в RGB пространстве без внутреннего преобразования в YUV, при этом одинакового баланса для каждого кадра клипа основываясь на всех кадрах клипа? ColorYUV2 и AutoAdjust не поддерживают RGB и в их описании не сказано об внутреннем использовании RGB пространства.
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
15-Янв-22 17:28
(спустя 20 мин., ред. 17-Янв-22 16:30)
|
|
Аземар
Стаж: 4 года 7 месяцев Сообщений: 82
|
Аземар ·
17-Янв-22 01:33
(спустя 1 день 8 часов, ред. 17-Янв-22 01:33)
Подскажите способы удаления шумов с сохранением мелких линий.
Имеется вот такой исходник:
ᅠ
Покурил мануалы по Avisynth, что-то получилось написать:
Код:
global ImageInput="Y:\8000\"
global SourceDir="Y:\avisynth\Plugins\" LoadPlugin(SourceDir + "RgTools-v1.2-x64.dll") #load Remove Grain
LoadPlugin(SourceDir + "masktools2-v2.2.29-x64.dll") #load Mask Tool
LoadPlugin(SourceDir + "mvtools-v2.7.45-x64.dll") #load MV Tool
LoadPlugin(SourceDir + "neo-fft3d-vr11-x64.dll") #load Neo FFT3DFilter
LoadPlugin(SourceDir + "neo-dfttest-vr7-x64.dll") #load Neo Test
Import(SourceDir + "TemporalDegrain-v2.3.4.avsi") ImageSource(ImageInput + "%5.5d.png", 1, 8000, 23.976, pixel_type = "RGB32").ConvertToYV16() TemporalDegrain2 (degrainTR=0,postFFT=1)
Для последней строки перебирал разные значения, при "degrainTR=0,postFFT=1" картинка получилась лучше всего:
ᅠ
И ещё вопрос: пытался сразу видео обрабатывать, но получал такую ошибку:
Код:
LoadPlugin("Y:\avisynth\Plugins\avss_x64.dll")
DSS2("Y:\avisynth\Sample.mkv", fps=23.976)
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
17-Янв-22 21:35
(спустя 20 часов, ред. 17-Янв-22 21:35)
Аземар писал(а):
82610163TemporalDegrain-v2.3.4.avsi
это жуткий подавитель зерна, им в аниме вообще нельзя пользоваться, к тому бракованная версия: на смене сцен идут бленды.
Типовое построение скрипта для аниме:
скрытый текст
ChangeFPS(last,last,true) # initiate a small forward buffer # ColorMatrix(mode="Rec.601->Rec.709") source = last # ==== Создание необходимых масок =====
dclip = source.hqdn3d(20, lt=0, ct=0)
line_mask = dclip.mt_edge(mode="cartoon", thY1=10, thY2=10).mt_expand().mt_deflate()
edge_mask = dclip.mt_edge(mode="prewitt", thY1=9, thY2=9).mt_expand().mt_deflate()
hys_mask = mt_hysteresis(line_mask, edge_mask).mt_binarize(threshold=16) m_edge = source.mt_edge("sobel", 7, 20).mt_inflate()
m_aa = m_edge.mt_expand()
m_halo = m_aa.mt_expand().mt_lutxy(m_edge, "x y -") # ==== Создание клипов антиайлиазинга и Dehalo =====
aa_clp = source.aaSW(multipler=2.0,mtype="prewitt",aa=24,expnd=true,extype="square",showmask=false,threads=1)
dh_clp = aa_clp.FineDehalo(rx=2.4, ry=2.4, thmi=80, thma=128, thlimi=50, thlima=100, darkstr=0.0, brightstr=1.0, showmask=0, contra=0.0, excl=true).YAHRmask(expand=3, warpdepth=24)#, blur=2, useawarp4=true) # ====== Шумоподавитель ======
#denoise = source.DfttestMC(sigma=5, mdg=true, tbsize=1,lsb_in=false,lsb=false,threads=1)
denoise = source.DfttestMC(mc=2,sigma=5,dither=1,mdg=true,blksize=8,pel=2,mdgSAD=320,thSAD=400,thSCD1=400,thSCD2=116,dct=8,lsb_in=false,lsb=false,threads=1)
mt_merge(denoise, source, edge_mask, luma=true) flat = MaskedMerge(last, DfttestMC(sigma=1.5, mdg=true, dither=1, tbsize=1, lsb_in=false,lsb=false,threads=1), hys_mask) # ==== наложение клипов аа и dehalo на выходной клип после шумоподавления и дебандинга по своим маскам ====
non_halo = mt_merge(flat, aa_clp, m_aa)
mt_merge(non_halo, dh_clp, m_halo) # ==== Затемнение линий =====
FastLineDarkenMod4(strength=28,threshold=1, thinning=9,luma_cap=200)
#Toon(0.2)
aWarpSharp(depth=10)
sharpen(0.3) # ===== Добавление резкости ====
LSFmod(defaults="slow",preblur="dehalo_alpha_mt()", strength=120) # ==== DeBanding ====
GradFun3(thr=0.5, smode=0).F3kdb(range=15,Y=64, Cb=64, Cr=64, grainY=0, grainC=0, input_mode=0, output_depth=8, output_mode=0) # ===== Генератор зерна с регулировкой для сцен с разной степенью освещённости =====
GrainFL(g1str=6, g2str=5, g3str=0, g1size=1.3, g2size=1.0, g3size=0.7, g1soft=3, g2soft=3, g3soft=3, th1=24, th2=64, th3=96, th4=160, lsb=false, lsb_in=false) Prefetch (SI_PhysicalCores ()) # for AviSynth+
Только имейте в виду, что пока не все плагины заточены на поддержку HBD
|
|
Аземар
Стаж: 4 года 7 месяцев Сообщений: 82
|
Аземар ·
18-Янв-22 16:30
(спустя 18 часов)
Tempter57 писал(а):
82612489Типовое построение скрипта для аниме:
скрытый текст
ChangeFPS(last,last,true) # initiate a small forward buffer # ColorMatrix(mode="Rec.601->Rec.709") source = last # ==== Создание необходимых масок =====
dclip = source.hqdn3d(20, lt=0, ct=0)
line_mask = dclip.mt_edge(mode="cartoon", thY1=10, thY2=10).mt_expand().mt_deflate()
edge_mask = dclip.mt_edge(mode="prewitt", thY1=9, thY2=9).mt_expand().mt_deflate()
hys_mask = mt_hysteresis(line_mask, edge_mask).mt_binarize(threshold=16) m_edge = source.mt_edge("sobel", 7, 20).mt_inflate()
m_aa = m_edge.mt_expand()
m_halo = m_aa.mt_expand().mt_lutxy(m_edge, "x y -") # ==== Создание клипов антиайлиазинга и Dehalo =====
aa_clp = source.aaSW(multipler=2.0,mtype="prewitt",aa=24,expnd=true,extype="square",showmask=false,threads=1)
dh_clp = aa_clp.FineDehalo(rx=2.4, ry=2.4, thmi=80, thma=128, thlimi=50, thlima=100, darkstr=0.0, brightstr=1.0, showmask=0, contra=0.0, excl=true).YAHRmask(expand=3, warpdepth=24)#, blur=2, useawarp4=true) # ====== Шумоподавитель ======
#denoise = source.DfttestMC(sigma=5, mdg=true, tbsize=1,lsb_in=false,lsb=false,threads=1)
denoise = source.DfttestMC(mc=2,sigma=5,dither=1,mdg=true,blksize=8,pel=2,mdgSAD=320,thSAD=400,thSCD1=400,thSCD2=116,dct=8,lsb_in=false,lsb=false,threads=1)
mt_merge(denoise, source, edge_mask, luma=true) flat = MaskedMerge(last, DfttestMC(sigma=1.5, mdg=true, dither=1, tbsize=1, lsb_in=false,lsb=false,threads=1), hys_mask) # ==== наложение клипов аа и dehalo на выходной клип после шумоподавления и дебандинга по своим маскам ====
non_halo = mt_merge(flat, aa_clp, m_aa)
mt_merge(non_halo, dh_clp, m_halo) # ==== Затемнение линий =====
FastLineDarkenMod4(strength=28,threshold=1, thinning=9,luma_cap=200)
#Toon(0.2)
aWarpSharp(depth=10)
sharpen(0.3) # ===== Добавление резкости ====
LSFmod(defaults="slow",preblur="dehalo_alpha_mt()", strength=120) # ==== DeBanding ====
GradFun3(thr=0.5, smode=0).F3kdb(range=15,Y=64, Cb=64, Cr=64, grainY=0, grainC=0, input_mode=0, output_depth=8, output_mode=0) # ===== Генератор зерна с регулировкой для сцен с разной степенью освещённости =====
GrainFL(g1str=6, g2str=5, g3str=0, g1size=1.3, g2size=1.0, g3size=0.7, g1soft=3, g2soft=3, g3soft=3, th1=24, th2=64, th3=96, th4=160, lsb=false, lsb_in=false) Prefetch (SI_PhysicalCores ()) # for AviSynth+
ᅠ
Спасибо, но я почему-то не могу найти плагин aaSW, который используется здесь:
aa_clp = source.aaSW(multipler=2.0,mtype="prewitt",aa=24,expnd=true,extype="square",showmask=false)
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
18-Янв-22 19:26
(спустя 2 часа 56 мин.)
Аземар
скрытый текст
function aaSW(\
clip orig,float "multipler",int "dx",int "dy",int "LOffset",int "ROffset",int "BOffset"\
,int "TOffset",int "aa",int "aac",int "threads",bool "warp",int "adepth",int "athresh",int "ablur"\
,bool "addsharp",string "sharper",string "mtype",int "mY1",int "mY2",int "mC1",int "mC2"\
,bool "expnd",int "exthY",int "exthC",string "extype",int "AmergeY",int "AmergeV",int "AmergeU",bool "showmask")
{
multipler = Default(multipler, 2)
dx = Default(dx,int(orig.width *multipler))
dy = Default(dy,int(orig.height * multipler))
LOffset = Default(LOffset, 0)
ROffset = Default(ROffset, 0)
BOffset = Default(BOffset, 0)
TOffset = Default(TOffset, 0)
aa = Default(aa, 48)
aac = Default(aac, aa-8)
threads = Default(threads, 1)
warp = Default(warp, false)
adepth = Default(adepth, 3)
athresh = Default(athresh, 45)
ablur = Default(ablur, 1)
addsharp = Default(addsharp, false)
sharper = Default(sharper, "MSharpen(12,35,true,false,false)")
mtype = Default(mtype, "prewitt")
mY1 = Default(mY1, 100)
mY2 = Default(mY2, 100)
mC1 = Default(mC1, 5)
mC2 = Default(mC2, 10)
expnd = Default(expnd, true)
extype = Default(extype, "square")
exthY = Default(exthY, 255)
exthC = Default(exthC, 255)
AmergeY = Default(AmergeY, 3)
AmergeV = Default(AmergeV, 2)
AmergeU = Default(AmergeU, 2)
showmask = Default(showmask, false) orig
ox = orig.width
oy = orig.height a = last
b = spline64resize(dx, dy).FTurnLeft().SangNom2(aa,aac,threads).FTurnRight().SangNom2(aa,aac,threads)
# b = blackmanresize(dx, dy, taps=8).FTurnLeft().SangNom2(aa,aac,threads).FTurnRight().SangNom2(aa,aac,threads)
b = warp?b.awarpsharp2(type=1, thresh=athresh,chroma=4, depth=adepth, blur=ablur) : b
b = addsharp?Eval("b."+sharper) : b
d = mt_edge(mtype,mY1,mY2,mC1,mC2,offx=LOffset,offy=TOffset,w=width-roffset-loffset,h=height-toffset-boffset,y=AmergeY,v=AmergeV,u=AmergeU)
d = expnd? d.mt_expand(exthY,exthC,extype,y=AmergeY,v=AmergeV,u=AmergeU) : d
b = b.spline64resize(ox,oy)
# b = b.blackmanresize(ox,oy, taps=8)
mt_merge(a,b,d,y=AmergeY,v=AmergeV,u=AmergeU)
showmask? d : last
}
|
|
Аземар
Стаж: 4 года 7 месяцев Сообщений: 82
|
Аземар ·
18-Янв-22 20:57
(спустя 1 час 30 мин.)
Tempter57
Теперь вот так ругается:
ᅠ
33 строка -> aa_clp = source.aaSW
source = ImageSource("Y:\Anime\Ergo Proxy\BDMV\Upscale\1_disc\1_series\Ishod\8000\%5.5d.png", 1, 8000, 23.976, pixel_type = "RGB32").ConvertToYV12()
SourceDir="Y:\avisynth\Plugins-2.0\x32\" LoadPlugin(SourceDir + "hqdn3d.dll") #load hqdn3d
LoadPlugin(SourceDir + "MaskTools-v1.5.8.dll") #load
LoadPlugin(SourceDir + "masktools2-v2.2.29.dll") #load Mask Tool 2
LoadPlugin(SourceDir + "mvtools-2.7.45.dll") #load MV Tool
LoadPlugin(SourceDir + "DePan.dll") #load MV Tool .dlls
LoadPlugin(SourceDir + "DePanEstimate.dll") #load MV Tool .dlls
LoadPlugin(SourceDir + "dfttest-1.9.7.dll") #load
LoadPlugin(SourceDir + "fturn-26.dll") #load
LoadPlugin(SourceDir + "SangNom2-0.6.0.dll") #load
LoadPlugin(SourceDir + "LoadDLL32.dll") #load
loaddll("Y:\avisynth\Plugins-2.0\x32\libfftw3f-3.dll") Import(SourceDir + "FineDehalo.avsi")
Import(SourceDir + "DfttestMC.avsi")
Import(SourceDir + "aaSW.avsi") # ==== Создание необходимых масок =====
dclip = source.hqdn3d(20, lt=0, ct=0)
line_mask = dclip.mt_edge(mode="cartoon", thY1=10, thY2=10).mt_expand().mt_deflate()
edge_mask = dclip.mt_edge(mode="prewitt", thY1=9, thY2=9).mt_expand().mt_deflate()
hys_mask = mt_hysteresis(line_mask, edge_mask).mt_binarize(threshold=16) m_edge = source.mt_edge("sobel", 7, 20).mt_inflate()
m_aa = m_edge.mt_expand()
m_halo = m_aa.mt_expand().mt_lutxy(m_edge, "x y -") # ==== Создание клипов антиайлиазинга и Dehalo =====
aa_clp = source.aaSW(multipler=2.0, mtype="prewitt", aa=24, expnd=true, extype="square", showmask=false, threads=1)
dh_clp = aa_clp.FineDehalo(rx=2.4, ry=2.4, thmi=80, thma=128, thlimi=50, thlima=100, darkstr=0.0, brightstr=1.0, showmask=0, contra=0.0, excl=true).YAHRmask(expand=3, warpdepth=24)#, blur=2, useawarp4=true) # ====== Шумоподавитель ======
#denoise = source.DfttestMC(sigma=5, mdg=true, tbsize=1,lsb_in=false,lsb=false,threads=1)
denoise = source.DfttestMC(mc=2,sigma=5,dither=1,mdg=true,blksize=8,pel=2,mdgSAD=320,thSAD=400,thSCD1=400,thSCD2=116,dct=8,lsb_in=false,lsb=false)
mt_merge(denoise, source, edge_mask, luma=true) flat = MaskedMerge(last, DfttestMC(sigma=1.5, mdg=true, dither=1, tbsize=1, lsb_in=false,lsb=false, threads=1), hys_mask) # ==== наложение клипов аа и dehalo на выходной клип после шумоподавления и дебандинга по своим маскам ====
non_halo = mt_merge(flat, aa_clp, m_aa)
mt_merge(non_halo, dh_clp, m_halo) # ==== Затемнение линий =====
FastLineDarkenMod4(strength=28,threshold=1, thinning=9,luma_cap=200)
#Toon(0.2)
aWarpSharp(depth=10)
sharpen(0.3) # ===== Добавление резкости ====
LSFmod(defaults="slow",preblur="dehalo_alpha_mt()", strength=120) # ==== DeBanding ====
GradFun3(thr=0.5, smode=0).F3kdb(range=15,Y=64, Cb=64, Cr=64, grainY=0, grainC=0, input_mode=0, output_depth=8, output_mode=0) # ===== Генератор зерна с регулировкой для сцен с разной степенью освещённости =====
GrainFL(g1str=6, g2str=5, g3str=0, g1size=1.3, g2size=1.0, g3size=0.7, g1soft=3, g2soft=3, g3soft=3, th1=24, th2=64, th3=96, th4=160, lsb=false, lsb_in=false) Prefetch (SI_PhysicalCores ()) # for AviSynth+
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
18-Янв-22 21:56
(спустя 58 мин., ред. 18-Янв-22 21:56)
Аземар
Чего вы мучаетесь, скачайте XviD 4PSP 5.10.346 , выполните обновления со второго поста тамошней темы и подключите в фильтрации Anime magic
скрытый текст
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\apps\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\TIVTC.dll")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\SplineResize.dll") MPEG2Source("E:\Тесты\test.demuxed.index\test.demuxed.d2v", cpu=0, info=3) ConvertToYV12(interlaced = true)
TFM(order=1).TDecimate(hybrid=1) ###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\"
setmemorymax(1024) SetFilterMTMode("DEFAULT_MT_MODE", MT_MULTI_INSTANCE) LoadPlugin(XviD4PSPPluginsPath + "RGTools.dll")
LoadPlugin(XviD4PSPPluginsPath + "Sysinfo32.dll")
LoadPlugin(XviD4PSPPluginsPath + "masktools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "medianblur2.dll")
LoadPlugin(XviD4PSPPluginsPath + "variableblur.dll")
LoadPlugin(XviD4PSPPluginsPath + "dfttest.dll")
LoadPlugin(XviD4PSPPluginsPath + "mvtools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "nnedi3.dll")
LoadPlugin(XviD4PSPPluginsPath + "hqdn3d.dll")
LoadPlugin(XviD4PSPPluginsPath + "DeGrainMedian.dll")
LoadPlugin(XviD4PSPPluginsPath + "SangNom2.dll")
LoadPlugin(XviD4PSPPluginsPath + "fturn-26.dll")
LoadPlugin(XviD4PSPPluginsPath + "Toon-v1.1.dll")
LoadPlugin(XviD4PSPPluginsPath + "MaskTools.dll")
LoadPlugin(XviD4PSPPluginsPath + "Unfilter.dll")
LoadPlugin(XviD4PSPPluginsPath + "AddGrainC.dll")
LoadPlugin(XviD4PSPPluginsPath + "FastBlur.dll")
LoadPlugin(XviD4PSPPluginsPath + "awarpsharpMT.dll")
LoadPlugin(XviD4PSPPluginsPath + "dither.dll")
LoadPlugin(XviD4PSPPluginsPath + "TEdgeMask.dll")
LoadPlugin(XviD4PSPPluginsPath + "Colormatrix.dll")
LoadPlugin(XviD4PSPPluginsPath + "flash3kyuu_deband.dll")
Import(XviD4PSPPluginsPath + "LumaDB_v0.7.avsi")
Import(XviD4PSPPluginsPath + "GrainFactory3mod_v1.2.avsi")
Import(XviD4PSPPluginsPath + "Dither.avsi")
Import(XviD4PSPPluginsPath + "DfttestMC.avsi")
Import(XviD4PSPPluginsPath + "aWarpSharp4xx.avsi")
Import(XviD4PSPPluginsPath + "Zs_RF_Shared.avsi")
Import(XviD4PSPPluginsPath + "mt_xxpand_multi.avsi")
Import(XviD4PSPPluginsPath + "GrainFactoryLite_v1.2.avsi")
Import(XviD4PSPPluginsPath + "Dehalo_alpha_mt2.avsi")
Import(XviD4PSPPluginsPath + "FastLineDarkenMod.avsi")
Import(XviD4PSPPluginsPath + "FineDehalo.avsi")
Import(XviD4PSPPluginsPath + "YAHRmod.avsi")
Import(XviD4PSPPluginsPath + "aa.avs")
Import(XviD4PSPPluginsPath + "LSFmod.avsi") ChangeFPS(last,last,true) # initiate a small forward buffer # ColorMatrix(mode="Rec.601->Rec.709") source = last # ==== Создание необходимых масок =====
dclip = source.hqdn3d(20, lt=0, ct=0)
line_mask = dclip.mt_edge(mode="cartoon", thY1=10, thY2=10).mt_expand().mt_deflate()
edge_mask = dclip.mt_edge(mode="prewitt", thY1=9, thY2=9).mt_expand().mt_deflate()
hys_mask = mt_hysteresis(line_mask, edge_mask).mt_binarize(threshold=16) m_edge = source.mt_edge("sobel", 7, 20).mt_inflate()
m_aa = m_edge.mt_expand()
m_halo = m_aa.mt_expand().mt_lutxy(m_edge, "x y -") # ==== Создание клипов антиайлиазинга и Dehalo =====
aa_clp = source.aaSW(multipler=2.0,mtype="prewitt",aa=24,expnd=true,extype="square",showmask=false,threads=1)
dh_clp = aa_clp.FineDehalo(rx=2.4, ry=2.4, thmi=80, thma=128, thlimi=50, thlima=100, darkstr=0.0, brightstr=1.0, showmask=0, contra=0.0, excl=true).YAHRmask(expand=3, warpdepth=24)#, blur=2, useawarp4=true) # ====== Шумоподавитель ======
#denoise = source.DfttestMC(sigma=5, mdg=true, tbsize=1,lsb_in=false,lsb=false,threads=1)
denoise = source.DfttestMC(mc=2,sigma=5,dither=1,mdg=true,blksize=8,pel=2,mdgSAD=320,thSAD=400,thSCD1=400,thSCD2=116,dct=8,lsb_in=false,lsb=false,threads=1)
mt_merge(denoise, source, edge_mask, luma=true) flat = MaskedMerge(last, DfttestMC(sigma=1.5, mdg=true, dither=1, tbsize=1, lsb_in=false,lsb=false,threads=1), hys_mask) # ==== наложение клипов аа и dehalo на выходной клип после шумоподавления и дебандинга по своим маскам ====
non_halo = mt_merge(flat, aa_clp, m_aa)
mt_merge(non_halo, dh_clp, m_halo) # ==== Затемнение линий =====
FastLineDarkenMod4(strength=28,threshold=1, thinning=9,luma_cap=200)
#Toon(0.2)
aWarpSharp(depth=10)
sharpen(0.3) # ===== Добавление резкости ====
LSFmod(defaults="slow",preblur="dehalo_alpha_mt()", strength=120) # ==== DeBanding ====
GradFun3(thr=0.5, smode=0).F3kdb(range=15,Y=64, Cb=64, Cr=64, grainY=0, grainC=0, input_mode=0, output_depth=8, output_mode=0) # ===== Генератор зерна с регулировкой для сцен с разной степенью освещённости =====
GrainFL(g1str=6, g2str=5, g3str=0, g1size=1.3, g2size=1.0, g3size=0.7, g1soft=3, g2soft=3, g3soft=3, th1=24, th2=64, th3=96, th4=160, lsb=false, lsb_in=false) Prefetch (SI_PhysicalCores ()) # for AviSynth+ # Стандартный клип обработки аниме
###[FILTERING]### Spline144Resize(720, 408)
Или есть вариант более правильный https://rutr.life/forum/viewtopic.php?p=80788531#80788531
|
|
DD2D3
Стаж: 2 года 6 месяцев Сообщений: 4
|
DD2D3 ·
05-Май-22 22:52
(спустя 3 месяца 18 дней)
Помогите разобраться со скриптом AVS созданным в SVP 4 pro
скрытый текст
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\avss.dll")
DirectShowSource2("D:\Фильмы (Подготовка)\The Hunger Games\02. Голодные игры - И вспыхнет пламя (2013) [IMAX] BDRemux 1080p.mkv", fps=23.976, preroll=15, lavs="L3", lavd="L3hm3hc31hr7")
ConvertToYV12()
###[FILTERING]###
# This script was generated by SVP 4 Manager.
# Check https://www.svp-team.com for more details.
SetMemoryMax(2700)
global threads=7
LoadPlugin("C:\Program Files (x86)\SVP 4\plugins\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\SVP 4\plugins\svpflow2.dll")
SetFilterMTMode("DEFAULT_MT_MODE",2)
SetFilterMTMode("SVSuper",1)
SetFilterMTMode("SVAnalyse",1)
SetFilterMTMode("SVSmoothFps",1)
SetFilterMTMode("AvsFilterSource",3)
AvsFilterSource()
ConvertToYUV420()
ConvertBits(8)
global source_width = width
global source_height = height
global super_params = "{scale:{up:0},gpu:1,rc:true}"
global analyse_params = "{block:{w:8,overlap:0},main:{search:{coarse:{distance:-12,bad:{sad:2000,range:24}},type:2}},refine:[{thsad:250}]}"
global smoothfps_params = "{gpuid:11,gpu_qn:2,rate:{num:600000,den:10000,abs:true},algo:13,mask:{area:100},scene:{mode:0}}"
global demo_mode=0
global stereo_type=0
global nvof=0
########## BEGIN OF base.avs ##########
# This file is a part of SmoothVideo Project (SVP) ver.4
# This is NOT the full AVS script, all used variables are defined via
# JScript code that generates the full script text.
function interpolate(clip src)
{
# input_um - original frame in 4:2:0
# input_m - cropped and resized (if needed) frame
# input_m8 - input_m converted to 8-bit
input_um = src
input_m = input_um
input_m8 = input_m
nvof==0 ? eval("""
super=SVSuper(input_m8, super_params)
vectors=SVAnalyse(super, analyse_params, src=input_m8)
smooth=SVSmoothFps(input_m, super, vectors, smoothfps_params, mt=threads, src=input_um)
""") : eval("""
smooth=SVSmoothFps_NVOF(input_m, smoothfps_params, nvof_src=input_m8, mt=threads, src=input_um)
""")
return demo_mode==0 ? smooth : demo(input_m,smooth)
}
input=last
stereo_type==0 ? eval(""" interpolate(input)
""") : stereo_type==1 ? eval("""
lf = interpolate(input.crop(0,0,input.width/2,0))
rf = interpolate(input.crop(input.width/2,0,0,0))
StackHorizontal(lf, rf)
""") : stereo_type==2 ? Eval("""
lf = interpolate(input.crop(0,0,0,input.height/2))
rf = interpolate(input.crop(0,input.height/2,0,0))
StackVertical(lf, rf)""") : input
########### END OF base.avs ###########
Prefetch(threads)
###[FILTERING]###
AssumeFPS(60.000)
Возникает проблема с AvsFilterSource(), далее я его удаляю, но кодирование в выдает ошибку:
скрытый текст
avs [error]: System exception - Access Violation
(D:\Temp\0069.avs, line 60)
(D:\Temp\0069.avs, line 75)
ошибка связана с куском в скрипте
скрытый текст
input=last stereo_type==0 ? eval(""" interpolate(input)
""") : stereo_type==1 ? eval("""
lf = interpolate(input.crop(0,0,input.width/2,0))
rf = interpolate(input.crop(input.width/2,0,0,0))
StackHorizontal(lf, rf)
""") : stereo_type==2 ? Eval("""
lf = interpolate(input.crop(0,0,0,input.height/2))
rf = interpolate(input.crop(0,input.height/2,0,0))
StackVertical(lf, rf)""") : input
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
08-Май-22 09:08
(спустя 2 дня 10 часов, ред. 08-Май-22 09:08)
DD2D3 писал(а):
83088208ошибка связана с куском в скрипте
задать конкретное значение stereo_type=0 после строки input=last не пробовали?
DD2D3 писал(а):
83088208Возникает проблема с AvsFilterSource()
так вы уже тип его в скрипте выбрали, это DirectShowSource2, не лучший вариант для прогрессивного FullHD, я бы выбрал LWLibavVideoSource, подключив плагин LSMASHSource.dll. Строку в скрипте SetFilterMTMode("AvsFilterSource",3) надо сменить в вашем случае на SetFilterMTMode("DirectShowSource2",3) и поместить над строкой с DirectShowSource2.
Надеюсь вы собираетесь использовать уплавитель только для просмотра видео, а не для перекодирования с блендами на интерполированных кадрах?
|
|
DD2D3
Стаж: 2 года 6 месяцев Сообщений: 4
|
DD2D3 ·
08-Май-22 10:48
(спустя 1 час 39 мин.)
Tempter57 писал(а):
83097729
DD2D3 писал(а):
83088208ошибка связана с куском в скрипте
задать конкретное значение stereo_type=0 после строки input=last не пробовали?
не пробывал, так как в svp 3.1.7 проблем со скриптом не было
Tempter57 писал(а):
Надеюсь вы собираетесь использовать уплавитель только для просмотра видео, а не для перекодирования с блендами на интерполированных кадрах?
для создания рипов 60 фпс.
|
|
Tempter57
Стаж: 16 лет 1 месяц Сообщений: 4959
|
Tempter57 ·
08-Май-22 20:38
(спустя 9 часов, ред. 08-Май-22 20:38)
DD2D3 писал(а):
83098405global stereo_type=0
действительно сразу не увидел, что уже задано
Что до скрипта, то он вполне рабочий, специально открыл подобный в AvsPmod при установленном AviSynth+ x64 v.2.7.2 c его плагинами
скрытый текст
prefix="C:\Program Files (x86)\AviSynth+\"
AddAutoloadDir(prefix+"plugins64") setmemorymax(8000) SetFilterMTMode("MPEG2Source", 3) MPEG2Source("F:\Tests\test.demuxed.index\test.demuxed.d2v", cpu=0, info=3) SetFilterMTMode("DEFAULT_MT_MODE",2)
SetFilterMTMode("SVSuper",1)
SetFilterMTMode("SVAnalyse",1)
SetFilterMTMode("SVSmoothFps",1) ConvertToYV12(interlaced = true) TFM(order=1).TDecimate(hybrid=1)
spline64Resize(720,408,0,0,-0,-0) #ConvertToYUV420()
#ConvertBits(8)
global threads=4
global source_width = width
global source_height = height
global super_params = "{scale:{up:0},gpu:1,rc:true}"
global analyse_params = "{block:{w:8,overlap:0},main:{search:{coarse:{distance:-12,bad:{sad:2000,range:24}},type:2}},refine:[{thsad:250}]}"
global smoothfps_params = "{gpuid:11,gpu_qn:2,rate:{num:600000,den:10000,abs:true},algo:13,mask:{area:100},scene:{mode:0}}" global demo_mode=0
global stereo_type=0
global nvof=0 function interpolate(clip src)
{
# input_um - original frame in 4:2:0
# input_m - cropped and resized (if needed) frame
# input_m8 - input_m converted to 8-bit
input_um = src
input_m = input_um
input_m8 = input_m nvof==0 ? eval("""
super=SVSuper(input_m8, super_params)
vectors=SVAnalyse(super, analyse_params, src=input_m8)
smooth=SVSmoothFps(input_m, super, vectors, smoothfps_params, mt=threads, src=input_um)
""") : eval("""
smooth=SVSmoothFps_NVOF(input_m, smoothfps_params, nvof_src=input_m8, mt=threads, src=input_um)
""") return demo_mode==0 ? smooth : demo(input_m,smooth)
} input=last stereo_type==0 ? eval(""" interpolate(input)
""") : stereo_type==1 ? eval("""
lf = interpolate(input.crop(0,0,input.width/2,0))
rf = interpolate(input.crop(input.width/2,0,0,0))
StackHorizontal(lf, rf)
""") : stereo_type==2 ? Eval("""
lf = interpolate(input.crop(0,0,0,input.height/2))
rf = interpolate(input.crop(0,input.height/2,0,0))
StackVertical(lf, rf)""") : input ########### END OF base.avs ########### Prefetch(threads)
###[FILTERING]### AssumeFPS(60.000)
DD2D3 писал(а):
83098405для создания рипов 60 фпс.
довольно бредовая идея , потому что интерполированные кадры идут с блендами и данный скрипт никак их даже частично не гасит, как скрипты Yushko.avs или FrameRateConverter.avsi
|
|
DD2D3
Стаж: 2 года 6 месяцев Сообщений: 4
|
DD2D3 ·
09-Май-22 20:19
(спустя 23 часа)
Прескорбно, так как всегда использовал скрипт svp для кодирования, иногда Interframe2, но ничего изучим Yushko.avs или FrameRateConverter.avsi, будем пробывать
|
|
грейфер
Стаж: 15 лет 6 месяцев Сообщений: 264
|
грейфер ·
18-Авг-22 01:04
(спустя 3 месяца 8 дней)
Уважаемые коллеги, обращаюсь за помощью. Требуется открыть видеофайл с экшен-камеры MP4 avc1 в Avisynth.
Параметры файла
скрытый текст
Формат : MPEG-4
Профиль формата : Base Media / Version 2
Идентификатор кодека : mp42
Размер файла : 3,99 Гбайт
Продолжительность : 28 м.
Режим общего битрейта : Переменный
Общий поток : 20,3 Мбит/сек
Название фильма/Ещё : DEMO1
Дата кодирования : UTC 2022-03-18 13:02:51
Дата пометки : UTC 2022-03-18 13:02:51
Origin : NOVATEK Видео
Идентификатор : 1
Формат : AVC
Формат/Информация : Advanced Video Codec
Профиль формата : High@L5.1
Параметр CABAC формата : Да
Параметр ReFrames формата : 1 кадр
Параметр GOP формата : M=1, N=15
Идентификатор кодека : avc1
Идентификатор кодека/Информация : Advanced Video Coding
Продолжительность : 28 м.
Битрейт : 20,1 Мбит/сек
Ширина : 2560 пикселей
Высота : 1440 пикселей
Соотношение сторон : 16:9
Режим частоты кадров : Постоянный
Частота кадров : 30,000 кадров/сек
Цветовое пространство : YUV
Субдискретизация насыщенности : 4:2:0
Битовая глубина : 8 бит
Тип развёртки : Прогрессивная
Бит/(Пиксели*Кадры) : 0.181
Размер потока : 3,95 Гбайт (99%)
Язык : English
Дата кодирования : UTC 2022-03-18 13:02:51
Дата пометки : UTC 2022-03-18 13:02:51 Аудио
Идентификатор : 2
Формат : AAC
Формат/Информация : Advanced Audio Codec
Профиль формата : LC
Идентификатор кодека : 40
Продолжительность : 28 м.
Вид битрейта : Переменный
Битрейт : 112 Кбит/сек
Каналы : 1 канал
Расположение каналов : Front: C
Частота : 44,1 КГц
Метод сжатия : С потерями
Размер потока : 22,6 Мбайт (1%)
Язык : English
Дата кодирования : UTC 2022-03-18 13:02:51
Дата пометки : UTC 2022-03-18 13:02:51
mdhd_Duration : 1691992
Система Win 7.
Что интересно, этот тип файлов раньше открывался через DirectShowsource, сохранились скрипты, которые теперь не работают. Между этими событиями я снёс монтажку, в которой не работал, т.к. она мешала установить более старую (привычную) версию программы. Теперь я её вернул на место, но вот в путях кодеков что-то изменилось, и скрипт не заработал.
В плеерах файл открывается, но в XviD4PSP 5 уже нет.
Требуется что-то поставить в систему.
|
|
Мазизов
Стаж: 7 лет 5 месяцев Сообщений: 1129
|
Мазизов ·
18-Авг-22 18:06
(спустя 17 часов, ред. 18-Авг-22 18:06)
грейфер писал(а):
83513500В плеерах файл открывается, но в XviD4PSP 5 уже нет.
Если пользуетесь программой XviD4PSP 5, изучите и выполните требования этого поста https://rutr.life/forum/viewtopic.php?p=78877626#78877626 .
Всё будет нормально открываться и работать.
грейфер писал(а):
83513500Требуется что-то поставить в систему.
В этом нет необходимости, в XviD4PSP 5 достаточно внутренних декодеров, как для видео, так и для звука.
|
|
грейфер
Стаж: 15 лет 6 месяцев Сообщений: 264
|
грейфер ·
19-Авг-22 22:10
(спустя 1 день 4 часа)
Мазизов, спасибо за ссылку на интересную тему!
К сожалению, сейчас начинать всё с нуля и танцевать от печки возможности нет. Хотя бы потому, что в системе уже стоят разные монтажные программы со своими кодеками, и всё это как-то взаимодействует. И нет гарантии, что после кропотливого следования всем советам той темы, всё именно как надо заработает. Кроме того, мне надо работать с файлами именно в Ависинте напрямую, а не в том Ависинте, что внутри XviD4PSP 5.
|
|
Звездoпад
Стаж: 12 лет 6 месяцев Сообщений: 460
|
Звездoпад ·
11-Ноя-22 11:19
(спустя 2 месяца 22 дня)
Кто работает с MeGUI - как там начать рендеринг? Загрузил скрипт, ввёл параметры - где кнопка Старт? Вижу только две кнопки Куеуе под видео и аудио, наверху вкладка Куеуе, переходишь туда - там пустой список...
|
|
|