Andreas Eversberg
ca10048e5c
Rename filter -> iir_filter (file name and instance name)
...
This is useful when using fir_filter in the future.
2017-05-15 21:46:32 +02:00
Andreas Eversberg
d03443c4f1
SDR: Added SoapySDR's compiler flags to common/Makefile
2017-05-15 21:46:30 +02:00
Andreas Eversberg
c04d046210
SDR: Fixed SoapySDR's arguments parsing
2017-05-15 21:46:30 +02:00
Andreas Eversberg
fbdb9ece01
SDR: Allow direct IQ TX and RX instead of fm modulating a list of channels
...
This is performed by reading and writing IQ data to "sample" pointer with
channel number set to 0.
2017-05-15 21:46:29 +02:00
Andreas Eversberg
65694f3b80
SDR: disable TX or RX by setting TX or RX frequency to 0
...
This way it is possible to use SDR simplex
2017-05-15 21:46:29 +02:00
Andreas Eversberg
6e0e0c9ce8
fixup Rework on audio buffer management
2017-05-15 21:46:28 +02:00
Andreas Eversberg
9dda9e1efc
SDR: Add option to set IF bandwidth. If not defined, sampling rate is used.
2017-05-15 21:46:27 +02:00
Andreas Eversberg
1445ca2fac
SDR: Add option to send (previously recorded) IQ data instead of TX data
2017-05-15 21:46:26 +02:00
Andreas Eversberg
8e0d7d2513
samplerate.c: Allow transcoding to lower sample rate other than 8000 Hz
2017-03-04 16:52:20 +01:00
Andreas Eversberg
3fc4fc54be
main_common: Move init and cleanup function to main function
2017-03-04 07:12:12 +01:00
Andreas Eversberg
4201717f36
Rework on audio buffer management
...
Use function to get samples to be sent to fill audio buffers to a
level. This replaces the function that only shows how much data
is in the buffer.
This way the function itself can control how much data will be
sent.
2017-03-04 06:35:38 +01:00
Andreas Eversberg
2e1999b1ee
Start streaming of sound/SDR just before main loop
...
This prevents buffer overflow during init/creation processes
2017-02-25 07:09:53 +01:00
Andreas Eversberg
04fd1ddcea
Use thread to record and playback wave files without blocking
2017-02-25 06:29:09 +01:00
Andreas Eversberg
438ce08add
SoapySDR support
...
There is no time stamp handling. It is just TX'ing in advance and
synchronous to received RX rate.
2017-02-18 21:02:55 +01:00
Andreas Eversberg
290b365d67
SDR: Move FM modulation algorithms to a seperate file
2017-02-18 21:02:51 +01:00
Andreas Eversberg
4c0f8e7e95
Rework of sample rate conversion by using linear interpolation
2017-02-18 21:02:51 +01:00
Andreas Eversberg
47f74b38ce
SDR transmits with full amplitude
2017-02-18 21:02:50 +01:00
Andreas Eversberg
6a3cfd608e
Add ascii-art spectrum analyzer for SDR support
2017-02-18 21:02:49 +01:00
Andreas Eversberg
5026e161aa
Open audio device for call (headset) after everything is prepared
...
It is not allowed to stall after trigger reading of audio device.
2017-02-18 21:01:18 +01:00
Andreas Eversberg
f5e9a97c31
--rx-gain option works now only with sound card
2017-02-18 21:01:16 +01:00
Andreas Eversberg
2b4f5bb228
Minor fix in help output
2017-02-18 21:01:15 +01:00
Andreas Eversberg
7e45f556ce
Correcting all levels and move all remaining integer samples to sample_t
...
The leves are based on the standards of each mobile network. They
are adjusted to the specified frequency deviation now.
2017-02-18 21:01:13 +01:00
Andreas Eversberg
bd7ccc5fa0
Add global DC-Filter and remove all individual DC-Filters
2017-02-18 21:01:12 +01:00
Andreas Eversberg
71e556e7ff
Work on emphasis filter: Neutral @ 1000 Hz; Use filter before de-emphasis
2017-02-18 21:01:11 +01:00
Andreas Eversberg
b3fd53b165
Test filter uses a dB graph to show the response graphically
2017-02-18 21:01:10 +01:00
Andreas Eversberg
7ea3bc188d
Move samples of int16_t format to sample_t, that is of type double
...
This prepares the correction of all levels
2017-02-18 21:01:08 +01:00
Andreas Eversberg
23a42aeb2c
Fixed calculation of elapsed UHD RX time stamp
...
Now rates above 1000 RX frames per second works. The bug hit when there
were more than one frame received during one function call. This happens
if the frame rate is above the main loop rate of 1000 frames per second.
(default)
2017-02-18 21:01:05 +01:00
Andreas Eversberg
ac0da3f76e
Filter improvement: LP and HP filters, added test function
...
The -3 dB level at cut-off frequency is now maintained for multiple
iterations.
2017-02-18 21:01:04 +01:00
Andreas Eversberg
799b96c801
Fixed sleep interval in main loop
...
The elapsed time is calculated, so that it is removed from the sleep
time. This way the loop interval matches the given target.
2017-02-18 21:01:03 +01:00
Andreas Eversberg
a7e47f83d7
Fixed paging channel switching of B-Netz
...
Now the calling channel is switched correctly.
A global parameter is used to select how paging is performed.
2017-02-18 21:01:03 +01:00
Andreas Eversberg
21c5c3195d
Plot IQ data as red points on display, if overdriven (vector length >= 1.0)
2017-02-18 21:01:01 +01:00
Andreas Eversberg
c0e30d35d6
Use individual sample rate and setting for call device (headset)
2017-02-18 21:01:00 +01:00
Andreas Eversberg
19b396ab4d
Wave recording and playback now uses multi channels
2017-02-18 21:00:59 +01:00
Andreas Eversberg
2d8d7e62c1
Use global init/cleanup function
2017-02-18 21:00:58 +01:00
Andreas Eversberg
272ebeb0ae
SDR: Minor fixes
2017-02-18 21:00:56 +01:00
Andreas Eversberg
a5fd375237
Fixed typos
2017-02-18 21:00:55 +01:00
Andreas Eversberg
d28467c125
SDR: Display IQ data as a plot using 'q' key
2017-02-18 21:00:53 +01:00
Andreas Eversberg
8b9277615d
Neu structure for the paging process (B-Netz)
...
Paging tones are not created within sound_alsa.c
The audio API is now responsible to switch to paging channel.
In case of SDR, the sdr.c will switch frequency offset.
2017-02-18 21:00:50 +01:00
Andreas Eversberg
57993e3e48
Support for UHD SDR interface
2017-02-18 21:00:49 +01:00
Andreas Eversberg
b30b61282c
Generic SDR support
2017-02-18 21:00:48 +01:00
Andreas Eversberg
c5cf88ce57
Prepare for SDR: Add bandwidth and deviation info to sender instance
2017-02-18 21:00:47 +01:00
Andreas Eversberg
9ff8c3bb25
Rework on audio interface
...
Sound instance is now called audio instance and uses funcation pointers.
This gives a clean interface to be exchanged with other technologies,
linke SDR.
2017-02-18 21:00:45 +01:00
Andreas Eversberg
d54d3ac265
prepare audio handling for multi carrier SDR
2017-01-07 06:28:24 +01:00
Andreas Eversberg
713b1ab118
Rename functions and structure of biquad lowpass filter
2017-01-07 06:28:23 +01:00
Andreas Eversberg
e1cbb1649a
Fixed memory leak in PDEBUG(). Thanx to valgrind finding that!
2017-01-05 08:36:52 +01:00
Andreas Eversberg
16e1e842b9
A-Netz: Don't allow emphasis, since it is not used with A-Netz
2017-01-02 10:16:49 +01:00
Andreas Eversberg
d47853201c
common code: Update call console only when it changes or after debug line
2016-12-11 14:21:22 +01:00
Andreas Eversberg
3400f555fe
Add common function to give hotkey help
...
* Key to dial and hangup
* Key to display wave form
2016-12-09 16:42:38 +01:00
Andreas Eversberg
d52d0242bf
Output enhancements
...
* no more flicker on wave form display while scrolling
* dialing console gets cleared/overwritten correctly
* fixes on stderr output
2016-11-29 07:49:21 +01:00
Andreas Eversberg
b1c452cf12
Changed command line options
...
* All lower case options define common options
* All upper case options define network specific options
2016-11-27 22:06:47 +01:00