Loren Merritt
09786209e6
reinit quant matrices if pps is overwritten by another of the same pps_id.
...
Originally committed as revision 5346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-05 18:08:01 +00:00
Loren Merritt
89ddb72aa1
warn on interlaced streams
...
Originally committed as revision 5337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-30 19:31:45 +00:00
Loren Merritt
2848ce84d2
don't force asserts in release builds. 2% faster h264.
...
Originally committed as revision 5332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-29 00:43:15 +00:00
Loren Merritt
0c2aaa882d
memory leak.
...
Originally committed as revision 5331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-28 23:16:42 +00:00
Loren Merritt
c6f9e821c3
10l in h264 vismb/vismv (broke on 2006-03-09)
...
Originally committed as revision 5309 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-21 19:22:14 +00:00
Loren Merritt
75ca1a5f70
gmc_mmx tweaks
...
Originally committed as revision 5269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-05 04:13:41 +00:00
Loren Merritt
703c8195a8
mmx implementation of 3-point GMC. (5x faster than C)
...
Originally committed as revision 5265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-04 09:23:45 +00:00
Loren Merritt
841f65f25a
2x faster ff_mpeg4_set_direct_mv
...
Originally committed as revision 5264 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-03 07:52:24 +00:00
Loren Merritt
2ea392529a
10l in 1.199 (write_back_motion with B-pyramid + spatial)
...
Originally committed as revision 5215 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-25 09:46:43 +00:00
Loren Merritt
5e8b787afa
simplified and slightly faster h264_chroma_mc8_mmx
...
Originally committed as revision 5214 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-25 08:41:14 +00:00
Loren Merritt
e77ef2755a
prefetch pixels for future motion compensation. 4-10% faster mpeg1/2/4 decoding (on an athlon-xp).
...
Originally committed as revision 5204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-23 21:54:46 +00:00
Loren Merritt
513fbd8e5a
prefetch pixels for future motion compensation. 2-5% faster h264.
...
Originally committed as revision 5203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-23 20:16:36 +00:00
Loren Merritt
5e6a5c4daf
10l
...
Originally committed as revision 5201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-22 22:08:28 +00:00
Loren Merritt
fdd3057981
added mmx implementation of h264_chroma_mc2
...
Originally committed as revision 5200 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-22 22:05:00 +00:00
Loren Merritt
53b19144e7
1.5x faster write_back_motion, 1-3% overall
...
Originally committed as revision 5198 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-22 12:41:02 +00:00
Loren Merritt
0816152af9
seed iterative_me with mvs from conventional search.
...
+15% speed, +.1 dB
Originally committed as revision 5159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-13 05:23:34 +00:00
Loren Merritt
8f8ae4951e
seed iterative_me with mvs from conventional search.
...
+15% speed, +.1 dB
Originally committed as revision 5158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-13 01:27:13 +00:00
Loren Merritt
07674d518c
obey vqscale in 2nd pass
...
Originally committed as revision 5157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-13 01:26:06 +00:00
Loren Merritt
548a1c8a35
h264_idct8_add_mmx
...
Originally committed as revision 5123 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-07 22:45:56 +00:00
Loren Merritt
6da971f160
h264_idct_add only needs mmx1
...
Originally committed as revision 5122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-07 22:33:32 +00:00
Loren Merritt
d84f7c61ee
gcc2.95 workaround
...
Originally committed as revision 5111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-05 19:02:35 +00:00
Loren Merritt
7a5b2fa812
remove some useless instructions
...
Originally committed as revision 5109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-04 19:56:01 +00:00
Loren Merritt
9e4cc776da
keyframe flag was wrong if SEIs followed the keyframe
...
Originally committed as revision 5107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-04 03:57:33 +00:00
Loren Merritt
6a8eb0f45a
4% faster h264_qpel_mc
...
Originally committed as revision 5094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-02 08:21:08 +00:00
Loren Merritt
285b570fd2
fix a memory leak on seeking.
...
Originally committed as revision 5062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-25 22:15:24 +00:00
Loren Merritt
85ed1022b3
minor simplifications in cabac_mb_type
...
Originally committed as revision 5048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-22 05:59:44 +00:00
Loren Merritt
db8a64cba0
don't arbitrarily limit delta_qp
...
Originally committed as revision 5026 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-16 01:16:12 +00:00
Loren Merritt
8b03135958
fix some crashes on negative nalsize.
...
Originally committed as revision 5022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-14 05:40:53 +00:00
Loren Merritt
171c407621
fix some crashes when missing frames
...
Originally committed as revision 5019 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-13 18:13:13 +00:00
Loren Merritt
ef9d1d1575
h264: special case dc-only idct. ~1% faster overall
...
Originally committed as revision 4971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-10 06:55:25 +00:00
Loren Merritt
4e295993ba
10l in 1.12
...
Originally committed as revision 4965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-09 02:43:23 +00:00
Loren Merritt
c0234aa44c
slightly faster loopfilter
...
Originally committed as revision 4958 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-08 07:04:32 +00:00
Loren Merritt
6ee669732d
10l (x86_64)
...
Originally committed as revision 4952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-07 16:10:48 +00:00
Loren Merritt
e545f37527
18% faster put_h264_qpel16_mc[13]2_mmx2
...
Originally committed as revision 4951 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-07 10:52:25 +00:00
Loren Merritt
c03ce51dfb
11% faster put_h264_qpel16_v_lowpass_mmx2
...
Originally committed as revision 4950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-07 07:35:03 +00:00
Loren Merritt
0331f09237
15% faster put_h264_qpel16_hv_lowpass_mmx2
...
Originally committed as revision 4949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-07 06:25:14 +00:00
Loren Merritt
fdb52bccf6
fix crash on height < 16 pixels.
...
Originally committed as revision 4904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-28 00:57:59 +00:00
Loren Merritt
48d1b9a17c
fix convergence of snow iterative_me
...
Originally committed as revision 4876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-21 02:35:03 +00:00
Loren Merritt
3de79d0dca
revert 1.83 because it's not needed
...
Originally committed as revision 4875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-21 02:33:01 +00:00
Loren Merritt
d3ac6ed667
detect when iterative_me fails to converge, and stop searching
...
Originally committed as revision 4868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-19 09:21:39 +00:00
Loren Merritt
b104969fab
obmc-aware 4mv
...
Originally committed as revision 4864 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-17 08:27:39 +00:00
Loren Merritt
1015631b79
faster iterative_me: avoid duplicate mc of neighboring blocks.
...
Originally committed as revision 4839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 05:47:52 +00:00
Loren Merritt
e8b562087d
tweak h264_biweight
...
Originally committed as revision 4835 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-09 03:38:37 +00:00
Loren Merritt
70abb40759
tweak inlines.
...
Originally committed as revision 4834 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-09 03:15:53 +00:00
Loren Merritt
8bf755d4ff
10l: bidir_refine didn't save the new mvs. also improve speed.
...
Originally committed as revision 4832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-09 02:08:12 +00:00
Loren Merritt
ab2e3e2c80
fix asymmetric CQMs with pre-transposed DCT.
...
Originally committed as revision 4799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-31 14:14:38 +00:00
Loren Merritt
f23af3d825
CQM: fix fallback to JVT scaling lists
...
Originally committed as revision 4798 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-31 13:20:24 +00:00
Loren Merritt
11d86c979c
direct mvs in B_8x8 mbs were set too early.
...
Originally committed as revision 4797 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-31 11:31:53 +00:00
Loren Merritt
f1f17e54ea
fix direct_8x8_inference_flag with 4x4 mvs.
...
Originally committed as revision 4796 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-31 10:11:37 +00:00
Loren Merritt
cec9395977
fix some potential arithmetic overflows in pred_direct_motion() and
...
ff_h264_weight_WxH_mmx2().
Originally committed as revision 4795 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-30 23:47:41 +00:00
Loren Merritt
ab470fa73b
recognize some more nal types
...
Originally committed as revision 4734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-11 02:16:21 +00:00
Loren Merritt
ea15df8048
use sse16_sse2() in nsse
...
Originally committed as revision 4688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-12 05:23:25 +00:00
Loren Merritt
3165e258b1
fix a crash on seeking to an invalid frame
...
Originally committed as revision 4685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-10 04:40:49 +00:00
Loren Merritt
1fd97d8c1a
tidier cabac_intra4x4_pred_mode
...
Originally committed as revision 4673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-11-03 23:26:51 +00:00
Loren Merritt
0f72508c10
25% faster deblocking, 4-6% overall.
...
Originally committed as revision 4668 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-28 06:37:32 +00:00
Loren Merritt
cd19c677cb
fix a crash on dropped frames
...
Originally committed as revision 4667 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-27 21:03:36 +00:00
Loren Merritt
a6624e21cb
faster h264_chroma_mc8_mmx, added h264_chroma_mc4_mmx.
...
2-4% overall speedup.
Originally committed as revision 4666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-27 06:45:29 +00:00
Loren Merritt
56edbd818a
10l: cqm weren't initialized in svq3.
...
Originally committed as revision 4662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-26 03:58:06 +00:00
Loren Merritt
b2909f1a04
h264 custom quant matrices
...
Originally committed as revision 4661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-25 10:16:46 +00:00
Loren Merritt
239ea04ccf
decode custom quant matrices.
...
based on a patch by anonymous, with optimizations by me.
Originally committed as revision 4660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-25 01:17:20 +00:00
Loren Merritt
b926572aa9
h264 mmx weighted prediction. up to 3% overall speedup.
...
Originally committed as revision 4630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-10-09 23:38:52 +00:00
Loren Merritt
5693c08356
sse2 16x16 sum squared diff (306=>268 cycles on a K8)
...
faster 8x8 mmx ssd (77=>70 cycles)
Originally committed as revision 4623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-30 02:31:47 +00:00
Loren Merritt
d90cbe5fe8
6% faster decode_cabac_residual
...
Originally committed as revision 4618 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-27 05:12:13 +00:00
Loren Merritt
fbd312fd91
fix emulated edge motion compensation when resolution%16!=0
...
Originally committed as revision 4561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-05 17:07:52 +00:00
Loren Merritt
36940eca76
H.264 lossless mode
...
Originally committed as revision 4381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-17 08:24:35 +00:00
Loren Merritt
1b7576e785
typo in cabac tables
...
Originally committed as revision 4360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-08 00:40:41 +00:00
Loren Merritt
43efd19a88
decode H.264 with 8x8 transform.
...
deblocking is still incorrect with 8x8+cavlc
Originally committed as revision 4339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-02 21:15:20 +00:00
Loren Merritt
d2bb7db135
sort H.264 mmx dsp functions into their own file
...
Originally committed as revision 4338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-02 20:45:35 +00:00
Loren Merritt
85bbfcd4ee
10l (symbol mangling)
...
Originally committed as revision 4331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-01 04:51:46 +00:00
Loren Merritt
1d62fc8560
MMX for H.264 iDCT (adapted from x264)
...
Originally committed as revision 4329 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-31 22:48:33 +00:00
Loren Merritt
6d1feb028f
decode h264 end-of-slice flag
...
Originally committed as revision 4316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-29 18:18:13 +00:00
Loren Merritt
ba4ffc2b48
memory leak
...
Originally committed as revision 4282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-19 19:11:40 +00:00
Loren Merritt
29860cc88c
fix crash on negative POC
...
Originally committed as revision 4278 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-19 04:48:06 +00:00
Loren Merritt
5cf08f2393
H.264 deblocking optimizations (mmx for chroma_bS4 case, convert existing cases to 8-bit math)
...
Originally committed as revision 4271 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 09:17:22 +00:00
Loren Merritt
a55f20bd9a
fix storage of motion vectors for frames with more than 4096 macroblocks.
...
Originally committed as revision 4175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-03 21:49:18 +00:00
Loren Merritt
7c33ad19fd
clear the DPB after seeking.
...
Originally committed as revision 4174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-03 06:53:59 +00:00
Loren Merritt
42251a2a4f
MMX for H.264 deblocking filter
...
Originally committed as revision 4158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-25 01:01:41 +00:00
Loren Merritt
b80875c186
fix ref comparison in B-frame deblocker ('unused' and 'unavailable' were treated as different)
...
Originally committed as revision 4154 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-24 21:06:22 +00:00
Loren Merritt
e2e5894a91
deblocking filter doesn't need to call fill_caches again. 1.4% faster decoding.
...
Originally committed as revision 4147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-21 20:38:42 +00:00
Loren Merritt
2cd340438a
allow 2pass ratecontrol. also fixes psnr displayed by mencoder.
...
Originally committed as revision 4130 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-15 05:54:47 +00:00
Loren Merritt
048bfeeb12
display deblocking strength in FF_DEBUG_PICT_INFO
...
Originally committed as revision 4091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 10:58:21 +00:00
Loren Merritt
171070658e
allow 16 refs with B-frames
...
Originally committed as revision 4090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 10:54:16 +00:00
Loren Merritt
f9e6ebf7f9
slice-based idwt (10% faster decoding)
...
Originally committed as revision 4040 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-15 21:05:34 +00:00
Loren Merritt
0149db6668
10l (compile fix)
...
Originally committed as revision 4032 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-12 03:10:44 +00:00
Loren Merritt
4e4d983e8b
Set keyframe flag only on IDR-frames (needed for reordering across I-frames).
...
Read vui bitstream restrictions (allows B-frame delay in advance, rather than waiting till we're out of order.)
Mark duplicate frames due to delay as duplicates.
Originally committed as revision 4028 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-11 02:14:44 +00:00
Loren Merritt
885e88d252
remove an assert that was breaking compilation on some gccs.
...
Originally committed as revision 4020 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-07 09:05:33 +00:00
Loren Merritt
a18030bb62
10l (fix reordering when B-frames are not present)
...
Originally committed as revision 4004 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-05 00:14:21 +00:00
Loren Merritt
2f944356bf
H.264: decode arbitrary frame orders and allow B-frames as references.
...
Originally committed as revision 4003 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-04 12:47:38 +00:00
Loren Merritt
3622988f21
oops, other half of the vismv patch
...
Originally committed as revision 4001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 12:12:44 +00:00
Loren Merritt
b75e10d52c
vismv didn't display 8x8 mvs in H.264
...
Originally committed as revision 4000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 07:21:23 +00:00
Loren Merritt
e21f398378
vismb: display 4x4 partition boundaries in H.264
...
Originally committed as revision 3999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 06:57:17 +00:00
Loren Merritt
56b31a8ee2
10l (deallocated memory again)
...
Originally committed as revision 3994 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-28 05:27:21 +00:00
Loren Merritt
19fe8b4100
In-loop deblocking for B-frames.
...
Originally committed as revision 3979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-25 07:40:29 +00:00
Loren Merritt
738386a5ed
10l in implicit_weight_table
...
Originally committed as revision 3974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-24 09:27:46 +00:00
Loren Merritt
09f20d3786
Fix a crash when multiple metadata packets are present.
...
Originally committed as revision 3965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-20 23:21:50 +00:00
Loren Merritt
934b0821db
10l: scratchpad could be allocated before its size was known.
...
Originally committed as revision 3812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-08 08:56:18 +00:00
Loren Merritt
9f2d1b4ff5
H.264 weighted prediction.
...
Bidirectional weighting has not been tested for bitwise accuracy, but looks correct.
Originally committed as revision 3811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-07 05:56:07 +00:00
Loren Merritt
1b2dcdc1e0
reduce stutter if we learn too late that the stream contains B-frames.
...
Originally committed as revision 3801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-04 10:26:47 +00:00
Loren Merritt
a4dae92b58
Sort B-frames into display order.
...
Originally committed as revision 3799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-04 01:12:48 +00:00
Loren Merritt
5ad984c997
implement B_DIRECT and B_SKIP macroblock types.
...
fix reference list sorting for B-frames.
fix mv caching for mixed list B-blocks.
Originally committed as revision 3775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-29 04:17:52 +00:00