v4l2 element stay in READY state

Sérgio Agostinho sergio.r.agostinho at gmail.com
Thu Feb 12 01:03:08 PST 2015


Just for completion, do you have the same issue if you replace v4l2sink for
fakesink and then for an autovideosink *in your code*. Trying to understand
if this is something specific about the way you're connecting v4l2sink or
just live sinks in general.

Cheers
Sérgio

2015-02-12 7:44 GMT+01:00 Russell <danrenjian at gmail.com>:

> Hi,
>
> Here is how I add and link decodebin and v4l2sink into pipeline:
>
>    1. When a new src pad is created for rtspsrc
>       1. add decodebin to pipeline
>       2. set decodebin to PLAYING async
>       3. link src pad of rtspsrc to sink pad of decodebin
>    2. When a new src pad is created for decodebin
>       1. add v4l2sink to pipeline
>       2. set v4l2sink to PLAYING async
>       3. link src pad of decodebin to sink pad of v4l2sink
>
> Eventually, rtspsrc will be PLAYING, decodebin be PAUSED, and v4l2sink be
> READY.
>
> But if I detect state change for decodebin, so what when it move to
> PAUSED, I set its state to PLAYING asyc again, then eventually decodebin
> would be in PLAYING state.
> v4l2sink would always be READY state even if I set its state several times
> like decodebin.
>
> And, If I only did 1 and no 2 as decribed above (that is, without adding
> and linking for v4l2sink), then both rtspsrc and decodebin would be in
> PLAYING state.
>
>
> Is there anything else I can try??
>
> Thanks,
> Russell
>
>
> On Thu, Feb 12, 2015 at 9:06 AM, Russell <danrenjian at gmail.com> wrote:
>
>> Hi, Wonchul
>>
>> How can I confirm whether v4l2sink receives any buffer, are there any
>> logs that I can inspect?
>>
>> Thanks,
>> Russell
>>
>>
>>
>> On Wed, Feb 11, 2015 at 10:06 PM, Wonchul Lee <chul0812 at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I guess that v4l2sink didn't receive any buffer.
>>> Sink element what inherited from basesink will change to PAUSED states
>>> after receiving a buffer for preroll.
>>>
>>>
>>> http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/design/part-states.txt#n41
>>>
>>>
>>> 2015-02-11 18:23 GMT+09:00 Sérgio Agostinho <
>>> sergio.r.agostinho at gmail.com>:
>>> > Hi Russel,
>>> >
>>> > If you do
>>> >
>>> > gst-launch-1.0 videotestsrc ! v4l2sink
>>> >
>>> > do you see video on your v4l2device? Also, if you do
>>> >
>>> > gst-launch-1.0 rtspsrc location=rtspaddress ! decodebin ! autovideosink
>>> >
>>> > Do you see your rtsp video stream playing on a window?
>>> >
>>> > Cheers
>>> >
>>> >
>>> > 2015-02-11 7:50 GMT+01:00 Russell <danrenjian at gmail.com>:
>>> >>
>>> >> Hi,
>>> >>
>>> >> I was trying this pipeline to feed rtsp stream into a v4l2 virtual
>>> >> loopback device:
>>> >> gst-launch-1.0 rtspsrc location=rtspaddress ! decodebin ! v4l2sink
>>> >>
>>> >> Terminal gave this output and stops, and there are no video in the
>>> v4l2
>>> >> device:
>>> >> Progress: (request) Sending PLAY request
>>> >> Progress: (request) Sending PLAY request
>>> >> Progress: (request) Sent PLAY request
>>> >>
>>> >>
>>> >> So I am implementing the pipeline in c to see what happened.
>>> decodebin and
>>> >> v4l2sink are added and linked on on pad-added event. Eventually I
>>> found the
>>> >> v4l2sink element stay in READY state while the other two are PLAYING.
>>> I have
>>> >> set v4l2sink to PLAYING asynchronously but the state does not change.
>>> >>
>>> >> What is the matter here? and where I can find any detailed reason why
>>> >> v4l2sink cannot go to PLAYING state?
>>> >>
>>> >> Thanks in advance.
>>> >>
>>> >> Sincerely,
>>> >> Russell
>>> >>
>>> >> _______________________________________________
>>> >> gstreamer-devel mailing list
>>> >> gstreamer-devel at lists.freedesktop.org
>>> >> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>> >>
>>> >
>>> >
>>> > _______________________________________________
>>> > gstreamer-devel mailing list
>>> > gstreamer-devel at lists.freedesktop.org
>>> > http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>> >
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>
>>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20150212/890211de/attachment-0001.html>


More information about the gstreamer-devel mailing list