ubuntu下搭建live555 RTSP Server推流

前言 python

  live555是一個爲流媒體提供解決方案的跨平臺的C++開源項目,它實現了對標準流媒體傳輸是一個爲流媒體提供解決方案的跨平臺的C++開源項目,它實現了對標準流媒體傳輸協議如RTP/RTCP、RTSP、SIP等的支持。Live555實現了對多種音視頻編碼格式的音視頻數據的流化、接收和處理等支持,包括MPEG、H.263+、DV、JPEG視頻和多種音頻編碼。同時因爲良好的設計,Live555很是容易擴展對其餘格式的支持。目前,Live555已經被用於多款播放器的流媒體播放功能的實現,如VLC(VideoLan)、MPlayer。linux

源碼下載

官網:http://www.live555.com
目前官網的服務器在維護中,點擊其中 source code 便可下載源碼了。
在這裏插入圖片描述
源碼文件:live.2019.03.06.tar.gz,版本:2019.03.06ubuntu

 

ubuntu下安裝

解壓服務器

tar -xvf live.2019.03.06.tar.gz

進入解壓目錄,以下:ide

生成makefiles文件,後面的參數linux-64bit是安裝的平臺,裝在其餘平臺的話更換爲config.後面的後綴便可。函數

./genMakefiles linux-64bit編碼

 sudo apt-get install libssl-dev
make

當前目錄下會生成mediaServer 文件夾,有一個live555MediaServer可執行文件。spa

cd mediaServer
./live555MediaServer

執行以下:設計

 

 把一個視頻或音頻文件放入當前目錄(格式必須爲上述列表的格式),運行./live555MediaServer即開啓的RTSP 服務器。
用vlc軟件輸入流媒體的地址便可播放。code

 

以下,可直接使用python播放:

  

import cv2

if __name__ == '__main__':
    carId="rtsp://192.168.187.17:80/test.ts"
    capture = cv2.VideoCapture(carId)# 打開視頻sys.argv[1]
    while True:
        #讀取幀,read()方法就是將grab和retrieve整合到了一個調用函數
        _,frame = capture.read()
        if frame is None:
            break
        cv2.imshow('image', frame)
        cv2.waitKey(1)                  #讓你的程序不直接退出
    capture.release()
    cv2.destroyAllWindows()#清除全部show出來的圖像\
    pass
相關文章
相關標籤/搜索