path: root/formats/format_pcm.c
AgeCommit message (Collapse)AuthorFilesLines
2011-07-14Merged revisions 328247 via svnmerge from lmadsen1-0/+4
https://origsvn.digium.com/svn/asterisk/branches/1.10 ................ r328247 | lmadsen | 2011-07-14 16:25:31 -0400 (Thu, 14 Jul 2011) | 14 lines Merged revisions 328209 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r328209 | lmadsen | 2011-07-14 16:13:06 -0400 (Thu, 14 Jul 2011) | 6 lines Introduce <support_level> tags in MODULEINFO. This change introduces MODULEINFO into many modules in Asterisk in order to show the community support level for those modules. This is used by changes committed to menuselect by Russell Bryant recently (r917 in menuselect). More information about the support level types and what they mean is available on the wiki at https://wiki.asterisk.org/wiki/display/AST/Asterisk+Module+Support+States ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@328259 f38db490-d61c-443f-a65b-d21fe96a405b
2011-02-03Asterisk media architecture conversion - no more format bitfieldsdvossel1-22/+22
This patch is the foundation of an entire new way of looking at media in Asterisk. The code present in this patch is everything required to complete phase1 of my Media Architecture proposal. For more information about this project visit the link below. https://wiki.asterisk.org/wiki/display/AST/Media+Architecture+Proposal The primary function of this patch is to convert all the usages of format bitfields in Asterisk to use the new format and format_cap APIs. Functionally no change in behavior should be present in this patch. Thanks to twilson and russell for all the time they spent reviewing these changes. Review: https://reviewboard.asterisk.org/r/1083/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@306010 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-26Merged revisions 279472 via svnmerge from tilghman1-1/+5
https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r279472 | tilghman | 2010-07-25 22:27:06 -0500 (Sun, 25 Jul 2010) | 2 lines Formats need to load before apps, because some apps call ast_format_str_reduce() at load time. ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@279473 f38db490-d61c-443f-a65b-d21fe96a405b
2010-07-20Add load priority order, such that preload becomes unnecessary in most casestilghman1-6/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@278132 f38db490-d61c-443f-a65b-d21fe96a405b
2010-04-20Update supported file extensions in doxygen.lmadsen1-1/+1
Updated the doxygen \arg line after looking at the file for some other Asterisk documentation and noticing they weren't up to date. Thanks to seanbright for looking at the code for me :) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@257988 f38db490-d61c-443f-a65b-d21fe96a405b
2009-12-08Set a module load priority for format modules.russell1-1/+5
A recent change to app_voicemail made it such that the module now assumes that all format modules are available while processing voicemail configuration. However, when autoloading modules, it was possible that app_voicemail was loaded before the format modules. Since format modules don't depend on anything, set a module load priority on them to ensure that they get loaded first when autoloading. This fix applies to trunk, 1.6.1, and 1.6.2. The fix for 1.4 and 1.6.0 will require a different approach since the module load priority functionality is not present in the module API. (issue #16412) Reported by: jiddings git-svn-id: http://svn.digium.com/svn/asterisk/trunk@233692 f38db490-d61c-443f-a65b-d21fe96a405b
2009-11-04Expand codec bitfield from 32 bits to 64 bits.tilghman1-3/+3
Reviewboard: https://reviewboard.asterisk.org/r/416/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@227580 f38db490-d61c-443f-a65b-d21fe96a405b
2008-12-08Add alw as a valid file extension for alaw and ulw as a valid file extension ↵file1-2/+2
for ulaw. (closes issue #14001) Reported by: henrikw Patches: alw.diff uploaded by henrikw (license 627) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@161869 f38db490-d61c-443f-a65b-d21fe96a405b
2008-09-22Merged revisions 143903 via svnmerge from seanbright1-3/+4
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r143903 | seanbright | 2008-09-22 18:49:00 -0400 (Mon, 22 Sep 2008) | 8 lines Use the advertised header size in .au files instead of just assuming they are 24 bytes (the minimum). (closes issue #13450) Reported by: jamessan Patches: pcm-header.diff uploaded by jamessan (license 246) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@143904 f38db490-d61c-443f-a65b-d21fe96a405b
2008-08-07Start moving in changes from my resolve-shadow-warnings branch. Going to doseanbright1-5/+5
this in pieces so the diffs are a little bit smaller and more reviewable. pbx/ and formats/ first. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@136298 f38db490-d61c-443f-a65b-d21fe96a405b
2008-07-08Janitor project to convert sizeof to ARRAY_LEN macro.bbryant1-2/+2
(closes issue #13002) Reported by: caio1982 Patches: janitor_arraylen5.diff uploaded by caio1982 (license 22) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@129045 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-22- revert change to ast_queue_hangup and create ast_queue_hangup_with_causemvanbaak1-2/+2
- make data member of the ast_frame struct a named union instead of a void Recently the ast_queue_hangup function got a new parameter, the hangupcause Feedback came in that this is no good and that instead a new function should be created. This I did. The hangupcause was stored in the seqno member of the ast_frame struct. This is not very elegant, and since there's already a data member that one should be used. Problem is, this member was a void *. Now it's a named union so it can hold a pointer, an uint32 and there's a padding in case someone wants to store another type in there in the future. This commit is so massive, because all ast_frame.data uses have to be altered to ast_frame.data.data Thanks russellb and kpfleming for the feedback. (closes issue #12674) Reported by: mvanbaak git-svn-id: http://svn.digium.com/svn/asterisk/trunk@117802 f38db490-d61c-443f-a65b-d21fe96a405b
2008-03-07Merge changes from team/russell/g722-sillyness ...russell1-8/+19
Fix a number of other places where the number of samples in a G722 frame was not properly handled because of various reasons. main/rtp.c: - When a G722 frame is read from the smoother, the number of samples in the frame must be divided by 2 before being sent out over the network. Even though G722 is 16 kHz, an error in some previous spec has made it so that we have to list the number of samples such as if it was 8 kHz. main/file.c: - When scheduling the next time to expect a frame, take into account that the format of the file we're reading from may not be 8 kHz. codecs/codec_g722.c: - When converting from G722 to slinear, g722_decode() expects its samples parameter to be in the silly (real samples / 2) format. Make it so. - When converting from slinear to G722, properly set the number of samples in the frame to be the number of bytes of output * 2. formats/format_pcm.c: - This format module handles G722, among a number of other formats. However, the read() and seek() functions did not account for the fact that G722 has 2 samples per byte. (closes issue #12130, reported by rickross, patched by me) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@106501 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-29Merged revisions 90155 via svnmerge from tilghman1-1/+1
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r90155 | tilghman | 2007-11-29 11:29:59 -0600 (Thu, 29 Nov 2007) | 5 lines Use of "private" as a field name in a header file messes with C++ projects Reported by: chewbacca Patch by: casper (Closes issue #11401) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@90158 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-22implement the split of file.h and mod_format.hrizzo1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89515 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19format handlers don't need network, lock, channel and scheduler headersrizzo1-6/+0
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@89427 f38db490-d61c-443f-a65b-d21fe96a405b
2007-11-19include "logger.h" and errno.h from asterisk.h - usage shows that theyrizzo1-3/+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 affectrizzo1-5/+1
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-10-31More changes to change return values from load_module functions.qwell1-2/+4
(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-06-29Merged revisions 72705 via svnmerge from russell1-1/+1
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r72705 | russell | 2007-06-29 15:56:18 -0500 (Fri, 29 Jun 2007) | 1 line give format_pcm a more concise destription ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@72706 f38db490-d61c-443f-a65b-d21fe96a405b
2006-10-25Merged revisions 46154 via svnmerge from kpfleming1-5/+21
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r46154 | kpfleming | 2006-10-24 19:26:17 -0500 (Tue, 24 Oct 2006) | 2 lines add passthrough and file format support for G.722 16KHz audio (issue #5084, original patch by andrew, updated by mithraen) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@46155 f38db490-d61c-443f-a65b-d21fe96a405b
2006-09-18u_intXX_t is sillyqwell1-11/+11
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@43236 f38db490-d61c-443f-a65b-d21fe96a405b
2006-08-21merge new_loader_completion branch, including (at least):kpfleming1-16/+3
- restructured build tree and makefiles to eliminate recursion problems - support for embedded modules - support for static builds - simpler cross-compilation support - simpler module/loader interface (no exported symbols) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@40722 f38db490-d61c-443f-a65b-d21fe96a405b
2006-06-07simplify autoconfig include mechanism (make tholo happy he can use lint ↵kpfleming1-4/+4
again :-) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@32846 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-14This rather large commit changes the way modules are loaded. rizzo1-14/+9
As partly documented in loader.c and include/asterisk/module.h, modules are now expected to return all of their methods and flags into a structure 'mod_data', and are normally loaded with RTLD_NOW | RTLD_LOCAL, so symbols are resolved immediately and conflicts should be less likely. Only in a small number of cases (res_*, typically) modules are loaded RTLD_GLOBAL, so they can export symbols. The core of the change is only the two files loader.c and include/asterisk/module.h, all the rest is simply adaptation of the existing modules to the new API, a rather mechanical (but believe me, time and finger-consuming!) process whose detail you can figure out by svn diff'ing any single module. Expect some minor compilation issue after this change, please report it on mantis http://bugs.digium.com/view.php?id=6968 so we collect all the feedback in one place. I am just sorry that this change missed SVN version number 20000! git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20003 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-09rename FR_SET_BUF to AST_FRAME_SET_BUFFERrizzo1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@18639 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-08since the module API is changing, it's a good time to const-ify the ↵kpfleming1-2/+2
description() and key() return values git-svn-id: http://svn.digium.com/svn/asterisk/trunk@18552 f38db490-d61c-443f-a65b-d21fe96a405b
2006-04-04Largely simplify format handlers (for file copy etc.)rizzo1-121/+338
collecting common functions in a single place and removing them from the individual handlers. The full description is on mantis, http://bugs.digium.com/view.php?id=6375 and only the ogg_vorbis handler needs to be converted to the new structure. As a result of this change, format_au.c and format_pcm_alaw.c should go away (in a separate commit) as their functionality (trivial) has been merged in another file. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@17243 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-23silence some more compiler warningskpfleming1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10877 f38db490-d61c-443f-a65b-d21fe96a405b
2006-02-20Bug 5984 - Convert file offsets to 64 bittilghman1-9/+9
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@10579 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-20Fix for formats so they give better output on failure conditions. (#6141)mattf1-19/+24
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@8357 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-05Merged revisions 7819 via svnmerge from kpfleming1-1/+1
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7819 | kpfleming | 2006-01-05 14:52:38 -0600 (Thu, 05 Jan 2006) | 2 lines ensure that variable is initialized ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7820 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-05Merged revisions 7807 via svnmerge from kpfleming1-1/+2
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7807 | kpfleming | 2006-01-04 18:18:46 -0600 (Wed, 04 Jan 2006) | 2 lines doh... fseek() has no useful return value ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7808 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-04Merged revisions 7805 via svnmerge from kpfleming1-3/+3
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7805 | kpfleming | 2006-01-04 17:51:03 -0600 (Wed, 04 Jan 2006) | 2 lines use proper fwrite() parameters and return value ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7806 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-04Merged revisions 7803 via svnmerge from kpfleming1-0/+1
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7803 | kpfleming | 2006-01-04 17:45:34 -0600 (Wed, 04 Jan 2006) | 2 lines return properly after extending file ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7804 f38db490-d61c-443f-a65b-d21fe96a405b
2006-01-04Merged revisions 7799-7800 via svnmerge from kpfleming1-25/+51
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r7799 | kpfleming | 2006-01-04 17:02:38 -0600 (Wed, 04 Jan 2006) | 2 lines make monitoring more tolerant of peers that deliver frames in bursts ........ r7800 | kpfleming | 2006-01-04 17:27:57 -0600 (Wed, 04 Jan 2006) | 2 lines ensure that ulaw/alaw sound files are filled with silence when extended (not zeroes) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7801 f38db490-d61c-443f-a65b-d21fe96a405b
2005-11-29git-svn-id: http://svn.digium.com/svn/asterisk/trunk@7221 ↵kpfleming1-0/+0
2005-11-06issue #5605russell1-0/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6979 f38db490-d61c-443f-a65b-d21fe96a405b
2005-10-26more doxygenification (issue #5513)russell1-2/+2
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6852 f38db490-d61c-443f-a65b-d21fe96a405b
2005-10-16Use FILE * instead of fd for files to support bufferingmarkster1-13/+14
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6801 f38db490-d61c-443f-a65b-d21fe96a405b
2005-09-14update MANY more files with proper copyright/license info (thanks Ian!)kpfleming1-6/+17
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6596 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-23don't take locks when reading usecounts, they are not necessary (bug #4585)kpfleming1-8/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5983 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-07header ordering fixes for FreeBSD (pending a global merge into asterisk.h) ↵kpfleming1-1/+1
(bug #4484) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5876 f38db490-d61c-443f-a65b-d21fe96a405b
2005-06-06more file version tagskpfleming1-7/+12
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5866 f38db490-d61c-443f-a65b-d21fe96a405b
2005-04-21use double-quotes instead of angle-brackets for non-system include files ↵kpfleming1-7/+7
(bug #4058) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5490 f38db490-d61c-443f-a65b-d21fe96a405b
2005-03-29Simplify endianness and fix for unaligned reads (bug #3867)markster1-9/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5295 f38db490-d61c-443f-a65b-d21fe96a405b
2004-12-18Fix comment issues (bug #3089)markster1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4479 f38db490-d61c-443f-a65b-d21fe96a405b
2004-12-14Merge slimey's Solaris compatibility (with small mods) (bug #2740)markster1-0/+4
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4446 f38db490-d61c-443f-a65b-d21fe96a405b
2004-11-13Updates from char * to const char * + german syntax + enumeration (bug #2780)markster1-1/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@4229 f38db490-d61c-443f-a65b-d21fe96a405b
2004-08-25fixed a use count buganthm1-0/+1
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@3657 f38db490-d61c-443f-a65b-d21fe96a405b