feat(debug): voeg audiotestfunctionaliteit toe aan debugpagina
Een nieuwe sectie voor audiotests is toegevoegd aan de debugpagina om browser (HDMI) en Sonos audio te testen. Drie nieuwe knoppen activeren respectievelijk tests voor browseraudio, Sonosaudio of beide. Bijbehorende JavaScript-functies zijn geïmplementeerd om de tests uit te voeren en statusupdates weer te geven. In pi-setup-desktop.sh worden nu HDMI audio-uitvoer, volume instellingen, en kiosk browseropstartparameters geconfigureerd ter ondersteuning van automatische audiotests en weergave-optimalisaties.
This commit is contained in:
parent
118329f7a1
commit
cc8972cadc
@ -276,6 +276,18 @@
|
||||
<button class="btn btn-secondary" onclick="openAdzkaarDirect()">🔗 Open Adzkaar Direct</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="debug-panel">
|
||||
<h3>🎵 Audio Test</h3>
|
||||
<div class="status-display" id="audioTestStatus" style="height: 100px; overflow-y: auto;">
|
||||
Test browser audio (HDMI) en Sonos...<br>
|
||||
</div>
|
||||
<div class="quick-actions">
|
||||
<button class="btn btn-primary" onclick="testBrowserAudio()">🔊 Test Browser Audio (HDMI)</button>
|
||||
<button class="btn btn-secondary" onclick="testSonosAudio()">📻 Test Sonos Audio</button>
|
||||
<button class="btn btn-success" onclick="testBothAudio()">🎵 Test Beide</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
@ -580,6 +592,61 @@
|
||||
window.open('/adzkaar', '_blank', 'fullscreen=yes,scrollbars=no,resizable=no');
|
||||
}
|
||||
|
||||
function testBrowserAudio() {
|
||||
log('🔊 Test browser audio (HDMI)...');
|
||||
const audio = document.getElementById('adhanAudio');
|
||||
if (audio) {
|
||||
audio.play()
|
||||
.then(() => {
|
||||
log('✅ Browser audio gestart (HDMI)');
|
||||
document.getElementById('audioTestStatus').innerHTML += '✅ Browser audio werkt<br>';
|
||||
})
|
||||
.catch(error => {
|
||||
log(`❌ Browser audio fout: ${error.message}`);
|
||||
document.getElementById('audioTestStatus').innerHTML += `❌ Browser audio fout: ${error.message}<br>`;
|
||||
});
|
||||
} else {
|
||||
log('❌ Audio element niet gevonden');
|
||||
document.getElementById('audioTestStatus').innerHTML += '❌ Audio element niet gevonden<br>';
|
||||
}
|
||||
}
|
||||
|
||||
function testSonosAudio() {
|
||||
log('📻 Test Sonos audio...');
|
||||
fetch('/api/debug-adhaan', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ prayer: 'Test', time: 'Nu' })
|
||||
})
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.success) {
|
||||
log(`✅ Sonos audio test: ${data.message}`);
|
||||
document.getElementById('audioTestStatus').innerHTML += `✅ Sonos: ${data.message}<br>`;
|
||||
} else {
|
||||
log(`❌ Sonos audio fout: ${data.error}`);
|
||||
document.getElementById('audioTestStatus').innerHTML += `❌ Sonos: ${data.error}<br>`;
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
log(`❌ Sonos test netwerk fout: ${error.message}`);
|
||||
document.getElementById('audioTestStatus').innerHTML += `❌ Sonos netwerk fout: ${error.message}<br>`;
|
||||
});
|
||||
}
|
||||
|
||||
function testBothAudio() {
|
||||
log('🎵 Test beide audio systemen...');
|
||||
document.getElementById('audioTestStatus').innerHTML = 'Test beide audio systemen...<br>';
|
||||
|
||||
// Test browser audio eerst
|
||||
testBrowserAudio();
|
||||
|
||||
// Test Sonos audio na 2 seconden
|
||||
setTimeout(() => {
|
||||
testSonosAudio();
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
// Update elke seconde
|
||||
setInterval(updateDebugDisplay, 1000);
|
||||
|
||||
|
||||
1
done
1
done
@ -69,3 +69,4 @@ Wed May 28 14:02:31 CEST 2025: Debug tijd synchronisatie toegevoegd tussen debug
|
||||
2025-05-28 19:21:23 - ✅ OPGELOST: Pi gesynchroniseerd via git pull, Docker containers herstart, Pi herstart. IP adres probleem zou nu opgelost moeten zijn.
|
||||
2025-05-28 19:24:17 - Docker volume mounts toegevoegd voor app.py, config.py en adhan_cron.py - wijzigingen worden nu direct doorgevoerd zonder rebuild
|
||||
2025-05-28 19:25:13 - ✅ Docker containers succesvol herstart met nieuwe volume mounts - IP adres probleem zou nu definitief opgelost moeten zijn
|
||||
2025-05-28 19:29:15 - HDMI audio ondersteuning toegevoegd: kiosk script forceert HDMI audio, browser autoplay enabled, audio test functies in debug pagina
|
||||
|
||||
@ -31,6 +31,14 @@ sleep 15
|
||||
|
||||
echo "Starting Adhaan Kiosk..."
|
||||
|
||||
# Forceer HDMI audio output
|
||||
echo "🔊 HDMI audio configureren..."
|
||||
amixer cset numid=3 2 # 0=auto, 1=headphones, 2=hdmi
|
||||
sudo raspi-config nonint do_audio 2 # Force HDMI audio
|
||||
|
||||
# Zet volume op redelijk niveau (70%)
|
||||
amixer set PCM 70%
|
||||
|
||||
# Start Docker containers
|
||||
cd /home/pi/adhan
|
||||
echo "Starting Docker containers..."
|
||||
@ -42,7 +50,7 @@ sleep 10
|
||||
# Sluit eventuele andere browsers
|
||||
pkill -f chromium-browser 2>/dev/null || true
|
||||
|
||||
# Start browser in kiosk mode
|
||||
# Start browser in kiosk mode met audio optimalisaties
|
||||
echo "Starting browser..."
|
||||
DISPLAY=:0 chromium-browser \
|
||||
--kiosk \
|
||||
@ -54,6 +62,10 @@ DISPLAY=:0 chromium-browser \
|
||||
--disable-restore-session-state \
|
||||
--disable-web-security \
|
||||
--disable-features=VizDisplayCompositor \
|
||||
--autoplay-policy=no-user-gesture-required \
|
||||
--allow-running-insecure-content \
|
||||
--disable-background-timer-throttling \
|
||||
--disable-renderer-backgrounding \
|
||||
http://localhost:5090 &
|
||||
|
||||
echo "Kiosk started!"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user