VideoHelp Forum
+ Reply to Thread
Page 3 of 4
FirstFirst 1 2 3 4 LastLast
Results 61 to 90 of 94
Thread
  1. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    I was just checking that Dehalo alpha mt.avsi is safe to use as on the Avisynth.nl page it mentioned it may contain malicious code? This was in 2013 but I wasn't sure if it had been corrected? Without the Dehalo alpha the rest of the script run fine. Thanks.
    Quote Quote  
  2. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Originally Posted by SkyBlues2021 View Post
    I was just checking that Dehalo alpha mt.avsi is safe to use as on the Avisynth.nl page it mentioned it may contain malicious code? This was in 2013 but I wasn't sure if it had been corrected? Without the Dehalo alpha the rest of the script run fine. Thanks.
    What mentions malicious code? Your anti-virus?
    Quote Quote  
  3. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks davexnet. This is on the Avisynth.nl site. I just was unsure if it's been rectified.
    Image Attached Thumbnails Click image for larger version

Name:	Dehalo alpha malicious.JPG
Views:	14
Size:	57.0 KB
ID:	67670  

    Quote Quote  
  4. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    .avsi is just a plain script. Why don't you download it to your hdd, look at it in notepad and submit it to virustotal?
    Is that pop-up from windows itself? Smartscreen?
    Which web browser, which a/v?
    Quote Quote  
  5. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks davexnet. I just wasn't sure if there was a problem with the script that could cause problems. I've attached the full page.
    Image Attached Thumbnails Click image for larger version

