There are a couple part where code seems, at least to me, a bit oscure or
confusing. So let's better add an explanation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1802>
gst_object_unref (allocator);
gst_object_unref (pool);
+ /* There's no need to chain decoder's method since all what is
+ * needed is done. */
return TRUE;
wrong_caps:
vpool->caps_info = caps_info;
vpool->alloc_info = alloc_info;
- /* May adjust the stride alignment based on the real HW alignment */
+ /* May adjust the stride alignment based on the real HW alignment:
+ *
+ * Counts the number of consecutive bits from lower significant
+ * bit. This number is then converted to the notion of alignment in
+ * GStreamer and passed as as constraint in GstVideoAlignment. The
+ * side effect is that the updated GstVideoInfo is now guarantied to
+ * endup with the same stride (ndufresne).
+ */
if (vpool->need_alignment) {
for (i = 0; i < GST_VIDEO_INFO_N_PLANES (&alloc_info); i++) {
gint nth_bit;