Anton Khirnov
759001c534
lavc decoders: work with refcounted frames.
2013-03-08 07:38:30 +01:00
Justin Ruggles
b8e9c99ef1
flac: decode directly to the user-provided AVFrame
2013-02-12 12:21:22 -05:00
Tim Walker
41244e13d5
flac: don't check the number of channels before setting the channel layout.
...
This is unnecessary, as ff_flac_set_channel_layout can handle any number of channels.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-02-06 21:43:05 +01:00
Justin Ruggles
aef5150719
flac: only set channel layout if not previously set or on channel count change
...
Fixes Bug 402
2012-12-22 01:35:28 -05:00
Anton Khirnov
594d4d5df3
lavc: add a wrapper for AVCodecContext.get_buffer().
...
It will be useful in the upcoming transition to refcounted AVFrames.
2012-12-04 21:41:59 +01:00
Justin Ruggles
a903f8f087
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
...
Also reorder some other #include when applicable.
2012-11-11 13:35:12 -05:00
Justin Ruggles
99d8686357
flacdec: do not warn on sample rate change
2012-11-01 11:29:16 -04:00
Justin Ruggles
90fcac0e95
flacdec: allow mid-stream channel layout change
...
Although the libFLAC decoder cannot handle such a change, it is allowed by the
spec and could potentially occur with live streams.
2012-11-01 11:29:16 -04:00
Justin Ruggles
268f8ba112
flacdec: use av_samples_* functions for sample buffer allocation
...
Also, return an error on allocation failure.
2012-11-01 11:29:16 -04:00
Diego Biurrun
8f4c414df6
Improve wording and spelling of av_log_missing_feature messages.
2012-10-23 10:28:40 +02:00
Diego Biurrun
717addecad
Use proper return values in case of missing features
2012-10-12 20:56:54 +02:00
Mans Rullgard
44c56a1617
flacdec: simplify sample buffer handling
...
Pass pointer to sample buffer instead of channel number to various
functions called from decode_subframe(). Also simplify a few
expressions within this function.
2012-08-21 11:23:13 +01:00
Mans Rullgard
ea98507db0
flacdec: simplify loop in decode_residuals()
2012-08-21 11:23:13 +01:00
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
2012-08-07 16:00:24 +02:00
Mans Rullgard
bf1cf4d5a5
flacdec: reverse lpc coeff order, simplify filter
...
Reversing the lpc coefficient order simplifies indexing in
the filter.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-19 10:21:32 +01:00
Diego Biurrun
8eea8fdceb
flac: Move flac functions shared between libraries to flac common code
...
This fixes a number of flac-related build dependencies.
2012-07-12 11:11:23 +02:00
Mans Rullgard
784514a4a8
flacdec: add planar output support
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-05 21:57:51 +01:00
Mans Rullgard
25accf93ad
flacdec: move lpc filter to flacdsp
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 12:24:30 +01:00
Mans Rullgard
4a8528349f
flacdec: split off channel decorrelation as flacdsp
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 12:24:30 +01:00
Mans Rullgard
87466f8124
flacdec: factor out code setting avctx->sample_fmt
2012-07-04 03:34:34 +01:00
Mans Rullgard
93e7ef9a24
flacdec: allocate sample buffers with av_malloc
...
The buffers are only allocated once, although it can happen from
any of a few different places, so there is no need to use realloc.
Using av_malloc() ensures they are aligned suitably for SIMD
optimisations.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-04 03:30:01 +01:00
Mans Rullgard
0da301e105
flacdec: remove curr_bps from FLACContext
...
This value does not need to be persistent across calls.
2012-07-04 03:29:29 +01:00
Mans Rullgard
4719ea7e1e
flacdec: remove redundant setting of avctx->sample_fmt
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-02 22:13:32 +01:00
Martin Storsjö
00c3b67b8a
cosmetics: Align codec declarations
...
Also break some long lines, remove codec function placeholder comments
and add spaces in sample/pixel format lists.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-04-06 22:37:38 +03:00
Justin Ruggles
62d5f9e5ca
flacdec: set channel_layout based on channel count
...
Channel layouts are specified in the FLAC format description at
http://flac.sourceforge.net/format.html
fixes Bug 209
2012-02-22 20:14:00 -05:00
Ronald S. Bultje
52e4018be4
flac: fix infinite loops on all-zero input or end-of-stream.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-16 17:08:29 -08:00
Diego Biurrun
a8798c7eb9
Drop unnecessary av_uninit attributes from some variable declarations.
...
Recent versions of gcc (4.4+) no longer give false positive warnings.
2012-02-13 19:20:52 +01:00
Justin Ruggles
0eea212943
Add avcodec_decode_audio4().
...
Deprecate avcodec_decode_audio3().
Implement audio support in avcodec_default_get_buffer().
Implement the new audio decoder API in all audio decoders.
2011-12-02 17:40:40 -05:00
Justin Ruggles
5bd0343bee
flacdec: use av_get_bytes_per_sample() to get sample size
2011-10-29 16:05:25 -04:00
Anton Khirnov
d9cca9fc6a
lavc: use avpriv_ prefix for some flac symbols used in lavf.
...
Specifically, ff_flac_parse_streaminfo, ff_flac_is_extradata_valid and
ff_flac_parse_block_header
2011-10-20 21:06:58 +02:00
Justin Ruggles
4c5e7b27d5
flacdec: fix buffer size checking in get_metadata_size()
...
Adds an additional check before reading the next block header and avoids a
potential integer overflow when checking the metadata size against the
remaining buffer size.
2011-09-26 15:29:45 -04: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
Diego Biurrun
ad4cd0c2a4
doxygen: use Doxygen markup for authors and web links where appropriate
2011-07-15 02:01:21 +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
Michael Chinen
a4151444bd
Define FLAC_MIN_FRAME_SIZE and use it in the FLAC decoder.
...
Patch by Michael Chinen [mchinen at gmail]
Originally committed as revision 25916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 14:58:34 +00:00
Michael Chinen
60a684939a
Simplify the FLAC decoder now that it no longer has to parse arbitrary raw FLAC
...
data thanks to the recently added FLAC parser.
Patch by Michael Chinen [mchinen at gmail]
Originally committed as revision 25915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 14:57:02 +00:00
Michael Chinen
3c795698d0
Add log_level_offset parameter to ff_flac_decode_frame_header(). It will be used
...
to optionally silence the error messages.
Patch by Michael Chinen [mchinen at gmail]
Originally committed as revision 25912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 14:00:38 +00:00
Michael Chinen
625daac4bd
Move decode_frame_header() from flacdec.c to flac.c/h to share with the
...
forthcoming FLAC parser.
Patch by Michael Chinen [mchinen at gmail]
Originally committed as revision 25909 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-07 13:30:18 +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
Justin Ruggles
2e0559b713
Support decoding of FLAC files without a STREAMINFO header.
...
Originally committed as revision 25315 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-02 20:37:43 +00:00
Diego Biurrun
ba87f0801d
Remove explicit filename from Doxygen @file commands.
...
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.
Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +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
Justin Ruggles
4c1645a458
Set sample format in flac_decode_init() rather than in
...
ff_flac_parse_streaminfo() since the latter is shared with the raw FLAC
demuxer, which should not be setting the sample format.
Originally committed as revision 20430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-01 16:48:05 +00:00
Justin Ruggles
78a9a77eac
add CODEC_CAP_SUBFRAMES to the FLAC decoder capabilities. also add a FIXME
...
comment as a reminder that we can remove both capabilities once a parser is
implemented.
Originally committed as revision 19891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 22:57:00 +00:00
Måns Rullgård
8313e17976
flacdec: change variable-length array to fixed length
...
pred_order can never exceed 32, so always allocating that amount is safe
and not very wasteful.
Originally committed as revision 19669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-19 21:59:36 +00:00
Ronald S. Bultje
ce863d7f36
Rename ff_log_missing_feature() to av_log_missing_feature().
...
Originally committed as revision 19294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-29 19:07: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
Thilo Borgmann
7a00bbad21
Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
...
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.
Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.
Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Justin Ruggles
d7520f217a
cosmetics: add an @return to documentation for decode_frame_header()
...
Originally committed as revision 18179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-24 22:44:12 +00:00