View Full Version : How to properly deinterlace? :(
Fadeout
22nd August 2015, 16:22
I'm trying to use either StaxRip or MediaCoder since I need NVENC.
The problem is trying to re-encode a 1080i 50fps to 1080p 25fps so that my TV player can read it (30fps limit).
The first attempt I made was very good. I was simply using StaxRip with FFVideoSource and SelectEven(). But of course the result is a 1080p 25fps video that is flagged as progressive but that actually shows an interlaced image. The problem is that playing this file in MadVR and forcing deinterlacing produces a so good result that I was NEVER able to match when deinterlacing BEFORE encoding the video (even at 50fps).
So, no setting I tried was able to match that. Yadif produces ugly results. No other deinterlacer produces something different from what I see in yadif, and especially the movement isn't smooth.
How the hell is even possible that my 1080p 25fps (that needs to force deinterlacing to be properly seen) retains the smooth movement of the source, but properly deinterlaced videos, even at 50fps, lose that smoothness?
I think I need some kind of magic to know how to actually do this conversion properly... Can anyone help?
LoRd_MuldeR
22nd August 2015, 16:35
The first attempt I made was very good. I was simply using StaxRip with FFVideoSource and SelectEven(). But of course the result is a 1080p 25fps video that is flagged as progressive but that actually shows an interlaced image.
Sure. Your original "interlaced" (or "field-based") input contains 50 fields per second, stored as 25 "interlaced" frames per second.
Each "interlaced" frame contains two fields. One consisting of the odd lines, and one consisting of the even lines.
Consequently, selecting every second frame (and skipping the others), which is what SelectEven() does, still gives you "interlaced" frames!
Actually you'll keep two fields, then skip the next two fields, then keep the next two fields, then skip the next two fields, and so on.
SelectEven() does not select the even lines of the frame, but it selects the frames with even index (frame #0, frame #2, frame #4, and so on).
If you want to separate the even and odd lines of a frame, you have to use SeparateFields(). But that gives you half height frames...
So, no setting I tried was able to match that. Yadif produces ugly results. No other deinterlacer produces something different from what I see in yadif, and especially the movement isn't smooth.
How the hell is even possible that my 1080p 25fps (that needs to force deinterlacing to be properly seen) retains the smooth movement of the source, but properly deinterlaced videos, even at 50fps, lose that smoothness?
I think I need some kind of magic to know how to actually do this conversion properly... Can anyone help?
I think Yadif is quite good, considering that it runs very fast. But QTGMC will give you much better results, at significantly slower processing speed!
If you use QTGMC, be sure to not apply SelectEven() or SelectOdd() before QTGMC.
You may apply one of those afterwards, on the resulting progressive frames, in order to reduce the resulting 50 fps video to 25 fps.
Fadeout
22nd August 2015, 17:07
SelectEven() does not select the even lines of the frame, but it selects the frames with even index (frame #0, frame #2, frame #4, and so on).
If you want to separate the even and odd lines of a frame, you have to use SeparateFields(). But that gives you half height frames...
I want simply to reproduce what MadVR is doing. The best thing could be if I could make DirectSource also use DXVA deinterlacing. And then encode my file from there.
The big problem here is that the file encoded with SelectEven(), so down to 25fps "interlaced" (so I guess 12.5), still looks way better than deinterlacing with Yadif while encoding a 1080p progressive at 50fps. I don't know why.
If I play the same video in VLC, with Yadif on. Then open the same video on MadVR with its own deinterlacing, the result is MUCH better in this second case, and the motion is smooth. The source file in VLC + Yadif is not smooth.
VLC + Yadif is not smooth as MadVR or even WMP. And what I see in VLC is EXACTLY what I get with my encoded videos.
This is not a problem of the quality of the interlacing, it's just that MadVR and WMP are doing something different.
Fadeout
22nd August 2015, 17:12
Wait a second, maybe I got something.
In LAV Video options, if I enable Yadif at 25/30 fps I get the same result of VLC = not smooth.
If instead I set Yadif 50/60 video then I get the smooth result I see in WMP too.
So, is there a way to do that stuff in Avisynth before encoding the file?
TheSkiller
22nd August 2015, 17:14
The source file in VLC + Yadif is not smooth.Yes, you have to select "'Yadif (2x)" in VLC for the motion to be smooth.
LoRd_MuldeR
22nd August 2015, 17:22
Yadif() can do "single rate" deinterlacing, i.e. convert 25 "interlaced" frames per second (50 fields per second) into 25 progressive frames per second.
And it can do "double rate" deinterlacing, i.e. convert 25 "interlaced" frames per second (50 fields per second) into 50 progressive frames per second.
Performing the "double rate" deinterlacing and applying SelectEven() afterwards is going to give pretty much the same result as "single rate" deinterlacing.
QTGMC always does "double rate" deinterlacing, but you can apply SelectEven() or SelectOdd() on its output, if you like 25 fps result...
johnmeyer
22nd August 2015, 17:22
Why deinterlace? Your TV is designed to play interlaced footage, and will do a great job. If you are going to re-size, then you definitely must deinterlace, but that isn't the case here. Some filters (although not all) can be made to work just fine by following the advice given in this ancient doom9.org guide:
7.2.11 Processing interlaced video (http://www.doom9.org/index.html?/capture/postprocessing_avisynth.html)
Scroll 90% of the way down the page until you get to section 7.2.11.
The results are of following this guide will still be interlaced video, but without any problems from the filter trying to work on both fields at once, which being from different moments in time sometimes (but not always) causes problems.
It would be interesting to add up all the posts in this forum about video that got screwed up by people deinterlacing incorrectly, often when they didn't need to do it. The result of such an exercise would be a two-digit integer percentage, for sure.
Fadeout
22nd August 2015, 17:23
Yes, you have to select "'Yadif (2x)" in VLC for the motion to be smooth.
I tried that, I get all the image trembling. Not sure if maybe it's not the CPU (old E8400 3Ghz) but MadVR and WMP are super smooth.
I simply want to use a similar input to encode the damn video.
Fadeout
22nd August 2015, 17:29
Why deinterlace? Your TV is designed to play interlaced footage, and will do a great job.
I use WD Live TV player. It can only go up to 1080p 30fps. So it won't play the damned 1080i 50fps.
The whole problem is I'm capturing with Avermedia Game Capture HD II, only that it can't play ITS OWN files, because it shows very ugly interlacing on some colors, like red. YET I cannot load the file in a different player, because the player doesn't support higher fps.
So I'm stuck trying to reconvert the file in a format my TV player can digest, and that means 25fps. But the file I produced with SelectEven() won't play properly because the output video is marked as "progressive". It plays fine with a PC player where you MANUALLY force deinterlacing, but I can't do that with the TV player.
NOR I was able to find a program that makes me override the metadata so that the file would be treated as interlaced.
It's a cluster of complications.
I even stalled for a long time because I was using StaxRip 64x and it didn't come with Yadif, then I tried to load the plugin manually but wouldn't, and finally figured out I needed a x64 version. That I finally found, but that didn't produce even remotely a comparable result to the standard DXVA deinterlacing I see in WMP.
johnmeyer
22nd August 2015, 17:35
I tried that, I get all the image trembling. Not sure if maybe it's not the CPU (old E8400 3Ghz) but MadVR and WMP are super smooth.
I simply want to use a similar input to encode the damn video.Your posts confuse me. You say that your original is "1080i 50 fps." Well, to me that sounds like standard PAL which is 25 fps, but is often called "50i" because it is 50 interlaced fields per second. If so, then you need to follow closely the posts already made in response to your initial query.
However, if you really do have video that is 50 interlaced frames per second, that is quite a rarity. I'm not sure I've ever come across such a thing. If that's what you really have (which I am betting you do not), then all you need to do is do a SelectEven() or SelectOdd() and you are done: just throw away half of the frames.
However, if that's not the case, then I think you need to re-read LoRd_MuldeR's two excellent posts.
Fadeout
22nd August 2015, 17:39
Your posts confuse me. You say that your original is "1080i 50 fps." Well, to me that sounds like standard PAL which is 25 fps, but is often called "50i" because it is 50 interlaced fields per second. If so, then you need to follow closely the posts already made in response to your initial query.
This is the source:
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.1
Format settings, CABAC : Yes
Format settings, ReFrames : 2 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 53s 0ms
Bit rate : 11.9 Mbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 50.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced
Scan order : Top Field First
Bits/(Pixel*Frame) : 0.115
By the way, I'm not sure how "rare" it can be since it's what's broadcasted all over Europe: https://en.wikipedia.org/wiki/Sky%2B_HD
Fadeout
22nd August 2015, 17:46
However, if you really do have video that is 50 interlaced frames per second, that is quite a rarity. I'm not sure I've ever come across such a thing. If that's what you really have (which I am betting you do not), then all you need to do is do a SelectEven() or SelectOdd() and you are done: just throw away half of the frames.
In fact I get a PERFECT result.
Problem is the output is flagged as "progressive", so the TV player doesn't know it has to activate the interlacing.
There is NO PROGRAM on the internet that makes me override the "Scan type" field and turn it back to "Interlaced". Or I would have fixed this SERVERAL hours ago.
Fadeout
22nd August 2015, 18:17
So, logic.
Source is 1080i 50fps. But being interlaced it's only 25 actual frames built by two fields.
That means that if I put together two fields and encode the resulting 1 frame, I get 25fps progressive of what should look equal to 50fps interlaced. But NOPE, this is not the case. 25fps progressive are way less smooth moving than the source.
I even tried then to go from 1080i to 1080p 50fps. But nope, no sensible change to the 25fps encode.
Then, for some magical reason, my encoded-as-is 1080i with SelectEven() but no deinterlacing applied becomes 1080p at 25 fps. But if you force interlacing in the player, then you STILL retain the smoothness of the original.
Why cannot I obtain similar results when deinterlacing is done before the encoding, and so use an output that is really progressive I can use?
johnmeyer
22nd August 2015, 18:23
Scan type : Interlaced
Scan order : Top Field First
...
Problem is the output is flagged as "progressive", so the TV player doesn't know it has to activate the interlacing.
There is NO PROGRAM on the internet that makes me override the "Scan type" field and turn it back to "Interlaced". Or I would have fixed this SERVERAL hours ago.In your previous post you copy/pasted from some program that DID correctly identify the video as interlaced (that is what I copied at the beginning of the above quote). So, if that program correctly identifies your video as standard PAL interlaced video, then if some other program (your "player") fails to read those flags, then that is the fault of the player.
This leads me back to the same recommendation: get a better player.
johnmeyer
22nd August 2015, 18:28
Once again, we are posting at the same time.
That means that if I put together two fields and encode the resulting 1 frame, I get 25fps progressive of what should look equal to 50fps interlaced. But NOPE, this is not the case. 25fps progressive are way less smooth moving than the source.
No, no, no. The even fields represent a different moment in time than the odd fields. Therefore, you cannot combine them together and play them both at the same moment in time. The resulting video will look really bad.
LoRd_MuldeR answered all these questions about interlacing in his two excellent "tutorial" posts earlier in this thread. They are worth reading a second time.
johnmeyer
22nd August 2015, 18:33
You posted as I was posting.
The key phrase I was missing is "TV player." So you are not watching this on a standard TV, but instead are watching on your computer or other device, and are using a software "player" that doesn't understand how to play 50i material.
This means your software player is crummy.
So, my solution for your problem would be to get a better video player. VLC used to be a great player, but around release 2 they totally broke it. You might try an older release if that is what you are using.
Other people can probably suggest better alternatives for players which do a good job of handling interlaced video.
The advantage of solving your problem this way is that you won't constantly have to fiddle with every video you want to watch.
vivan
22nd August 2015, 18:34
In your previous post you copy/pasted from some program that DID correctly identify the video as interlaced (that is what I copied at the beginning of the above quote). So, if that program correctly identifies your video as standard PAL interlaced video, then if some other program (your "player") fails to read those flags, then that is the fault of the player.He tries to encode it using hw encoder because his cpu is slow, but that encoder doesn't allow (or he can't find such switch) to select interlaced encoding mode. Sure with proper encoder aka x264 it's easy, --tff.
Fadeout
22nd August 2015, 18:37
No, no, no. The even fields represent a different moment in time than the odd fields. Therefore, you cannot combine them together and play them both at the same moment in time. The resulting video will look really bad.
Yet, you should be able to encode the 50i/25fps into 50fps progressive. That shouldn't be "lossy".
vivan
22nd August 2015, 18:40
Yet, you should be able to encode the 50i/25fps into 50fps progressive. That shouldn't be "lossy".Yes you should and it should be really easy.
Post video sample please.
Fadeout
22nd August 2015, 18:41
He tries to encode it using hw encoder because his cpu is slow, but that encoder doesn't allow (or he can't find such switch) to select interlaced encoding mode. Sure with proper encoder aka x264 it's easy, --tff.
It doesn't work either, since you still need to deinterlace before encoding, so you once again pass through Yadif. And doing so removes the smoothness.
There isn't any way to input an interlaced format, encode it as it is, and then tell the output file to set itself as interlaced.
You can only take the interlaced input, deinterlace, re-encode it interlaced. Which is TERRIBLE.
But what's even more absurd is that my fakely progressive 25fps file not only moves smoother, but somehow has a much better video quality despite the file size is much lower.
It doesn't make any sense.
Fadeout
22nd August 2015, 18:45
Yes you should and it should be really easy.
Post video sample please.
If I set Yadif in x2 mode, with the 50fps interlaced input I get a 100 fps progressive output from the encoder.
That I cannot even verify it works because my PC can't handle 1080p at 100fps.
If I take that file and process it through SelectEven() (so it goes back down to 50fps progressive), the result is a loss of smoothness that is exactly the same as when I apply the normal Yadif.
vivan
22nd August 2015, 18:53
If I set Yadif in x2 mode, with the 50fps interlaced input I get a 100 fps progressive output from the encoder.
That I cannot even verify it works because my PC can't handle 1080p at 100fps.
If I take that file and process it through SelectEven() (so it goes back down to 50fps progressive), the result is a loss of smoothness that is exactly the same as when I apply the normal Yadif.Well, if every field is unique (means every frame in resulting 100 fps progressive video has movement), then it's real 100 fps.
That's a lot and that's why it's weird (50i that has actually 50 interlaced frames per second) and very uncommon.
johnmeyer
22nd August 2015, 19:02
Yet, you should be able to encode the 50i/25fps into 50fps progressive. That shouldn't be "lossy".I don't think that is correct. The standard interlaced PAL video you have has 50 fields each second, but each field has only half the spatial information (i.e., only half the vertical lines). You cannot "simply" create progressive video from this footage. That just isn't how it works.
I have linked to the original doom9 post on this subject, from a decade ago, and also referred you to the earlier posts in this thread.
I can do no more.
Fadeout
22nd August 2015, 19:02
Well, if every field is unique (means every frame in resulting 100 fps progressive video has movement), then it's real 100 fps.
That's a lot and that's why it's weird (50i that has actually 50 interlaced frames per second) and very uncommon.
Considering that a straight encoding without deinterlacing along with SelectEven() (for 25fps) and then forced deinterlacing during playback retains the smoothness, then it's obvious something is wrong somewhere else.
1080p 25fps then forcing deinterlacing via player = still smooth.
1080p 50fps with deinterlacing done by Yadif before encoding = not smooth.
Fadeout
22nd August 2015, 19:06
I don't think that is correct. The standard interlaced PAL video you have has 50 fields each second, but each field has only half the spatial information (i.e., only half the vertical lines). You cannot "simply" create progressive video from this footage. That just isn't how it works.
I don't think my *monitor* is interlaced. So how the hell both MadVR and WMP can display these videos?
They must do the deinterlacing differently, because I don't think the PC player is playing the interlaced video on a interlaced display.
The problem here is that DXVA shows a smooth video. I cannot preserve any of that during encoding.
Am I wrong thinking a PC player is displaying an already deinterlaced frame?
johnmeyer
22nd August 2015, 19:08
Well, if every field is unique (means every frame in resulting 100 fps progressive video has movement), then it's real 100 fps.
That's a lot and that's why it's weird (50i that has actually 50 interlaced frames per second) and very uncommon.I thought the same thing from his earlier posts, but he later clarified that this is actually nothing more than standard PAL interlaced video. Here is what he said:
By the way, I'm not sure how "rare" it can be since it's what's broadcasted all over Europe: https://en.wikipedia.org/wiki/Sky%2B_HD
He is just having the same problem many of us had when first tried to understand that interlacing involves two separate problems: each field represents a different place in space AND a different moment in time. Any attempt to combine them together or to do filter operations on both at the same time creates huge problems because the two fields cannot be treated as one unit.
johnmeyer
22nd August 2015, 19:11
I don't think my *monitor* is interlaced. So how the hell both MadVR and WMP can display these videos?
They must do the deinterlacing differently, because I don't think the PC player is playing the interlaced video on a interlaced display.
The problem here is that DXVA shows a smooth video. I cannot preserve any of that during encoding.
Am I wrong thinking a PC player is displaying an already deinterlaced frame?As I've tried to say in earlier posts, both your TV set AND good software media players handle deinterlacing automatically, and generally do a very good job.
johnmeyer
22nd August 2015, 19:14
We're going in circles: post some video so we can see what is going on.
vivan
22nd August 2015, 19:14
I thought the same thing from his earlier posts, but he later clarified that this is actually nothing more than standard PAL interlaced video. Here is what he said:
He is just having the same problem many of us had when first tried to understand that interlacing involves two separate problems: each field represents a different place in space AND a different moment in time. Any attempt to combine them together or to do filter operations on both at the same time creates huge problems because the two fields cannot be treated as one unit.But he is saying that after proper deinterlacing he has 100 fps video.
I dunno, maybe his decoder (or encoder that produces those videos) is broken and outputs dublicated frames?
So, I repeat it, Fadeout - post sample video.
Fadeout
22nd August 2015, 19:27
I'll try later to upload some samples somewhere. In any case I'm just using StaxRip and NVENC.
I did NOT say that I get a 100fps video after proper deinterlacing. I said that if I enable Yadif in double mode I get a 100fps video.
Even MediaCoder overrides FPS through a command: fps=50,convertfps=true
But then it doesn't have a Yadif 2x option.
I think I'm using the software everyone else is using too (with the difference I need NVENC, so I can't use, for example, Megui).
Fadeout
22nd August 2015, 20:36
Hoping I'm not doing anything illegal.
This is the source I tried to convert, see if you can do better than me:
https://mega.nz/#!mxYH0IrZ!y19B3sJTz7gwCK1rQpTfTxzI-otiOhZ_JWVQLZEghxQ
Later I'll try to post also my ugly conversions.
creaothceann
22nd August 2015, 21:03
This doesn't work?
DSS2("00.mp4")
DuplicateFrame(0)
SelectEven
QTGMC(FPSDivisor=2)
Fadeout
22nd August 2015, 21:41
StaxRip says QTGMC is not a valid application, probably because it's 32bit only.
Sparktank
22nd August 2015, 22:08
This is the source I tried to convert, see if you can do better than me:
https://mega.nz/#!mxYH0IrZ!y19B3sJTz7gwCK1rQpTfTxzI-otiOhZ_JWVQLZEghxQ
Since you're using NVenc, do you have DGdecNV ?
Using its deinterlace creates 25fps with no interlacing artefacts.
Sinlge-rate and double-rate (bobbing).
deinterlace: 0/1/2 (default: 0)
Nvidia PureVideo Deinterlacer
0: no deinterlacing
1: single rate deinterlacing
2: double rate deinterlacing (bobbing)
Note that double rate deinterlacing requires Windows XP SP3!
Also note that setting deinterlace to 1 or 2 forces the field operation to be "Ignore Pulldown", regardless of the project setting.
The file has no header file.
I had to remux with FFMPEG to Matroska container and demux with eac3to (which added FPS to header), but still the elementary stream of .h264 didn't contain enough to use the free, old version of DGdec.
It works in DGdecNV.
DGSource("E:\test\a150822-1510 - 1 - h264, 1080i.dgi", debug=true, deinterlace=1)
Linked images, click and follow to expand to original sizes.
Zero rate: Frame #535
http://i.imgur.com/upCtaAtl.png (http://imgur.com/upCtaAt)
Single rate: Frame #535
http://i.imgur.com/nKUieWPl.png (http://imgur.com/nKUieWP)
Double rate: (now) Frame #1071
http://i.imgur.com/0GSXGPel.png (http://imgur.com/0GSXGPe)
Using just the MP4, DGdecNV calls the frame structure progressive.
Doing the long chain, it calls the frame structure Fields (TFF).
Either way, when you invoke "deinterlace=1" in DGSource(), it will play back in 25fps.
johnmeyer
22nd August 2015, 22:31
The video you provided is progressive. Yes, I know that it shows as interlaced TFF, but if you use separatefields() and look at it field-by-field, there is no temporal difference between fields.
Put another way: since the video is progressive, why do you need to do anything to it? Trying to deinterlace progressive video is a pointless exercise.
vivan
22nd August 2015, 22:45
Video is weird, it's progressive, but with bottom field shifted by 1 frame.
SeparateFields()
Interleave (SelectOdd().Trim(1,0), SelectEven()).Weave()Fixes the part with flying triangles.
TFM() fixes it all.
Of course it looks better than deinterlacing (http://114.imagebam.com/download/V5hsyvlGBESWUDEnyUzxPw/43089/430886512/1.png).
Put another way: since the video is progressive, why do you need to do anything to it? Trying to deinterlace progressive video is a pointless exercise.Because it has interlacing artifacts? It should be not deinterlaced, but still have to be fixed.
Fadeout
22nd August 2015, 23:10
Put another way: since the video is progressive, why do you need to do anything to it? Trying to deinterlace progressive video is a pointless exercise.
Well, this is what I see without deinterlacing:
http://i.imgur.com/1tVbJm9.jpg
So I don't know what makes you say it's progressive. Maybe you mean the image is interlaced in two fields, but there's no actual movement shift between them.
But if you are right, then why the smooth motion is lost? Maybe because this specific clip is from "film" footage, and so it's 25 fps multiplied to 50, whereas the other video I tested with the smooth movement was proper "video"? That's my guess.
Groucho2004
22nd August 2015, 23:18
Well, this is what I see without deinterlacing:
If you want to exclude any potential processing by media players you should use VirtualDub to analyse your video.
Fadeout
22nd August 2015, 23:43
Which program does this screen shot come from?
Both VLC and MPC-HC with deinterlacing off.
Does anyone know what MadVR does when forcing to deinterlace a video that is encoded as 1080p 25fps progressive? Because that retains the smooth movement even if fps were supposedly cut down.
If to go at 25fps it needs to grab two fields then it means it's effectively 12.5 fps, and that should be a fairly noticeable loss...
Or maybe it builds a frame by taking A and B field, then the next frame by using B and C, then C and D. That would somewhat preserve the same behavior of the source 1080i 50fps and justify why I see similar results.
Groucho2004
22nd August 2015, 23:46
Both VLC and MPC-HC with deinterlacing off.
Does anyone know what MadVR does when forcing to deinterlace a video that is encoded as 1080p 25fps progressive? Because that retains the smooth movement even if fps were supposedly cut down.
If to go at 25fps it needs to grab two fields then it means it's effectively 12.5 fps, and that should be a fairly well noticeable loss...
I changed my reply, make a script to load the mp4 and try with VirtualDub.
kuchikirukia
23rd August 2015, 00:05
assumeTFF()
#deinterlace
Don't deinterlace to 100fps. It ain't.
Fadeout
23rd August 2015, 00:13
Since you're using NVenc, do you have DGdecNV ?
I wouldn't know how to set up StaxRip to load it to try.
Fadeout
23rd August 2015, 00:16
assumeTFF()
This:
DSS2("%source_file%")
assumeTFF()
Produces a 50fps progressive video with interlaced artifacts (since no deinterlacing happened). I don't think that command does anything.
kuchikirukia
23rd August 2015, 00:18
^^ I added the "deinterlace" bit right after since I figured you wouldn't get it.
The deinterlacer is assuming BFF when it's TFF. Put AssumeTFF before the deinterlacing.
vivan
23rd August 2015, 00:21
Does anyone know what MadVR does when forcing to deinterlace a video that is encoded as 1080p 25fps progressive? Because that retains the smooth movement even if fps were supposedly cut down.It deinterlaces it.
If to go at 25fps it needs to grab two fields then it means it's effectively 12.5 fps, and that should be a fairly noticeable loss...How did even you came to this conslusion? Deinterlacing 25 fps video can result in either 25 ("film") or 50 ("video") fps.
Even though MI says that your sample is 50 fps - it's 25, and this is number of frames madVR gets.
Your sample has 25 fps, but tagged as 50. Some decoders try to output 50 frames per second (by dublicating every frame), some - 25.
And, as I said, it has field shifted.
One frame holds top field for this frame and bottom for next one, next one holds top field for this frame and bottom for next one and so on. Like third resulting frame there (https://en.wikipedia.org/wiki/Telecine#2:3_pulldown), but every frame is like this.
Anyway, this is what I'm getting after TFM https://dl.dropboxusercontent.com/u/16254258/d9/temp/1.mp4?dl=1
If you have another sample that has video content with 50 unique frames - post it...
Sparktank
23rd August 2015, 00:43
I wouldn't know how to set up StaxRip to load it to try.
It also requires a $15 fee for the license.
Here's the DGI index for the remuxed/demuxed elementary stream:
http://pastebin.com/kbQTr5CP
APPENDIX A: DGI File Structure [AVC]
n:FRM w x y z: A frame of type w (refer to slice types in the AVC specification) with POC x and pic_structure y and matrix coefficients z is present in the source file. FRM entries appear in display order. If pic_structure is -1, then there are no SEI's specifying the picture structure. The number n preceding FRM is the frame number (without honoring pulldown, if any).
all in the posted log are:
pic_structure= -1
SIZ 1920 x 1088
FPS 25000 / 1000
CODED 933
PLAYBACK 933
0.00% FILM
ORDER 0
ORDER n: Specifies the field order of the project: 0 = progressive, 1 = TFF, 2 = BFF.
If anyone can read DGDNV more fluently (tbh, I mostly check the DGI on MPEG2 as most 1080i blurays I have are MPEG2).
Fadeout
23rd August 2015, 01:11
Since you're using NVenc, do you have DGdecNV ?
OMG PROGRESS!!
I loaded the file into DGIndexNV to create the .dgi.
Then loaded the .dgi with DGSource into StaxRip:
Load_Stdcall_Plugin("D:\Program Files\staxrip\Apps\DGDecodeNV.dll")
DGSource("150820-1023.dgi", deinterlace=2)
The result is a 50fps progressive that ACTUALLY retains the smooth movement of the interlaced video. I never managed this before.
Problem is there seem no way to actually do something like that at 25fps, with SelectEven() I get visually the same result of Yadif.
On the plus side it's WAY faster (encodes at 100fps when before it was around 30). So at least I got something out of all this.
Is there some way to auto create and auto load the .dgi files in the StaxRip scripting editor? Or I have to do this manually every time?
kuchikirukia
23rd August 2015, 01:14
Your sample has 25 fps, but tagged as 50. Some decoders try to output 50 frames per second (by dublicating every frame), some - 25.
^^ there's that, too.
Your "selecteven" was probably just repairing the frame doubling your source filter was doing. Set it to output 25fps.
videoh
23rd August 2015, 01:20
You don't need deinterlace=2.
I agree with vivan that it is just field-shifted progressive mistagged as 50fps at container level.
Chop off the first field and encode it at 25fps progressive.
dgsource(...,deinterlace=0)
assumetff()
trim(1,0)
weave()
or use TFM() as vivan suggested, but the first way is faster if there are no further shifts in the stream.
johnmeyer
23rd August 2015, 01:24
OK, I have it figured out. I wasn't at my main editing computer earlier today, so I couldn't do a complete analysis.
1. Your video is progressive in the sense that there is no temporal difference between fields.
However ...
2. Fields from adjacent frames in the original video are combined together into new frames. Unfortunately, the fields in each frame are not matched: each frame has an odd field from one moment in time, and an even field from the next moment in time. As a result, you see what you think are interlaced herringbones when you play the video. You will see these even when you freeze-frame the video.
I came up with a quick and dirty solution that works perfectly for this video. Now that the problem is understood, perhaps others can come up with more elegant solutions. All I did was separate each frame of the video into fields. I then dropped the first field and then re-combined the video. This put the even and odd fields from the same moment in time back together into the same frame.
Here is the code I used:
assumeTFF()
separatefields()
a=selecteven().trim(1,0)
#a=selecteven() #Use this line instead of the one above to get the original video
b=selectodd()
interleave(a,b)
weave()
Once again, this entire thread shows why people should resist deinterlacing video. The OP didn't cause the problem, but whoever touched this video before he got it did some sort of deinterlacing, and got it wrong.
Fadeout
23rd August 2015, 01:28
The problem here is I gave you a sample from the same source and created the same way, but the one there was probably a "movie" original source, so it only had 25fps information expanded at 50i.
But the other sample instead is "video" and so that's why I see the movement being not smooth after interlacing. And why now with double rate at 50fps I finally have the smooth movement back (but in a progressive video, same as what MadVR was doing).
My illusion was that I was able to create a 25fps progressive that when forced to deinterlace was showing a smooth movement. But I guess converting 50 fps interlaced to 25 progressive and then forcing deinterlacing during playback effectively just reproduces what happened with the 50fps interlaced source. So nothing was actually "converted".
Now I'll try to see if this produces the same artifacts I was seeing with Yadif:
DGSource("150820-1023.dgi", deinterlace=2)
SelectEven()
Fadeout
23rd August 2015, 01:31
You don't need deinterlace=2.
I agree with vivan that it is just field-shifted progressive mistagged as 50fps at container level.
Chop off the first field and encode it at 25fps progressive.
Yes, but as I said I have two samples. I posted one because they are taken from the same source and created the same way, so I thought they were the same. But it seems instead that one is a film source and one is video source.
So while the first just contains duplicated frames, the second instead has actually the 50fps of information. So converting to 25fps progressive makes movement lose smoothness.
videoh
23rd August 2015, 01:34
We can comment only on what you give us.
If the second one is truly interlaced then dgsource(deinterlace=2) is a great solution. :) Formally, though, double-rate deinterlacing with yadif etc. should also be fine but slower.
johnmeyer
23rd August 2015, 01:37
Are you saying that I just wasted my time fixing a sample that doesn't contain the problem you are trying to fix? I hope not, because that would actually tick me off a bit.
My analysis of the video you did upload is correct, and the code I posted does fix it, perfectly.
Fadeout
23rd August 2015, 02:41
If the second one is truly interlaced then dgsource(deinterlace=2) is a great solution. :) Formally, though, double-rate deinterlacing with yadif etc. should also be fine but slower.
Not only speed, but on that video with the triangles Yadif was creating a huge number of white outlines around objects. DGsource is as good as the source video.
Are you saying that I just wasted my time fixing a sample that doesn't contain the problem you are trying to fix? I hope not, because that would actually tick me off a bit.
My analysis of the video you did upload is correct, and the code I posted does fix it, perfectly.
They are from the exact same source, I posted that one only because it was shorter and showed lots of movement.
I didn't even think that a different moment captured produced technically different footage. I thought if that was the ouput, then it was always the same.
johnmeyer
23rd August 2015, 02:44
Have you tried my script, and did it fix the problem?
Fadeout
23rd August 2015, 02:53
Here is the code I used:
This:
DGSource("%source_file%", deinterlace=0)
assumeTFF()
separatefields()
a=selecteven().trim(1,0)
b=selectodd()
interleave(a,b)
weave()
On that clip it actually produces the best result by far compared to:
DGSource("%source_file%", deinterlace=1)
On the OTHER clip it instead shows deinterlace artifacts.
So I guess despite the source and capture are the same there are different better ways to do the conversion depending on what's actually being shown.
Fadeout
23rd August 2015, 03:04
Wow... I'm reducing the bitrate and nothing is being lost.
Exact same encoding settings. File size down from 51Mb to 19Mb and still virtually identical to the source.
If instead I deinterlace I get a worse frame quality and it's actually degraded from the source.
How's it possible?
johnmeyer
23rd August 2015, 04:29
On that clip it actually produces the best result by far compared to:
DGSource("%source_file%", deinterlace=1)
On the OTHER clip it instead shows deinterlace artifacts.
So I guess despite the source and capture are the same there are different better ways to do the conversion depending on what's actually being shown.Right. If the source doesn't have the problem, then my script will actually create the problem.
I have absolutely no idea what you are talking about in your last post, and how it relates to the original problem. I think it is time for me to bow out of this thread.
Fadeout
23rd August 2015, 14:29
I have absolutely no idea what you are talking about in your last post, and how it relates to the original problem.
"How to properly deinterlace" isn't simply a very specific problem and question. Since I never dealt with this, I was asking advices from people who know what they are talking about on several levels:
- What's the best program to use, since speed is a factor and the reason why I'm using NVENC.
- How to configure Avisynth to deinterlace 1080i to progressive and 25 fps, for maximum quality and speed.
- How to encode for the best results, but with an eye to speed.
The thread was extremely useful because of these conclusions:
1- I didn't receive advices on what program to use, but StaxRip is more configurable to make it do what I want, whereas MediaCoder has more options directly in what it shows you, but it's not as easy to customize and plug in with new modules. I still have no idea if there's something better for my needs than StaxRip, or even creating some command line scripts. I'd use MeGui but it doesn't seem to support NVENC.
2a- Figuring out the existence of DGSource that is IMMENSELY FASTER than FFVideoSource. Several times faster than the previous solution using Yadif. But not only, because it also allowed to create for the first time a 50fps video that actually retained the smooth movement, that FFVideosource + Yadif completely failed to produce no matter how they were set-up. And more, producing an image that is closer to the original since Yadif was also creating white artifact lines around the shapes of the objects. So, better quality, better motion AND 4x the speed. Learning about this was game-changer.
2b- Learning that even if the capturing device is the same, even if the source captured is the same, there are DIFFERENT ideal settings that apply to the different footage "type". So while for "video" material the deinterlacing was needed, for "film" material instead the following script produces far better results:
DGSource("%source_file%", deinterlace=0)
assumeTFF()
separatefields()
a=selecteven().trim(1,0)
b=selectodd()
interleave(a,b)
weave()
As I tried to explain, with that script I can cut down the bitrate of the video BY HALF and the quality is still very close to the original. Instead if I use this:
DGSource("%source_file%", deinterlace=1)
The image quality goes down noticeably when I encode with the exact same settings. So the conclusion is that I should use two different scripts when I encode some video, depending if it's "video" source or "film" source. Because the two deliver a very noticeable different quality after the encoding.
I still don't know if the second script is the best script in the "video" case, because I only provided one sample. But I'll try to upload another in a little bit, if people still want to help.
3- One reason I was using StaxRip instead of MediaCoder is that StaxRip exposes more variables for NVENC. In MediaCoder I can't set variable bitrate, even if I'm not sure this is producing effectively a better result in StaxRip compared to a constant bitrate. StaxRip gives me CBR, VBR, CQP. So I'd have to figure out if they deliver better results.
Considering the speed up offered by DGDecodeNV I don't even know if I could use the normal x264 instead. I only aim at something close to 1.5x speed, and maybe a fast software preset is STILL superior to what the hardware encoder can do.
Fadeout
23rd August 2015, 21:08
Here's the other sample I was using that is actually interlaced, if someone wants to try how to better handle it:
https://mega.nz/#!bxxk2azb!Gvf7xZS7wW4-e3htdBJrwPE405aw5DNBN-NWUmXIj_U
Since the TV player definitely can't handle 50fps at 1080p and since with deinterlacing down to 25 there's a loss of smooth motion I thought the best option would be to scale to 720p and 50fps. But it seems with the exact same settings given to NVENC I get a file twice the size of the original, so I don't know.
videoh
23rd August 2015, 21:34
Something's wrong with your link:
"Enter decryption key:"
Fadeout
23rd August 2015, 22:22
Something's wrong with your link:
"Enter decryption key:"
Maybe you didn't copy the whole link? I've tested it on different browsers and it works.
Fadeout
23rd August 2015, 22:35
Nope, I copied it fine.
Well, the decryption key is part of that link: Gvf7xZS7wW4-e3htdBJrwPE405aw5DNBN-NWUmXIj_U
wonkey_monkey
23rd August 2015, 22:39
Copying it (the text as displayed) is the problem, because the forum software has shortened the text by replacing a central part with an ellipsis. Right click and copy link location, or just click it, and it works fine.
johnmeyer
24th August 2015, 00:32
This new sample is standard 1080i PAL video. There is nothing wrong with it and therefore no need to do anything to it if all you want to do is watch it. If your player can't play it, then the problem is with your player, and you need to get a better player. It makes no sense (to me) that you would want to waste time re-encoding a video that can be played perfectly.
I have over a dozen computers here, but in case you think I am using some fancy computer to play your video, I am not. The computer I an using right now, and on which I just played the video, is a 2.6 GHz Dell Latitude E6400 which I got from a government surplus auction. It is running Windows XP Pro 32-bit, and the installation date was April 2008. Thus, it is a seven-year-old computer. I used VLC 2.1.5 to play the video, but I would actually recommend that you use a version prior to version 2. There are, apparently, even better media players than VLC which would give you even faster performance.
So, in summary, if you really want to deinterlace and also throw away 55% of the pixels, you will be losing about 75% of the quality, and spending lots of computer time for every single video you want to view. In my opinion, this is a poor use of time. Instead, if you simply get a better media player, you can watch this video without doing anything whatsoever. That seems like a much more sensible solution.
Fadeout
24th August 2015, 00:43
This new sample is standard 1080i PAL video. There is nothing wrong with it and therefore no need to do anything to it if all you want to do is watch it. If your player can't play it, then the problem is with your player, and you need to get a better player. It makes no sense (to me) that you would want to waste time re-encoding a video that can be played perfectly.
I didn't intend a PC player, I use a Western Digital Live TV for that.
The spec page says: H.264 MP@L4.1 and HP@4.1 up to 1920x1080p24, 1920x1080i30, or 1280x720p60 resolution.
And if someone can suggest better standalone TV players I'd gladly listen ;)
johnmeyer
24th August 2015, 04:18
The spec page says: H.264 MP@L4.1 and HP@4.1 up to 1920x1080p24, 1920x1080i30, or 1280x720p60 resolution.The video you uploaded is 1920x1080i30, which is one of the specs you quoted. Therefore, if your Western Digital Live TV is not playing that video, perhaps there is a setup issue? Are you playing these videos via Wi-Fi? If so, I suspect that Wi-Fi is the problem. Have you tried playing from a thumb drive?
skywalker
7th July 2020, 19:39
Hey friends,
I've been trying to deinterlace a video for a long time, but I can't.
I am still learning little about this code language, but I hope that I can count on the help of some of you to make this hard task.
This is the original settings of my source file, which I cannot deinterlace: =(
ID : 1
Format : ProRes
Format version : Version 0
Format profile : 422 HQ
Codec ID : apch
Duration : 4 min 56 s
Bit rate mode : Variable
Bit rate : 36.4 Mb/s
Width : 720 pixels
Height : 576 pixels
Display aspect ratio : 4:3
Frame rate mode : Constant
Frame rate : 25.000 FPS
Standard : PAL
Color space : YUV
Chroma subsampling : 4:2:2
Scan type : Interlaced
Original scan type : Progressive
Scan type, store method : Interleaved fields
Scan order : Top Field First
Bits/(Pixel*Frame) : 3.506
Stream size : 1.25 GiB (94%)
Writing library : fmpg
Language : English
Matrix coefficients : BT.601
I would like to make an encoder of the video deinterlaced, maintaining the original appearance of the image, without additional filters. Just deinterlaced correctly.
Someone told me that the original file was not PAL but NTSC. So I don't know how to make it work.
I appreciate it immensely if anyone can help me with this. I would be very happy.
xD
Cary Knoop
7th July 2020, 19:49
The problem is trying to re-encode a 1080i 50fps to 1080p 25fps so that my TV player can read it (30fps limit).
Your TV should be able to handle interlaced sources fine.
Properly deinterlacing means to go from 50i to 50p as the temporal resolution of 50i is 50 samples/second.
poisondeathray
8th July 2020, 00:13
I've been trying to deinterlace a video for a long time, but I can't....
mediainfo is useless - it does not necessarily report anything about the actual content. You would need to post a sample with motion
Your TV should be able to handle interlaced sources fine.
Properly deinterlacing means to go from 50i to 50p as the temporal resolution of 50i is 50 samples/second.
You're replying to a post from 2015
skywalker
8th July 2020, 04:08
mediainfo is useless - it does not necessarily report anything about the actual content. You would need to post a sample with motion
Oh Sorry. This is the video sample. Thanks if u can help me.
https://1drv.ms/v/s!Aogdys5MhuYn30udn_6w4zeO1OZT?e=Wtvxnc
:)
poisondeathray
8th July 2020, 05:01
Oh Sorry. This is the video sample. Thanks if u can help me.
https://1drv.ms/v/s!Aogdys5MhuYn30udn_6w4zeO1OZT?e=Wtvxnc
:)
This is field blended conversion to "PAL" . It should be 23.976p
LSmashVideoSource("MC TMB.mov")
AssumeBFF()
QTGMC()
SRestore()
skywalker
8th July 2020, 14:46
Thank u poisondeathray. :)
Now, with the settings of the QTGMC that I'm trying to use to maintain excellent sharp without much denoise (trying not to make the video look like goo with thick edges). I wanted to keep a sharp and sharp video, but this message is appearing.
https://i.ibb.co/bXBLtym/1.jpg (https://imgbb.com/)
I don't know how to fix this. I already have this plugin in the AviSynth folder.
Do you know how I can solve this? :(
StainlessS
8th July 2020, 14:54
FFT3DFilter requires fftw3.dll in system32 on x86 sys,
or in sysWOW64 on x64 sys with x86 Avvisynth, or system32 if x64 system and x64 Avisynth.
EDIT: See:- https://forum.doom9.org/showthread.php?t=174470
Some filters require same dll in same place but renamed to libfftw3f-3.dll (dfttest plugin is one).
skywalker
8th July 2020, 15:29
FFT3DFilter requires fftw3.dll in system32 on x86 sys,
or in sysWOW64 on x64 sys with x86 Avvisynth, or system32 if x64 system and x64 Avisynth.
EDIT: See:- https://forum.doom9.org/showthread.php?t=174470
Some filters require same dll in same place but renamed to libfftw3f-3.dll (dfttest plugin is one).
Hey StainlessS, thanks for ask me. But I still don't understand it. I am new to this area of codes. :(
Should I download the plugins and place them in the AviSynth and System32 folders?
Can you help me how can i do this, please?
StainlessS
8th July 2020, 17:54
FFT3DFilter.dll is the avisynth plugin, BUT, it needs also the other system dll (fftw3.dll) to work.
In actual fact, I think I missed the fact that you dont have the FFT3DFilter plugin dll(here, goes in plugins):- http://avisynth.nl/index.php/FFT3DFilter
The thread on the required fftw3.dll again, as already posted:- https://forum.doom9.org/showthread.php?t=174470
This fftw3.dll goes in system32 on x86 sys, or in sysWOW64 on x64 sys running x86 Avvisynth,
or system32 if x64 system and x64 Avisynth.
List of External Plugins on wiki:- http://avisynth.nl/index.php/External_filters
skywalker
8th July 2020, 18:00
FFT3DFilter.dll is the avisynth plugin, BUT, it needs also the other system dll (fftw3.dll) to work.
In actual fact, I think I missed the fact that you dont have the FFT3DFilter plugin dll(here, goes in plugins):- http://avisynth.nl/index.php/FFT3DFilter
The thread on the required fftw3.dll again, as already posted:- https://forum.doom9.org/showthread.php?t=174470
This fftw3.dll goes in system32 on x86 sys, or in sysWOW64 on x64 sys running x86 Avvisynth,
or system32 if x64 system and x64 Avisynth.
List of External Plugins on wiki:- http://avisynth.nl/index.php/External_filters
So, I already have both FFT3DFilter and FFTW3 plugins in the AviSynth folder, but the error message still appears. I've tried several things, but I still haven't been successful. I already have all the necessary plugins. Only the one that doesn't work. I must be doing something wrong yet. I don't know what it can be yet. :(
Since English is not my native language. So mayve I can’t understand something yet.
StainlessS
8th July 2020, 18:04
I already have both FFT3DFilter and FFTW3 plugins in the AviSynth folder
Nope, not in avisynth plugins folder.
This fftw3.dll goes in system32 on x86 sys, or in sysWOW64 on x64 sys running x86 Avvisynth,
or system32 if x64 system and x64 Avisynth.
EDIT: Requirements are different, depends upon system bittage and avisynth bittage.
From 1st link in post #77.
Runtime dependencies
The following are required, FFT3DFilter will not run or load without them.
FFTW 3.3.5 (fftw-3.3.5-dll32.zip or fftw-3.3.5-dll64.zip)
*** 32-bit libfftw3f-3.dll needs to be in the search path (C:\Windows\SysWOW64 64-bit OS or C:\windows\system32 32-bit OS)
*** 64-bit libfftw3f-3.dll needs to be in the search path (C:\windows\system32 64-bit OS)
EDIT: Also, 32 bit Avisynth requires 32 bit dll's, and 64 bit Avisynth requires 64 bit dll's.
skywalker
8th July 2020, 18:25
Nope, not in avisynth plugins folder.
EDIT: Requirements are different, depends upon system bittage and avisynth bittage.
From 1st link in post #77.
EDIT: Also, 32 bit Avisynth requires 32 bit dll's, and 64 bit Avisynth requires 64 bit dll's.
Now I get the message:
LoadPlugin: unable to load "C:\Windows\System32\fftw3f-3.dll", Module not found. Install missing library? The libraries are in the same folder already.
StainlessS
8th July 2020, 21:52
If your Avisynth plugin is in Plugins directory, then you dont need LoadPlugin() call, it is loaded automatically.
If not in Plugins directory, then use eg LoadPlugin("D:\SomePath\FFT3DFilter.dll"),
you do not try to load "C:\Windows\System32\fftw3f-3.dll", the FFT3DFilter.dll will load that itself (also it should be called either fftw3.dll or libfftw3f-3.dll).
EDIT: Also these two from Groucho's Avisynth Stuff, are handy:- https://forum.doom9.org/showthread.php?t=173259
AVSMeter (forum thread (https://forum.doom9.org/showthread.php?t=174797))
AVSMeter is a CLI (command line interface) tool which measures the speed/efficiency of Avisynth scripts and checks if Avisynth and its plugin sub-system are set up and working correctly.
Avisynth Info Tool (forum thread (https://forum.doom9.org/showthread.php?t=176079))
This program performs a thorough test of your Avisynth installation and associated plugins, checking if external dependencies are installed, etc.
skywalker
9th July 2020, 00:37
If your Avisynth plugin is in Plugins directory, then you dont need LoadPlugin() call, it is loaded automatically.
If not in Plugins directory, then use eg LoadPlugin("D:\SomePath\FFT3DFilter.dll"),
you do not try to load "C:\Windows\System32\fftw3f-3.dll", the FFT3DFilter.dll will load that itself (also it should be called either fftw3.dll or libfftw3f-3.dll).
EDIT: Also these two from Groucho's Avisynth Stuff, are handy:- https://forum.doom9.org/showthread.php?t=173259
All right now. :) Soooo thank you for helping me solve this StainlessS. :) Now I got a dark image result. The colors were changed, all in dark, black tones.
I need to find out what that is now. :(
Anyway, I am happy and very grateful for the help. Thank you for giving me some of your time.
StainlessS
9th July 2020, 00:57
Now I got a dark image result. The colors were changed, all in dark, black tones.
What does that mean ?, post your script, and ideally a clip sample.
skywalker
9th July 2020, 01:02
What does that mean ?, post your script, and ideally a clip sample.
Now I have this
https://i.ibb.co/Y31sPK2/Teste-avs-snapshot-00-15-502.jpg (https://ibb.co/rmzrFLk)
My Script is:
LSmashVideoSource ("Teste.mov", format="YUV422P8").ConvertToYV12(interlaced=true)
Trim (00748, 00000)
AssumeBFF()
QTGMC (Preset="Slower", NoiseProcess=1, NoiseRestore=1.0, Sigma=2.0)
SRestore()
BilinearResize(720,480)
poisondeathray
9th July 2020, 01:02
You probably need to update the prerequisites for QTGMC to the newest versions.
http://avisynth.nl/index.php/QTGMC#Core_Plugins_and_Scripts
That "dark" problem has been discussed before. It was either an old version of masktools or mvtools, I can't recall exactly
skywalker
9th July 2020, 01:25
You probably need to update the prerequisites for QTGMC to the newest versions.
http://avisynth.nl/index.php/QTGMC#Core_Plugins_and_Scripts
That "dark" problem has been discussed before. It was either an old version of masktools or mvtools, I can't recall exactly
I already have these latest update versions in the avisynth folder. :(
poisondeathray
9th July 2020, 01:29
List your versions using that groucho avisynth info tool . There is likely some old plugin or script there causing it
skywalker
9th July 2020, 01:42
List your versions using that groucho avisynth info tool . There is likely some old plugin or script there causing it
My system won't let I download it (AVS Info Tools). My system says it has a virus and automatically deletes it. :(
Wow, I'm feeling like an ass doing these things. :( It is not easy to be a beginner. Lol
poisondeathray
9th July 2020, 01:56
My system won't let I download it (AVS Info Tools). My system says it has a virus and automatically deletes it. :(
Wow, I'm feeling like an ass doing these things. :( It is not easy to be a beginner. Lol
Then clean out your plugins folder manually and replace them one by one , both the .dll's and .avsi's . Very likely you have an old version somewhere causing this - it's happened to other people too
StainlessS
9th July 2020, 04:11
On Avisynth InfoTool [Windows defender was only Anti virus flagging it out of over 50 anti-virus suites on virustotal.com]
Darn Defender still rejects it.
Last version which was accepted by Defender was v 1.0.7.
AvsMeter avsinfo
Produces list of installed plugins.
AvsMeter avsinfo -l
Will also prompt where to write log file.
skywalker
9th July 2020, 17:12
Hey brothers. I am very grateful for all your help and for donating your time.
I spent the whole night changing the plugins in the avisynth folder to the most updated versions.
Now I can't open this script anymore. This message appears:
https://i.ibb.co/nC81S2S/Capturar.jpg (https://imgbb.com/)
imagem online (https://pt-br.imgbb.com/)
:(
Well! I think I give up. There are times when I don't know what else to do or what to think about to try to solve each problem that appears.
Anyway, I'm very happy that you donated a little of your time.
Maybe I will try another script later that doesn't use FFT3DFilter.dll
I hope that one day I will be able to untangle the videos I have and make it very sharp without looking like goo with thick edges.
I know this is possible. Maybe with a cooler head I will try again.
Thank you brothers. I will try to read some other topics to see if I can join this journey that I admire so much.
Thank u StainlessS, thank u poisondeathray, Maybe one day I'll be as good as you are to understand all this. :)
StainlessS
10th July 2020, 11:04
Post result of "AvsMeter avsinfo -l" from CLI .
skywalker
10th July 2020, 17:12
Post result of "AvsMeter avsinfo -l" from CLI .
AVS Info. I don't understand any of this :(
[OS/Hardware info]
Operating system: Windows 10 (x64) (Build 18362)
CPU: Intel(R) Core(TM) i3-6006U CPU @ 2.00GHz / Skylake (Core i3)
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, FMA3, RDSEED, ADX, AVX, AVX2
2 physical cores / 4 logical cores
[Avisynth info]
VersionString: AviSynth 2.60, build:Mar 31 2015 [16:38:54]
VersionNumber: 2.60
File / Product version: 2.6.0.6 / 2.6.0.6
Interface Version: 6
Multi-threading support: No
Avisynth.dll location: C:\WINDOWS\SysWOW64\avisynth.dll
Avisynth.dll time stamp: 2015-03-31, 06:40:58 (UTC)
PluginDir2_5 (HKLM, x86): C:\Program Files (x86)\AviSynth\plugins
[C++ 2.5 Plugins (32 Bit)]
C:\Program Files (x86)\AviSynth\plugins\avstp.dll [1.0.3.0]
C:\Program Files (x86)\AviSynth\plugins\ColorMatrix.dll [2.5.0.0]
C:\Program Files (x86)\AviSynth\plugins\dctfun4b.dll [2006-02-05]
C:\Program Files (x86)\AviSynth\plugins\degrainmedian.dll [0.8.2.0]
C:\Program Files (x86)\AviSynth\plugins\dither.dll [2015-12-30]
C:\Program Files (x86)\AviSynth\plugins\LeakKernelDeint.dll [1.5.4.0]
C:\Program Files (x86)\AviSynth\plugins\SplineResize.dll [2009-09-12]
[C++ 2.6 Plugins (32 Bit)]
C:\Program Files (x86)\AviSynth\plugins\aWarpSharp.dll [2016-06-24]
C:\Program Files (x86)\AviSynth\plugins\DePan.dll [2.13.1.6]
C:\Program Files (x86)\AviSynth\plugins\DePanEstimate.dll [2.10.0.4]
C:\Program Files (x86)\AviSynth\plugins\DirectShowSource.dll [2.6.0.3]
C:\Program Files (x86)\AviSynth\plugins\ffms2.dll [2016-12-29]
C:\Program Files (x86)\AviSynth\plugins\fft3dfilter.dll [2.6.0.0]
C:\Program Files (x86)\AviSynth\plugins\grunt.dll [1.0.2.0]
C:\Program Files (x86)\AviSynth\plugins\KNLMeansCL.dll [2018-01-29]
C:\Program Files (x86)\AviSynth\plugins\LSMASHSource.dll [2020-05-31]
C:\Program Files (x86)\AviSynth\plugins\masktools2.dll [2.2.24.0]
C:\Program Files (x86)\AviSynth\plugins\mvtools2.dll [2.7.43.0]
C:\Program Files (x86)\AviSynth\plugins\nnedi3.dll [0.9.4.55]
C:\Program Files (x86)\AviSynth\plugins\RgTools.dll [1.0.0.0]
C:\Program Files (x86)\AviSynth\plugins\TCPDeliver.dll [2.6.0.7]
C:\Program Files (x86)\AviSynth\plugins\variableblur.dll [2019-04-07]
[Scripts (AVSI)]
C:\Program Files (x86)\AviSynth\plugins\colors_rgb.avsi [2015-03-30]
C:\Program Files (x86)\AviSynth\plugins\DebilinearM.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\Dither.avsi [2015-12-30]
C:\Program Files (x86)\AviSynth\plugins\EDI_Rpow2.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\EEDI3_Resize16.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\FFMS2.avsi [2015-05-22]
C:\Program Files (x86)\AviSynth\plugins\MAA2.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\MT_Xxpand_Multi.avsi [2010-09-11]
C:\Program Files (x86)\AviSynth\plugins\NnChromaUpSubSampling.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\Placebo.avsi [2020-07-04]
C:\Program Files (x86)\AviSynth\plugins\QTGMCv2020.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\ResizeX.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\SRestore.avsi [2018-07-12]
C:\Program Files (x86)\AviSynth\plugins\SSSharpFaster.avsi [2020-06-24]
C:\Program Files (x86)\AviSynth\plugins\SuperSlowSharpen.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi [2020-07-09]
[Uncategorized DLLs (32 Bit)]
C:\Program Files (x86)\AviSynth\plugins\libfftw3f-3.dll [2020-04-17]
[Uncategorized DLLs (64 Bit)]
C:\Program Files (x86)\AviSynth\plugins\DGDecode.dll [1.5.8.0]
[Plugin errors/warnings]
________________________________________________________________________________
Function duplicates:
"AverageChromaU" : "[InternalFunction]"
"AverageChromaU" : "[PluginFunction]"
"AverageChromaV" : "[InternalFunction]"
"AverageChromaV" : "[PluginFunction]"
"AverageLuma" : "[InternalFunction]"
"AverageLuma" : "[PluginFunction]"
"AvsPlusVersionNumber" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"AvsPlusVersionNumber" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"ChromaUDifference" : "[InternalFunction]"
"ChromaUDifference" : "[PluginFunction]"
"ChromaVDifference" : "[InternalFunction]"
"ChromaVDifference" : "[PluginFunction]"
"ConditionalFilter" : "[InternalFunction]"
"ConditionalFilter" : "[PluginFunction]"
"ContraSharpeningHD" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"ContraSharpeningHD" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"DirectShowSource" : "[InternalFunction]"
"DirectShowSource" : "[PluginFunction]"
"Dither_Luma_Rebuild" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"Dither_Luma_Rebuild" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"Dither_min_dif16" : "[PluginFunction]"
"Dither_min_dif16" : "C:\Program Files (x86)\AviSynth\plugins\Placebo.avsi"
"Dither_YUY2toInterleaved16" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"Dither_YUY2toInterleaved16" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"Dither_YUY2toInterleaved" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"Dither_YUY2toInterleaved" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"Dither_YUY2toPlanar16" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"Dither_YUY2toPlanar16" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"Dither_YUY2toPlanar" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"Dither_YUY2toPlanar" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"FrameEvaluate" : "[InternalFunction]"
"FrameEvaluate" : "[PluginFunction]"
"IsAvsNeo" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"IsAvsNeo" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"IsAvsPlus" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"IsAvsPlus" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"LumaDifference" : "[InternalFunction]"
"LumaDifference" : "[PluginFunction]"
"MinBlur" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"MinBlur" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"RGBDifferenceFromPrevious" : "[InternalFunction]"
"RGBDifferenceFromPrevious" : "[PluginFunction]"
"RGBDifferenceToNext" : "[InternalFunction]"
"RGBDifferenceToNext" : "[PluginFunction]"
"RGBDifference" : "[InternalFunction]"
"RGBDifference" : "[PluginFunction]"
"sbr" : "C:\Program Files (x86)\AviSynth\plugins\SMDegrain.avsi"
"sbr" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"ScriptClip" : "[InternalFunction]"
"ScriptClip" : "[PluginFunction]"
"TCPServer" : "[InternalFunction]"
"TCPServer" : "[PluginFunction]"
"TCPSource" : "[InternalFunction]"
"TCPSource" : "[PluginFunction]"
"UDifferenceFromPrevious" : "[InternalFunction]"
"UDifferenceFromPrevious" : "[PluginFunction]"
"UDifferenceToNext" : "[InternalFunction]"
"UDifferenceToNext" : "[PluginFunction]"
"undefined" : "[InternalFunction]"
"Undefined" : "C:\Program Files (x86)\AviSynth\plugins\ZsRFShared.avsi"
"UPlaneMax" : "[InternalFunction]"
"UPlaneMax" : "[PluginFunction]"
"UPlaneMedian" : "[InternalFunction]"
"UPlaneMedian" : "[PluginFunction]"
"UPlaneMinMaxDifference" : "[InternalFunction]"
"UPlaneMinMaxDifference" : "[PluginFunction]"
"UPlaneMin" : "[InternalFunction]"
"UPlaneMin" : "[PluginFunction]"
"VDifferenceFromPrevious" : "[InternalFunction]"
"VDifferenceFromPrevious" : "[PluginFunction]"
"VDifferenceToNext" : "[InternalFunction]"
"VDifferenceToNext" : "[PluginFunction]"
"VPlaneMax" : "[InternalFunction]"
"VPlaneMax" : "[PluginFunction]"
"VPlaneMedian" : "[InternalFunction]"
"VPlaneMedian" : "[PluginFunction]"
"VPlaneMinMaxDifference" : "[InternalFunction]"
"VPlaneMinMaxDifference" : "[PluginFunction]"
"VPlaneMin" : "[InternalFunction]"
"VPlaneMin" : "[PluginFunction]"
"WriteFileIf" : "[InternalFunction]"
"WriteFileIf" : "[PluginFunction]"
"WriteFile" : "[InternalFunction]"
"WriteFile" : "[PluginFunction]"
"YDifferenceFromPrevious" : "[InternalFunction]"
"YDifferenceFromPrevious" : "[PluginFunction]"
"YDifferenceToNext" : "[InternalFunction]"
"YDifferenceToNext" : "[PluginFunction]"
"YPlaneMax" : "[InternalFunction]"
"YPlaneMax" : "[PluginFunction]"
"YPlaneMedian" : "[InternalFunction]"
"YPlaneMedian" : "[PluginFunction]"
"YPlaneMinMaxDifference" : "[InternalFunction]"
"YPlaneMinMaxDifference" : "[PluginFunction]"
"YPlaneMin" : "[InternalFunction]"
"YPlaneMin" : "[PluginFunction]"
________________________________________________________________________________
poisondeathray
10th July 2020, 17:21
You should update avisynth; you're using a one from 2015
Either that, or downgrade everything. Use old versions of everything around the same time (~2015). (not recommended, many bug fixes in plugins, scripts, avisynth over the years)
skywalker
10th July 2020, 17:38
You should update avisynth; you're using a one from 2015
Either that, or downgrade everything. Use old versions of everything around the same time (~2015). (not recommended, many bug fixes in plugins, scripts, avisynth over the years)
EDIT: I instaled avisynth 2.6. How I update it?
poisondeathray
10th July 2020, 17:42
What are you using ? x86 or x64 avisynth?
Actually, that avsmeter report is for x86
Check again with avsmeter64 and post the report
AvsMeter64 avsinfo -l
skywalker
10th July 2020, 18:17
What are you using ? x86 or x64 avisynth?
Actually, that avsmeter report is for x86
Check again with avsmeter64 and post the report
AvsMeter64 avsinfo -l
I cannot open the AVSMeter. It opens and closes the prompt before I see it. This data is from AVSINfo. I use x86
poisondeathray
10th July 2020, 18:58
Install avisynth+ 3.6.1 .
https://github.com/AviSynth/AviSynthPlus/releases
Or use groucho's installer
https://forum.doom9.org/showthread.php?t=172124
Or just replace the .dll with the appropriate version of avisynth.dll in C:\WINDOWS\SysWOW64\ directory for x86 . It's in the "files only" download
skywalker
10th July 2020, 19:09
Install avisynth+ 3.6.1 .
https://github.com/AviSynth/AviSynthPlus/releases
Or use groucho's installer
https://forum.doom9.org/showthread.php?t=172124
Or just replace the .dll with the appropriate version of avisynth.dll in C:\WINDOWS\SysWOW64\ directory for x86 . It's in the "files only" download
Done.
poisondeathray
10th July 2020, 19:31
So preview the script again
If MPCHC x86 has problems, try vdub2 x86, or avspmod x86
Any reason why you are using avisynth x86 instead of x64 ?
skywalker
10th July 2020, 19:47
So preview the script again
If MPCHC x86 has problems, try vdub2 x86, or avspmod x86
Any reason why you are using avisynth x86 instead of x64 ?
There are still some error:
[Avisynth info]
VersionString: AviSynth+ 3.6.1 (r3300, 3.6, i386)
VersionNumber: 2.60
File / Product version: 3.6.1.0 / 3.6.1.0
Interface Version: 8
Multi-threading support: Yes
Avisynth.dll location: C:\WINDOWS\SysWOW64\avisynth.dll
Avisynth.dll time stamp: 2020-06-20, 00:48:04 (UTC)
PluginDir2_5 (HKLM, x86): C:\Program Files (x86)\AviSynth+\plugins
PluginDir+ (HKLM, x86): C:\Program Files (x86)\AviSynth+\plugins+
[C++ 2.5 Plugins (32 Bit)]
C:\Program Files (x86)\AviSynth+\plugins\SplineResize.dll [2009-09-12]
[C++ 2.6 Plugins (32 Bit)]
C:\Program Files (x86)\AviSynth+\plugins+\ConvertStacked.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins+\DirectShowSource.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins+\ImageSeq.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins+\Shibatch.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins+\TimeStretch.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins+\VDubFilter.dll [2020-06-20]
C:\Program Files (x86)\AviSynth+\plugins\fft3dfilter.dll [2.6.0.0]
C:\Program Files (x86)\AviSynth+\plugins\grunt.dll [1.0.2.0]
C:\Program Files (x86)\AviSynth+\plugins\LSMASHSource.dll [2020-05-31]
C:\Program Files (x86)\AviSynth+\plugins\masktools2.dll [2.2.24.0]
C:\Program Files (x86)\AviSynth+\plugins\mvtools2.dll [2.7.43.0]
C:\Program Files (x86)\AviSynth+\plugins\nnedi3.dll [0.9.4.55]
C:\Program Files (x86)\AviSynth+\plugins\RgTools.dll [1.0.0.0]
[Scripts (AVSI)]
C:\Program Files (x86)\AviSynth+\plugins+\colors_rgb.avsi [2020-05-20]
C:\Program Files (x86)\AviSynth+\plugins\QTGMCv2020.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi [2020-07-09]
C:\Program Files (x86)\AviSynth+\plugins\SRestore.avsi [2018-07-12]
C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi [2020-07-09]
[Uncategorized files]
C:\Program Files (x86)\AviSynth+\plugins+\colors_rgb.txt [2020-05-20]
[Plugin errors/warnings]
________________________________________________________________________________
Function duplicates:
"AverageChromaU" : "[InternalFunction]"
"AverageChromaU" : "[PluginFunction]"
"AverageChromaV" : "[InternalFunction]"
"AverageChromaV" : "[PluginFunction]"
"AverageLuma" : "[InternalFunction]"
"AverageLuma" : "[PluginFunction]"
"AvsPlusVersionNumber" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"AvsPlusVersionNumber" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"ChromaUDifference" : "[InternalFunction]"
"ChromaUDifference" : "[PluginFunction]"
"ChromaVDifference" : "[InternalFunction]"
"ChromaVDifference" : "[PluginFunction]"
"ConditionalFilter" : "[InternalFunction]"
"ConditionalFilter" : "[PluginFunction]"
"ContraSharpeningHD" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"ContraSharpeningHD" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"Dither_Luma_Rebuild" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"Dither_Luma_Rebuild" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"Dither_YUY2toInterleaved16" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"Dither_YUY2toInterleaved16" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"Dither_YUY2toInterleaved" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"Dither_YUY2toInterleaved" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"Dither_YUY2toPlanar16" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"Dither_YUY2toPlanar16" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"Dither_YUY2toPlanar" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"Dither_YUY2toPlanar" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"FrameEvaluate" : "[InternalFunction]"
"FrameEvaluate" : "[PluginFunction]"
"IsAvsNeo" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"IsAvsNeo" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"IsAvsPlus" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"IsAvsPlus" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"LumaDifference" : "[InternalFunction]"
"LumaDifference" : "[PluginFunction]"
"MinBlur" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"MinBlur" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"RGBDifferenceFromPrevious" : "[InternalFunction]"
"RGBDifferenceFromPrevious" : "[PluginFunction]"
"RGBDifferenceToNext" : "[InternalFunction]"
"RGBDifferenceToNext" : "[PluginFunction]"
"RGBDifference" : "[InternalFunction]"
"RGBDifference" : "[PluginFunction]"
"sbr" : "C:\Program Files (x86)\AviSynth+\plugins\SMDegrain.avsi"
"sbr" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"ScriptClip" : "[InternalFunction]"
"ScriptClip" : "[PluginFunction]"
"UDifferenceFromPrevious" : "[InternalFunction]"
"UDifferenceFromPrevious" : "[PluginFunction]"
"UDifferenceToNext" : "[InternalFunction]"
"UDifferenceToNext" : "[PluginFunction]"
"undefined" : "[InternalFunction]"
"Undefined" : "C:\Program Files (x86)\AviSynth+\plugins\ZsRFShared.avsi"
"UPlaneMax" : "[InternalFunction]"
"UPlaneMax" : "[PluginFunction]"
"UPlaneMedian" : "[InternalFunction]"
"UPlaneMedian" : "[PluginFunction]"
"UPlaneMinMaxDifference" : "[InternalFunction]"
"UPlaneMinMaxDifference" : "[PluginFunction]"
"UPlaneMin" : "[InternalFunction]"
"UPlaneMin" : "[PluginFunction]"
"VDifferenceFromPrevious" : "[InternalFunction]"
"VDifferenceFromPrevious" : "[PluginFunction]"
"VDifferenceToNext" : "[InternalFunction]"
"VDifferenceToNext" : "[PluginFunction]"
"VPlaneMax" : "[InternalFunction]"
"VPlaneMax" : "[PluginFunction]"
"VPlaneMedian" : "[InternalFunction]"
"VPlaneMedian" : "[PluginFunction]"
"VPlaneMinMaxDifference" : "[InternalFunction]"
"VPlaneMinMaxDifference" : "[PluginFunction]"
"VPlaneMin" : "[InternalFunction]"
"VPlaneMin" : "[PluginFunction]"
"WriteFileIf" : "[InternalFunction]"
"WriteFileIf" : "[PluginFunction]"
"WriteFile" : "[InternalFunction]"
"WriteFile" : "[PluginFunction]"
"YDifferenceFromPrevious" : "[InternalFunction]"
"YDifferenceFromPrevious" : "[PluginFunction]"
"YDifferenceToNext" : "[InternalFunction]"
"YDifferenceToNext" : "[PluginFunction]"
"YPlaneMax" : "[InternalFunction]"
"YPlaneMax" : "[PluginFunction]"
"YPlaneMedian" : "[InternalFunction]"
"YPlaneMedian" : "[PluginFunction]"
"YPlaneMinMaxDifference" : "[InternalFunction]"
"YPlaneMinMaxDifference" : "[PluginFunction]"
"YPlaneMin" : "[InternalFunction]"
"YPlaneMin" : "[PluginFunction]"
________________________________________________________________________________
:(
But it's working fine now.
Thank u soooooo much :D
poisondeathray
10th July 2020, 20:17
Those remaining "errors" are fairly benign - just function duplicates . You can ignore them
skywalker
10th July 2020, 20:30
Those remaining "errors" are fairly benign - just function duplicates . You can ignore them
Which "errors" are considered bad?
PS: One more thing, to synchronize the audio I only need to add AssumeFPS() after the LSmashVideoSource?
poisondeathray
10th July 2020, 20:34
Which "errors" are considered bad?
Not sure, when something doesn't work ?
PS: One more thing, to synchronize the audio I only need to add AssumeFPS() after the LSmashVideoSource?
Not necessary, it does not change the audio
The video is the same length (running time). If it was in sync before, it should be in sync after
skywalker
10th July 2020, 20:41
Not necessary, it does not change the audio
The video is the same length (running time). If it was in sync before, it should be in sync after
Even after using the SRestore, don't I need to change the audio? When I go to make the muxer everything will be fine?
poisondeathray
10th July 2020, 20:59
Even after using the SRestore, don't I need to change the audio? When I go to make the muxer everything will be fine?
Yes, video the same length (duration). 23.976p, but fewer frames.
If it was in sync before, it will be in sync after
You're just undoing the field blends used to convert 23.976p to 25p.
skywalker
10th July 2020, 21:14
Yes, video the same length (duration). 23.976p, but fewer frames.
If it was in sync before, it will be in sync after
You're just undoing the field blends used to convert 23.976p to 25p.
My conversion is the inverse 25 to 23.976p. Still all right?
poisondeathray
10th July 2020, 21:30
Yes
Its not a PAL "slowdown" or "speedup".
For you, the audio is not changed - it was just a blend conversion to PAL. You're only converting the video back to the original
If it was a conversion to PAL using speedup, there would be no blends and the audio would be sped up, duration shorter . In that case to reverse it you only use AssumeFPS ,and slow down the audio too (either with sync_audio=true, or in an audio editor)
skywalker
10th July 2020, 21:44
Yes
Its not a PAL "slowdown" or "speedup".
For you, the audio is not changed - it was just a blend conversion to PAL. You're only converting the video back to the original
If it was a conversion to PAL using speedup, there would be no blends and the audio would be sped up, duration shorter . In that case to reverse it you only use AssumeFPS ,and slow down the audio too (either with sync_audio=true, or in an audio editor)
Thank you sooo much. I hope I can learn more about avisinth so that I can cooperate with something in the future as well. :D
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.