Posts: 12.057 
	Threads: 66 
	Joined: May 2017
	
	 
 
	
	
		Quote:So, if  *.VOB as file input looks "proper for me", why DVD Input does not? 
Since Hybrid is forced to use a decoder that supports chapters/titles/pgcs.
 
Opening files and Blu-rays can be done through Avisynth/Vapoursynth/FFmpeg without a problem. 
Opening DVDs can only be done properly through mencoder, since FFmpeg/Avisynth/Vapoursynth all have no proper DVD input filter. One can open the files by concatenating them, but no structural information (chapter/title/pgc/angle) gets processed. So they all open only the first angle&title (pgc).
 
Problem with mencoder seems to be that it can't output interlaced content via a pipe (or I don't know how to).
 
So workarounds are: 
a. using for example MakeMKV (or Hybrid) to rewrap the wanted content into a mkv before processing it with Hybrid. 
b. forcing Hybrid to not use mencoder and living with the limitation that no  no structural information (chapter/title/pgc/angle) gets processed, which is no real problem for simple DVDs but fails for anything but simple DVDs. 
 
Cu Selur
	  
	
	
---- 
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page. 
 
	
	
 
 
	
	
	
		
	Posts: 137 
	Threads: 15 
	Joined: Oct 2020
	
	 
 
	
	
		 (02.12.2020, 08:50)Selur Wrote:  Quote:So, if  *.VOB as file input looks "proper for me", why DVD Input does not? 
Since Hybrid is forced to use a decoder that supports chapters/titles/pgcs. 
 
Opening files and Blu-rays can be done through Avisynth/Vapoursynth/FFmpeg without a problem. 
Opening DVDs can only be done properly through mencoder, since FFmpeg/Avisynth/Vapoursynth all have no proper DVD input filter. One can open the files by concatenating them, but no structural information (chapter/title/pgc/angle) gets processed. So they all open only the first angle&title (pgc). 
 
Problem with mencoder seems to be that it can't output interlaced content via a pipe (or I don't know how to). 
 
So workarounds are: 
a. using for example MakeMKV (or Hybrid) to rewrap the wanted content into a mkv before processing it with Hybrid. 
b. forcing Hybrid to not use mencoder and living with the limitation that no  no structural information (chapter/title/pgc/angle) gets processed, which is no real problem for simple DVDs but fails for anything but simple DVDs.  
 
 
Cu Selur 
"...forcing Hybrid to not use mencoder" - how?
	  
	
	
	
	
 
 
	
	
	
		
	Posts: 12.057 
	Threads: 66 
	Joined: May 2017
	
	 
 
	
	
		Quote:"...forcing Hybrid to not use mencoder" - how?  
You can't really to it. Hybrids code needs to be changed to support this. 
Only way you can work around this in Hybrid would be to: 
a. set "Filtering->Support" to "Avisynth" 
b. enable "Config->Avisynth->Always use Avisynth" 
when you want to encode a DVD to something with interlaced output. 
(Alternatively use an Avisynth or Vapoursynth filter, this way Hybrid will use Avisynth or Vapoursynth for the DVD input processing.)
 
Cu Selur
	  
	
	
---- 
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page. 
 
	
	
 
 
	
	
	
		
	Posts: 12.057 
	Threads: 66 
	Joined: May 2017
	
	 
 
	
		
		
		02.12.2020, 10:11 
(This post was last modified: 02.12.2020, 11:16 by Selur.)
		
	 
	
		Okay, some good and bad news: Seems like it's a problem with the mencoder version used. (and not a bug in Hybrid or a general problem of mencoder) 
using:
 mencoder   -chapter 1-1 -ovc raw -noskip -vf scale,format=i420 -forcedsubsonly -nosub -nosound -mc 0 -lavdopts threads=8 -really-quiet -of rawvideo -o - -dvd-device "F:\TESTCL~1\discs\DVDs\TestDVD" dvd://1 | x264 --preset ultrafast --crf 18.00 --profile high --level 4.1 --scenecut 0 --sync-lookahead 24 --tff --vbv-maxrate 62500 --vbv-bufsize 78125 --sar 64:45 --non-deterministic --range tv --colormatrix bt709 --demuxer raw --input-res 720x576 --input-csp i420 --input-range tv --input-depth 8 --fps 25/1 --output-depth 8 --output "E:\Temp\2020-12-02@09_03_54_4410_01.264" -
 some versions produce garbage others don't. 
-> try extracting mencoder.exe and mplayer.exe from  https://www.videohelp.com/download/MPlay...0d113c8.7z and see whether that fixed the issue for you too
 
Cu Selur
 
Ps.: not sure whether this is due to a change in the ffmpeg libraries (which mencoder uses) some of mencoder dependencies or a bug in the build suite I use ( https://github.com/m-ab-s/media-autobuild_suite).
	  
	
	
---- 
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page. 
 
	
	
 
 
	
	
	
		
	Posts: 137 
	Threads: 15 
	Joined: Oct 2020
	
	 
 
	
	
		 (02.12.2020, 10:11)Selur Wrote:  Okay, some good and bad news: Seems like it's a problem with the mencoder version used. (and not a bug in Hybrid or a general problem of mencoder) 
using: 
mencoder   -chapter 1-1 -ovc raw -noskip -vf scale,format=i420 -forcedsubsonly -nosub -nosound -mc 0 -lavdopts threads=8 -really-quiet -of rawvideo -o - -dvd-device "F:\TESTCL~1\discs\DVDs\TestDVD" dvd://1 | x264 --preset ultrafast --crf 18.00 --profile high --level 4.1 --scenecut 0 --sync-lookahead 24 --tff --vbv-maxrate 62500 --vbv-bufsize 78125 --sar 64:45 --non-deterministic --range tv --colormatrix bt709 --demuxer raw --input-res 720x576 --input-csp i420 --input-range tv --input-depth 8 --fps 25/1 --output-depth 8 --output "E:\Temp\2020-12-02@09_03_54_4410_01.264" -
  some versions produce garbage others don't. 
-> try extracting mencoder.exe and mplayer.exe from https://www.videohelp.com/download/MPlay...0d113c8.7z and see whether that fixed the issue for you too 
 
Cu Selur 
 
Ps.: not sure whether this is due to a change in the ffmpeg libraries (which mencoder uses) some of mencoder dependencies or a bug in the build suite I use (https://github.com/m-ab-s/media-autobuild_suite). 
Replaced mencoder.exe and mplayer.exe by MPlayer r38188+g6e1903938b from  https://oss.netfarm.it/mplayer/. 
Everything works like charm, producing correct interlacing mp4.
	  
	
	
	
	
 
 
	
	
	
		
	Posts: 12.057 
	Threads: 66 
	Joined: May 2017
	
	 
 
	
	
		Okay, good to know that it's not just a solution on my system. 
Sadly I have no clue so far what's really causing the issue.   
-> this will probably take a few days to figure out (probably more)
 
Cu Selur
	  
	
	
---- 
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page. 
 
	
	
 
 
	
	
	
		
	Posts: 137 
	Threads: 15 
	Joined: Oct 2020
	
	 
 
	
	
		1. Avisynth "DeSpot"  crashes "Filter View" (Vapoursynth works fine) 
2. Vapoursynth "DeSpot" missing whole bunch of parameters (compare to Avisynth) 
3. Can't find "DeScratch" and "RemoveDirt" among Vapursynth filters. 
  
Avisynth "RemoveDirt" crashes "Filter View" if "Mode" other than 16
	
	
	
	
	
 
 
	
	
	
		
	Posts: 137 
	Threads: 15 
	Joined: Oct 2020
	
	 
 
	
	
		Trying to process another QT ProRes file (duration ~ 20 mins) 
"Filter View" (Avisynth and Vapoursynth) shows nothing, no error, no messages.
	 
	
	
	
	
 
 
	
	
	
		
	Posts: 12.057 
	Threads: 66 
	Joined: May 2017
	
	 
 
	
		
		
		04.12.2020, 05:23 
(This post was last modified: 04.12.2020, 18:48 by Selur.)
		
	 
	
		Preview: 
I see the problem, for Avisynth preview needs to be RGB24, but Hybrid seems to be stuck at RGB32bit. (correction -> RGB32 is okay) 
Don't see the problem with the Vapoursynth script.
 # Imports 
import vapoursynth as vs 
core = vs.get_core() 
# Loading Plugins 
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll") 
# source: 'K:\Gulliver\GULLIVER HD TRANSFER\Gulliver0001.mov' 
# current color space: YUV422P10, bit depth: 10, resolution: 1920x1080, fps: 23.976, color matrix: 709, yuv luminance scale: limited, scanorder: progressive 
# Loading K:\Gulliver\GULLIVER HD TRANSFER\Gulliver0001.mov using LWLibavSource 
clip = core.lsmas.LWLibavSource(source="K:/Gulliver/GULLIVER HD TRANSFER/Gulliver0001.mov", format="YUV422P10", cache=0, prefer_hw=0) 
# making sure input color matrix is set as 709 
clip = core.resize.Point(clip, matrix_in_s="709",range_s="limited") 
# making sure frame rate is set to 23.976 
clip = core.std.AssumeFPS(clip=clip, fpsnum=24000, fpsden=1001) 
# Setting color range to TV (limited) range. 
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1) 
original = clip 
# adjusting output color from: YUV422P10 to YUV420P8 for x264Model (i420@10) 
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P8, range_s="limited") 
# adjusting for FilterView 
if (original.format.id != clip.format.id): 
  if (original.format.color_family == vs.RGB and clip.format.color_family != vs.RGB): 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_s="709", range_s="limited") 
  elif (original.format.color_family == clip.format.color_family): 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, range_s="limited") 
  else: 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_in_s="709", range_s="limited") 
