Commit Graph

281 Commits

Author SHA1 Message Date
Zdenek Kabelac
9a7b310d06 * remaining part of John Ryland's patch
Originally committed as revision 1267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-22 07:24:28 +00:00
Michael Niedermayer
5d3cea3a86 aspect ratio cleanup
Originally committed as revision 1254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-20 13:08:04 +00:00
Zdenek Kabelac
83f238cbf0 * compilation fix (ARM users please check)
Originally committed as revision 1225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-19 07:33:36 +00:00
Zdenek Kabelac
18f770162b * fixing some minor const warnings
Originally committed as revision 1205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-12 15:00:04 +00:00
Zdenek Kabelac
eb4b3dd3c3 * using DSPContext - so each codec could use its local (sub)set of CPU extension
Originally committed as revision 1194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-11 09:40:17 +00:00
Michael Niedermayer
b8a78f419d reversing header game
MIN/MAX -> FFMIN/FFMAX

Originally committed as revision 1184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-10 11:46:59 +00:00
Michael Niedermayer
f01a189455 cleanup
Originally committed as revision 1178 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-09 10:38:34 +00:00
Michael Niedermayer
d7425f59d5 cleanup (breaks compatibility, requested by fabrice)
remove CODEC_FLAG_NOT_TRUNCATED & add CODEC_FLAG_TRUNCATED
add CODEC_CAP_TRUNCATED
add alpha plane to AVPicture
remove CODEC_ID_MSMPEG4
remove various unused stuff
support "truncated" mpeg4 streams

Originally committed as revision 1175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-08 18:35:39 +00:00
Michael Niedermayer
05c4072b45 Altivec Patch (Mark III) by (Dieter Shirley <dieters at schemasoft dot com>)
Originally committed as revision 1147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-02 11:28:08 +00:00
Michael Niedermayer
bbed9259cc put a few large tables under #ifdef CONFIG_ENCODERS or dynamically allocate them
Originally committed as revision 1130 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-31 16:11:03 +00:00
Michael Niedermayer
6bb925f47d dont call emms_c() for each MB
Originally committed as revision 1127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-31 12:11:53 +00:00
Michael Niedermayer
0aa7875a73 cleanup
Originally committed as revision 1126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-31 11:47:58 +00:00
Michael Niedermayer
af27aea922 fixing another assert q>0.0 issue caused by variance < 0, this fix allso changes the inter/intra decission very slightly -> all regression checksums need to be updated
Originally committed as revision 1122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-31 00:48:05 +00:00
Michael Niedermayer
6b72ac6323 exporting the internal qscale table, this allso fixes the ordering
Originally committed as revision 1116 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-30 20:41:40 +00:00
Michael Niedermayer
d6db1c9c6a handle direct rendering buffer allocation failure
Originally committed as revision 1075 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-27 00:02:23 +00:00
Michael Niedermayer
50eb9cbc44 idct_permutation_type variable, so the permutation type can quickly be identified
Originally committed as revision 1071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-25 13:39:47 +00:00
Michael Niedermayer
6e2d5f1aea regression test for H263+
Originally committed as revision 1070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-25 10:50:02 +00:00
Michael Niedermayer
945eeee15e slice encoding cleanup
Originally committed as revision 1069 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-25 00:08:32 +00:00
Michael Niedermayer
7801d21d13 optimize block_permute()
optimize dct_quantize_c()
dont permute s->q_inter/intra_matrix

