[英]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.