【Dopi Micropython 視覺AI應用開發教程】【實驗8】RTSP傳輸視訊
阿新 • • 發佈:2020-12-11
【實驗8】RTSP傳輸視訊
簡介
RTSP(Real Time Streaming Protocol),RFC2326,實時流傳輸協議,是TCP/IP協議體系中的一個應用層協議。通過RTCP來控制播放,將視訊資料打包為RTP包進行傳輸。
示例
import rtsp import time def find_nal(data, size): nals = data.split(b'\x00\x00\x00\x01') for i in range(len(nals)): nals[i] = b'\x00\x00\x00\x01' + nals[i] return nals[1:] #開啟事前準備的H264資料進行傳輸 f = open("/root/app/res/stream.h264","rb") data = f.read() size = len(data) f.close() #定義時間戳ts,每個nal包間隔40ms ts = 0 tick = 40000 nals = find_nal(data,size) rtsp.create(554, "/live.sdp") while True: for i in range(len(nals)): rtsp.send_video(nals[i], len(nals[i]), ts) ts = ts + tick time.sleep_ms(10)#重複傳送,發完後睡眠一段時間 rtsp.destroy()
執行後,電腦端使用VLC工具訪問估計預設地址:rtsp://192.168.137.25/live.sdp, 將會看見傳輸的視訊內容。
延伸
嘗試一下把攝像頭,編碼器,RTSP整合起來,進行視訊傳輸。