restarting rtsp stream leaves system in bad state

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

restarting rtsp stream leaves system in bad state

1,656 次查看
alokkumar
Contributor III

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

标签 (3)
0 项奖励
回复
4 回复数

1,433 次查看
LeonardoSandova
Specialist I

Hi Alok,

could you post the pipeline you are running? is your video playback on main screen (/dev/video17)?

Leo

0 项奖励
回复

1,433 次查看
alokkumar
Contributor III

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

0 项奖励
回复

1,434 次查看
alokkumar
Contributor III

I forgot to mention, My display is divided with multiple widgets and one of the widget is RTSP stream/Video.

0 项奖励
回复

1,434 次查看
timothybean
Contributor IV

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