Commit Graph

853 Commits

Author SHA1 Message Date
Clément Bœsch
60d9ee1b75 lavc/utils: make sub decode consistent with A/V.
This allows side data to be transmitted properly with subtitles.
2012-10-24 23:56:43 +02:00
Michael Niedermayer
d0ab71ed11 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  asfdec: cosmetics, reformat ff_asf_parse_packet()
  g.723.1: add missing CODEC_CAP_DR1
  avconv: remove now unneeded calls to avcodec_get_frame_defaults().
  lavc: initialize output AVFrame before decoding.

Conflicts:
	libavformat/asfdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-24 14:26:13 +02:00
Michael Niedermayer
719fde47ca Merge commit 'c68317ebbe4915035df0b08c23eea7a0b80ab881'
* commit 'c68317ebbe4915035df0b08c23eea7a0b80ab881':
  lavc: fix documentation for AVCodecContext.delay
  atrac3: return an error if extradata_size is not a specific known size
  lavc: use the correct API version guard macro for avcodec_encode_audio()
  Move Doxyfile into the doc/ subdirectory
  doxygen: Build Doxygen documentation in the doc/ subdirectory
  dfa: use av_memcpy_backptr() where previously impossible
  av_memcpy_backptr: Drop no longer necessary malloc padding

Conflicts:
	.gitignore
	libavcodec/avcodec.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-24 14:18:17 +02:00
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.
2012-10-24 08:46:45 +02:00
Stefano Sabatini
4a227a706d lavc/utils: fix a few grammar/style nits in log messages
In avcodec_open2(), apply consistent casing and avoid "or" conjunction at
the beginning of a sentence, in the messages issued in case of
experimental codec usage.
2012-10-24 00:29:37 +02:00
Stefano Sabatini
5ffadec30a lavc/utils: propagate or return meaningful error codes in avcodec_open2() 2012-10-24 00:29:37 +02:00
Justin Ruggles
a5ef830b12 lavc: use the correct API version guard macro for avcodec_encode_audio() 2012-10-23 14:35:27 -04:00
Michael Niedermayer
22793d7bb3 ffmpeg/lavc: move experimental warnings to libavcodec.
This way they are available to all applications and not just ffmpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-22 17:58:33 +02:00
Michael Niedermayer
e3a91c51f7 Merge commit 'c3e15f7b39aac2012f09ee4ca86d2bc674ffdbd4'
* commit 'c3e15f7b39aac2012f09ee4ca86d2bc674ffdbd4':
  rtpdec: Don't pass a non-AVClass pointer as log context
  rtsp: Update a comment to the current filename scheme
  avcodec: handle AVERROR_EXPERIMENTAL
  avutil: Add AVERROR_EXPERIMENTAL
  avcodec: prefer decoders without CODEC_CAP_EXPERIMENTAL

Conflicts:
	doc/APIchanges
	ffmpeg.c
	libavcodec/utils.c
	libavformat/rtpdec.c
	libavutil/error.c
	libavutil/error.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-22 14:39:12 +02:00
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>
2012-10-21 23:03:26 +02:00
Nathan Caldwell
a4aa20fbdb avcodec: prefer decoders without CODEC_CAP_EXPERIMENTAL
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-10-21 22:27:58 +02:00
Stefano Sabatini
8c2dbc3805 lavc/utils: provide more feedback in case of experimental codec 2012-10-21 21:11:02 +02:00
Clément Bœsch
6fb2fd895e lavc: add lavfi metadata support.
This commit introduces a new AVPacket side data type:
AV_PKT_DATA_STRINGS_METADATA. Its main goal is to provide a way to
transmit the metadata from the AVFilterBufferRef up to the AVFrame. This
is at the moment "only" useful for lavfi input from libavdevice:
lavd/lavfi only outputs packets, and the metadata from the buffer ref
kept in its context needs to be transmitted from the packet to the frame
by the decoders. The buffer ref can be destroyed at any time (along with
the metadata), and a duplication of the AVPacket needs to duplicate the
metadata as well, so the choice of using the side data to store them was
selected.

Making sure lavd/lavfi raises the metadata is useful to allow tools like
ffprobe to access the filters metadata (it is at the moment the only
way); ffprobe will now automatically show the AVFrame metadata in any
customizable output format for users. API users will also be able to
access the AVFrame->metadata pointer the same way ffprobe does
(av_frame_get_metadata).

