Created
July 3, 2016 17:59
-
-
Save kolen/82c5afbc822a6038f92ac73b48d564db to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
local radio = require('radio') | |
local source = radio.RealFileSource('/tmp/dikarka.raw', 's16le', 44100) | |
local sink = radio.JSONSink() | |
local top = radio.CompositeBlock() | |
local source_complex = radio.RealToComplexBlock() | |
local space_filter = radio.ComplexBandpassFilterBlock(129, {1800, 2200}) | |
local mark_filter = radio.ComplexBandpassFilterBlock(129, {900, 1100}) | |
local space_magnitude = radio.ComplexMagnitudeBlock() | |
local mark_magnitude = radio.ComplexMagnitudeBlock() | |
local subtractor = radio.SubtractBlock() | |
local data_filter = radio.LowpassFilterBlock(128, 2000) | |
local clock_recoverer = radio.ZeroCrossingClockRecoveryBlock(2000) | |
local sampler = radio.SamplerBlock() | |
local bit_slicer = radio.SlicerBlock() | |
top:connect(source, source_complex) | |
top:connect(source_complex, space_filter, space_magnitude) | |
top:connect(source_complex, mark_filter, mark_magnitude) | |
top:connect(mark_magnitude, 'out', subtractor, 'in1') | |
top:connect(space_magnitude, 'out', subtractor, 'in2') | |
top:connect(subtractor, data_filter, clock_recoverer) | |
top:connect(data_filter, 'out', sampler, 'data') | |
top:connect(clock_recoverer, 'out', sampler, 'clock') | |
top:connect(sampler, bit_slicer, sink) | |
--top:connect(source, sink) | |
top:run() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment