Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 21st November 2013, 00:52   #1241  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
Sure you have fewer combed frames, but the frames you get are just extra duplicates that can't be decimated normally, no?
ChiDragon is offline   Reply With Quote
Old 21st November 2013, 01:12   #1242  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,695
Quote:
Originally Posted by turbojet View Post
Currently there doesn't seem to be any way to multithread tdecimate. Would anyone have interest in trying to implement it? Tritical has said in the past that openmp might work.
I don't think that TDecimate is particularly CPU intensive and therefore I don't think multi-threading would help much. The only time I've found TDecimate to be slow is when using really large Cycle/CycleR values, but that is a different problem, I think.
johnmeyer is offline   Reply With Quote
Old 21st November 2013, 01:58   #1243  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
Tritical mentioning openmp there's also another good idea in that message that's been unrealized.


Quote:
Originally Posted by ChiDragon View Post
Sure you have fewer combed frames, but the frames you get are just extra duplicates that can't be decimated normally, no?
Nope, all clean, no dupes. I'll hunt for a sample, with any luck at all will have one by the end of the week.

Quote:
Originally Posted by johnmeyer View Post
I don't think that TDecimate is particularly CPU intensive and therefore I don't think multi-threading would help much. The only time I've found TDecimate to be slow is when using really large Cycle/CycleR values, but that is a different problem, I think.
When it's encoding HD on a typical 2/4/6/8 core cpu it can keep the cpu loaded but when encoding smaller resolutions or with more cpus (untested) there's a lot to be desired.

Here's some 1080i to 720x404 on FX8320 results:
tfm() 51.15 fps, 50-60% cpu
tfm().tdecimate() 36.64 fps 40-50% cpu
setmtmode(2,4).tfm() 66.29 fps 95-100% cpu
setmtmode(2,4).tfm().tdecimate() 29.79 fps 30-40% cpu
nnedi3() 59.51 fps 95-100% cpu

Sorathread/threadrequest used between tfm() and tdecimate() can give ~5% fps and cpu increase that's the only increase I've been able to achieve. Openmp was a huge increase in nnedi3, if it gave half the returns with tivtc it would be a much welcome increase. If tfm().tdecimate() used 100% cpu in this case is 70-80 fps a good estimate?
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0

Last edited by turbojet; 21st November 2013 at 07:42.
turbojet is offline   Reply With Quote
Old 3rd December 2013, 23:04   #1244  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
I haven't been able to find another source where tfm(mode=3) helps yet but I did find one where it causes missing frames.

Also after some testing it doesn't seem like tdecimate is the bottleneck but rather tfm(). Using telecide() or uncomb() with tdecimate() greatly increases fps and cpu usage.
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0
turbojet is offline   Reply With Quote
Old 26th January 2014, 20:27   #1245  |  Link
Stereodude
Registered User
 
Join Date: Dec 2002
Location: Region 0
Posts: 1,436
I realize the TIVTC package hasn't been updated in a long time, but I'm going to make a feature request anyhow...

It would be nice when if TDecimate mode=5, hybrid=2 (2nd VFR pass) was more verbose with display=true. Something similar to what TDecimate does for mode=0, hybrid=3. I do the first pass with TFM and TDecimate and make the necessary output files and feed them into the 2nd pass. Easy enough, but on the 2nd pass I have no easy, displayed for me on the video, visibility into the metrics calculated in the first pass that determine what frames are dropped or when it switches in or out of video/film mode. As a result it's hard to visually tune the vidThresh or dupThresh parameters.

Last edited by Stereodude; 26th January 2014 at 20:30.
Stereodude is offline   Reply With Quote
Old 27th January 2014, 00:07   #1246  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,695
What I do is to use the "output" parameter. It provides a file in Pass1 that gives you all the metrics.

You might also have a look at the "debug" parameter.
johnmeyer is offline   Reply With Quote
Old 27th January 2014, 01:20   #1247  |  Link
Stereodude
Registered User
 
Join Date: Dec 2002
Location: Region 0
Posts: 1,436
Quote:
Originally Posted by johnmeyer View Post
What I do is to use the "output" parameter. It provides a file in Pass1 that gives you all the metrics.
I'm aware the information is ultimately in the file, but it's a huge pain in the butt to find the frames you're interested in and look at a file of numbers without the context of seeing the video frames at the same time.

