Commit Graph

48 Commits

Author SHA1 Message Date
Justin Ruggles 764852d653 alacenc: use AVCodec.encode2() 2012-02-11 12:49:23 -05:00
Justin Ruggles bee80054f7 alacenc: cosmetics: indentation 2012-02-11 12:49:22 -05:00
Justin Ruggles b6e8ff72ea alacenc: consolidate bitstream writing into a single function.
Simplifies use of verbatim mode.
2012-02-11 12:49:22 -05:00
Justin Ruggles b590f3a7bf alacenc: only encode frame size in header for a final smaller frame
Otherwise it is not needed because it matches the frame size as encoded in
the extradata.
2012-02-11 12:49:22 -05:00
Justin Ruggles ba821b098b alacenc: store current frame size in AlacEncodeContext.
This avoids an indirection and will simplify implementation of encode2()
2012-02-11 12:49:22 -05:00
Justin Ruggles 65d15aec77 alacenc: return AVERROR codes in alac_encode_frame() 2012-02-11 12:49:22 -05:00
Justin Ruggles 302daf5800 alacenc: calculate a new max frame size for the final small frame
Gives a better estimate of buffer requirements and a better decision of
whether or not to use verbatim mode.
2012-02-11 12:49:22 -05:00
Justin Ruggles fc9cf0b2a6 alacenc: pretty-printing and other cosmetics 2012-02-11 12:49:22 -05:00
Justin Ruggles 51c2483862 alacenc: fix error handling and potential memleaks in alac_encode_init() 2012-02-11 12:49:22 -05:00
Justin Ruggles 6e63228323 alacenc: do not set coded_frame->key_frame
It is already set in avcodec_alloc_frame()
2012-02-11 12:49:21 -05:00
Justin Ruggles 64fe3eaeb3 alacenc: do not set bits_per_coded_sample
encoded ALAC does not have a fixed number of bits per sample
2012-02-11 12:49:21 -05:00
Justin Ruggles 43a4cb070b alacenc: remove unneeded frame_size check in alac_encode_frame() 2012-02-11 12:49:21 -05:00
Diego Biurrun 32f3c541bc doxygen: Do not include license boilerplates in Doxygen comment blocks. 2012-02-06 19:39:24 +01:00
Justin Ruggles bb63475aec alacenc: implement the 2-pass prediction type.
This isn't used by the reference encoder, but it is supported by the decoder.
2012-01-03 13:15:23 -05:00
Justin Ruggles 149e1b0468 alacenc: do not generate invalid multi-channel ALAC files 2012-01-03 13:15:23 -05:00
Nathan Adil Maxson d0fd6fc201 Cleaned up alacenc.c
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-01 20:14:21 -08:00
Anton Khirnov ec6402b7c5 lavc: use designated initialisers for all codecs.
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Anton Khirnov 188dea1dbf lavc: move some flac-specific options to its private context. 2011-05-10 07:42:33 +02:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Diego Elio Pettenò d36beb3f69 Add ff_ prefix to data symbols of encoders, decoders, hwaccel, parsers, bsf.
None of these symbols should be accessed directly, so declare them as
hidden.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-26 16:08:45 +00:00
Justin Ruggles 77a78e9bdc Separate window function from autocorrelation.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-21 19:59:08 +00:00
Justin Ruggles 56f8952b25 Move lpc_compute_autocorr() from DSPContext to a new struct LPCContext.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-21 19:58:59 +00:00
Stefano Sabatini 5d6e4c160a Replace deprecated symbols SAMPLE_FMT_* with AV_SAMPLE_FMT_*, and enum
SampleFormat with AVSampleFormat.

Originally committed as revision 25730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 11:04:40 +00:00
Reimar Döffinger edac49daf5 Use "const" qualifier for pointers that point to input data of
audio encoders.
This is purely for clarity/documentation purposes.

Originally committed as revision 24481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 13:59:49 +00:00
Justin Ruggles 23940f1405 Add AVCodecContext.lpc_type and Add AVCodecContext.lpc_passes fields.
Add AVLPCType enum.
Deprecate AVCodecContext.use_lpc.

