Andreas Eversberg
e1a7791561
Fix playing anouncements and tones with libmobile
...
This is a fixup of the new audio processing. Without this patch you will
hear only noisy tones.
2024-04-05 22:24:12 +02:00
Andreas Eversberg
6e2fd793ac
Increase compiler warnings and fix them
2024-04-05 21:51:41 +02:00
Andreas Eversberg
b613123291
Open sound device for capture or playback only, if full duplex is not required
2024-03-30 23:28:13 +01: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
2dcf10b1b1
Add metering information from osmo-cc to B-Netz and C-Netz
...
Untested!
2024-02-18 16:23:31 +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
f4abbaf027
Make libtimer to be osmo_* compatible in some places
2023-01-21 15:15:39 +01:00
Andreas Eversberg
2110a0f111
osmo-cc: Add private pointer to codecs
2022-11-24 21:16:43 +01:00
Andreas Eversberg
376cef4fa5
Osmo-CC: Add marker bit support
2022-10-23 16:56:40 +02:00
Andreas Eversberg
a756ba8fd9
libsample: Add another function for converting between int16_t and sample_t
...
Now we have speech level and 1mW (0 dBm) conversion functions
2022-10-23 16:56:32 +02:00
Andreas Eversberg
2b7efedc48
Refactoring jitter buffer
...
Features are:
* Packet based buffer
* Random in, first out
* Adaptive delay compensation (voice)
* Fixed delay (data, optionally MODEM/FAX)
* Interpolation of missing frames
* Any sample size
2022-10-23 16:56:27 +02:00
Andreas Eversberg
86d4523cc7
Correctly show channel frequencies in spectrum view when swapping SDR links
2021-11-07 20:00:43 +01:00
Andreas Eversberg
b0b0046ad3
Fixed minor compiler warning
2021-11-07 20:00:42 +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
3a73f31d7e
Fixed crash bug in dialing console
2021-11-07 20:00:41 +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
ef88fea8a0
libosmocc: Add support for individual session config (per endpoint)
2021-04-03 23:00:01 +02:00
Andreas Eversberg
089a012b06
libmobile: Do not send 'proceeding', if call gets answered right after 'setup'
2021-03-20 11:24:57 +01: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
6650631b4f
libmobile: Minor fixes
2021-03-07 10:38:45 +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
8929b332cb
Sound: Recover broken audio connection by closing and reopening the device
2020-10-29 08:00:27 +01:00
Andreas Eversberg
ed72e29dbb
Add tx-gain option
2020-10-29 07:39:27 +01:00
Andreas Eversberg
49c4793106
Add option (global flag) to disable check of channel numbers at sender.c
...
This is required for channels that do not belog to actual radio transceivers.
2020-10-29 07:38:28 +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
3764f76efb
Ignore pending audio frames when there is no transaction (anymore).
2020-10-29 07:37:32 +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
f132059edf
Add clock function to call interface
...
Implementations will have a clock to play tones, if no clock is
available from a transceiver.
2020-01-12 11:17:58 +01:00
Andreas Eversberg
150a77b69d
Add support for AM to libmobile and libsdr
2019-12-08 17:26:44 +01:00
Andreas Eversberg
c2f14834e5
Rename dbm0 (level) to speech (level)
...
In mobile communications we use speech level instead of milliwatts.
The deviation (FM) is always based on speech level, not on 1 milliwatt.
2019-12-08 17:24:36 +01:00
Andreas Eversberg
c3da4a77d4
Audio level of patterns were too loud.
2019-12-04 17:26:50 +01:00
Andreas Eversberg
23bb88ef6e
Describe if audio device exists, but does not support both directions
2019-11-29 15:58:32 +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
37406db7e3
Minimum frequency must be 8000 Hz
2019-05-30 18:19:06 +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