Files
djAudiovisualizaerPi/svg/freesvg-headphones-silhouette.svg
T
lucianoandClaude Opus 4.8 b94c787231 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>
2026-06-29 13:06:15 +02:00

53 lines
5.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 1773.873 1682.538" enable-background="new 0 0 1773.873 1682.538" xml:space="preserve">
<g>
<path d="M1511.284,481.601c-5.319,3.012-92.599,70.779-117.582,37.031c-14.216-19.205-23.318-42.662-35.789-63.173
c-18.561-30.529-41.033-56.106-62.736-84.011c-185.859-239.422-697.622-269.398-883.528,84.529
c-15.828,30.132-22.664,65.945-48.087,67.307c-23.408,1.253-56.115,2.092-77.924-11.111
c-22.713-13.748-61.064-31.668-57.188-64.052c1.68-14.035,30.351-78.844,51.429-106.501c9.579-12.569,16.963-27.008,27.589-38.524
c4.006-4.342,39.479-49.853,54.987-62.048c1-0.786,75.791-63.288,117.737-87.892c330.019-193.572,729.098-120.022,932.156,91.062
C1460.146,293.908,1571.324,447.598,1511.284,481.601z"/>
<path d="M377.975,1072.968c-0.115,3.481,0.041,421.17,0.009,422.191c-2.441,78.889-100.189,80.185-115.112,16.767
c-0.527-2.238-0.735-2.784-3.41-3.378c-71.306-15.832-165.176-256.444-46.899-426.293c13.563-19.476,30.812-43.493,49.603-58.151
c4.317-3.367,5.022-9.454,7.563-14.183c24.739-46.058,96.046-30.442,106.394,1.111
C382.027,1029.023,378.598,1054.167,377.975,1072.968z"/>
<path d="M1390.793,1272.501c0-77.426-0.07-154.852,0.042-232.277c0.034-23.677,19.525-47.83,41.996-53.362
c45.037-11.088,69.528,26.471,71.086,40.363c0.197,1.752,1.247,3.885,3.421,4.718c13.935,5.34,20.186,18.294,28.212,29.235
c41.716,56.874,50.058,78.546,67.492,141.792c27.219,98.756-12.064,265.246-101.591,328.787
c-6.563,4.658-11.337,11.771-17.679,16.82c-17.953,14.292-42.06,16.73-62.222,5.291c-39.458-22.388-30.849-45.939-30.849-281.367
C1390.73,1272.501,1390.761,1272.501,1390.793,1272.501z"/>
<path d="M382.852,1304.602c0-339.993-0.067-319.286,0.121-341.593c0.431-51.457,48.351-69.666,71.183-61.176
c6.404,2.382,13.672,3.648,18.957,7.567c27.37,20.29,26.134,47.084,26.291,63.265c1.594,164.264,0.743,580.36-0.114,611.646
c-0.203,7.404-4.119,13.77-6.982,20.545c-22.411,53.035-109.342,37.829-109.37-28.798c-0.037-90.485-0.017-180.97-0.017-271.456
C382.899,1304.602,382.876,1304.602,382.852,1304.602z"/>
<path d="M1384.696,1581.014c0.466,42.47-43.075,74.12-83.267,53.701c-46.681-23.721-33.008-87.544-33.012-129.51
c-0.007-67.666-1.675-135.32-1.741-202.986c-0.001-1.003,3.362-297.69,1.554-327.36c-5.138-84.456,104.42-92.755,114.682-23.249
C1386.643,976.87,1383.962,1514.294,1384.696,1581.014z"/>
<path d="M1635.523,1236.671c13.924-54.79,23.996-75.645,36.005-138.601c17.795-93.281,13.156-92.021-22.541-131.468
c-12.984-14.347-22.495-35.52-39.014-45.832c-4.093-2.555-8.645-4.637-11.739-8.339c-12.65-15.132,19.237-32.256,19.406-56.164
c0.061-8.818-16.11-11.281-6.738-30.309c3.743-7.6,4.352-15.703,3.083-23.726c-0.755-4.768-5.399-8.169-6.405-13.355
c-3.227-16.643-55.802-107.95-52.482-127.79c0.682-4.076-1.629-6.985-5.074-6.758c-11.887,0.781-18.107-8.109-25.438-14.582
c-4.075-3.598-10.238-5.65-11.516-12.046c-17.132-6.706-27.088-21.921-39.454-34.08c-7.98-7.847-13.712-17.834-13.013-30.162
c1.303-23.013,45.629-61.18,71.566-33.493c17.251,18.418,33.102,37.918,45.649,59.943c9.341,16.396,15.256,15.43,10.131,34.197
c-1.417,5.19,0.639,7.6,5.093,7.789c21.505,0.912,22.879,33.389,59.587,93.723c2.93,4.816,10.213,1.819,15.544,1.338
c12.469-1.126,19.973-15.671,51.338,5.381c29.713,19.943-12.794,158.042-22.824,192.653c-0.859,2.966-0.677,5.636,1.336,7.252
c35.114,28.179,30.62,1.324,30.756,80.489c0.028,16.286-6.098,80.596-12.123,112.319
c-24.346,128.133-31.467,177.518-64.015,177.684c-9.617,0.049-19.177-8.93-22.225-16.866
C1622.899,1266.299,1631.128,1253.971,1635.523,1236.671z"/>
<path d="M269.804,519.577c28.071,1.497,44.661,20.728,51.615,42.525c5.281,16.555-23.58,42.466-37.524,53.1
c-13.692,10.443-37.941,36.567-54.816,37.88c-3.807,0.296-4.641,5.794-3.827,7.676c5.866,13.585-12.457,33.265-18.328,44.303
c-12.57,23.634-22.426,48.858-34.804,72.669c-6.626,18.886-12.347,25.358-7.292,40.902c11.242,34.587-15.344,24.544-3.167,47.947
c5.52,10.608,25.396,33.336,14.222,45.346c-3.051,3.279-7.219,3.849-10.55,6.422c-1.001,0.774-44.237,47.01-69.187,78.648
c-8.219,10.426-5.8,28.032-4.529,40.187c5.854,55.976,37.459,182.332,37.743,183.368c3.059,11.152,22.357,50.251,2.225,70.522
c-46.695,47.009-69.981-109.07-78.341-174.954c-3.129-24.651-9.158-109.976-9.255-111.068c-1.444-16.293,0.654-32.043,2.277-47.834
c1.252-12.189,10.012-20.101,21.726-25.028c20.598-8.662,7.259-5.235-2.993-65.244c-2.02-11.824-6.808-23.154-9.195-34.941
c-2.791-13.782-4.036-27.87-6.475-41.733c-1.857-10.553-2.2-21.351-0.542-31.56c0.895-5.513-0.485-11.19,2.028-16.776
c12.889-28.653,48.279-28.556,58.346-14.472c-1.062-1.485,16.083-5.541,17.947-8.354c36.7-55.387,25.299-47.212,39.961-71.389
c2.225-3.668,2.983-8.447,5.682-11.803c5.492-6.831,17.923-14.633,17.69-24.916c-0.265-11.728,6.805-22.068,14.314-30.43
c21.944-24.44,34.724-49.242,59.273-60.174C265.941,519.545,267.716,518.725,269.804,519.577z"/>
</g>
</svg>