Originally committed as revision 1067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-23 15:11:07 +00:00
Michael Niedermayer
4a3d7fbcbc fixing interlaced MC & edge-emu
Originally committed as revision 1066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-23 08:14:12 +00:00
Michael Niedermayer
03e93d35b0 xvid qpel bug workaround
Originally committed as revision 1063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-22 18:55:20 +00:00
Michael Niedermayer
8b32880cc9 fixing h263 decoding (did segfault)
Originally committed as revision 1049 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-19 01:31:26 +00:00
Michael Niedermayer
fb8a9e2f37 fixing interlaced dct + hq mode
Originally committed as revision 1048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-18 18:32:50 +00:00
Michael Niedermayer
9fee1e234e init flags before using it (found by arpi)
Originally committed as revision 1047 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-16 22:18:41 +00:00
Michael Niedermayer
073b013d00 complete mpeg4 GMC decoding support
Originally committed as revision 1046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-16 19:55:49 +00:00
Michael Niedermayer
4d2858deac better/cleaner error resilience (done in a 2nd pass after decoding)
h263/mpeg4 out of order slice decoding

Originally committed as revision 1030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-13 13:16:04 +00:00
Michael Niedermayer
0298af4887 set low_delay on encoding if no b frames
Originally committed as revision 1007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-06 17:46:22 +00:00
Michael Niedermayer
676e200cff trying to fix the non-x86 IDCTs (untested)
Originally committed as revision 1006 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-06 15:27:01 +00:00
Alex Beregszaszi
defdfc9aa0 moved dct init out from mpv_common_init to dct_common_init (for less-uglier way for dv)
Originally committed as revision 1002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-04 20:59:29 +00:00
Leon van Stuivenberg
5917d17cb7 ps2 optimizations update patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
Originally committed as revision 996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-03 20:57:19 +00:00
Michael Niedermayer
3994623df2 optimization
Originally committed as revision 992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-02 17:07:39 +00:00
Michael Niedermayer
a02017367b optimizing mpeg1_decode_block()
Originally committed as revision 985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-30 16:14:14 +00:00
Michael Niedermayer
cc7ac88830 convert only needed matrixes in convert_matrix() (mjpeg calls it for every frame)
Originally committed as revision 983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-30 09:19:54 +00:00
Michael Niedermayer
2ad1516a6c idct permutation cleanup, idct can be selected per context now
fixing some threadunsafe code

Originally committed as revision 980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-29 22:44:22 +00:00
Falk Hüffner
ea689c8eb7 An easy way to speed up encoding by 6%.
Originally committed as revision 978 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-28 02:18:34 +00:00
Michael Niedermayer
202ef8b819 ff_get_fourcc() & XVIX support
Originally committed as revision 975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-27 10:27:57 +00:00
Michael Niedermayer
fcb48651f4 mpeg4 interlaced dct encoding
Originally committed as revision 971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-26 00:22:25 +00:00
Michael Niedermayer
9e4c69485b adaptive quantization for h263
Originally committed as revision 969 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-24 15:07:44 +00:00
Michael Niedermayer
5e746b9995 darkness masking (lumi masking does only bright stuff now)
Originally committed as revision 967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-24 10:53:59 +00:00
Michael Niedermayer
c5d309f2d5 adaptive quantization (lumi/temporal & spatial complexity masking)
Originally committed as revision 964 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-23 14:56:11 +00:00
Michael Niedermayer
1e7bfebe7f fixing qpel 4mv
Originally committed as revision 945 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-14 12:36:54 +00:00
Michael Niedermayer
590a635884 interlaced qpel mpeg4 fixed
Originally committed as revision 943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-14 10:11:05 +00:00
Michael Niedermayer
bea669e57c interlaced mpeg4 b frame decoding
Originally committed as revision 936 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-13 09:45:32 +00:00
Michael Niedermayer
b9d2bb5b2f fixing interlaced mpeg4 decoding
Originally committed as revision 933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-12 18:28:17 +00:00
Michael Niedermayer
66370d3fca statistics for forw & back p-MBs instead of just one counter for both
Originally committed as revision 925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-12 12:26:09 +00:00
Michael Niedermayer
208d3ddf96 set pict_type & key_frame on decoding too
Originally committed as revision 918 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-12 00:27:08 +00:00
Michael Niedermayer
b318477992 put/avg_pixels16
fixing 2 small qpel bugs

