rtsp --- pustaka rtsp

Modul rtsp pada OpenMV Cam memungkinkan Anda melakukan streaming video dari OpenMV Cam ke klien RTSP yang kompatibel (seperti VLC).

Contoh:

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)

Hubungkan klien ke rtsp://<camera-ip>:554/ untuk melihat stream.

class rtsp_server -- kelas rtsp_server

Kelas rtsp_server membuat server web RTSP dengan koneksi tunggal pada OpenMV Cam Anda.

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

Membuat server RTSP yang terikat ke network_if.

network_if adalah antarmuka modul jaringan yang dibuat dari network.LAN(), network.WLAN(), atau yang serupa.

port adalah port TCP yang didengarkan. Port RTSP default adalah 554.

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

Ikat callback cb untuk dipanggil saat klien menyiapkan koneksi RTSP.

Callback menerima pathname (jalur sumber daya stream yang diminta, defaultnya adalah "/") dan session (ID sesi acak).

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

Ikat callback cb untuk dipanggil saat klien mulai streaming.

Callback menerima pathname dan session seperti yang dijelaskan dalam register_setup_cb().

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

Ikat callback cb untuk dipanggil saat klien menjeda streaming.

Catatan: tombol pause VLC tidak benar-benar memberi tahu server.

Callback menerima pathname dan session seperti yang dijelaskan dalam register_setup_cb().

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

Ikat callback cb untuk dipanggil saat klien menutup koneksi RTSP.

Callback menerima pathname dan session seperti yang dijelaskan dalam register_setup_cb().

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

Memulai logika rtsp_server dan tidak akan kembali.

image_callback dipanggil untuk menghasilkan setiap bingkai dan harus mengembalikan objek image.Image. Ia menerima pathname dan session seperti yang dijelaskan dalam rtsp_server.register_setup_cb().

quality adalah kualitas kompresi JPEG yang digunakan saat streaming.