P1-R3: Initial project infrastructure
- Project directory structure: docs/, src/, build/, recipes/, scripts/, wiki/ - README.md with project overview and status - .editorconfig for consistent code style - .gitignore for Python, C/C++, kernel, and build artifacts - docs/research/: system research report + base OS decision - docs/audio-stack-config.md: audio stack configuration notes - config/: JACK, ALSA, CPU performance configs - Preserved research from P1-R1 and P1-R2 tasks
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
[Unit]
|
||||
Description=JACK2 Audio Server
|
||||
After=sound.target network.target
|
||||
Wants=sound.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=pi
|
||||
Group=audio
|
||||
Environment=JACK_NO_AUDIO_RESERVATION=1
|
||||
Environment=JACK_PROMISCUOUS_SERVER=1
|
||||
|
||||
# Real-time scheduling
|
||||
LimitRTPRIO=99
|
||||
LimitMEMLOCK=infinity
|
||||
LimitNICE=-20
|
||||
|
||||
# CPU affinity — pin JACK server to audio cores 1-3
|
||||
CPUAffinity=1-3
|
||||
|
||||
# I/O scheduling — realtime class
|
||||
IOSchedulingClass=realtime
|
||||
IOSchedulingPriority=0
|
||||
|
||||
# JACK daemon command
|
||||
ExecStart=/usr/bin/jackd \
|
||||
-P 70 \
|
||||
-t 2000 \
|
||||
-d alsa \
|
||||
-d hw:USB \
|
||||
-r 48000 \
|
||||
-p 128 \
|
||||
-n 3 \
|
||||
-M \
|
||||
-X seq \
|
||||
-S
|
||||
|
||||
# Restart on crash (but not on clean shutdown)
|
||||
Restart=on-failure
|
||||
RestartSec=2
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user