Originally committed as revision 915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-11 12:39:53 +00:00
Michael Niedermayer
6b460aa387 reducing sizeof MpegEncContext to avoid stack overflow on crap M$ windo$
Originally committed as revision 914 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-11 07:26:43 +00:00
Michael Niedermayer
ad324c9351 dct cleanup
more accurate mmx dct (dont discard bits for fun)
fixing mmx quantizer bug for qscale%2==1 (bias was slightly wrong)

Originally committed as revision 895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-01 16:52:33 +00:00
Martin Olschewski
c7e079314b sun solaris compilation bugfix, patch by (Martin Olschewski <olschewski at zpr dot uni-koeln dot de>)
Originally committed as revision 882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-30 18:17:20 +00:00
Michael Niedermayer
28db7fce02 slow but accurate integer dct from IJG (should be ok with the LGPL as the old DCT is the fast integer DCT from IJG)
per context DCT selection

Originally committed as revision 878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-29 23:55:32 +00:00
Michael Niedermayer
fd7db0fddf mpeg4 interlaced decoding support (not completly implemented/tested due to lack of samples)
Originally committed as revision 870 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-27 16:28:19 +00:00
Alex Beregszaszi
e769f0535e added aspected_width/height for EXTENDED_PAR
Originally committed as revision 869 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-26 20:45:01 +00:00
Michael Niedermayer
3aa102be84 new ratecontrol code
Originally committed as revision 862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-25 21:19:50 +00:00
Michael Niedermayer
7806197db2 error concealment needs the mbintra_table so it should allways be allocated
Originally committed as revision 861 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-24 13:24:43 +00:00
Michael Niedermayer
1fb4890b51 better scene change detection
Originally committed as revision 858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-22 19:41:06 +00:00
Michael Niedermayer
c9178d868a same dc skip behavior for chroma & luma elimination, its confusing otherwise imho
Originally committed as revision 854 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-18 00:42:58 +00:00
Michael Niedermayer
f5866a0340 skip blocks with small chroma dc too (if the user wants it) needed to avoid IDCT(input coeffs !=0) == 0 problems which cause catastrophic error accumulation at qp=1
Originally committed as revision 853 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-17 20:10:27 +00:00
Michael Niedermayer
87f8cab45b mpeg4 mpeg quantizer encoding
Originally committed as revision 844 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-06 23:51:15 +00:00
Michael Niedermayer
508abacadb 4mv + bframe decoding bugfix
Originally committed as revision 843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-05 21:36:14 +00:00
Michael Niedermayer
b7adc711fa last_picture should be never == NULL (it was with dr1) this might fix a segfault with error concealment
Originally committed as revision 837 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-04 16:05:05 +00:00
Michael Niedermayer
d930ef19ea fixing mpeg4 mpeg quantizers
Originally committed as revision 836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-02 20:27:46 +00:00
Michael Niedermayer
a10678da8a max_b_frame=4 bugfix
Originally committed as revision 833 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-01 11:01:07 +00:00
Michael Niedermayer
b5a093b3a9 different edge positions fixed with edge emu / dr1
Originally committed as revision 814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-25 20:22:36 +00:00
Michael Niedermayer
3e6a20a0cd minor optimizations
fixing numbers.avi
 fixing ac prediction between MBs with different QP

Originally committed as revision 782 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-21 01:34:05 +00:00
Michael Niedermayer
79c0c7858d use edge emu for encoding of width or height %16!=0 files
Originally committed as revision 776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 23:32:31 +00:00
Michael Niedermayer
9022797ba2 fixing NULL reference frame with dr1
Originally committed as revision 775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 17:50:42 +00:00
Michael Niedermayer
9be42dba97 larger edge emu buffer (might have been too small)
Originally committed as revision 773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 13:25:01 +00:00
Michael Niedermayer
5499377432 fixing gmc with emu edges
Originally committed as revision 772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 12:42:50 +00:00
Michael Niedermayer
4c9ede2e4b interlaced mpeg2 fix ... replacing linesize>>1 by uvlinesize brainlessly wasnt a good idea
Originally committed as revision 771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-17 11:04:26 +00:00
Michael Niedermayer
fe072fb4ee exporting mbskip_table after it has been allocated
Originally committed as revision 768 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-16 11:45:14 +00:00
Michael Niedermayer
760acb18a3 direct rendering for SVQ1
MpegEncContext->opaque MUST NOT be used by the codec, its for the parent program
 using standart values for pict_type
 using (uv)linesize
 handling dropable p-frames like b-frames

