Greetings! I have an element, that is inherited from BaseTransform class. It's sinkpad's template supports "x-mycaps" caps. It's sourcepad's template supports "x-mycaps" (first) and "x-raw" caps. The problem is that if I use it in decodebin2 , with xvimagesink on output: filesrc location=~/file.mp4 ! qtdemux ! decodebin ! xvimagesink When Decodebin2 is analyzing the pad in analyze_new_pad function, it checks if myplugin's srcpad's caps are a subset of "final decodebin2 caps" (which is "video/x-raw", "audio/x-raw", etc). So, because srcpad's caps contain "x-mycaps", it's not a subset of "raw caps collection". Decodebin2 decides that the autoplugging process is not finished, and trying to plug it again, and again in infinite autoplugging process. --- Maybe you have any comment or advice for me? Is it really impossible for Converter element to have not only the "raw caps" on srcpad? --- Maybe you know some converter that supports several kinds of caps on srcpad? Thanks for attention! -- With respect, Aleksandr Slobodeniuk tel: +34 661 674 116 _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Also: totem player, that uses playbin with cluttervideosink works fine with it. The difference I can see is that gst_base_transform_find_transform can sucessfully query caps from the peer of srcpad, and intersect them after it (which is a solution for such elements as my converter). But in case of manual decodebin pipeline (repeating: filesrc location=~/file.mp4 ! qtdemux ! decodebin ! xvimagesink ) , srcpad has no peer at this moment. -- Atentamente, Aleksandr Slobodeniuk tel: +34 661 674 116 08.03.2018, 18:32, "Aleksandr Slobodeniuk" <[hidden email]>:
_______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Le jeudi 08 mars 2018 à 19:10 +0300, Aleksandr Slobodeniuk a écrit :
> totem player, that uses playbin with cluttervideosink works fine with > it. > > The difference I can see is that gst_base_transform_find_transform > can sucessfully query caps from the peer of srcpad, and intersect > them after it (which is a solution for such elements as my > converter). But in case of manual decodebin pipeline (repeating: > > filesrc location=~/file.mp4 ! qtdemux ! decodebin ! xvimagesink > > ) , srcpad has no peer at this moment. parse_launch() have no idea what decodebin signals are about. Nicolas _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (201 bytes) Download Attachment |
Free forum by Nabble | Edit this page |