Richard Fuchs
7b5b52e932
TT#156052 add MOS stats to stats output
...
Change-Id: I9dd3847ae772ba0851239c3f230de72a2ed207ee
4 years ago
Richard Fuchs
bcb912bc27
TT#136952 allow passing user data to ssrc_hash_foreach
...
Change-Id: Iea158f06901de33ad9b53f8c277011b859cb214a
4 years ago
Richard Fuchs
834eb034af
TT#14008 add packet loss tracking for userspace passthrough
...
Change-Id: Id2ea329333a4236389e2a2b567fba76ffc7cea5f
4 years ago
Richard Fuchs
93377588ad
TT#121752 fix RTCP RR SSRC substitution when transcoding
...
Perform reverse SSRC mapping even if output media is not known, and use
the appropriate media side when looking up SSRCs for received RTCP
timestamps.
closes #1298
Change-Id: Ifa5a982163bf7b0510ffc2a92ae25995d1adb888
4 years ago
Richard Fuchs
92fb330a46
TT#91151 implement one-to-many forwarding
...
Change-Id: I80fd35da680d4ad1f4d3d21f14f11363106b9917
5 years ago
Richard Fuchs
1d387b98ef
TT#112700 rework codec offer/answer routine
...
Complete overhaul of the codec handling code:
*) obsolete flags `asymmetric codecs`, `symmetric codecs`, `reorder
codecs`
*) support proper codec offer/answer
*) split codec manipulation (strip/offer/accept/etc) into separate
functions for clarity and better code maintenance
*) fully update codec handlers in both directions after an answer
*) explicit allocation and handling of codecs and payload types in a
codec_store object
*) improve codec matchup logic during answer
*) more explicit handling of supplemental codecs (CN/DTMF)
*) remove now obsolete hacks for handling certain use cases
Change-Id: I996705ba8fe339524c2f70e6bb0fd854f9a1f4fb
5 years ago
Richard Fuchs
256b9917ec
TT#121752 associate SSRC hash to monologue instead of entire call
...
This solves problems when the same SSRC is looped through the same call
multiple times in different mono/dialogues, with different parameters.
Change-Id: I1d033cb1f012574d82b5bcbfffe11eb5f983cfd8
5 years ago
Richard Fuchs
3eae4b3af3
TT#14008 add MOS-LQ option
...
Change-Id: I2cacceda1f910fb2ed74ccd9f17cde1bf50031b0
5 years ago
Richard Fuchs
369e64f9a7
TT#14008 add mqtt support
...
Change-Id: Ica4a3e4ef58eadf3feca44ea63f2308103b3146f
5 years ago
Guillem Jover
07695d2abb
TT#111150 Use modern <stdint.h> uint<bits>_t types
...
The u_int<bits>_t are BSD legacy types, while the new ones are specified
by C99 and SUSv3.
Change-Id: Ia748cabc33a7e5adc2c7a6049ad1e55be0c788a8
5 years ago
Richard Fuchs
05ef61c0d7
TT#108003 fix errors reported by coverity
...
Change-Id: I6641da426f1e05f0d0e3924887baf7fb948fb0c9
5 years ago
Richard Fuchs
f547549f98
Merge branch 'rtt_rtcp_xr' of https://github.com/jchavanton/rtpengine
...
Change-Id: Ibac95448fc9a2091cb97db1cdf039836133117e7
5 years ago
Julien Chavanton
0483df374f
fix rtt from rtcp_rx
5 years ago
Julien Chavanton
49786d049f
adding cumulative number of packets lost
5 years ago
Julien Chavanton
3d5e586c69
mos average fix when missing RTT
5 years ago
Julien Chavanton
4d56c6675a
mos calculation adjustment for
...
negative r-factor
5 years ago
Richard Fuchs
2dfe0b348f
Merge branch 'invalid_max_mos' of https://github.com/jchavanton/rtpengine
...
Change-Id: Id92bd31a35bf0972f9dd4d94f12a35ad424887a8
5 years ago
Julien Chavanton
bcf70cf6d5
max-mos: is often invalid when RTCP was not
...
received on both legs since we are using RTT mos-cq (conversational
quality), we should not compute it when we have only the RTT from one
leg.
5 years ago
Dup4
0e2a0b9861
fix: mos calc
5 years ago
Richard Fuchs
6893a7c96d
TT#14008 skip object precreation on second pass
...
Change-Id: I61a4c1b95b575489d6257c6bb5e3e1833ae6c65b
5 years ago
Guillem Jover
962479bd63
TT#108003 Stop using random()
...
While these usages are not supposed to be security sensitive, it's still
best to avoid the usage altogether so that we do not need to think about
it. Add a taint macro so that this does not regress in the future.
Change-Id: Ic75861ed1b7ce9dfca4f897de8be2408204ce3cb
Warned-by: coverity
5 years ago
Richard Fuchs
fd275acc5c
TT#98901 use DTX buffer for related DTMF events
...
Change-Id: Ia9b83bf7a0989ec2e20ac0d8ea9a1024a8f5d417
5 years ago
Julien Chavanton
e1847cadc5
RTT per call leg
5 years ago
Richard Fuchs
58c436e5a7
TT#98901 add ssrc_hash_foreach()
...
Change-Id: Ia90fc84ee82afc78b8fa5b6f8fed160959636d28
5 years ago
Richard Fuchs
2e4617ff86
TT#78307 move SSRC send stats to actual point of sending
...
Change-Id: I54ff4afeb8b3a205a678e9102fb0d8cedee78bae
6 years ago
Richard Fuchs
26b725d024
TT#45617 add new options to support log markers for sensitive data
...
Change-Id: I2ffa4da4be3a05f043e7991612bbb37d8102d91a
7 years ago
Richard Fuchs
497c2d6a8d
TT#49104 move RTP sequencing into SSRC context
...
Detect and handle RTP seq resets while transcoding and provide
consistent output seq
fixes #664
Change-Id: I063bd9432f253fde25e90cdeb4e3460a882f7778
7 years ago
Richard Fuchs
dd34574669
TT#38350 keep track of the most used RTP payload type
...
Instead of just remembering the last seen RTP payload type, this adds a
tracker that keeps track of the last 32 seen payload types and keep the
list in order of how often each type was seen.
Change-Id: I062a43b7bfc9413b755dca548d72953ff8245477
8 years ago
Jerzy Ptak
a44a9bf9f0
fixing memory leaks
8 years ago
Richard Fuchs
16024d2e7a
create explicit per-stream DTLS context for ICE
...
fixes #500
Change-Id: Iee3d9ab1c19a6992ae043896eb500b3961de3edc
8 years ago
Richard Fuchs
14100b0b8a
use reference counting on SSRC objects
...
possibly fixes #488 and #482
Change-Id: Ib68e456b9322836b153c9fd0e59c3556378557ae
8 years ago
Richard Fuchs
0db5e226e5
fix payload type tracking for transcoding situations
...
closes #476
Change-Id: I6a038136e22b23efe422eb40caa0f3e10359e5d1
8 years ago
Richard Fuchs
0636b083dc
TT#31700 implement payload-type specific passthrough kernel forwarding
...
Change-Id: I14d33b976933e8198720c1323e38af85f4f6eed7
8 years ago
Richard Fuchs
613f7afdb6
TT#31403 map and replace RTCP SSRCs when transcoding
...
Change-Id: I765f1972e4b4d10d48e10a9e14e451edd48ca836
8 years ago
Richard Fuchs
159729ad0d
TT#31403 move SSRC mapping out of codec handler
...
Change-Id: Id5babcef6440f40e45e7e23afc54398a39093a3f
8 years ago
Richard Fuchs
a4e73c90e8
TT#30404 accept and reject codecs according to transcoding preference
...
Change-Id: I7e4d1d834289433ae4a42d78b92cbc745884d5d1
8 years ago
Richard Fuchs
b9206a49bc
TT#28163 abstractize SSRC hash
...
Change-Id: I2f28854070ad5a7567870ef7585e67729154b0e3
8 years ago
Richard Fuchs
ca78747c8c
TT#30405 rename media->rtp_payload_types to ->codecs for brevity
...
Change-Id: If89d774a6ab62855118eec74d21123ba61b48e9e
8 years ago
Richard Fuchs
031921c322
purge old entries from SSRC hash table if it gets too full
...
fixes #417
Change-Id: I4da50858d3c4959687b341b7c0856a868c87ffa7
8 years ago
Richard Fuchs
23bc99ed81
TT#12800 consider RTCP XR reports for MOS calculations and stats
...
Change-Id: I18f6ff92bab432caf446c59395ab253a305378f4
9 years ago
Richard Fuchs
9108b14b80
TT#12800 records stats average not just for MOS but all values
...
Change-Id: I1c641a654623022df617da98c4a53ed34decb211
9 years ago
Richard Fuchs
5c84a6f61c
TT#12800 limit size of SSRC hash table
...
Change-Id: I51ba759d1f328f08b03e14a2f8545453f6a8ade8
9 years ago
Richard Fuchs
11dac7b28f
TT#12800 add MOS statistics to final log output
...
also converts call->created to a timeval
Change-Id: Idb71ada22a2d04637670b7515e54f2994f8d4c93
9 years ago
Richard Fuchs
868c3b64fe
TT#12800 add ssrc handling into packet_stream struct
...
Change-Id: I7da97a6435854a846d2782448b32c69327756ccf
9 years ago
Richard Fuchs
84e76e7cba
TT#12800 calculate MOS values from RTCP RR
...
Change-Id: Ie4ba70ae8290f497a4a5d756a369911b96205299
9 years ago
Richard Fuchs
70b7112617
TT#12800 store and process RTCP SR and RR for statistics
...
Change-Id: Ia78c37ae9d24df6783b664da6d395263f9f39e91
9 years ago
Richard Fuchs
b3583633e3
TT#12800 canonicalize ssrc handling
...
Change-Id: I481dd4062f044f9f7add65b4b82d276629f47ce8
9 years ago