Originally committed as revision 763 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-15 21:19:37 +00:00
Michael Niedermayer
0fd90455ec uvlinesize
export has_b_frames
mb_skip with more than 2 ip buffers

Originally committed as revision 762 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-15 14:15:10 +00:00
Michael Niedermayer
225f9c44cf 4mv & qpel edge emu
Originally committed as revision 760 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-15 00:25:53 +00:00
Michael Niedermayer
93a21abde5 direct rendering method 1 support
Originally committed as revision 759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-14 18:37:35 +00:00
Michael Niedermayer
c03a717274 rl decoding optimization
Originally committed as revision 755 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-13 17:30:43 +00:00
Marko Kreen
adc09b2eab adding ff prefix to avoid global name conficts with xvid (patch by Marko Kreen <marko at l-t.ee>)
Originally committed as revision 739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-10 21:01:45 +00:00
Falk Hüffner
e0580f8c68 Update and activate dct_unquantize_h263_mvi. Thanks to Måns Rullgård
for some improvements.

Originally committed as revision 714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-03 03:01:06 +00:00
Michael Niedermayer
a406617f2a init dc_scale tables to defaults (fixes mjpeg sig11)
Originally committed as revision 706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-25 10:15:42 +00:00
Michael Niedermayer
f5957f3fe2 wmv1 support
dc scale optimisation
better ac table selection for msmpeg4

Originally committed as revision 696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-18 00:49:00 +00:00
Michael Niedermayer
6282185e82 grayscale only encoding
Originally committed as revision 679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-09 14:04:36 +00:00
Michael Niedermayer
b50eef3ae0 grayscale only decoding
Originally committed as revision 677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-09 13:35:56 +00:00
Michael Niedermayer
0f440e0214 optimizing MPV_decode_mb
Originally committed as revision 673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-05 23:43:56 +00:00
Fabrice Bellard
ad31c904b2 use ff_idct_put/add()
Originally committed as revision 670 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-05 18:36:03 +00:00
Fabrice Bellard
03c94ede93 avoid name clash with libjpeg - added missing externs
Originally committed as revision 660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-04 12:58:40 +00:00
Nick Kurshev
8696b63645 use qstride instead of fixed constants
Originally committed as revision 653 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 07:58:35 +00:00
Nick Kurshev
ae72cda62b new field for communicating with external postprocessing
Originally committed as revision 652 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-03 07:01:42 +00:00
Michael Niedermayer
333547be44 typo (found by Bohdan Horst <nexus at hoth.amu.edu.pl>)
Originally committed as revision 648 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 15:31:30 +00:00
Michael Niedermayer
2a052693dd divx5 bug workaround
Originally committed as revision 647 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 13:31:48 +00:00
Michael Niedermayer
7f2fe444a3 single coefficient elimination
prequantization
more readable malloc & check if NULL
error concealment / error resilience
b_quant_offset (unfinished, should be 0 for now)
data partitioning

Originally committed as revision 642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 12:20:39 +00:00
Fabrice Bellard
ff4ec49e64 license/copyright change
Originally committed as revision 599 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-25 22:45:33 +00:00
Fabrice Bellard
6000abfa89 removed useless header includes - use av memory functions
Originally committed as revision 522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-18 23:03:29 +00:00
Juanjo
9cd3766f6e - pict_type exported to AVCodecContext
- Added real_pict_num to AVCodecContext, it represent the number of the
  previous encoded frame, usefull when coding with B frames.
