Anton Khirnov
e57c4706e9
lavc: don't reuse audio buffers
...
Any performance gain from this is negligible and not worth the extra
code.
12 years ago
Anton Khirnov
ff953fecff
lavc: set frame properties in ff_get_buffer().
...
There is no point in duplicating this code in every get_buffer()
implementation.
12 years ago
Anton Khirnov
594d4d5df3
lavc: add a wrapper for AVCodecContext.get_buffer().
...
It will be useful in the upcoming transition to refcounted AVFrames.
12 years ago
Luca Barbato
cc085993f4
avcodec: remove ff_is_hwaccel_pix_fmt
...
It is used only in one place and is unlikely it would be needed
elsewhere.
12 years ago
Luca Barbato
c1a02e884a
pixdesc: add av_pix_fmt_get_chroma_sub_sample
...
Deprecate avcodec_get_chroma_sub_sample.
12 years ago
Justin Ruggles
a903f8f087
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
...
Also reorder some other #include when applicable.
12 years ago
Ilkka Ollakka
6d1270a0f9
decode_audio3: initialize AVFrame
...
Same fix and issue as in a25d912dca
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years ago
Justin Ruggles
0366664ef9
lavc: check channel count after decoder init
...
Ensures the decoder did not set channel count to an insanely high value
during initialization, which could cause large memory usage when it tries to
get a buffer during decoding.
12 years ago
Justin Ruggles
bb6941af2a
lavc: move SANE_NB_CHANNELS to internal.h and use it in the PCM decoders
12 years ago
Anton Khirnov
1bc64c2814
lavc: initialize output AVFrame before decoding.
...
Avoids memleaks with audio when extended_data is nontrivial and the user
doesn't reset the frame.
Shouldn't have any effect for video for now, but might be useful in the
future.
12 years ago
Justin Ruggles
a5ef830b12
lavc: use the correct API version guard macro for avcodec_encode_audio()
12 years ago
Nathan Caldwell
c854102da7
avcodec: handle AVERROR_EXPERIMENTAL
...
Error out on init if a codec with CODEC_CAP_EXPERIMENTAL is requested
and strict_std_compliance is not FF_COMPLIANCE_EXPERIMENTAL.
Move the check from avconv to avcodec_open2() and return
AVERROR_EXPERIMENTAL accordingly.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Nathan Caldwell
a4aa20fbdb
avcodec: prefer decoders without CODEC_CAP_EXPERIMENTAL
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Rafaël Carré
a25d912dca
avcodec_encode_audio(): fix invalid free
...
Since 2bc0de385
, AVFrame needs to be initialized
before calling avcodec_get_frame_defaults().
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years ago
Diego Biurrun
52d113ee06
avutil: Rename ff_set_systematic_pal2() ---> avpriv_set_systematic_pal2()
...
Functions used across libraries should have avpriv_ and not ff_ prefixes.
12 years ago
Luca Barbato
6d5600e855
avutil: add yuva422p and yuva444p formats
12 years ago
Anton Khirnov
50ba57e0ce
lavc: do not use av_pix_fmt_descriptors directly.
12 years ago
Janne Grunau
3fbda309e5
avcodec: free extended_data instead address of it
...
Fixes CID732173.
12 years ago
Diego Biurrun
f75f4194d1
Restructure av_log_missing_feature message
...
Some invocations include a verb in the log message, others do not. Yet
av_log_missing_feature expects callers to provide a verb. Change the
function to include a verb instead and update the callers accordingly.
The result is a more natural function API and correct English in the
function invocations.
12 years ago
Anton Khirnov
716d413c13
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
12 years ago
Justin Ruggles
37f701f1c3
avcodec: allow either planar or interleaved sample format when encoding mono
...
When there is only 1 channel, the planar and interleaved formats of the same
data type should be treated as identical.
12 years ago
Diego Biurrun
9c6cf7f2c9
avcodec: Drop silly and/or broken printf debug output
12 years ago
Anton Khirnov
12e1e83461
lavc: set channel count from channel layout in avcodec_open2().
...
Some decoders (e.g. nellymoser) only set channel_layout and do not set
channel count.
12 years ago
Diego Biurrun
0ae3ba8daa
avcodec: Drop long-deprecated imgconvert.h header
12 years ago
Anton Khirnov
a42aadabc6
lavc: add avcodec_free_frame().
...
Since an AVFrame now has malloced members (extended_data), it must have
a destructor.
12 years ago
Anton Khirnov
b437cec143
lavc: ensure extended_data is set properly on decoding
12 years ago
Anton Khirnov
2bc0de3858
lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults()
12 years ago
Anton Khirnov
c084a975aa
lavc: use av_mallocz to allocate AVFrames.
...
Otherwise the frame is uninitialized, so avcodec_get_frame_defaults()
cannot determine whether to free extended_data.
12 years ago
Anton Khirnov
a83499b13b
lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults
...
AVFrame is used for both audio and video, so calling the argument 'pic'
is misleading.
12 years ago
Justin Ruggles
0ccf051a9d
avcodec: fix memleak in avcodec_encode_audio2()
...
Ensure that padded_frame is freed before returning when needed.
12 years ago
Luca Barbato
419ffb2390
avcodec: cleanup utils.c
12 years ago
Anton Khirnov
466b39efaf
lavc: replace AVCodecContext.encode with subtitle-specific callback
...
AVCodecContext.encode is currently used only for subtitles, encode2 is
used for audio and video.
12 years ago
Anton Khirnov
9f64c8219a
lavc: add const to private codec class initialization.
...
Silences a warning about discarding const.
12 years ago
Anton Khirnov
0a0f19b577
lavc: add const to AVCodec* function parameters.
13 years ago
Anton Khirnov
36ef5369ee
Replace all CODEC_ID_* with AV_CODEC_ID_*
13 years ago
Martin Storsjö
3641b0489c
Add support for iLBC decoding/encoding via the external library libilbc
...
The library is 3-clause BSD licensed.
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Diego Biurrun
0c517644b2
avcodec/utils: cast a function argument to shut up a compiler warning
...
libavcodec/utils.c:251: note: expected ‘const uint8_t *’ but argument is of type ‘const short int *’
13 years ago
Anton Khirnov
c22953b8a3
lavc: check that extended_data is properly set in avcodec_encode_audio2().
13 years ago
Anton Khirnov
a5117a2444
lavc: pad last audio frame with silence when needed.
13 years ago
Justin Ruggles
f132248028
avcodec: do not needlessly set packet size to 0 in avcodec_encode_audio2()
...
It is already set to 0 by av_free_packet()
13 years ago
Justin Ruggles
74e10b6204
avcodec: for audio encoding, reset output packet when it is not valid
13 years ago
Justin Ruggles
fa0319b4fd
avcodec: refactor avcodec_encode_audio2() to merge common branches
13 years ago
Justin Ruggles
b461cd4deb
avcodec: remove fallbacks for AVCodec.encode() in avcodec_encode_audio2()
...
We no longer have any audio encoders using AVCodec.encode().
13 years ago
Anton Khirnov
828bd088f3
lavc: add sample rate and channel layout to AVFrame.
...
Rationale is the same as for video width/height etc.
13 years ago
Mans Rullgard
2bcbd98459
Remove lowres video decoding
...
This feature is complex, of questionable utility, and slows down
normal decoding.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Alex Converse
df8d5eaa14
avcodec_string: Favor AVCodecContext.codec over the default codec.
...
This improves output for formats with more than one AVCodec.
13 years ago
Justin Ruggles
c58846f3a8
avcodec: use align == 0 for default alignment in avcodec_fill_audio_frame()
...
Use default alignment in audio_get_buffer()
13 years ago
Justin Ruggles
1337de0c4b
avcodec: validate the channel layout vs. channel count for decoders
...
Set avctx->channel_layout to 0 if the channel count does not match
avctx->channels.
13 years ago
Anton Khirnov
3c6607eb6f
avcodec_encode_{audio,video}: only reallocate output packet when it has non-zero size.
...
Otherwise realloc would free it, which would result in double free
later.
13 years ago
Ronald S. Bultje
bc1ef85520
lavc/avconv: support changing frame sizes in codecs with frame mt.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago