Dynamic pipeline change - No pad probe callback getting invoked.

Bhavya bhavyar.1992 at gmail.com
Sat Mar 10 04:26:01 UTC 2018


Hello All,

We are stuck in handling below use case, Please provide your input. Thanks.

*Overview *
Use case is to disable and enable audio stream run-time without effecting
video stream playback.

*Pipeline *

filesrc ! typefind ! demuxer name=d d. ! audio multiqueue ! audio
input-selector ! <decoding elements> ! audiosink d. ! video multiqueue !
video input selector ! <decoding elements> ! videosink.

Now on disabling audio stream, below steps are followed.

1) Install IDLE pad probe on audio input-selector src pad.
2) On pad probe callback, unlink and remove decoding elements and audiosink.
3) link audio input-selector src pad to fakesink(sync=true).
4) Remove pad probe and return GST_PAD_PROBE_OK.

This works fine, audio disables and video starts playing.

*Issue * : After disabling, trying to enable audio stream back.

1) Install IDLE pad probe now on audio input-selector src pad.

Here IDLE pad probe  never gets invoked. 

Gstreamer version : 1.6.3

Not sure why IDLE pad probe callback not getting called.

Tried using other pad probe callback, but same behavior is seen.

This issue happens on imx6x hardware and issue is not always, seen somtime.
Easily happens with slow device like MTP. In USB sometimes observed.

In PC, linux it seems to work fine.

Not sure which elements causing this. From gstreamer logs, we are not able
to figure out anything yet.

Please suggest what can be next action item. Thanks.









--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list