- Warning fix in motion_est.c

Originally committed as revision 484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-11 23:42:16 +00:00
Alex Beregszaszi
a69b930cd3 clamp intra matrix to 8bit for mjpeg (workaround for qscale>=25)
Originally committed as revision 451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-07 17:55:02 +00:00
Michael Niedermayer
7aaf3b98fc there are divx5? encoded files without a userdata section but with b-frames :(
Originally committed as revision 446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-06 13:15:05 +00:00
Juanjo
ef5b1b5a7e - Advanced Intra Coding (AIC) support for H.263+ encoder, just DC by now.
- Bug fix H.263+ AIC tables.
- Warning fixes.

Originally committed as revision 431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-05-02 04:39:45 +00:00
Michael Niedermayer
bb71e31757 fixing msmpeg4v3 dc-scale for quantizers 24-31
Originally committed as revision 427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-30 01:29:29 +00:00
Michael Niedermayer
2417652e9f export mbskip_table for direct rendering
add hurry_up support

Originally committed as revision 424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-27 13:12:57 +00:00
Michael Niedermayer
d7e9533aa0 fixed msmpeg4 infinite loop if buggy stream
rewrote quantizer
 fixed bias (+10% compression/quality for h263 like codecs)
 qscale=1 support
 mpeg1 intra frames looks far less blocky
added codec_id field

Originally committed as revision 423 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-27 12:30:26 +00:00
Michael Niedermayer
1c2a8c7f14 avcodec_flush_buffers()
Originally committed as revision 420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-24 01:24:06 +00:00
Michael Niedermayer
d697b89bab segfault fix
Originally committed as revision 418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-22 21:02:18 +00:00
Michael Niedermayer
1ff662cc2c export delay info
fixed low_delay & vo_type on mpeg4 header writer & parser

Originally committed as revision 415 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-22 19:04:28 +00:00
Michael Niedermayer
eec1c6b94c divx 5.01 support
Originally committed as revision 412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-22 12:45:22 +00:00
Michael Niedermayer
8b4c7dbc55 fixed ratecontrol & b-frames
2pass ratecontrol
fixed hq with 2pass
inceased build num (a few more vars for the rc stuff)
hopefully no new bugs

Originally committed as revision 408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-21 21:18:17 +00:00
Michael Niedermayer
91029be790 much better ME for b frames (a bit slow though)
fixed MC rounding for b frames
fixed hq mode with b-frames

Originally committed as revision 406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-19 03:25:20 +00:00
Michael Niedermayer
1f0cd30fd9 fixing hq mode with mpeg1 and 2-pass
Originally committed as revision 405 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-17 18:19:50 +00:00
Michael Niedermayer
9dbf1dddbd mpeg2/mpeg4 dequantizer support (c & mmx)
mpeg1 dequantizer optimizations

Originally committed as revision 404 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-17 16:30:31 +00:00
Michael Niedermayer
9dbcbd92e8 fixed mpeg4 time stuff on encoding
mpeg4 b-frame enoding support
removed old, out-commented ratecontrol
reuse motion compensation code between encoding & decoding
prefix newly added global functions with ff_ to reduce namespace polution
b-frame ME (unfinished, but working)
added some comments to mpegvideo.h
do MC on encoding only once if possible
bugs? ;)

Originally committed as revision 403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-17 04:32:12 +00:00
Juanjo
101bea5f22 - ME method compatibility with legacy apps.
- Please use AVCodecContext's me_method now.

Originally committed as revision 399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-14 22:17:40 +00:00
Juanjo
e4986da9ce - ME setting moved to AVCodecContext/MpegEncContext, no longer a global.
- EPZS ME algo used by default.
- HQ flag activated for ffmpeg.
- Cosmetics ...

Originally committed as revision 398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-14 18:57:51 +00:00
Zdenek Kabelac
bc657ac31d * using pixtype as enum - by Philip Gladstone
Originally committed as revision 389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-08 21:03:35 +00:00
Michael Niedermayer
3bf43d42ed mpeg4 mpeg quantizer support
Originally committed as revision 381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-07 02:03:32 +00:00
Michael Niedermayer
e1a9dbffed wmv1 header parser (unfinished)
Originally committed as revision 380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-06 22:29:37 +00:00
Michael Niedermayer
84afee348f msmpeg4v2 decoding (no encoding yet)
Originally committed as revision 376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-05 04:09:04 +00:00
Michael Niedermayer
ff3dfbae1a fixing 1/0
Originally committed as revision 370 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-30 21:33:14 +00:00
Arpi
60e575acc8 using Juanjo's way to pass forced type - especially as I_TYPE/P_TYPE defines aren't exported in the public interface, and the flagged method matches the way as qscale forcing work
Originally committed as revision 366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-28 23:07:54 +00:00
Michael Niedermayer
4d69fbc99e force frame type for 2-pass encoding
Originally committed as revision 365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-28 22:50:22 +00:00
Michael Niedermayer
cf8039b2cf mpeg4 4MV encoding
Originally committed as revision 363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-28 04:25:35 +00:00
Michael Niedermayer
ba6802debf 4MV motion estimation (not finished yet)
SAD functions rewritten (8x8 support & MMX2 optimizations)
HQ inter/intra decission
msmpeg4 encoding bugfix (MV where too long)

Originally committed as revision 362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-27 21:25:22 +00:00
Michael Niedermayer
9c15096e3f fcode_tables where too small, found by Klaas-Pieter Vlieg <vlieg@eurescom.de>
Originally committed as revision 360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-24 23:45:13 +00:00
Michael Niedermayer
174489bdcc 10l (motion_val was uninitilized)
20l (first frame of a gop could be a p-frame sometimes)
add hq flag to MpegEncContext

Originally committed as revision 356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-24 04:16:51 +00:00
Michael Niedermayer
9d2a035529 fixing motion estimation with h263p hopefully
Originally committed as revision 355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-23 20:21:33 +00:00
Michael Niedermayer
098eefe183 statistics for 2-pass encoding
Originally committed as revision 354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-23 17:43:30 +00:00
Michael Niedermayer
11ce88346b mpeg4 aspect_ratio_info in AVCodecContext (requested by alex)
experimental (& faster) motion estimation
squished a dirty uninitialized var bug
mpeg1 fcode>1 support

Originally committed as revision 349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-22 23:22:08 +00:00
Michael Niedermayer
c5b1c10a0e fixing epzs & mpeg1 (hopefully now really ...)
Originally committed as revision 348 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-22 16:51:44 +00:00
Michael Niedermayer
8a29b31054 mpeg1 & epzs fix
Originally committed as revision 347 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-22 04:35:46 +00:00
Michael Niedermayer
45870f5718 new motion estimation (epzs) not complete yet but allready pretty good :)
unlimited mv search range
minor bugfix in the mpeg4 header parser
reset picture in gop counter if scene change is detected

Originally committed as revision 344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-22 02:21:17 +00:00
Michael Niedermayer
bd31a7750f scene change detection
Originally committed as revision 337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-17 19:45:33 +00:00
Michael Niedermayer
c674115939 10l
Originally committed as revision 336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-17 18:08:11 +00:00
Michael Niedermayer
9cdd6a24ad hopefully better bitrate controll
Originally committed as revision 334 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-17 16:31:38 +00:00
Michael Niedermayer
4278e7a6f5 optimization
Originally committed as revision 332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-15 14:57:17 +00:00
Michael Niedermayer
d6231b9e70 use ac prediction in mpeg4 encoding (5% smaller intra-blocks/keyframes)
some minor optimizations
last non zero index cant be 64 bugfix

Originally committed as revision 331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-15 04:10:53 +00:00
Michael Niedermayer
6f91bcd151 mpeg4 b-frames :)
create slightly more correct headers & add "ffmpeg" user-data section

