1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
Commit Graph

286 Commits

Author SHA1 Message Date
Michael Niedermayer
4e8ee7acb8 libavcodec/svq3: clarify unknown_flag by renaming to has_watermark
The name is based on how the field is used in the code

Reviewed-by: compn <tempn@mi.rr.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-02 15:34:02 +02:00
Michael Niedermayer
6197672720 avcodec/svq3: Print unknown fields at debug level
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-02 02:58:00 +02:00
Michael Niedermayer
3cd666cfbc avcodec/svq3: Fix memleak of last_pic_for_ec
Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-05-01 03:15:46 +02:00
Michael Niedermayer
36f862e04c Merge commit 'a0f2946068c62e18cb05ac25c0df3d86077251a6'
* commit 'a0f2946068c62e18cb05ac25c0df3d86077251a6':
  h264: use properly allocated AVFrames

Conflicts:
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_refs.c
	libavcodec/h264_slice.c
	libavcodec/svq3.c
	libavcodec/vda_h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-29 16:35:24 +02:00
Anton Khirnov
a0f2946068 h264: use properly allocated AVFrames 2015-04-29 05:52:58 +02:00
Michael Niedermayer
99a567cbe2 Merge commit '249796e2560c2cce1add722c3e873de96b17be74'
* commit '249796e2560c2cce1add722c3e873de96b17be74':
  svq3: initialize some required H264Context fields.

See: e6c710600e
See: aa000ddab2
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-06 01:41:00 +02:00
Michael Niedermayer
aa000ddab2 avcodec/svq3: add scaling matrix init that was removed from h264 init
This is needed for svq3

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-05 22:17:50 +02:00
Michael Niedermayer
e6c710600e avcodec/svq3: add initialization which was removed from h264 init
This is needed for the svq3 code to work

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-04-05 21:36:07 +02:00
Anton Khirnov
249796e256 svq3: initialize some required H264Context fields.
They are no longer initialized in ff_h264_decode_init() since 43fd3dd,
so svq3 needs to initialize the manually.

Fixes svq3 decoding, broken since 43fd3dd.
2015-04-05 21:02:56 +02:00
Michael Niedermayer
fa7c08d5e1 Merge commit 'c28ed1d743443e783537d279ae721be3bbdf7646'
* commit 'c28ed1d743443e783537d279ae721be3bbdf7646':
  h264: move [uv]linesize to the per-slice context

Conflicts:
	libavcodec/h264_mb.c
	libavcodec/h264_slice.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 23:16:36 +01:00
Michael Niedermayer
3d1d8e1f95 Merge commit '36d04801ba9d8622c2d759c172aea18561bac74d'
* commit '36d04801ba9d8622c2d759c172aea18561bac74d':
  h264: move the scratch buffers into the per-slice context

Conflicts:
	libavcodec/h264.h
	libavcodec/h264_slice.c
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 18:50:53 +01:00
Michael Niedermayer
d76559fb5f Merge commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977'
* commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977':
  h264: move mb_{x,y} into the per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_mb.c
	libavcodec/h264_slice.c
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 16:46:15 +01:00
Michael Niedermayer
668c65e7e7 Merge commit '0edbe6faa7ef80daf0e84353cbe733389bf1a522'
* commit '0edbe6faa7ef80daf0e84353cbe733389bf1a522':
  h264: move mb_xy into the per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264_cabac.c
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 16:18:29 +01:00
Michael Niedermayer
db4234c500 Merge commit '07c5ca551b7327d3c4e33738cc0cd2d5ac2779fa'
* commit '07c5ca551b7327d3c4e33738cc0cd2d5ac2779fa':
  h264: move is_complex into the per-slice context

Conflicts:
	libavcodec/h264_slice.c
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 16:10:31 +01:00
Michael Niedermayer
70eec8f432 Merge commit '47a0d393504d6726c4a235951153bee0abb3f7d6'
* commit '47a0d393504d6726c4a235951153bee0abb3f7d6':
  h264: move mb_skip_run into the per-slice context