Quote:
You might also have a look at the "debug" parameter.
FWIW, in TDecimate mode=5 The information that comes via the debug parameter is as useless as in the information displayed on the screen.
Stereodude is offline   Reply With Quote
Old 28th January 2014, 00:29   #1248  |  Link
johnmeyer
Registered User
 
Join Date: Feb 2002
Location: California
Posts: 2,695
Quote:
Originally Posted by Stereodude View Post
I'm aware the information is ultimately in the file, but it's a huge pain in the butt to find the frames you're interested in and look at a file of numbers without the context of seeing the video frames at the same time.
That is most definitely true. I just wanted to make sure you knew that the information was available.

I wonder ... is there an "overlay" plugin that could that this output file, which has the frame number as the first parameter, read it, and then display the parameters onto each frame?
johnmeyer is offline   Reply With Quote
Old 28th January 2014, 01:27   #1249  |  Link
Stereodude
Registered User
 
Join Date: Dec 2002
Location: Region 0
Posts: 1,436
Quote:
Originally Posted by johnmeyer View Post
That is most definitely true. I just wanted to make sure you knew that the information was available.

I wonder ... is there an "overlay" plugin that could that this output file, which has the frame number as the first parameter, read it, and then display the parameters onto each frame?
Not sure, but it still wouldn't tell which frame was dropped, and the metrics for the removed frame.
Stereodude is offline   Reply With Quote
Old 13th March 2014, 08:41   #1250  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
Code:
TFM(clip2=nnedi3())
a=last 
crop(0,0,0,-height/6).TDecimate(mode=3,clip2=a,hybrid=2,mkvout="timecodes.txt")
I'm getting a runtime error with this any idea why?

Also getting crc errors 5 of 5 times with
Code:
#pass1
TFM(clip2=nnedi3(),output="matches.txt").TDecimate(mode=4,output="metrics.txt",hybrid=2)
#pass2
TFM(clip2=nnedi3(),input="matches.txt").TDecimate(mode=5,input="metrics.txt",tfmin="matches.txt",mkvout="timecodes.txt",hybrid=2)
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0

Last edited by turbojet; 13th March 2014 at 10:45.
turbojet is offline   Reply With Quote
Old 16th March 2014, 18:20   #1251  |  Link
osgZach
Registered User
 
Join Date: Feb 2009
Location: USA
Posts: 676
CRC error usually means your metrics do not match your file or something like that.

Try removing the hybrid=2 in your first pass? If its just metrics it shouldn't be used anyway, if I understood the manual correctly.

Or perhaps it has something to do with the way you are using nnedi3 as your clip2?

edit:

I tested out your commands, running a first pass in Vdub (analyze video)
And then a 2nd pass as a rendered output.

Didn't get any CRC errors with the source clip I used.. Maybe its your source filter? Are you using DirectShow or something? It's possible you might not be getting frame accurate input that is being altered in some way?

Last edited by osgZach; 16th March 2014 at 19:06.
osgZach is offline   Reply With Quote
Old 16th March 2014, 21:36   #1252  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
Did the first command (1 pass vfr) work for you?

According to readme, hybrid is ignored in mode=4 so that shouldn't be an issue but can be removed.

I usually use DSS2 but changing to lsmash had no effect, the error had identical crc's.

If tfm(output=matches.txt) and tdecimate(tfmin=matches.txt) are removed it works. Readme says tfmin is required for mode 5 but it runs without however the output is still interlaced. When working with 60p sources I never use tfm and vfr works fine then.

Somehow 2 pass is working now, I removed clip2=nnedi3() which didn't work on the first try but did on the second try. Now timecodes don't match the video.
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0

Last edited by turbojet; 16th March 2014 at 22:20.
turbojet is offline   Reply With Quote
Old 19th March 2014, 14:16   #1253  |  Link
osgZach
Registered User
 
Join Date: Feb 2009
Location: USA
Posts: 676
Well like I said, yes both passed worked fine for me.. exactly as you had posted them. If you were referring to something else ( different mode) I didn't test that.

I'm not familiar with Lsmash or DSS2, but generally when I am working with telecined content my sources are DVD's so I always index with DGindex and decode w/ the .d2v output and dgdecode.

