Andreas Eversberg
6e2fd793ac
Increase compiler warnings and fix them
2024-04-05 21:51:41 +02: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
2dcf10b1b1
Add metering information from osmo-cc to B-Netz and C-Netz
...
Untested!
2024-02-18 16:23:31 +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
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
f4abbaf027
Make libtimer to be osmo_* compatible in some places
2023-01-21 15:15:39 +01: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
253dfcc8bb
C-Netz: Fix station list and selection
2022-06-19 06:51:40 +02:00
Andreas Eversberg
7cd3f85294
C-Netz: Show debugging for IDLE (LR and LMR) frames
...
Suppress repeated IDLE frame
2022-06-19 06:51:38 +02:00
Andreas Eversberg
ec286f3d94
C-Netz: Add options to change 'Meldeaufruf' timer and counter.
2022-06-19 06:51:35 +02:00
Andreas Eversberg
cb9c85adb5
C-Netz: Add capability of special tunnel base station (bahn-bs)
...
Totally useless, if you don't have a train phone - don't you?
2022-06-19 06:51:33 +02:00
Andreas Eversberg
26f4b3f711
C-Netz: Cleanup OgK slot allocation and polarity detection
...
Now you can select between 1 and 8 slots per frame.
2022-06-19 06:51:30 +02:00
Andreas Eversberg
4930da8e0c
C-Netz: Add capability of non-standard OgK channel(s)
2022-06-19 06:51:28 +02: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
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
3293dfb500
C-Netz: Fix calls to 8-digits subscriber numbers
2021-09-17 16:16:20 +02:00
Andreas Eversberg
3fce0403fd
C-Netz: Updated base station list
2021-09-17 16:16:10 +02: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
118b0260bc
C-Netz: Fix scheduling of frames when there is nothing to send
2020-12-21 08:38:44 +01:00
Andreas Eversberg
ed72e29dbb
Add tx-gain option
2020-10-29 07:39:27 +01:00
Andreas Eversberg
f468b2dd9f
C-Netz: Minor fixes
2020-10-29 07:36:14 +01:00
Andreas Eversberg
7189984bbb
C-Netz: At correct timeslot switch channel mode
...
Without this, the first BQ(K) message came to early, so that BSA 51
released when receiving ZFZ(K) one frame too early.
2020-10-29 07:35:50 +01:00
Andreas Eversberg
63a2bc8a6b
C-Netz: Allow dialing 8-digit numbers (FuVSt > 9)
2020-05-23 14:25:34 +02:00
Andreas Eversberg
89602822e6
C-Netz: Correct check for valid channel numbers
2020-02-18 19:03:03 +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
570b2a5bca
C-Netz: Added new list of base station names and IDs
...
List contains 1991 and 1999 bwase stations
2020-01-04 09:22:02 +01:00
Andreas Eversberg
4cd9cb787e
C-Netz: --ms-power defines power level (not P-bits)
...
Also the level 8 can be selected. Actually level 6 is selected, but
reduced to 8 when making a call.
2020-01-02 09:45:33 +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
360729d270
C-Netz: Added list of base station names and IDs
...
Automatic polarity detection is now done by using the polarity of last
transmitted message. We cannot use two base station IDs anymore, to
detect the polarity. Now we deal only with the defined base station ID.
2019-11-29 15:58:32 +01:00
Andreas Eversberg
008bca784b
C-Netz: Show if emergency call is made
2019-11-29 15:58:32 +01:00
Andreas Eversberg
6dd9999dc8
C-Netz: Fixup for broken Authentication patch
...
MT calls did not work.
2019-10-26 16:57:01 +02:00
Andreas Eversberg
d6579c1244
Allow giving alphanumeric channels (Prepare for IMTS)
2019-08-26 21:10:20 +02:00
Martin Hauke
75765d49b7
Fixed many typos in output and source code comments
2019-07-15 21:14:52 +02:00
Andreas Eversberg
13245c56f6
C-Netz: Add authentication support (process only)
...
No real authentication, since the algorithm and the keys inside the cards
are not known. A challenge can be specified and optionally the response
can be verified.
2019-06-30 14:51:01 +02:00
Andreas Eversberg
1321f66456
C-Netz: Add option to control voice deviation
2019-01-02 15:58:34 +01:00
Andreas Eversberg
40aec4f14c
C-Netz: Swtitch speech scrambler only after receiving 3 consecutive frames with different scrambler mode
2018-07-01 09:18:07 +02:00
Andreas Eversberg
3a5fa8837c
Improved emphasis
2018-02-16 15:54:39 +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
Andreas Eversberg
ed31a26eba
Restructure: Move sample from common code to 'libsample'
2017-12-03 08:45:48 +01:00
Andreas Eversberg
7b539d5dc7
Restructure: Move mncc from common code to 'libmncc'
2017-11-25 19:28:33 +01:00
Andreas Eversberg
b605da1aff
Restructure: Move timer from common code to 'libtimer'
2017-11-13 20:00:52 +01:00
Andreas Eversberg
ee3fbeb03b
Split call control from built-in call console by using MNCC layer
2017-11-05 16:58:31 +01:00
Andreas Eversberg
b32e0ab602
Implementation of RX level squelch (for A-Netz and B-Netz)
...
Use -S <dB> for setting RF level or use -S auto for auto level.
When squelch closes, audio is muted. If squelch is closed for some
seconds (depending on network), call is released. (RF loss condition)
The previous loss detection has been removed
2017-10-22 19:23:08 +02:00
Andreas Eversberg
f7a0e4622b
Display channel offset with TX and RX channel frequencies on startup
2017-10-22 19:23:06 +02:00
Andreas Eversberg
dfdad21e3f
C-Netz: Work on system informations, metering and call queues
...
- Make system informations configurable
- Simulate call mertering
- Support for call queues on busy voice channels
2017-09-01 18:42:51 +02:00
Andreas Eversberg
8ce3ff455d
Add incoming answer to call control, also allow to send recall tone
2017-08-09 17:27:08 +02:00
Andreas Eversberg
538b4a42ec
Add wave file playback to replace TX audio
2017-07-15 07:38:16 +02:00
Andreas Eversberg
57d4d1739e
AMPS/C-Netz: Correctly release pending transaction when creating a new one
...
If transactions is created, look on all channels for pending transaction
with same subscriber.
1. Remove that transaction.
2. Make channel return to IDLE.
3. Release call, if callref exists.
2017-06-10 13:08:22 +02:00