rtsp — rtsp könyvtár

Az OpenMV Cam rtsp modulja lehetővé teszi, hogy videót streamelj az OpenMV Cam eszközről bármely kompatibilis RTSP kliensre (mint például a VLC).

Példa:

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)

Csatlakoztass egy klienst az rtsp://<camera-ip>:554/ címhez a stream megtekintéséhez.

class rtsp_server – rtsp_server osztály

Az rtsp_server osztály egyetlen kapcsolatot kezelő RTSP webszervert hoz létre az OpenMV Cam eszközön.

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

Létrehoz egy RTSP szervert, amely a network_if interfészhez kötődik.

A network_if a network.LAN(), network.WLAN() vagy hasonló hívásból létrehozott hálózati modul interfész.

A port az a TCP port, amelyen figyel. Az alapértelmezett RTSP port az 554.

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

Hozzáköt egy cb visszahívást, amely akkor hívódik meg, amikor egy kliens RTSP kapcsolatot épít ki.

A visszahívás megkapja a pathname (a kért stream erőforrás-útvonal, alapértelmezett értéke "/") és a session (egy véletlenszerű munkamenet-azonosító) paramétereket.

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

Hozzáköt egy cb visszahívást, amely akkor hívódik meg, amikor egy kliens megkezdi a streamelést.

A visszahívás megkapja a pathname és session paramétereket, ahogyan azt a register_setup_cb() ismerteti.

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

Hozzáköt egy cb visszahívást, amely akkor hívódik meg, amikor egy kliens szünetelteti a streamelést.

Megjegyzés: a VLC szünet gombja valójában nem értesíti a szervert.

A visszahívás megkapja a pathname és session paramétereket, ahogyan azt a register_setup_cb() ismerteti.

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

Hozzáköt egy cb visszahívást, amely akkor hívódik meg, amikor egy kliens lebontja az RTSP kapcsolatot.

A visszahívás megkapja a pathname és session paramétereket, ahogyan azt a register_setup_cb() ismerteti.

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

Elindítja az rtsp_server logikájának futtatását, és nem tér vissza.

Az image_callback minden képkocka előállításához meghívódik, és egy image.Image objektumot kell visszaadnia. Megkapja a pathname és session paramétereket, ahogyan azt az rtsp_server.register_setup_cb() ismerteti.

A quality a streamelés során használt JPEG tömörítési minőség.