Ganesh Ajjanagadde
6dc0db6634
avcodec/motion_est_template: replace qsort with AV_QSORT
...
This code is in a performance critical section. AV_QSORT is
substantially faster due to the inlining of the comparison callback.
Thus, the increase in performance is worth the increase in binary size.
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
9 years ago
Ganesh Ajjanagadde
4885bde318
motion_est_template: Fix undefined left shift of negative number
...
This fixes a -Wshift-negative-value warning reported with clang 3.7+.
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
9 years ago
Ganesh Ajjanagadde
11b563ed8f
avcodec/motion_est_template: fix undefined left shift of negative number
...
This fixes -Wshift-negative-value reported with clang 3.7+, e.g
http://fate.ffmpeg.org/log.cgi?time=20150918181527&log=compile&slot=x86_64-darwin-clang-polly-vectorize-stripmine-3.7 .
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
9 years ago
Michael Niedermayer
e71ca21f30
avcodec/motion_est_template: Fix undefined behavior in small_diamond_search()
...
Fixes: asan_heap-oob_394322e_138_cov_4265020547_CVPCMNL1_SVA_C.264
Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
9 years ago
Michael Niedermayer
9dc0bac971
avcodec/motion_est_template: Fix undefined shifts in CHECK_MV()
...
Fixes:asan_heap-oob_4d5bb0_2295_cov_3374722539_hotel_california_ra5.1_640x480_30s.rmvb
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
56fd4705c0
avcodec/motion_est_template: Fix undefined shifts in CHECK_MV_DIR()
...
Fixes: signal_sigsegv_2e64ee0_2762_cov_4170502227_missing_frames.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
10 years ago
Anton Khirnov
a2941c8cb2
lavc: move CODEC_FLAG_MV0 to mpegvideo
11 years ago
Diego Biurrun
aba70bb538
Add missing headers to make template files compile (more) standalone
11 years ago
Michael Niedermayer
05d81a57f5
motion_est_template: fix warning: "ASSERT_LEVEL" is not defined
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
2fbc8ea08e
hpel_motion_search: move code used for asserts under correct #if
...
This avoids compiler warnings about set but not used variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
911c00e60f
motion_est: use av_log() in debug code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
bbd7b46b94
sab_diamond_search: add assert to double check the minima_count
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Diego Biurrun
9c6cf7f2c9
avcodec: Drop silly and/or broken printf debug output
12 years ago
Mans Rullgard
a34a609fc1
motion_est: fix use of inline on extern functions
...
Inline functions declared without extern do not provide an external
definition in standard C99. This code only works because most
compilers do not implement the inline semantics correctly. With a
stricter compiler, linking fails with unresolved references to these
functions.
Declaring the functions extern inline works correctly with some
compilers while some others still fail to create external definitions.
For maximum portability, create a static inline version with an
externally visible wrapper for ff_get_mb_score. ff_epzs_motion_search
is so large that no sane compiler inlines it anyway, so there the
inline keyword can simply be dropped with no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years ago
Michael Niedermayer
d673a3f4a9
motion_est_template: switch to av_assert
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
J. Bohl
0719e44b58
new attribute "extern inline" (fixing linker error with ff_get_mb_score and ff_get_mb_score)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
cb668476ab
motion_est: make MotionExtContext.map_generation unsigned
...
The way this value is used, it should be an unsigned type.
While the numerical value has no meaning, unsigned wraparound
is relied upon.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Diego Biurrun
473e547e80
motion_est: remove disabled code
14 years ago
Diego Biurrun
ff993cd7fc
doxygen: Drop array size declarations from Doxygen parameter names.
...
Adding [] to a Doxygen parameter name clashes with Doxygen syntax.
14 years ago
Diego Biurrun
adbfc605f6
doxygen: Consistently use '@' instead of '\' for Doxygen markup.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Stefano Sabatini
ce5e49b0c2
replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*
14 years ago
Stefano Sabatini
975a1447f7
Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
14 years ago
Diego Biurrun
2e15305b70
Remove some disabled printf debug cruft.
14 years ago
Michael Niedermayer
7b9e98173c
Revert "Eliminate pointless '#if 1' statements without matching '#else'."
...
no comment
This reverts commit e6ff064845
.
Conflicts:
libavcodec/dsputil.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Diego Biurrun
e6ff064845
Eliminate pointless '#if 1' statements without matching '#else'.
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Diego Biurrun
e51f04968e
Restore array sizes in doxygen parameter names.
...
Originally committed as revision 24108 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Diego Biurrun
3fa7626863
Avoid square brackets in Doxygen comments; Doxygen chokes on them.
...
Originally committed as revision 23979 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Diego Biurrun
ba87f0801d
Remove explicit filename from Doxygen @file commands.
...
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.
Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
919e749772
slice dice, inline and outline cmp()
...
motion_est.o is now less than half its previous size.
No speedchange meassureable.
Originally committed as revision 22771 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Diego Biurrun
bad5537e2c
Use full internal pathname in doxygen @file directives.
...
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.
Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Diego Biurrun
ca74c0a180
cosmetics: Fix two common typos: wont --> will not, lets --> let us.
...
Originally committed as revision 14372 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Michael Niedermayer
81d4ee3e16
New full search ME
...
Originally committed as revision 14142 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Aurelien Jacobs
9701840bb5
add FF_ prefix to all (frame)_TYPE usage
...
Originally committed as revision 12399 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Diego Biurrun
e5a389a1b7
license header consistency cosmetics
...
Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Carl Eugen Hoyos
154e30f6c2
rename attribute_unused to av_unused and moves its declaration to common.h
...
patch by Carl Eugen Hoyos cehoyos chez ag or at
original thread: [FFmpeg-devel] [PATCH] attribute_unused -> av_unused
date: 05/29/2007 01:23 PM
Originally committed as revision 9155 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Loren Merritt
1cfe393a25
doxy comment tweaks
...
Originally committed as revision 8580 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
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
18 years ago
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
18 years ago
Michael Niedermayer
e4d0e2edb9
fix special casing of the 0,0 MV for b frames (slight PSNR/bitrate gain)
...
Originally committed as revision 7334 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
ff8dc81b5b
dont favor the zero MV if mv0 is used (psnr per bitrate gains ranging from 0 to 0.14, most are <=0.04 though)
...
Originally committed as revision 7333 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
2b0cdd9ec6
mv overflow in map fix (untested except regression tests)
...
Originally committed as revision 7287 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
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
18 years ago
Michael Niedermayer
2421a01b25
10l umh search needs hex size 2 now after the last change
...
Originally committed as revision 7224 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
f852ff3257
make hex and large 2 small diamond search half their size instead or -1 if the initial size was a power of 2
...
double the hex size so odd sized hexagons are possible
Originally committed as revision 7223 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Diego Biurrun
c6c367254f
spelling cosmetics: cliped --> clipped
...
Originally committed as revision 7208 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
516ea8d222
fix indention
...
Originally committed as revision 7206 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
1994e7c6b6
dia_size=-1 -> funny_diamond_search()
...
dia_siue=768 + size -> umh search (old -1 was 784)
Originally committed as revision 7205 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago
Michael Niedermayer
376edfcc0f
hexagon search
...
dia_size=512 + hexagon size (513 is the normal one used in h264)
large to small diamond search
dia_size=256 + diamond size
Originally committed as revision 7204 to svn://svn.ffmpeg.org/ffmpeg/trunk
18 years ago