Blocking tee?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Blocking tee?

killerrats
*pipeline*
------------------------------------------------------------------------------
                                                                     
----src_1
       ------ rtph264depay --- h264parse ---- vtee ----- src_2
rtspsrc
       ------ rtpmp4gdepay --- aacparse ----- atee ----- src_2
                                                                   
------src_1

*src_1*
----------
vtee ---- queue ----
                   avimux1 ----- appsink1
atee ---- queue ----

*src_2*
----------
vtee ------ queue ----
                       avimux2 ----- appsink2
atee ------ queue ----

Problem:
Blocking the src pad on one of tees doesn't block the tee  so I can send eos
through the elements to null the elements.

I try to stop the application by the following task with command:
block each tee
eos through the elements
null the elements
exit the program

problem is that I can't get passed trying to block the tees again either.

*So I can't figure out why I can't block one of the tees randomly.*




-----
------------------------------
Gstreamer 1.12.4
------------------------------
Windows
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
------------------------------
Gstreamer 1.14.1
------------------------------
Windows
Reply | Threaded
Open this post in threaded view
|

Re: Blocking tee?

Baby Octopus
What exactly are you trying to do? Why do you need to block the
tee before sending EOS?

~BO



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Blocking tee?

killerrats
When I have src_1 and src_2 they are two branches that I record files to. I
switch between the two branches at the tees. I start one then stop the other
one.

the problem is that randomly it doesn't block one of the tees for the branch
and then it will have a problem. I try to stop the pipeline but no luck. It
only gets to the block the tee pad it was trying before. so I have to ctrl-c
to stop the program.

Stop the Pipeline process:
1. block each tee pad
2. null the elements in each branch.
3. release each pad.
4. pause,ready,null the elements, behind the tees. Plus I would null the
tees.
5. unref the pipeline.




-----
------------------------------
Gstreamer 1.12.4
------------------------------
Windows
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
------------------------------
Gstreamer 1.14.1
------------------------------
Windows
Reply | Threaded
Open this post in threaded view
|

Re: Blocking tee?

killerrats
I will setup a link to a .h file that will only contain the stop procedure.
If need more info that doesn't make sense then ask me to explain more. I
hope this code will pick out any mistakes that i made.

* <http://www.planetkorey.com/tmp/blockProcedure.h> blockProcedure.h*

Stopping procedure
-------------------------

1. call StopRecordVideo() which has a thread call to a method
TheStopVideoThread
2. in the TheStopVideoTHread it calls the method
SetupForNextVideoRecording()
3. in the SetupForNextVideoRecording has a thread call to
TheStopBranchThread and also does the Start Next Branch.
4. TheStopBranchThread:
a. BlocksTeeByName()
b. StopBranch()
5. in SetupForNextVideoRecording calls the StartNextBranch()



-----
------------------------------
Gstreamer 1.12.4
------------------------------
Windows
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
------------------------------
Gstreamer 1.14.1
------------------------------
Windows
Reply | Threaded
Open this post in threaded view
|

Re: Blocking tee?

killerrats
I figured out blocking each tee after creating each pad will make it not go
into flushing the pads. when I'm done playing each element then I unblock
the tee to continue the recording.



-----
------------------------------
Gstreamer 1.12.4
------------------------------
Windows
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
------------------------------
Gstreamer 1.14.1
------------------------------
Windows