author | Edward Hervey <bilboed@bilboed.com> | |
Fri, 25 Jun 2010 14:31:06 +0000 (16:31 +0200) | ||
committer | Edward Hervey <bilboed@bilboed.com> | |
Fri, 16 Jul 2010 13:30:55 +0000 (15:30 +0200) | ||
commit | 7fa58dbebd70d0bee9c7fd4f33ed42f11faa3dfe | |
tree | 5048d8600ef829d162d1ec72b1a33ed99eb28426 | tree | snapshot (tar.xz tar.gz zip) |
parent | 5b40ebbceb01c0a7e88ac0ec1784de9fb5468b60 | commit | diff |
GstPad: Do not call gst_pad_accept_caps() when caps change
Instead just check that the caps intersect with the pad template.
The elements should properly accept/refuse the caps in setcaps().
Shaves off calling the default implementation of acceptcaps which does
an expensive gst_pad_get_caps() (so if you have 50 of those elements in
a row, you'd be doing factorial(50) gst_pad_get_caps...).
Does not break any module unit test and most apps work fine.
https://bugzilla.gnome.org/show_bug.cgi?id=622740
Instead just check that the caps intersect with the pad template.
The elements should properly accept/refuse the caps in setcaps().
Shaves off calling the default implementation of acceptcaps which does
an expensive gst_pad_get_caps() (so if you have 50 of those elements in
a row, you'd be doing factorial(50) gst_pad_get_caps...).
Does not break any module unit test and most apps work fine.
https://bugzilla.gnome.org/show_bug.cgi?id=622740
gst/gstpad.c | diff | blob | history |