VideoHelp Forum
+ Reply to Thread
Results 1 to 11 of 11
Thread
  1. Hi. I'm going to use MeGUI on a DVD movie which is 4:3. What's the best option for my avisynth script:
    a)
    Code:
    Spline36Resize(640,480)
    b)
    Code:
    global MeGUI_darx = 4
    global MeGUI_dary = 3
    c) something else.

    Many thanks.
    Quote Quote  
  2. Member
    Join Date
    Aug 2013
    Location
    Central Germany
    Search PM
    If the source is in NTSC video standard (the resolution on DVD is 720480 pixels with 29.97 or 23.976 fps), a) is fine, because the existing height of 480 pixel lines is preserved.

    But if it is PAL with 576 lines (25.0 fps), and the video is interlaced, changing the video height could mess up the interlacing, the result would be thick "waves" across the image. The desired dimension for PAL would be 576*4:3 = 768 pixels as width, but MeGUI would usually not allow to increase the width, except you enable this option...
    Quote Quote  
  3. Why not skip the resizing, and just rip it directly using makemkv? That way you can preserve the original size without degradation in quality.
    Quote Quote  
  4. Doesn't it have black bars on the sides? If so, crop them first before the resize:
    Crop(8,0,-8,0)
    Spline36Resize(640,480)

    The bars might not be 8 pixels on each side. If no black bars at all, I'd do it like so:
    Spline36Resize(656,480)
    Quote Quote  
  5. For 4:3 DVDs you should generally select an appropriate ITU aspect ratio.
    Or better still, create a custom aspect ratio of 15:11, which is the display aspect ratio you get when using the mpeg4 pixel aspect ratios for both PAL and NTSC.
    https://forum.doom9.org/showthread.php?p=1058927
    4:3 DVDs generally have an ITU or mpeg4 DAR (they're virtually the same) rather than an exact 4:3 DAR.
    If you select an ITU DAR in MeGUI, it uses the "almost exact ITU" PARs from the list in the link above to arrive at the DAR it uses.

    Image
    [Attachment 79853 - Click to enlarge]


    global MeGUI_darx = 15
    global MeGUI_dary = 11

    Whether you resize or enable anamorphic encoding is up to you. If your hardware player supports anamorphic video, then technically it's the best method when there's no resizing involved (cropping is okay).
    I don't use anamorphic encoding and always resize to "square pixel" dimensions, but that's because one of the players in this house doesn't support anamorphic video correctly and therefore displays it with the wrong aspect ratio.

    If you use a DAR of 15:11 and you crop 8 pixels of black each side as manono suggested, what you're left with will be exactly 4:3. You can confirm that by cropping 8 pixels each side with anamorphic encoding enabled and resizing disabled, and the DAR MeGUI adds to the script should change to:

    global MeGUI_darx = 4
    global MeGUI_dary = 3

    Or with anamorphic encoding disabled and resizing enabled, MeGUI should resize to exact 4:3 dimensions (when using a custom DAR of 15:11 and after cropping 8 pixels each side).

    How much you crop though would probably depend on how much crud there actually is at the sides, or even the top and bottom, but however much you crop, MeGUI will adjust the DAR in the script accordingly when anamorphic encoding is enabled and resizing is disabled, or it'll adjust the resizing accordingly when anamorphic encoding isn't enabled.

    PS. By default, MeGUI can fudge the DAR a little to make it easier to crop to an exact DAR such as 4:3. If you want to prevent MeGUI fudging the DAR (it only applies to anamorphic encoding) click on the Avisynth Profile Config button in the Script Creator and change the "acceptable anamorphic aspect error" value to zero. You can also change the mod value from mod8 to mod4, as mod8 is unnecessary.

    Image
    [Attachment 79854 - Click to enlarge]
    Last edited by hello_hello; 12th Jun 2024 at 15:22.
    Quote Quote  
  6. Thank you all. It's NTSC (I should've said) but the info regarding PAL will no doubt be useful in the future so danke, LigH.de.
    I hear you, MindController, but I want to make edits as well.
    Hi manono. Yeah, I'd taken the bars into account and cropped them first thing.
    Quote Quote  
  7. Hello hello_hello, you posted while I was typing. As ever, an excellent reply from you, many thanks.
    Quote Quote  
  8. I edited my post to add some more info, possibly after you posted again.
    Quote Quote  
  9. Yup, noticed the edit. I take it there's no noticeable difference in PQ when not using anamorphic encoding? (I recall you once saying 'anamorphic is the way to go'.)
    Quote Quote  
  10. Member Skiller's Avatar
    Join Date
    Oct 2013
    Location
    Germany
    Search PM
    Anamorphic is the way to go for source material that is wider than 4:3 (ideally 16:9), but it is actually counterproductive for native 4:3 content. Encoding 4:3 as 4:3 is the way to go.
    Quote Quote  
  11. Originally Posted by pooksahib View Post
    Yup, noticed the edit. I take it there's no noticeable difference in PQ when not using anamorphic encoding? (I recall you once saying 'anamorphic is the way to go'.)
    "Technically" anamorphic encoding is better as resizing can only reduce the quality, even though it's generally not in a noticeable way, especially if you only resize the width. It relies on the player being able to resize the video to the correct aspect ratio on playback though. The advantage of resizing to "square pixel" dimensions instead of using anamorphic encoding is it'll always display correctly.

    For NTSC 4:3 the width is normally resized down from 720x480 to 656x480 or 640x480 etc, depending on cropping, so you lose a small amount of horizontal resolution. For PAL the width would be increased to 786x576 or 768x576 etc, so you don't lose any horizontal resolution but you don't actually gain any, there's just more pixels to encode.
    Having said that, for interlaced content, if you de-interlace to 59.94fps (NTSC) or 50fps (PAL) you can often get away with downscaling a bit without losing any detail. I often de-interlace PAL and crop and resize to 640x480. It's similar in theory to 1080i and 720p having much the same spacial resolution, even though 1080i has a greater temporal resolution, but it means you can generally de-interlace 1080i and resize it to 720p.

    It's all personal preference though.

    If you want to resize you could try my CropResize function. There's a link in my signature. It supports MeGUI's global DARs in a script, so you can select your preferred DAR for the source in MeGUI, enable MeGUI's anamorphic encoding, apply whatever cropping the video needs with MeGUI and CropResize will use the MeGUI DAR to calculate it's resizing. It has a mode that ensures only the width is resized, and it'll ensure there's no aspect error. For example, after using a 15:11 DAR for the source in MeGUI and then cropping:

    global MeGUI_darx = 1170
    global MeGUI_dary = 869
    DGDecode_mpeg2source("M:\NVME2\VTS_10_1.vob.d2v")
    crop(8, 2, -10, -4)
    CropResize(ResizeWO=true, Info=true)

    Image
    [Attachment 79861 - Click to enlarge]


    You'd get the same result by not enabling anamorphic encoding and using CropResize to apply the cropping while specifying the appropriate input DAR.

    DGDecode_mpeg2source("M:\NVME2\VTS_10_1.vob.d2v")
    CropResize(0,0, 8,2,-10,-4, ResizeWO=true, InDAR=15.0/11.0, Info=true)

    or if MeGUI does the cropping you need to specify the approprate pixel/sample aspect ratio instead (because cropping changes the DAR but not the sample aspect ratio).

    DGDecode_mpeg2source("M:\NVME2\VTS_10_1.vob.d2v")
    crop(8, 2, -10, -4)
    CropResize(ResizeWO=true, InSAR=10.0/11.0, Info=true)

    Image
    [Attachment 79863 - Click to enlarge]


    Or if your cropping gets you close to the exact anamorphic output DAR you'd prefer and you don't mind a little width resizing, you can choose the OutDAR and CropResize will crop to that DAR. The result's similar to using MeGUI's anamorphic encoding with resizing enabled, but you can control the output DAR more easily. Whatever you use, CropResize either updates or deletes MeGUI's global variables after it's resized. You can't see it in the script, but they're updated, so MeGUI will use the correct DAR for encoding.

    global MeGUI_darx = 1755
    global MeGUI_dary = 1309
    DGDecode_mpeg2source("M:\NVME2\VTS_10_1.vob.d2v")
    crop(8, 2, -10, -2)
    CropResize(696,0, ResizeWO=true, OutDAR=4.0/3.0, Info=true)

    Image
    [Attachment 79862 - Click to enlarge]
    Last edited by hello_hello; 14th Jun 2024 at 11:39.
    Quote Quote  



Similar Threads

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