After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 774507 - splitmuxsink: pad request fails for flvmux
splitmuxsink: pad request fails for flvmux
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.10.0
Other All
: Normal enhancement
: 1.10.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-11-16 05:32 UTC by Vinod Kesti
Modified: 2016-11-18 09:41 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
splitmuxsink: pad request fails for flvmux (1.85 KB, patch)
2016-11-16 05:36 UTC, Vinod Kesti
needs-work Details | Review
Pad name typo corrected (1.85 KB, patch)
2016-11-16 14:30 UTC, Vinod Kesti
committed Details | Review

Description Vinod Kesti 2016-11-16 05:32:34 UTC
All,

Splitmuxsink is not compatible with flvmux. splitmuxsink is not able to request pad due to incompatible pad templates.

Below pipeline fails.
gst-launch-1.0 videotestsrc is-live=1 ! x264enc ! h264parse ! splitmuxsink muxer=flvmux location=./test.flv

(gst-launch-1.0:25551): GStreamer-CRITICAL **: gst_element_request_pad: assertion 'templ != NULL' failed
0:00:00.034612942 25551      0x2675100 ERROR           GST_PIPELINE grammar.y:728:gst_parse_perform_link: could not link h264parse0 to splitmuxsink0

splitmuxsink requests pad from element using pad template like "video_%u", "audio_%u" and "sink_%d". This is true for most of the muxers.

But splitmuxsink not able to request pad to flvmux as flvmux has "audio" and "video" as pad templates.

Regards,
Vinod
Comment 1 Vinod Kesti 2016-11-16 05:36:50 UTC
Created attachment 339992 [details] [review]
splitmuxsink: pad request fails for flvmux

splitmuxsink requests pad from element using pad template like "video_%u", "audio_%u" and "sink_%d". This is true for most of the muxers.
But splitmuxsink not able to request pad to flvmux as flvmux has "audio" and "video" as pad templates. 

fix: splitmuxsink should fallback to "audio" and  "video" when template not found.
Comment 2 Jan Schmidt 2016-11-16 09:14:30 UTC
Review of attachment 339992 [details] [review]:

Thanks! Seems fine, apart from the one typo.

::: gst/multifile/gstsplitmuxsink.c
@@ +1401,3 @@
+        mux_template =
+            gst_element_class_get_pad_template (GST_ELEMENT_GET_CLASS
+            (splitmux->muxer), "video");

You meant to write "audio" here, not "video"
Comment 3 Vinod Kesti 2016-11-16 14:30:09 UTC
Created attachment 340014 [details] [review]
Pad name typo corrected

Hello Jan,

I have corrected the typo and patch is created.

Regards,
Vinod
Comment 4 Jan Schmidt 2016-11-17 12:21:05 UTC
Thanks! pushed as commit 11fd0e on master, and 83bf7d on 1.10