簡體   English   中英

如何在Windows上使用Gstreamer從UVC獲取編碼流

[英]How to get encoded stream coming from UVC with Gstreamer on Windows

我希望在Windows上使用Gstreamer從Logitech HD Webcam(UVC)獲得編碼流。 我知道在Linux上您可以通過/ dev / video1等訪問。但是,我不知道如何在Windows上執行此操作。

我可以通過Windows上的ksvideosrc獲取原始緩沖區,但這並不能解決我的問題。 我必須獲得硬件編碼流。 如果你知道任何其他圖書館而不是Gstreamer,請指導我。

我希望輸出像這樣,但對於Windows版本。
gst-launch-1.0 v4l2src device = / dev / video0! decodebin! ximagesink

我找到了解決這個問題的人的解決方案。

gst-launch-1.0 v4l2src device=/dev/video0 ! image/jpeg,width=1280,height=720 ! decodebin ! ximagesink


這將附加攝像機的編碼流,並使用decodebin進行解碼並將輸出提供給Window。 如果你不寫image / jpeg等,它會自動從相機附加到原始緩沖區。

在C ++代碼中,它就像

GstElement* v4l2src = gst_element_factory_make("v4l2src","Source");
GstElement* srcFilter = gst_element_factory_make("capsfilter","Filter");

然后你將它們添加到管道並鏈接它們。 那樣做。
注意:如果相機不支持該分辨率和媒體類型,則會給出

streaming stopped, reason not-negotiated (-4)

錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM