fix(icom): power in watts on the 7760, and Listening restarts clean
The power meter applies Icom's own meter calibration (raw 143 = half deflection, 213 = full scale) anchored against the real radio: a measured 100 W sits at half deflection of the 7760's 250 W face — the linear guess showed it as 140. The RF power slider says watts on a 200 W rig instead of a percentage the operator has to convert. And the Listening button, pressed while a network Icom is connected, restarts the monitor render-only: it used to open a USB capture from the From-radio device as well, and that second producer interleaved with the network pushes chopped the audio to pieces.
This commit is contained in:
@@ -10667,6 +10667,16 @@ func (a *App) AudioStartMonitor() error {
|
||||
if strings.TrimSpace(cfg.FromRadio) == "" {
|
||||
return fmt.Errorf(`no "From radio" capture device set — pick the rig's USB Audio CODEC in Settings → Audio`)
|
||||
}
|
||||
// When the rig's audio arrives over the NETWORK (Icom 50003), the monitor
|
||||
// must be render-only: this button used to start a USB capture from the
|
||||
// "From radio" device as well, and that second producer — often another
|
||||
// radio's DAX — interleaved its chunks with the network stream's pushes.
|
||||
// The result was audio chopped to pieces the moment the operator toggled
|
||||
// Listening off and on while connected to a network Icom.
|
||||
if cs, err := a.GetCATSettings(); err == nil && cs.Enabled && cs.Backend == "icom-net" && cs.IcomNetAudio {
|
||||
applog.Printf("audio: RX monitor start (network sink only → listen=%q)", cfg.ListeningDevice)
|
||||
return a.audioMgr.StartMonitorSink(cfg.ListeningDevice)
|
||||
}
|
||||
applog.Printf("audio: RX monitor start (from=%q → listen=%q)", cfg.FromRadio, cfg.ListeningDevice)
|
||||
a.audioMgr.SetMonitorGain(cfg.FromGain)
|
||||
return a.audioMgr.StartMonitor(cfg.FromRadio, cfg.ListeningDevice)
|
||||
|
||||
Reference in New Issue
Block a user