DJ Visualizer Pi: standalone Node+WebSocket server with mobile PWA remote
New separate project (the Electron Mac app stays untouched). Reuses the visual engine (WebGL shaders, effect catalog, Web Audio) verbatim and replaces Electron IPC with a Node HTTP+WebSocket server: - server.js: serves the kiosk output page + mobile control PWA, relays the same ctl/rpt JSON protocol over WebSocket, plus REST for media library/upload, JSON state (pads), waveform peaks and MP4 recording (ffmpeg). - public/js/net.js: window.djv shim over WebSocket+HTTP so output.js runs intact. - public/index.html + control.js: touch-first mobile remote (effects, media/queue, ticker, pads, audio/EQ, fullscreen + recording). - PWA (manifest + service worker + generated icons). - scripts/: Chromium kiosk launcher + install-pi.sh (systemd units for Pi 5). Verified: REST endpoints, WebSocket relay both directions, control PWA loads the 2958-effect catalog and renders. (Headless WebGL output not testable without GPU.) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
commit
b94c787231
81 files changed
+23994
No files matched your search
@@ -0,0 +1,59 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
id="svg26421"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
width="281.25"
|
||||
height="535.3125"
|
||||
viewBox="0 0 281.25 535.3125"
|
||||
sodipodi:docname="HandTorch.svg">
|
||||
<metadata
|
||||
id="metadata26427">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs26425" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1600"
|
||||
inkscape:window-height="837"
|
||||
id="namedview26423"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.2541496"
|
||||
inkscape:cx="141.098"
|
||||
inkscape:cy="268.19923"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg26421" />
|
||||
<path
|
||||
style="fill:#000000"
|
||||
d="m 175.00136,520.65069 c -7.13206,-7.93757 -14.30393,-15.11487 -15.9375,-15.94957 -1.63355,-0.8347 -3.30748,-2.0933 -3.71982,-2.79688 -0.41234,-0.70359 -1.76432,-1.27924 -3.0044,-1.27924 -1.87816,0 -2.35072,-0.58709 -2.82982,-3.51563 -0.31632,-1.93359 -1.17919,-6.34109 -1.91748,-9.79444 -1.95202,-9.13061 -1.75524,-13.78582 0.6929,-16.39174 1.68303,-1.79151 1.85745,-2.53202 1.00791,-4.27917 -0.56502,-1.16202 -1.22723,-4.71972 -1.47158,-7.906 -0.74278,-9.68575 -4.57809,-15.69154 -10.25301,-16.0554 -5.93294,-0.3804 -6.0312,0.0918 -3.02042,14.51527 1.3801,6.61148 2.88866,13.87433 3.35236,16.1397 0.46371,2.26537 1.22577,4.58568 1.69346,5.15625 4.02732,4.91329 1.66001,17.44366 -3.29557,17.44366 -5.01467,0 -7.1836,-3.48562 -15.75079,-25.3125 -6.31743,-16.09513 -9.12572,-22.8628 -9.92006,-23.90625 -0.39253,-0.51563 -1.38515,-3.25781 -2.20581,-6.09375 -4.98174,-17.21522 -7.31375,-19.94008 -19.707903,-23.02794 -9.592779,-2.38993 -13.129344,-5.80289 -12.51755,-12.08008 0.435757,-4.47098 0.257987,-4.95731 -3.179858,-8.69916 -3.383485,-3.68268 -3.641419,-4.36104 -3.641419,-9.57675 0,-4.80524 -0.380748,-6.05664 -2.644837,-8.69282 -5.2982,-6.16893 -5.792663,-7.39749 -5.792663,-14.3928 0,-5.49142 -0.333712,-6.97935 -1.878953,-8.37778 -5.292002,-4.78919 -3.268931,-17.93333 3.214894,-20.88756 2.411595,-1.09879 3.199262,-3.35667 1.530726,-4.38788 -2.120888,-1.31079 -2.233369,-9.00521 -0.172394,-11.79282 2.872498,-3.88527 2.96519,-3.57118 -8.374122,-28.37522 C 42.19454,261.75944 34.197555,246.65905 28.06577,238.98883 c -2.646944,-3.31104 -5.255698,-6.86383 -5.797231,-7.89508 -0.541532,-1.03125 -1.976615,-3.06753 -3.189071,-4.52506 -3.249627,-3.90647 -2.843944,-6.59144 1.526608,-10.10371 l 3.731075,-2.99838 -3.20929,-3.5523 C 16.82327,205.14964 15.781581,202.96112 10.850326,188.32186 8.52695,181.42452 5.7670476,173.36773 4.7172097,170.41788 0.70407642,159.1417 -0.46381613,104.59797 2.9700299,88.819864 3.7090824,85.424007 4.9432145,83.408848 8.1373585,80.382364 19.675234,69.450109 21.34826,67.468341 22.362585,63.532001 23.898187,57.572721 26.470089,54.136118 31.051012,51.922438 46.255228,44.575167 53.891101,41.049077 60.384256,38.376946 69.96189,34.435457 71.25,33.115532 71.25,27.242828 c 0,-4.855734 0.740594,-6.056794 3.161816,-5.127684 1.747853,0.670714 5.275684,9.676953 5.275684,13.468348 0,6.290447 2.185074,7.306253 5.646202,2.624827 1.958216,-2.648628 2.222034,-3.939724 2.04158,-9.991243 C 86.924146,13.088212 92.285281,0 98.933437,0 c 6.193893,0 7.996753,2.6181157 4.100263,5.954396 -1.34056,1.1478229 -1.79215,2.3329111 -1.41905,3.7239762 0.30098,1.1222068 0.55301,2.5677218 0.56005,3.2122528 0.007,0.644531 0.63077,1.171875 1.38607,1.171875 7.42281,0 6.98185,35.960854 -0.54762,44.660487 -3.930134,4.540908 -5.081741,8.569949 -4.177541,14.615663 0.329447,2.202805 0.84016,5.812647 1.134919,8.021871 0.443652,3.325167 0.825842,3.924756 2.219732,3.482352 9.11394,-2.892652 9.10682,24.480597 -0.009,34.688377 -0.92093,1.03125 -2.223824,4.37527 -2.895308,7.43115 -1.340466,6.10038 -5.153156,12.29299 -11.438185,18.57802 -3.247006,3.247 -4.330187,5.22695 -5.538707,10.12421 -3.027812,12.27098 -12.033283,25.27287 -17.504341,25.27287 -4.696867,0 -6.080203,2.45397 -3.388456,6.01096 1.731135,2.28759 0.918008,5.89113 -2.050561,9.08748 l -2.268151,2.44219 4.910442,0.58157 c 7.149608,0.84676 7.685594,1.73409 8.456583,13.9998 1.652935,26.29665 3.850024,35.862 20.184907,87.878 1.862134,5.92969 3.688513,11.20312 4.058619,11.71875 0.370106,0.51562 1.159791,2.45075 1.754859,4.30027 l 1.081932,3.36276 9.587117,1.64451 c 22.85268,3.91998 30.88158,8.72574 47.88376,28.66121 4.45664,5.22551 10.26523,17.57684 16.5333,35.15625 5.04654,14.15351 5.64146,15.49182 9.06694,20.39661 7.68665,11.00616 10.83698,12.74555 12.74067,7.03449 2.07727,-6.23182 12.99119,-0.10761 18.04856,10.12771 3.95233,7.99891 12.10002,17.94124 16.10572,19.65321 1.45512,0.62191 4.54411,3.03997 6.86442,5.37349 3.46531,3.48505 5.6001,4.67099 11.9534,6.6405 7.63348,2.36637 13.12402,5.6222 16.48956,9.77813 1.50737,1.86136 12.13885,7.57253 16.79141,9.02026 1.15641,0.35983 1.64063,1.48763 1.64063,3.82118 0,3.77283 -3.70585,4.60928 -8.4375,1.90442 -1.28906,-0.73689 -3.48747,-1.35476 -4.88535,-1.37302 -1.39789,-0.0183 -3.39734,-0.95175 -4.44323,-2.07438 -1.04589,-1.12263 -2.13036,-1.81241 -2.40994,-1.53283 -0.99326,0.99327 -8.85395,-1.07457 -12.1141,-3.18673 -4.53432,-2.93766 -4.18508,-3.84077 0.64841,-1.67674 4.87278,2.1816 7.167,0.92015 3.51671,-1.93362 -9.86392,-7.71152 -13.61509,-9.39049 -14.53125,-6.50393 -1.17814,3.71198 -4.21875,1.62964 -4.21875,-2.88918 0,-1.2932 -0.65831,-1.79832 -2.34375,-1.79832 -1.82065,0 -2.34375,-0.48125 -2.34375,-2.15625 0,-4.61952 -4.19825,-5.95552 -5.14658,-1.63778 -0.73274,3.33611 -4.03976,7.77128 -5.24099,7.02888 -1.28789,-0.79595 -1.04113,-5.82728 0.30944,-6.30963 0.68163,-0.24344 0.82404,-0.76636 0.34041,-1.25 -0.48364,-0.48363 -1.00656,-0.34122 -1.25,0.3404 -1.18612,3.32113 -3.07478,0.95968 -3.07478,-3.84448 0,-7.80442 -2.19265,-13.3349 -4.87826,-12.3Line truncated
|
||||
id="path26437"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cssssssssssssssssssssssssssssssscsssssssssssssssscsssssssscssscssssscssssssssssssscsssssssssssscsssscssssssssssssssssssssssssscscssccsscssssssscsssssssssssssssssssssscssssssssssscssssssssssssssssssssssssssccscsssssssscsscsssscssssssssssssssscsscccsssssscscssssssssscsssssscccsssccssssssssssscsssssssscsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssscscsssssscscssssssssssssscssscsssssssssssssccssssssscsssssssssssssssssssssscssscssssssssssssssssssssssssscssssssssscssssssssssssssssssssssssssssssssssssssssscsssssssssssssccssssssssssssssssssssssssscsssscsssssssssssssssssssssssssssssssssssssssssssssssssss" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 31 KiB |
Reference in new issue
Block a user