[FFmpeg-devel] [PATCH] nvenc: Compensate for hardware trying to mess with aspect ratio of DVD content.

Michael Niedermayer michaelni at gmx.at
Sun Jan 18 13:31:48 CET 2015


On Sun, Jan 18, 2015 at 11:16:04AM +0000, Kieran Kunhya wrote:
> On 18 January 2015 at 09:40, Nicolas George <george at nsup.org> wrote:
> > Le nonidi 29 nivôse, an CCXXIII, Hendrik Leppkes a écrit :
> >> nvenc should behave the same as libx264, or any other video encoder, if
> >> this patch makes it do that, then it should be applied.
> >>
> >> If bt601 needs special handling not yet present in avcodec, it should be
> >> implemented in such a way that all encoders can benefit from it.
> >
> > That was one of the points I was trying to make, thanks for explaining it
> > more clearly.
> >
> > Two additional points:
> >
> > According to Philip's tests, nvenc adds a 45/44 = 720/704 factor, not
> > 720/702 = 40/39, so it does not conform to BT.601 anyway.
> 
> Why is it so hard for you to realise that the SARs are not
> arithmetically derived?

Rec. ITU-T H.264 (04/2013)

    3.133 sample aspect ratio: Specifies, for assisting the display process, which is not specified in this
        Recommendation | International Standard, the ratio between the intended horizontal distance between the
        columns and the intended vertical distance between the rows of the luma sample array in a frame. Sample
        aspect ratio is expressed as h:v, where h is horizontal width and v is vertical height (in arbitrary units of spatial
        distance).

    3.62 informative: A term used to refer to content provided in this Recommendation | International Standard that is
        not an integral part of this Recommendation | International Standard. Informative content does not establish
        any mandatory requirements for conformance to this Recommendation | International Standard.

    aspect_ratio_idc specifies the value of the sample aspect ratio of the luma samples. Table E-1 shows the meaning of the
    code. When aspect_ratio_idc indicates Extended_SAR, the sample aspect ratio is represented by sar_width : sar_height.
    When the aspect_ratio_idc syntax element is not present, aspect_ratio_idc value shall be inferred to be equal to 0.
                                        Table E-1 “ Meaning of sample aspect ratio indicator
    aspect_ratio_idc       Sample aspect                                             (informative)
                                ratio                                             Examples of use
            0              Unspecified
            1                   1:1            7680x4320 16:9 frame without horizontal overscan
                            ("square")         3840x2160 16:9 frame without horizontal overscan
                                                1280x720 16:9 frame without horizontal overscan
                                                1920x1080 16:9 frame without horizontal overscan (cropped from 1920x1088)
                                                640x480 4:3 frame without horizontal overscan
            2                  12:11           720x576 4:3 frame with horizontal overscan
                                                352x288 4:3 frame without horizontal overscan
            3                  10:11           720x480 4:3 frame with horizontal overscan
                                                352x240 4:3 frame without horizontal overscan
            4                  16:11           720x576 16:9 frame with horizontal overscan
                                                528x576 4:3 frame without horizontal overscan
            5                  40:33           720x480 16:9 frame with horizontal overscan
                                                528x480 4:3 frame without horizontal overscan
            6                  24:11           352x576 4:3 frame without horizontal overscan
                                                480x576 16:9 frame with horizontal overscan
            7                  20:11           352x480 4:3 frame without horizontal overscan
                                                480x480 16:9 frame with horizontal overscan
            8                  32:11           352x576 16:9 frame without horizontal overscan
            9                  80:33           352x480 16:9 frame without horizontal overscan
            10                  18:11           480x576 4:3 frame with horizontal overscan
            11                  15:11           480x480 4:3 frame with horizontal overscan
            12                  64:33           528x576 16:9 frame without horizontal overscan
            13                 160:99           528x480 16:9 frame without horizontal overscan
            14                   4:3            1440x1080 16:9 frame without horizontal overscan
            15                   3:2            1280x1080 16:9 frame without horizontal overscan
            16                   2:1            960x1080 16:9 frame without horizontal overscan
        17..254               Reserved
            255             Extended_SAR
        NOTE 1 “ For the examples in Table E-1, the term "without horizontal overscan" refers to display processes in which the display
        area matches the area of the cropped decoded pictures and the term "with horizontal overscan" refers to display processes in which
        some parts near the left and/or right border of the cropped decoded pictures are not visible in the display area. As an example, the
        entry "720x576 4:3 frame with horizontal overscan" for aspect_ratio_idc equal to 2 refers to having an area of 704x576 luma
        samples (which has an aspect ratio of 4:3) of the cropped decoded frame (720x576 luma samples) that is visible in the display
        area.
    sar_width indicates the horizontal size of the sample aspect ratio (in arbitrary units).
    sar_height indicates the vertical size of the sample aspect ratio (in the same arbitrary units as sar_width).
    sar_width and sar_height shall be relatively prime or equal to 0. When aspect_ratio_idc is equal to 0 or sar_width is
    equal to 0 or sar_height is equal to 0, the sample aspect ratio shall be considered unspecified by this Recommendation |
    International Standard.

    overscan_info_present_flag equal to 1 specifies that the overscan_appropriate_flag is present. When
    overscan_info_present_flag is equal to 0 or is not present, the preferred display method for the video signal is
    unspecified.
    overscan_appropriate_flag equal to 1 indicates that the cropped decoded pictures output are suitable for display using
    overscan. overscan_appropriate_flag equal to 0 indicates that the cropped decoded pictures output contain visually
    important information in the entire region out to the edges of the cropping rectangle of the picture, such that the cropped
    decoded pictures output should not be displayed using overscan. Instead, they should be displayed using either an exact
    match between the display area and the cropping rectangle, or using underscan. As used in this paragraph, the term
    "overscan" refers to display processes in which some parts near the borders of the cropped decoded pictures are not
    visible in the display area. The term "underscan" describes display processes in which the entire cropped decoded
    pictures are visible in the display area, but they do not cover the entire display area. For display processes that neither use
    overscan nor underscan, the display area exactly matches the area of the cropped decoded pictures.
        NOTE 2 “ For example, overscan_appropriate_flag equal to 1 might be used for entertainment television programming, or for a
        live view of people in a videoconference, and overscan_appropriate_flag equal to 0 might be used for computer screen capture or
        security camera content.


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

There will always be a question for which you do not know the correct answer.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20150118/91809b9e/attachment.asc>


More information about the ffmpeg-devel mailing list