Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Support
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
gstreamer
gstreamer
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 369
    • Issues 369
    • List
    • Boards
    • Labels
    • Milestones
  • Merge Requests 44
    • Merge Requests 44
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Packages
    • Packages
    • Container Registry
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • GStreamer
  • gstreamergstreamer
  • Issues
  • #231

Closed
Open
Opened May 03, 2017 by Bugzilla Migration User@bugzilla-migration
  • Report abuse
  • New issue
Report abuse New issue

filesink/basesink: gst_element_query() for QUERY_URI on a filesink fails

Submitted by Brendan Shanks @bshankstd

Link to original bug (#782135)

Description

I'm trying to do a GST_QUERY_URI on a filesink using gst_element_query(), but the query is never handled and fails. (It's actually on a bin containing a filesink, but I don't think that matters).
GstBaseSink's default_element_query() handles the query, and defaults to doing gst_pad_peer_query(). This sends the query upstream through the muxer, parser, etc., but the filesink itself never gets to answer.
filesink implements GstBaseSink::query() and handles GST_QUERY_URI there, but it looks like basesink only calls that for a pad query, not element query.

I can query the bin's sink pad instead, but gst_element_query(filesink, GST_QUERY_URI) seems like something that should work. Is this the case?

Relevant debug lines:
GST_ELEMENT_PADS gstelement.c:1707:gst_element_query: send query on element tdstream0
bin gstbin.c:4376:gst_bin_query:<tdstream0> Sending query 0x29c6c0 (type uri) to sink children
GST_ELEMENT_PADS gstelement.c:1707:gst_element_query: send query on element filesink
GST_PADS gstpad.c:4059:gst_pad_peer_query:filesink:sink peer query 0x29c6c0 (uri)
GST_PADS gstpad.c:3932:gst_pad_query:muxer:src doing query 0x29c6c0 (uri)
GST_PADS gstpad.c:3376:gst_pad_query_default:muxer:src forwarding 0x29c6c0 (uri) query
GST_PADS gstpad.c:2836:gst_pad_iterate_internal_links_default:muxer:src Making iterator
GST_PADS gstpad.c:4059:gst_pad_peer_query:muxer:video_0 peer query 0x29c6c0 (uri)
GST_PADS gstpad.c:3932:gst_pad_query:parser:src doing query 0x29c6c0 (uri)
GST_PADS gstpad.c:3376:gst_pad_query_default:parser:src forwarding 0x29c6c0 (uri) query
GST_PADS gstpad.c:2836:gst_pad_iterate_internal_links_default:parser:src Making iterator
GST_PADS gstpad.c:4059:gst_pad_peer_query:parser:sink peer query 0x29c6c0 (uri)
... queries all the way to the src

Version: 1.10.0

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
1
Labels
Bugzilla
Assign labels
  • View project labels
Reference: gstreamer/gstreamer#231