All the changes are done in this single commit to avoid some memory
leaks: for instances, the changes in lavfi/avcodec.c are meant to
duplicate the metadata from the buffer ref into the AVFrame. Unless we
have an internal way of freeing the AVFrame->metadata automatically, it
will leak in most of the user apps. To fix this problem, we introduce
AVCodecContext->metadata and link avctx->metadata to the current
frame->metadata and free it at each decode frame call (and in the codec
closing callback for the last one). But doing this also means to update
the way the tiff decoder already handles the AVFrame->metadata (it's the
only one decoder with frame metadata at the moment), by making sure it
is not trying to free a pointer already freed by the lavc internals.

The lavfi/avcodec.c buffer ref code is based on an old Thomas Kühnel
work, the rest of the code belongs to the commit author.

Signed-off-by: Thomas Kühnel <kuehnelth@googlemail.com>
Signed-off-by: Clément Bœsch <ubitux@gmail.com>
2012-10-21 17:29:10 +02:00
Michael Niedermayer
bf52ad1e49 lavc: revert broken hunk from 1cd9c81ddb
This should fix fate failures

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-20 13:59:53 +02:00
Stefano Sabatini
7bc533c41b lavc/utils: fix a few case/punctuation inconsistencies in avcodec_open2() 2012-10-20 12:06:20 +02:00
Stefano Sabatini
1cd9c81ddb lavc/utils: extend feedback provided by avcodec_open2() 2012-10-20 12:06:14 +02:00
Michael Niedermayer
d86ef54476 avcodec_align_dimensions2: add missing breaks
This should have just cosmetic effects

Fixes CID603265
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-19 18:50:09 +02:00
Ash Hughes
2470851f12 lavc: enable recursively using avcodec_open2/close.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-19 18:05:12 +02:00
Michael Niedermayer
d6e87190fd Merge commit 'a25d912dca9cd553440167e0476c47581359c0fc'
* commit 'a25d912dca9cd553440167e0476c47581359c0fc':
  avcodec_encode_audio(): fix invalid free
  pcm-mpeg: correct bitrate calculation
  ffv1: K&R formatting cosmetics
  fate: Add rangecoder test
  network: #include stdint.h in network.h
  nut: export codec_tag provided by rawvideo
  avserver: move avserver-specific code from ffmdec.c to avserver.c

Conflicts:
	ffserver.c
	libavcodec/ffv1.c
	libavformat/ffmdec.c
	libavformat/nutenc.c
	tests/ref/lavfi/crop
	tests/ref/lavfi/crop_scale
	tests/ref/lavfi/crop_scale_vflip
	tests/ref/lavfi/crop_vflip
	tests/ref/lavfi/null
	tests/ref/lavfi/pixdesc
	tests/ref/lavfi/pixfmts_copy
	tests/ref/lavfi/pixfmts_crop
	tests/ref/lavfi/pixfmts_hflip
	tests/ref/lavfi/pixfmts_null
	tests/ref/lavfi/pixfmts_pad
	tests/ref/lavfi/pixfmts_scale
	tests/ref/lavfi/pixfmts_vflip
	tests/ref/lavfi/scale200
	tests/ref/lavfi/scale500
	tests/ref/lavfi/vflip
	tests/ref/lavfi/vflip_crop
	tests/ref/lavfi/vflip_vflip

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-17 14:17:55 +02:00
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>
2012-10-16 18:49:31 +02:00
Michael Niedermayer
d6f6a7557c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avutil: Do not make ff_ symbols globally visible.
  avutil: Rename ff_set_systematic_pal2() ---> avpriv_set_systematic_pal2()
  build: tms470: work around glibc math.h problems
  configure: improve tms470 compiler usage with glibc

Conflicts:
	libavcodec/bmpenc.c
	libavcodec/rawdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-14 15:11:34 +02:00
Diego Biurrun
52d113ee06 avutil: Rename ff_set_systematic_pal2() ---> avpriv_set_systematic_pal2()
Functions used across libraries should have avpriv_ and not ff_ prefixes.
2012-10-13 19:59:20 +02:00
Paul B Mahol
93931143fe lavc: return s->get_buffer() error code if it errors out
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-10-13 16:03:03 +00:00
Michael Niedermayer
af7dd79a32 Merge commit '50ba57e0ce63d9904269ea0728936a0c79f8bfb5'
* commit '50ba57e0ce63d9904269ea0728936a0c79f8bfb5':
  lavc: do not use av_pix_fmt_descriptors directly.

Conflicts:
	libavcodec/imgconvert.c
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/mpegvideo.c
	libavcodec/rawdec.c
	libavcodec/rawenc.c
	libavcodec/tiffenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-12 16:48:26 +02:00
Luca Barbato
6d5600e855 avutil: add yuva422p and yuva444p formats 2012-10-12 15:09:51 +02:00
Anton Khirnov
50ba57e0ce lavc: do not use av_pix_fmt_descriptors directly. 2012-10-12 12:45:39 +02:00
Michael Niedermayer
e0909ff158 lavc: Fix use of uninitialized field.
Fixes CID732297
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-12 00:22:15 +02:00
Michael Niedermayer
eadba3e94d Merge commit 'cbcd497f384f0f8ef3f76f85b29b644b900d6b9f'
* commit 'cbcd497f384f0f8ef3f76f85b29b644b900d6b9f':
  adxdec: use planar sample format
  adpcmdec: use planar sample format for adpcm_thp
  adpcmdec: use planar sample format for adpcm_ea_xas
  adpcmdec: use planar sample format for adpcm_ea_r1/r2/r3
  adpcmdec: use planar sample format for adpcm_xa
  adpcmdec: use planar sample format for adpcm_ima_ws for vqa version 3
  adpcmdec: use planar sample format for adpcm_4xm
  adpcmdec: use planar sample format for adpcm_ima_wav
  adpcmdec: use planar sample format for adpcm_ima_qt
  pcmdec: use planar sample format for pcm_lxf
  mace: use planar sample format
  atrac1: use planar sample format
  build: non-x86: Only compile mpegvideo optimizations when necessary
  rtpdec_mpeg4: au_headers is a single array, simple av_free is enough
  avcodec: free extended_data instead address of it
  fate: Add tests of the ff_make_absolute_url function
  url: Handle relative urls starting with two slashes
  url: Handle relative urls being just a new query string
  url: Don't treat slashes in query parameters as directory separators

Conflicts:
	libavcodec/adxdec.c
	libavcodec/mips/Makefile
	libavcodec/pcm.c
	libavcodec/utils.c
	libavformat/Makefile
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-10 13:01:27 +02:00
Janne Grunau
3fbda309e5 avcodec: free extended_data instead address of it
Fixes CID732173.
2012-10-09 14:04:46 +02:00
Michael Niedermayer
ef9fe5bedd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mingw/cygwin: Stop adding -fno-common to gcc CFLAGS
  Restructure av_log_missing_feature message
  rtp: Support packetization/depacketization of opus
  file: Set the return value type for lseek to int64_t.
  ppc: fix Altivec build with old compilers
  build: add LTO support for PGI compiler
  build: add -Mdse to PGI optimisation flags
  rtpenc_vp8: Update the packetizer to the latest spec version
  rtpdec_vp8: Make the depacketizer implement the latest spec draft
  doc: allow building with old texi2html versions
  avutil: skip old_pix_fmts.h since it is just a list

Conflicts:
	libavcodec/aacdec.c
	libavcodec/h264.c
	libavcodec/ppc/fmtconvert_altivec.c
	libavcodec/utils.c
	libavformat/file.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-09 13:06:04 +02:00
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.
2012-10-09 11:39:26 +02:00
Michael Niedermayer
ac627b3d38 Merge commit '716d413c13981da15323c7a3821860536eefdbbb'
* commit '716d413c13981da15323c7a3821860536eefdbbb':
  Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat

Conflicts:
	doc/examples/muxing.c
	ffmpeg.h
	ffmpeg_filter.c
	ffmpeg_opt.c
	ffplay.c
	ffprobe.c
	libavcodec/8bps.c
	libavcodec/aasc.c
	libavcodec/aura.c
	libavcodec/avcodec.h
	libavcodec/avs.c
	libavcodec/bfi.c
	libavcodec/bmp.c
	libavcodec/bmpenc.c
	libavcodec/c93.c
	libavcodec/cscd.c
	libavcodec/cyuv.c
	libavcodec/dpx.c
	libavcodec/dpxenc.c
	libavcodec/eatgv.c
	libavcodec/escape124.c
	libavcodec/ffv1.c
	libavcodec/flashsv.c
	libavcodec/fraps.c
	libavcodec/h264.c
	libavcodec/huffyuv.c
	libavcodec/iff.c
	libavcodec/imgconvert.c
	libavcodec/indeo3.c
	libavcodec/kmvc.c
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/libx264.c
	libavcodec/ljpegenc.c
	libavcodec/mjpegdec.c
	libavcodec/mjpegenc.c
	libavcodec/motionpixels.c
	libavcodec/mpeg12.c
	libavcodec/mpeg12enc.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pamenc.c
	libavcodec/pcxenc.c
	libavcodec/pgssubdec.c
	libavcodec/pngdec.c
	libavcodec/pngenc.c
	libavcodec/pnm.c
	libavcodec/pnmdec.c
	libavcodec/pnmenc.c
	libavcodec/ptx.c
	libavcodec/qdrw.c
	libavcodec/qpeg.c
	libavcodec/qtrleenc.c
	libavcodec/raw.c
	libavcodec/rawdec.c
	libavcodec/rl2.c
	libavcodec/sgidec.c
	libavcodec/sgienc.c
	libavcodec/snowdec.c
	libavcodec/snowenc.c
	libavcodec/sunrast.c
	libavcodec/targa.c
	libavcodec/targaenc.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c
	libavcodec/tmv.c
	libavcodec/truemotion2.c
	libavcodec/utils.c
	libavcodec/vb.c
	libavcodec/vp3.c
	libavcodec/wnv1.c
	libavcodec/xl.c
	libavcodec/xwddec.c
	libavcodec/xwdenc.c
	libavcodec/yop.c
	libavdevice/v4l2.c
	libavdevice/x11grab.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/drawutils.c
	libavfilter/formats.c
	libavfilter/src_movie.c
	libavfilter/vf_ass.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_format.c
	libavfilter/vf_hflip.c
	libavfilter/vf_lut.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vf_transpose.c
	libavfilter/vf_yadif.c
	libavfilter/video.c
	libavfilter/vsrc_testsrc.c
	libavformat/movenc.c
	libavformat/mxf.h
	libavformat/utils.c
	libavformat/yuv4mpeg.c
	libavutil/imgutils.c
	libavutil/pixdesc.c
	libswscale/input.c
	libswscale/output.c
	libswscale/swscale_internal.h
	libswscale/swscale_unscaled.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	libswscale/x86/yuv2rgb.c
	libswscale/x86/yuv2rgb_template.c
	libswscale/yuv2rgb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-08 21:06:57 +02:00
Michael Niedermayer
43c157f4a4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  af_resample: avoid conversion of identical sample formats for 1 channel
  avcodec: allow either planar or interleaved sample format when encoding mono
  adpcmenc: ensure calls to adpcm_ima_compress_sample() are in the right order
  timefilter: De-doxygenize normal code comments and drop silly ones
  gxf: Include the right header for the avpriv_frame_rate_tab declaration

Conflicts:
	libavcodec/adpcmenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-08 13:11:11 +02:00
Anton Khirnov
716d413c13 Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat 2012-10-08 07:13:26 +02:00
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.
2012-10-07 16:45:50 -04:00
Michael Niedermayer
31ab1575e5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avcodec: Convert some commented-out printf/av_log instances to av_dlog
  avcodec: Drop silly and/or broken printf debug output
  avcodec: Drop some silly commented-out av_log() invocations
  avformat: Convert some commented-out printf/av_log instances to av_dlog
  avformat: Remove non-compiling and/or silly commented-out printf/av_log statements
  Remove some silly disabled code.
  ac3dec: ensure get_buffer() gets a buffer for the correct number of channels

