Commit Graph

172 Commits

Author SHA1 Message Date
Michael Niedermayer 9517900bef Merge commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b'
* commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b':
  mpegvideo: move mpegvideo formats-related defines to mpegutils.h

Conflicts:
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_mvpred.h
	libavcodec/svq1enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-17 12:36:48 +01:00
Vittorio Giovara e0c16e4e32 mpegvideo: move mpegvideo formats-related defines to mpegutils.h 2014-03-16 23:04:41 +01:00
Michael Niedermayer 3edc3b1595 avcodec/mpeg4videodec: Check for bitstream overread in decode_vol_header()
Fixes out of array read
Fixes: 08e48e9daae7d8f8ab6dbe3919e797e5-asan_heap-oob_157461c_5295_cov_1266798650_firefing.mpg
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-20 05:49:52 +01:00
Michael Niedermayer 36fb07d1ab avcodec/mpeg4videodec: set field durations to safe values when they are invalid
Fixes division by 0
Fixes: 3c980274cecaca6ca5d6e517c0c1983e-signal_sigabrt_7ffff7125425_410_cov_3621042467_2_audio_streams.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-02-19 13:45:39 +01:00
Janne Grunau 7716dd9fbb xvid: switch to xvid mmx idct as soon as possible
The idct implementation cannot be changed after the quantization matrices
are read since it use a different permutaion.

Bug-Id: videolan/7411
2014-01-31 11:09:11 +01:00
Michael Niedermayer 21b25537fb avcodec/mpeg4videodec: use av_fast_padded_malloc() for bitstream buffer
Fixes use of uninitialized memory with vlc (sample from ticket3277)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-07 01:29:38 +01:00
Michael Niedermayer cf948200bd Merge commit 'ff7ffe48097f32417781fe8b2b417eff05a52c55'
* commit 'ff7ffe48097f32417781fe8b2b417eff05a52c55':
  mpeg4videodec: move showed_packed_warning from MpegEncContext to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 01:46:51 +01:00
Michael Niedermayer 36e2ec4068 Merge commit 'f7d228676cb7669059889c4225c8a8dc56708c24'
* commit 'f7d228676cb7669059889c4225c8a8dc56708c24':
  mpeg4videodec: move intra_dc_threshold from MpegEncContext to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 01:38:55 +01:00
Michael Niedermayer 92e10e34b1 Merge commit 'e41ff4210ac1192c62de3052b33a38c7bcf772f2'
* commit 'e41ff4210ac1192c62de3052b33a38c7bcf772f2':
  mpeg4videodec: move use_intra_dc_vlc from MpegEncContext to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06 01:14:46 +01:00
Anton Khirnov ff7ffe4809 mpeg4videodec: move showed_packed_warning from MpegEncContext to Mpeg4DecContext 2013-12-05 13:22:37 +01:00
Anton Khirnov f7d228676c mpeg4videodec: move intra_dc_threshold from MpegEncContext to Mpeg4DecContext 2013-12-05 13:22:18 +01:00
Anton Khirnov e41ff4210a mpeg4videodec: move use_intra_dc_vlc from MpegEncContext to Mpeg4DecContext 2013-12-05 13:19:22 +01:00
Michael Niedermayer f09f295109 Merge commit 'e026ee0446de27fc38e33e98704fada012fdc763'
* commit 'e026ee0446de27fc38e33e98704fada012fdc763':
  mpeg4videodec: move sprite_{shift,traj} from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:40:51 +01:00
Michael Niedermayer 7f18cb9101 Merge commit '513d849bb605d3d862da1ada709bd2ca1ac68f58'
* commit '513d849bb605d3d862da1ada709bd2ca1ac68f58':
  mpeg4videodec: move num_sprite_warping_points from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:34:46 +01:00
Michael Niedermayer 4c55aa8f93 Merge commit '9ba3fc3e3d12c9ef00dcb0222b7ea0ccb5c4a091'
* commit '9ba3fc3e3d12c9ef00dcb0222b7ea0ccb5c4a091':
  mpeg4videodec: move sprite_brightness_change from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:29:26 +01:00
Michael Niedermayer ae4e7f7ba6 Merge commit '58c120a9290eef057dbf26761a4f89b7f67bbde1'
* commit '58c120a9290eef057dbf26761a4f89b7f67bbde1':
  mpeg4videodec: move scalability from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:23:43 +01:00
