Richard Fuchs
fdb529eb5a
TT#136955 refactor DTMF event reporting
...
Change-Id: I420f56674a639a4b41b5333d8d9b8ffa843a7042
3 years ago
Richard Fuchs
740bdb4295
TT#136957 reset SSRC sequencers when going to transcoding
...
Change-Id: I98110a3d298b4ef7884ddfe2fdc931b338d40dc7
3 years ago
Richard Fuchs
bcb912bc27
TT#136952 allow passing user data to ssrc_hash_foreach
...
Change-Id: Iea158f06901de33ad9b53f8c277011b859cb214a
3 years ago
Richard Fuchs
730cc646a8
TT#14008 eliminate duplicate DTMF reports when forking media
...
With multiple media subscriptions, codec handlers are called
consecutively, once for each forwarding chain, leading to DTMF events
reported multiple times. The DTMF trigger must therefore keep track of
the state in the upper media object, not in the codec handlers.
Change-Id: I9ceaf406e093f25b7c037a325a0f2a7a91954922
3 years ago
Richard Fuchs
e6405c4a2f
TT#14008 add locking for `bypass_seq` case
...
Some functions (packet_dtmf in particular) called from the sequencer
depend on upper-level locking, so make sure this happens even if we're
bypassing the sequencer and do passthrough.
Change-Id: I6c729c3ba8075736fd614b8c06e3415b9c9e5ca7
3 years ago
Richard Fuchs
47e9f22442
TT#109800 add special handling for dtx-shift=0
...
Change-Id: I7e99f60476e74eb38b215573eb7d574f09b4c31a
4 years ago
Richard Fuchs
0c2f990561
TT#109800 fix output seq num bug
...
Change-Id: I68bc61982806ba1a48931030fdee26bcd75f1858
4 years ago
Richard Fuchs
00a76df639
TT#109800 refactor DTX timer drift handling
...
Change-Id: I73ba6cf188ca2cf62829539a7e76107c9dcd8989
4 years ago
Richard Fuchs
24f607752c
TT#145450 add support for tracking multiple SSRCs per stream
...
Change-Id: I885fbf7973133af8d7c9184eb0e75f5401309c8e
4 years ago
Richard Fuchs
834eb034af
TT#14008 add packet loss tracking for userspace passthrough
...
Change-Id: Id2ea329333a4236389e2a2b567fba76ffc7cea5f
4 years ago
Richard Fuchs
785ed90bba
TT#14008 eliminate duplicate packets_lost counters
...
This solves inconsistent stat output
Change-Id: Ic4c010fbceb83d1f8d5fffecacb3c65a436bfeae
4 years ago
Richard Fuchs
b8211b0896
TT#136952 fix transcoder output TS after DTMF event
...
Change-Id: I2edea6ff3a7d2331a6e6366bb986135d15af59c3
4 years ago
Richard Fuchs
70665e3aef
TT#89352 add shortcut for "accept any"
...
Change-Id: I49cb88c7097cd51ef5641a6f4b3bf622bb4dc276
4 years ago
Richard Fuchs
f04332915b
TT#91151 add publish/subscribe commands
...
Change-Id: I1842b89efea7fa3af0bd4d045e49da31285cd0e1
4 years ago
Richard Fuchs
413798e43f
TT#132251 implement media silencing
...
Change-Id: I0902bd72e2733b96ff75bcf52856a58c51a750f6
4 years ago
Daniel Hauptmann
4481c773ac
TT#128050 Squashed commit of the following:
...
commit b0c722da69ad088a2eddced12b37c0546a514890
Author: Daniel Hauptmann <dhauptmann@sipwise.com>
Date: Mon Jul 26 15:35:51 2021 +0200
changed flag bit length
in call_interfaces.h changed bit length of reuse_codec from 0 to 1
commit 0313a747532d5987f25fa9edb202aa460bf98dd1
Author: Daniel Hauptmann <dhauptmann@sipwise.com>
Date: Mon Jul 26 15:29:20 2021 +0200
inversed reuse_codec logic
in test-transcode.c and call.c, reuse_codec = 0 (default) will now result in using codec_store_populate instead of codec_store_populate_reuse
commit b876bd686bd30df21a5962aca16fc1c85574f554
Author: Daniel Hauptmann <dhauptmann@sipwise.com>
Date: Mon Jul 26 15:18:19 2021 +0200
adding option to minimalize changes in the codec_store_population
added function codec_store_populate_reuse in codec.c which replaces codec_store_populate but makes fewer changes to the GLists with the old and new codecs
added flag to enable this feature (disabled by default)
commit 6fd0b701c9589b2fae00300801e02a9b5cc397ab
Author: Daniel Hauptmann <dhauptmann@sipwise.com>
Date: Mon Jul 26 14:44:42 2021 +0200
Added Option to minimize change in the codecs
In codec.c added function to populate codec store with the fewest changes between the old and new GList which contains the codecs.
Added new testroutine in test-transcode.c line 1500
Added flag to call_interfaces.h to optionally enable this feature
Change-Id: If58d9a07d114b05dfb75553a87eb4372ae949fbb
commit 3bf554a8fbae7e948343699f40d935693618b764
Author: Daniel Hauptmann <dhauptmann@sipwise.com>
Date: Fri Jul 23 13:58:02 2021 +0200
changing codec-exchange behaviour
in codec.c line 3288 function codec_store_populate now doesnt empty dst and copy new codec from src to it, instead codecs from src will be appended to dst and codec from dst, which are not
being contained by src are being removed
Change-Id: Id6b7ee65595f9cc5c71ef557c7bac5ee38f97cbe
4 years ago
Richard Fuchs
66eff2dbc3
TT#91151 add local codec-accept function
...
Change-Id: Id718a0c90af9cb952a03c6a961c4904933c02cad
4 years ago
Richard Fuchs
94a5feea7d
TT#111150 fix coverity warnings
...
Change-Id: I330d5137d38017641bdda71e8bd014c358c432fb
4 years ago
Richard Fuchs
92fb330a46
TT#91151 implement one-to-many forwarding
...
Change-Id: I80fd35da680d4ad1f4d3d21f14f11363106b9917
4 years ago
Richard Fuchs
1e0765bf6e
TT#91151 tie codec handlers to output media/sink
...
Change-Id: Id577f9afabbe5645a6e220b6450c39a35ff839a9
4 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
4 years ago
Richard Fuchs
9b6c69e524
TT#14008 fix possible null pointer reference
...
closes #1293
Change-Id: I3c503d654cdbd90a1b5fb80bf3bc518b810b4ad5
4 years ago
Richard Fuchs
f2d7372f5a
TT#14008 fix transcoding logic
...
Transcoding should not be decided based on the name of the codec alone,
but primarily on the payload type. First the PT needs to be compared,
then the codec type must be confirmed.
closes #1289
Change-Id: I1a8bffc6d521443aba14d9b4cf1ad4d1e21f1226
4 years ago
Richard Fuchs
891f45b4df
TT#14008 run jitter calculation for passthrough and egress
...
Change-Id: I004e8747d3f3dd83d43251ce93e4d98c3a739ecf
4 years ago
Richard Fuchs
369e64f9a7
TT#14008 add mqtt support
...
Change-Id: Ica4a3e4ef58eadf3feca44ea63f2308103b3146f
4 years ago
Richard Fuchs
5c50ec2bbe
TT#14008 convert RTCP timer and DTX to regular timer
...
Change-Id: I7f9e1e586e237d6b40ee250ed149cb21eae87f95
4 years ago
Richard Fuchs
b110072ae4
TT#14008 deprecate av_init_packet
...
Recent ffmpeg versions have removed AVPacket from the public ABI,
therefore deprecating av_init_packet on statically allocated objects.
The replacement is av_packet_alloc()/av_packet_free().
Change-Id: I5f93fbd19e43413c3328e143cc9147fbdf12d910
4 years ago
Richard Fuchs
3a6a95f833
TT#14008 fix CN passthrough
...
Change-Id: I39c75c6089ca3e4c90ebfd7298a81493066a7784
4 years ago
Richard Fuchs
9b296db449
TT#122401 fix timing issues with fluctuating ptime
...
Change-Id: I77877afcafaf81e357b86eefa62eb3e2279ca75e
4 years ago
Richard Fuchs
d4fbec39d1
TT#122401 return ptime from decoded packets for DTX
...
Change-Id: I382b842406fbee73ec752f6f4f0832736222ef52
4 years ago
Richard Fuchs
4f6af3746b
TT#122401 add early DTX logging context
...
Change-Id: I8ab96e3c0295cce793706226bcb7350816b7109e
4 years ago
Richard Fuchs
64670ffb61
TT#122401 add option to bypass AMR SID
...
Change-Id: I0504d452737573f388941dcca507e3adfd5744c6
4 years ago
Richard Fuchs
ec68dfeb31
TT#122401 add configurable CN method
...
Change-Id: I2aa9901b2a9dcf64563a84d77fa40d23b6c25525
4 years ago
Richard Fuchs
dc38a0e88e
TT#122401 support multiple DTX method per codec
...
Change-Id: I775d56e675255b3dca4227779d1146d8c8806f06
4 years ago
Richard Fuchs
da06ed217b
TT#122401 add ptime to DTX trigger
...
Change-Id: I96aabff398cbe296243d8bdf7499468c6da96352
4 years ago
Richard Fuchs
7c3982ea11
TT#122401 rename "lost packet" functions to DTX
...
Change-Id: Ie39ff68eb0be8bf77f1b6c213df837c08fc869b7
4 years ago
Richard Fuchs
b1409e58e1
TT#122401 correct ptime handling for negative values
...
Change-Id: I3ca96971ec20aa02deb80d2d9613bbaa33c3ae05
4 years ago
Richard Fuchs
a009f76456
TT#14008 support media echo and blackhole
...
Change-Id: I9df4680188709867db2b61d97cc5f1e30c59e0d7
4 years ago
Richard Fuchs
cc9fb063eb
TT#14008 fix possible segfault
...
closes #1265
Change-Id: I7f02a9c2d7f7fbdf830018200fab99d9cf4f425c
4 years ago
Richard Fuchs
4c9b5434bf
TT#122401 actually shut down DTX when out of time
...
Change-Id: Idfb934e439fd4b3f2cbc37a93b3e45a1f5391917
4 years ago
Richard Fuchs
2057d0a367
TT#14008 rate limit log line about missing output context
...
closes #1259
Change-Id: I0777647a8f6974fca845b4c35591bc7539f4891b
4 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
4 years ago
Richard Fuchs
292ba2e72b
TT#111150 convert refcounting functions to macros
...
Convert ssrc_ctx_put() and ssrc_ctx_hold() to macros to aide in
debugging reference leaks. Having them as inline functions hides the
actual location of the refcount changes.
Obsolete ssrc_ctx_get() as returning values from macros is awkward and
it was only used in two locations.
Also fix a function invocation mishap: obj_get_o() should be used
instead of __obj_get() as the latter is an internal macro.
Change-Id: Icc0d63f04b3816632fd120c1c749cafabbbfa331
4 years ago
Richard Fuchs
d5d0a3a994
TT#111150 convert str.len to size_t
...
This makes the type in line with string(3) functions and eliminates some
compiler warnings.
Also update the related bencode data type.
Change-Id: I7ef4024f4b5a0f737b3dbe03bcd078032395bce6
4 years ago
Richard Fuchs
80099bd57c
TT#111150 fix mem leak in codec tracker
...
Change-Id: Ie1a617c7ab82147dfce7973d927843f55906a1a5
4 years ago
Richard Fuchs
aca786b3bf
TT#99621 fix RTCP generation after it has been stopped once
...
Change-Id: I1b4c890cfb3530360da3fa2205356aab95b973fc
4 years ago
Richard Fuchs
a2af257216
TT#98901 fix DTX TS reset detection
...
Change-Id: Ide2d7b2f9fccdd6475969ef5588acbc312ab588a
4 years ago
Richard Fuchs
3ada2ec0c1
TT#98901 handle DTX restarts and TS resets
...
Change-Id: I6eaa14fdaf52e9011125bf8021db8a1816a148c0
4 years ago
Richard Fuchs
7dc55e6378
TT#98901 convert from static DTX delay to dynamic buffer queue
...
Change-Id: Ib6bfdfb9d1967263dc8acb48a812d7e75f9c239b
4 years ago
Richard Fuchs
42dd21d1ec
TT#14008 compensate for negative clock drifts
...
Change-Id: I9c55646565f4b72ddc87cb7ef2b00204590cb15e
4 years ago
Richard Fuchs
a6c7e9403a
TT#14008 fix output of negative fractional numbers
...
Change-Id: I70e6589ac5a61103165127fd3fd5d768641ccfab
4 years ago
Richard Fuchs
64de499865
TT#14008 shut down codec handler when resetting
...
closes #1203
Change-Id: I6d4239e9ef5158a53e5e92a139d26a5b622f8aca
4 years ago
Richard Fuchs
8bea6eb64d
TT#14008 fix possible segfault
...
Change-Id: I90cfb2549f4c7d630897aefc1c34aac6bac1e636
4 years ago
Richard Fuchs
1393dbfc9a
TT#14008 shut down DTX buffer when resetting codec handler
...
closes #1203
Change-Id: Ibc8cc89c8fe152a9dc3172d24d3c27b75463d9bd
4 years ago
Richard Fuchs
ff034ff307
TT#14008 use encoder's codec_def instead of parent handler's
...
closes #1203
Change-Id: I6e39d44aec1ae84595a6da30ab7ab365de4db9ad
4 years ago
Guillem Jover
68797f4195
TT#111150 Mark bit-fields explicitly with as unsigned
...
Whether a bit-field is signed or unsigned is implementation specific, so
we should be explicit about this.
Change-Id: I744df3d24bc08e95fa816ba4135f19cd3a5dcb17
Warned-by: lgtm
4 years ago
Richard Fuchs
af6ef843da
TT#100200 suppress audio packets during a DTMF event
...
Change-Id: I9612d692c3c6945c93b3194760383e67e5bca0e0
4 years ago
Richard Fuchs
7414da5bff
TT#100200 fix timing issue with sending DTMF
...
Change-Id: Iad9cffaf7316420fde85e0eeaffda7409bf49625
4 years ago
Richard Fuchs
083ae4c37f
TT#14008 convert rtcp-fb handling to list
...
closes #1196
Change-Id: I08ec4bf783d2a6bc0e83498e61cf964718a03de4
4 years ago
Richard Fuchs
5c79036f63
TT#14008 fix potential failed assertion
...
Change-Id: Ie4912bd5395802b51293d13c929a02374fa9b0f0
4 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
4 years ago
Richard Fuchs
7101f535da
TT#108003 remove unnecessary null checks
...
Change-Id: I1aeb10662eac2ed0553cf4489d1e1d7a487ad272
4 years ago
Richard Fuchs
225e5add8f
TT#108003 don't consume `pt` before finish using it
...
__rtp_payload_type_add_recv takes ownership of `pt` and potentially
freeds it. Move the call to the end of the code block, after we're done
using it.
Change-Id: I5591cd6b22295ddcd6801e2bbbb381bff403fea8
4 years ago
Richard Fuchs
8abc6b1ca4
TT#91151 convert RTP PT hash tables to direct hashes
...
Change-Id: Id1f464794089f4de4ffce4914703b588ef0045a3
4 years ago
Richard Fuchs
ae82034dfe
TT#99621 add option to disable RTCP generation
...
Change-Id: Ifed6d255dd9d3ec5bc38a79a8f71da59d98243ea
4 years ago
Richard Fuchs
5741f13930
TT#109251 fix redis restore segfault
...
Change-Id: I501a47b065e7b8ff28a3ac157c0ce567f228557f
4 years ago
Richard Fuchs
a6a18233de
TT#102450 fix some timestamping issues
...
Make sure G.722 rate multiplies is applied in the right places
Don't trust encoders to return proper timestamps, but instead track them
explicitly based on frame duration
Change-Id: Ia9fa96cf662da97159fa170c3a3f37516889e1bd
4 years ago
Richard Fuchs
c5ef68897a
TT#76250 consider default number of channel when matching codecs
...
Eliminates duplicated codecs when `opus/48000/1` is used for example
Change-Id: If434e34fe75883544cf6c2c83723af73878ccb20
4 years ago
Richard Fuchs
0898923c38
TT#98901 use correct DTMF codec context
...
Change-Id: Idf66a2528d06830247e71038a9616726afd588c4
4 years ago
Richard Fuchs
fd275acc5c
TT#98901 use DTX buffer for related DTMF events
...
Change-Id: Ia9b83bf7a0989ec2e20ac0d8ea9a1024a8f5d417
4 years ago
Richard Fuchs
e7739d020f
TT#98901 fix TS scaling issues for DTMF
...
Change-Id: I94eceb0946605f270279be519f156ff9c905ce54
4 years ago
Richard Fuchs
6feef3694c
TT#98901 fix some clock skew issues
...
Change-Id: I3d1be408e8b16ec0b3a92fce9c4fe2969a8968c9
4 years ago
Richard Fuchs
0bab726e5d
TT#92250 reset opposite side supp handlers
...
If a supplemental codec was removed by the codec tracker, we must reset
any codec handlers on the opposite side that were using this output
codec.
Change-Id: I7fb9d0ec7a061682fe3b28d9ead14ac263aff7c3
4 years ago
Richard Fuchs
604aa5a9a0
TT#92250 add new reorder-codecs flag
...
Change-Id: I93587b6675540438f81193896ae8d8966b3a12a6
4 years ago
Richard Fuchs
a02134cd06
TT#92250 split up __accept_transcode_codecs
...
Change-Id: I52b602961c2e60f5e73576bcea8e9af47528111a
4 years ago
Richard Fuchs
341f2e04dc
TT#92250 also create codec handlers for synthesised supp PTs
...
Change-Id: Icebd5a5d8f1ab159f7343b8036e36322b1211e8a
4 years ago
Richard Fuchs
30733ec5cd
TT#97301 support granular log levels
...
Change-Id: Ife458bd2449f61113a3e6db1708821570d92dc23
4 years ago
Richard Fuchs
44bc0b90c8
TT#99621 feed locally generated RTCP to stats tracker for MOS
...
Change-Id: I545f306e0f16dc71e20e10ebd419795275f7e3b2
4 years ago
Richard Fuchs
46176f2937
TT#101653 defuse codec tracker so it doesn't remove too many
...
closes #1136
Change-Id: I692cd15daf57bb95c5592099713bdc46338d4321
4 years ago
Richard Fuchs
f861ff7f1e
TT#101653 limit maximum delay in input processing after lost packet
...
Change-Id: Ie55e6e8a23836c97ae0a20f6604b0a80e238a2d8
4 years ago
Richard Fuchs
8517c99af2
TT#101653 detect and adjust for output clock skew
...
Change-Id: I3844a49bf2a8cd416f9cb1ceab6b3ed69732d0e6
4 years ago
Richard Fuchs
d990ad7f1e
TT#101653 more verbose packet scheduler log message
...
Change-Id: I5bab050ca6bb71cb32c6d19631ac63444fbed811
4 years ago
Richard Fuchs
c6208914a3
TT#101653 check receiver side for supplemental transcoding
...
If the receiver is transcoding any supplemental codecs, we must also
transcode all other codecs.
Change-Id: Ia169b2cd78762fbca175a83c2425b1f3caf7ad86
4 years ago
Richard Fuchs
a4d0a35430
TT#101653 eliminate superfluous log messages
...
Change-Id: I1fdeaac3b301e4b6bd70b4ae207505bca1d3c0a3
4 years ago
Richard Fuchs
71d02ff486
TT#101653 retire always-transcode flag
...
Change-Id: I845c4b2f811c2945c9015cdf4570036f3a26b81f
4 years ago
Richard Fuchs
336cb5b280
TT#101653 add codec-consume and codec-accept options
...
Change-Id: Icac343b34881628118f2c36181be66db1c6286e0
4 years ago
Richard Fuchs
73e4ef42eb
TT#101653 add silence detection option
...
Change-Id: I14940fcabdef475ed5dbe74d9af7ebc2af10311b
4 years ago
Richard Fuchs
08cdc4ce5a
TT#101653 generalise handling of supplemental payload types
...
Change-Id: Ic4e2387aa45fc0584184bae907f1bf0cbf6be054
4 years ago
Richard Fuchs
96bd7a6986
TT#100200 track matching CN payload types
...
Change-Id: I6db6c08afee2ca8353e07ace952a630105ad9c25
4 years ago
Richard Fuchs
a15e3a28c9
TT#99621 update RTP stats from kernel for RTCP
...
Change-Id: Iff54c4b8bac9df7c0e58c8dbdc424e6c4faf8780
4 years ago
Richard Fuchs
c12ec6600d
TT#99621 support jitter tracking for RTCP
...
Change-Id: I181e06e904702f37e155990dc597391c17ae4ad0
4 years ago
Richard Fuchs
ba66e5fa3a
TT#99621 support RTCP generation
...
Change-Id: Iff832eaa4148cce4d87d24d4dc3b908dfa361770
4 years ago
Richard Fuchs
54e68942be
TT#104500 better support a=rtcp-fb
...
Link the attribute value to each RTP payload type and only output it if
PT is still present
Also merge PT attribute printing into a single loop
closes #1128
Change-Id: I494498ca806b795045e9e5bbb82174fa4aef8b2b
4 years ago
Richard Fuchs
a642a1e694
TT#98901 avoid PT collisions with asymmetric codec setup
...
Change-Id: Icce014312cef57e9df6dbe4165a67bef617b84c7
4 years ago
Richard Fuchs
440ca5ac0f
TT#92250 fix to keep supp codecs last in the list
...
Change-Id: I3ed4993e6904e8236812d4a11619945c7d386689
4 years ago
Richard Fuchs
16fd8aad15
TT#101653 alter re-invite codec negotiation logic
...
Change-Id: Ic5f68258b6f1f10af1df42ff8b06d82488595c35
4 years ago
Richard Fuchs
9ea1303c6b
TT#100200 fix logic for DTMF detection trigger
...
Change-Id: I814112e7c3c9673f29bde42c05517ad3802de1fb
4 years ago
Richard Fuchs
8ded0076da
TT#101202 fix potential null pointer dereference
...
closes #1110
Change-Id: Ib5e26b40bc55e7c96b59a19ddd7ed6bec2d109db
5 years ago
Richard Fuchs
d362adf9c7
TT#100251 fix redis-restore segfault
...
Change-Id: I8444e6a84ca2b493d6b6ac728e654b8ad5e55252
(cherry picked from commit 90d650c888
)
5 years ago
Richard Fuchs
7a42c0c48c
TT#100251 distinguish between real transcoding and DTMF-related t/c
...
Change-Id: I4643baeb87a7b71e8fc9d23c433fa958c9c11a71
5 years ago
Richard Fuchs
87b4d6f499
TT#100200 always track supplemental codecs
...
Change-Id: Iab65585b0d536772766048c8c0977276b8628c74
5 years ago
Richard Fuchs
38890bdb5b
TT#100200 split out supp codec finding routine
...
Change-Id: If67b2c713918085d5d54c2d74661fc667eb97336
5 years ago
Richard Fuchs
bd53179cd1
TT#100200 properly support multiple supplemental codecs
...
Change-Id: I643fa844b504bf1264d6d2cddebf6d6602c80b35
5 years ago
Richard Fuchs
e16cb57a3e
TT#98901 don't trigger DTX after a SSRC switch
...
Change-Id: Ic1664b3162b5e2caf7b6119ccb5863ad03cf2768
5 years ago
Richard Fuchs
17e22ade36
TT#98901 add limit to length of DTX processing
...
Change-Id: I6fba28b985ff63de6185dccc2ca16f4264a0493d
5 years ago
Richard Fuchs
bae79d3fef
TT#98901 handle AMR SID DTX
...
Change-Id: I418c43e0cef2a70143010235988523f195a3bf5a
5 years ago
Richard Fuchs
fa64e2261e
TT#98901 add codec timers thread
...
Change-Id: If50d2d42ce918961588dfc79793a26ba15416991
5 years ago
Richard Fuchs
6ae33a4b85
TT#98901 split out ssrc locking
...
Change-Id: I7275a25598be6b9a07364573d687fa478addaa4d
5 years ago
Richard Fuchs
014173dc5c
TT#98901 allow packet handler func to consume packet
...
Change-Id: Ic73b1bdab1205d2f3feefe48d83e0ca7e81a726d
5 years ago
Richard Fuchs
d78be3997b
Merge branch 'master' of https://github.com/smititelu/rtpengine into master
...
Change-Id: Id3b571931e4fdb35d7889aa186b46ed967e2f157
5 years ago
Stefan Mititelu
cf1721c930
Fix compilation when transcoding disabled
5 years ago
Richard Fuchs
74fd959ccc
TT#92250 use matching output codec with inject-DTMF
...
Change-Id: I220947872303c534368363e8f980b94bd7d406a5
5 years ago
Richard Fuchs
2502b44ff8
TT#92250 keep supp codecs last when transcoding in reverse
...
Change-Id: I20d9b6e54c38ab92dcbe4e706ed04bca7145c373
5 years ago
Richard Fuchs
4c773366f3
TT#92250 use correct size when freeing codec tracker
...
closes #1091
Change-Id: I10c0cd5449811fafd76415c3d73d845c03a3b26c
5 years ago
Richard Fuchs
3893069fae
TT#92250 allocate strings for hash table storage
...
closes #1091
Change-Id: Ia3384fc3eb640bb6c728ebde6e7bde09968eeb9a
5 years ago
Richard Fuchs
18a3b9df0f
clean up codec stats on shutdown
...
Change-Id: Iac082cda84c62be4a340448ef7c97c2f94e2992f
5 years ago
Richard Fuchs
68ccc52b2b
TT#92250 postpone codec_tracker to final stage
...
Change-Id: I222f705e53fc95f56da40cf927197afcb2ee5107
5 years ago
Richard Fuchs
dbd817a2a6
TT#92250 match codec params during codec matchup
...
Change-Id: Ie1d6ee0d3e55098497d250eb465228c3982f3a4c
5 years ago
Richard Fuchs
ea1ba5837c
TT#92250 also honour single-codec for reverse transcoded codecs
...
Change-Id: I9f2822e70688716e06380879622db4087c02bbb9
5 years ago
Richard Fuchs
653b09ca93
TT#92250 add `single codec` flag
...
Change-Id: I7c84e1f906fec93ed624d2fb4a4d9e9bfc9b4109
5 years ago
Richard Fuchs
241c78c915
TT#92250 add codec-except option
...
Additionally allow `except` and `offer` (and `transcode`) to revert
masked codecs.
Also adds `mask=full` and `strip=full`
closes #1054
Change-Id: I93a2891f2a0b9d324f6804e38f992be73c46211a
5 years ago
Richard Fuchs
2ce7b6476e
TT#92250 better handle supplemental codecs
...
Change-Id: Id6bac3892642d6ae58c71a1781b5d282c48a3a1c
5 years ago
Richard Fuchs
5ac91499fe
TT#92250 keep supplemental codecs last in list when transcoding
...
Change-Id: I3172414fd724e5c5fe9d69b5a78270bed41f83b6
5 years ago
Richard Fuchs
a69a27ec32
TT#91003 copy codec options from decoder to encoder side
...
Change-Id: I4adaff2bc26f789a028b0db9ad3d641811b94961
5 years ago
Richard Fuchs
ed9de316c7
TT#91003 support sending CMR
...
Change-Id: Ief485087b36ce61c80f9d004e77113b31298b250
5 years ago
Richard Fuchs
48d4dc3f7b
TT#91003 support passing extra codec options
...
Change-Id: I8e994f69d4ffc21ab5ab6e8c269e266cb1635b79
5 years ago
Richard Fuchs
6fc9459016
TT#91003 handle AMR CMR
...
Change-Id: I9fdb58359c25b3fcedf25872c98ac8ff582fa488
5 years ago
Richard Fuchs
d0db2cba67
TT#91003 create generic decoder event callback
...
Change-Id: Ie0deda4f452cfc2b219dcc2c5bc1e933b1a36239
5 years ago
Richard Fuchs
25609f74da
TT#91003 support `=` escapes in codec strings
...
Change-Id: Id974f40e12b33e1f299fac15e25decd741c98fb3
5 years ago
Richard Fuchs
ae5b1762b9
TT#88603 don't remove transcoded codecs we added ourselves
...
closes #1058
Change-Id: I469b8e71d5a699c948a30cb2171467c267eec741
5 years ago
Richard Fuchs
38bb6d8608
TT#82651 same as 61acd9761
but in reverse
...
closes #1005
Change-Id: I9107b6de0d4d16347bbf35baafcc298d43f87a68
5 years ago
Richard Fuchs
61acd97619
TT#82651 avoid unnecessary transcoding when DTMF PT is present
...
reported in #1005
Change-Id: I7aefab7fbdca5ddff7012adc2c0a0d8a5b1f6f26
5 years ago
Richard Fuchs
a0d0733291
fix compilation when spandsp is not present
...
closes #1008
Change-Id: I9bcad5f04df0f11cc269345e803aa31440600e77
5 years ago
Richard Fuchs
64e6bf440b
TT#82203 add detailed transcoding stats
...
Change-Id: Ib04767c38b00b17ef5844a9f6649e009270f8f82
5 years ago
Richard Fuchs
2e4617ff86
TT#78307 move SSRC send stats to actual point of sending
...
Change-Id: I54ff4afeb8b3a205a678e9102fb0d8cedee78bae
5 years ago
Richard Fuchs
1055a1e71e
TT#79351 detect and fix payload type collisions
...
fixes #963
Change-Id: I938b1c4b9baed37caf718f7537bbb9c11f7b91e5
5 years ago
Richard Fuchs
d611bbbb74
TT#78501 add T.38 options
...
Change-Id: I4f173f384db18e832c1d24a7015a836ec4215a96
5 years ago
Richard Fuchs
cc7a9a5de8
TT#78307 clean up debug/log messages
...
Change-Id: I8e10be7f297480c01a213c89f06ee93a2215767f
5 years ago
Richard Fuchs
dfae8d6a22
TT#78201 add symmetric-codecs flag
...
closes #953
Change-Id: I848f501709f48927a7156033ccd42eacd742e2d8
5 years ago
Richard Fuchs
d872802ba2
TT#76711 T.38 <> audio gateway
...
Change-Id: I4552e07eee632fa730745410b08c3bf70ab67ab2
5 years ago
Richard Fuchs
468fca8ead
TT#76711 error-proof codec_handler_free()
...
Change-Id: Iaaf67bc21bcb904096a30497e817f5527fdf074d
5 years ago
Richard Fuchs
20607bbabc
TT#76711 generalise media_player mechanism
...
Change-Id: I940bd8c156691418ee0fe7743e9fade59ba8635a
5 years ago
Richard Fuchs
0dc052e2cc
TT#76711 globalise ensure_codec_def function
...
Change-Id: I2183ed5c7882b3e8909584425b1a37dd7da36124
5 years ago
Richard Fuchs
570ad9427d
TT#76711 add handler functions for enc/dec packet
...
Change-Id: I59b26793f233dde367cbe895f36642ebf58a7ab9
5 years ago
Richard Fuchs
9ff3d666b8
TT#76711 split out common parts of codec_handlers_update
...
Change-Id: I3d6d8364d797e14df9dd55a284096038872cca2c
5 years ago
Richard Fuchs
de69c5ed1f
TT#76711 split codec_handler_get for different protocols
...
Change-Id: I67573100108aedb1c8e7fc5920682a7872fd10c2
5 years ago
Richard Fuchs
d847d26e0b
TT#76711 convert codec handlers hash table to direct hash
...
Change-Id: Ieeb8183cd8041a10e311fb4f2fe6b92bbc5ad8bb
5 years ago
Richard Fuchs
be9caa37c7
also check for the output encoder
...
noticed through #941
further fix for 088c58d
Change-Id: I555d1d55d00124c75aa053c4c95abfd98d1ae44f
5 years ago
Richard Fuchs
ab53fdc6f6
Merge branch 'jb_new' of https://github.com/balajeesv/rtpengine
...
Change-Id: I73fc3529938bf65e40f86a4e526c8bf77e199492
5 years ago
Richard Fuchs
088c58d88d
avoid calling a non existant encoder
...
fixes #925
Change-Id: I4743f0e87234fe3ddeb36b7355dcf80f651996c3
5 years ago