Conflicts:
	libavcodec/h264_cavlc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 16:09:14 +01:00
Michael Niedermayer
4c5c913dd8 Merge commit 'e7226984ac13aacb84eae77a372df8ff7685848f'
* commit 'e7226984ac13aacb84eae77a372df8ff7685848f':
  h264: move [{top,left}_]cbp into the per-slice context

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 15:48:13 +01:00
Michael Niedermayer
739edc1a7e Merge commit 'bf03a878a76dea29b36f368759e9f66102b39a5f'
* commit 'bf03a878a76dea29b36f368759e9f66102b39a5f':
  h264: move mb[_{padding,luma_dc}] into the per-slice context

Conflicts:
	libavcodec/h264.h
	libavcodec/h264_cavlc.c
	libavcodec/h264_mb.c
	libavcodec/h264_slice.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 15:36:57 +01:00
Michael Niedermayer
97c8ecaada Merge commit '56febc993b928ccc039a32158ca60b234c311875'
* commit '56febc993b928ccc039a32158ca60b234c311875':
  h264: move the slice type variables into the per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_slice.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 14:30:19 +01:00
Michael Niedermayer
f1436a7f96 Merge commit 'e6287f077c3e8e4aca11e61dd4bade1351439e6b'
* commit 'e6287f077c3e8e4aca11e61dd4bade1351439e6b':
  h264: move {mv,ref}_cache into the per-slice context

Conflicts:
	libavcodec/h264_cabac.c
	libavcodec/h264_mb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 14:06:30 +01:00
Michael Niedermayer
b7e0356cc3 Merge commit 'f69574cf7aca4fe4d57a2155e925f37fc863474d'
* commit 'f69574cf7aca4fe4d57a2155e925f37fc863474d':
  h264: move non_zero_count_cache into the per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 14:02:02 +01:00
Michael Niedermayer
6ec279b54c Merge commit '64c81b2cd0dcf1fe66c381a5d2c707dddcf35a7e'
* commit '64c81b2cd0dcf1fe66c381a5d2c707dddcf35a7e':
  h264: move *_samples_available into the per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264_mb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:59:16 +01:00
Michael Niedermayer
6abd1e901c Merge commit '7d8154edd594981e7891d57de91f2260f8a62939'
* commit '7d8154edd594981e7891d57de91f2260f8a62939':
  h264: move intra4x4_pred_mode[_cache] into the per-slice context

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:44:38 +01:00
Michael Niedermayer
61635c7a88 Merge commit '8b00f4df20f4a8ab0656fdaf7d00233a6515a052'
* commit '8b00f4df20f4a8ab0656fdaf7d00233a6515a052':
  h264: move some neighbour information into the per-slice context

Conflicts:
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:42:44 +01:00
Michael Niedermayer
a2740a060b Merge commit '4bd5ac200d15b4f458a50f66006549825f9fc865'
* commit '4bd5ac200d15b4f458a50f66006549825f9fc865':
  h264: move {chroma,intra16x16}_pred_mode into the per-slice context

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:35:38 +01:00
Michael Niedermayer
c27f53b9fb Merge commit 'd231e84b06a9964c840cff4e228509f706165fb6'
* commit 'd231e84b06a9964c840cff4e228509f706165fb6':
  h264: move the quantizers into the per-slice context

Conflicts:
	libavcodec/dxva2_h264.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_loopfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:24:23 +01:00
Michael Niedermayer
756dc7bd18 Merge commit '92c6c2a605f9b077b8fbc25b7ed6625541232b87'
* commit '92c6c2a605f9b077b8fbc25b7ed6625541232b87':
  h264: split weighted pred-related vars into per-slice context

