日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

vlc linux将摄像头串流,vlc的应用之九:用vlc串流摄像头

發布時間:2025/3/15 linux 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vlc linux将摄像头串流,vlc的应用之九:用vlc串流摄像头 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

版權聲明:原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeremiah.blog.51cto.com/539865/245509

n就沒有更新博客了,主要是Jeremiah最近對vlc研究的非常的少了,工作重點轉移了,又增加了管理工作,讓Jeremiah忙的暈頭轉向的。

這篇博客是很久之前就想寫的,今天終于提筆寫了,心情還是比較爽的。廢話不多說。

0. 環境搭建

Jeremiah這次主要是用的vlc-1.0.0(英文版)進行講解。首先需要準備攝像頭,Jeremiah用的是一個普通攝像頭(以前釣MM用的,嘻嘻),驅動安裝好后,在“我的電腦”中顯示如下。

1. vlc播放攝像頭

開啟vlc-1.0.0,media->open capture device,進入Capture Device頁面。這個也可以通過media->Advanced open file,選取此標簽頁。

video device name選擇VIMICRO USB PC Camera (ZC0301PLH),如果沒有,請先選擇Refresh list刷新列表。

audio device name選擇SoundMAX HD Audio,這個是Jeremiah的聲卡。

之后可以勾選show more options,里面可是設置緩沖及看到MRL和Edit Options,這些信息都是很重要的。Advance Option按鈕里面有一些詳細設置,大家可以進去選擇,其中video size是可以做調整的。下面會講到。

之后點play,就可以播放了。

2. 用命令行開啟vlc播放攝像頭

命令行的最大好處就是,vlc命令后面的參數,就是我們在編程的時候調用libvlc_new的argv,將這些參數搞明白,我們就可以在編程的時候調用了。

開啟cmd,切換到vlc目錄下。

根據1中的MRL和Edit Options信息,設置vlc播放參數如下。

vlc dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)" :dshow-adev="SoundMAX HD Audio" :dshow-size=320*240

各個參數什么意思都是很明顯的,如果不明白,就運行vlc -H,然后到vlc目錄下面去找vlc-help.txt,里面是全部的參數的介紹。

3. 將vlc播放的攝像頭信息存入文件中

播放成功之后,在達到我們的目的前,我們先做一個簡單的驗證工作,就是播放攝像頭并存入文件。

根據以前stream到文件的參數,修改2的參數如下。

vlc

dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)"

:dshow-adev="SoundMAX HD udio" :dshow-size=320*240

:sout=#transcode{vcodec=h264,vb=800,scale=1,acodec=mp3,ab=128,channels=2,samplerate=44100}:std{access=file,mux=ts,dst=D:/01.ts}}

這里用到了轉碼,就是將攝像頭的視頻編碼為h264,音頻編碼為MP3,然后封裝為ts寫入到d:/01.ts中。

這個不會顯示攝像頭,但是通過刷新d:/01.ts就會發現這個文件是在增大的,也就是有視頻流在寫入。

4. 將攝像頭串流到網絡中

根據3的參數做簡單的修改就可以達到串流攝像頭視頻流到網絡的目的了。修改3的參數如下。

vlc

dshow:// :dshow-vdev="VIMICRO USB PC Camera (ZC0301PLH)"

:dshow-adev="SoundMAX HD Audio" :dshow-size=320*240

:sout=#transcode{vcodec=h264,vb=800,scale=1,acodec=mp3,ab=128,channels=2,samplerate=44100}:duplicate{dst=display,dst=rtp{dst=127.0.0.1,mux=ts,port=1234}}

這里的duplicate大家應該都很熟悉了,因為在錄像,vlm里面都講過這個參數。參數的意思是,將攝像頭

的音視頻流分別編碼為MP3和h264之后封裝為ts,然后通過rtp發送到127.0.0.1的1234端口上,同時顯示出來。如果希望發送到其他網絡

地址或組播里面只需要改變127.0.0.1和1234為我們需要的地址和端口即可。

再開啟一個vlc,播放這個ts over rtp流。

vlc rtp://@:1234 --rtp-caching=1500

成功后就可以看到了。切圖如下:

左邊的是攝像頭的流服務,右邊的是流的客戶端,從下邊的地址就能看的很清楚。

5. 遺留問題:

從圖片可以看出,播放的視頻顏色是不對的,是攝像頭的問題還是vlc本身的問題還是參數設置的問題,現在不得而知,當然攝像頭本身是沒問題的,因為qq視頻都很正常。希望誰研究出來告訴我一聲。謝謝。

總結

以上是生活随笔為你收集整理的vlc linux将摄像头串流,vlc的应用之九:用vlc串流摄像头的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。