mirror of
https://github.com/jketterl/openwebrx.git
synced 2026-04-20 22:05:13 +00:00
Updating with the latest OWRX+ HDRadio changes.
This commit is contained in:
parent
5b7397da46
commit
5fa7e9d695
10 changed files with 301 additions and 80 deletions
25
owrx/dsp.py
25
owrx/dsp.py
|
|
@ -5,7 +5,7 @@ from owrx.modes import Modes, DigitalMode
|
|||
from csdr.chain import Chain
|
||||
from csdr.chain.demodulator import BaseDemodulatorChain, FixedIfSampleRateChain, FixedAudioRateChain, HdAudio, \
|
||||
SecondaryDemodulator, DialFrequencyReceiver, MetaProvider, SlotFilterChain, SecondarySelectorChain, \
|
||||
DeemphasisTauChain, DemodulatorError, RdsChain, DabServiceSelector
|
||||
DeemphasisTauChain, DemodulatorError, RdsChain, AudioServiceSelector
|
||||
from csdr.chain.selector import Selector, SecondarySelector
|
||||
from csdr.chain.clientaudio import ClientAudioChain
|
||||
from csdr.chain.fft import FftChain
|
||||
|
|
@ -330,10 +330,10 @@ class ClientDemodulatorChain(Chain):
|
|||
return
|
||||
self.demodulator.setSlotFilter(filter)
|
||||
|
||||
def setDabServiceId(self, serviceId: int) -> None:
|
||||
if not isinstance(self.demodulator, DabServiceSelector):
|
||||
def setAudioServiceId(self, serviceId: int) -> None:
|
||||
if not isinstance(self.demodulator, AudioServiceSelector):
|
||||
return
|
||||
self.demodulator.setDabServiceId(serviceId)
|
||||
self.demodulator.setAudioServiceId(serviceId)
|
||||
|
||||
def setSecondaryFftSize(self, size: int) -> None:
|
||||
if size == self.secondaryFftSize:
|
||||
|
|
@ -429,7 +429,7 @@ class DspManager(SdrSourceEventClient, ClientDemodulatorSecondaryDspEventClient)
|
|||
"mod": ModulationValidator(),
|
||||
"secondary_offset_freq": "int",
|
||||
"dmr_filter": "int",
|
||||
"dab_service_id": "int",
|
||||
"audio_service_id": "int",
|
||||
}
|
||||
self.localProps = PropertyValidator(PropertyLayer().filter(*validators.keys()), validators)
|
||||
|
||||
|
|
@ -510,7 +510,7 @@ class DspManager(SdrSourceEventClient, ClientDemodulatorSecondaryDspEventClient)
|
|||
self.props.wireProperty("high_cut", self.setHighCut),
|
||||
self.props.wireProperty("mod", self.setDemodulator),
|
||||
self.props.wireProperty("dmr_filter", self.chain.setSlotFilter),
|
||||
self.props.wireProperty("dab_service_id", self.chain.setDabServiceId),
|
||||
self.props.wireProperty("audio_service_id", self.chain.setAudioServiceId),
|
||||
self.props.wireProperty("wfm_deemphasis_tau", self.chain.setWfmDeemphasisTau),
|
||||
self.props.wireProperty("wfm_rds_rbds", self.chain.setRdsRbds),
|
||||
self.props.wireProperty("secondary_mod", self.setSecondaryDemodulator),
|
||||
|
|
@ -573,18 +573,9 @@ class DspManager(SdrSourceEventClient, ClientDemodulatorSecondaryDspEventClient)
|
|||
elif demod == "nxdn":
|
||||
from csdr.chain.digiham import Nxdn
|
||||
return Nxdn(self.props["digital_voice_codecserver"])
|
||||
elif demod == "hdr1":
|
||||
elif demod == "hdr":
|
||||
from csdr.chain.hdradio import HdRadio
|
||||
return HdRadio(program = 0)
|
||||
elif demod == "hdr2":
|
||||
from csdr.chain.hdradio import HdRadio
|
||||
return HdRadio(program = 1)
|
||||
elif demod == "hdr3":
|
||||
from csdr.chain.hdradio import HdRadio
|
||||
return HdRadio(program = 2)
|
||||
elif demod == "hdr4":
|
||||
from csdr.chain.hdradio import HdRadio
|
||||
return HdRadio(program = 3)
|
||||
return HdRadio()
|
||||
elif demod == "m17":
|
||||
from csdr.chain.m17 import M17
|
||||
return M17()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue