Commit Graph

118 Commits

Author SHA1 Message Date
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
Michael Niedermayer 4e3269e87f (commit by michael)
quantizer range bugfix (mpeg1 & mpeg4 encoding)

Originally committed as revision 277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-24 14:34:03 +00:00
Michael Niedermayer ae40484c1c (commit by michael)
bye bye weird al rounding bug ;)

Originally committed as revision 268 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-15 22:22:41 +00:00
Michael Niedermayer 5975626d6f (commit by michael)
emms

Originally committed as revision 267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-15 05:02:26 +00:00
Michael Niedermayer 3d9fccbf0f (commit by michael)
draw_edges_mmx()

Originally committed as revision 266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-15 04:07:29 +00:00
Michael Niedermayer badaf88eeb (commit by michael)
dequantizers skip trailing zeros
msmpeg4 non-intra decoder has its dequantizer "build in" now

Originally committed as revision 260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-13 04:59:37 +00:00
Arpi eede215681 rv10 sig11 fix by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-12 14:36:40 +00:00
Michael Niedermayer 5b3438c630 different fix, s->mbintra_table used only if h263_pred set. - patch by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-11 22:07:12 +00:00
Vladimir Dergachev 01dbbd0a9a This fixes segfaults because of uninitialized s->mbintra_table variable - patch by Vladimir Dergachev <volodya@mindspring.com>
Originally committed as revision 256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-11 21:32:34 +00:00
Arpi 477c35a9f0 mpeg4 encoder fix by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 254 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-11 21:23:48 +00:00
Michael Niedermayer bff6ecaa9c AC table reset (memset) optimization - patch by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-10 00:53:21 +00:00
Michael Niedermayer ef093645ef fix different UMV handling for mpeg4 vs. h263 - patch by Michael Niedermayer <michaelni@gmx.at>
Originally committed as revision 249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-10 00:46:40 +00:00
Stephen Davies fb4a9613ee qscale estimate fix, diff extended to 64bit wide. patch by Stephen Davies <steve@daviesfam.org>
Originally committed as revision 247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-08 00:28:55 +00:00
Arpi 3a842ea5d1 informal msg
Originally committed as revision 238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-12-26 14:02:08 +00:00
Arpi 393fe8dd8e unrestricted MC fixed - thanks to Michael Niedermayer for idea
Originally committed as revision 236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-12-16 12:44:34 +00:00
Juanjo 644d98a4f2 - Preliminary RTP friendly mode for H.263.
- GOB headers for H.263 coding on RTP mode.
- Improved GOB header detection for H.263 decoder.

Originally committed as revision 222 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-11-19 02:13:14 +00:00
Arpi 79e7b30557 exporting qscale data for postprocessing (for MPlayer)
Originally committed as revision 164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-10-16 23:10:38 +00:00
Juanjo 544286b3d3 Moved some H.263+ variables to MpegEncContext to be thread-safe.
Increase video_buffer on ffmpeg to avoid buffer overrun on big pictures.


Originally committed as revision 114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-31 06:21:27 +00:00
Juanjo 6dbd39fe70 Added support to Unrestricted Motion Vectors (UMV)
on H.263+ encoding/decoding. According to Annex D.
Now MV on H.263+ are 32x32 long.


Originally committed as revision 113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-28 23:32:34 +00:00
Fabrice Bellard 58f26ba916 changed opendivx to mpeg4
Originally committed as revision 102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-15 13:12:23 +00:00
Fabrice Bellard 1a56543279 win32 fixes
Originally committed as revision 84 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-13 21:48:05 +00:00
Fabrice Bellard 519c2b6d11 moved matrix init away from MPV_common_init()
Originally committed as revision 77 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-12 00:52:37 +00:00
Fabrice Bellard 514547517b fixed mpeg2 interlaced DCT
Originally committed as revision 74 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-11 22:07:21 +00:00
Fabrice Bellard 425dddb7f1 fixed mpeg1 first block bug (pb with black picture optimisation for B frames)
Originally committed as revision 59 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-08 21:57:07 +00:00
Fabrice Bellard 4f1c7e3c92 fixed block permutation in encoder (not optimal - should move it in forward DCT code)
Originally committed as revision 51 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-07 22:48:42 +00:00
Arpi 4af7bcc185 MMX/MMXEXT iDCT support, using external functions currently defined in libmpeg2
Gives average 13-20% mpeg decoding speedup on x86 systems.


Originally committed as revision 30 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-03 18:33:03 +00:00
Arpi 2d6d0c1d66 - removed #include ../config.h, because it's included from common.h
which is included from avcodec.h which is included from those files...


Originally committed as revision 29 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-02 18:46:26 +00:00
Nick Kurshev 54329dd5a5 Adding fastmemcpy stuff to speedup mplayer project
Originally committed as revision 27 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-08-02 08:29:38 +00:00
Fabrice Bellard 21af69f787 use block[] in structure to have it aligned on 8 bytes for mmx optimizations - dct_unquantize is always a function pointer - added specialized dct_unquantize_h263
Originally committed as revision 22 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-30 23:26:26 +00:00
Nick Kurshev a9b3f63084 Sync with mplayer's stuff
Originally committed as revision 14 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-30 09:04:34 +00:00
Fabrice Bellard 3bb4e23a8a added skip macroblock optimization (big perf win on black regions for example)
Originally committed as revision 13 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-24 20:43:41 +00:00
Fabrice Bellard de6d9b6404 Initial revision
Originally committed as revision 5 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-22 14:18:56 +00:00