|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
28-Ноя-08 17:12
(16 лет 1 месяц назад)
RoKR писал(а):
А какие плагины грузить в данный скрипт?
Все эти плагины из анимеивтц. Они у меня тупо лежат в plugins
Цитата:
И какая последовательность действий с ним, чтобы сделать VFR?
Стоп, или это не VFR скрипт?
Задумчиво... может раз уж vfr воспользоваться услугами dedup?
|
|
Alex Kud
Стаж: 18 лет 2 месяца Сообщений: 138
|
Alex Kud ·
28-Ноя-08 17:42
(спустя 29 мин., ред. 28-Ноя-08 17:42)
eyetooth
А включенный Force Film и не может изменить % Video-участков. Он может их только "проредить" до частоты 23,976 fps. Но это фиговый выход. Тебе надо выявить те участки, где Video и те, где Film. А потом посмотреть, там где Video - это хардтелесин, тру интерлейс или тру прогрессивные 30 fps. И в зависимости от результата думать дальше. Если Video - это хардтелесин, то проще всего - сохраняешь все с Honor Pulldown Flags, а потом делаешь IVTC.
Я встречал такое как-то. Часть VOB'ов содержали софттелесин, а часть - хардтелесин. Издателям руки оторвать.
|
|
eyetooth
Стаж: 18 лет 9 месяцев Сообщений: 281
|
eyetooth ·
28-Ноя-08 18:08
(спустя 25 мин.)
Alex Kud
что-то всё сложно и ничего не понятно, лучше для начала почитать чего-нить побольше
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
28-Ноя-08 21:01
(спустя 2 часа 52 мин.)
eyetooth писал(а):
а что мне делать в dgindex, если у меня в ntsc последовательности и при Forced Film и при Honor Pulldown Flags параметр Video Type остается неизменным - film (60% ~ 97%) диск - первый сезон симпсонов в ntsc
хардтелесин. Можно попробовать тотже animeivtc
Animeivtc(mode=1,aa=3)
|
|
Alex Kud
Стаж: 18 лет 2 месяца Сообщений: 138
|
Alex Kud ·
28-Ноя-08 21:56
(спустя 54 мин.)
Pustovetov
А есть ли смысл в этом случае юзать AnimeIVTC?
Telecide(guide=1)
Decimate()
хуже справляется с хардтелесином?
|
|
eyetooth
Стаж: 18 лет 9 месяцев Сообщений: 281
|
eyetooth ·
28-Ноя-08 22:05
(спустя 9 мин.)
эм, прочитал в мануале что при хардтелесин будет
Цитата:
DGIndex tells you "something else than 100% Film" and you see a 3:2 pattern.
something else than 100% Film вижу, а что такое 3:2 pattern?
|
|
RoKR
Стаж: 18 лет 4 месяца Сообщений: 61
|
RoKR ·
28-Ноя-08 23:30
(спустя 1 час 25 мин., ред. 28-Ноя-08 23:30)
Tempter57 - использовал я этот скрипт, не помог он. Мало того, я прочитал это
скрытый текст
VFR decimation pass : Processing a hybrid clip requires two passes. The file you must use for your final encode/subsequent filtering must be the one generated by pass=2. 0 : Special pass to process your stream in mode=3, 4 or 6 without decimating by doing a lossless rendering pass. You can then reload the resulting file as avisource("yournewfile.avi").animeivtc(mode=7, pass=1, other vfr settings) to apply vfr decimation. It helps reducing overall processing time. (default for mode=3, 4 and 6)
1 : Open with vdub, file-run video analysis pass, wait until the end, close vdub. (default for mode 5 and 7) Using this for mode=3, 4 or 6's rendering pass combines the rendering pass and the analysis pass for VFR decimation.
2 : Reload the same script with pass=2 and do a lossless rendering pass. Encode. Then, take the "timecode.txt" file and add it as the timecode for the video stream in mkvmerge.
Сделал скрипт animeivtc(mode=7, pass=1), проганал его. Создался файл с таймкодом. Дальше изменил в скрипте pass на 2. Дальше не совсем понятно " do a lossless rendering pass. Encode."
Цитата:
Задумчиво... может раз уж vfr воспользоваться услугами dedup?
Не понял смысла фразы. Что, заюзать плагин dedup?
Кстати, DGIndex пишет, что эндинг целиком просто Interlaced, в описании к AnimeIVTC не нашёл, что делать в этом случае...
Каша в голове после всех этих плагинов и методов, которые я перепробовал за эти 2 дня
Кстати, скачал китайский рип - картинка там низкого качества, но с деинтерлейсом всё нормально. Ни подёргиваний, ни блендов, ничего
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
29-Ноя-08 00:41
(спустя 1 час 10 мин.)
Alex Kud писал(а):
Pustovetov
А есть ли смысл в этом случае юзать AnimeIVTC?
Telecide(guide=1)
Decimate()
хуже справляется с хардтелесином?
Думаю что в этом случае оно облажается Но конечно попробовать можно, почему бы и нет...
|
|
cyril.spb
Стаж: 17 лет 6 месяцев Сообщений: 506
|
cyril.spb ·
29-Ноя-08 01:18
(спустя 37 мин., ред. 29-Ноя-08 12:51)
Уважаемые специалисты, помогите разобраться с таким вот видео (сэмпл). Это старая анимешка на немецком двд, соответственно там интерлейсный пал 25 кадров. Мои попытки провести деинтерлейс приводят вот к чему
идут вертикальные полосы... Какой скрипт лучше использовать?
и еще... Можно ли сделать из него ntsc 23.976?
Помогите плиз.
UPD что-то я на ночь глядя тормозил, все нормально уже.
Скрипт
import("C:\Program Files\AviSynth 2.5\functions\VideoFunctions.avs")
loadplugin("C:\Program Files\AviSynth 2.5\plugins\dgdecode.dll")
loadplugin("C:\Program Files\AviSynth 2.5\plugins\leakkerneldeint.dll") MPEG2Source("C:\Program Files\eMule\Incoming\CF dvd1\s3.d2v", cpu=0) AutoYV12()
LeakKernelDeint(order=1, threshold=10, sharp=true, twoway=false, map=false, linked=false, debug=false)
LanczosResize(640,480)
ChangeFPS(59.94) # or ConvertFPS(59.94)
SeparateFields()
SelectEvery(4,0,3)
Weave() DeDot()
ColorMatrix(interlaced=true)
TFM(order=1).TDecimate(hybrid=1)
правильно сделал или нет? Придется ли аудио дорожку менять?
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
29-Ноя-08 02:01
(спустя 42 мин.)
RoKR писал(а):
Цитата:
Задумчиво... может раз уж vfr воспользоваться услугами dedup?
Не понял смысла фразы. Что, заюзать плагин dedup?
Ага. Попробовать сделать децимацию dedup'ом и получить vfr
Но можно конечно более обычным способом. Что-нить типа
скрытый текст
mpeg2source( "VTS_01_4.d2v",info=3)
ColorMatrix(hints=true,interlaced=true)
tempgaussmc_beta1mod(mt=true,edimode="eedi2",tr2=1)
p=Trim(0,xxx)
i=Trim(xxx+1,yyy)
p2=Trim(yyy+1,0)
pp=p.cdeblend(mthresh=0.3,omode=1).requestlinear(clim=30).tdecimate(1,3,5)
pp2=p2.cdeblend(mthresh=0.3,omode=1).requestlinear(clim=30).tdecimate(1,3,5)
pp+i+pp2
maa()
Сохраняем результат работы в lossless и пишем матрешечный timecodes.txt
скрытый текст
# timecode format v1
assume 59.94
0,xxx,23.976
xxx+1,yyy,59.94
yyy+1,end,23.976
ну а далее этот лосслесс можно проверить как оно (запаковав в матрешку с таймкодами), очистить от шума и пожать уже с потерями
Цитата:
Кстати, скачал китайский рип - картинка там низкого качества, но с деинтерлейсом всё нормально. Ни подёргиваний, ни блендов, ничего
Китайцев много. Может они там в ручную кадры сортировали подбирая чтобы ехало без рывков =) В рипе от EG используется segment linking и эндинг 59.94 fps
|
|
InSpiritUS
Стаж: 17 лет 6 месяцев Сообщений: 4
|
InSpiritUS ·
29-Ноя-08 10:24
(спустя 8 часов)
здрравствуйте всем.. никак не могу обработать поток , сжатый в vc-1 , перепробовал staxrip, megui (DGMPGIndex DGAVCIndex) , в ответ сообщения об отсутствиии потока...
megui требует мначала проиндексировать, а staxrip вообще ушел в себя на ночь, причем что то делал , хардом мигал даже.... потом просто впал в кому... памажиттеееее... (plz)
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
29-Ноя-08 14:10
(спустя 3 часа)
InSpiritUS писал(а):
здрравствуйте всем.. никак не могу обработать поток , сжатый в vc-1
Самый простой способ, череватый артефактами если будет декодиться через ffdshow, в avs написать
directshowsource("имя",audio=false,fps=xxx) если источник vfr то directshowsource("имя",audio=false,fps=xxx,convertfps=true)
Более сложный, но более верный использовать grafedit и
"1/ Установить WMV DMO приоритет для VC1 (ffdshow декодирует быстрее, но с артеФактами)
2/ Сделать для матрёшки с VC1 граф с открытым видео пином без рендера и всего остального лишнего
3/ Грузить в .avs Код:
directshowsource("movie.grf",video=true,audio=false,fps=???,framecount=???,converfps=false)4/ Если в VC1 vfr, то fps=29.97*4, convertfps=true"(с)shellgen
|
|
Alex Kud
Стаж: 18 лет 2 месяца Сообщений: 138
|
Alex Kud ·
30-Ноя-08 00:54
(спустя 10 часов, ред. 30-Ноя-08 00:54)
Намучился я с AnimeIVTC, но вроде как получил vfr mkv. Вот только мучают меня сомнения, действительно ли там vfr? MediaInfo и плееры показывают, что 29,97 fps. VirtualDub тоже.
Как можно проверить, с какой реально частотой кадров проигрываются те или иные участки? Ну или как-то еще можно удостовериться, что получился vfr?
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
30-Ноя-08 01:59
(спустя 1 час 5 мин.)
cyril.spb писал(а):
и еще... Можно ли сделать из него ntsc 23.976?
Можно. Только зачем? Хочется заняться растяжкой звука?
Вот что у меня получилось в первом приближении http://rapidshare.com/files/168692378/r2.mkv.html
самый простой вариант но с артефактами
скрытый текст
mpeg2source( "sample.d2v",info=3,cpu=4)
ColorMatrix(hints=true,interlaced=true)
edeintted = TDeint(edeint=TomsMoComp(-1,11,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
crop( 16, 0, 0, 0)
#тут давим шум
#и кропаем с ресайзом
более сложный и кропотливый
скрытый текст
mpeg2source( "sample.d2v",info=3,cpu=4)
ColorMatrix(hints=true,interlaced=true)
tempgaussmc_beta1mod(mt=true,edimode="eedi2",tr2=1)
maa()
crop( 16, 0, 0, 0)
#давим шум для лучшей детекции кадров подлежащих децимации
cdeblend(mthresh=0.3,omode=1).requestlinear(clim=30).tdecimate(1,3,6) #децимация
#начисто давим шум, кропаем, ресайзим итп
#так как деинтерлейс работает в данном случае очень медлено то лучше разбить на этапы с сохранением промежуточных результатов
# в lossless
|
|
cyril.spb
Стаж: 17 лет 6 месяцев Сообщений: 506
|
cyril.spb ·
30-Ноя-08 02:43
(спустя 43 мин.)
Pustovetov
Спасибо. C частотой кадров понял, не буду извращаться.
Попробую первый скрипт. А какой шумодав ты использовал? (результат явно получше чем мой fft3dgpu)
|
|
tophbandit
Стаж: 16 лет 5 месяцев Сообщений: 128
|
tophbandit ·
30-Ноя-08 09:33
(спустя 6 часов, ред. 30-Ноя-08 09:33)
-
Насчет обработки mkv/VFR
VFR mkv вроде бы уже умеет напрямую читать FFMS2 (FFMpegSource) 2.00 beta 3, например:
Код:
LoadPlugin("c:\Program Files\[video]\Aegisub\FFMS2.dll")
FFIndex("Wolf's Rain 05.mkv")
FFVideoSource("Wolf's Rain 05.mkv",-1)
другой вариант ( самый надежный) — дампить видеопоток в avi + таймкоды (их надо будет потом муксить в mkvmerge, получая на выходе такой же VFR/mkv)
Код:
c:\Program Files\[video]\matroskaSplitter\mkv2vfr.exe "input video" "output-avi.avi" "source-timecode.txt"
затем в avs: AviSource("output-avi.avi") и поехало
Если имеем mp4/vfr то не помню есть ли 1:1 avi-дамп с таймкодами для него, но всегда можно конвертнуть в mkv (mkvmerge), а потом как описано выше.
-
Насчет IVTC (tfm) + VFR
vfr с ivtc (процесс восстановления последовательной развертки, это строго говоря не деинтерлейс) делать из ntscdvd/120fps-avi можно в три прохода, т.к. первый даст правильную карту фреймов, используемую для сбора x264-статистики на втором и собственно для энкода на 3-м проходе. Имхо двумя проходами никак тут не обойтись, т.к. после tdecimate меняется карта фреймов, а значит, по-моему, статистика, собранная в том же проходе, что и первый tdecimate — бесполезна.
-
Код:
DGDecode_mpeg2source("dvd1.d2v")
tfm(mi=200,mode=7, pp=5, slow=2, micmatching=3, chroma=true, output="vidTFM.txt")
tdecimate(mode=4, hybrid=2, output="vidTDec.txt",nt=1,denoise=true)
-
Код:
DGDecode_mpeg2source("dvd1.d2v")
tfm(input="vidTFM.txt")
tdecimate(mode=5, hybrid=2, input="vidTDec.txt",tfmin="vidTFM.txt",mkvout="vidTimeC.txt", \
nt=1,denoise=true)
# используется статистика TFM/TDecimate, собранная на первом проходе для ускорения
-
Код:
DGDecode_mpeg2source("dvd1.d2v")
tfm(input="vidTFM.txt")
tdecimate(mode=5, hybrid=2, input="vidTDec.txt",tfmin="vidTFM.txt",mkvout="vidTimeC.txt", \
nt=1,denoise=true)
- На первом проходе фильтры не нужны в avs. У меня все три прохода гоняются типа-"батником" на AutoHotKey-скрипте, но можно и обычным батником или в MeGUI (возможно).
- vidTimeC.txt - таймкод, с которым надо будет муксить в mkvmerge.
- Денойз тут только внутренний для более корректной оценки tdecimate на шумных dvd.
- mi=200 - остаточный постпроцессинговый-деинтерлейс (для примера бленда pp=5), значит, почти полностью отключен, т.к. обычно стадия ivtc справляется с задачей.
- Иногда если остаются зубастые линии, полезно сменить метод оценки комбинга (metric=1), тут кстати у меня micmatching=2, но для криво сделанных dvd можно оставить на дефолтовом 1:
Код:
tfm(mi=200,mode=6, slow=2, chroma=true, metric=1, ubsco=false, micmatching=2)
-
Насчет шумодавов и диапазонов в avs
- сам я пользуюсь только темпоральными стабилизаторами шума + ручное исключение диапазонов, где появляются из-за него "госты".
- ОЧЕНЬ ПОЛЕЗНО для аниме или плоских мультов, особенно после шумодавов, добавлять статический (temp_avg=100) шумок, например скриптом GrainFactory3 или AddNoiseC версии 1.1 (не выше):
Код:
GrainFactory3(temp_avg=100,g1str=3,g2str=8,g3str=10)
#в коде скрипта GrainFactory3 надо поставить } в конце return( result )
для чего? чтобы не было препоганейших КВАДРАТОВ и бандинга в темных градиентно-подобных областях без собственной текстуры (вдобавок убранной шумодавом), а также на плоских заливках, вроде лиц на весь экран с легкой вариацией цвета в пару уровней.
- до кучи — диапазоны вещь мегаполезная иногда, имхо самый удобный способ для БОЛЬШОГО количества диапазонов вот такой (параметры FFT3DFilter просто для примера):
Код:
DGDecode_mpeg2source("dvd1.d2v")
#crop/trim/...
........
filter0=GrainFactory3(temp_avg=100,g1str=2,g2str=4,g3str=5)
filter1=FFT3DFilter(sigma=1,planes=4,bt=2).GrainFactory3(temp_avg=100,g1str=3,g2str=5,g3str=7)
filter2=FFT3DFilter(sigma=3,planes=4,bt=4).GrainFactory3(temp_avg=100,g1str=5,g2str=8,g3str=10)
ConditionalFilter(filter0, \
ConditionalFilter(filter1,filter2,"filterNum","==","1"), \
"filterNum","==","0")
ConditionalReader("filterFrames.txt","filterNum")
файл filterFrames.txt
Код:
TYPE INT
DEFAULT 0
R 0 154 1
R 635 661 2
R 2572 2651 1
|
|
Яр Бест
Стаж: 17 лет Сообщений: 34
|
Яр Бест ·
30-Ноя-08 12:16
(спустя 2 часа 42 мин.)
Помогите пожалуйста. При попытки отриповать фильм с помощью auto guardian knot 2.40 история заканчивается вот таким сообщением в логе
Цитата:
ИСКЛЮЧЕНИЕ:Cannot open file "E:\Скачанные торренты\DVD_Alvin_&_The_Chipmunks\agk_tmp\Элвин и бурундуки.idx". Не удается найти указанный файл
Так со всеми дисками. Если я не ошибаюсь, дело в субтитрах? Получается, что нельзя отриповать фильм с субтитрами? А как же их тогда вытянуть? Заранее благодарю, с уважением, Яр Бест.
|
|
crazy-cactus
Стаж: 17 лет Сообщений: 2813
|
crazy-cactus ·
30-Ноя-08 12:18
(спустя 2 мин.)
Яр Бест писал(а):
Если я не ошибаюсь, дело в субтитрах? Получается, что нельзя отриповать фильм с субтитрами?
Нельзя. Сам поначалу натыкался на эти грабли.
Яр Бест писал(а):
А как же их тогда вытянуть?
Вручную с помощью SubRip
|
|
Tempter57
Стаж: 16 лет 3 месяца Сообщений: 4963
|
Tempter57 ·
30-Ноя-08 12:30
(спустя 12 мин.)
tophbandit
Спасибо за столь подробную инструкцию.
|
|
Яр Бест
Стаж: 17 лет Сообщений: 34
|
Яр Бест ·
30-Ноя-08 12:32
(спустя 2 мин.)
crazy-cactus, ясно, спасибо
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
30-Ноя-08 12:50
(спустя 17 мин.)
cyril.spb как обычно, degrainmedian+FFT3DFilter+MVDegrainMulti(...refframes=3,thSAD=800...)
но практически с шумоподавлением я там не возился и прошелся шумодавами только чтобы правильно дубли детеклись дециматором. По идее надо бы thSADC увеличивать, а то вон на шлеме явно лишнее зеленое по граням проступает итп итд
|
|
Pustovetov
Стаж: 17 лет 2 месяца Сообщений: 4254
|
Pustovetov ·
30-Ноя-08 12:57
(спустя 7 мин.)
tophbandit
против бандинга существует еще специальный фильтрик - gradfun2db.dll
|
|
tophbandit
Стаж: 16 лет 5 месяцев Сообщений: 128
|
tophbandit ·
30-Ноя-08 13:22
(спустя 24 мин.)
гм, но gradfun2db по задумке это фильтр для просмотра, например в FFDShow/avisynth модуль. Т.е. автор говорит, что энкодер (x264) разрушает результат фильтра. Тогда как добавление статической матрицы шума (даже слабого) предотвращает x264 (h264) от чрезмерной аппроксимации градиентов и "почти" плоских областей. К тому же статика не сильно влияет на битрейт на билдах x264 с PsyRDO (по-моему от skystrife и др, с MeGUI такие идут), т.к. шум будет кодироваться "неточно", к тому же он не двигается, значит и векторов движения на цветовых плоскостях нет. И еще. Насколько я понял по описанию, gradfun2db размывает градиенты, а добавление легкого шума сохраняет детали позади шума, т.к. глазу матрица легкого статического шума не заметна, в отличие от потери деталей... эт непорядок.
|
|
Tempter57
Стаж: 16 лет 3 месяца Сообщений: 4963
|
Tempter57 ·
01-Дек-08 15:57
(спустя 1 день 2 часа, ред. 01-Дек-08 20:14)
RoKR
http://forum.doom9.org/showthread.php?t=143132 +5
Скинь thetoof 20 МБ, вместо 140 МБ, как он просит, уж больно хочется посмотреть, как лучший специалист по анимэ решит поставленную задачу.
|
|
cyril.spb
Стаж: 17 лет 6 месяцев Сообщений: 506
|
cyril.spb ·
02-Дек-08 22:59
(спустя 1 день 7 часов)
Спасибо за советы. Получился примерно такой скрипт:
скрытый текст
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrainSSE3.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\degrainmedian.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Repair.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\gradfun2db.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\FFT3dGPU.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\WarpSharp.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools-25.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Average.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mvtoolsMT.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\dfttest.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools.dll")
import("C:\Program Files\AviSynth 2.5\plugins\LimitedSharpenFaster Mod.avs")
import("C:\Program Files\AviSynth 2.5\plugins\YLevelsS.avs")
import("C:\Program Files\AviSynth 2.5\plugins\rainbow_smooth.avs")
import("C:\Program Files\AviSynth 2.5\plugins\aaf.avs") MPEG2Source("C:\Program Files\eMule\Incoming\CF dvd1\s4.d2v", info=3, cpu=4)
DeDot()
ColorMatrix(hints=true,interlaced=true)
edeintted = TDeint(edeint=TomsMoComp(-1,11,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
crop( 16, 0, 0, 0) YLevelsS(0,1.17,255,0,255)
ColorYUV(gain_v=5,gain_u=-4)
rainbow_smooth(2)
aaf(aam=-0.7,rep=true) source = last
mVectors=source.mvanalysemulti(refframes=2,pel=4,blksize=8,overlap=4,sharp=2,truemotion=true,idx=1)
maskp1 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,0)).UtoY()
maskp2 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,1), ysc=255).UtoY()
maskp3 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,2), ysc=255).UtoY()
maskp4 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,3)).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25).spline36resize(source.width, source.height)
smooth = source.dfttest(sigma=0.7)
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrainMulti(mvMulti=mVectors,refframes=2,thSAD=400,idx=2)
LSFmod(defaults="new", 130) Crop(2, 2, -10, -2)
LanczosResize(624,480)
выдает ажно 0,2 фпс
настройки кодека
--crf 22 --ref 6 --mixed-refs --bframes 6 --b-adapt 2 --b-pyramid --weightb --deblock -1:-1 --subme 8 --trellis 2 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct --me umh --threads 2 --thread-input --sar 1:1 --progress --no-psnr --no-ssim --output "D:\Temp\testfolder\2_2.mkv" "D:\Temp\testfolder\2_2.avs"
Можно как-нибудь ускорить, кроме апгрейда? (у меня C2D@2.8, 2Gb, 8600gt)
|
|
Tempter57
Стаж: 16 лет 3 месяца Сообщений: 4963
|
Tempter57 ·
03-Дек-08 01:23
(спустя 2 часа 23 мин., ред. 03-Дек-08 01:23)
cyril.spb
Переделай скрипт по методу shellgen
https://rutr.life/forum/viewtopic.php?p=15106079&rnd=1968174495
Скорость увеличится
скрытый текст
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrainSSE3.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\degrainmedian.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Repair.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\gradfun2db.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\FFT3dGPU.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\WarpSharp.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools-25.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Average.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mvtoolsMT.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\dfttest.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MT.dll")
import("C:\Program Files\AviSynth 2.5\plugins\MTstack.avsi")
import("C:\Program Files\AviSynth 2.5\plugins\LimitedSharpenFaster Mod.avs")
import("C:\Program Files\AviSynth 2.5\plugins\YLevelsS.avs")
import("C:\Program Files\AviSynth 2.5\plugins\rainbow_smooth.avs")
import("C:\Program Files\AviSynth 2.5\plugins\aaf.avs") MPEG2Source("C:\Program Files\eMule\Incoming\CF dvd1\s4.d2v", info=3, cpu=4)
DeDot()
ColorMatrix(hints=true,interlaced=true)
edeintted = TDeint(edeint=TomsMoComp(-1,11,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
crop( 16, 0, 0, 0) YLevelsS(0,1.17,255,0,255)
ColorYUV(gain_v=5,gain_u=-4)
rainbow_smooth(2)
aaf(aam=-0.7,rep=true) global idx1=10
MTstack("""
idx1=idx1+2
source=last
prefiltred = source.dfttest(sigma=0.6)
mVectors = prefiltred.MVAnalyseMulti(refframes=2,pel=2,plevel=2,search=2,searchparam=3,lambda=2000,blksize=16,overlap=4,truemotion=true,sharp=2,idx=idx1,Threads=1)
maskp1 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,0)).UtoY()
maskp2 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,1), ysc=255).UtoY()
maskp3 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,2), ysc=255).UtoY()
maskp4 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,3)).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25).spline36resize(source.width,source.height)
mt_merge(source, prefiltred, maskf)
MVDegrainMulti(mvMulti=mVectors,refframes=2,thSAD=320,idx=idx1+1,Threads=1)
LSFmod(defaults="new",130)
""",threads=2) # threads=4 Crop(2, 2, -10, -2)
LanczosResize(624,480)
и в кодеке поставь --subme 7, поскольку --subme 8 практически прироста качества не дает, только лишний проход делаешь
В скрипте не увидел функцию затемнения линий. ?
|
|
cyril.spb
Стаж: 17 лет 6 месяцев Сообщений: 506
|
cyril.spb ·
03-Дек-08 02:12
(спустя 48 мин., ред. 03-Дек-08 02:12)
Tempter57
Спасибо попробую. Ftoon() пришлось убрать, так как с ним картинка получается слишком "искуственной". Я так понимаю, что для старых мультфильмов его лучше не истользовать.
upd ~1.6-1.8 неплохой прирост!
|
|
Tempter57
Стаж: 16 лет 3 месяца Сообщений: 4963
|
Tempter57 ·
03-Дек-08 07:47
(спустя 5 часов, ред. 03-Дек-08 07:47)
cyril.spb
Попробуй открыть другую функцию затемнения линий FastLineDarkenMOD(thinning=0, strength=40), где strength-сила затемнения линий, поиграйся разными значениями. Пробуй и разые функции антиайлизинга,например, maa() .В скрипте AnimeIVTC этих функций несколько, прочитай скрипт из plugins и выбери, какая больше подходит.
|
|
cyril.spb
Стаж: 17 лет 6 месяцев Сообщений: 506
|
cyril.spb ·
03-Дек-08 08:44
(спустя 56 мин.)
Tempter57
Оставил дома обрабатывать с ftoon'ом и без, приду вечером посмотрю как в целом выглядит (до этого только скрины сравнивал в AvsP).
|
|
Nicko123
Стаж: 17 лет 5 месяцев Сообщений: 1248
|
Nicko123 ·
03-Дек-08 19:20
(спустя 10 часов, ред. 03-Дек-08 19:20)
cyril.spb писал(а):
Спасибо за советы. Получился примерно такой скрипт:
скрытый текст
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrainSSE3.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\degrainmedian.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Repair.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\gradfun2db.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\FFT3dGPU.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MaskTools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\WarpSharp.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools-25.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Average.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mvtoolsMT.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\dfttest.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools.dll")
import("C:\Program Files\AviSynth 2.5\plugins\LimitedSharpenFaster Mod.avs")
import("C:\Program Files\AviSynth 2.5\plugins\YLevelsS.avs")
import("C:\Program Files\AviSynth 2.5\plugins\rainbow_smooth.avs")
import("C:\Program Files\AviSynth 2.5\plugins\aaf.avs") MPEG2Source("C:\Program Files\eMule\Incoming\CF dvd1\s4.d2v", info=3, cpu=4)
DeDot()
ColorMatrix(hints=true,interlaced=true)
edeintted = TDeint(edeint=TomsMoComp(-1,11,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
crop( 16, 0, 0, 0) YLevelsS(0,1.17,255,0,255)
ColorYUV(gain_v=5,gain_u=-4)
rainbow_smooth(2)
aaf(aam=-0.7,rep=true) source = last
mVectors=source.mvanalysemulti(refframes=2,pel=4,blksize=8,overlap=4,sharp=2,truemotion=true,idx=1)
maskp1 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,0)).UtoY()
maskp2 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,1), ysc=255).UtoY()
maskp3 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,2), ysc=255).UtoY()
maskp4 = mvmask(kind=1, vectors=MVMultiExtract(mVectors,3)).UtoY()
maskf = average(maskp1, 0.25, maskp2, 0.25, maskp3, 0.25, maskp4, 0.25).spline36resize(source.width, source.height)
smooth = source.dfttest(sigma=0.7)
source2 = maskedmerge(source,smooth,maskf)
source2.MVDegrainMulti(mvMulti=mVectors,refframes=2,thSAD=400,idx=2)
LSFmod(defaults="new", 130) Crop(2, 2, -10, -2)
LanczosResize(624,480)
выдает ажно 0,2 фпс
настройки кодека
--crf 22 --ref 6 --mixed-refs --bframes 6 --b-adapt 2 --b-pyramid --weightb --deblock -1:-1 --subme 8 --trellis 2 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct --me umh --threads 2 --thread-input --sar 1:1 --progress --no-psnr --no-ssim --output "D:\Temp\testfolder\2_2.mkv" "D:\Temp\testfolder\2_2.avs"
Забавно, у тебя
Код:
edeintted = TDeint(edeint=TomsMoComp(-1,11,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
практически точно попал в мой предыдущий скрипт с AVC-форума
Код:
7.
edeintted = TDeint(edeint=TomsMoComp(-1,5,0),order=-1,mode=0,sharp=true,mtnmode=3,full=true,tryWeave=false,type=2,slow=2,emask=TMM(mode=0))
Yadifmod(mode=0,edeint=edeintted)
Хорошо что ты смог проверить этот скрипт на сложном смешанном материале, поскольку у меня до этого были источники только напрямую со спутников. Добавлю его пожалуй тоже в эту шпаргалку. https://rutr.life/forum/viewtopic.php?p=14843071#14843071
Его я впоследствии заменил на
Код:
8a.
Yadifmod(mode=0,edeint=TomsMoComp(-1,11,0))
Последний оказался быстрее и чуть лучше в плане деталей.
cyril.spb писал(а):
Можно как-нибудь ускорить, кроме апгрейда? (у меня C2D@2.8, 2Gb, 8600gt)
На счет ускорить не знаю (иногда минимальные настройки в фильтрах существенно влияют на скорость), но очень советую заменить
Код:
LanczosResize(624,480)
на
Код:
lanczosresize(624,480,taps=10)
у последнего качество работы выше в разы.
|
|
|