rtsp — rtsp biblioteka

Modul rtsp na OpenMV Cam omogućuje vam streamanje videa s vašeg OpenMV Cam na bilo koji kompatibilni RTSP klijent (poput VLC).

Primjer:

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)

Povežite klijent na rtsp://<camera-ip>:554/ za pregled streama.

class rtsp_server – klasa rtsp_server

Klasa rtsp_server stvara RTSP web poslužitelj s jednom vezom na vašem OpenMV Cam.

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

Stvara RTSP poslužitelj povezan na network_if.

network_if je sučelje mrežnog modula stvoreno pomoću network.LAN(), network.WLAN() ili sličnog.

port je TCP port na kojem se osluškuje. Zadani RTSP port je 554.

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

Veže povratni poziv cb koji se poziva kad klijent uspostavi RTSP vezu.

Povratni poziv prima pathname (zatraženi put resursa streama, zadano je "/") i session (nasumični id sesije).

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

Veže povratni poziv cb koji se poziva kad klijent započne streamanje.

Povratni poziv prima pathname i session kako je opisano u register_setup_cb().

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

Veže povratni poziv cb koji se poziva kad klijent pauzira streamanje.

Napomena: VLC-ova tipka za pauzu zapravo ne obavještava poslužitelj.

Povratni poziv prima pathname i session kako je opisano u register_setup_cb().

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

Veže povratni poziv cb koji se poziva kad klijent prekine RTSP vezu.

Povratni poziv prima pathname i session kako je opisano u register_setup_cb().

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

Pokreće logiku rtsp_server i ne vraća se.

image_callback poziva se za proizvodnju svake sličice i mora vratiti image.Image objekt. Prima pathname i session kako je opisano u rtsp_server.register_setup_cb().

quality je kvaliteta JPEG kompresije koja se koristi tijekom streamanja.