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