aboutsummaryrefslogtreecommitdiffstats
path: root/codecs
AgeCommit message (Collapse)AuthorFilesLines
2008-01-11At one point during working on this module, I had the lin/lin16 versions of therussell1-34/+2
framein callbacks different. However, they are now the same again, so remove the duplicate code and use the same functions for the lin/lin16 versions. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@98218 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-11 - Fix the last set of places where incorrect assumptions were made about therussell1-5/+9
sample length with g722. It is _2_ samples per byte, not 1. This was all over the place, and I believed it, and it is what caused me to take so long to figure out what was broken. - Update copyright information on codec_g722. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@98081 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-10Fix various issues in codec_g722.russell1-15/+50
- The most common fix being made here is to fix all of the places where the number of output samples and output bytes gets updated in the translator state structure. - Fix a number of other places where the number of samples provided as an initialization value to a struct was incorrect. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@97975 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-10Fix the buffer_samples value. For signed linear, the number of samples neededrussell1-1/+1
to fill the buffer is half the buffer size. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@97974 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-10Fix this so it doesn't force codec_g722 to get relinked every timerussell1-3/+3
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@97652 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-10Ensure that libg722.a gets rebuilt if one of the files changesrussell1-0/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@97650 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-09Merged revisions 97491 via svnmerge from kpfleming1-2/+4
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r97491 | kpfleming | 2008-01-09 11:21:14 -0600 (Wed, 09 Jan 2008) | 2 lines report the same message whether Zaptel does not have transcoder support loaded or no transcoders were found ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@97495 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-02and now just to keep the libresample party going... if the functions from ↵kpfleming2-4/+1
libresample are going to be in the main Asterisk binary, it makes sense for the header that defines them to be available without any special CFLAGS and to out-of-tree modules building against /usr/include/asterisk git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95894 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-02go back to including libresample in the main Asterisk binary, but this time ↵kpfleming2-5/+1
including a small hack to ensure that it does get linked in (and also modify the strip_nonapi script to leave the resample_<foo> symbols alone) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95816 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-02Instead of linking libresample into the main Asterisk binary, build it asrussell2-4/+5
res_resample, and mark codec_resample as dependent upon res_resample. This prevents the linker from optimizing away libresample, and also makes it so the libresample code isn't linked in to multiple places. (I have another module in a branch that needs it, too.) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95697 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-01Fix building of codec_resample on platforms other then Cygwin. On everything ↵file1-1/+3
else it actually gets built after codec_resample, so you can't exactly link it in since it doesn't exist. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95648 f38db490-d61c-443f-a65b-d21fe96a405b
2008-01-01make codec_resample build on __CYGWIN__, and make it load on FreeBSDrizzo2-1/+2
(and probably other systems as well). Both need libresample.a to be specified in the linking phase, and cygwin needs <float.h> as other BSD. The checks for OS-specific headers should really be moved to some common header though. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95625 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-31Use float.h to fix the build on FreeBSD. Also, add some other platforms asrussell1-1/+1
they are likely the same. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95550 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-31Merge changes from team/russell/codec_resamplerussell3-0/+279
This commit imports libresample for use in Asterisk. It also adds a new codec module, codec_resample. This module uses libresample to re-sample signed linear audio between 8 kHz and 16 kHz. It also provides an alternative for converting between 16 kHz G.722 and 8 kHz signed linear when using G.722, which will likely be useful as some people have complained about volume issues when the current codec_g722 converts to 8 kHz signed linear. But, to test this, you will have to disable the g722-to-slin and g722-to-slin16 translators in codec_g722.c. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@95501 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-27I went looking for where we downloaded the g722 implementation and came acrossrussell1-0/+3
these two links. So, I'm adding them so they are available for reference later. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@94877 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-21codecs.conf really shouldn't be mandatory.. it never had been before, so ↵qwell9-12/+12
let's go back to being optional. A big "thank you" to pnlarsson on IRC for allowing me access to his system to debug this. Closes issue #11584. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@94541 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-17Merged revisions 93180 via svnmerge from kpfleming1-1/+3
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r93180 | kpfleming | 2007-12-16 22:44:51 -0800 (Sun, 16 Dec 2007) | 23 lines In http://lists.digium.com/pipermail/asterisk-dev/2007-December/031145.html, rizzo brought up some issues related to the way that the metadata required for menuselect and the rest of the build system is extracted from the source files. Since I had a few hours to kill on an airplane today, I decided to improve this situation... so now the system caches the extracted metadata and uses it to build the menuselect 'tree' as much as it can. The result of this is that when a single source file is changed, only the metadata for that file needs to be extracted again, and the rest is used from the cache files. I also reduced the number of forked processes required to do the metadata extraction; it was actually possible to do most of what we needed in the Makefiles themselves without using any shell scripts at all! On my laptop, these changes resulted in an 80% decrease in the time required for the 'menuselect.makeopts' automatic check to occur after editing a single source file. While doing this work I also cleaned up a few minor things in the Makefiles, adding a check for 'awk' to the configure script and changed all remaining places we use 'grep' or 'awk' to use the ones found by the configure script, and changed the 'prep_tarball' script to build the menuselect metadata so that tarballs of Asterisk will include it and won't require the user to wait while it is extracted after unpacking. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@93184 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-14Solaris compat fixestilghman1-1/+0
Reported by: snuffy Patch by: snuffy,tilghman (Closes issue #11315) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@93090 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-10Put into Makefile.moddir_rules the common instructions used torizzo1-9/+1
generate loadable and embedded module lists. Individual Makefiles now are a lot simpler, possibly as simple as this: -include $(ASTTOPDIR)/menuselect.makeopts $(ASTTOPDIR)/menuselect.makedeps MODULE_PREFIX=cdr_ all: _all include $(ASTTOPDIR)/Makefile.moddir_rules and also more flexible because in a single directory we can combine various types of modules (app_, cdr_, func_, ... ) by simply listing them in the MODULE_PREFIX variable. The individual Makefiles can also create list of modules to be excluded by listing them in the variablel MODULE_EXCLUDE (see an example in channels/Makefile). With this change it becomes trivial to integrate a directory with locally created/modified sources into the main build. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@92082 f38db490-d61c-443f-a65b-d21fe96a405b
2007-12-09normalize subdirs' Makefile by using ASTTOPDIR and not .. to referencerizzo1-1/+1
the top level directory. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@92022 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22remove a number of #include <fcntl.h> which are eitherrizzo10-19/+0
useless or done elsewhere git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89516 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19remove some useless includes from codecsrizzo11-37/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89428 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19include "logger.h" and errno.h from asterisk.h - usage shows that theyrizzo11-12/+0
were included almost everywhere. Remove some of the instances. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89424 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-16Start untangling header inclusion in a way that does not affectrizzo11-44/+0
build times - tested, there is no measureable difference before and after this commit. In this change: use asterisk/compat.h to include a small set of system headers: inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h, stdlib.h, alloca.h, stdio.h Where available, the inclusion is conditional on HAVE_FOO_H as determined by autoconf. Normally, source files should not include any of the above system headers, and instead use either "asterisk.h" or "asterisk/compat.h" which does it better. For the time being I have left alone second-level directories (main/db1-ast, etc.). git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89333 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-08improve linked-list macros in two ways:kpfleming1-1/+1
- the *_CURRENT macros no longer need the list head pointer argument - add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89106 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-06Commit some cleanups to the format type code.tilghman1-1/+75
- Remove the AST_FORMAT_MAX_* types, as these are consuming 3 out of our available 32 bits. - Add a native slin16 type, so that 16kHz codecs can translate without losing resolution. (This doesn't affect anything immediately, until another codec has wb support.) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89071 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-06Merged revisions 89046 via svnmerge from qwell1-2/+1
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r89046 | qwell | 2007-11-06 13:09:30 -0600 (Tue, 06 Nov 2007) | 4 lines Correctly set the total number of channels from a zaptel transcoder board. SPD-49, patch by Matthew Nicholson. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89047 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-31More changes to change return values from load_module functions.qwell11-81/+132
(issue #11096) Patches: codec_adpcm.c.patch uploaded by moy (license 222) codec_alaw.c.patch uploaded by moy (license 222) codec_a_mu.c.patch uploaded by moy (license 222) codec_g722.c.patch uploaded by moy (license 222) codec_g726.c.diff uploaded by moy (license 222) codec_gsm.c.patch uploaded by moy (license 222) codec_ilbc.c.patch uploaded by moy (license 222) codec_lpc10.c.patch uploaded by moy (license 222) codec_speex.c.patch uploaded by moy (license 222) codec_ulaw.c.patch uploaded by moy (license 222) codec_zap.c.patch uploaded by moy (license 222) format_g723.c.patch uploaded by moy (license 222) format_g726.c.patch uploaded by moy (license 222) format_g729.c.patch uploaded by moy (license 222) format_gsm.c.patch uploaded by moy (license 222) format_h263.c.patch uploaded by moy (license 222) format_h264.c.patch uploaded by moy (license 222) format_ilbc.c.patch uploaded by moy (license 222) format_jpeg.c.patch uploaded by moy (license 222) format_ogg_vorbis.c.patch uploaded by moy (license 222) format_pcm.c.patch uploaded by moy (license 222) format_sln.c.patch uploaded by moy (license 222) format_vox.c.patch uploaded by moy (license 222) format_wav.c.patch uploaded by moy (license 222) format_wav_gsm.c.patch uploaded by moy (license 222) res_adsi.c.patch uploaded by eliel (license 64) res_ael_share.c.patch uploaded by eliel (license 64) res_clioriginate.c.patch uploaded by eliel (license 64) res_convert.c.patch uploaded by eliel (license 64) res_indications.c.patch uploaded by eliel (license 64) res_musiconhold.c.patch uploaded by eliel (license 64) res_smdi.c.patch uploaded by eliel (license 64) res_speech.c.patch uploaded by eliel (license 64) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@87889 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-29clean up assembler and preprocessor files if they are here tookpfleming3-0/+3
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@87467 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-22Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former ↵qwell1-1/+1
didn't make much sense git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86820 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-19Convert NEW_CLI to AST_CLI.qwell1-1/+1
Closes issue #11039, as suggested by seanbright. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86536 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-19More changes to NEW_CLI.qwell1-26/+21
Also fixes a few cli messages and some minor formatting. (closes issue #11001) Reported by: seanbright Patches: newcli.1.patch uploaded by seanbright (license 71) newcli.2.patch uploaded by seanbright (license 71) newcli.4.patch uploaded by seanbright (license 71) newcli.5.patch uploaded by seanbright (license 71) newcli.6.patch uploaded by seanbright (license 71) newcli.7.patch uploaded by seanbright (license 71) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86534 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-18Merged revisions 86296 via svnmerge from russell1-0/+5
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r86296 | russell | 2007-10-18 10:45:55 -0500 (Thu, 18 Oct 2007) | 3 lines Execute the RELEASE operation on transcoder channels in the destroy callback. (patch from jsloan) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@86297 f38db490-d61c-443f-a65b-d21fe96a405b
2007-10-01The trunk version of this patch also includes a couple more small clean fixesrussell1-0/+1
from IgorG. Merged revisions 84170 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r84170 | russell | 2007-10-01 10:00:56 -0500 (Mon, 01 Oct 2007) | 3 lines Remove another file in "make clean". (closes issue #10814, paravoid) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@84171 f38db490-d61c-443f-a65b-d21fe96a405b
2007-09-11Merged revisions 82265 via svnmerge from file2-2/+8
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r82265 | file | 2007-09-11 18:41:49 -0300 (Tue, 11 Sep 2007) | 4 lines (closes issue #10679) Reported by: andrew Build under dev mode when K6OPTS is enabled. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@82266 f38db490-d61c-443f-a65b-d21fe96a405b
2007-08-31Merged revisions 81405 via svnmerge from kpfleming1-0/+70
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r81405 | kpfleming | 2007-08-31 10:51:45 -0500 (Fri, 31 Aug 2007) | 2 lines add missing "transcoder show" (and deprecated "show transcoder") CLI commands that were in 1.2 but never added to 1.4 ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@81408 f38db490-d61c-443f-a65b-d21fe96a405b
2007-08-20This change set fixes bug 8126 in trunk. It is implemented via compile time ↵murf2-20/+20
options, activated via the menuselect stuff, which defaults to the old way. non-zero sample data added. Translate tables expressed in microseconds instead of milliseconds, with 5-digit data now instead of 3, giving 2 more digits of precision. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@80113 f38db490-d61c-443f-a65b-d21fe96a405b
2007-08-16Don't reload a configuration file if nothing has changed.tilghman9-51/+60
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@79747 f38db490-d61c-443f-a65b-d21fe96a405b
2007-07-26Do a massive conversion for using the ast_verb() macrorussell9-54/+28
(closes issue #10277, patches by mvanbaak) Basically, this changes ... if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3, "Something\n"); to ... ast_verb(3, "Something\n"); git-svn-id: http://svn.digium.com/svn/asterisk/trunk@77299 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-14Add a massive set of changes for converting to use the ast_debug() macro.russell1-1/+1
(issue #9957, patches from mvanbaak, caio1982, critch, and dimas) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@69327 f38db490-d61c-443f-a65b-d21fe96a405b
2007-06-06Issue 9869 - replace malloc and memset with ast_calloc, and other coding ↵tilghman2-4/+4
guidelines changes git-svn-id: http://svn.digium.com/svn/asterisk/trunk@67864 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-24Merged revisions 65877 via svnmerge from qwell2-0/+2
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r65877 | qwell | 2007-05-24 11:14:02 -0400 (Thu, 24 May 2007) | 4 lines Fix handling of zero-length frames when a codec is capable of native PLC. Issue 9183, patch by Mihai. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@65903 f38db490-d61c-443f-a65b-d21fe96a405b
2007-05-14Merged revisions 64278 via svnmerge from file1-0/+1
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r64278 | file | 2007-05-14 14:48:33 -0400 (Mon, 14 May 2007) | 2 lines Properly set datalen field when doing PLC in codec_speex. (issue #9722 reported by mihai) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@64279 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-27Merged revisions 62174 via svnmerge from qwell1-1/+1
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r62174 | qwell | 2007-04-27 11:17:46 -0500 (Fri, 27 Apr 2007) | 11 lines Merged revisions 62173 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r62173 | qwell | 2007-04-27 11:16:16 -0500 (Fri, 27 Apr 2007) | 3 lines This transcoder message needn't be a NOTICE. I've seen it cause confusion more than a few times. ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@62175 f38db490-d61c-443f-a65b-d21fe96a405b
2007-04-06Merged revisions 60399 via svnmerge from kpfleming1-1/+0
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r60399 | kpfleming | 2007-04-06 09:49:51 -0500 (Fri, 06 Apr 2007) | 10 lines Merged revisions 60398 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r60398 | kpfleming | 2007-04-06 09:41:37 -0500 (Fri, 06 Apr 2007) | 2 lines remove undocumented 'cardsmode' parameter and stop searching for transcoders during reload() ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@60400 f38db490-d61c-443f-a65b-d21fe96a405b
2007-03-06Sync codec_zap with the one that is in the 1.4 branch so that it can actuallyrussell1-183/+29
build here, too. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@58101 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-24Creating new doxygen macro "\extref" to create page that lists oej1-1/+4
external libraries and URLs to these. Please help me add these references. We might want to create a similar macro "\linuxpackage" to list the needed Linux packages in popular distributions. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@56647 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-18Return GSM to a state where it actually builds under dev mode.file1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@55352 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-17Merged revisions 55050 via svnmerge from russell1-2/+2
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r55050 | russell | 2007-02-16 18:31:42 -0600 (Fri, 16 Feb 2007) | 3 lines Filter out yet another architecture that does not work with the optimizations in the built-in libgsm. (issue 8637, ovi) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@55051 f38db490-d61c-443f-a65b-d21fe96a405b
2007-02-14I don't know how it worked earlier, but valgrindpcadach1-2/+2
produces core every time you try to load codec_g722. Fixed. ;-) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@54325 f38db490-d61c-443f-a65b-d21fe96a405b