rtsp — ספריית rtsp

מודול ה-rtsp ב-OpenMV Cam מאפשר לך להזרים וידאו מה-OpenMV Cam שלך אל כל לקוח RTSP תואם (כמו VLC).

דוגמה:

import network
import rtsp
import csi
import time

csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.VGA)

wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect("your-ssid", "your-password")
while not wlan.isconnected():
    time.sleep_ms(100)

server = rtsp.rtsp_server(wlan)

# Called each time the server needs a new frame to send.
def image_callback(pathname, session):
    return csi0.snapshot()

# Does not return; streams to any RTSP client that connects.
server.stream(image_callback, quality=70)

חבר לקוח אל rtsp://<camera-ip>:554/ כדי לצפות בזרם.

class rtsp_server – מחלקת rtsp_server

המחלקה rtsp_server יוצרת שרת רשת RTSP בעל חיבור יחיד על ה-OpenMV Cam שלך.

class rtsp.rtsp_server(network_if: Any, port: int = 554)

יוצר שרת RTSP המקושר אל network_if.

network_if הוא ממשק מודול הרשת שנוצר מ-network.LAN(), network.WLAN(), או דומה.

port הוא יציאת ה-TCP שעליה להאזין. יציאת ה-RTSP המוגדרת כברירת מחדל היא 554.

register_setup_cb(cb: Callable[[str, int], None]) None

קושר פונקציית callback בשם cb שתופעל כאשר לקוח מקים חיבור RTSP.

פונקציית ה-callback מקבלת pathname (נתיב משאב הזרם המבוקש, ברירת המחדל היא "/") ו-session (מזהה הפעלה אקראי).

register_play_cb(cb: Callable[[str, int], None]) None

קושר פונקציית callback בשם cb שתופעל כאשר לקוח מתחיל להזרים.

פונקציית ה-callback מקבלת pathname ו-session כפי שמתואר ב-register_setup_cb().

register_pause_cb(cb: Callable[[str, int], None]) None

קושר פונקציית callback בשם cb שתופעל כאשר לקוח משהה הזרמה.

הערה: כפתור ההשהיה של VLC אינו מודיע בפועל לשרת.

פונקציית ה-callback מקבלת pathname ו-session כפי שמתואר ב-register_setup_cb().

register_teardown_cb(cb: Callable[[str, int], None]) None

קושר פונקציית callback בשם cb שתופעל כאשר לקוח מפרק את חיבור ה-RTSP.

פונקציית ה-callback מקבלת pathname ו-session כפי שמתואר ב-register_setup_cb().

stream(image_callback: Callable[[str, int], image.Image], quality: int = 90) None

מתחיל להריץ את לוגיקת ה-rtsp_server ואינו חוזר.

image_callback מופעלת כדי לייצר כל פריים וחייבת להחזיר אובייקט image.Image. היא מקבלת pathname ו-session כפי שמתואר ב-rtsp_server.register_setup_cb().

quality היא איכות דחיסת ה-JPEG בה משתמשים בעת ההזרמה.