Reimar Döffinger
547c2f002a
Make decoding alpha optional for some codecs.
...
For codecs where decoding of a whole plane can simply
be skipped, we should offer applications to not decode
alpha for better performance (ca. 30% less CPU usage
and 40% reduced memory bandwidth).
It also means applications do not need to implement support
(even if it is rather simple) for YUVA formats in order to be
able to play these files.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-09-22 16:20:54 +02:00
Michael Niedermayer
83db013a06
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
avcodec/options: Drop deprecation warning suppression macros
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-06 16:48:31 +02:00
Diego Biurrun
0ba4ea312b
avcodec/options: Drop deprecation warning suppression macros
...
The options table is used in tools built by the host compiler and the
deprecation macros pull in bits that are not safe to use if host and
target compiler differ.
2013-08-06 03:05:03 +02:00
Michael Niedermayer
20be5e0a0e
Merge commit '7950e519bb094897f957b9a9531cc60ba46cbc91'
...
* commit '7950e519bb094897f957b9a9531cc60ba46cbc91':
Disable deprecation warnings for cases where a replacement is available
Conflicts:
libavcodec/avpacket.c
libavcodec/pthread.c
libavcodec/utils.c
libavdevice/v4l2.c
libavfilter/avfiltergraph.c
libavfilter/buffersrc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 10:08:30 +02:00
Michael Niedermayer
a8e963835a
Merge commit 'b5a138652ff8a5b987d3e1191e67fd9f6575527e'
...
* commit 'b5a138652ff8a5b987d3e1191e67fd9f6575527e':
Give less generic names to global library option arrays
Conflicts:
libavcodec/options_table.h
libavfilter/avfilter.c
libavformat/options_table.h
libswscale/options.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-03 09:16:36 +02:00
Diego Biurrun
7950e519bb
Disable deprecation warnings for cases where a replacement is available
2013-08-02 19:19:02 +02:00
Diego Biurrun
b5a138652f
Give less generic names to global library option arrays
2013-08-02 19:19:02 +02:00
Michael Niedermayer
af5f9c0876
Merge commit '95d52464542f532061290192518d5fe1c1930e8d'
...
* commit '95d52464542f532061290192518d5fe1c1930e8d':
lavc: Add option to encode MPEG-2 AAC with libfdk-aac
Conflicts:
doc/APIchanges
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-06-24 10:57:04 +02:00
Kieran Kunhya
95d5246454
lavc: Add option to encode MPEG-2 AAC with libfdk-aac
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-06-24 08:03:26 +02:00
Paul B Mahol
d5f7f1fef1
audio frame multi-threaded decoding
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-06-05 22:35:31 +00:00
Carl Eugen Hoyos
76f43cbe26
Remove a superfluous include from libavcodec/options_table.h.
2013-05-06 12:16:50 +02:00
Michael Niedermayer
f4b05cd841
Merge commit '5e83d9aced2fc2b2e1360452794c58aba55d497c'
...
* commit '5e83d9aced2fc2b2e1360452794c58aba55d497c':
h264: fully support cropping.
Conflicts:
doc/APIchanges
libavcodec/h264.c
libavcodec/h264_ps.c
libavcodec/options_table.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-19 22:46:51 +02:00
Anton Khirnov
5e83d9aced
h264: fully support cropping.
...
Based on a patch by Vittorio Giovara <vittorio.giovara@gmail.com>
Fixes Bug 378.
2013-04-19 09:28:08 +02:00
Michael Niedermayer
ded2f187a2
avcodec: fix ignorecrop AVOption offset
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-13 20:17:37 +02:00
Michael Niedermayer
b13cd2d867
Merge commit 'd6ed604cf4ca86ed345125b26eb5bdeea6d6bf68'
...
* commit 'd6ed604cf4ca86ed345125b26eb5bdeea6d6bf68':
lavc: remove disabled FF_API_IDCT cruft
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 12:03:22 +01:00
Michael Niedermayer
5753e34906
Merge commit 'fcb07e8b332bbd6f9558bff98ff5102c5f2d8252'
...
* commit 'fcb07e8b332bbd6f9558bff98ff5102c5f2d8252':
lavc: remove disabled FF_API_MMI cruft
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 11:29:04 +01:00
Michael Niedermayer
1f27053b91
Merge commit 'de27d2b92fa97deb2856d18e9f5f19586ce45a0f'
...
* commit 'de27d2b92fa97deb2856d18e9f5f19586ce45a0f':
lavc: remove disabled FF_API_LIBMPEG2 cruft
Conflicts:
libavcodec/avcodec.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-13 02:56:33 +01:00
Stefano Sabatini
92ca292766
lavc: extend documentation for skip_idct, skip_loop_filter, skip_frame options
2013-03-13 00:34:42 +01:00
Michael Niedermayer
db594f65ec
Merge commit '845017105f240ac5348aad1f8a5256b86d49db76'
...
* commit '845017105f240ac5348aad1f8a5256b86d49db76':
lavc: remove disabled FF_API_DSP_MASK cruft
lavc: remove disabled FF_API_SUB_ID cruft
Conflicts:
libavcodec/options_table.h
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 22:38:55 +01:00
Michael Niedermayer
5beddbc4cf
Merge commit '2a113695238e7675ab75c5fb9a5f59fc92f2ddd9'
...
* commit '2a113695238e7675ab75c5fb9a5f59fc92f2ddd9':
lavc: remove disabled FF_API_INTER_THRESHOLD cruft
lavc: remove disabled FF_API_COLOR_TABLE_ID cruft
lavc: remove disabled FF_API_MPV_GLOBAL_OPTS cruft
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 22:18:08 +01:00
Michael Niedermayer
80e9e63c94
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
...
* commit '759001c534287a96dc96d1e274665feb7059145d':
lavc decoders: work with refcounted frames.
Anton Khirnov (1):
lavc decoders: work with refcounted frames.
Clément Bœsch (47):
lavc/ansi: reset file
lavc/ansi: re-do refcounted frame changes from Anton
fraps: reset file
lavc/fraps: switch to refcounted frames
gifdec: reset file
lavc/gifdec: switch to refcounted frames
dsicinav: resolve conflicts
smc: resolve conflicts
zmbv: resolve conflicts
rpza: resolve conflicts
vble: resolve conflicts
xxan: resolve conflicts
targa: resolve conflicts
vmnc: resolve conflicts
utvideodec: resolve conflicts
tscc: resolve conflicts
ulti: resolve conflicts
ffv1dec: resolve conflicts
dnxhddec: resolve conflicts
v210dec: resolve conflicts
vp3: resolve conflicts
vcr1: resolve conflicts
v210x: resolve conflicts
wavpack: resolve conflicts
pngdec: fix compilation
roqvideodec: resolve conflicts
pictordec: resolve conflicts
mdec: resolve conflicts
tiertexseqv: resolve conflicts
smacker: resolve conflicts
vb: resolve conflicts
vqavideo: resolve conflicts
xl: resolve conflicts
tmv: resolve conflicts
vmdav: resolve conflicts
truemotion1: resolve conflicts
truemotion2: resolve conflicts
lcldec: fix compilation
libcelt_dec: fix compilation
qdrw: fix compilation
r210dec: fix compilation
rl2: fix compilation
wnv1: fix compilation
yop: fix compilation
tiff: resolve conflicts
interplayvideo: fix compilation
qpeg: resolve conflicts (FIXME/TESTME).
Hendrik Leppkes (33):
012v: convert to refcounted frames
8bps: fix compilation
8svx: resolve conflicts
4xm: resolve conflicts
aasc: resolve conflicts
bfi: fix compilation
aura: fix compilation
alsdec: resolve conflicts
avrndec: convert to refcounted frames
avuidec: convert to refcounted frames
bintext: convert to refcounted frames
cavsdec: resolve conflicts
brender_pix: convert to refcounted frames
cinepak: resolve conflicts
cinepak: avoid using AVFrame struct directly in private context
cljr: fix compilation
cpia: convert to refcounted frames
cscd: resolve conflicts
iff: resolve conflicts and do proper conversion to refcounted frames
4xm: fix reference frame handling
cyuv: fix compilation
dxa: fix compilation
eacmv: fix compilation
eamad: fix compilation
eatgv: fix compilation
escape124: remove unused variable.
escape130: convert to refcounted frames
evrcdec: convert to refcounted frames
exr: convert to refcounted frames
mvcdec: convert to refcounted frames
paf: properly free the frame data on decode close
sgirle: convert to refcounted frames
lavfi/moviesrc: use refcounted frames
Michael Niedermayer (56):
Merge commit '759001c534287a96dc96d1e274665feb7059145d'
resolve conflicts in headers
motion_est: resolve conflict
mpeg4videodec: fix conflicts
dpcm conflict fix
dpx: fix conflicts
indeo3: resolve confilcts
kmvc: resolve conflicts
kmvc: resolve conflicts
h264: resolve conflicts
utils: resolve conflicts
rawdec: resolve conflcits
mpegvideo: resolve conflicts
svq1enc: resolve conflicts
mpegvideo: dont clear data, fix assertion failure on fate vsynth1 with threads
pthreads: resolve conflicts
frame_thread_encoder: simple compilefix not yet tested
snow: update to buffer refs
crytsalhd: fix compile
dirac: switch to new API
sonic: update to new API
svq1: resolve conflict, update to new API
ffwavesynth: update to new buffer API
g729: update to new API
indeo5: fix compile
j2kdec: update to new buffer API
linopencore-amr: fix compile
libvorbisdec: update to new API
loco: fix compile
paf: update to new API
proresdec: update to new API
vp56: update to new api / resolve conflicts
xface: convert to refcounted frames
xan: fix compile&fate
v408: update to ref counted buffers
v308: update to ref counted buffers
yuv4dec: update to ref counted buffers
y41p: update to ref counted frames
xbm: update to refcounted frames
targa_y216: update to refcounted buffers
qpeg: fix fate/crash
cdxl: fix fate
tscc: fix reget buffer useage
targa_y216dec: fix style
msmpeg4: fix fate
h264: ref_picture() copy fields that have been lost too
update_frame_pool: use channel field
h264: Put code that prevents deadlocks back
mpegvideo: dont allow last == current
wmalossless: fix buffer ref messup
ff_alloc_picture: free tables in case of dimension mismatches
h264: fix null pointer dereference and assertion failure
frame_thread_encoder: update to bufrefs
ec: fix used arrays
snowdec: fix off by 1 error in dimensions check
h264: disallow single unpaired fields as references of frames
Paul B Mahol (2):
lavc/vima: convert to refcounted frames
sanm: convert to refcounted frames
Conflicts:
libavcodec/4xm.c
libavcodec/8bps.c
libavcodec/8svx.c
libavcodec/aasc.c
libavcodec/alsdec.c
libavcodec/anm.c
libavcodec/ansi.c
libavcodec/avs.c
libavcodec/bethsoftvideo.c
libavcodec/bfi.c
libavcodec/c93.c
libavcodec/cavsdec.c
libavcodec/cdgraphics.c
libavcodec/cinepak.c
libavcodec/cljr.c
libavcodec/cscd.c
libavcodec/dnxhddec.c
libavcodec/dpcm.c
libavcodec/dpx.c
libavcodec/dsicinav.c
libavcodec/dvdec.c
libavcodec/dxa.c
libavcodec/eacmv.c
libavcodec/eamad.c
libavcodec/eatgq.c
libavcodec/eatgv.c
libavcodec/eatqi.c
libavcodec/error_resilience.c
libavcodec/escape124.c
libavcodec/ffv1.h
libavcodec/ffv1dec.c
libavcodec/flicvideo.c
libavcodec/fraps.c
libavcodec/frwu.c
libavcodec/g723_1.c
libavcodec/gifdec.c
libavcodec/h264.c
libavcodec/h264.h
libavcodec/h264_direct.c
libavcodec/h264_loopfilter.c
libavcodec/h264_refs.c
libavcodec/huffyuvdec.c
libavcodec/idcinvideo.c
libavcodec/iff.c
libavcodec/indeo2.c
libavcodec/indeo3.c
libavcodec/internal.h
libavcodec/interplayvideo.c
libavcodec/ivi_common.c
libavcodec/jvdec.c
libavcodec/kgv1dec.c
libavcodec/kmvc.c
libavcodec/lagarith.c
libavcodec/libopenjpegdec.c
libavcodec/mdec.c
libavcodec/mimic.c
libavcodec/mjpegbdec.c
libavcodec/mjpegdec.c
libavcodec/mmvideo.c
libavcodec/motion_est.c
libavcodec/motionpixels.c
libavcodec/mpc7.c
libavcodec/mpeg12.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/msrle.c
libavcodec/msvideo1.c
libavcodec/nuv.c
libavcodec/options_table.h
libavcodec/pcx.c
libavcodec/pictordec.c
libavcodec/pngdec.c
libavcodec/pnmdec.c
libavcodec/pthread.c
libavcodec/qpeg.c
libavcodec/qtrle.c
libavcodec/r210dec.c
libavcodec/rawdec.c
libavcodec/roqvideodec.c
libavcodec/rpza.c
libavcodec/smacker.c
libavcodec/smc.c
libavcodec/svq1dec.c
libavcodec/svq1enc.c
libavcodec/targa.c
libavcodec/tiertexseqv.c
libavcodec/tiff.c
libavcodec/tmv.c
libavcodec/truemotion1.c
libavcodec/truemotion2.c
libavcodec/tscc.c
libavcodec/ulti.c
libavcodec/utils.c
libavcodec/utvideodec.c
libavcodec/v210dec.c
libavcodec/v210x.c
libavcodec/vb.c
libavcodec/vble.c
libavcodec/vcr1.c
libavcodec/vmdav.c
libavcodec/vmnc.c
libavcodec/vp3.c
libavcodec/vp56.c
libavcodec/vp56.h
libavcodec/vp6.c
libavcodec/vqavideo.c
libavcodec/wavpack.c
libavcodec/xl.c
libavcodec/xxan.c
libavcodec/zmbv.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-12 03:23:28 +01:00
Anton Khirnov
d6ed604cf4
lavc: remove disabled FF_API_IDCT cruft
2013-03-11 18:22:37 +01:00
Anton Khirnov
3bcdf8dcb9
lavc: remove disabled FF_API_SNOW cruft
2013-03-11 18:22:26 +01:00
Anton Khirnov
fcb07e8b33
lavc: remove disabled FF_API_MMI cruft
2013-03-11 18:22:18 +01:00
Anton Khirnov
2a11369523
lavc: remove disabled FF_API_INTER_THRESHOLD cruft
2013-03-09 08:36:40 +01:00
Anton Khirnov
d03a94e2b7
lavc: remove disabled FF_API_SUB_ID cruft
2013-03-09 08:36:40 +01:00
Anton Khirnov
9d6cf81f02
lavc: remove disabled FF_API_COLOR_TABLE_ID cruft
2013-03-09 08:36:40 +01:00
Anton Khirnov
3b0f586f07
lavc: remove disabled FF_API_MPV_GLOBAL_OPTS cruft
2013-03-09 08:36:40 +01:00
Anton Khirnov
759001c534
lavc decoders: work with refcounted frames.
2013-03-08 07:38:30 +01:00
Michael Niedermayer
0dcecf45d8
avcodec: mbd has a range of 0..2
...
Fixes Ticket2219
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-27 03:04:04 +01:00
Clément Bœsch
f796399344
lavc: support subtitles character encoding conversion.
2013-02-17 12:57:56 +01:00
Michael Niedermayer
25be63005f
Merge commit 'b85a5e87af4254b80913fe33591d96361f30832b'
...
* commit 'b85a5e87af4254b80913fe33591d96361f30832b':
lavu: Add av_strnstr()
h264: Allow discarding the cropping information from SPS
Conflicts:
Changelog
doc/APIchanges
libavcodec/avcodec.h
libavcodec/version.h
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-25 14:36:45 +01:00
Vittorio Giovara
a84fb6e06f
h264: Allow discarding the cropping information from SPS
...
Some 3D systems overload the meaning of the field for other purposes.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-25 07:50:35 +01:00
Michael Niedermayer
5f61e09a8f
Merge commit '93af2734ee609133eaeca28329d7f13241dd411f'
...
* commit '93af2734ee609133eaeca28329d7f13241dd411f':
lavc: put FF_IDCT_{VP3,H264,CAVS,BINK,EA,WMV2} under FF_API_IDCT.
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-21 16:14:41 +01:00
Ronald S. Bultje
93af2734ee
lavc: put FF_IDCT_{VP3,H264,CAVS,BINK,EA,WMV2} under FF_API_IDCT.
...
This allows us to get rid of them on the next major bump. All of the
above are functionally irrelevant, and most of them are unused, except
the vp3 one, which is used wrongly in the bfin arch optimizations.
2013-01-20 22:15:28 -08:00
Diego Biurrun
a0c5917f86
Drop Snow codec
...
Snow is a toy codec with no real-world use and horrible code.
2013-01-06 16:30:02 +01:00
Michael Niedermayer
af804dbe9e
Merge commit '523c7bd23c781aa0f3a85044896f5e18e8b52534'
...
* commit '523c7bd23c781aa0f3a85044896f5e18e8b52534':
misc typo, style and wording fixes
Conflicts:
libavcodec/options_table.h
libavutil/pixfmt.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-19 14:28:58 +01:00
Michael Niedermayer
94ecbe23c5
Merge commit 'c35f0e8495e34c2082dcde805e9323c9f6a4cb0a'
...
* commit 'c35f0e8495e34c2082dcde805e9323c9f6a4cb0a':
au: Reorder code so that both muxer and demuxer are under #ifdefs
fate: Move RALF test into lossless audio group
cosmetics: Use consistent names for multiple inclusion guards.
Conflicts:
libavformat/au.c
tests/fate/lossless-audio.mak
tests/fate/real.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-18 14:27:59 +01:00
Diego Biurrun
523c7bd23c
misc typo, style and wording fixes
2012-12-18 13:36:51 +01:00
Diego Biurrun
81c7c817a4
cosmetics: Use consistent names for multiple inclusion guards.
2012-12-17 17:02:22 +01:00
Martin Storsjö
4ed0c35c40
avcodec: Fix a typo in an option description
...
Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Clément Bœsch <ubitux@gmail.com>
2012-12-07 16:16:20 +01:00
Stefano Sabatini
c9ff32215b
lavu/opt: allow to set sample and pixel format with av_opt_set_int()
...
This change requires the user to specify min and max value, and makes
possible to prevent the user to set AV_{SAMPLE,PIX}_FMT_NONE if
forbidden.
Add required ifdeffery in case of mixed libraries, when libavutil is
updated but not the other libraries.
This is a followup of 08d0969c14
.
2012-12-01 19:33:30 +01:00
Stefano Sabatini
08d0969c14
lavu/opt: change the way default pixel and sample format value is set
...
Use the i64 field rather than the string value. Using a string to set a
default sample/pixel format is weird, also the new interface is more
consistent with the rest of the API.
This is technically an API break, but hopefully there are no applications
using this feature outside of FFmpeg. In order to save backward
compatibility with mixed libraries in case libavutil is updated but not
the other libraries, some ifdeffery hacks are added.
Note that the version check is only performed when class->version != 0,
since if it is not defined then we assume that no version was defined and
the class is not affected by the change.
We will luckily get rid of the hack at the next major bump.
2012-11-30 00:01:53 +01:00
Stefano Sabatini
0372ecfa48
lavc/options_table: force non-negative bitrate range
...
It does not make sense to set a negative bitrate.
2012-11-03 20:38:02 +01:00
Stefano Sabatini
1c755f7667
lavc/options_table: make "request_sample_fmt" an AV_OPT_TYPE_SAMPLE_FMT option
...
Simplify, increase robustness in case a new sample format is added.
2012-11-03 12:15:42 +01:00
Michael Niedermayer
dcb0d1193a
Merge commit '5ac673b5531d846b79a3d77e3e932e0cb1234c45'
...
* commit '5ac673b5531d846b79a3d77e3e932e0cb1234c45':
atrac3: use AVCodecContext.channels instead of keeping a private copy
atrac3: simplify some loop indexing
atrac3: cosmetics: pretty-printing and renaming
pcm: define AVCodec instances only for enabled codecs
libxvid: remove useless doxy comments.
lavc: remove stats_out from the options table.
Conflicts:
libavcodec/atrac3.c
libavcodec/pcm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-23 12:36:16 +02:00
Anton Khirnov
b691135d0c
lavc: remove stats_out from the options table.
...
Since it is declared as a string AVOption, the generic freeing code
attempts to free it on codec close. Some codecs might have already freed
it elsewhere (or didn't even allocate it with av_malloc() in the first
place), so this might lead to an invalid free.
There is no point in having this field accessible as an AVOption, so
remove it from the options table.
Fixes Bug 380.
CC: libav-stable@libav.org
2012-10-22 14:44:07 +02:00
Michael Niedermayer
85fe70b64c
Merge commit 'ca411fc1d34329cd17b28627f697e391ae52073f'
...
* commit 'ca411fc1d34329cd17b28627f697e391ae52073f':
avcodec: Remove broken MMI optimizations
Conflicts:
arch.mak
configure
libavcodec/avcodec.h
libavcodec/mips/Makefile
libavcodec/mips/dsputil_mmi.c
libavcodec/mips/idct_mmi.c
libavcodec/mips/mmi.h
libavcodec/mips/mpegvideo_mmi.c
libavcodec/options_table.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-13 15:25:11 +02:00
Diego Biurrun
ca411fc1d3
avcodec: Remove broken MMI optimizations
...
The code fails to compile and is broken beyond repair.
2012-10-12 20:56:54 +02:00
Diego Biurrun
0a75d1da23
options_table: refs option is not snow-only
2012-10-11 18:27:44 +02:00