[не удалять] XviD4PSP - универсальный медиаконвертер [архив №6]

Страницы :   Пред.  1, 2, 3 ... 28, 29, 30 ... 98, 99, 100  След.
Тема закрыта
 

czuryk

Стаж: 17 лет 3 месяца

Сообщений: 82

czuryk · 23-Окт-13 10:02 (11 лет 1 месяц назад)

Tempter57
Спасибо большое за обновленные фильтры.
Проблема с новым компом решилась настройками многопоточности и жесмтким лимитированием выделяемой памяти - думаю в этом и была проблема, на той машинке всего 2 гига и 7-ка стоит.
Прогнал видео с настройками по умолчанию, (предварительно посмотрел что в фильтр добавлена строка AssumeFPS(50)), но видео получилось таким же удвоенным, если не сложно не посмотришь в чем может быть дело, заодно может быть обратишь внимание на еще какие то очевидные косяки.
скрытый текст
PLATFORM
------------------------------
OS Code: Microsoft Windows NT 6.1.7601 Service Pack 1
OS Name: Windows 7 Professional Service Pack 1 (x32)
Framework: 2.0.50727.5420 (v4.0)
AviSynth: AviSynth 2.60, build:Mar 9 2013 [13:28:27]
CPU Info: Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz (~3093), 4 core(s)
RAM Total: 1890Mb
Language: RUS (1251, ",")
SystemDrive: C:
XviD4PSP
------------------------------
Version: 5.10.330.0
Created: 19.03.2013 07:34:12
AppPath: C:\Service\XviD4PSP 5
TempPath: C:\Temp
FILES
------------------------------
source-nofilter-test.avi >
123.mkv
TASK
------------------------------
Format: MKV
Duration: 00:00:30:120 (753)
VideoDecoder: DirectShowSource
Resolution: 720x576
Aspect: 1.2500
VCodecPreset: x264 Q21 HQ Film
VEncodingMode: Quality
VideoCodec: YUV > x264
VideoBitrate: 165888 > Q21.0
Framerate: 25.000
SourceType: PROGRESSIVE
FieldOrder: UNKNOWN
AEncodingPreset: AAC-LC VBR 0.45
AudioCodec: PCM > AAC
AudioBitrate: 1536 > VBR
Samplerate: 48000
Channels: 2
Normalize: 100%
Accurate: 10%
Gain: 6.479
SCRIPT
------------------------------
Import("C:\Service\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Service\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
SetMemoryMax(300)
SetMTMode(5, 2)
DirectShowSource("C:\CapturedVideo\source-nofilter-test.avi", fps=25.000, convertfps=true)
ConvertToYV12()
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Service\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadPlugin(XviD4PSPPluginsPath + "avstp.dll")
LoadVirtualDubPlugin(XviD4PSPPluginsPath + "ccd.vdf", "ccd", 0)
LoadVirtualDubPlugin(XviD4PSPPluginsPath + "ACOBW.vdf", "ACOBW", 0)
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RepairSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "Depan.dll")
LoadPlugin(XviD4PSPPluginsPath + "TDeInt.dll")
LoadPlugin(XviD4PSPPluginsPath + "DepanEstimate.dll")
LoadPlugin(XviD4PSPPluginsPath + "mvtools2mod.dll")
LoadPlugin(XviD4PSPPluginsPath + "SmoothAdjust.dll")
LoadPlugin(XviD4PSPPluginsPath + "nnedi3.dll")
LoadPlugin(XviD4PSPPluginsPath + "HQdn3D.dll")
LoadPlugin(XviD4PSPPluginsPath + "awarpsharp2.dll")
LoadPlugin(XviD4PSPPluginsPath + "fft3dgpu.dll")
LoadPlugin(XviD4PSPPluginsPath + "fft3dfilter.dll")
LoadPlugin(XviD4PSPPluginsPath + "Deblock.dll")
LoadPlugin(XviD4PSPPluginsPath + "flash3kyuu_deband.dll")
LoadPlugin(XviD4PSPPluginsPath + "AddGrainC.dll")
LoadPlugin(XviD4PSPPluginsPath + "Gradfun2db.dll")
LoadPlugin(XviD4PSPPluginsPath + "awarpsharp2.dll")
LoadPlugin(XviD4PSPPluginsPath + "mt_masktools-26.dll")
LoadPlugin(XviD4PSPPluginsPath + "deflicker.dll")
LoadPlugin(XviD4PSPPluginsPath + "AutoGain.dll")
LoadPlugin(XviD4PSPPluginsPath + "dither.dll")
LoadPlugin(XviD4PSPPluginsPath + "GScript.dll")
LoadPlugin(XviD4PSPPluginsPath + "GRunt.dll")
LoadPlugin(XviD4PSPPluginsPath + "RT_Stats26.dll")
LoadPlugin(XviD4PSPPluginsPath + "MYStats.dll")
Import(XviD4PSPPluginsPath + "AWB_131013.avsi")
Import(XviD4PSPPluginsPath + "dither.avsi")
Import(XviD4PSPPluginsPath + "sbr.avs")
Import(XviD4PSPPluginsPath + "minblur.avs")
Import(XviD4PSPPluginsPath + "TemporalDegrain_ChromaMod V1.0.avs")
Import(XviD4PSPPluginsPath + "Gradfun2dbmod 1.5.avsi")
# setmemorymax(1024)
ConvertToYV12(interlaced=true)
# PAL = TopFieldFirst
assumetff()
# Make progressive
# Bob(0.0,1.0) # better bobbers are available
TDeInt(mode=1, order=-1, type=2, slow=2, mthreshL=5, mthreshC=5) # 0-BFF, 1-TFF
# ==== Автобаланс и удаление цветового шума и радужности изображения ====
ConvertToRGB32()
ccd(7,0) # удаление цветового шума и радужности изображения
ACOBW(30,0,0)
converttoyv12()
AutoGain(adjust_mode=1) # 0 = contrast expansion 1 = levels adjustement
# AWB2()
# ShiftCCT(6220) # подобрать значение цветовой температуры внутри скобок
/*
# Частичная стабилизация изображения
dxmax=32
dymax=24
source = last
# stab_reference = source.crop(dxmax*2,dymax*2,-dxmax*2,-dymax*2).tweak(cont=1.05).mt_binarize(threshold=80,upper=true,U=-128,V=-128)
# mdata = DePanEstimate(stab_reference,trust=3.0,dxmax=dxmax,dymax=dymax)
# DePanStabilize(source,data=mdata,cutoff=1.0,dxmax=dxmax,dymax=dymax,pixaspect=1.094,method=0,mirror=15) # or pixaspect=0.911 for NTSC
pre = source.removegrain(11).deflicker()
Super = pre.MSuper(pel=2)
vectors = MAnalyse(Super, isb=false, blksize=16, delta=1, search=5)
globalmotion = MDepan(pre, vectors, zoom=true, rot=false, pixaspect=1.094, error=15.0, info=false, \
wrong=10.0, zerow=0.05, range=2, thSCD1=400, thSCD2=130)
DepanStabilize(source, data=globalmotion, cutoff=1.0, damping=0.9, initzoom=1.0, addzoom=true, prev=2, next=2, mirror=15, blur=300, \
dxmax=dxmax, dymax=dymax, zoommax=1.05, rotmax=0.5, subpixel=2, pixaspect=1.094, fitlast=0, tzoom=3.0, info=false)
crop(dxmax,dymax,-dxmax,-dymax)
*/
# Удалить VHS colorshift (цветовой сдвиг)
Vshift=2 # 2 пикселя на ленте
Hshift=0
mergechroma(last.awarpsharp2(depth=16,thresh=255,blur=3).crop(Hshift,Vshift,0,0, align=true).addborders(0,0,Hshift,Vshift))
mt_edge("0 0 0 0 0 0 0 2 0 2",0,255,0,255,Y=2,U=3,V=3)
mt_edge("0 0 0 0 0 0 0 2 0 2",0,255,0,255,Y=2,U=3,V=3)
o = last
nnedi3(field=-2,nsize=2)
merge(selecteven,selectodd)
bb0 = last
D1 = mt_makediff(o,bb0,U=3,V=3)
D2 = mt_makediff(bb0,bb0.removegrain(20),U=3,V=3).mt_lut("x 128 - 2.51 * 128 +",U=3,V=3)
DD = D2.repair(d1,13)
bb0.mt_adddiff(DD,U=3,V=3)
# Deblock(quant=30).mt_lutxy(last,"x y < x 1 + x y > x 1 - x ? ?",U=3,V=3)
bb1 = last
mt_lutxy(bicubicresize(64*4,48*4).bicubicresize(width,height,1,0),"x 2 + y < x 1 - x 2 - y > x 1 + x ? ?",U=2,V=2)
mt_lutxy(bicubicresize(64*2,48*2).bicubicresize(width,height,1,0),"x 1 + y < x 1 - x 1 - y > x 1 + x ? ?",U=2,V=2)
mt_lutxy(bicubicresize(64*1,48*1).bicubicresize(width,height,1,0),"x y < x 1 - x y > x 1 + x ? ?",U=2,V=2)
mergeluma(bb1,0.49)
awarpsharp2(type=1,depth=4,thresh=144,blur=2)
x = removegrain(11)
xD = mt_lutxy(x,x.removegrain(4),"x y - abs 1 1.6 / ^ 4.51 * x y - x y - abs 1.9 + / * 128 +")
last.mt_adddiff(xD,U=2,V=2).mt_lutxy(x,"x y < x 1 + x y > x 1 - x ? ?",U=3,V=3)
grain = mt_lut(Y=-128,U=-128,V=-128).pointresize(512,400).addgrain(7).bicubicresize(width,height,-.4,.7)
last.mt_adddiff(grain,U=2,V=2)
chroma = false
planes = chroma?4:0
sup1 = bb0.sbr().MSuper(chroma=chroma)
sup2 = last.MSuper(levels=1,sharp=1,chroma=chroma)
bv2 = MAnalyse(sup1, isb=true, delta=2,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
bv1 = MAnalyse(sup1, isb=true, delta=1,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
fv1 = MAnalyse(sup1, isb=false,delta=1,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
fv2 = MAnalyse(sup1, isb=false,delta=2,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
last.mdegrain2(sup2,bv1,fv1,bv2,fv2,thSAD=321,thSCD1=300,thSCD2=104,limit=230,plane=planes)
# Letterbox(2, 10, 10, 16)
TemporalDegrain_ChromaMod(GPU=false, chroma=true, sigma=16, degrain=2)
# LEVELS
# SmoothCurve(Ycurve="0-0;16-0;235-255;255-255", Ucurve="0-0;16-0;240-255;255-255", Vcurve="0-0;16-0;240-255;255-255", interp=100, mode=100, dither=50, HQ=True)
# SmoothLevels(gamma=1.15, useopt=0) # 0 -automatic choice, 1- SSE2 CPU, 2 - Sandy Bridge CPU
SmoothLevels(gamma=1.0, useopt=0) # 0 -automatic choice, 1- SSE2 CPU, 2 - Sandy Bridge CPU
Gradfun2dbmod(thr=1.6,thrC=2.0,mode=2,str=1.2,temp=50)
# f3kdb(16, 64, 48, 48, 36, 16, dynamic_grain=true, dither_algo=3, input_mode=0, output_mode=0)
spline36resize(688, 512)
assumefps(50.00)
# ==== Reinterlace ====
# converttoyuy2(interlaced=false)
# SeparateFields().SelectEvery(4, 0, 3).Weave()
# Для обработки VHS
# Предупреждение: деинтерлейс, выставляемый XviD 4XvidPSP 5.0 убрать!!!
# Стабилизация изображения по умолчанию закрыта!!!
###[FILTERING]###
AmplifydB(6.479)
AUDIO ENCODING
------------------------------
Encoding audio to: C:\Temp\0003.m4a
AAC Q0,45 2ch 16bit 48000khz
neroAacEnc.exe: -ignorelength -q 0.45 -lc -if - -of "C:\Temp\0003.m4a"
VIDEO ENCODING
------------------------------
Encoding video to: C:\Temp\0003.264
x264 Q21.0 720x576 25.000fps (753 frames)
x264.exe: --crf 21.0 --ref 8 --deblock -1:-1 --direct auto --b-adapt 2 --trellis 2 --no-fast-pskip --psy-rd 1.0:0.1 --partitions all --me umh --rc-lookahead 50 --sar 1:1 --output "C:\Temp\0003.264" "C:\Temp\0003.avs"
avs [info]: 688x512p 1:1 @ 50/1 fps (cfr)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile High, level 3.1
x264 [info]: frame I:7 Avg QP:23.46 size: 38603
x264 [info]: frame P:386 Avg QP:25.83 size: 17957
x264 [info]: frame B:1113 Avg QP:29.43 size: 6514
x264 [info]: consecutive B-frames: 0.9% 1.5% 1.0% 96.7%
x264 [info]: mb I I16..4: 4.5% 79.5% 15.9%
x264 [info]: mb P I16..4: 1.0% 2.3% 0.2% P16..4: 53.4% 27.2% 14.1% 0.4% 0.0% skip: 1.3%
x264 [info]: mb B I16..4: 0.1% 0.0% 0.0% B16..8: 48.8% 13.3% 2.7% direct: 9.6% skip:25.5% L0:60.2% L1:31.5% BI: 8.3%
x264 [info]: 8x8 transform intra:67.2% inter:56.2%
x264 [info]: direct mvs spatial:99.7% temporal:0.3%
x264 [info]: coded y,uvDC,uvAC intra: 72.1% 75.0% 17.3% inter: 33.1% 36.3% 0.2%
x264 [info]: i16 v,h,dc,p: 18% 66% 4% 12%
x264 [info]: i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 15% 21% 25% 5% 7% 4% 7% 5% 11%
x264 [info]: i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 15% 35% 16% 5% 6% 5% 7% 5% 7%
x264 [info]: i8c dc,h,v,p: 46% 33% 13% 8%
x264 [info]: Weighted P-Frames: Y:15.3% UV:6.7%
x264 [info]: ref P L0: 38.6% 10.5% 20.3% 8.8% 7.9% 5.2% 5.2% 3.0% 0.4% 0.0%
x264 [info]: ref B L0: 88.2% 6.3% 2.1% 1.4% 0.9% 0.7% 0.4%
x264 [info]: ref B L1: 97.7% 2.3%
x264 [info]: kb/s:3838.46
x264 [total]: encoded 1506 frames, 1.72 fps, 3838.46 kb/s
MUXING
------------------------------
Video file: C:\Temp\0003.264
Audio file: C:\Temp\0003.m4a
Muxing to: C:\CapturedVideo\123.mkv
mkvmerge.exe: -o "C:\CapturedVideo\123.mkv" --engage no_cue_duration --engage no_cue_relative_position --default-duration 0:25.000fps -d 0 -A -S "C:\Temp\0003.264" -a 0 -D -S --no-chapters "C:\Temp\0003.m4a" --output-charset UTF-8
TIME
------------------------------
Общее время кодирования: 14 min 46 sec
Файл получился на: 14.21 mb
30 секунд получившегося видео (14мб)
PS в конфиге написано, что стабилизация изображения по умолчанию выключена - имеет ли смысл ее попробовать включить?
Спасибо!
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 23-Окт-13 11:33 (спустя 1 час 31 мин., ред. 23-Окт-13 11:33)

czuryk
Посмотрел ваше видео. Со стабилизацией изображения у вас всё в норме, видимо снимали со штатива, по крайней мере даже трясучки не обнаружил. Изображение идёт замедленным c 25 fps и прокрутка 50 fps не подключилась. Давайте поступим так:
1. Удалим в скрипте эти строки
Цитата:
ConvertToYV12(interlaced=true)
# PAL = TopFieldFirst
assumetff()
# Make progressive
# Bob(0.0,1.0) # better bobbers are available
TDeInt(mode=1, order=-1, type=2, slow=2, mthreshL=5, mthreshC=5) # 0-BFF, 1-TFF
и в конце assumefps(50.00) тоже можно закрыть.
2. В окне интерлейса конвертера выполним такие установки
скрытый текст
3. Выполните свой кроп и ресайз, не стоит применять тот, что в скрипте, поскольку там в процессе стабилизации изображения выполняется свой кроп.
4. Вам скрипт VHS Magic не подходит поскольку я наблюдаю строки нарезки или пропуски строк, характерные для VHS. Я бы рекомендовал вам другой фильтр, который устранит эти деффекты, это VHS RemoveDirt. Кстати там нет встроенного деинтерлейса, так что вы произведёте деинтерлейс, как указано на скрине.
P.S. Начал щёлкать по-кадрово и вижу, что у вас кадры-дубли. У вас часом уже не прогрессивный исходник 25 fps? Если это так, то никакого деинтерлейса не нужно. Только фильтровая обработка. Скиньте лучше сэмпл исходника. Если у вас интерлейсный VHS материал какого-то фильма, то там тоже не нужен боб-деинрлейс. Хватит и обычного TDeint c mode=0.
Поясняю почему так: у интерлейсных камкодеров каждое поле несёт свою информацию о движении и чтобы не утратить её и не видеть строб, применяется боб-деинтерлейс, где каждое поле интерполируется до полного кадра и таким образом сохраняется полная информация о движении. Если видеокамера прогрессивная, то деинтерлейс вообще не производится. Если фильм снимался на киноплёнку, то для показа на телевидении с ним проводится операция искусственного телесина (делают интерлейсным для показа по телевидению). В этом случае при создании рипа производится операция обратного телесина, и для PAL это простой деинтерлейс со смешиванием полей. Например, Yadif, Yadifmod, TDeint(mode=0), TomsMoComp. При этом не происходит увеличение количества кадров вдвое и не требуется ускоренная прокрутка изображения.
[Профиль]  [ЛС] 

Timosha-89

Стаж: 16 лет 2 месяца

Сообщений: 152


Timosha-89 · 23-Окт-13 13:37 (спустя 2 часа 4 мин., ред. 23-Окт-13 13:37)

Подскажите для чего в стабилизаторе tweak, аж 2 раза?
скрытый текст
# Частичная стабилизация изображения
dxmax = 32
dymax = 24
source = last
stab_reference = source.crop(dxmax*2,dymax*2,-dxmax*2,-dymax*2).tweak(cont=1.05).mt_binarize(threshold=80,upper=true,U=-128,V=-128)
mdata = DePanEstimate(stab_reference,trust=3.0,dxmax=dxmax,dymax=dymax)
DePanStabilize(source,data=mdata,cutoff=1.0,dxmax=dxmax,dymax=dymax,pixaspect=1.094,method=0,mirror=15) # or pixaspect=0.911 for NTSC
crop(dxmax,dymax,-dxmax,-dymax).tweak(sat=1.05)
Кроп то понятно, а вот ресайз что такое?
[Профиль]  [ЛС] 

semiramida1970

Top Seed 03* 160r

Стаж: 14 лет 10 месяцев

Сообщений: 4949

semiramida1970 · 23-Окт-13 13:51 (спустя 13 мин.)

Timosha-89
Ресайз - геометрическое изменение размеров изображения.
[Профиль]  [ЛС] 

czuryk

Стаж: 17 лет 3 месяца

Сообщений: 82

czuryk · 23-Окт-13 13:54 (спустя 2 мин., ред. 23-Окт-13 16:06)

Tempter57
Спасибо за информацию, попробую пройтись VHS RemoveDirt фильтром. О результатах отпишусь отдельно.
Вот семпл исходника, 4 секунды максимального действия. Размер 40мб в Rar-е.
На мой взгляд видео интерлейстное (то есть идет строчками при движении).
Источник это любительская запись, выполненная более 20 лет назад (снимал соответственно не я - я тогда еще в школу ходил) на достаточно простую камеру, запись с камеры была переписана на обычную VHS кассету и пролежала 20 лет, но до сих пор жива.
Оцифрована кассета мною неделю назад с помощью 6-головочного видео-магнитофона и одной из последних плат оцифровки - beholder. Записано было штатным софтом со всеми настройками по умолчанию, все фильтры выключены, захват в несжатом виде.
Окно настроек софта видео захвата - прилагаю.
скрытый текст
Не знаю, возможно нужно было что то поменять в настройках перед захватом, но я решил что исправлять видео лучше в постпроцессинге.
UPD:
Сделал семпл с RemoveDirt, с вашими настройками deinterlace вроде не плохо, но только не пойму почему 50 кадров то?
И еще проблема, на второй машине, почему то при выборе фильтра RemoveDirt появляется такая ошибка:
скрытый текст
Я поставил все из программ busoti4444, уж даже ума не предложу, что еще нужно для этого фильтра. Поиск по гуглу ничего не дал.
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 23-Окт-13 16:15 (спустя 2 часа 20 мин.)

czuryk
Вашему исходнику боб-деинтерлейс не нужен, но простой не пойдёт: наблюдаю эффект лесенки на швартовых канатах. Подходит TDeIntEdi или QTGMC(Preset="Fast", Sharpness=0.5, FPSDivisor=2, edithreads=1). Пресет VHS RemoveDirt тоже требует подстройки ибо очень велика радужность клипа, стоит также увеличить значения thSAD и limit, что-то типа такого:
скрытый текст
Import("C:\Program Files\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
Import("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\QTGMC.avs")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\mvtools2.dll")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\RemoveGrainSSE2.dll")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\RepairSSE2.dll")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\mt_masktools-26.dll")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\fft3dfilter.dll")
#LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\VerticalCleaner.dll")
LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\nnedi3.dll")
#LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\EEDI3.dll")
#LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\EEDI2.dll")
LoadCPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\yadif.dll")
#LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\TDeint.dll")
#LoadPlugin("C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\AddGrainC.dll")
SetMemoryMax(680)
SetMTMode(3, 2)
AVISource("C:\Users\Александр\Downloads\sample_uncompressed\sample_uncompressed.avi")
SetMTMode(2)
AmplifydB(7.050)
ConvertToYV12(interlaced = true)
QTGMC(Preset="Fast", Sharpness=0.5, FPSDivisor=2, edithreads=1)
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadVirtualDubPlugin(XviD4PSPPluginsPath + "ccd.vdf", "ccd", 0)
LoadVirtualDubPlugin(XviD4PSPPluginsPath + "ACOBW.vdf", "ACOBW", 0)
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainTSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RemoveDirt.dll")
LoadPlugin(XviD4PSPPluginsPath + "RepairSSE3.dll")
LoadPlugin(XviD4PSPPluginsPath + "Warpsharp.dll")
LoadPlugin(XviD4PSPPluginsPath + "mvtools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "Deblock.dll")
LoadPlugin(XviD4PSPPluginsPath + "DctFilter.dll")
LoadPlugin(XviD4PSPPluginsPath + "medianblur.dll")
LoadPlugin(XviD4PSPPluginsPath + "mt_masktools-26.dll")
Import(XviD4PSPPluginsPath + "Deblock_QED_MT2.avs")
LoadPlugin(XviD4PSPPluginsPath + "deen.dll")
LoadPlugin(XviD4PSPPluginsPath + "fft3dfilter.dll")
LoadPlugin(XviD4PSPPluginsPath + "fft3dgpu.dll")
LoadPlugin(XviD4PSPPluginsPath + "awarpsharp2.dll")
Import(XviD4PSPPluginsPath + "focus.avs")
Import(XviD4PSPPluginsPath + "minblur.avs")
LoadPlugin(XviD4PSPPluginsPath + "AddGrainC.dll")
LoadPlugin(XviD4PSPPluginsPath + "Gradfun2DB.dll")
Import(XviD4PSPPluginsPath + "deVCR.avs")
Import(XviD4PSPPluginsPath + "RemoveColorBleeding.avs")
Import(XviD4PSPPluginsPath + "RemoveDirtMC.avs")
Import(XviD4PSPPluginsPath + "LimitedSharpenFaster.avs")
Import(XviD4PSPPluginsPath + "Gradfun2dbmod 1.5.avsi")
# setmemorymax(640)
ColorYUV(gain_y=0,cont_y=0,cont_u=0,cont_v=0,gain_v=0,gain_u=-0,off_y=1,off_u=-0,off_v=-0) # коррекция яркости при кодировании XviD
# ==== Подавление цветового шума и радужности изображения ====
# setmtmode(5)
# fft3dgpu(bw=32,bh=32,ow=16,oh=16,bt=1,sigma=2.5,sigma2=1.75,sigma3=8.0,sigma4=2.0,plane=3,sharpen=0.3) # вариант 1
# setmtmode(2)
ConvertToRGB32().ccd(30,0) # вариант 2
ACOBW(30,0,0) # автобаланс
# ==== удаление белых и чёрных стрелок VHS ====
# ConvertToYUY2().DePulse(h=180, l=60, d=30, debug=false)
ConvertToYV12()
# Удалить Colorbleeding (размытость цветовых контуров)
#RemoveColorBleeding()
# ==== Устранение VHS цветового сдвига (colorshift), требует ручной подстройки ====
Vshift=2 # 2 пикселя на ленте
Hshift=0
mergechroma(last.crop(Hshift,Vshift,0,0, align=true).addborders(0,0,Hshift,Vshift))
# ==== Deblocking ====
# Deblock_QED(uv=3) # подключить при блочности исходника
# ==== Многокаскадный фильтр ремонта горизонтальных линий затиров VHS ====
deVCR(30).deVCR(0)
# ==== Ремонт полосы нарезки и наложение её на исходник ====
#source = last
#filtered = source.RemoveDirtMC(false,10).RemoveDirt().RemoveDust(3)
#top = filtered.crop(0,300,0,-144,true) # где в данном случае 300-высота в клипе выше полосы нарезки,-160 -высота в клипе ниже линии нарезки приведены для примера
#Overlay(source,top,y=300).tweak(sat=1.05) # привязку сопоставить с кропом сверху
# ==== Двухкаскадный временнОй и пространственно-временнОй шумоподавитеь ====
rdr = last
psup = rdr.RemoveDirt().MSuper(pel=2, sharp=2, rfilter=4) # закрыть при ремонте полосы нарезки
# psup = filtered.MSuper(pel=2, sharp=2, rfilter=4) # открыть при ремонте полосы нарезки
rsup = rdr.MSuper(pel=2, sharp=2, rfilter=2, levels=1)
vb2 = MAnalyse(psup, isb=true, truemotion=false, delta=2, blksize=16, overlap=4, dct=5)
vb1 = MAnalyse(psup, isb=true, truemotion=false, delta=1, blksize=16, overlap=4, dct=5)
vf1 = MAnalyse(psup,isb=false, truemotion=false, delta=1, blksize=16, overlap=4, dct=5)
vf2 = MAnalyse(psup,isb=false, truemotion=false, delta=2, blksize=16, overlap=4, dct=5)
den = rdr.MDegrain2(rsup,vb1,vf1,vb2,vf2,thSAD=400,thSCD1=450,thSCD2=125,limit=230,plane=4)
dsup = den.MSuper(pel=2,levels=1,chroma=true)
cf2 = MCompensate(den, dsup, vf2, thSCD1=500)
cf1 = MCompensate(den, dsup, vf1, thSCD1=500)
cb1 = MCompensate(den, dsup, vb1, thSCD1=500)
cb2 = MCompensate(den, dsup, vb2, thSCD1=500)
interleave(cb2, cb1, den, cf1, cf2)
MedianblurT(0,0,0,1)
SelectEvery(5,2)
# MergeLuma(deen("a2d",3,0,12),\
# fft3dfilter(wintype=1,bt=3,bw=32,bh=32,ow=16,oh=16,degrid=1,sigma=1.5,plane=0))
# ==== Sharpening ====
Sclp = last.LimitedSharpenfaster(ss_x=2.0,ss_y=2.0,smode=3,strength=170)
Tmax = rdr.mt_logic(cf1,"max",U=1,V=1).mt_logic(cb1,"max",U=1,V=1)
Tmin = rdr.mt_logic(cf1,"min",U=1,V=1).mt_logic(cb1,"min",U=1,V=1)
sharp =Sclp.mt_clamp(Tmax, Tmin, 2, 2, U=1, V=1)
focus(sharp, sharp.width, sharp.height)
# Дебандинг
GradFun2DBmod(thr=1.4,thrC=1.6,mode=2,str=1.0,strC=0.0,temp=50,adapt=64)
# ==== Reinterlace ====
# converttoyuy2(interlaced=false)
# SeparateFields().SelectEvery(4, 0, 3).Weave()
# Назначение:для обработки старых проблемных DVD
# Тип предварительного шумоподавителя: CamCD, DePulse, blur, RemoveDirtMC, RemoveDirt и RemoveDust
# Тип основного шумоподавителя: на основе векторного анализа оценки движения на MDegrain2+ MCompensate c MedianblurT
# Тип шарпера: LimitedSharpenfaster
# наличие фильтра DeBanding: включен
# Скорость обработки: медленная
###[FILTERING]###
Crop(16, 4, -18, -14)
Spline36Resize(672, 544)
Только вот стоит открыть ещё строки с Ремонт полосы нарезки и наложение её на исходник, там необходима подстройка под ваш клип значений аля 300 и -144, чтобы они накрыли две полосы нарезки на вашем клипе. Можно в принципе увеличить значение MedianblurT(0,0,0,2), но получится мутноватее.
[Профиль]  [ЛС] 

Spiner88

Стаж: 18 лет

Сообщений: 46


Spiner88 · 23-Окт-13 23:25 (спустя 7 часов, ред. 23-Окт-13 23:25)

Попробовал сейчас VSH Magic из нового архива. Скорость обработки ну очень медленная. Разогналось пока до 0.13 фпс. Это нормально вообще? Баланс белого вроде подобрал корректно. Сейчас пробую кодировать семпл, но даже 25сек. видео кодируется около двух часов. Сложно представить сколько будет кодироваться весь фильм. Проц Phenom шестиядерный на 3.3Ггц. Грузит в среднем на 38%.
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 00:07 (спустя 41 мин., ред. 24-Окт-13 00:07)

Spiner88 писал(а):
61408184Попробовал сейчас VSH Magic из нового архива. Скорость обработки ну очень медленная. Разогналось пока до 0.13 фпс.
Скрипт очень тяжёлый, но у меня даже с подключенной стабилизацией скорость 4 fps с GPU=false в TemporalDegrain_ChromaMod и 4,5 fps с GPU=true. Пресет практически не изменился, добавлены только AWB2, ShiftCCT (закрыты оба по умолчанию) и Autogain.
[Профиль]  [ЛС] 

Spiner88

Стаж: 18 лет

Сообщений: 46


Spiner88 · 24-Окт-13 02:19 (спустя 2 часа 12 мин., ред. 24-Окт-13 02:19)

Tempter57
Закончилось сейчас кодировать. Видео получилось дерганное, с артефактами. Может в скрипте какие-то ошибки? Также почему-то при применении скрипта удваивается число кадров. Так и должно быть?
imgeorgest
Почитал основы, которые вы мне скинули но все равно не получается применить ShiftCCT к разным интервалам времени. Пробовал в разных местах и по разному прописывал, во всех случаях выкидывает с ошибкой.
Можете на примере скрипта показать где и как это прописывать?
скрытый текст
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadPlugin(XviD4PSPPluginsPath + "GScript.dll")
LoadPlugin(XviD4PSPPluginsPath + "GRunt.dll")
LoadPlugin(XviD4PSPPluginsPath + "RT_Stats26.dll")
LoadPlugin(XviD4PSPPluginsPath + "dither.dll")
LoadPlugin(XviD4PSPPluginsPath + "mt_masktools-26.dll")
Import(XviD4PSPPluginsPath + "AWB.avsi")
Import(XviD4PSPPluginsPath + "dither.avsi")
ShiftCCT(6400) # подобрать значение цветовой температуры внутри скобок
###[FILTERING]###
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 07:21 (спустя 5 часов, ред. 24-Окт-13 07:21)

Spiner88
Показуйте свои скрипты, тот что вы дали сейчас imgeorgest даже на скрипт не похож поскольку вы не удосужились подключить видео. Я вам дал пресет, который вы были должны поместить в папку filtering с именем ShiftCCT.avs, а затем отрыть своё видео и подключить ShiftCCT в ФИЛЬТРАЦИИ. Пресет далеко не скрипт. Конвертор только на основе подключаемого пресета фильтрации формирует скрипт автоматически.
Вообще стремитесь выложить короткий сэмпл исходника, чтобы вам помогли... Дергание туда-сюда может быть от того, что вы не смотрите даже данные MediaInfo своего исходника относительно того какое поле идёт первым и не изменяете его в скрипте.
[Профиль]  [ЛС] 

doogler

Стаж: 15 лет 8 месяцев

Сообщений: 587


doogler · 24-Окт-13 08:06 (спустя 45 мин.)

Добрый день !
Не подскажите правильный деинтерлейс для такого видеоряда ("ёлочка" на полосе автобуса и на стволе ружья):
скрытый текст
Исходник https://rutr.life/forum/viewtopic.php?t=331926 - VTS_03_2.VOB с первого диска или отрезанный фрагмент 22 Мб ([url=http://www56. СПАМ ).
И еще, вопрос. Кодирую однопроходно Xvid с квантизатором 3 (Min I,P,B - 2,2,3). Получается лучше двухпроходного.
Но, выходной файл всегда чуть меньше допустимых для раздачи на трекере. Есть ли какая-нибудь хитрость для поднятия битрейта (небольшого увеличения размера на 20-50 Мб , тем более, что под конец кодирования квантизатор 3 имеет тенденцию уменьшать битрейт, вне зависимости от сложности последних сцен видеоряда.
Заранее благодарю за помощь или подсказки.
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 09:07 (спустя 1 час 1 мин., ред. 24-Окт-13 09:07)

doogler
Обычно применяется деинтерлейс QTGMC(preset="Fast", sharpness=0.4, FPSDivisor=2) или выше. Но ваш DVD прогрессивный и к нему надо применять антиайлиазинг, выбирайте какой более подойдёт.
Размер можно увеличить по разному: более резкий ресайзер, применение MPEG или костумной матрицы квантования XviD, изменение значений -bquant_ratio -bquant_offset , например, максимально до -bquant_ratio 100 -bquant_offset 0 или вообще полный отказ от b-frames.
[Профиль]  [ЛС] 

doogler

Стаж: 15 лет 8 месяцев

Сообщений: 587


doogler · 24-Окт-13 09:29 (спустя 21 мин.)

Tempter57
Большое спасибо. Буду пробовать.
Странно, что до сих пор нет рипа с этого 13 Гб ДВД, не унаследовавшего его дефекты дрожания картинки, "ёлочек" и зерна вокруг контуров.
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 10:20 (спустя 50 мин., ред. 24-Окт-13 10:20)

doogler
Пробуйте, но где-то там далеко, в глубине души чувствую, что без
Код:
w=width(last)
h=height(last)
TurnLeft().EEDI3().TurnRight().EEDI3().spline36resize(w,h)
не победить, да и шумов и прочих артефактов многовато, подключайте DVD_SAT QTGMC в варианте 3 с этим антиайлиазингом
О тормознутости EEDI3, надеюсь, слышали. Поэтому вам надо просмотреть весь фильм покадрово и подобный антиайлиазинг подключить только к кадрам, где это действительно необходимо, что-то вроде этого только со своими значениями кадров:
скрытый текст
w=width(last)
h=height(last)
aa_clip = TurnLeft().EEDI3().TurnRight().EEDI3().spline36resize(w,h)
ReplaceFramesSimple(last, aa_clip, mappings="[885 925] [1126 1224] [1295 1341] [1423 1449] [1734 1764] [2458 2500] [3024 3215] [5155 5458] [5498 6098] [6217 6267] [6700 6789] [6940 7038] [7338 7351] [7542 7612] [8097 8185] [8210 8341] [8541 8671] [8720 8779] [9008 9259] [9626 9831] [10279 10325] [9961 10021] [10652 10677] [10788 11005] [11306 11370] [11773 12159] [12219 12279] [12304 12411] [12533 12623] [12884 12919] [13275 13309] [13350 13589] [13632 13679] [13872 14025] [14049 14290] [14301 14489] [14532 14555] [14607 14702] [14775 14822] [14868 14894] [15220 15302] [15550 15679] [15778 15789] [15871 15924] [15972 16043] [16171 16366] [16390 16499] [16539 16687] [16732 16869] [16918 17205] [17254 17337] [17386 17470] [17542 17733] [17879 18009] [18155 18207] [18247 18310] [18454 18649] [18698 18809] [18943 19228] [19348 19448] [19534 19920] [19968 20037] [20849 21008] [21211 21701] [21822 22172] [22408 22452] [22550 23021] [23203 23346] [23437 23468] [23481 23503] [23994 24415] [24476 24728] [24756 24803] [24885 24985] [25147 25517] [25669 25927] [26012 26035] [26084 26131] [26461 26803] [26892 26982] [27046 27150] [27223 27252] [27398 27952] [27969 27980] [27990 28002] [28081 28129] [28191 28249] [28382 28382] [28441 28818] [28841 28914] [29022 29052] [29069 29073] [29094 29133] [29192 29380] [29417 29561] [29568 29577] [29584 29621] [29836 29884] [30029 30075] [30695 30790] [30910 31614] [31707 31797] [32012 32090] [32235 32282] [32334 32705] [32790 32861] [33133 33228] [33435 33534] [33701 34036] [34147 34483] [34593 34933] [35054 35397] [35959 36116] [36164 36399]")
[Профиль]  [ЛС] 

doogler

Стаж: 15 лет 8 месяцев

Сообщений: 587


doogler · 24-Окт-13 10:56 (спустя 36 мин.)

Tempter57
Спасибо. DVD_SAT QTGMC похоже неплохо сглаживает картинку - убирает многие артефакты.
Tempter57 писал(а):
61411501DVD_SAT QTGMC в варианте 3
Только вариант 3 не могу найти в подменю. Может это в скрипте SLMode=2 изменить на SLMode=3 ?
EEDI3 тоже не нашел. Вписать как скрипт ?
[Профиль]  [ЛС] 

pkirkin

Стаж: 15 лет 6 месяцев

Сообщений: 62


pkirkin · 24-Окт-13 10:58 (спустя 1 мин., ред. 24-Окт-13 11:03)

Прошу помощи. Обновил прогу по всем правилам, приведенным выше. Установил новые фильтры и плагины, переустановил Ависинт, установил все программы busoti4444. Установил многопоточность по инструкции. Пробую кодировать DVD. Комп загружен по всем потокам на 85%. Начинает кодироваться нормально, но в какой-то произвольный момент процесс кодирования останавливается. Начинаю кодировать заново, повторяется тоже самое, но в другой момент времени. И так несколько раз. Переустановил прогу - фильм кодировался дольше, но все равно процесс остановился. Раньше, до обновления, такого не встречал. Подскажите, что нужно делать?
скрытый текст
PLATFORM
------------------------------
OS Code: Microsoft Windows NT 6.1.7601 Service Pack 1
OS Name: Windows 7 Home Basic Service Pack 1 (x64)
Framework: 2.0.50727.5472 (v4.0)
AviSynth: AviSynth 2.60, build:Sep 28 2013 [15:09:12]
CPU Info: Intel(R) Core(TM) i7-3610QM CPU @ 2.30GHz (~2294), 8 core(s)
RAM Total: 6029Mb
Language: RUS (1251, ",")
SystemDrive: C:
XviD4PSP
------------------------------
Version: 5.10.330.0
Created: 19.03.2013 07:34:12
AppPath: C:\Program Files (x86)\XviD4PSP 5
TempPath: D:\Temp
FILES
------------------------------
VTS_01_1.VOB >
VTS_01_2.VOB >
VTS_01_3.VOB >
бубновский_T01.mkv
TASK
------------------------------
Format: MKV
Duration: 01:18:40:840 (118021)
VideoDecoder: MPEG2Source
Resolution: 720x576 > 720x536
Aspect: 1.3427 > 1.3433
VCodecPreset: x264 Q18 Custom
VEncodingMode: Quality
VideoCodec: MPEG2 > x264
VideoBitrate: 4030 > Q18.0
Framerate: 25.000
SourceType: INTERLACED
FieldOrder: TFF
Deinterlacer: Yadif
AudioDecoder: NicAC3Source
AEncodingPreset: Copy
AudioCodec: AC3 > AAC
AudioBitrate: 192 > VBR
Samplerate: 48000
Channels: 2
Delay: 49 > 49
SCRIPT
------------------------------
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\NicAudio.dll")
LoadCPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\yadif.dll")
SetMemoryMax(1024)
SetMTMode(3, 4)
video = MPEG2Source("C:\Users\Asus\Desktop\бубновский\бубновский.index\бубновский_T01.d2v", cpu=0, info=3)
audio = NicAC3Source("C:\Users\Asus\Desktop\бубновский\бубновский.index\бубновский_T01 T80 2_0ch 192Kbps DELAY 49ms.ac3")
AudioDub(video, audio)
SetMTMode(2)
DelayAudio(0.049)
ConvertToYV12(interlaced = true)
Yadif(order=1)
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RepairSSE3.dll")
LoadPlugin(XviD4PSPPluginsPath + "TemporalCleaner.dll")
LoadPlugin(XviD4PSPPluginsPath + "WarpSharp.dll")
LoadPlugin(XviD4PSPPluginsPath + "mt_masktools-26.dll")
LoadPlugin(XviD4PSPPluginsPath + "flash3kyuu_deband.dll")
Import(XviD4PSPPluginsPath + "LimitedSharpenFaster Mod.avs")
# setmemorymax(256)
# ColorYUV(gain_y=0,cont_y=0,cont_u=0,cont_v=0,gain_v=0,gain_u=-0,off_y=0,off_u=-0,off_v=-0)
TemporalCleaner (ythresh=5, cthresh=10)
Temporalsoften(2,2,2,6,2)
LSFmod(defaults="fast", preblur="ON", strength=100)
f3kdb(16, 52, 36, 36, 0, 0, dynamic_grain=true, input_mode=0, output_mode=0)
# Назначение: хороший фильтр для обработки качественного DVD и BD для улучшения сжатия
# Тип основного шумоподавителя: TemporalCleaner
# Тип шарпера: LSFmod
# Скорость обработки: высокая
###[FILTERING]###
Crop(0, 2, -0, -2)
Lanczos4Resize(720, 536)
AUDIO ENCODING
------------------------------
Используем готовый файл: D:\Temp\0000.m4a
VIDEO ENCODING
------------------------------
Encoding video to: D:\Temp\0000.264
x264 Q18.0 720x536 25.000fps (118021 frames)
x264.exe: --crf 18.0 --preset veryslow --tune film --profile high --level 4.1 --ref 9 --deblock -2:-2 --merange 32 --bframes 16 --direct spatial --threads 6 --chroma-qp-offset -2 --subme 9 --no-mbtree --colorprim bt709 --transfer bt709 --colormatrix bt709 --sar 1:1 --output "D:\Temp\0000.264" "D:\Temp\0000.avs"
avs [info]: 720x536p 1:1 @ 25/1 fps (cfr)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile High, level 4.1
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 11:07 (спустя 9 мин., ред. 24-Окт-13 11:07)

doogler писал(а):
61412210EEDI3 тоже не нашел. Вписать как скрипт ?
Ну, конечно. Кроме того подойдут фильтры типа DVD RFK Dither, DVD FizzKiller с этим антиайлиазингом.
pkirkin писал(а):
61412232SetMemoryMax(1024)
зачем вам столько много памяти для вашей фильтрации, ведь рекомендовано всего 256 ?, установите в настройках кодека х264 threads=4
Пробуйте подключить Temporalsoften так:
Код:
setmtmode(5)
Temporalsoften(2,2,2,6,2)
setmtmode(2)
или закройте строку в скрипте с ним вообще
[Профиль]  [ЛС] 

pkirkin

Стаж: 15 лет 6 месяцев

Сообщений: 62


pkirkin · 24-Окт-13 11:23 (спустя 15 мин.)

Tempter57
Спасибо, попробую. Я думал чем больше памяти, тем лучше, комп у меня довольно мощный. Применяемый фильтр довольно легкий, насколько я знаю. Если я на нем установлю threads=4, то на тяжелых фильтрах снижать уже некуда. Может я неправильно рассуждаю?
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 11:29 (спустя 6 мин., ред. 24-Окт-13 11:51)

pkirkin
Для устойчивой работы необходимо подобрать режимы многопоточной обработки: ограничение потребяляемой памяти, количество потоков обработки и кодирования. Это зависит от сложности фильтрации, входного разрешения видеоклипа, вашего железа. Не пытайтесь загрузить ядра на все 100%, не пытайтесь включать на всю потоки обработки и кодирования. Чаще это приводит к замедлению процесса обработки и кодирования, а во многих случаях к краху. У вас ноутбук. Поберегите его. Смотрите за тепловыми режимами, проц не сгорит: у него много степеней защиты, а вот мост точно полетит и тогда в лучшем случае замена моста в сервисном центре, если у того есть необходимое оборудование, за 120..140$ или, что более вероятно, замена материнской платы на новую за 250...600$ в зависимости от того, какая она у вас там. Почему мост: да потому что эти долбанные дешёвые BGA чипы от перегрева тупо отваливаются за полгода. Кто их только придумал. А реболлы, а тем более прогревание подобных чипов это ещё оттягивание смерти ноута на пару месяцев. Полная замена чипа ещё куда ни шло. Оно вам надо? даже, если у вас 4 ядра, установите всего 2...3 потока обработки, особенно на сложных фильтрах. Вообще ноут не инструмент для игр или видеообработки, не смотря на рекламные компании. Это оффисный инструмент. Главная причина: абсолютно нерешаемый вопрос с тепломассобменом в ограниченном закрытом объёме и, опять же эти долбанные BGA чипы с их отвалом при перегреве на мостах и видеокартах (особо глючные NVIDIA).
[Профиль]  [ЛС] 

pkirkin

Стаж: 15 лет 6 месяцев

Сообщений: 62


pkirkin · 24-Окт-13 11:33 (спустя 3 мин., ред. 24-Окт-13 14:08)

Tempter57
Сделал все как Вы сказали:
- установил память 256
- threads=4
- подключил Temporalsoften как Вы указали.
Пробовал кодировать два раза. Все равно внезапная остановка кодирования, хотя и кодировал дольше. Комп ничем дополнительным не нагружал. Посоветуйте что делать.
[Профиль]  [ЛС] 

cacadu147

Стаж: 12 лет 3 месяца

Сообщений: 1

cacadu147 · 24-Окт-13 14:17 (спустя 2 часа 43 мин.)

подскажи пожалуйста нужно обновлять архив plugins filtering или это не обязательно?
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 15:40 (спустя 1 час 23 мин.)

pkirkin
Зайдите в окно Многопоточности и пробуйте установить: начинать с setmtmode 5 и количество потоков обработки сократите до 2...3, получится setmtmode(5,2) или setmtmode(5,3). Можно поизменять внутреннюю обработку МТ. В настройках х264 колориметрия у вас выбрана наверняка неверно: --colorprim bt709 --transfer bt709 --colormatrix bt709 . У DVD такой нет. Откройте DGIndex свой DVD и посмотрите какую он пишет колориметрию, скорее всего там bt470bg
[Профиль]  [ЛС] 

Spiner88

Стаж: 18 лет

Сообщений: 46


Spiner88 · 24-Окт-13 17:10 (спустя 1 час 29 мин., ред. 24-Окт-13 17:10)

Tempter57
Я скопировал сюда только кусочек скрипта, в который, как был уверен, и надо вносить параметр Trim. Все что вы подсказывали я сделал. Пресет такой создал, скопировал в папку с фильтрами. Он подключен и работает. Если чтобы подсказать где прописывать Trim надо было весь скрипт сюда скопировать, извините, не знал. Вот тогда собственно он:
скрытый текст
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\mvtools2.dll")
DirectShowSource("C:\Users\Дмитрий\Desktop\Темп\Видео\6.01.2005.mkv", fps=25.000, convertfps=true)
DelayAudio(0.038)
ConvertToYV12()
Tweak(hue=0, sat=1.0, bright=-2, cont=0.98, coring=true, dither=false)
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadPlugin(XviD4PSPPluginsPath + "GScript.dll")
LoadPlugin(XviD4PSPPluginsPath + "GRunt.dll")
LoadPlugin(XviD4PSPPluginsPath + "RT_Stats26.dll")
LoadPlugin(XviD4PSPPluginsPath + "dither.dll")
LoadPlugin(XviD4PSPPluginsPath + "mt_masktools-26.dll")
Import(XviD4PSPPluginsPath + "AWB.avsi")
Import(XviD4PSPPluginsPath + "dither.avsi")
ShiftCCT(5400) # подобрать значение цветовой температуры внутри скобок
###[FILTERING]###
Цитата:
Дергание туда-сюда может быть от того, что вы не смотрите даже данные MediaInfo своего исходника относительно того какое поле идёт первым и не изменяете его в скрипте.
Я и не подозревал, что надо смотреть информацию про поля, для применения скрипта. И что за поля?
Цитата:
Вообще стремитесь выложить короткий сэмпл исходника, чтобы вам помогли
Выкладываю. Сэмпл Данный сэмпл закодировался у меня без рывков, только скорость воспроизведения замедлена в два раза так как фильтр удваивает количество фреймов. И скорость кодирование относительно адекватная (около 1,5-2фпс). Но как только я делаю обрезку по фреймам более длинного видео в самой программе и применяю данный фильтр начинает кодировать 0,12фпс и на выходе получается дерганная картинка, или вообще выкидывает ошибку "int32".
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 17:54 (спустя 44 мин., ред. 24-Окт-13 17:54)

Spiner88
Если у вас прогрессивное mkv, то открывайте его с помощью FFmpegSource2, если интерлейсное, то с помощью DirectShowSource2. А вот за просто DirectShowSource забудьте, как за страшный сон. Зайдите в ВИДЕО=>Декодирование и в выпадающем окне для mkv исходника замените декодер на рекомендуемый. У вас сейчас прогрессив, так что полей нет. После этого идёте на первую страничку ветки , читаете второй пост и настраиваете у себя режим многопоточной обработки. Рекомендаций дополнительных не даю, просто не знаю ваше железо. Кроме того вам нужен скрипт со стабилизацией изображения, поскольку съёмка велась видеокамерой без штатива и думаю, что этот сэмпл не подлинник, а продукт вашей работы. Нужен сэмпл исходника. Плохо , что включен счётчик на изображении: картинку получится стабилизировать, но после этого наоборот счётчик будет ходить ходуном. Эх, надо было при записи его отключать, а так всё испортили сами.
[Профиль]  [ЛС] 

Hesp

Top Bonus 04* 3TB

Стаж: 16 лет 10 месяцев

Сообщений: 216

Hesp · 24-Окт-13 18:06 (спустя 11 мин.)

Всем привет.
Имеем прогрессивный источник с 25fps и есть необходимость изменить его частоту на 23.976. Интересует вопрос, какой из конверторов частоты лучше использовать и как это отразится на качестве рипа?
[Профиль]  [ЛС] 

Spiner88

Стаж: 18 лет

Сообщений: 46


Spiner88 · 24-Окт-13 19:29 (спустя 1 час 23 мин., ред. 24-Окт-13 19:29)

Tempter57
Исходник уже удалил. Качество при кодировании не поменялось. Кодировал "2 pass Quality" CRF 21, Preset- Veryslow c поставленной галкой Slow 1-st pass. Без фильтров. Но как перекодировал решил еще подчистить. Удалить шум, подправить цвета. Делать так делать. Конечно понимаю что было бы лучше с мпег2 кодировать но что уже есть то есть. Или это принципиально чтоб был исходник? Некоторые записи подубитые, с горизонтальными полосами, мишурой. Касеты старые. Для них применяю фильтр VHS Remove dirt. Хорошо подчищает видео, хоть и мылит немного и иногда детали пропадают. Счетчик все же хорошая штука. А то так бы и не вспомнил когда это было.
Так у вас мой сэмпл нормально перекодировался с использованием VHS Magic? Поставил сейчас DirectShowSource2 в опциях декодирования
(при FFmpegSource2 пишет не может найти видео, значит видео все таки интерлейсное?) но с ним тоже при обрезке отказывается кодировать нормально: "Ошибка: Значение было недопустимо малым или недопустимо большим для Int32." Может этот фильтр не подходит для закодированного видео, а только для сырого МПЕГ?
И напишите пожалуйста где прописывать trim в фильтре,который я кинул под спойлером. Если не получиться разобраться в VHS Magic просто проставлю ручками температуру там где надо и подчищу шумы Temporal DfttestMC (очень хорошо чистит без потери деталей)
Кстати, когда я принудительно в опциях ставлю, что видео интерлейсное и выставляю деинтерлейс QTGMC то при по кадровом сравнении наблюдаю что с включенном деинтерлейсом кадры более четкие и при применении фильтра Temporal DfttestMC пропадают все артефакты. (если ставить данный фильтр и не задействовать деинтерлейс начинают на некоторых кадрах появляться квадраты, артефакты). Значит ли это, что несмотря на отсутствие гребенки все видео у меня интерлейсное?
[Профиль]  [ЛС] 

busoti

Стаж: 13 лет 5 месяцев

Сообщений: 2839

busoti · 24-Окт-13 19:54 (спустя 24 мин., ред. 22-Ноя-13 03:29)

czuryk писал(а):
61400757Я поставил все из программ busoti4444, уж даже ума не предложу, что еще нужно для этого фильтра.
pkirkin писал(а):
61412232установил все программы busoti4444...
Во-первых, это не мои программы.
Во-вторых, DirectX, Microsoft Visual C++, NET Framework это не программы. Это ресурсы системы, грубо говоря среда, в которой работают AviSynth и плагины к нему.
А более поздние версии - это дополнительные ресурсы, для программ и плагинов, написанных более современным языком программирования.
В-третьих, эта среда ни в коей мере не решает проблемы построения конкретных скриптов, неправильной настройки многопоточности, неправильного декодирования или кодирования.
Так что, вы напрасно ссылаетесь на эти "программы" и на меня...
[Профиль]  [ЛС] 

pkirkin

Стаж: 15 лет 6 месяцев

Сообщений: 62


pkirkin · 24-Окт-13 20:03 (спустя 9 мин.)

Tempter57
Спасибо за советы. Удалось сконвертировать используя setmtmode(5,3) и поменяв Distributor на Deactivate. Также заменил bt709 на bt470bg. Не могли бы Вы пояснить чем отличаются Distributor и Deactivate? Может Distributor и не надо было менять?
busoti4444
Я не хотел Вас обидеть. Я имел в виду, что я установил все, что Вы рекомендовали из Вашей ссылки. Безусловно, ошибка была в скрипте и я сделал ее вследствие своего небольшого опыта в работе с прогой. Я Вам благодарен, что Вы дали мне возможность сэкономить много времени на их поиске и скачать их все из одного места.
[Профиль]  [ЛС] 

Tempter57

Стаж: 16 лет 1 месяц

Сообщений: 4960

Tempter57 · 24-Окт-13 20:49 (спустя 45 мин., ред. 24-Окт-13 21:13)

Spiner88
Для прогрессивного видео VHS Magic будет иметь вид уже без боб-деинтерлейса
скрытый текст
#avstp.dll
#ccd.vdf
#vdf_arguments:ccd:0
#ACOBW.vdf
#vdf_arguments:ACOBW:0
#RemoveGrainSSE2.dll
#RepairSSE2.dll
#Depan.dll
#DepanEstimate.dll
#mvtools2mod.dll
#SmoothAdjust.dll
#nnedi3.dll
#HQdn3D.dll
#awarpsharp2.dll
#fft3dgpu.dll
#fft3dfilter.dll
#Deblock.dll
#flash3kyuu_deband.dll
#AddGrainC.dll
#Gradfun2db.dll
#awarpsharp2.dll
#mt_masktools-26.dll
#deflicker.dll
#AutoGain.dll
#dither.dll
#GScript.dll
#GRunt.dll
#RT_Stats26.dll
#MYStats.dll
#AWB_131013.avsi
#dither.avsi
#sbr.avs
#minblur.avs
#TemporalDegrain_ChromaMod V1.0.avs
#Gradfun2dbmod 1.5.avsi
# setmemorymax(1024)
# ==== Автобаланс и удаление цветового шума и радужности изображения ====
ConvertToRGB32()
ccd(7,0) # удаление цветового шума и радужности изображения
ACOBW(30,0,0)
converttoyv12()
AutoGain(adjust_mode=1) # 0 = contrast expansion 1 = levels adjustement
# AWB2()
# ShiftCCT(6220) # подобрать значение цветовой температуры внутри скобок
# Частичная стабилизация изображения
dxmax=32
dymax=24
source = last
# stab_reference = source.crop(dxmax*2,dymax*2,-dxmax*2,-dymax*2).tweak(cont=1.05).mt_binarize(threshold=80,upper=true,U=-128,V=-128)
# mdata = DePanEstimate(stab_reference,trust=3.0,dxmax=dxmax,dymax=dymax)
# DePanStabilize(source,data=mdata,cutoff=1.0,dxmax=dxmax,dymax=dymax,pixaspect=1.094,method=0,mirror=15) # or pixaspect=0.911 for NTSC
pre = source.removegrain(11).deflicker()
Super = pre.MSuper(pel=2)
vectors = MAnalyse(Super, isb=false, blksize=16, delta=1, search=5)
globalmotion = MDepan(pre, vectors, zoom=true, rot=false, pixaspect=1.094, error=15.0, info=false, \
wrong=10.0, zerow=0.05, range=2, thSCD1=400, thSCD2=130)
DepanStabilize(source, data=globalmotion, cutoff=1.0, damping=0.9, initzoom=1.0, addzoom=true, prev=2, next=2, mirror=15, blur=300, \
dxmax=dxmax, dymax=dymax, zoommax=1.05, rotmax=0.5, subpixel=2, pixaspect=1.094, fitlast=0, tzoom=3.0, info=false)
crop(dxmax,dymax,-dxmax,-dymax)
# Удалить VHS colorshift (цветовой сдвиг)
Vshift=2 # 2 пикселя на ленте
Hshift=0
mergechroma(last.awarpsharp2(depth=16,thresh=255,blur=3).crop(Hshift,Vshift,0,0, align=true).addborders(0,0,Hshift,Vshift))
mt_edge("0 0 0 0 0 0 0 2 0 2",0,255,0,255,Y=2,U=3,V=3)
mt_edge("0 0 0 0 0 0 0 2 0 2",0,255,0,255,Y=2,U=3,V=3)
o = last
nnedi3(field=-2,nsize=2)
merge(selecteven,selectodd)
bb0 = last
D1 = mt_makediff(o,bb0,U=3,V=3)
D2 = mt_makediff(bb0,bb0.removegrain(20),U=3,V=3).mt_lut("x 128 - 2.51 * 128 +",U=3,V=3)
DD = D2.repair(d1,13)
bb0.mt_adddiff(DD,U=3,V=3)
# Deblock(quant=30).mt_lutxy(last,"x y < x 1 + x y > x 1 - x ? ?",U=3,V=3)
bb1 = last
mt_lutxy(bicubicresize(64*4,48*4).bicubicresize(width,height,1,0),"x 2 + y < x 1 - x 2 - y > x 1 + x ? ?",U=2,V=2)
mt_lutxy(bicubicresize(64*2,48*2).bicubicresize(width,height,1,0),"x 1 + y < x 1 - x 1 - y > x 1 + x ? ?",U=2,V=2)
mt_lutxy(bicubicresize(64*1,48*1).bicubicresize(width,height,1,0),"x y < x 1 - x y > x 1 + x ? ?",U=2,V=2)
mergeluma(bb1,0.49)
awarpsharp2(type=1,depth=4,thresh=144,blur=2)
x = removegrain(11)
xD = mt_lutxy(x,x.removegrain(4),"x y - abs 1 1.6 / ^ 4.51 * x y - x y - abs 1.9 + / * 128 +")
last.mt_adddiff(xD,U=2,V=2).mt_lutxy(x,"x y < x 1 + x y > x 1 - x ? ?",U=3,V=3)
grain = mt_lut(Y=-128,U=-128,V=-128).pointresize(512,400).addgrain(7).bicubicresize(width,height,-.4,.7)
last.mt_adddiff(grain,U=2,V=2)
chroma = false
planes = chroma?4:0
sup1 = bb0.sbr().MSuper(chroma=chroma)
sup2 = last.MSuper(levels=1,sharp=1,chroma=chroma)
bv2 = MAnalyse(sup1, isb=true, delta=2,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
bv1 = MAnalyse(sup1, isb=true, delta=1,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
fv1 = MAnalyse(sup1, isb=false,delta=1,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
fv2 = MAnalyse(sup1, isb=false,delta=2,truemotion=false,global=true,blksize=16,overlap=8,search=3,searchparam=4,DCT=5,chroma=chroma)
last.mdegrain2(sup2,bv1,fv1,bv2,fv2,thSAD=321,thSCD1=300,thSCD2=120,limit=230,plane=planes)
# Letterbox(2, 10, 10, 16)
TemporalDegrain_ChromaMod(GPU=true, chroma=true, sigma=16, degrain=2)
# LEVELS
# SmoothCurve(Ycurve="0-0;16-0;235-255;255-255", Ucurve="0-0;16-0;240-255;255-255", Vcurve="0-0;16-0;240-255;255-255", interp=100, mode=100, dither=50, HQ=True)
# SmoothLevels(gamma=1.15, useopt=0) # 0 -automatic choice, 1- SSE2 CPU, 2 - Sandy Bridge CPU
SmoothLevels(gamma=1.0, useopt=0) # 0 -automatic choice, 1- SSE2 CPU, 2 - Sandy Bridge CPU
Gradfun2dbmod(thr=1.6,thrC=2.0,mode=2,str=1.2,temp=50)
# f3kdb(16, 64, 48, 48, 36, 16, dynamic_grain=true, dither_algo=3, input_mode=0, output_mode=0)
spline36resize(688, 528)
[Профиль]  [ЛС] 

busoti

Стаж: 13 лет 5 месяцев

Сообщений: 2839

busoti · 24-Окт-13 20:53 (спустя 4 мин., ред. 22-Ноя-13 03:30)

pkirkin
Я не обижаюсь, а поясняю, чтобы Вы и другие не искали причины своих неудач там, где их нет.
pkirkin писал(а):
61418540чем отличаются Distributor и Deactivate? Может Distributor и не надо было менять?
Во-первых, fcp позаботился, и почти на каждое значение в окнах настроек сделал всплывающие подсказки. Наводите стрелку мышки и читайте.
Во-вторых, многопоточность индивидуальна для конкретного железа, системы и скрипта. Здесь ни кто не даст 100%-й совет. Всё нужно пробовать лично.
[Профиль]  [ЛС] 
 
Тема закрыта
Loading...
Error