我有以下管道:
gst_element_link_many (videosrc, q1, rlvideoqueue, rlvvalve, q3, videoparse, videoqueue, mux, filesink, NULL);
gst_element_link_many (audiosrc, q2, rlaudioqueue, rlavalve, q4, audioparse, audioqueue, mux, NULL);
其中rlvideoqueue
,rlaudioqueue
是队列元素而rlvvalve
,rlavalve
是一个阀门,
最初,阀门的下降值设置为TRUE
,rlvideoqueue
,rlaudioqueue
设置为保持缓冲区15秒(min-threshold-time=15000000000 min-threshold-buffers=0 min-threshold-bytes=0 max-size-bytes=0 max-size-buffers=0 max-size-time=15000000000
)。
一旦发生事件,阀门的跌落值就会设置为FALSE
。但它从不写入filesink,我也将异步设置为FALSE
,但没有运气,数据只是在队列中累积。
数据被排队等待的原因是什么。
当且仅当min-threshold-time
设置为0时,才将数据传递给下一个元素,并将数据写入文件。
答案 0 :(得分:0)
您必须在文件链接中添加async = false