mirror of
https://github.com/smittix/intercept.git
synced 2026-04-24 06:40:00 -07:00
Remove waterfall from all modes except listening post
Reverts IQ pipeline and removes syncWaterfallToFrequency calls from pager, sensor, rtlamr, DMR, SSTV, and SSTV general modes. Waterfall is now exclusive to listening post mode. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -88,9 +88,6 @@ function startDmr() {
|
||||
if (typeof reserveDevice === 'function') {
|
||||
reserveDevice(parseInt(device), 'dmr');
|
||||
}
|
||||
if (typeof syncWaterfallToFrequency === 'function') {
|
||||
syncWaterfallToFrequency(frequency, { autoStart: true, restartIfRunning: true, silent: true });
|
||||
}
|
||||
if (typeof showNotification === 'function') {
|
||||
showNotification('DMR', `Decoding ${frequency} MHz (${protocol.toUpperCase()})`);
|
||||
}
|
||||
|
||||
@@ -3589,8 +3589,7 @@ async function startWaterfall(options = {}) {
|
||||
lastWaterfallDraw = 0;
|
||||
initWaterfallCanvas();
|
||||
connectWaterfallSSE();
|
||||
// Only reserve device if not decoder-driven (decoder already owns the device)
|
||||
if (data.source !== 'decoder' && typeof reserveDevice === 'function') {
|
||||
if (typeof reserveDevice === 'function') {
|
||||
reserveDevice(parseInt(device), 'waterfall');
|
||||
}
|
||||
if (resume || resumeRfWaterfallAfterListening) {
|
||||
@@ -3619,14 +3618,11 @@ async function stopWaterfall() {
|
||||
}
|
||||
|
||||
try {
|
||||
const resp = await fetch('/listening/waterfall/stop', { method: 'POST' });
|
||||
let stopData = {};
|
||||
try { stopData = await resp.json(); } catch (e) {}
|
||||
await fetch('/listening/waterfall/stop', { method: 'POST' });
|
||||
isWaterfallRunning = false;
|
||||
if (waterfallEventSource) { waterfallEventSource.close(); waterfallEventSource = null; }
|
||||
setWaterfallControlButtons(false);
|
||||
// Only release device if it was a standalone waterfall (not decoder-driven)
|
||||
if (stopData.source !== 'decoder' && typeof releaseDevice === 'function') {
|
||||
if (typeof releaseDevice === 'function') {
|
||||
releaseDevice('waterfall');
|
||||
}
|
||||
} catch (err) {
|
||||
|
||||
@@ -98,9 +98,6 @@ const SSTVGeneral = (function() {
|
||||
updateStatusUI('listening', `${frequency} MHz ${modulation.toUpperCase()}`);
|
||||
startStream();
|
||||
showNotification('SSTV', `Listening on ${frequency} MHz ${modulation.toUpperCase()}`);
|
||||
if (typeof syncWaterfallToFrequency === 'function') {
|
||||
syncWaterfallToFrequency(frequency, { autoStart: true, restartIfRunning: true, silent: true });
|
||||
}
|
||||
|
||||
// Update strip
|
||||
const stripFreq = document.getElementById('sstvGeneralStripFreq');
|
||||
|
||||
@@ -537,18 +537,15 @@ const SSTV = (function() {
|
||||
|
||||
const data = await response.json();
|
||||
|
||||
if (data.status === 'started' || data.status === 'already_running') {
|
||||
isRunning = true;
|
||||
if (typeof reserveDevice === 'function') {
|
||||
reserveDevice(device, 'sstv');
|
||||
}
|
||||
updateStatusUI('listening', `${frequency} MHz`);
|
||||
startStream();
|
||||
if (typeof syncWaterfallToFrequency === 'function') {
|
||||
syncWaterfallToFrequency(frequency, { autoStart: true, restartIfRunning: true, silent: true });
|
||||
}
|
||||
showNotification('SSTV', `Listening on ${frequency} MHz`);
|
||||
} else {
|
||||
if (data.status === 'started' || data.status === 'already_running') {
|
||||
isRunning = true;
|
||||
if (typeof reserveDevice === 'function') {
|
||||
reserveDevice(device, 'sstv');
|
||||
}
|
||||
updateStatusUI('listening', `${frequency} MHz`);
|
||||
startStream();
|
||||
showNotification('SSTV', `Listening on ${frequency} MHz`);
|
||||
} else {
|
||||
updateStatusUI('idle', 'Start failed');
|
||||
showStatusMessage(data.message || 'Failed to start decoder', 'error');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user