stacked = core.std.StackHorizontal([original,clip]) 
# set output frame rate to 23.976fps 
stacked = core.std.AssumeFPS(clip=stacked, fpsnum=24000, fpsden=1001) 
# Output 
stacked.set_output()
 -> will look at it over the weekend
 Quote:1. Avisynth "DeSpot"  crashes "Filter View" (Vapoursynth works fine) 
-> will look at it over the weekend
 Quote:2. Vapoursynth "DeSpot" missing whole bunch of parameters (compare to Avisynth) 
Nothing I can do about it, Vapoursynth Depot port ( https://github.com/theChaosCoder/lostfun...ostfunc.py) has no parameters (aside from the clip input).
 Quote:3. Can't find "DeScratch" and "RemoveDirt" among Vapursynth filters. 
DeScratch: afaik there is no port for it 
RemoveDirt:only port I see  https://github.com/handaimaoh/removedirtvs is 32bit only.
 Quote:Avisynth "RemoveDirt" crashes "Filter View" if "Mode" other than 16 
-> will look at it over the weekend
 
Cu Selur
	  
	
	
---- 
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page. 
 
	
	
 
 
	
	
	
		
	Posts: 137 
	Threads: 15 
	Joined: Oct 2020
	
	 
 
	
	
		 (04.12.2020, 05:23)Selur Wrote:  Preview: 
I see the problem, for Avisynth preview needs to be RGB24, but Hybrid seems to be stuck at RGB32bit. 
Don't see the problem with the Vapoursynth script. 
# Imports 
import vapoursynth as vs 
core = vs.get_core() 
# Loading Plugins 
core.std.LoadPlugin(path="C:/Program Files/Hybrid/64bit/vsfilters/SourceFilter/LSmashSource/vslsmashsource.dll") 
# source: 'K:\Gulliver\GULLIVER HD TRANSFER\Gulliver0001.mov' 
# current color space: YUV422P10, bit depth: 10, resolution: 1920x1080, fps: 23.976, color matrix: 709, yuv luminance scale: limited, scanorder: progressive 
# Loading K:\Gulliver\GULLIVER HD TRANSFER\Gulliver0001.mov using LWLibavSource 
clip = core.lsmas.LWLibavSource(source="K:/Gulliver/GULLIVER HD TRANSFER/Gulliver0001.mov", format="YUV422P10", cache=0, prefer_hw=0) 
# making sure input color matrix is set as 709 
clip = core.resize.Point(clip, matrix_in_s="709",range_s="limited") 
# making sure frame rate is set to 23.976 
clip = core.std.AssumeFPS(clip=clip, fpsnum=24000, fpsden=1001) 
# Setting color range to TV (limited) range. 
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1) 
original = clip 
# adjusting output color from: YUV422P10 to YUV420P8 for x264Model (i420@10) 
clip = core.resize.Bicubic(clip=clip, format=vs.YUV420P8, range_s="limited") 
# adjusting for FilterView 
if (original.format.id != clip.format.id): 
  if (original.format.color_family == vs.RGB and clip.format.color_family != vs.RGB): 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_s="709", range_s="limited") 
  elif (original.format.color_family == clip.format.color_family): 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, range_s="limited") 
  else: 
    original = core.resize.Bicubic(clip=original, format=clip.format.id, matrix_in_s="709", range_s="limited") 
stacked = core.std.StackHorizontal([original,clip]) 
# set output frame rate to 23.976fps 
stacked = core.std.AssumeFPS(clip=stacked, fpsnum=24000, fpsden=1001) 
# Output 
stacked.set_output()
  -> will look at it over the weekend 
 
Quote:1. Avisynth "DeSpot"  crashes "Filter View" (Vapoursynth works fine) 
-> will look at it over the weekend 
Quote:2. Vapoursynth "DeSpot" missing whole bunch of parameters (compare to Avisynth) 
Nothing I can do about it, Vapoursynth Depot port (https://github.com/theChaosCoder/lostfun...ostfunc.py) has no parameters (aside from the clip input). 
 
Quote:3. Can't find "DeScratch" and "RemoveDirt" among Vapursynth filters. 
DeScratch: afaik there is no port for it 
RemoveDirt:only port I see https://github.com/handaimaoh/removedirtvs is 32bit only. 
 
Quote:Avisynth "RemoveDirt" crashes "Filter View" if "Mode" other than 16 
-> will look at it over the weekend 
 
Cu Selur 
May be it make sense to include the newer versions of mencoder/mplayer in your next dev also. Just thoughts.
	  
	
	
	
	
 
 
	 
 |