Commit Graph

36 Commits

Author SHA1 Message Date
Andreas Eversberg 6e2fd793ac Increase compiler warnings and fix them 2024-04-05 21:51:41 +02:00
Andreas Eversberg ce58b765f5 A different recording device may be specified for sound card access 2024-03-30 23:28:10 +01:00
Andreas Eversberg a20637825a Audio rework, new jitter buffer
Jitter buffer is now based on packets, not on samples. The frames are
dejittered in received form. After reading from jitter buffer, they are
decoded in correct order. If a frame is missing, it is concealed by
repeating audio.
2024-03-30 23:28:05 +01:00
Andreas Eversberg d30d662307 Avoid large buffer on stack, to prevent stack overflows
This affectes:
 * demodulation in libfsk
 * audio processing in libmobile
2024-03-25 13:00:06 +01:00
Andreas Eversberg 60c3e094ff Add "--no-config" option, to ignore existing default config file 2024-02-18 16:23:30 +01:00
Andreas Eversberg c844fcc1f6 If a mobile inscribes, show station ID on the console
If the console's station ID is not set, it will be automatically set
when a call is made from the mobile phone or when it performs
inscription to the network. (Only works for cellular networks with
inscription support.)
2024-02-18 16:23:30 +01:00
Andreas Eversberg 3c2b5286c5 Disable rtprio by default and abort, if given prio is not allowed 2024-02-18 16:23:30 +01:00
Andreas Eversberg 3158c48365 Move from local to external osmo* libraries
src/libdebug -> libosmocore
src/libselect -> libosmocore
src/libtimer -> libosmocore
src/libosmocc -> libosmo-cc
src/libg711 -> libosmo-cc
2024-02-18 16:23:29 +01:00
Andreas Eversberg d1b8ed8250 Add option to disable L16 codec (linear 16 bit PCM)
Yate uses wrong byte order, so the codec fails. Disable it if you have
problems with Yate or other defective peers.
2023-11-15 20:37:40 +01:00
Andreas Eversberg 9f662d309f Add libselect to use select instead of polling all file descriptors 2023-01-21 15:15:52 +01:00
Andreas Eversberg 423bc42429 Refactoring validity check and prefix processing of dialed number
Command line help shows how many digits and what prefixes can be dialed.

Giving a station ID via command line will be checked for being valid.

The number to call the mobile statione will be checked for being valid.

Prefixes that are defined for a nework will be removed from station ID
automatically.

Multiple station ID lengths are supported:
 * C-Netz: 7 or 8 digits, depending on area code length
 * A-Netz: 5 or 7 digits; number is truncated to last 5 digits.
 * IMTS/MTS: 5 or 7 digits, depending on phone's selector switch.
2021-11-07 20:00:42 +01:00
Andreas Eversberg 922b4af362 Refactoring ASCCI-Art image printing 2021-11-07 08:55:46 +01:00
Andreas Eversberg 6fa74a1296 Refactor global variables for signal processing
These are:
	device, sample rate, buffer, latency
Called now:
	dsp_device, dsp_samplerate, dsp_buffer, dsp_latency
Call audio device:
	call_device, call_samplerate, call_buffer
2021-10-24 06:25:10 +02:00
Andreas Eversberg 17908076a9 Optionally output date with each debug line 2021-09-17 16:15:32 +02:00
Andreas Eversberg 7670b22118 Using "--limesdr" or "--limesdr-mini" will also set device to "lime"
This is useful, if SoapySDR supports other SDR devices, like sound card. In
this case "--sdr-device-args driver=lime" must be given at command line. Now
this is done automatically with "--limesdr" or "--limesdr-mini".
2021-03-20 11:19:43 +01:00
Andreas Eversberg 3d9481177b Config file path can be changed by command line option "--config <path>" 2021-03-20 11:19:37 +01:00
Andreas Eversberg f82244ed37 Fixed broken --osmocc-cross option
Thaks to Markus for pointing to this bug.
2021-03-07 10:39:13 +01:00
Andreas Eversberg 8c0a25f3b0 Added special strdup to liboptions, to prevent memory leaks for option strings
If you are doing memory leak debugging you don't want to see any leaks when
stopping the program.
2021-03-07 10:38:38 +01:00
Martin Hauke a07764f0d9 Fixed typos in cli output and source code comments 2021-01-03 09:57:03 +01:00
Andreas Eversberg 2cb2d5f3ac Replaced MNCC by OSMO-CC 2020-12-29 11:11:41 +01:00
Andreas Eversberg ed72e29dbb Add tx-gain option 2020-10-29 07:39:27 +01:00
Andreas Eversberg 79e11d54a6 Add option (global flag) to disable use of SDR
This is required for channels that do not belog to actual radio transceivers.
2020-10-29 07:38:19 +01:00
Andreas Eversberg 6b07d8b274 A string is used to define what digits can be dialed via console
By default it is "0123456789". This is used by "eurosignal" to add
special A..E digits.
2020-04-04 16:34:39 +02:00
Andreas Eversberg b1ea4e574f Add option to allow early audio towards call interface 2020-01-12 16:46:17 +01:00
Andreas Eversberg d6579c1244 Allow giving alphanumeric channels (Prepare for IMTS) 2019-08-26 21:10:20 +02:00
Andreas Eversberg 1eac087935 Output ASCII art image after all init functions (inside main_mobile.c) 2019-06-30 14:51:01 +02:00
Andreas Eversberg 32025915d5 Make run faster on ARM CPUs using fast math approximation
Use --fast-math to use sine/cosine tables and approximate atan2.
2018-11-10 15:18:28 +01:00
Andreas Eversberg 279dd25b15 SDR: Add presets for LimeSDR-Mini 2018-08-25 10:25:25 +02:00
Andreas Eversberg 3b58408691 Fixed -t (--tone) option 2018-05-27 06:04:09 +02:00
Andreas Eversberg ce4a540745 Add real-time scheduling to osmotv and make it default for all base stations
This is required to drastically reduce the latency of the thread execution.
2018-05-21 19:39:09 +02:00
Andreas Eversberg 3b81007210 Refactoring command line option handling
* Use own function to define and parse command line options

 * Command line options can be defined by config file also

 * --limesdr allows to auto-set required SDR option for LimeSDR
2018-05-21 19:39:09 +02:00
Andreas Eversberg 9f901384de SDR: Add option to set local oscillator (LO) offset
By default it is set to -1 MHz.
2017-12-09 20:46:14 +01:00
Andreas Eversberg c49ee3b2a8 Remove dependencies between debug, displays and mncc-console
Test functions are cleaned up, due to removed dependencies.
2017-12-09 20:46:13 +01:00
Andreas Eversberg 417151e9a3 SDR: Add DC offset removal (DC bias) 2017-12-05 11:10:44 +01:00
Andreas Eversberg 1a341f6b4e Restructure: Move debug from common code to 'libdebug' 2017-12-03 08:45:58 +01:00
Andreas Eversberg ab59a26a51 Restructure: Move mobile from common code to 'libmobile' 2017-12-03 08:45:54 +01:00