Originally committed as revision 328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-12 22:54:25 +00:00
Michael Niedermayer
1699d37681 divx5 draw_edges bugfix
Originally committed as revision 322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-10 03:17:53 +00:00
Michael Niedermayer
44eb495128 divx5-gmc support
q-pel mc support
neither is totally bugfree yet though :(

Originally committed as revision 320 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-09 13:01:16 +00:00
Juanjo
43f1708f8b - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
sure it works ok. Also it's slow, so use it only when you _really_ need to
measure quality.
- Fix libavcodec Makefile to enable profiling.

Originally committed as revision 314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-26 22:14:27 +00:00
Michael Niedermayer
2b9ab1d54a fixing msmpeg4 decoding if fps < 16 (i thought it was a indicator for the ext header, its the fps indeed)
Originally committed as revision 313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-22 19:19:01 +00:00
Juanjo
9e15ad28bd - Bug fixes in H.263+ Advanced INTRA Coding decoder.
- H.263+ should be able to decode streams with AIC now :)

Originally committed as revision 311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-19 19:23:34 +00:00
Juanjo
d140623fc4 - H.263+ decoder support for Advanded INTRA Coding (buggy)
Originally committed as revision 310 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-18 19:33:27 +00:00
Zdenek Kabelac
8257bf0534 * eliminating duplicated code from MPV_common_end
* simplified indexing

Originally committed as revision 305 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-18 09:31:37 +00:00
Juanjo
b4dbd87c04 - Minor changes on bitrate control
Originally committed as revision 300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-15 20:46:37 +00:00
Michael Niedermayer
17592475b3 alternative bitstream writer (disabled by default, uncomment #define ALT_BISTREAM_WRITER in common.h if u want to try it)
Originally committed as revision 295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-12 15:43:16 +00:00
Juanjo
e03c341ef3 - More work on preliminary bit rate control, just to be able to get an
average variance for picture's MBs so we can adjust qscale on the MB layer.

Originally committed as revision 294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-10 06:10:50 +00:00
Juanjo
37fbfd0a91 - Now the ME is done for the entire picture when enconding, the
DCT/Quantization is done after we have calculated all the MV of the picture.
- This is the preamble for a better bit rate control.

Originally committed as revision 293 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-10 01:56:50 +00:00
Juanjo
81401c1fbc - Fixes on RTP and GOB headers for H.263.
- RTP callback system implemented for H.263/H.263+.
- Bug fix on DC coefficients of H.263.
- H.263 decoder now returns PTS on picture number.

Originally committed as revision 292 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-09 16:59:56 +00:00
Arpi
3cb32e3d1f PATCH by Rik Snel <rsnel@cube.dyndns.org>
this includes the range for quantized dct coefficients in dct_quantize()  (-1023...1023)

Originally committed as revision 291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-09 01:25:06 +00:00
Arpi
80e103d04c PATCH by Rik Snel <rsnel@cube.dyndns.org>
this patch enhances the jpeg header writer. It can be asked to omit
quantisation and huffman tables and it can write different horizontal and
vertical sampling factors. (the last thing is useless for libavcodec
itself (because libavcodec only handles YUV420P at ecoder level), but the
values are initialized so that operation of libavcodec is not impaired)

Originally committed as revision 290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-09 01:23:41 +00:00
Michael Niedermayer
0b2540a0c1 avoid copying input when encoding non intra stuff too
Originally committed as revision 288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-02-07 23:48:24 +00:00
Michael Niedermayer
2f349de286 (commit by michael)
mmx & mmx2 quantizer
c dct permutation bugfix
dont copy input on intra only encodings if it can be avoided
dont draw edges on intra only stuff

Originally committed as revision 281 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-27 13:30:18 +00:00
Michael Niedermayer
d2b3c3d7bb (commit by michael)
dc coeff isnt dequantized (bug reported by falk hueffner)

Originally committed as revision 278 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-24 15:25:11 +00:00