Name:	Dehalo alpha page.JPG
Views:	20
Size:	165.0 KB
ID:	67671  

    Quote Quote  
  6. That's just a CYA message. AVSI files are plain text. That is identical to the file at http://avisynth.nl/index.php/DeHalo_alpha except for the name of the function dehalo_alpha_mt() vs dehalo_alpha(). I have the latter and have been using it for years.

    If you're really paranoid you can check it out at: https://www.virustotal.com/gui/home/upload
    Quote Quote  
  7. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. I will add it to my plugins. Thank you for the explanation.
    Quote Quote  
  8. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    I've attached the encoded clip of jagabo's script. I'm hoping I did ok. Thanks.
    Image Attached Files
    Quote Quote  
  9. That looks about the same as the video I encoded. Are you happy with it? Are you looking for something else?
    Quote Quote  
  10. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. I'm just glad I hadn't done it wrong again! It looks great, thank you. I will watch it on my tv tomorrow evening.
    If I wanted to keep the video interlaced, could I use the same script minus the 2 QTGMC lines of script? If so would I have to add another denoiser? Thanks.
    Quote Quote  
  11. [QUOTE=SkyBlues2021;2672773]If I wanted to keep the video interlaced, could I use the same script minus the 2 QTGMC lines of script?[?QUOTE]
    No, pretty much everything after the first QTGMC requires progressive frames. For some filters you can use a sequence like:

    Code:
    SeparateFields()
    
    progressive_filters()
    
    Weave()
    or

    Code:
    SeparateFields()
    even = SelectEven() # a sequence of all the even fields
    odd = SelectOdd() # a sequence of all the odd fields
    
    even = even.progressive_filters()
    odd = odd.progressive_filters()
    
    Interleave(even, odd) # re-interleave the even and odd fields
    Weave() # and weave them back into interlaced frames
    But both of those are less than ideal. Both have issues where lines that aren't adjacent to each other, spacially and/or temporally, are treated as if they are.

    A lot of filters that support interlaced video do one of those things internally.
    Quote Quote  
  12. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. Sorry I didn't explain myself properly. What I mean to say was.
    Now I know the problem wasn't a deinterlacing problem as you corrected it with SeparateFields().vinverse().Weave()
    Could I try a script that stays interlaced and uses SeparateFields().vinverse().Weave() and avoids deinterlacing altogether? So that I can see the difference between the two on my tv. Thanks.
    Quote Quote  
  13. Sure, just eliminate everything after SeparateFields().vinverse().Weave() and encode interlaced.
    Quote Quote  
  14. Captures & Restoration lollo's Avatar
    Join Date
    Jul 2018
    Location
    Italy
    Search Comp PM
    But both of those are less than ideal. Both have issues where lines that aren't adjacent to each other, spacially and/or temporally, are treated as if they are.
    Yes. In order to process interlaced materials that should stay interlaced at the end, I use a (temporary) lossless deinterlacing before the filtering:

    Code:
    AssumeTFF().QTGMC(lossless=1)
    
    progressive_filters()
    
    AssumeTFF().SeparateFields().SelectEvery(4,0,3).Weave()
    The original fields are untouched, the frames are processed as progressive, and the rebuilt fields/frames from QTGMC are thrown away at the end.
    Quote Quote  
  15. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thank jagabo & lollo.
    I removed those lines from the script. I'm assuming I leave the edgemask, Overly, MergeChroma, ChromaShiftSP and Crop lines in the script. Thanks.

    Code:

    AviSource("TAPE 20 13-11.avi")
    AssumeTFF()
    ConvertToYV12(interlaced=true)

    ColorYUV(gain_y=32, off_y=-25, gamma_y=25)
    SeparateFields().vInverse().Weave()

    edgemask = mt_edge(mode="prewitt", thy1=220, thy2=220).mt_expand().mt_expand().Blur(1.4).Blur(1 .4).Blur(1.4)
    Overlay(last, Dehalo_alpha(rx=4.0, ry=3.0, BrightStr=0.8, DarkStr=0.8).Blur(0.5), mask=edgemask)

    MergeChroma(last, Spline36Resize(width/2,height).aWarpSharp2(depth=20).Spline36Resize(wid th,height))
    ChromaShiftSP(x=-2, y=0)

    Crop(8,6,-20,-10).AddBorders(6,8,6,8)
    Quote Quote  
  16. No. As I said earlier almost everything after the first QTGMC only works properly on progressive frames.
    Quote Quote  
  17. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. Sorry I misunderstood. Thank you for explaining it to me.
    Quote Quote  
  18. If you find QTGMC is too slow you can use a faster deinterlacer like Yadif(mode=1) or BWDIF(field=3). Of course, the deliver lesser quality too. You could use QTGMC(lossless=1) as lollo suggested but I don't really see any point here. Lossless mode reduces QTGMC's ability to reduce aliasing and buzzing edges. And later processing is pretty heavy so the losslessness from QTGMC isn't going to help much.

    Code:
    AviSource("TAPE 20 13-11.avi") 
    AssumeTFF()
    ConvertToYV12(interlaced=true)
    
    ColorYUV(gain_y=32, off_y=-25, gamma_y=25)
    SeparateFields().vInverse().Weave()
    
    # use ONE of the following three lines
    # Yadif(mode=1)
    # BWDIF(field=3)
    QTGMC(preset="slow", Sharpness=0.7, lossless=1)
    
    # reduce buzzing of vertical edges
    TurnRight().QTGMC(InputType=2).vInverse().TurnLeft()
    
    # reduce only the sharpest halos
    edgemask = mt_edge(mode="prewitt", thy1=220, thy2=220).mt_expand().mt_expand().Blur(1.4).Blur(1.4).Blur(1.4)
    Overlay(last, Dehalo_alpha(rx=4.0, ry=3.0, BrightStr=0.8, DarkStr=0.8).Blur(0.5), mask=edgemask)
    
    # sharpen the chroma, then shift it to better align with the luma
    MergeChroma(last, Spline36Resize(width/2,height).aWarpSharp2(depth=20).Spline36Resize(width,height))
    ChromaShiftSP(x=-2, y=0)
    
    # replace black borders and center the image
    Crop(8,6,-20,-10).AddBorders(6,8,6,8)
    
    #convert back to interlaced frames
    AssumeTFF().SeparateFields().SelectEvery(4,0,3).Weave()
    Of course, then you'll be stuck with the player or TVs deinterlacing which won't be as good as QTGMC.
    Quote Quote  
  19. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo for the new script, I will encode it and post it. I definitely need the practice!
    I'm still conflicted as to whether I should make my encoded video deinterlaced or interlaced. I change my opinion by the day. Any advice would be welcome. My ultimate aim to to watch them on a tv. thanks.
    Quote Quote  
  20. The cleanup you want to do requires deinterlacing. You gain nothing (quality wise) by re-interlacing the video at the end. The only reason to re-interlace is if you are going to a medium that doesn't support progressive video at 60p -- like DVD.
    Quote Quote  
  21. If you find QTGMC is too slow you can use a faster deinterlacer like Yadif(mode=1) or BWDIF(field=3).
    As a side note: QTGMC has quality<>speed settings, so directly jumping to Yadif or BWDIF might not be needed,....
    users currently on my ignore list: deadrats, Stears555
    Quote Quote  
  22. Captures & Restoration lollo's Avatar
    Join Date
    Jul 2018
    Location
    Italy
    Search Comp PM
    You could use QTGMC(lossless=1) as lollo suggested but I don't really see any point here. Lossless mode reduces QTGMC's ability to reduce aliasing and buzzing edges.
    The point is not specific for this source, but rather to process an interlaced video with progressive filters without deinterlacing.

    Applyng
    Code:
    SeparateFields()
    
    progressive_filters()
    
    Weave()
    you are introducing even/odd field offset, because the scanlines. Fields moving up and down are not appropriate for temporal or spatial/temporal filtering.

    Applying
    Code:
    SeparateFields()
    
    even = SelectEven()
    odd = SelectOdd()
    
    even_f = even.progressive_filters()
    odd_f = odd.progressive_filters()
    
    Interleave(even_f, odd_f)
    
    Weave()
    you do not apply the temporal or spatial/temporal filtering across the fields as they are in the original sequence, but all even fields first and then all odd fields later, with obvious temporal inconsistency.

    If a source video has to be processed with a temporal or spatial/temporal filter (designed for progressive material) without deinterlacing as final output, some sort of "bobbing" is then required to build the progressive frame from the 2 fields, and then apply the progressive filtering.
    Better way to do it is not touching the original fields, so this can be done with a Bob(0.0, 1.0) [lossless], Nnedi3(field=-2) [lossless], or QTGMC(...) [lossless or not lossless]. And then finally thrown away the additional created frames after filtering.

    The problem with Bob() and Nnedi3(field=-2) is that they are less accurate on the top and bottom scanlines when building the progressive frame than QTGMC. QTGMC is more accurate on these few lines, but it introduces on its own denoise, sharpening and whatever else, altering the original fields, and you do not want this because you do not want to really deinterlace and you are using appropriate processing later for denoise, sharpening, etc.
    With QTGMC(lossless=1) the extra QTMGC processing is removed, and only the original progressive frame is built (1 out of 2, the second frame is obviously created from scratch, but it will be discharged later).

    In conclusion, if you need to deinterlace as final outcome or you need to use some fix inherent to the deinterlacing as in the example from the OP, then there is no choice or better approach then QTGMC(<not lossless, but whatever preferred option>) / filtering.
    If you want to filter an interlaced video without introducing the side effects of a real deinterlace prior to the chosen filtering, and keep it interlaced, the previous is more appropriate.

    To SkyBlues2021: sorry, this is not fully relevant to your case, where you need to deinterlace for optimal viewing on your TV (except if you have something like a Sony A95K or similar); it was just an exercise of comparing different tecniques, and some off topic considerations.
    Quote Quote  
  23. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo, Selur & lollo. My understand now is I must assess the merits of each video. However as most of my videos are in need of some restoration I'm probably going to have to go the deinterlace route to access the filters I need. Thank you chaps for the advice.
    Quote Quote  
  24. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    I'm trying to encode using virtualdub2. If my video is deinterlaced do I have to change any of the settings or the command --tff --weightp=0 as in jagabo's post#22 attachment? As post #22 was intended for interlaced video. Should I then still save mp4 full processing mode.
    I have only used Avidemux when I've previously encoding deinterlaced. Any advice would be grateful. Thanks.
    Quote Quote  
  25. Originally Posted by SkyBlues2021 View Post
    I'm trying to encode using virtualdub2. If my video is deinterlaced do I have to change any of the settings or the command --tff --weightp=0 as in jagabo's post#22 attachment?
    You no longer need those manual adjustments. If your video has been deinterlaced before encoding it is now progressive.

    Note that there are some cases where you may need to encode progressive frames as interlace -- for devices that don't support progressive video. For example, regular Blu-ray players don't support 29.97 fps progressive. In that case you have to encode interlaced even though the frames are progressive.
    Quote Quote  
  26. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. I'm not sure I understand. Do I still keep SAR 12 & 11 and keep CFR at 18.0 but remove the extra command line or do you mean load the defaults and don't configure whatsoever. Probably neither! Sorry for not grasping it.
    Quote Quote  
  27. Originally Posted by SkyBlues2021 View Post
    Do I still keep SAR 12 & 11 and keep CFR at 18.0 but remove the extra command line
    Yes
    Quote Quote  
  28. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks Sharc. I'm hoping I encoded correctly for deinterlaced video. I used the previous script of jagabo's. Thanks.
    Image Attached Thumbnails Click image for larger version

Name:	tape 20 virtualdub configure page 4-12.JPG
Views:	5
Size:	60.1 KB
ID:	67974  

    Image Attached Files
    Quote Quote  
  29. The script I gave in post #78 converts back to interlaced video at the end. If you don't need interlaced video remove the last line.
    Quote Quote  
  30. Member
    Join Date
    Sep 2021
    Location
    United Kingdom
    Search Comp PM
    Thanks jagabo. Sorry, I will re-do it and post again.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!