Hi,
I have been experiencing if I kill already running gsteamer RTSP stream/playing video, it leaves earlier image on display and when running again without rebooting the board, it is likely that it would not work (you will not see the stream on display).
My question is, what is best way to restart a video/stream without rebooting the board ?
I am using imx6Q Nitrogen board.
Thanks in advance for help.
Alok
Hi Alok,
could you post the pipeline you are running? is your video playback on main screen (/dev/video17)?
Leo
Hi Leo,
Thanks for the reply and you kind attention for the issue.
This is the pipe line I am using (Actually I am using C equivalent of this in program.
gst-launch rtspsrc location= rtsp://10.10.0.56/vbStream1S1 name =demux ! queue max-size-buffers=0 max-size-time=0 ! rtph264depay ! capsfilter caps="video/x-h264,width=1920,height=1080,framerate=(fraction)60/1" ! vpudec ! queue max-size-buffers=0 max-size-time=0 ! mfw_v4lsink sync=false demux. ! rtpmp4gdepay ! beepdec ! queue max-size-buffers=0 max-size-time=0 ! 'audio/x-raw-int, channels=2' ! alsasink device='hw:1,0' sync=false
When I kill this program with control C, I see display left with last still image and next time play does not work sometimes.
As per our project requirement we will be changing the display stream/video/images at run time, so I am struggling to find out how can I have robust code.
Thanks
Alok
I forgot to mention, My display is divided with multiple widgets and one of the widget is RTSP stream/Video.
I don't know if you have figured this out yet. But on your mfw_v4lsink use device=/dev/video17 instead of nothing. When you leave it blank you are going to video16 output which is RGB output. After stopping, it leaves last frame there. Using video17 is the video overlay and that will not happen when you stop. It will go blank instead, OR, show the RGB layer underneath if you had something on it.
Tim