[Nouveau] VDPAU DEINTERLACE

poma pomidorabelisima at gmail.com
Mon May 9 18:42:12 UTC 2016


On 09.05.2016 19:37, Ilia Mirkin wrote:
> Mesa only supports the non-spatial temporal deinterlace (deint=3). I'm
> guessing that due to some unfortunate issues, you're no longer getting
> hw accelerated video decoding. Check in vdpauinfo to make sure that
> it's indeed showing the relevant codec as supported. If not, you can
> turn that back on by updating to mesa 11.2.2, or downgrading your
> kernel to 4.2 or earlier. (The issue only affects G98 and MCP77/MCP79
> IGPs.)
> 

With the -Mplayer- vdpau decoding works, at least with the -progressive- scan type,
-interlaced- scan type (DVBT-576i/1080i) is questionable,
especially when runs within vlc or xine, even without vdpau deinterlacer,
Xorg crash dump, satisfaction guarantee.


$ vdpauinfo 
display: :0.0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0
...

Decoder capabilities:

name                        level macbs width height
----------------------------------------------------
MPEG1                           0 16384  2048  2048
MPEG2_SIMPLE                    3 16384  2048  2048
MPEG2_MAIN                      3 16384  2048  2048
H264_BASELINE                  41 16384  2048  2048
H264_MAIN                      41 16384  2048  2048
H264_HIGH                      41 16384  2048  2048
VC1_SIMPLE                      1 16384  2048  2048
VC1_MAIN                        2 16384  2048  2048
VC1_ADVANCED                    4 16384  2048  2048
MPEG4_PART2_SP                 --- not supported ---
...

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     -
INVERSE_TELECINE                 -
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         -
...

> If you are, in fact, getting hw video decoding acceleration, then it
> could be that your GPU is clocked too low. You could attempt
> reclocking to a higher pstate and seeing what happens.
> 

# nvclock --speeds
...
Memory clock: 399.600 MHz
GPU clock: 612.000 MHz

# nvclock --info
...
Performance level 0: gpu 567MHz/shader 1400MHz/memory 400MHz/100%

$ dmesg -t | grep pstate
...
Kernel command line: ... nouveau.pstate=1 ...
nouveau: unknown parameter 'pstate' ignored
-4.5.2-

Is there a room for reinforcement, or
NVIDIA G98 DEINTERLACER: ability without capability, i.e. underpowered GPU?

> 
> On Thu, May 5, 2016 at 1:12 AM, poma <pomidorabelisima at gmail.com> wrote:
>>
>> NVIDIA G98
>> mesa-dri-drivers-11.2.1-2.20160501.fc22.x86_64
>> (incl. mesa commit 38fcf7c)
>>
>>
>> vdpauinfo | grep -i deint
>> DEINTERLACE_TEMPORAL             y
>> DEINTERLACE_TEMPORAL_SPATIAL     -
>>
>>
>> https://cgit.freedesktop.org/vdpau/libvdpau/tree/include/vdpau/vdpau.h#n3420
>> #define VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL         ((VdpVideoMixerFeature)0)
>> /**
>>  * \hideinitializer
>>  * \brief A VdpVideoMixerFeature.
>>  *
>>  * When requested and enabled, this enables a more advanced
>>  * version of temporal de-interlacing, that additionally uses
>>  * edge-guided spatial interpolation.
>>  *
>>  * When multiple de-interlacing options are requested and
>>  * enabled, the back-end implementation chooses the best
>>  * algorithm to apply.
>>  */
>> #define VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL_SPATIAL ((VdpVideoMixerFeature)1)
>> /**
>>  * \hideinitializer
>>  * \brief A VdpVideoMixerFeature.
>>  *
>>  * When requested and enabled, cadence detection will be enabled
>>  * on interlaced content and the video mixer will try to extract
>>  * progressive frames from pull-down material.
>>  */
>>
>>
>> https://cgit.freedesktop.org/vdpau/libvdpau/tree/include/vdpau/vdpau.h#n606
>>  * \subsection deint_adv Advanced De-interlacing
>>  *
>>  * Operation of both temporal and temporal-spatial de-interlacing is
>>  * identical; the only difference is the internal processing the algorithm
>>  * performs in generating the output frame.
>>  *
>>
>>
>> man 1 mplayer
>> ...
>> vdpau (X11 only)
>> ...
>> deint=<-4-4>
>> ...
>>        Select deinterlacing mode (default: -3). Positive  values
>>        choose mode and enable deinterlacing. Corresponding nega‐
>>        tive values select the same deinterlacing  mode,  but  do
>>        not enable deinterlacing on startup (useful in configura‐
>>        tion files to specify what mode will be  enabled  by  the
>>        "D" key). All modes respect --field-dominance.
>>
>>        0      same as -3
>>
>>        1      Show only first field, similar to --vf=field.
>>
>>        2      Bob deinterlacing, similar to --vf=tfields=1.
>>
>>        3      motion  adaptive  temporal deinterlacing. May lead
>>               to A/V desync with slow video hardware and/or high
>>               resolution.
>>
>>        4      motion   adaptive   temporal   deinterlacing  with
>>               edge-guided  spatial  interpolation.  Needs   fast
>>               video hardware.
>>
>>
>> Reading all this, am I correctly concluded,
>> what is supported within NVIDIA G98 HW is DEINTERLACE_TEMPORAL,
>> which should be engaged with Mplayer's 'vdpau:deint=4' option?
>>
>> Then again, what DEINTERLACE_TEMPORAL_SPATIAL represents?
>> As reading the 'vdpauinfo' output it should not be supported.
>> Is it associated with Mplayer's 'vdpau:deint=3' option,
>> which in turn works, so to speak?
>>
>> mplayer -vo vdpau:deint=[34] -vc ffmpeg12vdpau dvb://2@DVBT
>>
>> Although they achieve solid deinterlacing result,
>> vdpau:deint=3 and vdpau:deint=4 tend to produce:
>>
>> ************************************************
>> **** Your system is too SLOW to play this!  ****
>> ************************************************
>>
>> Rest of the deinterlacing modes - 1 and 2, are not so great.
>>
>>
>> _______________________________________________
>> Nouveau mailing list
>> Nouveau at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/nouveau



More information about the Nouveau mailing list