Conflicts:
	libavcodec/dnxhddec.c
	libavcodec/ffv1.c
	libavcodec/h264.c
	libavcodec/h264_parser.c
	libavcodec/mjpegdec.c
	libavcodec/motion_est_template.c
	libavcodec/mpegaudiodec.c
	libavcodec/mpegvideo_enc.c
	libavcodec/put_bits.h
	libavcodec/ratecontrol.c
	libavcodec/wmaenc.c
	libavdevice/timefilter.c
	libavformat/asfdec.c
	libavformat/avidec.c
	libavformat/avienc.c
	libavformat/flvenc.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-01 16:12:38 +02:00
Diego Biurrun
9c6cf7f2c9 avcodec: Drop silly and/or broken printf debug output 2012-10-01 10:24:28 +02:00
Michael Niedermayer
8672fc7b04 Merge commit 'b146d74730ab9ec5abede9066f770ad851e45fbc'
* commit 'b146d74730ab9ec5abede9066f770ad851e45fbc':
  indeo4: update AVCodecContext width/height on size change
  dfa: check that the caller set width/height properly.
  indeo5dec: Make sure we have had a valid gop header.
  cavsdec: check for changing w/h.
  lavc: set channel count from channel layout in avcodec_open2().
  doc/platform: Rework the Visual Studio linking section
  doc/faq: Change the Visual Studio entry to reflect current status
  doc/platform: Replace Visual Studio section with build instructions
  doc/platform: Nuke section on linking static MinGW-built libs with MSVC
  doc/platform: Remove false claim about MinGW installer
  doc/platform: Mention MinGW-w64
  dsputil_mmx: fix reading prior of the src array in sub_hfyu_median_prediction()
  mpegaudiodec: fix short_start calculation

Conflicts:
	doc/faq.texi
	doc/platform.texi
	libavcodec/cavsdec.c
	libavcodec/indeo5.c
	libavcodec/ivi_common.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-29 14:45:55 +02:00
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.
2012-09-29 09:25:40 +02:00
Michael Niedermayer
7ed9ec033f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dwt: Drop unused functions spatial_compose{53|97}i()
  nutdec: Remove unused and broken debug function stub
  avcodec: Drop long-deprecated imgconvert.h header
  Add Opus support to the Ogg muxer.
  Add Opus codec id and codec description.
  avformat: Identify anonymous AVIO typedef structs.

Conflicts:
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/imgconvert.h
	libavcodec/version.h
	libavformat/oggenc.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-28 05:11:19 +02:00
Diego Biurrun
0ae3ba8daa avcodec: Drop long-deprecated imgconvert.h header 2012-09-27 12:02:33 +02:00
Michael Niedermayer
8deddc6961 avcodec_alloc_frame: dont zero the whole struct twice
cleaning it up is already done in avcodec_get_frame_defaults()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 18:10:10 +02:00
Michael Niedermayer
46a35959d8 Merge commit '7751e4693dd10ec98c20fbd9887233b575034272'
* commit '7751e4693dd10ec98c20fbd9887233b575034272':
  ogg: check that the expected number of headers had been parsed
  libx264: change default to closed gop to match x264cli
  Use avcodec_free_frame() to free AVFrames.
  lavf: use a malloced AVFrame in try_decode_frame().
  lavc: add avcodec_free_frame().
  lavc: ensure extended_data is set properly on decoding
  lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults()
  lavc: use av_mallocz to allocate AVFrames.
  lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/src_movie.c
	libavformat/oggdec.c
	libavformat/oggdec.h
	libavformat/oggparsetheora.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-25 15:15:16 +02:00
Anton Khirnov
a42aadabc6 lavc: add avcodec_free_frame().
Since an AVFrame now has malloced members (extended_data), it must have
a destructor.
2012-09-24 12:31:24 +02:00
Anton Khirnov
b437cec143 lavc: ensure extended_data is set properly on decoding 2012-09-24 12:31:24 +02:00
Anton Khirnov
2bc0de3858 lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults() 2012-09-24 12:31:24 +02:00
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.
2012-09-24 12:31:24 +02:00
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.
2012-09-24 12:31:24 +02:00
Michael Niedermayer
fecfdf6e72 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avcodec: fix memleak in avcodec_encode_audio2()

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-23 13:55:43 +02:00
Justin Ruggles
0ccf051a9d avcodec: fix memleak in avcodec_encode_audio2()
Ensure that padded_frame is freed before returning when needed.
2012-09-22 09:24:24 -04:00