mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-10 03:19:40 +00:00
vaapipluginbase: The allocation query can return without a pool
It is possible to return the min/max/size without actually providing a pool. This way the source knows how many buffers downstream needs. https://bugzilla.gnome.org/show_bug.cgi?id=748076
This commit is contained in:
parent
8c7bc7dff8
commit
bd86647970
1 changed files with 8 additions and 6 deletions
|
@ -670,13 +670,15 @@ gst_vaapi_plugin_base_decide_allocation (GstVaapiPluginBase * plugin,
|
|||
|
||||
if (gst_query_get_n_allocation_pools (query) > 0) {
|
||||
gst_query_parse_nth_allocation_pool (query, 0, &pool, &size, &min, &max);
|
||||
size = MAX (size, vi.size);
|
||||
update_pool = TRUE;
|
||||
if (pool) {
|
||||
size = MAX (size, vi.size);
|
||||
update_pool = TRUE;
|
||||
|
||||
/* Check whether downstream element proposed a bufferpool but did
|
||||
not provide a correct propose_allocation() implementation */
|
||||
has_video_alignment = gst_buffer_pool_has_option (pool,
|
||||
GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT);
|
||||
/* Check whether downstream element proposed a bufferpool but did
|
||||
not provide a correct propose_allocation() implementation */
|
||||
has_video_alignment = gst_buffer_pool_has_option (pool,
|
||||
GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT);
|
||||
}
|
||||
} else {
|
||||
pool = NULL;
|
||||
size = vi.size;
|
||||
|
|
Loading…
Reference in a new issue