Michael Niedermayer b27ba2e540 Merge commit '6e81597d5a89f64dfab5c7e99e46b4355139e324'
* commit '6e81597d5a89f64dfab5c7e99e46b4355139e324':
  mpeg4videodec: move enhancement_type from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:15:46 +01:00
Michael Niedermayer aeead42789 Merge commit '2992afda83a7d5c0a9ec45bdce76d8abbe0961c5'
* commit '2992afda83a7d5c0a9ec45bdce76d8abbe0961c5':
  mpeg4videodec: remove a write-only variable from MpegEncContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:02:14 +01:00
Michael Niedermayer 1897c4a119 Merge commit '3b1c0f686d5a162ceb5048910a7ce0bf7ed3a1ab'
* commit '3b1c0f686d5a162ceb5048910a7ce0bf7ed3a1ab':
  mpeg4videodec: move new_pred from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:55:39 +01:00
Michael Niedermayer 47e5eaf8c9 Merge commit 'e89247debd5276d57ce4a26516224204f9541af0'
* commit 'e89247debd5276d57ce4a26516224204f9541af0':
  mpeg4videodec: replace MpegEncContext.reduced_res_vop with a local variable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:46:53 +01:00
Michael Niedermayer f4c28aea38 Merge commit '8cebc9eaac8631adb23dd1e46c37ad8474139a07'
* commit '8cebc9eaac8631adb23dd1e46c37ad8474139a07':
  mpeg4videodec: remove a write-only variable from MpegEncContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:40:09 +01:00
Michael Niedermayer 0cea39fdd3 Merge commit 'b1aacd56685cd131f517e0551834a0bbd3f5f809'
* commit 'b1aacd56685cd131f517e0551834a0bbd3f5f809':
  mpeg4videodec: move t_frame from MpegEncContext to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:20:11 +01:00
Michael Niedermayer 79c1cdd973 mpeg4_update_thread_context: copy the whole mpeg4 specific context instead of variables one by one
This simplifies the code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:12:41 +01:00
Michael Niedermayer 3e5cd34cd0 Merge commit '038890740014dc33d2e2f04da7cf0a9da821264e'
* commit '038890740014dc33d2e2f04da7cf0a9da821264e':
  mpeg4videodec: move cplx_estimation_* fields from MpegEncContext to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:11:16 +01:00
Michael Niedermayer b08ff07d8d avcodec/mpeg4videodec: update bug workaround related variables like they where before
This fixes the code after the variables have been moved into the
mpeg4 decoder.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 03:06:40 +01:00
Michael Niedermayer b4ef7447eb Merge commit '43af264de8606668c6b2fa7f96c946bdc3dbe072'
* commit '43af264de8606668c6b2fa7f96c946bdc3dbe072':
  mpeg4videodec: move mpeg4-specific bug workaround variables from MpegEncContext to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 02:52:09 +01:00
Michael Niedermayer ec5499d8ba Merge commit 'e2ceb17642f374a7df8f1f5d3d2b2446525bc7fb'
* commit 'e2ceb17642f374a7df8f1f5d3d2b2446525bc7fb':
  mpeg4videodec: move mpeg4-specific post-frame-decode code from h264dec to mpeg4videodec

Conflicts:
	libavcodec/h263dec.c
	libavcodec/mpeg4video.h
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 02:42:56 +01:00
Michael Niedermayer 6c9b82b6a0 avcodec/mpeg4videodec: move bug workaround code into seperate function
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 02:12:11 +01:00
Michael Niedermayer ee9d53e572 Merge commit '48e139409556861c9e561ce34133891d8eecc3cf'
* commit '48e139409556861c9e561ce34133891d8eecc3cf':
  mpeg4videodec: move MpegEncContext.resync_marker into Mpeg4DecContext.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 01:28:04 +01:00
Michael Niedermayer 91c63cb053 avcodec/mpeg4videodec: copy rvlc in mpeg4_update_thread_context too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:40:15 +01:00
Michael Niedermayer 9c835acc1d Merge commit 'bc5abfb19e7ff00b859120561d6ffd622c7904fe'
* commit 'bc5abfb19e7ff00b859120561d6ffd622c7904fe':
  mpeg4videodec: move MpegEncContext.rvlc to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:27:30 +01:00
