Loren Merritt
1cfe393a25
doxy comment tweaks
...
Originally committed as revision 8580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-31 23:58:33 +00:00
Guillaume Poirier
bb21f1762a
Add doxy comments, based on Loren's explanations posted here:
...
Date: Mar 30, 2007 9:00 PM
Subject: Re: [Ffmpeg-devel] Motion Estimation in snow.c for Waevelet encoded frames (DWT)
Originally committed as revision 8579 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-31 22:39:43 +00:00
Reimar Döffinger
f66e4f5f9e
Add av_ prefix to clip functions
...
Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-25 10:27:12 +00:00
Michael Niedermayer
d951bb9a5c
test DIRECT{0,0} too if flag mv0 is used
...
slight PSNR/bitrate increase
Originally committed as revision 7361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-22 23:30:57 +00:00
Michael Niedermayer
2175b80bed
simplify
...
Originally committed as revision 7345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-21 15:22:16 +00:00
Michael Niedermayer
3b9cf3bdb3
i think this if() is useless lets abuse our users to test this ;)
...
Originally committed as revision 7344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-21 15:21:44 +00:00
Michael Niedermayer
2f16af0667
skip motion estimation and encoding of non direct-0,0 MBs if the next MB is skiped (mpeg4 doesnt allow such MBs and in the past we did ME and encoding until at the end we droped them, so this should be faster though i didnt benchmark it, benchmark welcome)
...
Originally committed as revision 7343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-21 15:20:02 +00:00
Michael Niedermayer
95cefcb4ed
10l
...
Originally committed as revision 7328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-17 15:41:30 +00:00
Michael Niedermayer
af6a403a05
warn user if the selected diamond size is larger then the motion estimation score cache size
...
Originally committed as revision 7326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-17 13:11:34 +00:00
Michael Niedermayer
a6daaf7cce
limit x/ymin/max to me_range
...
slight psnr/bitrate gain for most but not all files if me_range is used
Originally committed as revision 7325 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-17 12:07:09 +00:00
Guillaume Poirier
e828d257e7
Doxygen comments about variables described by Michael here:
...
Date: Tue, 12 Dec 2006 14:00:54 +0100
Subject: Re: [Ffmpeg-cvslog] r6876 - trunk/libavcodec/motion_est.c
Originally committed as revision 7288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-12 13:41:17 +00:00
Måns Rullgård
849f10351d
rename always_inline to av_always_inline and move to common.h
...
Originally committed as revision 7256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-08 00:35:08 +00:00
Diego Biurrun
c6c367254f
spelling cosmetics: cliped --> clipped
...
Originally committed as revision 7208 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-02 14:19:49 +00:00
Michael Niedermayer
dd7e46e7c3
new I/P frame selection heuristic
...
PSNR/bitrate is slightly better for my (short) test videos
more tests welcome ...
Originally committed as revision 6876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-02 23:36:39 +00:00
Michael Niedermayer
95da34cd54
CANDIDATE_MB_TYPE_INTER heuristic doesnt work at really low quality where the distortion becomes less relevant then the overhead of intra blocks
...
Originally committed as revision 6829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-28 20:00:05 +00:00
Diego Biurrun
c26abfa541
Rename ABS macro to FFABS.
...
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Diego Biurrun
b78e7197a8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
...
and fix GPL/LGPL version mismatches.
Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Marco Manfredini
8226ecaa6c
Fix CHECK_BIDIR macro so it works with Intel's Compiler
...
Patch by Marco Manfredini mldb A gmx P net
Originally committed as revision 5989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-12 16:31:17 +00:00
Michael Niedermayer
8437ff75f8
asserts to check if assumed conditions really are true
...
Originally committed as revision 5143 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-10 22:00:36 +00:00
Steve L'Homme
267f7edcd1
(f)printf --> av_log conversion
...
taken from a patch by Steve L'Homme
Originally committed as revision 5127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-08 11:43:10 +00:00
Corey Hickey
39a64e3023
sc_factor support for encoding.
...
Here's the description I'll add to the mplayer man page:
---
Causes frames with higher quantizers to be more likely to trigger a
scene change detection and make libavcodec use an I-frame (default: 1).
1-16 is a sane range.
Values between 2 and 6 may yield increasing PSNR (up to approximately
0.04 dB) and better placement of I-frames in high-motion scenes.
Higher values than 6 may give very slightly better PSNR (approximately
0.01 dB more than sc_factor=6), but noticably worse visual quality.
---
Original idea from Michael; patch by me.
Originally committed as revision 4883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-22 20:54:52 +00:00
Diego Biurrun
5509bffa88
Update licensing information: The FSF changed postal address.
...
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +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
Michael Niedermayer
aaaa6f1549
dont discard least significant bits
...
Originally committed as revision 4773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-25 16:34:12 +00:00
Michael Niedermayer
aacb6acc8a
hmm did i mess the scaling of these up at some point?
...
anyway, this change decreases bitrate and increase PSNR by ~1.00 on my test file, other files also benefit significantly
Originally committed as revision 4771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-24 23:47:29 +00:00
Michael Niedermayer
d4f0c2fcc3
10l (segfault fix)
...
Originally committed as revision 4769 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-23 19:05:48 +00:00
Michael Niedermayer
316a2ec84c
bidir refine support
...
Originally committed as revision 4768 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-23 16:25:00 +00:00
Michael Niedermayer
377798d6bd
minor typo
...
Originally committed as revision 4767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-23 00:40:52 +00:00
Diego Biurrun
bb270c0896
COSMETICS: tabs --> spaces, some prettyprinting
...
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun
115329f160
COSMETICS: Remove all trailing whitespace.
...
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Michael Niedermayer
95ae72b7e0
Compilation fixes part 1 patch by (Arvind R. and Burkhard Plaum, plaum, ipf uni-stuttgart de)
...
Originally committed as revision 4540 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-26 19:05:44 +00:00
Måns Rullgård
bf4e3bd2d0
kill a bunch of compiler warnings
...
Originally committed as revision 4522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-14 15:42:40 +00:00
Michael Niedermayer
0cc64d3d1c
fix assertion failure for mpeg2 encoding
...
Originally committed as revision 4488 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-01 20:01:41 +00:00
Michael Niedermayer
2f300f8965
motion vector limit for mpeg2
...
Originally committed as revision 4482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-07-27 13:16:35 +00:00
Diego Biurrun
bb628dae44
spelling fixes
...
patch by Peter Robinson pbrobinson @ at @ gmail . dot . com and myself
Originally committed as revision 4382 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-06-17 15:02:53 +00:00
Michael Niedermayer
725de25c4c
fix segfault with 'ffmpeg -i 1.avi -cmp 257 -4mv 2.avi'
...
Originally committed as revision 4178 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-05 13:40:28 +00:00
Mike Melanson
160d679c07
Ministry of English Composition, reporting for duty (and the word is "skipped", not "skiped"; "skiped" would rhyme with "hyped")
...
Originally committed as revision 4153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-24 17:21:11 +00:00
Michael Niedermayer
cec1f05fd7
check mb/me_threshold range, fixes assertion failure
...
Originally committed as revision 4082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-26 18:10:44 +00:00
Måns Rullgård
88730be651
kill warnings patch by (Måns Rullgård <mru inprovide com>)
...
Originally committed as revision 3977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-24 19:08:50 +00:00
Michael Niedermayer
096c3b7e90
overflow fix
...
Originally committed as revision 3685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-16 13:40:56 +00:00
Michael Niedermayer
1c3990dbba
H.261 encoder by (Maarten Daniels <maarten dot daniels at luc dot ac dot be>)
...
Originally committed as revision 3643 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-28 10:12:57 +00:00
Michael Niedermayer
7494cac0fd
fix constrained parameters flag
...
Originally committed as revision 3609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-18 23:07:18 +00:00
Michael Niedermayer
155ec6edf8
quad tree based motion compensation (currently only 16x16 & 8x8 OBMC blocks, but can be extended to other block sizes easily)
...
different intra block coding (previous was just an ugly hack)
1.8% bitrate reduction -0.01PSNR (foreman@352x288 qscale=8)
1.5% bitrate reduction +0.05PSNR (foreman@352x288 qscale=1)
Originally committed as revision 3416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-26 20:04:54 +00:00
Michael Niedermayer
26efc54e4a
4x4 SSE compare function
...
wavelet based compare functions
make epzs_motion_search() more flexible so it can be used for a wider range of block sizes
make get_penalty_factor() independant of MpegEncContext
Originally committed as revision 3410 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-22 17:16:03 +00:00
Michael Niedermayer
dbc56b3914
chroma me fix
...
Originally committed as revision 3216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-11 21:12:46 +00:00
Michael Niedermayer
ae1dbde1cf
clip input motion vectors
...
be somewhat more tollerant on invalid input
return INT_MAX instead of -1 for unuseable mv/mb types as that ensures nicely that they arent used
initalize limits earlier for b frames
a few more asserts to check for out of picture vectors
Originally committed as revision 3213 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-10 22:56:43 +00:00
Michael Niedermayer
d4c5d2adf3
nsse weight
...
Originally committed as revision 3205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-07 17:30:02 +00:00
Michael Niedermayer
e6a2ac3474
noise preserving sum of squares comparission function
...
Originally committed as revision 3204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-07 03:23:31 +00:00
Michael Niedermayer
0e9d4a67f4
change qscale -> lambda for the motion estimation
...
finetune bit/distortion weighting factor used in motion estimation, the old coeffs where finetuned relative to incorrect mv_penalty tables which where then fixed later but the coeffs where not
this _may_ fix the long standing blocking artifacts, but may also introduce mudding artefacts theoretically, so please tell us if u stumble across any so we can either fix them or export this variable so the user can change it
Originally committed as revision 3189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-03 19:29:47 +00:00
Michael Niedermayer
1f202b0d46
moving motion estimation specific variables from MpegEncContext -> MotionEstContext
...
Originally committed as revision 3124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-11 01:38:46 +00:00
Michael Niedermayer
af4091f194
reduce dependancy between motion estimation and MpegEncContext
...
this is practically just a s/s->me./c->/
Originally committed as revision 3123 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-11 00:58:08 +00:00
Michael Niedermayer
1545aceaaf
dont missuse assert()
...
Originally committed as revision 3096 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-30 18:09:24 +00:00
Michael Niedermayer
f20f8a8b0b
support reusing mb types and field select values of the source file, but use motion vectors just as additional predictors
...
minor cleanup
segfault fix
Originally committed as revision 3060 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 02:09:47 +00:00
Michael Niedermayer
aacc6615f8
sanity checks
...
Originally committed as revision 3052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-24 03:43:43 +00:00
Michael Niedermayer
9964df63ee
minor motion estimation cleanup
...
4mv motion vector passthrough
Originally committed as revision 3051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-24 03:36:37 +00:00
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
2750b827b3
motion estimation cleanup
...
replace ugly macros by always_inline functions, that way its much more readable and flexible as always_inline can simply be removed while the macros couldnt be
about 0.5 % speedup with default parameters
Originally committed as revision 3037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-22 03:31:29 +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
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
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
Michael Niedermayer
5a60360712
4mv + b frame encoding segfault fix
...
Originally committed as revision 2728 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-28 00:36:58 +00:00
Michael Niedermayer
237da0fa20
dont calculate stuff if its not used ...
...
Originally committed as revision 2699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-14 02:35:04 +00:00
Michael Niedermayer
a75b43fd73
fixing twice added offset bug, was triggered by 4mv + sub_cmp != mb_cmp
...
bug was introduced in version 1.75 (2003-12-30)
this may have lead to a small drop in quality of the 4mv mode, but should have only affected the mbd=0 case
Originally committed as revision 2698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-01-14 02:21:39 +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
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
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
d3985de709
cleanup
...
Originally committed as revision 2537 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-11-28 22:09:09 +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
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
ca7d05d56f
optionally try to encode each MB with MV=<0,0> and choose the one with better RD
...
Originally committed as revision 2328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-10-02 00:24:34 +00:00
Michael Niedermayer
2d5e962b06
100l (forget to reset me.skip for b frames)
...
Originally committed as revision 2170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-26 22:26:18 +00:00
Michael Niedermayer
e4eadb4b44
oooooops, having 2 Eterms open and doing cvs diff in one and cvs commit in the other sucks, especially if they are in different directories (MPlayer/main/libavcodec vs. ffmpeg/libavcodec)
...
Originally committed as revision 2165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-25 22:54:53 +00:00
Michael Niedermayer
029911d1c3
mpeg2 encoding
...
Originally committed as revision 2164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-25 22:47:32 +00:00
Fabrice Bellard
802f454e5b
removed unused variable
...
Originally committed as revision 2162 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-08-24 22:28:41 +00:00
Michael Niedermayer
7d1c3fc1d6
rate distortion mb decision support
...
fix decoding of old %16!=0 divx
fix assertion failure in motion_est.c
Originally committed as revision 2094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-29 02:09:12 +00:00
Michael Niedermayer
cf48e6f8dc
edge fix
...
Originally committed as revision 2053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-16 18:20:46 +00:00
Michael Niedermayer
7bc9090a41
simplified adressing of most mb based arrays (mb_x + mb_y*s->mb_stride) now instead of mb_x + mb_y*mb_width and 1+mb_x + (1+mb_y)*(mb_width+2) and ... mixture
...
more direct use of the new mb_type stuff instead of codec specific stuff
runtime mb_type debug output h264/h263 variants/mpeg1/2/4
error concealment /resilience for mpeg1/2
various minor optimizations
Originally committed as revision 1746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-04-10 13:18:38 +00:00
Michael Niedermayer
309522372c
some static -> dynamic alloc & 16->8 bit
...
Originally committed as revision 1722 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-31 11:13:14 +00:00
Michael Niedermayer
983e3246b7
per file doxy
...
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 11:32:04 +00:00
Michael Niedermayer
ebbcdc9ac0
user specified motion estimation range limit
...
h263 me range fixed (was smaller then needed)
Originally committed as revision 1610 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-27 22:56:07 +00:00
Zdenek Kabelac
0c1a9edad4
* UINTX -> uintx_t INTX -> intx_t
...
Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-11 16:35:48 +00:00
Zdenek Kabelac
5c91a6755b
* static,const,compiler warning cleanup
...
Originally committed as revision 1567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-10 09:35:32 +00:00
Michael Niedermayer
c40c34828a
direct blocksize in bframes fix (might fix qpel+bframe bug)
...
Originally committed as revision 1557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-08 18:23:39 +00:00
Michael Niedermayer
63b15e559a
mpeg1 bframe encoding patch by (Raphaël LEGRAND) with some modifications by me
...
Originally committed as revision 1551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-08 12:00:57 +00:00
Michael Niedermayer
668154dfea
b frame segfault fix (+-1 bug)
...
Originally committed as revision 1549 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-02-07 16:44:48 +00:00
Michael Niedermayer
cb009a8cff
10l / 4mv segfault fix
...
Originally committed as revision 1517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-28 09:26:00 +00:00
Måns Rullgård
ef9f730675
C99 initializers and kill warnings patch by (mru at users dot sourceforge dot net (Måns Rullgård))
...
Originally committed as revision 1474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 18:30:29 +00:00
Michael Niedermayer
6772518310
finetuneing thresholds/factors
...
nicer mb decission
a few minor improvements & fixes
Originally committed as revision 1472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 17:55:13 +00:00
Michael Niedermayer
1d0eab1dcc
bugs
...
Originally committed as revision 1469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-18 01:37:42 +00:00
Michael Niedermayer
3a87ac948f
more compare functions (rd & bit)
...
Originally committed as revision 1461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-15 18:05:23 +00:00
Michael Niedermayer
4a711c33cc
b frame segfault fix
...
Originally committed as revision 1400 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-06 01:20:37 +00:00
Michael Niedermayer
826f429ae9
qpel in mmx2/3dnow
...
qpel refinement quality parameter
Originally committed as revision 1393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-05 15:57:10 +00:00
Michael Niedermayer
f931ff7b9f
pre motion estimation cleanup/bugfix
...
Originally committed as revision 1390 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-02 12:48:09 +00:00
Michael Niedermayer
f5fb6b34fd
motion estimation pre pass
...
Originally committed as revision 1389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-02 01:29:35 +00:00
Michael Niedermayer
0a13093de8
bugfix
...
Originally committed as revision 1388 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-01 16:47:31 +00:00
Michael Niedermayer
b07a59805e
shape adaptive diamonds for EPZS
...
user specified amount of MV predictors from the last frame
b frame MV predictor scaling fixed
Originally committed as revision 1384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-01 14:36:20 +00:00
Michael Niedermayer
1457ab5233
qpel encoding
...
4mv+b frames encoding finally fixed
chroma ME
5 comparission functions for ME
b frame encoding speedup
wmv2 codec (unfinished)
user specified diamond size for EPZS
Originally committed as revision 1365 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-27 23:51:46 +00:00
Michael Niedermayer
032011465b
better? scene change detection
...
Originally committed as revision 1314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-05 22:22:53 +00:00
Michael Niedermayer
1e491e29c2
cleanup
...
adding AVVideoFrame
moving quality, pict_type, key_frame, qscale_table, ... to AVVideoFrame
removing obsolete variables in AVCodecContext
skiping of MBs in b frames
correctly initalizing AVCodecContext
picture buffer cleanup
Originally committed as revision 1302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-12-04 10:04:03 +00:00
Brian Foley
9c76bd48aa
* altivec and pix_norm patch by Brian Foley
...
Originally committed as revision 1269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-22 07:53:06 +00:00
Michael Niedermayer
d6483a8e5c
1l found by kabi
...
Originally committed as revision 1207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-11-14 18:02:07 +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
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
0bfacb95de
fixing q>0.0 assert failure caused by overflow of variance for b frames
...
Originally committed as revision 1120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-30 22:55:07 +00:00
Michael Niedermayer
c42612f1b4
clip MVs for direct mode
...
Originally committed as revision 1068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-24 00:51:17 +00:00
Michael Niedermayer
693b0e1d66
fixing variance scaling for b frames (messed adaptive quants up)
...
cliping too long MVs in b frames instead of setting them to 0
Originally committed as revision 965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-09-23 15:16:09 +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
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
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
Dominik Mierzejewski
0778718635
warning patch by (Dominik Mierzejewski <dominik at rangers dot eu dot org>)
...
Originally committed as revision 872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-08-28 08:15:30 +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
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
5efa265074
b frame direct mode bugfix (bug found by CM <chenm001 at 163 dot com>)
...
Originally committed as revision 832 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-07-31 08:01:29 +00:00
Michael Niedermayer
f10bd870bf
4mv bugfix
...
Originally committed as revision 702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-24 15:02:52 +00:00
Michael Niedermayer
0d21a84605
dont double check vectors
...
more correct EPZS implementation
much faster halfpel ME
simplifications / reducing duplicate code
4MV in LQ mode
Originally committed as revision 641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-06-02 12:18:18 +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
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
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
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
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
Michael Niedermayer
c60cf138bd
fixing MVs in hq mode
...
Originally committed as revision 372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-04-01 17:40:42 +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
122546a6d1
seems the old intra/inter decission is slightly better with a threshold, than the new one
...
Originally committed as revision 357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-24 04:58:54 +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
b398777148
better inter/intra decission algo (same as xvid)
...
Originally committed as revision 352 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-23 12:39:45 +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
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
Juanjo
ce7c56c250
- Added video coding statistics for ffmpeg. Needs more work.
...
- Fixed ME range for H.263+ UMV (32 pix).
Originally committed as revision 342 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-03-19 06:30:41 +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
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
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
Michael Niedermayer
2ddeed44a5
(commit by michael)
...
motion-estimation on width/height not divisable through 16 files bugfix
Originally committed as revision 279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-01-24 19:06:47 +00:00
Fabrice Bellard
fb16b7e7b3
added emms_c() macro which should can used in c code in both mmx/non mmx cases
...
Originally committed as revision 12 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-24 20:42:03 +00:00
Fabrice Bellard
980fc7b834
fixed config for direct mplayer build compatibility
...
Originally committed as revision 8 to svn://svn.ffmpeg.org/ffmpeg/trunk
2001-07-23 20:06:54 +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