Conflicts:
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_mb.c
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21 13:13:12 +01:00
Anton Khirnov
c28ed1d743 h264: move [uv]linesize to the per-slice context
While it is a per-frame variable, it is only really used in the
low-level decoding code, so it is more efficient to store it in the
slice context.
2015-03-21 11:27:16 +01:00
Anton Khirnov
36d04801ba h264: move the scratch buffers into the per-slice context
Also change the method for allocating them. Instead of two possible
alloc calls from different places, just ensure they are allocated at the
start of each slice. This should be simpler and less bug-prone than the
previous method.
2015-03-21 11:27:15 +01:00
Anton Khirnov
d4d9068cdf h264: move mb_{x,y} into the per-slice context 2015-03-21 11:27:14 +01:00
Anton Khirnov
0edbe6faa7 h264: move mb_xy into the per-slice context 2015-03-21 11:27:14 +01:00
Anton Khirnov
07c5ca551b h264: move is_complex into the per-slice context 2015-03-21 11:27:14 +01:00
Anton Khirnov
47a0d39350 h264: move mb_skip_run into the per-slice context 2015-03-21 11:27:14 +01:00
Anton Khirnov
e7226984ac h264: move [{top,left}_]cbp into the per-slice context 2015-03-21 11:27:13 +01:00
Anton Khirnov
bf03a878a7 h264: move mb[_{padding,luma_dc}] into the per-slice context 2015-03-21 11:27:13 +01:00
Anton Khirnov
56febc993b h264: move the slice type variables into the per-slice context 2015-03-21 11:27:13 +01:00
Anton Khirnov
e6287f077c h264: move {mv,ref}_cache into the per-slice context 2015-03-21 11:27:13 +01:00
Anton Khirnov
f69574cf7a h264: move non_zero_count_cache into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
64c81b2cd0 h264: move *_samples_available into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
7d8154edd5 h264: move intra4x4_pred_mode[_cache] into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
8b00f4df20 h264: move some neighbour information into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
4bd5ac200d h264: move {chroma,intra16x16}_pred_mode into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
d231e84b06 h264: move the quantizers into the per-slice context 2015-03-21 11:27:12 +01:00
Anton Khirnov
92c6c2a605 h264: split weighted pred-related vars into per-slice context 2015-03-21 11:27:09 +01:00
Michael Niedermayer
a94eba6f0c Merge commit '7f9f771eac0d37a632e0ed9bd89961d57fcfb7e0'
* commit '7f9f771eac0d37a632e0ed9bd89961d57fcfb7e0':
  avcodec: Don't anonymously typedef structs

Conflicts:
	libavcodec/alac.c
	libavcodec/cinepak.c
	libavcodec/cscd.c
	libavcodec/dcadec.c
	libavcodec/g723_1.c
	libavcodec/gif.c
	libavcodec/iff.c
	libavcodec/kgv1dec.c
	libavcodec/libopenjpegenc.c
	libavcodec/libspeexenc.c
	libavcodec/ra288.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-14 21:18:17 +01:00
Diego Biurrun
7f9f771eac avcodec: Don't anonymously typedef structs 2015-02-14 10:13:49 -08:00
Michael Niedermayer
e6f1601d6d avcodec/svq3: Use av_mallocz_array() for emu_edge_buffer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-14 13:23:57 +01:00
Michael Niedermayer
2493558a06 avcodec/svq3: Check av_mallocs return value
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-01-14 13:23:20 +01:00
Michael Niedermayer
075a165d27 avcodec/svq3: Dont memcpy AVFrame
This avoids out of array accesses

Fixes: asan_heap-uaf_21f42e4_9_asan_heap-uaf_21f42e4_278_gl2.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-04 00:21:17 +02:00
Michael Niedermayer
89d2fc62db avcodec/svq3: Fix "incompatible pointer type" warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-05 23:30:35 +02:00
Michael Niedermayer
9d6a27d533 Merge commit '57f09608e1600d1cf1679885a46f5004d522d68f'
* commit '57f09608e1600d1cf1679885a46f5004d522d68f':
  dsputil: Move thirdpel-related bits into their own context

Conflicts:
	libavcodec/svq3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-22 23:26:23 +01:00