Michael Niedermayer cdc21e4abe Merge commit '9f0617d2137bb7231b181d74392cd84ef4844cd7'
* commit '9f0617d2137bb7231b181d74392cd84ef4844cd7':
  mpeg4videodec: remove write-only sprite variables from MpegEncContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:20:35 +01:00
Michael Niedermayer 36068709b3 avcodec/mpeg4videodec: Fix code so it also works after moving vol_sprite_usage around
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:13:54 +01:00
Michael Niedermayer 68c90fc086 Merge commit '1a89025793ca73d9685a8ce8e3194efa64dd6844'
* commit '1a89025793ca73d9685a8ce8e3194efa64dd6844':
  mpeg4videodec: move MpegEncContext.vol_sprite_usage to Mpeg4DecContext

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:04:26 +01:00
Michael Niedermayer e2f63be012 Merge commit 'e62a43f6b1a9c0c82e1df33c0c038e32029c0aa4'
* commit 'e62a43f6b1a9c0c82e1df33c0c038e32029c0aa4':
  mpeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext

Conflicts:
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:45:05 +01:00
Michael Niedermayer ad13b8ca9b Merge commit 'ee8af2dd99dcb7a01a667deedec81d1aa2a00d72'
* commit 'ee8af2dd99dcb7a01a667deedec81d1aa2a00d72':
  mpeg4videodec: move MpegEncContext.shape to Mpeg4DecContext

Conflicts:
	libavcodec/h263dec.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:35:52 +01:00
Michael Niedermayer be0b869b04 Merge commit '35e0833d410e31d9fd35695ad798c5d13de2af58'
* commit '35e0833d410e31d9fd35695ad798c5d13de2af58':
  mpeg4videodec: add a mpeg4-specific private context.

Conflicts:
	libavcodec/mpeg4video_parser.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:27:28 +01:00
Anton Khirnov e026ee0446 mpeg4videodec: move sprite_{shift,traj} from MpegEncContext to Mpeg4DecContext 2013-11-29 17:37:16 +01:00
Anton Khirnov 513d849bb6 mpeg4videodec: move num_sprite_warping_points from MpegEncContext to Mpeg4DecContext 2013-11-29 17:36:57 +01:00
Anton Khirnov 9ba3fc3e3d mpeg4videodec: move sprite_brightness_change from MpegEncContext to Mpeg4DecContext 2013-11-29 17:36:43 +01:00
Anton Khirnov 58c120a929 mpeg4videodec: move scalability from MpegEncContext to Mpeg4DecContext 2013-11-29 17:36:28 +01:00
Anton Khirnov 6e81597d5a mpeg4videodec: move enhancement_type from MpegEncContext to Mpeg4DecContext 2013-11-29 17:36:05 +01:00
Anton Khirnov 2992afda83 mpeg4videodec: remove a write-only variable from MpegEncContext 2013-11-29 17:35:57 +01:00
Anton Khirnov 3b1c0f686d mpeg4videodec: move new_pred from MpegEncContext to Mpeg4DecContext 2013-11-29 17:35:13 +01:00
Anton Khirnov e89247debd mpeg4videodec: replace MpegEncContext.reduced_res_vop with a local variable 2013-11-29 17:34:34 +01:00
Anton Khirnov 8cebc9eaac mpeg4videodec: remove a write-only variable from MpegEncContext 2013-11-29 14:19:48 +01:00
Anton Khirnov b1aacd5668 mpeg4videodec: move t_frame from MpegEncContext to Mpeg4DecContext 2013-11-29 14:19:48 +01:00
Anton Khirnov 0388907400 mpeg4videodec: move cplx_estimation_* fields from MpegEncContext to Mpeg4DecContext 2013-11-29 14:19:48 +01:00
Anton Khirnov 43af264de8 mpeg4videodec: move mpeg4-specific bug workaround variables from MpegEncContext to Mpeg4DecContext 2013-11-29 14:19:48 +01:00
Anton Khirnov e2ceb17642 mpeg4videodec: move mpeg4-specific post-frame-decode code from h264dec to mpeg4videodec 2013-11-29 14:19:47 +01:00