Commit Graph

463 Commits (8cf038e4fa7869d8f5601384b82fc99eb1109437)

Author SHA1 Message Date
Richard Fuchs 82d3bfe32e MT#55283 use io_uring recv for media if possible
2 years ago
Richard Fuchs 9ee075b088 MT#55283 split out common part of stream_fd_readable
2 years ago
Richard Fuchs ad00134c61 MT#55283 use bufferpool for media packets
2 years ago
Richard Fuchs e553660e23 MT#55283 virtualise poller methods
2 years ago
Richard Fuchs a3f6a9228d MT#55283 removed unused poller argument
2 years ago
Richard Fuchs 58cbd2f21c MT#55283 delegate closing sockets to poller
2 years ago
Richard Fuchs aab5d66c31 MT#55283 update external poller API to bool
2 years ago
Richard Fuchs 8b7cab4ea7 MT#55283 force re-encryption if DTMF injection is requested
2 years ago
Richard Fuchs 88f09f9b02 MT#55283 add static
2 years ago
Richard Fuchs ebe9501beb MT#55283 obsolete RE_HAS_MEASUREDELAY
2 years ago
Richard Fuchs 41a43218c6 MT#55283 decrease log severity
2 years ago
Richard Fuchs 3e0fe5ae75 MT#55283 remove unused argument
2 years ago
Richard Fuchs 151c45ddd7 MT#59038 add block-egress flag
2 years ago
Richard Fuchs e8b5887235 MT#55283 use per-call poller
2 years ago
Richard Fuchs 90aa63a97c MT#55283 fix/rework poller-per-thread feature
2 years ago
Richard Fuchs 1e1f00412e MT#55283 update kernel.c to bool types
2 years ago
Donat Zenichev bebe291656 MT#59086 Unify header files inclusions.
2 years ago
Richard Fuchs e439a27def MT#55283 protect read with mutex
2 years ago
Donat Zenichev 5de30a855b MT#58716 Move transcoding flag to media
2 years ago
Richard Fuchs e969a79428 MT#55283 check DTLS src/dst addressses
2 years ago
Richard Fuchs 8f98f69e98 MT#55283 use typed G* for subscriptions
2 years ago
Richard Fuchs d23d9f8b42 MT#55283 use typed GQueue for ports release
2 years ago
Richard Fuchs f0eba3ca13 MT#55283 use typed GQueue for kernel list
2 years ago
Richard Fuchs 2b41188286 MT#55283 use typed GHashTable for local sockets
2 years ago
Richard Fuchs a8f9e7b722 MT#55283 use g_auto for stream_fd
2 years ago
Richard Fuchs cd4f6608cd MT#55283 convert struct stream_fd to typedef
2 years ago
Richard Fuchs 2975b2131d MT#55283 convert struct call to typedef
2 years ago
Richard Fuchs 57598e1255 MT#55283 use typed GQueue for stream/handlers
2 years ago
Richard Fuchs dd3471d919 MT#55283 use typed GQueue for codec_packet
2 years ago
Richard Fuchs 73f1037720 MT#55283 use typed GQueue for socket/sfd lists
2 years ago
Richard Fuchs 3114510c12 MT#55283 specialise struct intf_list
2 years ago
Richard Fuchs 4e7078834f MT#55283 use typed GQueue for stream_fd
2 years ago
Dennis Yurasov 6a8c523d55 MT#55283 Avoiding "Too many packets in UDP receive ...
2 years ago
Richard Fuchs 43d1427b4d MT#55283 switch basic GQueue to g_auto
2 years ago
Richard Fuchs 1238d2f3c2 MT#57977 integrate block/silence_media into bfield
3 years ago
Richard Fuchs 280795ddc9 MT#57977 convert call flags to uint bit field
3 years ago
Richard Fuchs 17e57fbba4 MT#57977 convert monologue flags to uint
3 years ago
Richard Fuchs 81151b3793 MT#57977 support short-packet blocking
3 years ago
Donat Zenichev 4f8cd655a8 MT#57719 Use media subscriptions approach in `stream_packet()`
3 years ago
Richard Fuchs cbd217d5b1 MT#55283 fix for NULL selected_sfd
3 years ago
Richard Fuchs 4cbc35e0f2 MT#55283 fix RTCP/MOS reporting
3 years ago
Orgad Shaneh 1a28b73a2d MT#55283 Rename aux -> helpers
3 years ago
Richard Fuchs 7a2b7d57c0 TT#136957 add RTP mirrors to kernel mode
3 years ago
Richard Fuchs 583c6816a0 TT#136957 refactor some parts of kernelize()
3 years ago
Richard Fuchs 088c58a367 TT#136957 fix typo
3 years ago
Richard Fuchs e93b2fd5de TT#146201 update SRTCP index from kernel
3 years ago
Richard Fuchs 7bf1595fe5 TT#146201 support forwarding all RTCP
3 years ago
Richard Fuchs 3a57face11 TT#146201 support forwarding RTCP FB packets directly
3 years ago
Richard Fuchs c03362cc71 TT#146201 use kernel's RTCP sending function
3 years ago
Richard Fuchs 9a767fc9c9 TT#146201 mark RTCP-capable kernel streams
3 years ago
Richard Fuchs 7c1930af2a TT#146201 don't special-case RTCP rule
3 years ago
Richard Fuchs a71824bf3b TT#146201 push RTCP outputs to kernel module
3 years ago
Richard Fuchs 01e3e9b74f TT#146201 remove unused `rtcp_only` flag
3 years ago
Richard Fuchs 5ff9294bab TT#146201 support RTCP encryption in kernel
3 years ago
Richard Fuchs b90edf0ecf MT#55283 looper thread bool return type
3 years ago
Richard Fuchs 15709a62a6 MT#55283 refactor loop thread creation
3 years ago
Richard Fuchs 9ed6aacd68 MT#55283 avoid erroneous endpoint learning
3 years ago
Richard Fuchs 5c9078550e MT#55283 update return type to bool
3 years ago
Richard Fuchs 86f2a8fb60 MT#57466 MT#57337 set rtpe_now in thread
3 years ago
Donat Zenichev 6fe9cc9b8a MT#57337 Move kernel stats update to a separate thread
3 years ago
Richard Fuchs fdc9b14509 MT#55283 force sequential socket reads
3 years ago
Donat Zenichev a236f465e5 MT#57268 Move release closed sockets to a separate thread
3 years ago
Richard Fuchs 07bf12d08f MT#56750 fix typo
3 years ago
Richard Fuchs 8cb7a4c9a6 MT#56861 support DTMF injection with kernel mode
3 years ago
Richard Fuchs 8fc168784f MT#56861 support RTP seq no adjustments in kernel
3 years ago
Richard Fuchs 684174d608 MT#56856 ignore reversed TS update
3 years ago
Richard Fuchs 42284d4fa2 MT#56856 support the new REMG_DEL_TARGET_STATS
3 years ago
Richard Fuchs 62d8326050 MT#56856 split up __stream_update_stats
3 years ago
Richard Fuchs fc491af7f3 MT#57093 log reasons for unkernel event
3 years ago
Richard Fuchs 95176a3cc9 MT#57093 shortcut _update_stats
3 years ago
Richard Fuchs 5822cb889d MT#56447 change ml->medias to GPtrArray
3 years ago
Donat Zenichev 6b7bf4df92 MT#56750 Fix some typos introduced by 3444feb
3 years ago
Donat Zenichev 024d7da179 MT#56750 Destroy the `port_pool.free_list_lock`
3 years ago
Donat Zenichev c024b54dc3 MT#56750 Deprecate unused objects of `media_socket.port_pool`
3 years ago
Donat Zenichev 21562866ce MT#56750 ports allocation: add helpers
3 years ago
Donat Zenichev 3444febebc MT#56750 Reworked port allocation
3 years ago
Richard Fuchs 4e300b4ccd MT#56447 honour RECV flag when receiving RTP
3 years ago
Richard Fuchs 05256d0c9f MT#56447 use explicit BLACKHOLE flagging
3 years ago
Richard Fuchs 60f910a1ff MT#56447 prettierer code
3 years ago
Michael Prokop dfc705d9b0 TT#71950 Unify rtpengine wording
3 years ago
Richard Fuchs 0914bf761d MT#55283 add per-call dtmf-log-dest
3 years ago
Tom Briden 35ac2610af MT#55283 Add an option to not send dtmf log events for injected dtmf
3 years ago
Richard Fuchs c9fa42c347 MT#56470 support egress call recording
3 years ago
emvondo 900d2bebee Update asymmetric RTP behaviour with STRICT_SOURCE flag
3 years ago
Richard Fuchs 91340fa947 MT#55283 fix possible null deref
3 years ago
Richard Fuchs de00d07169 MT#55283 update type to bool
3 years ago
Richard Fuchs 1753ef569f MT#55283 remove pointless case distinction
3 years ago
Richard Fuchs 906f5c0a94 MT#55283 remove unused value
3 years ago
Richard Fuchs b956303748 MT#55283 support reporting per-interval metrics
3 years ago
Richard Fuchs 4498e181a6 MT#55283 refactor interfaces stats block
3 years ago
Richard Fuchs 095ff4a88f MT#55283 collect per-interface stats
3 years ago
Richard Fuchs c34e6dcc82 MT#55283 remove "const" from local_intf
3 years ago
Richard Fuchs 410a277f50 MT#55283 remove useless struct member
3 years ago
Richard Fuchs 8db4d64b84 MT#56521 add reference to plain RTP protocol
3 years ago
Richard Fuchs 99230b9a93 Revert "MT#56420 use actual local socket for decryption"
3 years ago
Richard Fuchs b28794f853 MT#56420 use actual local socket for decryption
3 years ago
Richard Fuchs deb676e009 MT#56420 fix incorrect local socket switching
3 years ago
Richard Fuchs 4d708350ee MT#56447 add new "media" Janus event
3 years ago
Richard Fuchs 2ccc910354 MT#56447 rename _media_up to _rtc_up
3 years ago
Richard Fuchs 57ae65c6f1 TT#146201 remove unused function arguments
3 years ago
Richard Fuchs c81859f231 MT#55283 fix SSRC stats tracking
3 years ago
Donat Zenichev 47375c5bfd MT#55897 Document general objects/funcs in RTPEgnine code (part 2)
3 years ago
Richard Fuchs 8a99171200 MT#55283 allow for delay in kernel mode
3 years ago
Donat Zenichev eb9aae1ddb MT#55897 Document general objects in RTPEgnine code (part 1)
3 years ago
Richard Fuchs 435e5b62ff MT#55283 honour `pt_filter` flag
3 years ago
Richard Fuchs 7ed04c3949 MT#55283 add dedicated "unknown" transport protocol
3 years ago
Richard Fuchs 9e09cf3c40 MT#55283 fix padding/SRTP order
3 years ago
Richard Fuchs e7abe3b378 TT#44805 rename `stats` to `stats_in`
4 years ago
Richard Fuchs 4a19714cd1 TT#189201 support per-sink media blocking/silencing
4 years ago
Richard Fuchs 1efc3d9409 TT#189201 move kernel media silencing from input to output
4 years ago
Richard Fuchs f316deafb7 TT#189201 retain list of sorted payload types
4 years ago
Richard Fuchs d7ef87d2ec TT#189201 clear "no kernel support" flag on demand
4 years ago
Richard Fuchs 7be1d0aef1 TT#189201 refactor sink/handler attributes
4 years ago
Richard Fuchs 85ec6e2870 TT#189900 use explicit flag to enable kernel SSRC tracking
4 years ago
Richard Fuchs 6d26df0580 TT#189900 fix SSRC tracking indexing
4 years ago
Richard Fuchs 778ec46b81 TT#178400 support reporting out measured jitter
4 years ago
Richard Fuchs 5df21de306 TT#14008 skip free list when allocating requested port
4 years ago
Richard Fuchs 17bda4b1e8 TT#156900 fix master/slave race condition with early closed ports
4 years ago
Richard Fuchs d055a5da59 TT#136957 add `egress` subscription support
4 years ago
Richard Fuchs 84fed5ca7e TT#136957 obsolete TRANSCODE flag
4 years ago
Richard Fuchs ac4f9de30e TT#136957 rename sink variable for clarity
4 years ago
Richard Fuchs 50b8f54bcf TT#155900 add `RTCP mirror` flag
4 years ago
Richard Fuchs c0d9f84e49 TT#14008 rename instance of `func` for clarity
4 years ago
Richard Fuchs dd38ff2836 TT#14008 silence coverity warning
4 years ago
Richard Fuchs b9f9d1d6a4 TT#14008 eliminate unnecessary and pointless abort()
4 years ago
Richard Fuchs 45a30658da TT#14008 return logical interface matching the address family
4 years ago
Richard Fuchs a26601a37a TT#14008 add new `reject-ICE` flag
4 years ago
Richard Fuchs 4658b90f0b TT#14008 don't open extra interface ports when ICE is not in use
4 years ago
Richard Fuchs 4eecec9a1e TT#156900 add extra check for closed socket
4 years ago
Richard Fuchs 258f02b1c1 TT#14008 add extra logging for packet recv/send
4 years ago
Richard Fuchs 6d1dfab77a TT#14008 convert logging context to stack
4 years ago
Richard Fuchs a834572ce8 TT#14008 fix typo
4 years ago
Richard Fuchs cfaa029b00 TT#14008 don't use internal function when not necessary
4 years ago
Richard Fuchs 2d2d7665b1 TT#156900 support single/odd ports for RTCP-mux
4 years ago
Richard Fuchs 6f8ad8f936 TT#156900 close sockets on branch deletion
4 years ago
Richard Fuchs 45a9ce32a7 TT#156900 track local media sockets in hash table
4 years ago
Richard Fuchs 2a584261e7 TT#155900 update phc flags to bool type
4 years ago
Richard Fuchs 31e41d1282 TT#14008 fix poller-per-thread behaviour
4 years ago
Richard Fuchs aea33b77fe TT#14008 switch must_recrypt argument to bool
4 years ago
Richard Fuchs 13c999ce05 Merge branch 'endpoint_learning' of https://github.com/john08burke/rtpengine
4 years ago
Richard Fuchs 80e002135f TT#14008 rate limit error messages from sendmsg
4 years ago
John Burke fab19ed8bb Add support for endpoint-learning on a per call basis
4 years ago
Richard Fuchs 0c95b124fd TT#151150 don't call __get_logical_interface with NULL name
4 years ago
Richard Fuchs 179b7edec1 TT#14008 fix possible segfault
4 years ago
Richard Fuchs 176e7bef67 TT#14008 avoid possible reference leak
4 years ago
Richard Fuchs 47e9f22442 TT#109800 add special handling for dtx-shift=0
4 years ago
Richard Fuchs ff00569c89 TT#14008 extra mitigation for forwarding loops
4 years ago
Richard Fuchs 24f607752c TT#145450 add support for tracking multiple SSRCs per stream
4 years ago
Richard Fuchs 785ed90bba TT#14008 eliminate duplicate packets_lost counters
4 years ago
Richard Fuchs 0fa3a105af TT#131402 add stats for user/kernel streams
5 years ago
Richard Fuchs c5dc3484ae TT#131402 split up relay stats between kernel and userspace
5 years ago
Richard Fuchs 9c3e5e1fd7 TT#101150 properly name RTPE_STATS_INC/ADD
5 years ago
Richard Fuchs 3f69a48f07 TT#14008 add NAT-wait flag
5 years ago
Richard Fuchs ac60645c13 TT#14008 fix possible null pointer
5 years ago
Richard Fuchs d6bffa17f1 TT#142100 fix possible null pointer
5 years ago
Richard Fuchs ff2aed5907 TT#14008 avoid confirm/unconfirm/reconfig flip-flop
5 years ago
Richard Fuchs b28ea21f41 TT#14008 add extra debug logging for kernel streams
5 years ago
Richard Fuchs 6c9fe540cf TT#14008 remove redundant check for FILLED sinks
5 years ago
Richard Fuchs 5c01d905e5 TT#14008 use bool type for SSRC changed funcs
5 years ago
Richard Fuchs 2770bec906 TT#14008 set non_forwarding flag if no sinks are present
5 years ago
Richard Fuchs 702dd9bb13 TT#14008 don't try to update kernel stats for no-kernel streams
5 years ago
Richard Fuchs f6461ab452 TT#14008 use FILLED flag instead of advertised address for sink test
5 years ago
Richard Fuchs 40695b2af3 TT#14008 fix possible segfault
5 years ago
Richard Fuchs 2130e2f62b TT#89352 support Janus control protocol
5 years ago
Richard Fuchs 413798e43f TT#132251 implement media silencing
5 years ago
Richard Fuchs c2b78aa9cd TT#132251 refactor kernel payload type tracking
5 years ago
Richard Fuchs 765b1e3bca TT#89352 use bool type for foreign call functions
5 years ago
Richard Fuchs ba7a75371c TT#91151 rapid push to kernel even when sink is unconfirmed
5 years ago
Richard Fuchs 45bd10d323 TT#14008 delay learning of endpoint address after re-invite
5 years ago
Richard Fuchs ab4498e9e6 TT#91151 check all sink codec handlers for kernel option
5 years ago
Richard Fuchs 9ad5378b5f TT#111150 fix coverity warnings
5 years ago
Richard Fuchs 7b59f55457 TT#14008 fix handling of possible NULL rtcp_sibling
5 years ago
Richard Fuchs 94a5feea7d TT#111150 fix coverity warnings
5 years ago
Richard Fuchs 1085d80c98 TT#121752 move RTCP processing into egress loop
5 years ago
Richard Fuchs 92fb330a46 TT#91151 implement one-to-many forwarding
5 years ago
Richard Fuchs 1e0765bf6e TT#91151 tie codec handlers to output media/sink
5 years ago
Richard Fuchs 01a10c0379 TT#91151 split input from output legs in kernel module
5 years ago
Richard Fuchs 256b9917ec TT#121752 associate SSRC hash to monologue instead of entire call
5 years ago
Richard Fuchs 891f45b4df TT#14008 run jitter calculation for passthrough and egress
5 years ago
Richard Fuchs a28df1f871 TT#14008 fix incorrect ingress octet count
5 years ago
Richard Fuchs 369e64f9a7 TT#14008 add mqtt support
5 years ago
Richard Fuchs e32d128bd8 TT#14008 add cumulative global stats counters
5 years ago
Richard Fuchs 25cb6ff857 TT#14008 handle deprecated g_memdup
5 years ago
Richard Fuchs a009f76456 TT#14008 support media echo and blackhole
5 years ago
Guillem Jover 6fc793845b TT#111150 Use {} instead of ; to mark an empty body
5 years ago
Guillem Jover 07695d2abb TT#111150 Use modern <stdint.h> uint<bits>_t types
5 years ago
Richard Fuchs a8d5076065 TT#119502 correctly restore calls from both Redis instances
5 years ago
Richard Fuchs a2e05bdc5c TT#120402 always update output SSRC mapping
5 years ago
Richard Fuchs 6cc1e99ee8 TT#14008 fix possible segfault when out of ports
5 years ago
Richard Fuchs 05ef61c0d7 TT#108003 fix errors reported by coverity
5 years ago
Richard Fuchs 5802ff2379 TT#54762 add option to enable automatic active/active switchover
5 years ago
Dennis Yurasov bfe6d59693 SSRC change fix in kernelized stream
5 years ago
Damir Nedžibović f650f95111 TT#14008 Squashed commit of the following:
5 years ago
Richard Fuchs fa6d29b45c TT#91151 fix wrong hash table lookup object being used
5 years ago
Richard Fuchs 7101f535da TT#108003 remove unnecessary null checks
5 years ago
Richard Fuchs 8b1c958f8e TT#91151 obsolete unused REMG_UPDATE op
5 years ago
Richard Fuchs 770df55b9e TT#14008 improve log output for stray packets
5 years ago
Richard Fuchs e191e16cf6 TT#14008 fix possible segfault
5 years ago
Stefan Mititelu 001abe5f1f Add new config parameter: `save-interface-ports`
5 years ago
Richard Fuchs 6602a3a7c5 TT#108551 add kernel support for AEAD-AES-GCM
5 years ago