@camera.ui/server 0.0.13 → 0.0.14-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interface/@tanstack.Bg7V9Ueh.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{@vee-validate.CMWfUAIL.0.0.13.js → @vee-validate.O1z48GCG.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/@vueform.CYGN2w2O.0.0.14-alpha.0.js +1 -0
- package/dist/interface/@vueuse.B4DPFK5R.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Account.Bi6LjnZQ.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Adminpanel.CwrvFV7_.0.0.14-alpha.0.js +2 -0
- package/dist/interface/Appearance.CLnKafNI.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Backup.DN7C3wLt.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Camera.DecaqIKn.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Cameras.CgsN9iQS.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Camview.rmFoLioe.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Config.CKdcFXVp.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Console.Ug2VRfrB.0.0.14-alpha.0.js +4 -0
- package/dist/interface/FirstSteps.BPMYdNNi.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{NewCamera.D3fS-Ayi.0.0.13.js → NewCamera.D8ZRT068.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/Plugin.BUr1JsZx.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Plugins.T0gOGGTA.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Recordings.D-8l4wT0.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Recordings.GBJZK78_.0.0.14-alpha.0.js +1 -0
- package/dist/interface/Settings.D5AZooIJ.0.0.14-alpha.0.js +1 -0
- package/dist/interface/System.o0UHQ_nJ.0.0.14-alpha.0.js +4 -0
- package/dist/interface/User.Ba8eEPMI.0.0.14-alpha.0.js +1 -0
- package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.CcHeTCv1.0.0.14-alpha.0.js +2 -0
- package/dist/interface/VConsole.fWERDAX7.0.0.14-alpha.0.js +1 -0
- package/dist/interface/VPlayer.yFMPlYwP.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{VPluginCard.rN1DHn_c.0.0.13.js → VPluginCard.DkmwhDlC.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/{ace-builds.DW_mO3FQ.0.0.13.js → ace-builds.Bw4aEC1l.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/dnd-core.DXWYMBq_.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{draggabilly.9bsDBvd2.0.0.13.js → draggabilly.CuBxPquf.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/engine.io-client.BKWHIsv0.0.0.14-alpha.0.js +1 -0
- package/dist/interface/ev-emitter.Bxc0PZ7a.0.0.14-alpha.0.js +1 -0
- package/dist/interface/fast-deep-equal.DCYmWVJH.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{highlight.js.DhQG6_ss.0.0.13.js → highlight.js.DcTAsvG9.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/index.html +33 -33
- package/dist/interface/linkify-it.CDr-VnGD.0.0.14-alpha.0.js +1 -0
- package/dist/interface/main.0OAUVwby.0.0.14-alpha.0.js +9 -0
- package/dist/interface/{markdown-it.CYBQYH34.0.0.13.js → markdown-it.Byo8AqRb.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/{nprogress.BFdCzr-7.0.0.13.js → nprogress.DCNHuz_8.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/{pinia.Bga1JTi8.0.0.13.js → pinia.CD1qWkhY.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/plugins.TOSDTC9P.0.0.14-alpha.0.js +1 -0
- package/dist/interface/pwa/pwa-120x120.png +0 -0
- package/dist/interface/pwa/pwa-144x144.png +0 -0
- package/dist/interface/pwa/pwa-152x152.png +0 -0
- package/dist/interface/pwa/pwa-167x167.png +0 -0
- package/dist/interface/pwa/pwa-192x192.png +0 -0
- package/dist/interface/pwa/pwa-24x24.png +0 -0
- package/dist/interface/pwa/pwa-36x36.png +0 -0
- package/dist/interface/pwa/pwa-48x48.png +0 -0
- package/dist/interface/pwa/pwa-50x50.png +0 -0
- package/dist/interface/pwa/pwa-64x64.png +0 -0
- package/dist/interface/pwa/pwa-72x72.png +0 -0
- package/dist/interface/pwa/pwa-88x88.png +0 -0
- package/dist/interface/pwa/pwa-96x96.png +0 -0
- package/dist/interface/{qrcode.BcRvH17-.0.0.13.js → qrcode.CLpIqVUc.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/react-dnd-touch-backend.EtdwZ3Jc.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{rxjs.CmasQk-X.0.0.13.js → rxjs.Dg5Y9OHz.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/socket.io-client.BdwjwB2E.0.0.14-alpha.0.js +1 -0
- package/dist/interface/socket.io-parser.BI2UU9la.0.0.14-alpha.0.js +1 -0
- package/dist/interface/sw.js +1 -1
- package/dist/interface/system.DrON0Fys.0.0.14-alpha.0.js +1 -0
- package/dist/interface/ui.DW844Nw8.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{unidragger.DdVxANhH.0.0.13.js → unidragger.oH1IlhPP.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/v-calendar.w8TD0lm-.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{vee-validate.D2wCUJfh.0.0.13.js → vee-validate.D18szerY.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/{vue-i18n.DryJT-yG.0.0.13.js → vue-i18n.Dp4sqTxy.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/vue-inline-svg.DYHwaGKL.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{vue-router.DqihDWFz.0.0.13.js → vue-router.B9o2De_x.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/{vue3-apexcharts.BHMHoOx8.0.0.13.js → vue3-apexcharts.CW4XSzag.0.0.14-alpha.0.js} +1 -1
- package/dist/interface/vue3-dnd.B9c6Zx0c.0.0.14-alpha.0.js +1 -0
- package/dist/interface/vue3-toastify.BkUxK5j6.0.0.14-alpha.0.js +1 -0
- package/dist/interface/{vuetify.BenoxTsr.0.0.13.js → vuetify.CQ44CcyG.0.0.14-alpha.0.js} +1 -1
- package/dist/server/bin/installer/linux.js +1 -1
- package/dist/server/bin/installer/linux.js.map +1 -1
- package/dist/server/package.json +5 -4
- package/dist/server/src/api/controllers/system.controller.d.ts +4 -1
- package/dist/server/src/api/controllers/system.controller.js +33 -0
- package/dist/server/src/api/controllers/system.controller.js.map +1 -1
- package/dist/server/src/api/database/index.d.ts +3 -1
- package/dist/server/src/api/database/index.js +12 -0
- package/dist/server/src/api/database/index.js.map +1 -1
- package/dist/server/src/api/database/types.d.ts +7 -0
- package/dist/server/src/api/index.js +1 -1
- package/dist/server/src/api/index.js.map +1 -1
- package/dist/server/src/api/routes/system.routes.js +16 -0
- package/dist/server/src/api/routes/system.routes.js.map +1 -1
- package/dist/server/src/api/schemas/system.schema.d.ts +9 -0
- package/dist/server/src/api/schemas/system.schema.js +8 -0
- package/dist/server/src/api/schemas/system.schema.js.map +1 -0
- package/dist/server/src/api/schemas/users.schema.d.ts +34 -34
- package/dist/server/src/api/services/system.service.d.ts +7 -0
- package/dist/server/src/api/services/system.service.js +22 -0
- package/dist/server/src/api/services/system.service.js.map +1 -0
- package/dist/server/src/api/types/index.d.ts +4 -0
- package/dist/server/src/api/types/index.js.map +1 -1
- package/dist/server/src/go2rtc/index.js +1 -0
- package/dist/server/src/go2rtc/index.js.map +1 -1
- package/dist/server/src/utils/network.d.ts +12 -0
- package/dist/server/src/utils/network.js +92 -0
- package/dist/server/src/utils/network.js.map +1 -0
- package/dist/server/src/utils/npm.js +7 -2
- package/dist/server/src/utils/npm.js.map +1 -1
- package/install/lmdb.js +81 -0
- package/package.json +5 -4
- package/dist/interface/@tanstack.rNNqDXib.0.0.13.js +0 -1
- package/dist/interface/@vueform.CaTOdvWk.0.0.13.js +0 -1
- package/dist/interface/@vueuse.RXnPbHnz.0.0.13.js +0 -1
- package/dist/interface/Account.BqE7RvC3.0.0.13.js +0 -1
- package/dist/interface/Adminpanel.hllL_vUx.0.0.13.js +0 -2
- package/dist/interface/Appearance.BvWFogEk.0.0.13.js +0 -1
- package/dist/interface/Backup.DS1_0koP.0.0.13.js +0 -1
- package/dist/interface/Camera.CDpzE3tI.0.0.13.js +0 -1
- package/dist/interface/Cameras.ImtUGnay.0.0.13.js +0 -1
- package/dist/interface/Camview.CIDDigUd.0.0.13.js +0 -1
- package/dist/interface/Config.Dx7qqjix.0.0.13.js +0 -1
- package/dist/interface/Console.IkajRlkS.0.0.13.js +0 -4
- package/dist/interface/FirstSteps.gB36CAPV.0.0.13.js +0 -1
- package/dist/interface/Plugin.Dmdq7eg2.0.0.13.js +0 -1
- package/dist/interface/Plugins.BlsT_Ctm.0.0.13.js +0 -1
- package/dist/interface/Recordings.NJkfLyST.0.0.13.js +0 -1
- package/dist/interface/Recordings.d-XiMIJY.0.0.13.js +0 -1
- package/dist/interface/Settings.CtjsmS-K.0.0.13.js +0 -1
- package/dist/interface/System.CKjKL2-m.0.0.13.js +0 -4
- package/dist/interface/User.B7z96rxB.0.0.13.js +0 -1
- package/dist/interface/VConfigEditor.vue_vue_type_script_setup_true_lang.KV9Arktd.0.0.13.js +0 -2
- package/dist/interface/VConsole.B_ucNfW8.0.0.13.js +0 -1
- package/dist/interface/VPlayer.DLxaA6uJ.0.0.13.js +0 -1
- package/dist/interface/dnd-core.gediqdsP.0.0.13.js +0 -1
- package/dist/interface/engine.io-client.jWnV_OQN.0.0.13.js +0 -1
- package/dist/interface/ev-emitter.BnUBws8R.0.0.13.js +0 -1
- package/dist/interface/fast-deep-equal.ChQuHYG8.0.0.13.js +0 -1
- package/dist/interface/linkify-it.CGqg1utY.0.0.13.js +0 -1
- package/dist/interface/main.D-udRFe6.0.0.13.js +0 -9
- package/dist/interface/plugins.GodGbcuD.0.0.13.js +0 -1
- package/dist/interface/react-dnd-touch-backend.Ch5f5vRm.0.0.13.js +0 -1
- package/dist/interface/socket.io-client.C_MSFRzn.0.0.13.js +0 -1
- package/dist/interface/socket.io-parser.DoUhVOYo.0.0.13.js +0 -1
- package/dist/interface/system.CJsZbAvb.0.0.13.js +0 -1
- package/dist/interface/ui.Bnc_R-SN.0.0.13.js +0 -1
- package/dist/interface/v-calendar.CxnDxlOi.0.0.13.js +0 -1
- package/dist/interface/vue-inline-svg.va799EvK.0.0.13.js +0 -1
- package/dist/interface/vue3-dnd.ZjtawZir.0.0.13.js +0 -1
- package/dist/interface/vue3-toastify.CudLrsQ6.0.0.13.js +0 -1
- package/dist/server/src/polyglot/node/decoder/wasm/test/imageUtils.py +0 -106
- /package/dist/interface/{@babel.l0sNRNKZ.0.0.13.js → @babel.l0sNRNKZ.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@intlify.YW_pt133.0.0.13.js → @intlify.YW_pt133.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@mdi.jq8isxax.0.0.13.js → @mdi.jq8isxax.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@popperjs.BQBsAJpH.0.0.13.js → @popperjs.BQBsAJpH.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.13.js → @react-dnd.CcwRs9xb.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@socket.io.Dkula2eQ.0.0.13.js → @socket.io.Dkula2eQ.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@vue.CIFymae3.0.0.13.js → @vue.CIFymae3.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{@xterm.hsdrI-pt.0.0.13.js → @xterm.CwunTQvf.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/assets/{@vueform.0.0.13.h7tNX9p6.css → @vueform.0.0.14-alpha.0.h7tNX9p6.css} +0 -0
- /package/dist/interface/assets/{@xterm.0.0.13.CGrrDQr5.css → @xterm.0.0.14-alpha.0.CGrrDQr5.css} +0 -0
- /package/dist/interface/assets/{Account.0.0.13.DlOUWknb.css → Account.0.0.14-alpha.0.DlOUWknb.css} +0 -0
- /package/dist/interface/assets/{Adminpanel.0.0.13.BHh3IMeu.css → Adminpanel.0.0.14-alpha.0.BHh3IMeu.css} +0 -0
- /package/dist/interface/assets/{Backup.0.0.13.BIwaSlv3.css → Backup.0.0.14-alpha.0.BIwaSlv3.css} +0 -0
- /package/dist/interface/assets/{Camera.0.0.13.B5hAZmeQ.css → Camera.0.0.14-alpha.0.B5hAZmeQ.css} +0 -0
- /package/dist/interface/assets/{Cameras.0.0.13.D7bnvH42.css → Cameras.0.0.14-alpha.0.D7bnvH42.css} +0 -0
- /package/dist/interface/assets/{Camview.0.0.13.cgjDTjXy.css → Camview.0.0.14-alpha.0.cgjDTjXy.css} +0 -0
- /package/dist/interface/assets/{Config.0.0.13.CncRTcjC.css → Config.0.0.14-alpha.0.CncRTcjC.css} +0 -0
- /package/dist/interface/assets/{Console.0.0.13.DWrfRWs9.css → Console.0.0.14-alpha.0.DWrfRWs9.css} +0 -0
- /package/dist/interface/assets/{FirstSteps.0.0.13.LZWhAsRR.css → FirstSteps.0.0.14-alpha.0.LZWhAsRR.css} +0 -0
- /package/dist/interface/assets/{NewCamera.0.0.13.DJ3tUBT_.css → NewCamera.0.0.14-alpha.0.DJ3tUBT_.css} +0 -0
- /package/dist/interface/assets/{Plugin.0.0.13.BGZE7hpr.css → Plugin.0.0.14-alpha.0.BGZE7hpr.css} +0 -0
- /package/dist/interface/assets/{Plugins.0.0.13.Cwu0aGUO.css → Plugins.0.0.14-alpha.0.Cwu0aGUO.css} +0 -0
- /package/dist/interface/assets/{Settings.0.0.13.BfSP_zcY.css → Settings.0.0.14-alpha.0.BfSP_zcY.css} +0 -0
- /package/dist/interface/assets/{User.0.0.13.BHWFyck9.css → User.0.0.14-alpha.0.BHWFyck9.css} +0 -0
- /package/dist/interface/assets/{VConsole.0.0.13.BZT1WyS-.css → VConsole.0.0.14-alpha.0.BZT1WyS-.css} +0 -0
- /package/dist/interface/assets/{VPlayer.0.0.13.H4sGdlHU.css → VPlayer.0.0.14-alpha.0.H4sGdlHU.css} +0 -0
- /package/dist/interface/assets/{VPluginCard.0.0.13.B4G51MYn.css → VPluginCard.0.0.14-alpha.0.B4G51MYn.css} +0 -0
- /package/dist/interface/assets/{highlight.0.0.13.DgoK_Xib.css → highlight.0.0.14-alpha.0.DgoK_Xib.css} +0 -0
- /package/dist/interface/assets/{logo-256.0.0.13.BCQk9H1-.png → logo-256.0.0.14-alpha.0.BCQk9H1-.png} +0 -0
- /package/dist/interface/assets/{logo-512.0.0.13.DLKVOU2S.png → logo-512.0.0.14-alpha.0.DLKVOU2S.png} +0 -0
- /package/dist/interface/assets/{logo.0.0.13.DmEiRk0z.png → logo.0.0.14-alpha.0.DmEiRk0z.png} +0 -0
- /package/dist/interface/assets/{main.0.0.13.BPl82sqN.css → main.0.0.14-alpha.0.BPl82sqN.css} +0 -0
- /package/dist/interface/assets/{mode-json.0.0.13.Br7xisR1.js → mode-json.0.0.14-alpha.0.Br7xisR1.js} +0 -0
- /package/dist/interface/assets/{mode-yaml.0.0.13.CIYL8U3d.js → mode-yaml.0.0.14-alpha.0.CIYL8U3d.js} +0 -0
- /package/dist/interface/assets/{v-calendar.0.0.13.CtSuDYZU.css → v-calendar.0.0.14-alpha.0.CtSuDYZU.css} +0 -0
- /package/dist/interface/assets/{vue3-toastify.0.0.13.DTY1DMRs.css → vue3-toastify.0.0.14-alpha.0.DTY1DMRs.css} +0 -0
- /package/dist/interface/assets/{vuetify.0.0.13.DPyVfAPv.css → vuetify.0.0.14-alpha.0.DPyVfAPv.css} +0 -0
- /package/dist/interface/{axios.BI2i94Vb.0.0.13.js → axios.BI2i94Vb.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{compare-versions.DqEOhma6.0.0.13.js → compare-versions.DqEOhma6.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.13.js → dijkstrajs.D_NXgYpA.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.13.js → engine.io-parser.BiEtp6m2.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{entities.C20TfXL6.0.0.13.js → entities.C20TfXL6.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{get-size.D1dS-IaP.0.0.13.js → get-size.D1dS-IaP.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{mdurl.k9Sl0PQj.0.0.13.js → mdurl.k9Sl0PQj.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{punycode.js.Dj65hjkv.0.0.13.js → punycode.js.Dj65hjkv.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{react-dnd-html5-backend.1HQjlkwI.0.0.13.js → react-dnd-html5-backend.1HQjlkwI.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{redux.CuxFRhX_.0.0.13.js → redux.CuxFRhX_.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{tslib.9k7AwCpt.0.0.13.js → tslib.9k7AwCpt.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{uc.micro.kMc2yuuw.0.0.13.js → uc.micro.kMc2yuuw.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{utils.BvINh1mj.0.0.13.js → utils.BvINh1mj.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{uuid.DvF23Exx.0.0.13.js → uuid.DvF23Exx.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{vue.l0sNRNKZ.0.0.13.js → vue.l0sNRNKZ.0.0.14-alpha.0.js} +0 -0
- /package/dist/interface/{zod.BaF2dDCd.0.0.13.js → zod.BaF2dDCd.0.0.14-alpha.0.js} +0 -0
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import asyncio
|
|
2
|
-
import time
|
|
3
|
-
from typing import Any, Literal
|
|
4
|
-
|
|
5
|
-
import numpy as np
|
|
6
|
-
from PIL import Image
|
|
7
|
-
|
|
8
|
-
width = 640
|
|
9
|
-
height = 360
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def yuv420_to_rgb(yuv_bytes: bytes, width: int, height: int) -> np.ndarray[Any, Any]:
|
|
13
|
-
frame_size = width * height
|
|
14
|
-
uv_size = frame_size // 4
|
|
15
|
-
|
|
16
|
-
raw_data = np.frombuffer(yuv_bytes, dtype=np.uint8)
|
|
17
|
-
|
|
18
|
-
y = raw_data[:frame_size].reshape((height, width)).astype(np.float32) - 16.0
|
|
19
|
-
u = (
|
|
20
|
-
raw_data[frame_size : frame_size + uv_size].reshape((height // 2, width // 2)).astype(np.float32)
|
|
21
|
-
- 128.0
|
|
22
|
-
)
|
|
23
|
-
v = raw_data[frame_size + uv_size :].reshape((height // 2, width // 2)).astype(np.float32) - 128.0
|
|
24
|
-
|
|
25
|
-
# Upsample U and V to match Y dimensions in one step
|
|
26
|
-
u = u.repeat(2, axis=0).repeat(2, axis=1)
|
|
27
|
-
v = v.repeat(2, axis=0).repeat(2, axis=1)
|
|
28
|
-
|
|
29
|
-
# Perform YUV to RGB conversion
|
|
30
|
-
r = y + 1.402 * v
|
|
31
|
-
g = y - 0.344136 * u - 0.714136 * v
|
|
32
|
-
b = y + 1.772 * u
|
|
33
|
-
|
|
34
|
-
# return np.clip(np.stack((r, g, b), axis=-1), 0, 255).astype(np.uint8)
|
|
35
|
-
rgb = np.stack((r, g, b), axis=-1)
|
|
36
|
-
return np.clip(rgb, 0, 255).astype(np.uint8)
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
def yuv420_to_rgba(yuv_bytes: bytes, width: int, height: int) -> np.ndarray[Any, Any]:
|
|
40
|
-
rgb = yuv420_to_rgb(yuv_bytes, width, height)
|
|
41
|
-
alpha = np.full((height, width, 1), 255, dtype=np.uint8) # Alpha direkt als uint8
|
|
42
|
-
rgba = np.concatenate((rgb, alpha), axis=-1)
|
|
43
|
-
return rgba
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
def yuv420_to_gray(yuv_bytes: bytes, width: int, height: int) -> np.ndarray[Any, Any]:
|
|
47
|
-
frame_size = width * height
|
|
48
|
-
raw_data = np.frombuffer(yuv_bytes, dtype=np.uint8)
|
|
49
|
-
return raw_data[:frame_size].reshape((height, width)).astype(np.uint8)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
def read_yuv_file():
|
|
53
|
-
with open("frame.yuv", "rb") as f:
|
|
54
|
-
return f.read()
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
def main(format: Literal["rgb", "rgba", "gray"]):
|
|
58
|
-
yuv_bytes = read_yuv_file()
|
|
59
|
-
|
|
60
|
-
if format == "rgb":
|
|
61
|
-
rgb = yuv420_to_rgb(yuv_bytes, width, height)
|
|
62
|
-
rgb_image = Image.fromarray(rgb)
|
|
63
|
-
rgb_image.save("frame_rgb.jpg")
|
|
64
|
-
elif format == "rgba":
|
|
65
|
-
rgba = yuv420_to_rgba(yuv_bytes, width, height)
|
|
66
|
-
rgba_image = Image.fromarray(rgba)
|
|
67
|
-
rgba_image.save("frame_rgba.png")
|
|
68
|
-
elif format == "gray":
|
|
69
|
-
gray = yuv420_to_gray(yuv_bytes, width, height)
|
|
70
|
-
gray_image = Image.fromarray(gray)
|
|
71
|
-
gray_image.save("frame_gray.jpg")
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
async def benchmark(format: Literal["rgb", "rgba", "gray"]):
|
|
75
|
-
yuv_bytes = read_yuv_file()
|
|
76
|
-
|
|
77
|
-
fps = 10
|
|
78
|
-
total_frames = 3000
|
|
79
|
-
average_latency_in_ms = 6
|
|
80
|
-
frame_duration = 1.0 / fps
|
|
81
|
-
current_frame = 0
|
|
82
|
-
|
|
83
|
-
start = time.time()
|
|
84
|
-
|
|
85
|
-
while current_frame < total_frames:
|
|
86
|
-
if format == "rgb":
|
|
87
|
-
rgb = yuv420_to_rgb(yuv_bytes, width, height)
|
|
88
|
-
Image.fromarray(rgb)
|
|
89
|
-
elif format == "rgba":
|
|
90
|
-
rgba = yuv420_to_rgba(yuv_bytes, width, height)
|
|
91
|
-
Image.fromarray(rgba)
|
|
92
|
-
elif format == "gray":
|
|
93
|
-
gray = yuv420_to_gray(yuv_bytes, width, height)
|
|
94
|
-
Image.fromarray(gray)
|
|
95
|
-
|
|
96
|
-
current_frame += 1
|
|
97
|
-
await asyncio.sleep(frame_duration + average_latency_in_ms / 1000.0)
|
|
98
|
-
|
|
99
|
-
end = time.time()
|
|
100
|
-
print("Simulation completed! Total duration:", (end - start) * 1000, "ms")
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
format: Literal["rgb", "rgba", "gray"] = "gray"
|
|
104
|
-
|
|
105
|
-
main(format)
|
|
106
|
-
asyncio.run(benchmark(format))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/{@popperjs.BQBsAJpH.0.0.13.js → @popperjs.BQBsAJpH.0.0.14-alpha.0.js}
RENAMED
|
File without changes
|
/package/dist/interface/{@react-dnd.CcwRs9xb.0.0.13.js → @react-dnd.CcwRs9xb.0.0.14-alpha.0.js}
RENAMED
|
File without changes
|
/package/dist/interface/{@socket.io.Dkula2eQ.0.0.13.js → @socket.io.Dkula2eQ.0.0.14-alpha.0.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/assets/{@vueform.0.0.13.h7tNX9p6.css → @vueform.0.0.14-alpha.0.h7tNX9p6.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{@xterm.0.0.13.CGrrDQr5.css → @xterm.0.0.14-alpha.0.CGrrDQr5.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Account.0.0.13.DlOUWknb.css → Account.0.0.14-alpha.0.DlOUWknb.css}
RENAMED
|
File without changes
|
|
File without changes
|
/package/dist/interface/assets/{Backup.0.0.13.BIwaSlv3.css → Backup.0.0.14-alpha.0.BIwaSlv3.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Camera.0.0.13.B5hAZmeQ.css → Camera.0.0.14-alpha.0.B5hAZmeQ.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Cameras.0.0.13.D7bnvH42.css → Cameras.0.0.14-alpha.0.D7bnvH42.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Camview.0.0.13.cgjDTjXy.css → Camview.0.0.14-alpha.0.cgjDTjXy.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Config.0.0.13.CncRTcjC.css → Config.0.0.14-alpha.0.CncRTcjC.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Console.0.0.13.DWrfRWs9.css → Console.0.0.14-alpha.0.DWrfRWs9.css}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/assets/{Plugin.0.0.13.BGZE7hpr.css → Plugin.0.0.14-alpha.0.BGZE7hpr.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Plugins.0.0.13.Cwu0aGUO.css → Plugins.0.0.14-alpha.0.Cwu0aGUO.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{Settings.0.0.13.BfSP_zcY.css → Settings.0.0.14-alpha.0.BfSP_zcY.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{User.0.0.13.BHWFyck9.css → User.0.0.14-alpha.0.BHWFyck9.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{VConsole.0.0.13.BZT1WyS-.css → VConsole.0.0.14-alpha.0.BZT1WyS-.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{VPlayer.0.0.13.H4sGdlHU.css → VPlayer.0.0.14-alpha.0.H4sGdlHU.css}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/assets/{logo-256.0.0.13.BCQk9H1-.png → logo-256.0.0.14-alpha.0.BCQk9H1-.png}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{logo-512.0.0.13.DLKVOU2S.png → logo-512.0.0.14-alpha.0.DLKVOU2S.png}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{logo.0.0.13.DmEiRk0z.png → logo.0.0.14-alpha.0.DmEiRk0z.png}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{main.0.0.13.BPl82sqN.css → main.0.0.14-alpha.0.BPl82sqN.css}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{mode-json.0.0.13.Br7xisR1.js → mode-json.0.0.14-alpha.0.Br7xisR1.js}
RENAMED
|
File without changes
|
/package/dist/interface/assets/{mode-yaml.0.0.13.CIYL8U3d.js → mode-yaml.0.0.14-alpha.0.CIYL8U3d.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/assets/{vuetify.0.0.13.DPyVfAPv.css → vuetify.0.0.14-alpha.0.DPyVfAPv.css}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/{dijkstrajs.D_NXgYpA.0.0.13.js → dijkstrajs.D_NXgYpA.0.0.14-alpha.0.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/interface/{punycode.js.Dj65hjkv.0.0.13.js → punycode.js.Dj65hjkv.0.0.14-alpha.0.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|