diff --git a/app.go b/app.go index 00c7b7a..3128b6e 100644 --- a/app.go +++ b/app.go @@ -7737,8 +7737,13 @@ func (a *App) QSOAudioPlayOnAir() error { // The recorder needs an INPUT from the radio; playing back needs an // OUTPUT into it, which is a different device and may well be unset on a // station that only ever recorded. - applog.Printf("qso-rec: play refused — no output device to the radio configured (Settings → Audio)") - return fmt.Errorf("no audio output to the radio is configured — set it in Settings → Audio") + // Name the FIELD, not the concept. An operator who had just emptied + // "Recording mic" read this as "you cannot play back unless you also + // record yourself" — a restriction that does not exist. The mic is an + // input; this is about the output that feeds the transmitter. + applog.Printf("qso-rec: play refused — Settings → Audio → \"To Radio (TX out)\" is empty (from_radio=%q, mic=%q)", + cfgEarly.FromRadio, cfgEarly.RecordingDevice) + return fmt.Errorf("Settings → Audio → \"To Radio (TX out)\" is empty — that is the output that feeds the transmitter (the recording mic has nothing to do with playing back)") } // A plain WAV in the data dir, overwritten each time: the player takes a // path, and MP3 encoding would add seconds to something the operator is