windows下python使用ffmpeg實現(xiàn)rtsp推流
rtsp推流
1、下載
rtsp 服務器下載網址:https://github.com/aler9/rtsp-simple-server/releases
windows環(huán)境下選擇windows_amd64.zip文件下載
2、配置環(huán)境變量
照顧新手!額,算了,大家都是大佬~此處略過
3、啟動
沒啥說的,雙擊都行
命令行啟動:rtsp-simple-server.exe
(建議命令行啟動)
運行以后就是長這個鬼樣子的,我們要關注的就是tcp的端口號,ok,下一步
!嘔吼,等等、等等,細心的朋友可能發(fā)現(xiàn)了,下面不是有個rtmp嘛~是的,恭喜你發(fā)現(xiàn)了新大陸!回頭一點要自己試一下哦。
4、推流
如果想把本地文件推出去使用下面的命令即可,參數(shù)請自行調整食用。
推流命令:
ffmpeg -re -stream_loop -1 -i (你的文件名) -c copy -f rtsp rtsp://127.0.0.1:8554/video
簡單對參數(shù)說明
- -re 是以流的方式讀取
- -stream_loop -1 表示無限循環(huán)讀取
- -i 就是輸入的文件
- -f 格式化輸出到哪里
當然我們還有另一種需求:
把拉過來的流,處理之后再推出去。
拉流-----處理-----推流這里和rtmp推流方法基本一致
需要把command中
-f 后 ‘flv’ 改為 ’rtsp’
rtmpurl 改為 rtsp 推流地址即可
#此處換為你自己的地址 rtsp_url = 'rtsp://127.0.0.1:8554/video' cap = cv2.VideoCapture(“拉流地址”) # Get video information fps = int(cap.get(cv2.CAP_PROP_FPS)) width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) command = ['ffmpeg', '-y', '-f', 'rawvideo', '-vcodec', 'rawvideo', '-pix_fmt', 'bgr24', '-s', "{}x{}".format(width, height), '-r', str(fps), '-i', '-', '-c:v', 'libx264', '-pix_fmt', 'yuv420p', '-preset', 'ultrafast', '-f', 'rtsp', rtsp_url] p = sp.Popen(command, stdin=sp.PIPE) while (cap.isOpened()): ret, frame = cap.read() if not ret: print("Opening camera is failed") break frame = 你的圖像處理的函數(shù)(frame) p.stdin.write(frame.tostring())
5、測試
來來來,剛剛學到的拉流又能用到了~趁熱打鐵、再來一次
import cv2 cap = cv2.VideoCapture("rtsp://127.0.0.1:8554/video") while (cap.isOpened()): ret, frame = cap.read() if not ret: print("Opening camera is failed") break cv2.imshow('起個名字',frame) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows()
當然,如果這幾行代碼你也不愿意寫的話~我只能教你一點別的辦法了
VLC media player
下載地址:https://www.videolan.org/vlc/index.html
運行之后選擇媒體----網絡串流----網絡----填寫地址(剛剛rtsp推流的地址)----選擇播放
(這里有個簡單的方法,打開vlc之后直接把網址 ctrl+v 粘貼 點確定就可以了)
迅雷影音 新手推薦如果只是想看能不能推流,用這個試一下吧,對新手比較友好,有迅雷的直接使用就行,不需要再下載安裝軟件了,但是用起來確實不如vlc
下載地址:算了自己找吧~
食用方法:打開之后在中間的 框框中輸入rtsp推流的地址就ok了
qq影音使用同迅雷影音…總有一款適合你
ok 大功告成~
到此這篇關于windows下python使用ffmpeg實現(xiàn)rtsp推流的文章就介紹到這了,更多相關python ffmpeg rtsp推流內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python Django2 model 查詢介紹(條件、范圍、模糊查詢)
這篇文章主要介紹了Python Django2 model 查詢介紹(條件、范圍、模糊查詢),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python使用Joblib模塊實現(xiàn)加快任務處理速度
在Python編程中,處理大規(guī)模數(shù)據(jù)或者進行復雜的計算任務時,通常需要考慮如何提高程序的運行效率,本文主要介紹了如何使用Joblib模塊來加快任務處理速度,需要的可以參考下2024-03-03Python使用import導入本地腳本及導入模塊的技巧總結
這篇文章主要介紹了Python使用import導入本地腳本及導入模塊的技巧,結合實例形式總結分析了Python使用import導入本地腳本及導入模塊的使用方法及相關操作注意事項,需要的朋友可以參考下2019-08-08Python使用multiprocessing實現(xiàn)多進程的詳細步驟記錄
multiprocessing包是Python中的多進程管理包,與threading.Thread類似,它可以利用multiprocessing.Process對象來創(chuàng)建一個進程,下面這篇文章主要給大家介紹了關于Python使用multiprocessing實現(xiàn)多進程的詳細步驟,需要的朋友可以參考下2024-08-08Python2.6版本中實現(xiàn)字典推導 PEP 274(Dict Comprehensions)
這篇文章主要介紹了Python2.6版本中實現(xiàn)字典推導 PEP 274(Dict Comprehensions),本文給出了表達式寫法和for循環(huán)寫法兩種方法實現(xiàn)字符推導,需要的朋友可以參考下2015-04-04