[Mesa-dev] [PATCH] st/omx: Set end-of-frame flag on bitstream output buffers

Christian König deathsimple at vodafone.de
Mon Mar 6 08:09:02 UTC 2017


Am 06.03.2017 um 00:18 schrieb Mark Thompson:
> Since all output buffers are whole frames, this should always be set.
>
> Technically, setting this flag is is optional (see OpenMAX IL section
> 3.1.2.7.1), but some clients assume that it will be used and
> therefore buffer indefinitely thinking that all output buffers are
> fragments of the first frame when it is not set.

Reviewed-by: Christian König <christian.koenig at amd.com>

> ---
>   src/gallium/state_trackers/omx/vid_enc.c | 3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/src/gallium/state_trackers/omx/vid_enc.c b/src/gallium/state_trackers/omx/vid_enc.c
> index b2970a522f..b58063e6e6 100644
> --- a/src/gallium/state_trackers/omx/vid_enc.c
> +++ b/src/gallium/state_trackers/omx/vid_enc.c
> @@ -1271,4 +1271,7 @@ static void vid_enc_BufferEncoded(OMX_COMPONENTTYPE *comp, OMX_BUFFERHEADERTYPE*
>   
>      output->nOffset = 0;
>      output->nFilledLen = size; /* mark buffer as full */
> +
> +   /* all output buffers contain exactly one frame */
> +   output->nFlags = OMX_BUFFERFLAG_ENDOFFRAME;
>   }




More information about the mesa-dev mailing list