From 6e8f9236755d190e7451f5bce04f3864a01a7860 Mon Sep 17 00:00:00 2001 From: cronyx Date: Thu, 26 Oct 2023 21:46:48 +0300 Subject: [PATCH] 261023 cfg vdec (#1090) --- general/package/vdec-openipc/files/S98vdec | 12 ++++++- general/package/vdec-openipc/files/vdec.conf | 34 ++++++++++++++++++++ general/package/vdec-openipc/vdec-openipc.mk | 3 ++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 general/package/vdec-openipc/files/vdec.conf diff --git a/general/package/vdec-openipc/files/S98vdec b/general/package/vdec-openipc/files/S98vdec index 200e9178..c11cfac8 100755 --- a/general/package/vdec-openipc/files/S98vdec +++ b/general/package/vdec-openipc/files/S98vdec @@ -2,15 +2,25 @@ # # Start vdec decoder # +. /etc/vdec.conf + +if [ ${osd} = "simple" ]; then + osd_variant="--osd" +fi case "$1" in start) echo "Starting vdec decoder service..." - vdec -p 5600 -d frame -c h264 --bg-r 30 --bg-g 0 --bg-b 30 --mavlink-port 14750 --osd & + vdec -p ${port} -d ${format} -c ${codec} -m ${mode} --bg-r ${bg_r} --bg-g ${bg_g} --bg-b ${bg_b} --mavlink-port ${mavlink_port} ${osd_variant} > /dev/null 2>&1 & + sleep 3 + if [ ${osd} = "custom" ]; then + osd > /dev/null 2>&1 & + fi ;; stop) echo "Stopping vdec decoder service..." kill -9 $(pidof vdec) + kill -9 $(pidof osd) ;; *) echo "Usage: $0 {start|stop}" diff --git a/general/package/vdec-openipc/files/vdec.conf b/general/package/vdec-openipc/files/vdec.conf new file mode 100644 index 00000000..77f5809f --- /dev/null +++ b/general/package/vdec-openipc/files/vdec.conf @@ -0,0 +1,34 @@ +### Port for video rx (default: 5000) + +port=5600 + +### Codec: h264 or h265 (default: h264) + +codec=h264 + +### Incoming data format: stream or frame (default: stream) + +format=frame + +### Screen output mode: +# 720p60 - 1280 x 720 @ 60 fps +# 1080p60 - 1920 x 1080 @ 60 fps +# 1024x768x60 - 1024 x 768 @ 60 fps +# 1366x768x60 - 1366 x 768 @ 60 fps +# 1280x1024x60 - 1280 x 1024 @ 60 fps + +mode=720p60 + +### Mavlink port for telemetry (default: 14750) + +mavlink_port=14750 + +### Osd: none, simple or custom for use own lvgl based osd (custom osd binary need to be upload to /usr/bin) (default: simple) + +osd=simple + +### Background color components (RGB) + +bg_r=30 +bg_g=0 +bg_b=30 diff --git a/general/package/vdec-openipc/vdec-openipc.mk b/general/package/vdec-openipc/vdec-openipc.mk index 71587b0a..3f715b17 100644 --- a/general/package/vdec-openipc/vdec-openipc.mk +++ b/general/package/vdec-openipc/vdec-openipc.mk @@ -16,6 +16,9 @@ define VDEC_OPENIPC_INSTALL_TARGET_CMDS $(INSTALL) -m 755 -d $(TARGET_DIR)/etc/init.d $(INSTALL) -m 755 -t $(TARGET_DIR)/etc/init.d $(VDEC_OPENIPC_PKGDIR)/files/S98vdec + $(INSTALL) -m 755 -d $(TARGET_DIR)/etc + $(INSTALL) -m 644 -t $(TARGET_DIR)/etc $(VDEC_OPENIPC_PKGDIR)/files/vdec.conf + $(INSTALL) -m 755 -d $(TARGET_DIR)/usr/bin $(INSTALL) -m 755 -t $(TARGET_DIR)/usr/bin $(@D)/vdec/vdec endef