Skip to content

Commit

Permalink
x(v)image: use gst_video_meta_set_alignment()
Browse files Browse the repository at this point in the history
Use the new API to tell buffer consumers about alignment details.

This change is backward compatible as non ported elements can safely
ignore the alignment information and keep processing buffers as they use
to, copying if necessary.
  • Loading branch information
Guillaume Desmottes committed Nov 2, 2019
1 parent 75680e5 commit f9617bf
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
6 changes: 5 additions & 1 deletion sys/ximage/ximagepool.c
Expand Up @@ -648,12 +648,16 @@ ximage_buffer_pool_alloc (GstBufferPool * pool, GstBuffer ** buffer,
gst_buffer_append_memory (ximage, mem);

if (xpool->add_metavideo) {
GstVideoMeta *meta;

GST_DEBUG_OBJECT (pool, "adding GstVideoMeta");
/* these are just the defaults for now */
gst_buffer_add_video_meta_full (ximage, GST_VIDEO_FRAME_FLAG_NONE,
meta = gst_buffer_add_video_meta_full (ximage, GST_VIDEO_FRAME_FLAG_NONE,
GST_VIDEO_INFO_FORMAT (info), GST_VIDEO_INFO_WIDTH (info),
GST_VIDEO_INFO_HEIGHT (info), GST_VIDEO_INFO_N_PLANES (info),
info->offset, info->stride);

gst_video_meta_set_alignment (meta, xpool->align);
}
*buffer = ximage;

Expand Down
6 changes: 5 additions & 1 deletion sys/xvimage/xvimagepool.c
Expand Up @@ -183,11 +183,15 @@ xvimage_buffer_pool_alloc (GstBufferPool * pool, GstBuffer ** buffer,
gst_buffer_append_memory (xvimage, mem);

if (xvpool->add_metavideo) {
GstVideoMeta *meta;

GST_DEBUG_OBJECT (pool, "adding GstVideoMeta");
gst_buffer_add_video_meta_full (xvimage, GST_VIDEO_FRAME_FLAG_NONE,
meta = gst_buffer_add_video_meta_full (xvimage, GST_VIDEO_FRAME_FLAG_NONE,
GST_VIDEO_INFO_FORMAT (info), GST_VIDEO_INFO_WIDTH (info),
GST_VIDEO_INFO_HEIGHT (info), GST_VIDEO_INFO_N_PLANES (info),
info->offset, info->stride);

gst_video_meta_set_alignment (meta, xvpool->align);
}

*buffer = xvimage;
Expand Down

0 comments on commit f9617bf

Please sign in to comment.