Originally committed as revision 24199 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 16:56:20 +00:00
Jai Menon a7fc91468c Remove useless header inclusion.
Originally committed as revision 22851 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-12 13:21:33 +00:00
Jai Menon 3ffdd09a7a alacenc : Report supported input sample formats.
Originally committed as revision 22829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-10 17:32:41 +00:00
Stefano Sabatini 72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Jai Menon 215dab5fee alacenc : use private compression_level value consistently.
Originally committed as revision 20261 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-17 08:04:33 +00:00
Jai Menon a0992374ee alacenc : Move some code around for clarity.
Originally committed as revision 20256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 16:50:15 +00:00
Justin Ruggles 9a9964c50e cosmetics: reindent and line wrap after last commit
Originally committed as revision 20174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-05 21:33:50 +00:00
Justin Ruggles d6eee9f3e9 alacenc: add a fixed LPC coefficient mode as compression level 1. old
compression level 1 is now compression level 2 and is still the default.

Originally committed as revision 20173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-05 21:27:36 +00:00
Reimar Döffinger 43d7c6118d put_bits can only reliably write up to 31 bit bits, above it relies on
undefined shift behaviour.
Document this, fix the assert and add a put_bits32 to handle writing 32
bits and use that where necessary.

Originally committed as revision 20124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-01 15:40:29 +00:00
Jai Menon 2370338850 Fix max_coded_frame_size computation to account for byte alignment.
Fixes issue 1386.

Originally committed as revision 19859 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 15:06:04 +00:00
Stefano Sabatini 9106a698e7 Rename bitstream.h to get_bits.h.
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Jai Menon 309a8bb8a1 alacenc : cosmetics : remove misleading comment
Originally committed as revision 18493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 15:11:40 +00:00
Stefano Sabatini b275500706 Split bitstream.h, put the bitstream writer stuff in the new file
put_bits.h.

Originally committed as revision 18461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 08:35:26 +00:00
Benoit Fouet 4f46099b90 Use sign_extend().
On behalf of Jai.

Originally committed as revision 17759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 13:11:10 +00:00
Jai Menon 3d5e1bfb20 Fix an overflow in the predictor.
fixes issue 636
Patch by Jai.

Originally committed as revision 16007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-05 07:58:31 +00:00
Luca Abeni dd1c8f3e6e Bump Major version, this commit is almost just renaming bits_per_sample to
bits_per_coded_sample but that cannot be done seperately.
Patch by Luca Abeni
Also reset the minor version and fix the forgotton change to libfaad.
Note: The API/ABI should not be considered stable yet, there still may
be a change done here or there if some developer has some cleanup ideas and
patches!

Originally committed as revision 15262 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-08 14:24:59 +00:00
Jai Menon ec6cda8c6e alacenc : perform decorrelation only for stereo samples
Originally committed as revision 14904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-22 14:57:35 +00:00
Jai Menon a1ab56c5a8 alacenc: compare against ALAC_MAX_LPC_ORDER instead of MAX_LPC_ORDER
Originally committed as revision 14847 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-19 18:45:00 +00:00
Jai Menon e13894e80e alacenc: last few hunks approved by michael
Originally committed as revision 14845 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-19 17:20:41 +00:00
Ramiro Polla cc940caf4d alacenc: Use user-specified min and max prediction order.
Originally committed as revision 14844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-19 16:12:05 +00:00
Ramiro Polla 0d962ecb70 Import more OKed parts of ALAC encoder from GSoC repo.
Originally committed as revision 14843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-19 16:07:58 +00:00
Ramiro Polla ca04826627 Import more ok'd parts of ALAC encoder from GSoC repo.
Originally committed as revision 14820 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 22:47:40 +00:00
Ramiro Polla 83e92ab6b8 alacenc: NULL_IF_CONFIG_SMALL long_name.
Originally committed as revision 14801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 12:25:01 +00:00
Ramiro Polla 6b93147684 Import ok'd parts of ALAC encoder from GSoC repo.
Originally committed as revision 14798 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 04:36:06 +00:00