Anton Khirnov
c6080d8900
lavc: remove mp3_header_(de)compress bitstream filters
...
They mangle the mp3 header in a non-standard way to save a few bytes.
People who care about space so much should just use a more efficient
codec.
2013-11-26 09:27:50 +01:00
Anton Khirnov
7671dd7cd7
avconv: add support for VDPAU decoding
2013-11-23 11:55:53 +01:00
Anton Khirnov
07fd0a2219
avconv: add infrastructure for using hwaccels
2013-11-23 11:55:43 +01:00
Anton Khirnov
430d121964
pcx: round up in bits->bytes conversion in a buffer size check
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:58:27 +01:00
Anton Khirnov
c918e08b9c
truemotion1: make sure index does not go out of bounds
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:58:08 +01:00
Anton Khirnov
ce9bba5340
avidec: fix a memleak in the dv init code.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:57:58 +01:00
Anton Khirnov
de4ec972c0
vc1: fix a memleak.
...
Happens on a B-frame when neither low_delay nor last_picture_ptr is set
(probably corrupted streams only).
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2013-11-21 20:57:36 +01:00
Anton Khirnov
ca41c72c6d
motionpixels: clip VLC codes.
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:57:20 +01:00
Anton Khirnov
30be1ea33e
matroskadec: pad EBML_BIN data.
...
It might be passed to code requiring padding, such as lzo decompression.
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:54:30 +01:00
Anton Khirnov
f0259a587e
h264: check buffer size before accessing it
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:54:20 +01:00
Anton Khirnov
1f3e56b6dc
gifdec: convert to bytestream2
2013-11-21 20:53:06 +01:00
Anton Khirnov
c453723ad7
gifdec: check that the image dimensions are non-zero
...
Also add an error message an return a more suitable error code
(INVALIDDATA, not EINVAL);
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:52:42 +01:00
Anton Khirnov
074c769de9
h264_cavlc: check the size of the intra PCM data.
...
Fixes invalid reads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-11-21 20:52:34 +01:00
Anton Khirnov
a553c6a347
lavc: use buf[0] instead of data[0] in checks whether a frame is allocated
...
data[0] may be NULL for valid frames with hwaccel pixel formats.
2013-11-18 18:09:48 +01:00
Anton Khirnov
1c01b0253e
mpegvideo_enc: use the AVFrame API properly.
2013-11-16 17:51:10 +01:00
Anton Khirnov
a6064b12b4
ffv1: use the AVFrame API properly.
2013-11-16 17:50:51 +01:00
Anton Khirnov
706a92926c
jpegls: use the AVFrame API properly.
2013-11-16 17:50:28 +01:00
Anton Khirnov
14b35bf065
huffyuv: use the AVFrame API properly.
2013-11-16 17:50:20 +01:00
Anton Khirnov
ffe04c3303
libxvid: use the AVFrame API properly.
2013-11-16 17:50:09 +01:00
Anton Khirnov
863a670e48
pcxenc: use the AVFrame API properly.
2013-11-16 17:49:47 +01:00
Anton Khirnov
7ca97aa7ee
roqvideo: remove unused variables
2013-11-16 17:49:40 +01:00
Anton Khirnov
372262853b
libschroedingerenc: use the AVFrame API properly.
2013-11-16 17:49:31 +01:00
Anton Khirnov
97168b204a
eatgv: use the AVFrame API properly.
2013-11-16 17:49:21 +01:00
Anton Khirnov
b18c7c8d3d
libxavs: use the AVFrame API properly.
2013-11-16 17:49:15 +01:00
Anton Khirnov
5290e02a0a
nuv: use the AVFrame API properly.
2013-11-16 17:49:02 +01:00
Anton Khirnov
d56a114adc
flashsvenc: use the AVFrame API properly.
2013-11-16 17:48:14 +01:00
Anton Khirnov
57e7b3a89f
dnxhdenc: use the AVFrame API properly.
2013-11-16 17:47:58 +01:00
Anton Khirnov
d2287740d9
libx264: use the AVFrame API properly.
2013-11-16 17:47:50 +01:00
Anton Khirnov
394ef4d18f
svq1enc: use the AVFrame API properly.
2013-11-16 17:47:34 +01:00
Anton Khirnov
219b35f5d1
gif: use the AVFrame API properly.
2013-11-16 17:47:25 +01:00
Anton Khirnov
45bde93eef
sunrastenc: use the AVFrame API properly.
2013-11-16 17:47:09 +01:00
Anton Khirnov
fb26d76167
targaenc: use the AVFrame API properly.
2013-11-16 17:46:51 +01:00
Anton Khirnov
f26f71139f
tiffenc: use the AVFrame API properly.
2013-11-16 17:46:24 +01:00
Anton Khirnov
78c6c9d6c1
pngenc: use the AVFrame API properly.
2013-11-16 17:46:16 +01:00
Anton Khirnov
0ea430c75b
lclenc: use the AVFrame API properly.
2013-11-16 17:46:01 +01:00
Anton Khirnov
d48c206302
qtrleenc: use the AVFrame API properly.
2013-11-16 17:45:28 +01:00
Anton Khirnov
c8a525197f
ulti: use the AVFrame API properly.
2013-11-16 17:44:54 +01:00
Anton Khirnov
6792559f8a
vc1: use the AVFrame API properly.
2013-11-16 17:44:40 +01:00
Anton Khirnov
042aec41ae
flashsv: use the AVFrame API properly.
2013-11-16 17:44:04 +01:00
Anton Khirnov
e4155f15b3
eamad: use the AVFrame API properly.
2013-11-16 17:43:55 +01:00
Anton Khirnov
4e7e8055a7
dpxenc: use the AVFrame API properly.
2013-11-16 17:43:36 +01:00
Anton Khirnov
2a85a192c7
bmpenc: use the AVFrame API properly.
2013-11-16 17:43:05 +01:00
Anton Khirnov
6a08d7fcc5
sgienc: use the AVFrame API properly.
2013-11-16 17:42:36 +01:00
Anton Khirnov
730bac7bab
mss4: use the AVFrame API properly.
2013-11-16 17:42:23 +01:00
Anton Khirnov
207909911d
mss3: use the AVFrame API properly.
2013-11-16 17:41:54 +01:00
Anton Khirnov
e9198f61db
mss2: use the AVFrame API properly.
2013-11-16 17:41:42 +01:00
Anton Khirnov
acaffdca21
mss1: use the AVFrame API properly.
2013-11-16 17:41:32 +01:00
Anton Khirnov
508b37557b
tiertexseqv: use the AVFrame API properly.
2013-11-16 17:41:07 +01:00
Anton Khirnov
68af7f54a6
smc: use the AVFrame API properly.
2013-11-16 17:40:57 +01:00
Anton Khirnov
32f7cf9bc3
truemotion2: use the AVFrame API properly.
2013-11-16 13:29:24 +01:00
Anton Khirnov
42d40fd28c
truemotion1: use the AVFrame API properly.
2013-11-16 13:27:33 +01:00
Anton Khirnov
4a4841d4e0
fraps: use the AVFrame API properly.
2013-11-16 13:27:17 +01:00
Anton Khirnov
e8ef8a328c
rpza: use the AVFrame API properly.
2013-11-16 13:27:07 +01:00
Anton Khirnov
e52f38bc2e
motionpixels: use the AVFrame API properly.
2013-11-16 13:26:50 +01:00
Anton Khirnov
aca214783a
vmdvideo: use the AVFrame API properly.
2013-11-16 13:25:56 +01:00
Anton Khirnov
3c8ea9d4a7
vmnc: use the AVFrame API properly.
2013-11-16 13:25:29 +01:00
Anton Khirnov
04f30711d8
xan: use the AVFrame API properly.
2013-11-16 13:25:17 +01:00
Anton Khirnov
f3cd23fbc8
xxan: use the AVFrame API properly.
2013-11-16 13:24:56 +01:00
Anton Khirnov
6886a85f5c
zerocodec: use the AVFrame API properly.
2013-11-16 13:24:44 +01:00
Anton Khirnov
a837c4f2df
zmbvenc: use the AVFrame API properly.
2013-11-16 13:24:10 +01:00
Anton Khirnov
d100f9e7cd
flicvideo: use the AVFrame API properly.
2013-11-16 13:23:59 +01:00
Anton Khirnov
84099f51f3
smacker: use the AVFrame API properly.
2013-11-16 13:23:38 +01:00
Anton Khirnov
5c96f02901
mmvideo: use the AVFrame API properly.
2013-11-16 13:23:14 +01:00
Anton Khirnov
2e09096da9
kgv1: use the AVFrame API properly.
2013-11-16 13:23:05 +01:00
Anton Khirnov
79d501a860
indeo2: use the AVFrame API properly.
2013-11-16 13:21:02 +01:00
Anton Khirnov
4b8a194146
iff: use the AVFrame API properly.
2013-11-16 13:20:44 +01:00
Anton Khirnov
c5dfb9033f
msrle: use the AVFrame API properly.
2013-11-16 13:20:19 +01:00
Anton Khirnov
952f943d40
FATE: add a jv test
2013-11-16 13:20:06 +01:00
Anton Khirnov
b7462a3904
jvdec: use the AVFrame API properly.
2013-11-16 12:52:54 +01:00
Anton Khirnov
2d2a92f721
dxa: use the AVFrame API properly.
2013-11-16 12:52:36 +01:00
Anton Khirnov
55f954e767
qpeg: use the AVFrame API properly.
2013-11-16 12:52:18 +01:00
Anton Khirnov
01de3c1dd5
cin video: use the AVFrame API properly.
2013-11-16 12:52:02 +01:00
Anton Khirnov
ef2a99c7f4
msvideo1: use the AVFrame API properly.
2013-11-16 12:51:08 +01:00
Anton Khirnov
a639ea7f4b
escape124: use the AVFrame API properly.
2013-11-16 12:49:45 +01:00
Anton Khirnov
224b6edd8b
qtrle: use the AVFrame API properly.
2013-11-16 12:49:18 +01:00
Anton Khirnov
845020ed89
cljr: use the AVFrame API properly.
2013-11-16 12:49:01 +01:00
Anton Khirnov
4a8a35bc1f
cinepak: use the AVFrame API properly.
2013-11-16 12:48:30 +01:00
Anton Khirnov
cec5ce4922
cdxl: remove an unused variable
2013-11-16 12:48:25 +01:00
Anton Khirnov
670c74518f
c93: use the AVFrame API properly.
2013-11-16 12:47:49 +01:00
Anton Khirnov
a83fd5010c
bethsoftvid: use the AVFrame API properly.
2013-11-16 12:47:15 +01:00
Anton Khirnov
33329c6e87
avs: use the AVFrame API properly.
2013-11-16 12:46:20 +01:00
Anton Khirnov
6139f481ac
asvenc: use the AVFrame API properly.
2013-11-16 12:45:29 +01:00
Anton Khirnov
13e9cc9ce0
a64multienc: use the AVFrame API properly.
2013-11-16 12:45:05 +01:00
Anton Khirnov
b9fb59d2ab
lavc: deprecate avcodec_alloc_frame().
2013-11-16 12:44:50 +01:00
Anton Khirnov
5b9c3b4505
Replace all instances of avcodec_alloc_frame() with av_frame_alloc().
2013-11-16 12:44:20 +01:00
Anton Khirnov
2ff302cb6b
lavc: update coded_frame doxy.
...
It is not used during decoding anymore.
2013-11-16 12:41:50 +01:00
Anton Khirnov
b068660ffa
lavc: deprecate CODEC_CAP_NEG_LINESIZES
...
It was never used in any codec since it was added 3 years ago.
2013-11-16 12:41:40 +01:00
Anton Khirnov
9eda9d3322
h264: free the tables and uninitialize the context on flush
...
Prevents referencing empty frames when the first packet after the flush
does not contain a frame.
2013-11-14 19:00:20 +01:00
Anton Khirnov
cce3e0a49f
Move av_fast_{m,re}alloc from lavc to lavu.
2013-11-14 09:42:22 +01:00
Anton Khirnov
aa24122989
lavc: deprecate FF_MAX_B_FRAMES
...
We should not arbitrarily decide the maximum B-frame number for all
encoders supported by Libav, each encoder should be able to set its own
limits.
2013-11-14 09:41:03 +01:00
Anton Khirnov
b6094811f9
lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h
...
They are mpegvideo-specific and not supposed to be used by callers.
2013-11-14 09:40:39 +01:00
Anton Khirnov
b45c87083d
lavc: schedule unused FF_QSCALE_TYPE_* for removal on next bump
2013-11-14 09:40:27 +01:00
Anton Khirnov
8941971a8f
lavc: make error_rate a private option of mpegvideo encoders
2013-11-14 09:39:43 +01:00
Anton Khirnov
728c465856
vdpau: add a constructor for AVVDPAUContext.
...
We will likely want to add new fields to it in the future, so this is
needed to avoid breaking ABI.
2013-11-14 09:38:58 +01:00
Anton Khirnov
ca22d1dea2
vdpau: add a convenience function for getting a decoder profile.
...
Based on the code by Rémi Denis-Courmont <remi@remlab.net > from VLC.
2013-11-14 09:38:50 +01:00
Anton Khirnov
d42db44cfe
avienc: drop the vfr flag.
...
AVI does not really support vfr properly, only by padding with null
packets.
2013-11-08 21:02:29 +01:00
Anton Khirnov
da6506c607
lavc: move AVCodecContext.pkt to AVCodecInternal
...
It's a private field, not meant to be accessed from outside lavc.
2013-11-04 08:51:26 +01:00
Anton Khirnov
38ecc3702d
pthread: store thread contexts in AVCodecInternal instead of AVCodecContext
...
It's a private field, it should not be visible to callers.
Deprecate AVCodecContext.thread_opaque
2013-11-04 08:51:26 +01:00
Anton Khirnov
daa7a1d443
pthread_slice: rename ThreadContext -> SliceThreadContext
...
This should prevent confusion with frame threading.
2013-11-04 08:51:26 +01:00
Anton Khirnov
cc14ee03a7
lavc: split slice and frame threading functions into separate files
2013-11-04 08:51:26 +01:00