Orgad Shaneh
2d5565738f
MT#55283 add timestamp markers to recording metadata for pause/resume events
...
Write human-readable timestamp markers to the metadata file whenever
recording is paused or resumed via control protocol commands.
Include ISO-format timestamps with millisecond precision that aid in
tracking changes in recording state.
Example metadata output:
Recording paused at: 2025-07-29T15:30:45 (1234567.890 ms)
Recording resumed at: 2025-07-29T15:31:20 (1234598.123 ms)
🤖 Generated with [Claude Code](https://claude.ai/code )
Closes #1982
Change-Id: Id92c14900a29f53ba0ee00b3d0f53132bb11cff7
Co-Authored-By: Claude <noreply@anthropic.com>
12 months ago
Orgad Shaneh
fa7b4667d0
MT#55283 respect pause recording command
...
The command was accepted, but recording continued as usual.
Closes #1981
Change-Id: I994a9ebf75bc2d0d0ce5c601c29843c4bc0e9d0d
12 months ago
wangduanduan
ec6d07d7c5
MT#55283 dtls: add handshake type log
...
closes #1980
Change-Id: I4336ab567eaad77f6db9f9e32969808880d16494
12 months ago
Richard Fuchs
16ab6ffa1f
MT#55283 extend test
...
Change-Id: I12d02233cb0190578be865d22a7f7afee52f0c5d
12 months ago
Richard Fuchs
a9d48c0b48
MT#55283 update codec getter for jitter buffer
...
closes #1978
Change-Id: Id7e7e0aba9020f212b275cef028526bf0403246a
12 months ago
Richard Fuchs
8f92c6e5c2
MT#55283 update test
...
Change-Id: I2e06f2338cb7d1f9f32d2497bdf01b1be3048714
12 months ago
Richard Fuchs
ab48284de5
MT#55283 allow null logical_intf
...
closes #1977
Change-Id: Ib8bd32d24cc4c72a8fe7c6133bbfddc76666e6df
12 months ago
Richard Fuchs
b6bd9804a0
MT#55283 upgrade xmlrpc_callback to string
...
Simply take the xmlrpc-callback address as string and don't try to parse
it out. Store it in the call object as string as well.
Obsolete `created_from_addr`. The string form `created_from` is all we
need.
Change `created_from` to `str` as well.
Change-Id: Ib67b57b1d2d474d7b033f56ef8be59f71e44641b
12 months ago
Richard Fuchs
7fbc61253d
MT#55283 add keyspace notification test
...
Change-Id: I39afe810d2f269550c565197c7ea824d287ecd25
12 months ago
Richard Fuchs
052f16da56
MT#55283 allow allocation of out-of-pool ports
...
Different instances of rtpengine may be configured with different port
ranges. If HA requests usage of a port not part of our pool, allow it.
Change-Id: Ib4ace6c4facac35ea44948720fa46bcbdaf441d3
12 months ago
Richard Fuchs
6a72ce30db
MT#55283 move Redis macros
...
These are private to redis.c
Change-Id: I19da8eec6cb5625375906d1eae047b43850dd591
12 months ago
Richard Fuchs
116fc223d3
MT#55283 move subscribe-keyspace option
...
Put it together with the other Redis options for consistency.
Change-Id: Ic83da4f14717a302be94f23e45fa0a4bab9b986d
12 months ago
Richard Fuchs
98a78a335e
MT#55283 update condition to test for socket
...
Change-Id: I0075eea1bbcb43dda86a38d5e328a5b2ec503653
12 months ago
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
12 months ago
Richard Fuchs
215500bf4a
MT#55283 add port_is_in_range helper
...
Change-Id: I65ff5f7efdb67ce4db447d3c4cfdc4ccd3613143
12 months ago
Richard Fuchs
3118b1e258
MT#55283 update function to bool
...
Change-Id: I290fc3b803db4ac0b5d95ef9609c158dff303af5
12 months ago
Richard Fuchs
8f13d83d2b
MT#55283 fix num_ports not being set
...
Change-Id: I98b11a011063ae334118d977adc7b06fb9bff9c3
12 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
12 months ago
Richard Fuchs
1b077c300a
MT#55283 use auto lock in a few more places
...
Change-Id: Ibf34fa6e8cdcbf122e548475ba086101a6757a66
1 year ago
Richard Fuchs
7ac4c3eb1d
MT#55283 whitespace fixes
...
Change-Id: Iebf2e20d6cbb6633904111af4a9958e2ecaba34d
1 year ago
wangduanduan
16ccd39a2e
MT#55283 log: dtls log add src ip
...
closes #1975
Change-Id: Iff8ee0231be3d411249448582806cb8cf0e1ac86
1 year ago
Richard Fuchs
799830902e
MT#55283 ignore G.729 fmtp
...
closes #1971
Change-Id: Ide2577b76de1f26844a9c73e169bcad96ee2a90e
1 year ago
Richard Fuchs
9c83de9ce6
MT#55283 update format_parse to bool
...
Change-Id: If0f8740afa5f159e1649db023a2c340093f3d145
1 year ago
Richard Fuchs
e2e5e22d04
MT#55283 add tests for Ib118cd2ce/Ib36b36bb
...
Change-Id: I5e45e473ea1d747d54477fb12f0d8fb7f4133c6f
1 year 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
1 year ago
Richard Fuchs
3ca99417f1
MT#55283 add ptime to logging in a few places
...
Change-Id: I38180c44d4afb690d7dadb3710516b16b983f600
1 year 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
1 year ago
Richard Fuchs
7b7580dcbf
MT#55283 fix typo
...
Change-Id: I08ec1c2958662c7d78c659e59c6e777119e09d5a
1 year ago
Richard Fuchs
62b216646b
MT#55283 test for Ia69cbb69a82
...
Change-Id: Idff08b9935828e9bb1f45d1ebe76cbde0c019b18
1 year ago
Richard Fuchs
fe39a7927b
MT#55283 fix clashing PT numbers
...
closes #1960
Change-Id: Ia69cbb69a826141b85a65cd7487a655e047e88d2
1 year ago
wangduanduan
7b5235b4bf
MT#55283 test: add test for unknown fmtp
...
closes #1968
Change-Id: I71d2f7947f0495ea08d000568c40915e86d034d8
1 year ago
Aki Huolman
2abda66667
MT#55283 Add documentation for MySQL database schema
...
closes #1967
Change-Id: I0e839ce0dd6c2e13f6f35d1ec006d1c1e904b40e
1 year 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
1 year 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
1 year 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
1 year 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
1 year ago
Richard Fuchs
ef3b1c2956
MT#62571 support mixed TLS/TCP output
...
Change-Id: I8f2b6372e9379d1845245f95bb69498661fbebf9
1 year ago
Richard Fuchs
549e98e3dc
MT#62571 generalise tls_fwd_new
...
Change-Id: Icfb9487e98bb8c4dfbb728299373327c5693330d
1 year ago
Richard Fuchs
6476b8156e
MT#62571 generic mix sink
...
Change-Id: Ia02ed34cd7d8ddb39b4e3c6f8c051ab92abb355f
1 year ago
Richard Fuchs
15465d0878
MT#62571 allow creation of mix after streams
...
Change-Id: I98a45fb7394e561010a36772e9c56395e80ca26e
1 year ago
Richard Fuchs
7dfe1e30f5
MT#62571 support sending multi channel audio
...
Change-Id: I8e79b7b873308f9ed2bedbe18a4f61a6e7c3ae93
1 year ago
Richard Fuchs
a14c20d04e
MT#62571 turn tls_fwd into sink
...
Change-Id: Ic859d0dd65156761007641ccd3f4e710d7e7fa9f
1 year ago
Richard Fuchs
aa627d78ec
MT#62571 further encapsulate tls_fwd
...
Change-Id: I790ac03ee4f51027d080b9152a4cae8c995e93c1
1 year ago
Richard Fuchs
5ebd94d742
MT#62571 turn tls_fwd into allocated obj
...
Change-Id: Ie766b483a51bca7f2677f7ccf029379302437067
1 year ago
Richard Fuchs
ad063360bd
MT#62571 encapsulate tls_fwd
...
Change-Id: I06b925e2eb2bbdb7a4741a93a64701f495409616
1 year ago
Richard Fuchs
06c89206c1
MT#62571 turn mix output into sink
...
Change-Id: I59140d641679b84ce3831ba1dcad07e38deda46f
1 year ago
Richard Fuchs
316161f6aa
MT#62571 add sink to decode_t
...
Unused at this point except for the resampler
Change-Id: I093d7924c0bcc42a9a5162e1f02a374ea97e1bf3
1 year ago
Richard Fuchs
293b393177
MT#62571 remove output_config from decoder_new
...
Change-Id: I7a15c7657bc3a3492a3e7659b9c3473bb07f5e9a
1 year ago
Richard Fuchs
fb2b6986bb
MT#62571 add sink resampling stage
...
Change-Id: Ifcd25ea9ed71f913e44ebb34a8fe63ae92f748f0
1 year ago
Richard Fuchs
98db2ba250
MT#62571 add sink config method
...
Change-Id: Ia10636ec7090b8dbe976bb8b91defde8b3a34395
1 year ago