我是Gstreamer的新手。GStreamer管道顯示RTSP流
我需要編寫一個能夠使用GStreamer從RTSP源流式傳輸數據的視頻客戶端。我將VLC配置爲使用RTSP在我的筆記本電腦上流式傳輸視頻,並且我想創建一個管道來獲取該流並顯示它。我嘗試使用playbin
和一切工作正常。關鍵是我需要微調用於流式傳輸視頻的延遲,但似乎我不能用playbin來實現。
我試過rtspsrc
,因爲它允許處理延遲,但我不知道如何在任何窗口上顯示視頻。這是我創建的管道:
gst-launch-1.0 rtspsrc location=rtsp://localhost:8554/test latency=300 ! decodebin ! autovideosink
我得到錯誤「流任務暫停,原因未協商(-4)」。
我在互聯網上深深地看過之後嘗試了不同的管道,但我絕對錯過了一些東西。我如何編寫一個gstreamer管道來顯示RTSP的視頻?
的最終目標是有一個管道可以在延遲方面至少是可調的,所以我有兩個選擇:
- 設置playbin元素的潛伏期,如果可能的話。 (此元素正確顯示視頻)
- 使用正確的管道顯示視頻,因爲rtspsrc允許我設置延遲。
我使用Xubuntu 16.04,gstreamer-tools-1.0(也使用0.10),並且用VLC流的視頻具有mp4擴展。
感謝您的幫助!我想我得到了上述答案的解決方案。但我仍然對使用'rtsp'的第二個解決方案感興趣。我試過'videoconvert'和'autovideoconvert',但我什麼也沒看到。這條管道似乎是正確的。我沒有收到任何錯誤消息。我的管道中是否需要其他元素?謝謝! –
導出GST_DEBUG = 3並查看日誌發生了什麼。 –