[Mesa-dev] [PATCH 1/5] st/omx/dec/h265: add scaling list data

Emil Velikov emil.l.velikov at gmail.com
Tue Sep 27 10:23:43 UTC 2016


On 23 September 2016 at 17:32, Leo Liu <leo.liu at amd.com> wrote:
> Specified by 7.3.4
There's a word missing in there ^ - table 7.3.4 ?

>
> Signed-off-by: Leo Liu <leo.liu at amd.com>
> ---
>  src/gallium/state_trackers/omx/vid_dec_h265.c | 126 +++++++++++++++++++++++++-
>  1 file changed, 121 insertions(+), 5 deletions(-)
>
> diff --git a/src/gallium/state_trackers/omx/vid_dec_h265.c b/src/gallium/state_trackers/omx/vid_dec_h265.c
> index 0772b4d..3c46505 100644
> --- a/src/gallium/state_trackers/omx/vid_dec_h265.c
> +++ b/src/gallium/state_trackers/omx/vid_dec_h265.c
> @@ -57,6 +57,28 @@ enum {
>     NAL_UNIT_TYPE_PPS = 34,
>  };
>
> +static const uint8_t Default_8x8_Intra[64] = {
> +   16, 16, 16, 16, 17, 18, 21, 24,
> +   16, 16, 16, 16, 17, 19, 22, 25,
> +   16, 16, 17, 18, 20, 22, 25, 29,
> +   16, 16, 18, 21, 24, 27, 31, 36,
> +   17, 17, 20, 24, 30, 35, 41, 47,
> +   18, 19, 22, 27, 35, 44, 54, 65,
> +   21, 22, 25, 31, 41, 54, 70, 88,
> +   24, 25, 29, 36, 47, 65, 88, 115
> +};
> +
> +static const uint8_t Default_8x8_Inter[64] = {
> +   16, 16, 16, 16, 17, 18, 20, 24,
> +   16, 16, 16, 17, 18, 20, 24, 25,
> +   16, 16, 17, 18, 20, 24, 25, 28,
> +   16, 17, 18, 20, 24, 25, 28, 33,
> +   17, 18, 20, 24, 25, 28, 33, 41,
> +   18, 20, 24, 25, 28, 33, 41, 54,
> +   20, 24, 25, 28, 33, 41, 54, 71,
> +   24, 25, 28, 33, 41, 54, 71, 91
> +};
> +
Style used for the names is a bit iffy - use default_8x8_inter ?
Since neither of these is omx specific worth moving these to aux/vl ?

>  struct dpb_list {
>     struct list_head list;
>     struct pipe_video_buffer *buffer;
> @@ -188,10 +210,104 @@ static unsigned profile_tier_level(struct vl_rbsp *rbsp,
>     return level_idc;
>  }
>
> -static void scaling_list_data(void)
> +static void scaling_list_data(vid_dec_PrivateType *priv,
> +                              struct vl_rbsp *rbsp, struct pipe_h265_sps *sps)
>  {
> -   /* TODO */
> -   assert(0);
> +   unsigned size_id, matrix_id;
> +
> +   for (size_id = 0; size_id < 4; ++size_id) {
Why would one loop over size_id, if close of everything in the loop is
special cased on the size_id ?

-Emil


More information about the mesa-dev mailing list