從 Logitech C920 網路攝影機錄製影片時出現問題

從 Logitech C920 網路攝影機錄製影片時出現問題

我正在嘗試使用 Logitech C920 網路攝影機錄製 1080 @ 30FPS 影片。很簡單,對吧?嗯,顯然不是。

首先,我嘗試在運行 16.04 的桌面上使用 Ubuntu 的內建 Cheese 應用程式。預覽串流在 30FPS 下完美流暢,但一旦我開始錄製,幀速率就會急劇下降到大約 15FPS 左右(我不太清楚,因為 Cheese 不提供 FPS 儀表)。

接下來,我在運行 16.04 的桌面上再次嘗試使用guvcview.不幸的是,16.04 的預設儲存庫中的版本2.02有一個漏洞這導致它將視頻錄製為單個靜止幀。啊...然後我2.05從非官方 PPA 安裝。這解決了上述錯誤,但是,當我去錄製視訊(使用攝影機硬體編碼器中的 H.264)時,視訊的第一秒左右完美錄製,但隨後幀速率下降到 3 到 5 FPS 之間。

最後,為了確保這不僅僅是我的桌上型電腦的問題,我在運行 18.04 的筆記型電腦上安裝了guvcview版本2.05,但再一次,當我去錄製影片(使用攝影機硬體編碼器中的H.264)時,第一秒或所以錄影完美,但幀速率下降到 3 到 5 FPS 之間。

那麼這裡到底發生了什麼事?這是libuvc與 Logitech C920 的兼容性問題嗎?我知道這不是硬體效能不足的問題,因為我的桌上型電腦有 6 核心 AMD CPU,筆記型電腦有四核心第三代 i7。

答案1

我想出瞭如何讓它與guvcview.

我發現這個帖子其中提到問題在於guvcview重新編碼來自攝影機的串流。為什麼這會導致可怕的幀速率下降對我來說是一個謎,因為我的 CPU 使用率非常低...

無論如何,解決方法是告訴guvcview使用來自相機的原始串流:

在此輸入影像描述

請注意,您告訴程式重新編碼(或不重新編碼)的格式與您告訴它從相機串流的格式完全分開:

在此輸入影像描述

另外,另一方面,我似乎不知道如何調整 中大量的 H.264 參數guvcview,或者 Logitech C920 中的硬體 H.264 編碼器確實不太好。我以MJPEG 格式錄製了一個1080p30 剪輯(產生了約60Mb/s 的資料),並使用我的Windows 機器上的Veags Pro 將其轉碼為10Mb/s H.264,結果比直接從網路攝影機以H格式進行串流傳輸要好得多。

相關內容