[Mesa-dev] [PATCH 1/5] st/va: Return more useful config attributes

Andy Furniss adf.lists at gmail.com
Fri Oct 14 11:40:54 UTC 2016


Andy Furniss wrote:
> Mark Thompson wrote:
>> On 13/10/16 08:20, Christian König wrote:
>>> Am 13.10.2016 um 00:52 schrieb Mark Thompson:
>>>> The encoder attributes are needed for a user of the encoder to be
>>>> able to configure it sensibly without internal knowledge.
>>>
>>> Reviewed-by: Christian König <christian.koenig at amd.com> for the whole
>>> series.
>>>
>>> Do you have commit access?
>>
>> I do not.  Please do push this for me once all appropriate people are
>> happy with it.
>
> Seems not to regress anything, but there are still differences vs
> gstreamer.
>
> I guess the poc fix now allows JM decoder not to bail, but that allows
> me to see some other issue around I frames. I haven't had time too look
> properly why, but guessing it could be that avconv sends
> desc.h264enc.gop_size
> every I frame, but gst just once.

Looking more it seems to be because avconv is using pic number 0 to 30
gst 0 to 29 and libx264 0 to 15 then 0 to 13 so avconv doesn't reset to
0 on an IDR frame for gop 30.


>
> I don't know if you'll even see this on bonaire as my tonga possibly
> hits different code - I mean in src/gallium/drivers/radeon/ there is
> radeon_vce_40_2_2.c
> radeon_vce_50.c
> radeon_vce_52.c
> and maybe these are used depending on vce firmware version and do
> different things for different h/w.
>
> The issue I see with JM is shown below - the file seems to play OK.
> There may be another (I guess pre-existing) issue around 1080/1088
> affecting transcoding with both avconv and gst, but one thing at a
> time.
>
> This is with -g 30 and doesn't happen with gstreamer.
>
> --------------------------------------------------------------------------
>    Frame          POC  Pic#   QP    SnrY     SnrU     SnrV   Y:U:V Time(ms)
> --------------------------------------------------------------------------
> 00000(IDR)        0     0    33                             4:2:0      90
> 00000( P )        1     1    29                             4:2:0      57
> 00001( P )        2     2    29                             4:2:0      55
> 00001( P )        3     3    28                             4:2:0      57
> 00002( P )        4     4    28                             4:2:0      59
> 00002( P )        5     5    28                             4:2:0      57
>
> snip
>
> 00014( P )       29    29    23                             4:2:0      70
> 00015( P )       30    30    24                             4:2:0      66
> 00000(IDR)       -1     0    23                             4:2:0     129
> 00000( P )        0     1    24                             4:2:0      59
> 00000( P )        1     2    25                             4:2:0      56
> 00001( P )        2     3    25                             4:2:0      58
> 00001( P )        3     4    25                             4:2:0      57
>
> snip
> 00014( P )       28    29    26                             4:2:0      59
> 00014( P )       29    30    24                             4:2:0      65
> -0001(IDR)       -2     0    24                             4:2:0     129
> 00000( P )       -1     1    25                             4:2:0      59
> 00000( P )        0     2    25                             4:2:0      58
> 00000( P )        1     3    25                             4:2:0      59
>
> snip
> 00013( P )       27    29    24                             4:2:0      65
> 00014( P )       28    30    24                             4:2:0      67
> -0001(IDR)       -3     0    24                             4:2:0     130
> -0001( P )       -2     1    25                             4:2:0      59
> 00000( P )       -1     2    25                             4:2:0      58
> 00000( P )        0     3    25                             4:2:0      58
> 00000( P )        1     4    25                             4:2:0      57
>
>
>
>



More information about the mesa-dev mailing list