Commit Graph

452 Commits

Author SHA1 Message Date
Michael Niedermayer
f4f3223ffd reuse motion vectors/mb types/field select values of the source video, if the SSE for a macroblock which is predicted with these values is below me_threshold
currently works only with mpeg1/2 source or some luck
may need -sync 0 as otherwise framedrops could lead to extreemly long b frame sequences

Originally committed as revision 3042 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-23 19:06:30 +00:00
Michael Niedermayer
7c4f71c428 exporting field_select/ref_index values
Originally committed as revision 3035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-19 03:33:23 +00:00
Michael Niedermayer
3803021453 fix y scale of mv vissualization of interlaced MVs
Originally committed as revision 3033 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-18 18:30:05 +00:00
Michael Niedermayer
a4d36c1113 passing AVFrame instead of AVPicture around in ffmpeg, that way stuff like motion vectors can be passed from the decoder to the encoder
moving ref_index from Picture to AVFrame

Originally committed as revision 3028 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-17 19:41:49 +00:00
Michael Niedermayer
14e2a9404e flv dropable p frame support
Originally committed as revision 3027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-17 13:36:21 +00:00
Michael Niedermayer
137c8468e8 unify table indexing (motion_val,dc_val,ac_val,coded_block changed)
minor +-1 bugfix

Originally committed as revision 3016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-16 01:01:45 +00:00
Michael Niedermayer
8100cab9c6 nicer looking arrows for the motion vector vissualization
Originally committed as revision 2950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-03 01:55:24 +00:00
Michael Niedermayer
b44bdf7eec interlaced chroma MC divx-bug workaround
Originally committed as revision 2947 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-02 19:54:33 +00:00
Michael Niedermayer
b73afeac30 huge vbv buffer size + CBR fix
Originally committed as revision 2929 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-26 12:30:04 +00:00
Falk Hüffner
7906085fcc warning patrol
Originally committed as revision 2925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-24 23:32:48 +00:00
Michael Niedermayer
6b47b7300e Compile fix by (Chip <szarlada at freemail dot hu>)
Originally committed as revision 2915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-22 12:07:02 +00:00
Michael Niedermayer
7976241aef moving f/b_code init to where it should be
Originally committed as revision 2901 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-16 17:27:03 +00:00
Michael Niedermayer
3edcacde04 init cleanup
Originally committed as revision 2899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-16 16:11:29 +00:00
Michael Niedermayer
37923cd32d alignment fix
Originally committed as revision 2890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-14 17:55:50 +00:00
Michael Niedermayer
67086c8552 width,height%16!=0 fix
Originally committed as revision 2889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-14 17:33:48 +00:00
Michael Niedermayer
1da57984e6 10l
Originally committed as revision 2871 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-11 13:22:39 +00:00
Michael Niedermayer
ca5b9f20b2 10l
Originally committed as revision 2848 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-05 15:10:56 +00:00
Michael Niedermayer
ed263031f6 100l (divx5 b frame + seeking + flush fix)
Originally committed as revision 2836 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-02 03:18:03 +00:00
Ivan Kalvachev
5e5c247a7c initial chroma_format changes,xvmc tweaks and codec_cap
Originally committed as revision 2833 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-01 14:55:21 +00:00
Michael Niedermayer
95d356c587 optimizing/cleanup of mpeg/qpel_motion()
Originally committed as revision 2831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-29 22:14:46 +00:00
Michael Niedermayer
c8a4ebbf27 simplify MPV_motion()
Originally committed as revision 2828 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-29 02:08:28 +00:00
Michael Niedermayer
5ba326b5d4 interlaced mpeg4 + edge emu fix (fixes decoding of mermaid.avi)
related cleanup

Originally committed as revision 2827 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-29 00:37:36 +00:00
Michael Niedermayer
259630df42 10l (vdpart fix)
Originally committed as revision 2822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-26 19:11:21 +00:00
Michael Niedermayer
ae35f5e14e 100l (field picture decoding fix)
Originally committed as revision 2818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-26 02:48:07 +00:00
Wolfgang Hesseler
8289c6faa8 export DCT coefficients patch by (Wolfgang Hesseler <wolfgang.hesseler at imk dot fraunhofer dot de>)
Originally committed as revision 2816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-25 18:29:17 +00:00
Michael Niedermayer
9740beffc6 use AVFrame.pts=AV_NOPTS_VALUE instead of AVFrame.pts=0
move AV_NOPTS_VALUE & AV_TIME_BASE from avformat.h -> avcodec.h
related fixes

Originally committed as revision 2814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-25 17:35:52 +00:00
Michael Niedermayer
e51f49487e set AVFrame.pts based upon framerate if its 0
detect & warn if the user prvides pts only for some frames, and try to guess the missing ones

Originally committed as revision 2812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-25 02:05:50 +00:00
Michael Niedermayer
c62c07d3d7 multithreaded mpeg2 decoding
Originally committed as revision 2810 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-23 20:56:56 +00:00
Michael Niedermayer
5e7c25f0d1 simplify
Originally committed as revision 2801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-18 22:54:02 +00:00
Michael Niedermayer
fbf2284cd2 check if threads_count is too large
Originally committed as revision 2798 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-18 16:26:16 +00:00
Michael Niedermayer
da16b2043f noise reduction with threads bugfix
Originally committed as revision 2789 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-17 18:57:50 +00:00
Michael Niedermayer
fafbc7c8c8 mpeg4 b frame + adaptive quantization assertion failure fix
Originally committed as revision 2779 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-14 03:49:43 +00:00
Michael Niedermayer
3a1fa44759 multithreaded spatial complexity calculation for i frames
Originally committed as revision 2778 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-14 03:21:03 +00:00
Michael Niedermayer
b6335c9f5b ff_copy_bits() optimization
Originally committed as revision 2777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-14 01:25:41 +00:00
Michael Niedermayer
a734250db6 activate the memcpy special case for the byte aligned case in ff_copy_bits(), wasnt working before because of a incorrectly used pbBufPtr()
Originally committed as revision 2775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-13 21:07:31 +00:00
Michael Niedermayer
cfbd16df75 replace a few pbBufPtr() by put_bits_count(), one of them was actually wrong
Originally committed as revision 2774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-13 20:59:48 +00:00
Michael Niedermayer
9c3d33d67f multithreaded/SMP motion estimation
multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263
all pthread specific code is in pthread.c
to try it, run configure --enable-pthreads and ffmpeg ... -threads <num>
the internal thread API is a simple AVCodecContext.execute() callback which executes a given function pointer with different arguments and returns after finishing all, that way no mutexes or other thread-mess is needed outside pthread.c

Originally committed as revision 2772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-13 17:54:10 +00:00
Tinic Uro
747a0554ea - made --extra-cflags option work on darwin
- allow INTER4V macroblocks for FLV1 codec
- fixed issue in flv file format saving 8 mp3 frames per packet instead of 1
- fixed crasher in flv file format involving mp3 buffer handling
- added FLV1 codec support for swf file format (FlashPlayer6 or above
required) and made it default
- fixed broken mp3 support in swf file format
patch by (Tinic Uro <turo at macromedia dot com>)
cleanup by me

Originally committed as revision 2756 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-06 23:56:37 +00:00
Alex Beregszaszi
fe455f3328 get_bit_count -> put_bits_count
Originally committed as revision 2752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-06 15:27:31 +00:00
Michael Niedermayer
de7ff1f774 analyze the gradient of the error surface to avoid a few checks in the quantizing noise shaper
Originally committed as revision 2751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-06 03:56:05 +00:00
Michael Niedermayer
364a179749 quantizer noise shaping optimization
Originally committed as revision 2750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-06 02:12:37 +00:00
Michael Niedermayer
deb7a6cdaf simplify
Originally committed as revision 2743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-02 14:59:43 +00:00
Michael Niedermayer
77ea0d4bdd quantizer noise shaping
Originally committed as revision 2742 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-02 03:52:58 +00:00
Michael Niedermayer
2c8b796fa9 b frames + cbr fix
Originally committed as revision 2730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-29 15:50:54 +00:00
Michael Niedermayer
11a8a71d4e mpeg4 pts fix
Originally committed as revision 2724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-26 19:04:32 +00:00
Michael Niedermayer
65a24d0b39 optimization & bugfix extracted from the 4k line diff between ffmpeg 0.4.7 and http://www.alicestreet.com/ffh263.html
the other parts of the diff where
1. spelling fixes (rejected as only a small part of it could be applied automatically)
2. cosmetics (reindention, function reordering, var renaming, ...) with bugs (rejected)
3. rtp related stuff (rejetced as it breaks several codecs)
4. some changes to the intra/inter decission & scene change detection (quality tests needed first)

Originally committed as revision 2721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-24 23:47:33 +00:00
Michael Niedermayer
303e50e65b closed gop support & flags2 as all bits in flags are used
and a few minor things i forgot to commit ...

Originally committed as revision 2718 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-22 19:48:28 +00:00
Michael Niedermayer
20f155ed80 avcodec_flush_buffers() fix
Originally committed as revision 2715 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-19 14:41:34 +00:00
Michael Niedermayer
2c492e94fc removing broken framerate conversation hack in mpeg1/2
Originally committed as revision 2713 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-18 21:41:44 +00:00
Michael Niedermayer
507a8e0d70 type fixes, found by Wolfgang Hesseler
Originally committed as revision 2694 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-12 22:39:19 +00:00
Michael Niedermayer
8f2ab83318 copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise
Originally committed as revision 2686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-10 16:04:55 +00:00
Michael Niedermayer
622348f931 interlaced dct decision cleanup
function moved to dspcontext
  mmx&mmx2 optimized
  change SSE -> SAD as default (better quality)
vbv buffer size command line option in kbyte

Originally committed as revision 2669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-05 22:57:07 +00:00
Michael Niedermayer
0982834b04 non YV12 vissualization fix by (Wolfgang Hesseler <qv at multimediaware dot com>)
Originally committed as revision 2662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-04 17:13:14 +00:00
Michael Niedermayer
5ac59c559b warn the user if we had to clip some dct coefficient due to a crappy format which doenst support the whole needed range (msmpeg4/wmv mostly but mpeg1 too to a lesser extend)
Originally committed as revision 2661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-04 14:43:52 +00:00
Michael Niedermayer
783df5f347 denoise_dct_mmx()
Originally committed as revision 2657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-02 22:29:08 +00:00
Michael Niedermayer
fbb898067f more trellis quant optimizations
Originally committed as revision 2655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-02 19:22:00 +00:00
Michael Niedermayer
34e0a29d36 cleanup
Originally committed as revision 2651 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-02 03:02:34 +00:00
Michael Niedermayer
7485d118f2 optimizing (trellis) quantizer
Originally committed as revision 2650 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-02 02:39:05 +00:00
Michael Niedermayer
ae55b53303 dont show uninitalized motion vectors
Originally committed as revision 2645 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-01 16:56:04 +00:00
Michael Niedermayer
273977d814 rate limit tips and checks
Originally committed as revision 2643 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-01 15:13:44 +00:00
Michael Niedermayer
bb198e198a interlaced motion estimation
interlaced mpeg2 encoding
  P & B frames
  rate distored interlaced mb decission
  alternate scantable support
4mv encoding fixes (thats also why the regression tests change)
passing height to most dsp functions
interlaced mpeg4 encoding (no direct mode MBs yet)
various related cleanups
disabled old motion estimaton algorithms (log, full, ...) they will either be fixed or removed

Originally committed as revision 2638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-30 16:07:57 +00:00
Michael Niedermayer
b846b231b3 100000l
Originally committed as revision 2637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-30 15:29:38 +00:00
Wolfgang Hesseler
0c9bbaec60 motion vector vissualization improvements patch by (Wolfgang Hesseler <qv at multimediaware dot com>)
Originally committed as revision 2636 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-30 02:12:12 +00:00
Michael Niedermayer
1031fabd14 picture number fixes
Originally committed as revision 2634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-29 22:25:08 +00:00
Steven M. Schultz
1c004e5622 lrintf patch by ("Steven M. Schultz" <sms at 2BSD dot COM>)
Originally committed as revision 2630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-22 19:42:28 +00:00
Michael Niedermayer
71c47d6e24 10l (forgot to copy top_field_first flag)
Originally committed as revision 2629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-22 19:06:01 +00:00
Michael Niedermayer
d60a8f85d7 vbv_delay
Originally committed as revision 2623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-17 19:53:05 +00:00
Michael Niedermayer
d50635cd24 split intra / inter dequantization
Originally committed as revision 2607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-14 02:57:00 +00:00
Michael Niedermayer
7ebfc0ea63 error concealment regression test
Originally committed as revision 2606 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-14 01:42:00 +00:00
Michael Niedermayer
d55f7b6521 cleanup
Originally committed as revision 2605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-13 20:41:33 +00:00
Aurelien Jacobs
0c11692a1d Here are juste two added #ifdef CONFIG_ENCODERS to allow
libavcodec to compile without CONFIG_ENCODERS defined
patch by (Aurelien Jacobs <aurel at gnuage dot org>)

