Michael Niedermayer
ab6ea7a819
avcodec/h264_refs: split conditions of if() up for better readability
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-02 02:12:39 +01:00
Ronald S. Bultje
f068aed7b8
vp9: make decode_coeffs() return value void.
...
It was previously int and would return error if decode_coeffs_b()
returns an error; however, that can never happen, so refactor all
that code to make all dependent functions return void also (all the
way up to decode_coeffs_sb()).
2013-11-30 16:26:14 -05:00
Ronald S. Bultje
47c6d9403d
vp9: cosmetics.
2013-11-30 16:26:14 -05:00
Ronald S. Bultje
76bd878d95
vp9: add a 2-pass decoding mode, and add frame-mt support.
...
For a random 1080p sample, decoding time went from 9.7sec (1 threads)
to 6.0sec (2 threads) and 5.2sec (4 threads) in 2-pass decoding mode.
I don't have any samples that use the parallelmode feature, but the
gains should be higher.
2013-11-30 16:26:13 -05:00
Ronald S. Bultje
46955ae430
vp9: allocate 'b', 'block/uvblock' and 'eob/uveob' dynamically.
2013-11-30 16:26:13 -05:00
Ronald S. Bultje
fc7d910b2e
vp9: split last/cur_frame from the reference buffers.
...
We need more information from last/cur_frame than from reference
buffers, so we can use a simplified structure for reference buffers,
and then store mvs and segmentation map information in last/cur.
2013-11-30 16:26:13 -05:00
Ronald S. Bultje
39b244002a
vp9: move some entries out of VP9Block into VP9Context.
...
They aren't really block-related variables in the sense that they are
not block-coded, rather they are state trackers.
2013-11-30 16:26:12 -05:00
Ronald S. Bultje
84d362f020
vp9: split packet parsing into an AVParser.
2013-11-30 16:26:12 -05:00
Ronald S. Bultje
816737ea5d
vp9: use proper refcounting.
...
Based on something similar in libav. Author is likely Anton Khirnov
<anton@khirnov.net> but I'm not sure.
2013-11-30 16:26:12 -05:00
Michael Niedermayer
a3b9f53d7b
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
dcadec: Add some logging before returning on error
Conflicts:
libavcodec/dcadec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 21:09:42 +01:00
Michael Niedermayer
a235af93bd
avcodec/mpeg4video: fix doxycomments so they are not associated with random unrelated fields
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 20:30:11 +01:00
Nicolas George
4b1c9b720e
lavc/srtenc: use bprint for text buffers.
...
Fix trac ticket #3120 .
2013-11-30 13:57:53 +01:00
Tim Walker
7dc827b709
dcadec: Add some logging before returning on error
...
Based on a patch by Michael Niedermayer.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-11-30 13:01:35 +01:00
Michael Niedermayer
5d9e663064
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
go2meeting: disallow tile dimensions that are not multiple of 16
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 04:49:54 +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
b239f3f69d
avcodec/h263dec: move call to ff_mpeg4_workaround_bugs() under codec_id check
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 02:35:13 +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
2d2b363c65
h263: remove unused ff_h263_find_resync_marker()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 00:58:33 +01:00
Michael Niedermayer
2d614e9be1
Merge commit 'c2f7417eeb9cc31f75e71f7be2780f90f1628d7e'
...
* commit 'c2f7417eeb9cc31f75e71f7be2780f90f1628d7e':
vc1: move MpegEncContext.resync_marker into VC1Context.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-30 00:49:34 +01:00
Michael Niedermayer
26b526e776
Merge commit 'a5a71992cae34b321ceb8374f44ce17a945a3881'
...
* commit 'a5a71992cae34b321ceb8374f44ce17a945a3881':
mpeg4videoenc: don't set MpegEncContext.resync_marker
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:55:00 +01:00
Michael Niedermayer
f5d6541ba0
Merge commit 'ad09f52586eae4c5473c3a6a803d73e1ba56c0eb'
...
* commit 'ad09f52586eae4c5473c3a6a803d73e1ba56c0eb':
h263dec: remove commented out cruft
Conflicts:
libavcodec/h263dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 23:46:30 +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
f602e22122
Merge commit '75bd07f732fb575c2b88dc7cd08a6bb12c2e24ea'
...
* commit '75bd07f732fb575c2b88dc7cd08a6bb12c2e24ea':
mpeg4videoenc: write 0 instead of vol_sprite_usage
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-29 22:59:02 +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
Kostya Shishkov
01f6df01b6
go2meeting: disallow tile dimensions that are not multiple of 16
...
Original decoder seems to always use 176x128 tiles anyway and this helps
avoiding lots of issues with odd tile sizes in fuzzed files.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-11-29 17:37:59 +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