Richard Fuchs
589bf0b22d
MT#55283 split up reserve_port
Use different function to get a port from a pool and return it, and
reserve a port in a pool permanently during startup.
Change-Id: I030dc2ebbe30c9b47252669717f235177f15219d
5 months ago
Richard Fuchs
215500bf4a
MT#55283 add port_is_in_range helper
Change-Id: I65ff5f7efdb67ce4db447d3c4cfdc4ccd3613143
5 months ago
Richard Fuchs
3118b1e258
MT#55283 update function to bool
Change-Id: I290fc3b803db4ac0b5d95ef9609c158dff303af5
5 months ago
Richard Fuchs
8f13d83d2b
MT#55283 fix num_ports not being set
Change-Id: I98b11a011063ae334118d977adc7b06fb9bff9c3
5 months ago
Richard Fuchs
ffc539c0d8
MT#55283 locking updates
Protect selected_sfd with in_lock.
Protect RTCP sending with in_lock and out_lock as appropriate.
Has the odd side effect of RTCP reports expected in tests to be sent one
packet later than before.
Closes #1966
Probably fixes #1927
Change-Id: I225b43dff8e8fbb938d3be6aad50249997615d77
5 months ago
Richard Fuchs
1b077c300a
MT#55283 use auto lock in a few more places
Change-Id: Ibf34fa6e8cdcbf122e548475ba086101a6757a66
5 months ago
Richard Fuchs
7ac4c3eb1d
MT#55283 whitespace fixes
Change-Id: Iebf2e20d6cbb6633904111af4a9958e2ecaba34d
5 months ago
wangduanduan
16ccd39a2e
MT#55283 log: dtls log add src ip
closes #1975
Change-Id: Iff8ee0231be3d411249448582806cb8cf0e1ac86
5 months ago
Richard Fuchs
799830902e
MT#55283 ignore G.729 fmtp
closes #1971
Change-Id: Ide2577b76de1f26844a9c73e169bcad96ee2a90e
5 months ago
Richard Fuchs
9c83de9ce6
MT#55283 update format_parse to bool
Change-Id: If0f8740afa5f159e1649db023a2c340093f3d145
5 months ago
Richard Fuchs
e2e5e22d04
MT#55283 add tests for Ib118cd2ce/Ib36b36bb
Change-Id: I5e45e473ea1d747d54477fb12f0d8fb7f4133c6f
5 months ago
Richard Fuchs
daa769fea5
MT#55283 distinguish player cache ptimes
Add the ptime into the hash function so that cached player using
different ptimes use distinct entries.
Closes #1963
Change-Id: Ib118cd2ce14525d524a2d63c0506af8ae8ae929f
5 months ago
Richard Fuchs
3ca99417f1
MT#55283 add ptime to logging in a few places
Change-Id: I38180c44d4afb690d7dadb3710516b16b983f600
5 months ago
Richard Fuchs
fa8123e1c2
MT#55283 explicitly return PTS/duration
... from packetizer function instead of putting it into the AVPacket.
Remove AVPacket from callback function arguments.
Fix up PTS/duration adjustments where they were missing.
Closes #1963
Change-Id: Ib36b36bb6648b0579dd83155c7217317dda29cc3
5 months ago
Richard Fuchs
7b7580dcbf
MT#55283 fix typo
Change-Id: I08ec1c2958662c7d78c659e59c6e777119e09d5a
5 months ago
Richard Fuchs
62b216646b
MT#55283 test for Ia69cbb69a82
Change-Id: Idff08b9935828e9bb1f45d1ebe76cbde0c019b18
5 months ago
Richard Fuchs
fe39a7927b
MT#55283 fix clashing PT numbers
closes #1960
Change-Id: Ia69cbb69a826141b85a65cd7487a655e047e88d2
5 months ago
wangduanduan
7b5235b4bf
MT#55283 test: add test for unknown fmtp
closes #1968
Change-Id: I71d2f7947f0495ea08d000568c40915e86d034d8
5 months ago
Aki Huolman
2abda66667
MT#55283 Add documentation for MySQL database schema
closes #1967
Change-Id: I0e839ce0dd6c2e13f6f35d1ec006d1c1e904b40e
5 months ago
Donat Zenichev
03e6b84ebc
MT#61856 recording-daemon: output.c make some of funcs static
Just because of only local usage, keep them static.
Change-Id: I0bd3badd3abb6166a7d16aab07a943d7b36594b3
5 months ago
Donat Zenichev
2fd148032c
MT#61856 recording-daemon: update const qualifiers
Don't use const in:
- output_avio_mem_write()
- output_avio_write()
`avio_alloc_context()` of avio.h lib wants buf
to be non-constant.
Also it's the only usage of locally defined funcs,
moreover:
- output_avio_write() has fwrite() that protects buf with const
- output_avio_mem_write() casts given buf to `const char*`
Fixes:
output.c: In function ‘output_config’:
output.c:405:39: warning: passing argument 6 of ‘avio_alloc_context’ from incompatible pointer type [-Wincompatible-pointer-types]
405 | NULL, output_avio_write, output_avio_seek);
| ^~~~~~~~~~~~~~~~~
| |
| int (*)(void *, const uint8_t *, int) {aka int (*)(void *, const unsigned char *, int)}
In file included from /usr/include/x86_64-linux-gnu/libavformat/avformat.h:316,
from types.h:9,
from output.h:4,
from output.c:1:
/usr/include/x86_64-linux-gnu/libavformat/avio.h:468:25: note: expected ‘int (*)(void *, uint8_t *, int)’
{aka ‘int (*)(void *, unsigned char *, int)’} but argument is of type
‘int (*)(void *, const uint8_t *, int)’ {aka ‘int (*)(void *, const unsigned char *, int)’}
468 | int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int (*)(void *, const uint8_t *, int) {aka int (*)(void *, const unsigned char *, int)}
int (*)(void *, const uint8_t *, int)
output.c:409:39: warning: passing argument 6 of ‘avio_alloc_context’ from incompatible pointer type [-Wincompatible-pointer-types]
409 | NULL, output_avio_mem_write, output_avio_mem_seek);
| ^~~~~~~~~~~~~~~~~~~~~
| |
| int (*)(void *, const uint8_t *, int) {aka int (*)(void *, const unsigned char *, int)}
In file included from /usr/include/x86_64-linux-gnu/libavformat/avformat.h:316,
from types.h:9,
from output.h:4,
from output.c:1:
/usr/include/x86_64-linux-gnu/libavformat/avio.h:468:25: note: expected ‘int (*)(void *, uint8_t *, int)’
{aka ‘int (*)(void *, unsigned char *, int)’} but argument is of type
‘int (*)(void *, const uint8_t *, int)’ {aka ‘int (*)(void *, const unsigned char *, int)’}
468 | int (*write_packet)(void *opaque, uint8_t *buf, int buf_size),
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: Leaving directory '/home/donat/git/sipwise/rtpengine/recording-daemon'
Change-Id: Ied4936fe24d55c241a3f72550e643368a014c181
5 months ago
Donat Zenichev
856ab5815c
MT#61856 parse_attribute_crypto: initialize `err` at least to something
Fixes:
../lib/loglib.h:54:17: warning: ‘err’ may be used uninitialized in this function [-Wmaybe-uninitialized]
54 | __ilog(prio, "[%s] " fmt, log_level_names[system], ##__VA_ARGS__); \
| ^~~~~~
sdp.c:613:21: note: ‘err’ was declared here
613 | const char *err;
| ^~~
sdp.c:734:9: warning: ‘err’ may be used uninitialized in this function [-Wmaybe-uninitialized]
734 | ilog(LOG_ERROR, "Failed to parse a=crypto attribute, ignoring: %s", err);
| ^
sdp.c:613:21: note: ‘err’ was declared here
613 | const char *err;
| ^
Change-Id: I18c3c1d6f2d6d5643a61ef864116e1f3d5e1db95
5 months ago
Richard Fuchs
2845bb1efa
MT#62571 streamline resampling
Move destination format information into the sink object.
Decode each codec directly to its matching output format and leave
resampling to the sinks.
Move managing of the adjusted multi-channel output format into the mix
context.
Make sure all inputs to a mix outputs use the same audio format.
Change-Id: Ib9f334443bfee26d59f2ede6e13ac80c66c1b57e
6 months ago
Richard Fuchs
ef3b1c2956
MT#62571 support mixed TLS/TCP output
Change-Id: I8f2b6372e9379d1845245f95bb69498661fbebf9
6 months ago
Richard Fuchs
549e98e3dc
MT#62571 generalise tls_fwd_new
Change-Id: Icfb9487e98bb8c4dfbb728299373327c5693330d
6 months ago
Richard Fuchs
6476b8156e
MT#62571 generic mix sink
Change-Id: Ia02ed34cd7d8ddb39b4e3c6f8c051ab92abb355f
6 months ago
Richard Fuchs
15465d0878
MT#62571 allow creation of mix after streams
Change-Id: I98a45fb7394e561010a36772e9c56395e80ca26e
6 months ago
Richard Fuchs
7dfe1e30f5
MT#62571 support sending multi channel audio
Change-Id: I8e79b7b873308f9ed2bedbe18a4f61a6e7c3ae93
6 months ago
Richard Fuchs
a14c20d04e
MT#62571 turn tls_fwd into sink
Change-Id: Ic859d0dd65156761007641ccd3f4e710d7e7fa9f
6 months ago
Richard Fuchs
aa627d78ec
MT#62571 further encapsulate tls_fwd
Change-Id: I790ac03ee4f51027d080b9152a4cae8c995e93c1
6 months ago
Richard Fuchs
5ebd94d742
MT#62571 turn tls_fwd into allocated obj
Change-Id: Ie766b483a51bca7f2677f7ccf029379302437067
6 months ago
Richard Fuchs
ad063360bd
MT#62571 encapsulate tls_fwd
Change-Id: I06b925e2eb2bbdb7a4741a93a64701f495409616
6 months ago
Richard Fuchs
06c89206c1
MT#62571 turn mix output into sink
Change-Id: I59140d641679b84ce3831ba1dcad07e38deda46f
6 months ago
Richard Fuchs
316161f6aa
MT#62571 add sink to decode_t
Unused at this point except for the resampler
Change-Id: I093d7924c0bcc42a9a5162e1f02a374ea97e1bf3
6 months ago
Richard Fuchs
293b393177
MT#62571 remove output_config from decoder_new
Change-Id: I7a15c7657bc3a3492a3e7659b9c3473bb07f5e9a
6 months ago
Richard Fuchs
fb2b6986bb
MT#62571 add sink resampling stage
Change-Id: Ifcd25ea9ed71f913e44ebb34a8fe63ae92f748f0
6 months ago
Richard Fuchs
98db2ba250
MT#62571 add sink config method
Change-Id: Ia10636ec7090b8dbe976bb8b91defde8b3a34395
6 months ago
Richard Fuchs
08ee3b2b31
MT#62571 abstract sink/output
Change-Id: Ie08b27b268f9e9aa1bdea134bc20ef4b98ae7425
6 months ago
Richard Fuchs
374357302a
MT#62571 remove redundant decls
Change-Id: I281b01aafb28db98daef56fcc302c12971cf0d60
6 months ago
Richard Fuchs
b39a43a576
MT#62571 split out TLS send code
Change-Id: Icb645aae9cab775b86fa50c7d832dd621af2a3a1
6 months ago
Richard Fuchs
c56899f6da
MT#55283 use intptr_t for pointer arith
Change-Id: Ie0f21a992a5a2de4b274e83f07cae30d0f68b276
5 months ago
Richard Fuchs
3ce25d062c
MT#55283 version-guard lws buf size
Change-Id: Ib056bc7eb644eda07a26f0a5e91beb3a670e1719
5 months ago
Richard Fuchs
0dbbc9467f
MT#55283 create mix output only after tag is known
Change-Id: I3051cdad8170e6513f13d8ca12f941ca17aeaef9
5 months ago
Donat Zenichev
836423e33c
MT#61856 main: first static, then const
Fixes:
main.c: In function ‘options’:
main.c:1055:9: warning: ‘static’ is not at beginning of declaration [-Wold-style-declaration]
1055 | const static size_t max_buf_size =
| ^~~~~
Change-Id: I500785e712d94ff0969317edf3d7a256dc4e3182
5 months ago
Donat Zenichev
f2c89227e5
MT#63082 rtcp parsing: improvements
Add `EXTRACT_NETWORK_ADDRESS_ATTR`
for proper error alias handling,
otherwise just quits with no attr type change.
Change-Id: Iacea9350503b68962a3c233df9126102b67d3b8b
5 months ago
Donat Zenichev
538d06aa3b
MT#63082 parse crypto and rtcp: on error handling return -1
As macroses do, return -1 and not 0 as in normal case.
Change-Id: I25d43142ef1c1c60da56450f07fb0dd6548db693
5 months ago
Donat Zenichev
fd763f2804
MT#63082 crypto: ignore dummy suites
If dummy definition with no tag, algo etc.
just ignore it, otherwise not excluded
and is dangling in outgoing SDP.
Also add according test.
Change-Id: Ib7c981ee66b1ce8cb363a9cc181231c68baa69cd
5 months ago
Richard Fuchs
f5277e5c30
MT#55283 add http-buf-size option
closes #1950
Change-Id: I12047e7e6af8e0d927744a0dc70c5b4668420878
5 months ago
wangduanduan
eba58fd286
MT#55283 log: add log recevied stun request
closes #1964
Change-Id: Ia3b348b1e2197c79542764f26c69c0d35ed317d7
6 months ago
Richard Fuchs
872049b1da
MT#55283 fix possible off-by-one
Change-Id: Iadf2e9be28bb3a33043e3cd811daacd17579be3f
6 months ago