AM in particular is quite intuitive as you can study the modulation visually. IMO it's the "everyone could have invented that" modulation technique.
FM is built on a simple idea, but it has more involved maths.
Analog television signals are way more complex IIRC.
Re: the lib you linked - libs used to deal with radio signals is made by people who have studied signal processing and comm systems formally so you will see lots of jargon and advanced maths like Fourier Analysis. However, you most likely can build something shittier yet working by yourself by understanding the fundamentals of how those signals are encoded, modulated and transmitted.
>> https://pysdr.org/content/rds.html#fm-demodulation
Wow! Thanks for posting this.
It’s not trivial, but very meticulously written.
It would definitely classify as a “learn python the hard way” challenge for a math-y learner.
For NTSC, also check out https://github.com/oyvindln/vhs-decode
There's for example SDR++ (https://www.sdrpp.org/), which has lots of plugins to decode specific types of signals, or SDRangel (https://www.sdrangel.org/), which has quite some digital signal decoders built-in.
Is something like an AM radio signal decoding relatively easy to understand? What about FM? And NTSC?
Is the python code clear-ish? Complicated? Full of math I’m not appreciating?
Thanks!
Ok… it’s not exactly trivial: https://pysdr.org/content/rds.html#fm-demodulation