Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

View AM/FM demod output (i.e. audio) in Channel Analyzer #695

Closed
srcejon opened this issue Nov 8, 2020 · 5 comments
Closed

View AM/FM demod output (i.e. audio) in Channel Analyzer #695

srcejon opened this issue Nov 8, 2020 · 5 comments
Labels
Milestone

Comments

@srcejon
Copy link
Collaborator

srcejon commented Nov 8, 2020

Is it possible to view the output of the AM & FM demodulators (i.e. demodulated audio) in the Channel Analyzer? If not, I think it would be quite a useful feature to add. Not only for viewing audio, but for analysing non-audio data that uses AM/FM modulation.

I guess it could possibly be achieved by having an audio device source (as per #496). This would be useful so that you could analyse audio from any source, but in this case, would (on Windows at least) require a virtual audio pipe, so an internal path might be preferable.

@f4exb
Copy link
Owner

f4exb commented Nov 8, 2020

I think #496 is unrelated. What you are asking for is watching the demodulated audio in a scope/spectrum combo like the channel analyzer. This is different from having an audio source as a direct I/Q modulator.

I don't think it is desirable to have it as a permanent feature of AM and NFM demodulators that should be kept lightweight I would rather see it as a plugin feature with stream connection.

@f4exb f4exb added the feature label Nov 8, 2020
@kasper93
Copy link
Contributor

kasper93 commented Nov 9, 2020

I would rather see it as a plugin feature with stream connection.

Plugins with stream connection could be nice, we could add processing after demodulation like denoising in separate connectable modules.

@f4exb
Copy link
Owner

f4exb commented Nov 9, 2020

Well denoising deserves to be an integral part of the plugin as individual audio post-processing. But more generally yes this could be useful when the data produced by a demodulator (audio, digital symbols, ...) may be processed in one or in another way to produce a secondary output that has a particular functional meaning. The modem concept is a good illustration where some flow of data may be received or transmitted in a particular modulation. Spectrum output can use the same mechanism and this would be necessary to implement the "super" scanner I am thinking of and that already exists as en external process in the v5 branch.

I am also thinking of transponders and repeaters as feature plugins where piping audio is a requirement.

For what concerns this issue I think that we could have a scope feature plugin connectable to the output of some plugins firstly those producing audio.

For the implementation to be flexible and generic enough I am thinking of creating a static object that would be a collection of data "pipes" i.e. byte FIFOs with a producer and a consumer and a process of garbage collection for the pipes that have lost their endpoints. Garbage collection here avoid a complex process of actively deleting the pipe when one endpoint is deleted at the expense of the producer sending its data to the void for some time but I think this is minor and depends on how often the garbage collection is run. Consumers and producers just subscribe and unsubscribe.

Food for thought ...

@f4exb f4exb added this to the v6.4.0 milestone Dec 20, 2020
@f4exb
Copy link
Owner

f4exb commented Dec 21, 2020

Implemented in v6.4.0

@f4exb f4exb closed this as completed Dec 21, 2020
@srcejon
Copy link
Collaborator Author

srcejon commented Dec 21, 2020

Great, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants