Richard Fuchs
40a1741fc1
MT#54294 mandate "const" codec_def_t
...
This type is used as const everywhere except internally, so make it part
of the typedef for brevity.
Change-Id: Ic4afe037b392239a991d5380c6708903011da29e
2 years ago
Richard Fuchs
0114728f47
MT#56008 support variable clock rate factors
...
This makes it possible to have codecs running at variable clock rates
that differ from their RTP clock rates.
Change-Id: Ia2f5effb82eefe8c3028573ba0a6697da28473b1
3 years ago
Richard Fuchs
f976f21d49
MT#56008 switch to fractional clock rate factor
...
Instead of just having an integer multiplier, support a fractional
factor. This allows us to have the RTP clock rate run faster than the
audio clock rate, and not just slower by an integer factor.
Change-Id: I7681cf369c43d8424ca2d2ebeffe932595d271ec
3 years ago
Richard Fuchs
f82e0aebda
MT#55447 introduce proper a=fmtp parsing
...
Parsing out the a=fmtp string has been left up to the codec init
function until now, with the values that resulted from the parsing being
stored only within the codec. Convert this to an explicit method to
parse the a=fmtp string, and introduce a dedicated struct to store the
resulting values.
Functionally this change is a no-op.
Change-Id: Ia84e26d632ed5209b4439fd82c1e4e38850fd024
3 years ago
Richard Fuchs
f0b0feeca7
MT#55283 don't use frame->linesize for output
...
frame->linesize has padding and alignment issues. Explicitly calculate
the buffer size instead.
Change-Id: Ib3fb6bcbd855ca9a3e9b01e131002de06984c292
3 years ago
Richard Fuchs
9ba0dd9aea
TT#14008 fix TLS-send-only w/o recording scenario
...
Provide a standard output format if no other outputs are configured, so
that the decoder has something to work with. Applicable to TLS-send-only
scenarios without recording.
Change-Id: I627bb7af3f3033e1025009c21a4da6991e491dcf
3 years ago
Richard Fuchs
442b26ea48
TT#173752 support per-tag metadata for recording
...
Change-Id: Ie869bf63961e03608e6af1b0a0bf2d746bac2b3b
3 years ago
Richard Fuchs
5d5098efde
TT#122401 keep track of decoder's output format
...
Change-Id: Ib55ba9787b07885cfc9544f93749710ce8cafc91
4 years ago
Richard Fuchs
a5d2837615
TT#118800 add support for `channels` mix mode
...
Change-Id: I00a51c4278ccc8a34c8db271eb08e0a8f48fd28a
4 years ago
Richard Fuchs
7aabd7dddd
TT#14008 fix G.729 recording with bcg729
...
closes #1223
Change-Id: I0a936a6d9fae77e74a9cec4f2ad2e05923da8f69
4 years ago
Richard Fuchs
7101f535da
TT#108003 remove unnecessary null checks
...
Change-Id: I1aeb10662eac2ed0553cf4489d1e1d7a487ad272
4 years ago
Richard Fuchs
7b2503a97c
TT#86103 allow re-use of mix inputs
...
closes #968
Change-Id: Ie6cf6f14b2fd579dc7e3ac9ec27d1d011c4af94c
4 years ago
Richard Fuchs
a6022c9ab9
TT#102450 fix AMR recording
...
closes #1112
Change-Id: If8378fa63ae1827aa3ab4c02d376ee75f34b8b9d
5 years ago
Richard Fuchs
228d822a71
TT#68100 set iLBC encoder and decoder options
...
required to distinguish between 20-ms and 30-ms modes, both for encoding
and decoding
add support for the iLBC mode= format parameter and dynamic mode
switching
closes #854
Change-Id: Icb6f0ec80df86d27681c689c168b24f163a2db06
6 years ago
Richard Fuchs
ac825cc47a
TT#56553 fix double G.722 sample rate issues
...
Fixes missing RTP TS rescaling
Fixes double clock rate adjustment
Fixes sequencer not releasing packets after seq reset
Fixes #748
Change-Id: Ic6021ab6fd781cd291c0aba3e03633f565908c29
6 years ago
Richard Fuchs
26b725d024
TT#45617 add new options to support log markers for sensitive data
...
Change-Id: I2ffa4da4be3a05f043e7991612bbb37d8102d91a
6 years ago
Richard Fuchs
c53040b752
error out on invalid clock rate parsed from RTP format string
...
to debug #720
Change-Id: Ibb2796e49877b7c511583bfc1c3dda0bc6949ec6
6 years ago
Richard Fuchs
3b28460507
TT#52651 Squashed commit of the following:
...
commit 2029144368
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Feb 21 13:12:50 2019 -0500
TT#52651 switch TCP to TLS
Change-Id: Iab6b05d3b5c88553cbd6f531f3189084d9e71995
commit b28e718ee4
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Fri Feb 22 09:20:54 2019 -0500
TT#52651 generalise streambuf interface
Change-Id: I7d5ab8ffe13e52d4dbb1901531cc13fcc173d60d
commit cb2dbd2a92
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Feb 19 09:32:56 2019 -0500
TT#52651 add start/stop forwarding commands and party selection logic
Change-Id: I8ef7e288d3a3e485bd2fa14e1a2407a0c8d94bac
commit 442c48f627
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Feb 14 15:43:23 2019 -0500
TT#52651 produce output for TCP forwarding feature
Change-Id: I18543921577faf655679829684f5af46c0af5054
commit 2ef8028eb2
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Thu Feb 14 10:18:21 2019 -0500
TT#52651 make recording to output files optional
Change-Id: I12c288b965641352658ce3b499c2ee90593e1322
commit 10a58cd7a0
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Feb 13 16:02:16 2019 -0500
TT#52651 strip streambuf into lib and include in recording daemon
Change-Id: I1f6638961e9e767063e0b4e6b5d55d88799366d3
commit 9d3bb5bffc
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Wed Feb 13 15:40:12 2019 -0500
TT#52651 extract/move unrelated old legacy decoder struct members
Change-Id: Iffd79b43180c30a9e128a460f7ba85ba49dedeaf
commit 1bc38e4201
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Feb 12 16:43:42 2019 -0500
TT#52651 config options for forwarding option
Change-Id: Ieaa2ee0e55a0c531158174bc6a534738a64dbee6
commit 06d61cd3dd
Author: Richard Fuchs <rfuchs@sipwise.com>
Date: Tue Feb 12 16:29:52 2019 -0500
TT#52651 move socket.[ch] into lib/
includes necessary re-shuffling of additional code pieces
Change-Id: I74b314ab5936ac8a0eeaff94e084617b59b28d79
Change-Id: I025e8ec86b90ede79565542dff57ec1559d04200
6 years ago
Richard Fuchs
33b262af78
TT#33700 migrate from avresample to swresample
...
closes #465
Change-Id: Ib23ea0dbaf151182360db8ae8e0bc94c93a1743a
7 years ago
Richard Fuchs
4d586f2ec0
TT#28163 fix recording-daemon sample format selection for mixed output
...
reported in #462
Change-Id: Iea7f1e421d15375768a1f76dd36e5ef7726f66b8
7 years ago
Richard Fuchs
7c36492021
TT#28163 fix recording-daemon sample format selection
...
fixes #462
Change-Id: I9ab8340a2552ed4e3c946b085b2f87cc0f90722c
7 years ago
Richard Fuchs
a4a0e34ded
TT#31408 distinguish between codec types
...
Change-Id: I8c7331908fe4a105d9f9139a5f9867b6ae43a646
7 years ago
Richard Fuchs
1746f1d3bf
TT#31405 handle non-media pseudo-codecs (telephone-event)
...
Change-Id: I10a0156d500f49941d7d3d558e54e3c198638c4a
7 years ago
Richard Fuchs
ad4a5d10ef
TT#31198 add resampling support
...
Change-Id: Ib691e62d9ff6fc5663cea275663efc9134d78188
7 years ago
Richard Fuchs
f8aad04948
TT#30404 move portions required for decoding from recording-daemon to lib
...
Change-Id: I4170dd3c93ca3c87954d2c1db5fd84ae071247bd
7 years ago
Richard Fuchs
d510f5efe8
TT#30404 initial support for adding codecs for transcoding
...
Change-Id: I58474ac2daee213d9f11157f61c2a3df90818fbe
7 years ago
Richard Fuchs
23eebfc4d7
Fix frame PTS when decoder returns multiple frames in a row
...
Fixes garbled audio for certain codes (e.g. G.729)
Also adds some additional debug output
Fixes #410
Change-Id: I1dbae2638f1e55bf80bb96549a75b9c4b82d08bf
8 years ago
Richard Fuchs
0e60000001
use cloned frames to avoid race conditions
...
fixes #350
8 years ago
Richard Fuchs
db6a37ac1d
TT#13000 handle output avio context failure
...
Change-Id: If5e1f71cb878d404b813e6f48430880f9753a057
8 years ago
Richard Fuchs
9a5cba48f2
use more precise avcodec/avformat version test macros
...
fixes #331
Change-Id: I9205e91569f55bb09ad89e88e71884453492e03b
8 years ago
Richard Fuchs
fb81332e80
handle multiple different sample types
...
fixes #306
9 years ago
Richard Fuchs
2b72fdec73
fix segfault when resampling fails
...
reported in #306
Change-Id: I08786671d71e5f2919c493a6d529e2ea66efe8aa
9 years ago
Frederic-Philippe Metz
a0c36c59ca
Stricter build dependencies
9 years ago
Richard Fuchs
42216b86f7
TT#5566 more output config options
...
Change-Id: I8d9d1ec1274bbd0ac2e5f86408f4b6c8a60537c2
9 years ago
Richard Fuchs
82be3340d8
TT#5566 align mixed audio's timecodes to each other
...
Change-Id: Ib9f82ba7f56da80a0171b108bccdb56e5334ce94
9 years ago
Richard Fuchs
5a54cc1772
TT#5566 support mixing all audio channels into one output
...
Change-Id: I0ffd8ba39fbda2c27e8bf7e6c36b965897f22c0c
9 years ago
Richard Fuchs
040d1bec10
TT#5566 loop over encoding and decoding as required by the specs
...
Change-Id: I575b0653e00e2bae15cb9bfda564ff7a9a2b7ffe
9 years ago
Richard Fuchs
9ce3522719
TT#5566 support audio resampling and custom mp3 bitrates
...
Change-Id: I71a245c69139815fd30f9f5cc6fb4fff9df8288b
9 years ago
Richard Fuchs
7b21df9510
split output/encoding stuff into separate file
...
Change-Id: Ibb5a16858728dc2803d5c973eb3ce02cee84fc59
9 years ago
Richard Fuchs
a2afd79d68
TT#5566 support mp3 audio output
...
Change-Id: Ife4001f5a9fcf8951c7c2b93d47fa2dcf2750a7b
9 years ago
Richard Fuchs
5c22c3c71a
add additional audio codecs
...
Change-Id: I4d9c62d16fbdb10c3c38fc5d7ec0e9dacf970702
9 years ago
Richard Fuchs
147b8b8e51
TT#5566 force usage of libopus for opus decoding
...
support multichannel audio output
add avcodec log callback
Change-Id: Id649ba2c51b2914420b149aad791cf5c12445008
9 years ago
Richard Fuchs
3b68c26c3c
TT#5566 support different sample rates and fix g722 clock rate
...
Change-Id: Ic26e5ba7e723177ee93a32c4532de6f821ea9150
9 years ago
Richard Fuchs
30dcadab15
TT#5566 rudimentary support for multiple audio codecs
...
Change-Id: I7e473f5d17874641253b4b16c3470851743818e1
9 years ago
Richard Fuchs
cfbe534c1e
TT#5566 deal with lost RTP packets
...
Change-Id: Iec3b832f4a7f400ea63587455b04758cc8ea6197
9 years ago
Richard Fuchs
d7fa0689f9
TT#5566 rudimentary wav file output
...
Change-Id: Icdc97a9dc849bba6ba6add12d0bdd17f8b7712cd
9 years ago