I am working on a ARM video server streaming a H264 flow of data over RTP protocol.
I am using appsrc module to inject data into the pipeline.
The server must start/stop streaming on remote-request basis; to satisfy this request I do gst_element_set_state (pipeline, GST_STATE_PLAYING) to start the streaming and
gst_element_set_state (pipeline, GST_STATE_PAUSED) to stop the streaming.
In other words the operation sequence is:
- create the pipeline and set its state to GST_STATE_PAUSED;
- wait for a StartStreaming request;
- set the pipeline status to GST_STATE_PLAYING and begin to inject data into the pipeline by means of push-buffer signal;
- when a StopStreaming request arrive, set GST_STATE_PAUSED the pipeline....
- and so on...
The problem is that after the second StartStreaming request is received , all the push-buffer operations return with GST_FLOW_UNEXPECTED error.
Can someone can help me?