rtsp — rtsp kütüphanesi

OpenMV Cam üzerindeki rtsp modülü, OpenMV Cam’inizden uyumlu herhangi bir RTSP istemcisine (VLC gibi) video akışı yapmanıza olanak tanır.

Örnek:

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)

Akışı görüntülemek için bir istemciyi rtsp://<camera-ip>:554/ adresine bağlayın.

class rtsp_server – rtsp_server sınıfı

rtsp_server sınıfı, OpenMV Cam’iniz üzerinde tek bağlantılı bir RTSP web sunucusu oluşturur.

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

network_if arayüzüne bağlı bir RTSP sunucusu oluşturur.

network_if, network.LAN(), network.WLAN() veya benzerinden oluşturulan network modülü arayüzüdür.

port, dinlenecek TCP portudur. Varsayılan RTSP portu 554’tür.

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

Bir istemci bir RTSP bağlantısı kurduğunda çağrılacak bir cb geri çağırması bağlar.

Geri çağırma, pathname (istenen akış kaynağı yolu, varsayılan olarak "/") ve session (rastgele bir oturum kimliği) değerlerini alır.

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

Bir istemci akışı başlattığında çağrılacak bir cb geri çağırması bağlar.

Geri çağırma, register_setup_cb() içinde açıklandığı şekilde pathname ve session değerlerini alır.

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

Bir istemci akışı duraklattığında çağrılacak bir cb geri çağırması bağlar.

Not: VLC’nin duraklatma düğmesi aslında sunucuyu bilgilendirmez.

Geri çağırma, register_setup_cb() içinde açıklandığı şekilde pathname ve session değerlerini alır.

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

Bir istemci RTSP bağlantısını kapattığında çağrılacak bir cb geri çağırması bağlar.

Geri çağırma, register_setup_cb() içinde açıklandığı şekilde pathname ve session değerlerini alır.

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

rtsp_server mantığını çalıştırmaya başlar ve geri dönmez.

image_callback, her çerçeveyi üretmek için çağrılır ve bir image.Image nesnesi döndürmelidir. rtsp_server.register_setup_cb() içinde açıklandığı şekilde pathname ve session değerlerini alır.

quality, akış sırasında kullanılan JPEG sıkıştırma kalitesidir.