Originally committed as revision 2604 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-13 02:14:18 +00:00
Michael Niedermayer
864119b6ca mb type & qp vissualization
Originally committed as revision 2603 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-13 01:33:52 +00:00
Michael Niedermayer
11dffbe1da stuffing to stay above min_bitrate
Originally committed as revision 2602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-12 21:30:47 +00:00
Fabrice Bellard
7a0f9d7e7d fixed top_field_first support when encoding
Originally committed as revision 2600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-12 16:56:38 +00:00
Michael Niedermayer
dd5e90cd55 interlaced dct encoding fix
Originally committed as revision 2592 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-10 17:05:41 +00:00
Fabrice Bellard
db9b1b5eae fixed interlaced encoding
Originally committed as revision 2590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-10 16:49:20 +00:00
Michael Niedermayer
5ea4b18d9f motion_subsample_log2
Originally committed as revision 2580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-09 01:55:54 +00:00
Wolfgang Hesseler
8d7ec294c4 move motion_val & mb_type to AVFrame patch by (Wolfgang Hesseler <qv at multimediaware dot com>)
cleanups & fixes by me

Originally committed as revision 2579 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-09 01:49:56 +00:00
Michael Niedermayer
01e8ff27b4 slice flush / position fix
Originally committed as revision 2569 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-07 02:10:30 +00:00
Michael Niedermayer
ba58dabc5c h263 slice structured mode
slice cleanup

Originally committed as revision 2568 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-07 01:33:45 +00:00
Michael Niedermayer
2be9f03abb AVFrame.interlaced_frame fixes
Originally committed as revision 2566 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-05 01:03:12 +00:00
Michael Niedermayer
c70f1716cf export top_field_first & interlaced_frame
Originally committed as revision 2564 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-05 00:19:46 +00:00
Michael Niedermayer
b40cd4e0e4 rv20 (h263) b frame decoding support
Originally committed as revision 2561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-04 18:34:47 +00:00
Michael Niedermayer
554daa2402 cleanup
Originally committed as revision 2558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-03 16:47:17 +00:00
Michael Niedermayer
6beeb962a2 h263 modified quantization fix
Originally committed as revision 2557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-03 16:07:41 +00:00
Michael Niedermayer
332f9ac4e3 h263 loop filter
fixed h263 modified quantization
CODEC_FLAG_OBMC

Originally committed as revision 2549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-12-01 15:23:14 +00:00
Michael Niedermayer
43dc0bfd2e cleanup
Originally committed as revision 2545 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-30 17:30:18 +00:00
Michael Niedermayer
dba019daba h263 alternative inter vlc support
Originally committed as revision 2541 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-29 08:37:51 +00:00
Michael Niedermayer
f7190f7399 h263 OBMC & 4MV support
cleanup

Originally committed as revision 2536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-28 21:31:20 +00:00
Michael Niedermayer
b68ab2609c dont read from b frames if draw_horiz_band==NULL
Originally committed as revision 2533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-27 13:38:00 +00:00
Michael Niedermayer
9bc8b38660 16x8 MV vissualization by (Wolfgang Hesseler <qv at multimediaware dot com>)
Originally committed as revision 2530 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-25 00:35:18 +00:00
Michael Niedermayer
bc1e364666 10l
Originally committed as revision 2529 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-24 21:53:32 +00:00
Michael Niedermayer
ad0d17f1f8 qprd with b frames fix
Originally committed as revision 2518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-13 23:45:25 +00:00
Michael Niedermayer
dd3e415e06 qprd needs mbd=2
Originally committed as revision 2517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-13 23:22:06 +00:00
Michael Niedermayer
30758048ef ac prediction with rate distorted qp fix
Originally committed as revision 2510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-12 13:03:51 +00:00
Michael Niedermayer
1f26c6f338 rate distored optimal lambda->qp support
Originally committed as revision 2509 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-12 12:25:44 +00:00
Michael Niedermayer
ea05d9c9c7 flush fix (untested)
Originally committed as revision 2473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 17:42:50 +00:00
Michael Niedermayer
762357e63a 10l (fixes dct coeff noise reduction)
Originally committed as revision 2470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:31:02 +00:00
Michel Bardiaux
9b87956678 av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)
Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-03 13:26:22 +00:00
Michael Niedermayer
821cb11f76 noise reduction of dct coefficients
Originally committed as revision 2468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-02 23:19:47 +00:00