If the source file isn't mpeg/can't be indexed I'd try getting it into an intermediate AVI container. If it needs to be decombed/deinterlaced you could just bob it with a good filter like QTGMC, or TGMC_mod, with a .SelectEven() and then save that output. Then run 1stpass stats for Tdec on the intermediate AVI, then run your 2nd pass to another output (intermediate for more filtering, or straight into your output like x264, etc) to see if you could get your VFR that way?

I haven't tested this, but I would assume it would work to some acceptible degree

Last edited by osgZach; 19th March 2014 at 14:19.
osgZach is offline   Reply With Quote
Old 20th March 2014, 22:49   #1254  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
I was able to get 2 pass vbr working. The mismatched frame count of timecodes file and video was an issue of calling mp4fpsmod, it works fine in an mkv.

With single pass after stripping the function I was able to get an understandable error, instead of a crash. It needs linear access but I haven't manage to get that. Tried ffvideosource(seekmode=-1 and 0) directshowsource(seekzero=true,seek=false) both are supposed to give linear access. Couldn't find a way to get it with lsmash or dss2, my preferred source filters. Any ideas?
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0
turbojet is offline   Reply With Quote
Old 22nd March 2014, 01:46   #1255  |  Link
osgZach
Registered User
 
Join Date: Feb 2009
Location: USA
Posts: 676
Try Vdub with ffmpegsource or DirectShow input drivers.

These days when I process Blurays that's what I use (ffinput driver) to load the source files for filtering with Neat Video
osgZach is offline   Reply With Quote
Old 23rd March 2014, 22:01   #1256  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
It must have been an issue with the source. This worked fine on a few other sources:

DSS2("source.mpg",preroll=60, lavd="hm1")
TFM(clip2=nnedi3())
a=last
crop(0,0,0,-height/6).TDecimate(mode=3,clip2=a,hybrid=2,mkvout="timecodes.txt")
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0
turbojet is offline   Reply With Quote
Old 1st April 2014, 00:24   #1257  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
Since development seems to have ceased years ago, I don't know how much this will help. I came across a clip that tivtc removes the wrong frames but decomb and madvr ivtc remove the correct ones. It's a typical 3:2 pattern http://180upload.com/jeqngmb3uy7p. It is a little crude, basic cable, best not to listen to at work or around kids.
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0

Last edited by turbojet; 1st April 2014 at 01:42.
turbojet is offline   Reply With Quote
Old 1st April 2014, 00:29   #1258  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Quote:
Originally Posted by turbojet View Post
Since development seems to have ceased years ago, I don't know how much this will help. I came across a clip that tivtc removes the wrong frames but decomb and madvr ivtc remove the correct ones. It's a typical 3:2 pattern http://www.mediafire.com/download/z5...ivtc_issue.mpg. It is a little crude, basic cable, best not to listen to at work or around kids.
The link does not work for me. Please correct it only if it doesn't violate rule 4, no profanity. Thank you.
Guest is offline   Reply With Quote
Old 1st April 2014, 06:05   #1259  |  Link
turbojet
Registered User
 
Join Date: May 2008
Posts: 1,840
Mediafire filter doesn't comply with fair use, uploaded it to another site and updated it. It's only talk of human anatomy.
__________________
PC: FX-8320 GTS250 HTPC: G1610 GTX650
PotPlayer/MPC-BE LAVFilters MadVR-Bicubic75AR/Lanczos4AR/Lanczos4AR LumaSharpen -Strength0.9-Pattern3-Clamp0.1-OffsetBias2.0
turbojet is offline   Reply With Quote
Old 15th August 2014, 07:45   #1260  |  Link
Okeeffe1881
Registered User
 
Okeeffe1881's Avatar
 
Join Date: Jan 2011
Location: Bucharest
Posts: 20
I use this script

DirectShowSource ("F: \ Asi - Against Destiny \ ASI \ Asi - Against Destiny Ep 2 RoSuB HD.ts", fps = 25.000, convertfps = true, audio = true) .ConvertToYV12 ()

Video format is .ts video resolution is 1920x1080i and want to conver it in 1920x1080p and I want to delete Interlaced
Any idea?
Okeeffe1881 is offline   Reply With Quote
Reply

Tags
tdeint, tivtc

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 02:48.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.