Posts: 528
Threads: 59
Joined: Oct 2022
Helloha,
When i want to process an small portion for a testrun and chose chapter selection at base tab, hybrid seems to process the entire episode anyway !
Is it possible for dvd sources to process/encode an small portion in any which way you can using hybrid ?
Cheerios,
TD
Posts: 10.982
Threads: 57
Joined: May 2017
Did the chapter already exist in the source? If it did share a debug output.
Otherwise, use cut support.
Posts: 528
Threads: 59
Joined: Oct 2022
(19.01.2024, 13:51)Selur Wrote: Did the chapter already exist in the source? If it did share a debug output.
Otherwise, use cut support.
Sure all chapters are accounted for. Hybrid did load the original (Untouched) DVD-9 content, nothing cut,added or edited..
Also, i can't seem to select and add titles to the job list, iam only able to add title one from each dvd source !?
This is the error i receive:
ps: Debug attached from both error message, and title issue.
Cheers,
TD
Posts: 10.982
Threads: 57
Joined: May 2017
Quote: Also, i can't seem to select and add titles to the job list, iam only able to add title one from each dvd source !?
Yes, neither Vapoursynth or Avisynth has anything that can supports proper DVD parsing. (Nothing I can really do about it.)
This is why folks usually use MakeMKV or PGDemux to remux their DVD before conversion when I want to use Avisynth or Vapoursynth.
Will look at the debug output.
Cu Selur
Posts: 10.982
Threads: 57
Joined: May 2017
Quote:Debug attached from both error message, and title issue.
=> create a new debug output just with the chapter issue (I won't look at the debug output otherwise. Got no time for that.)
Cu Selur
Posts: 10.982
Threads: 57
Joined: May 2017
When I load a DVD source and set the chapter selection for example to 1-1, Hybrid properly adds:
# cutting from frame 0 to 5880 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=0, last=5880)
when I set the chapter selection to 2-2:
# cutting from frame 5881 to 11770 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=5881, last=11770)
is added.
This is not just in the preview, but also in the encoding.
=> chapter selection seems to work fine here.
Cu Selur
Posts: 528
Threads: 59
Joined: Oct 2022
(19.01.2024, 19:08)Selur Wrote: Quote: Also, i can't seem to select and add titles to the job list, iam only able to add title one from each dvd source !?
Yes, neither Vapoursynth or Avisynth has anything that can supports proper DVD parsing. (Nothing I can really do about it.)
This is why folks usually use MakeMKV or PGDemux to remux their DVD before conversion when I want to use Avisynth or Vapoursynth.
Will look at the debug output.
Cu Selur
Wos to be expected , so i have to remux the whole shabaam title by title..
Great, 8 seasons containing 26 episodes each
that will be fun ..
(19.01.2024, 19:16)Selur Wrote: Quote:Debug attached from both error message, and title issue.
=> create a new debug output just with the chapter issue (I won't look at the debug output otherwise. Got no time for that.)
Cu Selur
Done, attached.
(19.01.2024, 19:26)Selur Wrote: When I load a DVD source and set the chapter selection for example to 1-1, Hybrid properly adds:
# cutting from frame 0 to 5880 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=0, last=5880)
when I set the chapter selection to 2-2:
# cutting from frame 5881 to 11770 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=5881, last=11770)
is added.
This is not just in the preview, but also in the encoding.
=> chapter selection seems to work fine here.
Cu Selur
so, yes, loading dvd source and selecting chapter 1-1 (11 min more or less), But hybrid does the whole title anyway.
Funny you mentioned the preview feature..
In the preview windows i only can see the selected chapter just like it should be. But it encodes all chapters not just 1 !
And in the debug file i've noticed strange behaviour like several lines →, cutted from 0 frames to XXXX then , 0 to XXXXX and so on and on !?
Also , cutted = False !
Cheers,
TD
Posts: 10.982
Threads: 57
Joined: May 2017
Quote:Wos to be expected , so i have to remux the whole shabaam title by title..
iirc both pgc demux and makemkv both can extract by title.
Hybrid probably can do it too.
Quote:so, yes, loading dvd source and selecting chapter 1-1 (11 min more or less), But hybrid does the whole title anyway.
Funny you mentioned the preview feature..
works for me in encoding too
Quote:And in the debug file i've noticed strange behaviour like several lines →, cutted from 0 frames to XXXX then , 0 to XXXXX and so on and on !?
Also , cutted = False !
Too vague to answer that properly, but cutted = false, means that at this point in the script no cutting go applied.
Will look at the debug output and try to reproduce the problem.
Cu Selur
Posts: 528
Threads: 59
Joined: Oct 2022
(19.01.2024, 20:11)Selur Wrote: Quote:Wos to be expected , so i have to remux the whole shabaam title by title..
iirc both pgc demux and makemkv both can extract by title.
Hybrid probably can do it too.
My benevolent Royal Majesty Sir Selur...
I know how i can extract it, furthermore you forgot to mention yet another old but usefull tool → DVD decrypter ← One that DOES just encoded / extract the selected time/chapter from a complete title perfectly
the thing is , i don't have preview (except for dvd decrypter) to see which is what you know... For episode order ..
But the more important , NO BATCH extraction (hybrid = preview + jobs = sneak preview + batch processing )
Unless i use command lines , and create a *.bat file for batch proccessing... I'll figure it out..
(19.01.2024, 20:11)Selur Wrote: Quote:so, yes, loading dvd source and selecting chapter 1-1 (11 min more or less), But hybrid does the whole title anyway.
Funny you mentioned the preview feature..
works for me in encoding too
Could it probebly has something to do with the "loaded profile" (AGAIN!) prior to selecting chapters
I'll check that out..
(19.01.2024, 20:11)Selur Wrote: Quote:And in the debug file i've noticed strange behaviour like several lines →, cutted from 0 frames to XXXX then , 0 to XXXXX and so on and on !?
Also , cutted = False !
Too vague to answer that properly, but cutted = false, means that at this point in the script no cutting go applied.
Will look at the debug output and try to reproduce the problem.
Cu Selur
Yes, many entries refering to different parts cutted (ie: from frame 0 to XXXX, 0 to XXXXX and so on .. )
Oh well , atleast we have had a "weebit" snow this year in some parts of the world (°^°)
cheers,
TD
Posts: 10.982
Threads: 57
Joined: May 2017
Quote:DVD decrypter
Often created non-DVD compliant output for me which can cause issues, so I would not recommend it.
Quote:"loaded profile" (AGAIN!) prior to selecting chapters
No clue, but according to the debug output:
For the Vapoursynth creation Hybrid assumed:
2024.01.19 - 18:38:47_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: getStartAndEnd(cutStartTime: 0, cutEndTime: 451.88, selectionStartTime: 0, selectionEndTime: 451.88, ...)
2024.01.19 - 18:38:47_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: startTime: 0.00000000
2024.01.19 - 18:38:47_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: endTime: 451.88000000
2024.01.19 - 18:38:47_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: -> startTime: 0, endTime: 451.88
451.88 sec * 25 fps so that would be 11.297 frames.
looking at the script that was used:
# Imports
import vapoursynth as vs
# getting Vapoursynth core
import site
import ctypes
import sys
import os
core = vs.core
# Import scripts folder
scriptPath = 'C:/Program Files/Hybrid/64bit/vsscripts'
sys.path.insert(0, os.path.abspath(scriptPath))
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/64bit/vsfilters/Support/libfftw3f-3.dll")
# Adding torch dependencies to PATH
path = site.getsitepackages()[0]+'/torch_dependencies/bin/'
ctypes.windll.kernel32.SetDllDirectoryW(path)
path = path.replace('\\', '/')
os.environ["PATH"] = path + os.pathsep + os.environ["PATH"]
# Loading Plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/VagueDenoiser/libneovaguedenoiser.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/RemoveGrain/RemoveGrainVS.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/DFTTest/DFTTest.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DenoiseFilter/NEO_FFT3DFilter/neo-fft3d.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/EEDI3m.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/ResizeFilter/nnedi3/vsznedi3.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/libmvtools.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/scenechange.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/Support/fmtconv.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/MiscFilter/MiscFilters/MiscFilters.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/DeinterlaceFilter/Bwdif/Bwdif.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/d2vSource/DGDecode.dll")
# Import scripts
import G41Fun
import havsfunc
# source: 'F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS'
# current color space: YUV420P8, bit depth: 8, resolution: 720x576, fps: 25, color matrix: 709, yuv luminance scale: limited, scanorder: top field first
# Loading F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS\VTS_02_1.VOB using DGDecode
clip = core.dgdecode.MPEG2Source("F:/DVD 9/SEIZOEN 1/DISK 1/VIDEO_TS/2024-01-19@18_38_49_6210.d2v",info=3)# 25 fps, scanorder: top field first
# Setting detected color matrix (709).
clip = core.std.SetFrameProps(clip, _Matrix=1)
# Setting color transfer info (709)
clip = core.std.SetFrameProps(clip, _Transfer=1)
# Setting color primaries info (1)
clip = core.std.SetFrameProps(clip, _Primaries=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# making sure frame rate is set to 25
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=2) # tff
# cutting from frame 0 to 11296 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=0, last=11296)
# Deinterlacing using QTGMC
clip = havsfunc.QTGMC(Input=clip, Preset="Slower", TFF=True) # new fps: 25
# Making sure content is preceived as frame based
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=0) # progressive
clip = clip[::2] # selecting previously even frames
# adjusting color space from YUV420P8 to RGB24 for vsLevels
clip = core.resize.Bicubic(clip=clip, format=vs.RGB24, matrix_in_s="709", range_s="limited")
# Color Adjustment using Levels on RGB24 (8 bit)
clip = core.std.Levels(clip=clip, min_in=0, max_in=255, min_out=0, max_out=255)
# adjusting color space from RGB24 to YUV444P8 for vsVague
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P8, matrix_s="709", range_s="limited")
# denoising using VagueDenoiser
clip = core.neo_vd.VagueDenoiser(clip=clip, threshold=1.25, percent=50)
# sharpening using DetailSharpen
clip = G41Fun.DetailSharpen(clip=clip, sstr=1.250, ldmp=0.500, mode=0, med=True)
from vsrealesrgan import realesrgan as RealESRGAN
# adjusting color space from YUV444P8 to RGBH for vsRealESRGAN
clip = core.resize.Bicubic(clip=clip, format=vs.RGBH, matrix_in_s="709", range_s="limited")
# resizing using RealESRGAN
clip = RealESRGAN(clip=clip, model=5, device_index=0, trt=True, trt_cache_path=r"F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS", denoise_strength=0.25) # 2880x2304
# resizing 2880x2304 to 1920x1080
# adjusting resizing
clip = core.resize.Bicubic(clip=clip, format=vs.RGBS, range_s="limited")
clip = core.fmtc.resample(clip=clip, w=1920, h=1080, kernel="sinc", interlaced=False, interlacedd=False)
# adjusting output color from: RGBS to YUV420P8 for x264Model
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P8, matrix_s="709", range_s="limited", dither_type="error_diffusion")
# set output frame rate to 25fps (progressive)
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# Output
clip.set_output()
That script 'encodingTempSynthSkript_2024-01-19@18_38_49_6210_0.vpy' was created
2024.01.19 - 18:39:20_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: starting createJob,....
2024.01.19 - 18:39:20_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: writing: UTF8BOM
2024.01.19 - 18:39:20_Windows 11 Version 23H2 (64bit)_2023.12.22.1 - level 9: finished createJob (F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS\encodingTempSynthSkript_2024-01-19@18_38_49_6210_0.vpy)
and it did include:
# cutting from frame 0 to 11296 - WARNING: This might cause synch issues
clip = core.std.Trim(clip=clip, first=0, last=11296)
and also was used during for the encoding:
"C:\Program Files\Hybrid\64bit\Vapoursynth\vspipe.exe" "F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS\encodingTempSynthSkript_2024-01-19@18_38_49_6210_0.vpy" - -c y4m | "C:\Program Files\Hybrid\64bit\x264.exe" --preset slow --bitrate 5000 --profile high --level 4.1 --ref 2 --sync-lookahead 36 --ratetol 2.00 --vbv-maxrate 5000 --vbv-bufsize 78125 --sar 1:1 --non-deterministic --range tv --colormatrix bt709 --demuxer y4m --input-range tv --fps 24/1 --output-depth 8 --output "F:\DVD 9\SEIZOEN 1\DISK 1\VIDEO_TS\2024-01-19@18_38_49_6210_06.264" -
Encoding was stopped after 1613 frames.
(Output should have contained 11297*2 frames; *2 due to QTGMC-Bob)
=> can't see the problem in the debug output you provided.
Cu Selur
|