Does it have mistake?

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

Does it have mistake?

Hecate_Eos
  gst-launch v4l2src  !  tee name=tee  ! queue ! ffmpegcolorspace ! ximagesink \
        tee. ! queue !  ffmpegcolorspace ! x264enc ! rtph264pay ! gstrtpbin latency = 400 name=rtpbin rtpbin.send_rtp_sink_0 \
        rtpbin.send_rtp_src_0 ! udpsink port=5000 \
        rtpbin.send_rtcp_src_0 ! udpsink port=5001 sync=false async=false    \
        udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0  
Reply | Threaded
Open this post in threaded view
|

Re: Does it have mistake?

Hecate_Eos
    gst-launch gstrtpbin name=rtpbin v4l2src  !  tee name=tee ! queue ! ffmpegcolorspace ! x264enc ! rtph264pay ! rtpbin.send_rtp_sink_0 \
        rtpbin.send_rtp_src_0 ! udpsink port=5000  host=192.168.0.88 \
        rtpbin.send_rtcp_src_0 ! udpsink port=5001 sync=false async=false host=192.168.0.88 \
        udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0

The above code can run normally( the remote computer can receive the data and I am sure it works well),but when I add " tee. ! ffmpegcolorspace ! videoscale ! ximagesink "
It can't work. I just get a static picture  showing for me in the local machine, but the remote computer can get nothing.

    gst-launch gstrtpbin name=rtpbin v4l2src  !  tee name=tee ! queue ! ffmpegcolorspace ! x264enc ! rtph264pay ! rtpbin.send_rtp_sink_0 \
        rtpbin.send_rtp_src_0 ! udpsink port=5000  \
        rtpbin.send_rtcp_src_0 ! udpsink port=5001 sync=false async=false  \
        udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0
       tee. ! ffmpegcolorspace ! videoscale ! ximagesink

Thanks in advance.
Reply | Threaded
Open this post in threaded view
|

Re: Does it have mistake?

Ron McOuat

>      gst-launch gstrtpbin name=rtpbin v4l2src  !  tee name=tee ! queue !
> ffmpegcolorspace ! x264enc ! rtph264pay ! rtpbin.send_rtp_sink_0 \
>          rtpbin.send_rtp_src_0 ! udpsink port=5000  \
>          rtpbin.send_rtcp_src_0 ! udpsink port=5001 sync=false async=false  \
>          udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0
>         tee. ! ffmpegcolorspace ! videoscale ! ximagesink
>
> Thanks in advance.
>
Try adding a queue in the second branch

tee. ! queue !  ffmpegcolorspace ! videoscale ! ximagesink

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Does it have mistake?

Hecate_Eos
I have tried ,but it still can't work .
In fact, before I send help to here, I have added "queue".I just made a mistake and lost to write it.
Reply | Threaded
Open this post in threaded view
|

Re: Does it have mistake?

Hecate_Eos
In reply to this post by Ron McOuat
I have solved this problem. Although, I don't know the reason.
I just add "sync=false async=false" to the first udpsink. It works. But, in the remote machine, the video is not very smoothly.
And my local computer seems work very busy.
But, it can work.
Thanks your reply.
 gst-launch gstrtpbin name=rtpbin v4l2src  !  tee name=tee ! queue ! ffmpegcolorspace ! x264enc ! rtph264pay ! rtpbin.send_rtp_sink_0 \
        rtpbin.send_rtp_src_0 ! udpsink port=5000  sync=false async=false\
        rtpbin.send_rtcp_src_0 ! udpsink port=5001 sync=false async=false  \
        udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0
       tee. ! queue ! ffmpegcolorspace ! videoscale ! ximagesink