Commit Graph

259 Commits

Author SHA1 Message Date
Michael Niedermayer
bcb15e66f7 Merge commit 'b5b7b75e91e291c810ebd01868a42b53f267a87c'
* commit 'b5b7b75e91e291c810ebd01868a42b53f267a87c':
  dsputil: Move get_penalty_factor() to the only place it is used.

Conflicts:
	libavcodec/dsputil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-09 12:05:53 +01:00
Diego Biurrun
b5b7b75e91 dsputil: Move get_penalty_factor() to the only place it is used. 2013-02-07 22:05:25 +01:00
Michael Niedermayer
ede45c4e1d Merge commit '25841dfe806a13de526ae09c11149ab1f83555a8'
* commit '25841dfe806a13de526ae09c11149ab1f83555a8':
  Use ptrdiff_t instead of int for {avg, put}_pixels line_size parameter.

Conflicts:
	libavcodec/alpha/dsputil_alpha.c
	libavcodec/dsputil_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-02-06 12:18:25 +01:00
Diego Biurrun
25841dfe80 Use ptrdiff_t instead of int for {avg, put}_pixels line_size parameter.
This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.
2013-02-05 12:59:12 +01:00
Michael Niedermayer
d1bbd304bf Merge commit 'f81c37e40fe3236d54da12aef9cdba48ba70ec31'
* commit 'f81c37e40fe3236d54da12aef9cdba48ba70ec31':
  vf_delogo: fix an uninitialized read.
  h264: remove obsolete comment.
  mpegvideo: remove some unused variables from Picture.
  utvideoenc/v410enc: do not set AVFrame.reference.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-29 14:25:24 +01:00
Anton Khirnov
47318953dd mpegvideo: remove some unused variables from Picture. 2013-01-29 07:32:36 +01:00
Michael Niedermayer
bbe56bcd6b motion_est: Limit motion vector search range to MAX_MV
Fixes out of array reads with videos exceeding MAX_MV

Found-by: Thierry Foucu
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-16 05:55:24 +01:00
Diego Biurrun
a0c5917f86 Drop Snow codec
Snow is a toy codec with no real-world use and horrible code.
2013-01-06 16:30:02 +01:00
Michael Niedermayer
8328df74f3 motion_est: use av_assert* instead of assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-23 16:40:53 +01:00
Michael Niedermayer
3a48e38ad0 motion_est: more complete SAB diamond size check
This makes no difference with the current #defines

Fixes CID732255
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-12 19:33:39 +02:00
Michael Niedermayer
e335658370 Merge commit '9734b8ba56d05e970c353dfd5baafa43fdb08024'
* commit '9734b8ba56d05e970c353dfd5baafa43fdb08024':
  Move avutil tables only used in libavcodec to libavcodec.

Conflicts:
	libavcodec/mathtables.c
	libavutil/intmath.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-12 14:26:46 +02:00
Diego Biurrun
9734b8ba56 Move avutil tables only used in libavcodec to libavcodec. 2012-10-11 18:29:36 +02:00
Michael Niedermayer
d07940b76d motion_est: switch asserts to av_asserts
note, the asserts where enabled by default before this

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-09 05:06:39 +02:00
Michael Niedermayer
31ab1575e5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avcodec: Convert some commented-out printf/av_log instances to av_dlog
  avcodec: Drop silly and/or broken printf debug output
  avcodec: Drop some silly commented-out av_log() invocations
  avformat: Convert some commented-out printf/av_log instances to av_dlog
  avformat: Remove non-compiling and/or silly commented-out printf/av_log statements
  Remove some silly disabled code.
  ac3dec: ensure get_buffer() gets a buffer for the correct number of channels

Conflicts:
	libavcodec/dnxhddec.c
	libavcodec/ffv1.c
	libavcodec/h264.c
	libavcodec/h264_parser.c
	libavcodec/mjpegdec.c
	libavcodec/motion_est_template.c
	libavcodec/mpegaudiodec.c
	libavcodec/mpegvideo_enc.c
	libavcodec/put_bits.h
	libavcodec/ratecontrol.c
	libavcodec/wmaenc.c
	libavdevice/timefilter.c
	libavformat/asfdec.c
	libavformat/avidec.c
	libavformat/avienc.c
	libavformat/flvenc.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-01 16:12:38 +02:00
Diego Biurrun
1218777ffd avcodec: Convert some commented-out printf/av_log instances to av_dlog 2012-10-01 10:24:28 +02:00
Diego Biurrun
9c6cf7f2c9 avcodec: Drop silly and/or broken printf debug output 2012-10-01 10:24:28 +02:00
Michael Niedermayer
406cdddbdd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: add forgotten ;
  matroskadec: fix a sanity check.
  matroskadec: only return corrupt packets that actually contain data
  lavf: zero data/size of the packet passed to read_packet().
  ARM: use 2-operand syntax for ADD Rd, PC in Apple PIC code
  ARM: align PIC offset pools to 4 bytes
  ARM: swap source operands in some add instructions
  configure: update tms470 detection for latest version
  lavf probe: prevent codec probe with no data at all seen
  motion_est: fix use of inline on extern functions

Conflicts:
	libavcodec/motion_est_template.c
	libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-21 14:44:32 +02:00
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>
2012-09-20 10:56:30 +01:00
Michael Niedermayer
717a1876d8 motion_est: switch some asserts to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 21:39:53 +02:00
Michael Niedermayer
633b90ca8d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  motion_est: drop inline from sad_hpel_motion_search()
  motion_est: remove unused macros
  motion_est: remove useless no_motion_search() function
  lagarith: frame multithreading
  doxygen: qdm2: Drop documentation for non-existing function parameters
  build: add HOSTOBJS to SUBDIR_VARS list

Conflicts:
	Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 04:46:13 +02:00
Mans Rullgard
0db9eba48c motion_est: drop inline from sad_hpel_motion_search()
This function is only ever called through a function pointer,
so marking it inline makes no sense.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Mans Rullgard
5bf7bc625b motion_est: remove unused macros
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Mans Rullgard
74f82f92a4 motion_est: remove useless no_motion_search() function
At both places this function is called, mb_[xy] == s->mb_[xy]
making the call together with following code equivalent to
simply assigning zeros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Michael Niedermayer
7a72695c05 Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
  Replace all CODEC_ID_* with AV_CODEC_ID_*
  lavc: add AV prefix to codec ids.

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	ffprobe.c
	ffserver.c
	libavcodec/8svx.c
	libavcodec/avcodec.h
	libavcodec/dnxhd_parser.c
	libavcodec/dvdsubdec.c
	libavcodec/error_resilience.c
	libavcodec/h263dec.c
	libavcodec/libvorbisenc.c
	libavcodec/mjpeg_parser.c
	libavcodec/mjpegenc.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pcm.c
	libavcodec/r210dec.c
	libavcodec/utils.c
	libavcodec/v210dec.c
	libavcodec/version.h
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavformat/asfdec.c
	libavformat/asfenc.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/caf.c
	libavformat/electronicarts.c
	libavformat/flacdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/framecrcenc.c
	libavformat/img2.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/ipmovie.c
	libavformat/isom.c
	libavformat/matroska.c
	libavformat/matroskadec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/movenc.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegts.c
	libavformat/mxf.c
	libavformat/mxfdec.c
	libavformat/mxfenc.c
	libavformat/nsvdec.c
	libavformat/nut.c
	libavformat/oggenc.c
	libavformat/pmpdec.c
	libavformat/rawdec.c
	libavformat/rawenc.c
	libavformat/riff.c
	libavformat/sdp.c
	libavformat/utils.c
	libavformat/vocenc.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Anton Khirnov
36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Michael Niedermayer
d40ff29cac Merge remote-tracking branch 'qatar/master'
* qatar/master:
  asf: only set index_read if the index contained entries.
  cabac: add overread protection to BRANCHLESS_GET_CABAC().
  cabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC().
  cabac: remove unused argument from BRANCHLESS_GET_CABAC_UPDATE().
  cabac: use struct+offset instead of memory operand in BRANCHLESS_GET_CABAC().
  h264: add overread protection to get_cabac_bypass_sign_x86().
  h264: reindent get_cabac_bypass_sign_x86().
  h264: use struct offsets in get_cabac_bypass_sign_x86().
  h264: fix overreads in cabac reader.
  wmall: fix seeking.
  lagarith: fix buffer overreads.
  dvdec: drop unnecessary dv_tablegen.h #include
  build: fix doc generation errors in parallel builds
  Replace memset(0) by zero initializations.
  faandct: Remove FAAN_POSTSCALE define and related code.
  dvenc: print allowed profiles if the video doesn't conform to any of them.
  avcodec_encode_{audio,video}: only reallocate output packet when it has non-zero size.
  FATE: add a test for vp8 with changing frame size.
  fate: add kgv1 fate test.
  oggdec: calculate correct timestamps in Ogg/FLAC

Conflicts:
	libavcodec/4xm.c
	libavcodec/cook.c
	libavcodec/dvdata.c
	libavcodec/dvdsubdec.c
	libavcodec/lagarith.c
	libavcodec/lagarithrac.c
	libavcodec/utils.c
	tests/fate/video.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-29 04:11:10 +02:00
Diego Biurrun
a92be9b856 Replace memset(0) by zero initializations.
Also remove one pointless zero initialization in rangecoder.c.
2012-03-28 09:38:33 +02:00
Michael Niedermayer
3c5fe5b527 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  wma: Clip WMA1 and WMA2 frame length to 11 bits.
  movenc: Don't require frame_size to be set for modes other than mov
  doc: Update APIchanges with info on muxer flushing
  movenc: Reindent a block
  tools: Remove some unnecessary #undefs.
  rv20: prevent calling ff_h263_decode_mba() with unset height/width
  tools: K&R reformatting cosmetics
  Ignore generated aviocat and ismindex tools.
  build: Automatically include architecture-specific library Makefile snippets.
  indeo5: prevent null pointer dereference on broken files
  pktdumper: Use usleep instead of sleep
  cosmetics: Remove some unnecessary block braces.
  Drop unnecessary prefix from *sink* variable and struct names.
  Add a tool for creating smooth streaming manifests
  movdec: Calculate an average bit rate for fragmented streams, too
  movenc: Write the sample rate instead of time scale in the stsd atom
  movenc: Add a separate ismv/isma (smooth streaming) muxer
  movenc: Allow the caller to decide on fragmentation
  libavformat: Add a flag for muxers that support write_packet(NULL) for flushing
  movenc: Add support for writing fragmented mov files
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavfilter/Makefile
	libavformat/Makefile
	libavformat/avformat.h
	libavformat/movenc.c
	libavformat/movenc.h
	libavformat/version.h
	tools/graph2dot.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 02:23:56 +01:00
Diego Biurrun
33ad8c3cab cosmetics: Remove some unnecessary block braces. 2012-01-25 13:14:49 +01:00
Michael Niedermayer
56bf2c2a19 motion_est: avoid generating motion vectors that point between widthxheight and mb_widthxmb_height.
No difference in PSNR or bitrate in the printed precission with the matrix lobby scene at 322x242

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-17 20:25:13 +01:00
Michael Niedermayer
b81f8880e0 Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  fix AC3ENC_OPT_MODE_ON/OFF
  h264: fix HRD parameters parsing
  prores: implement multithreading.
  prores: idct sse2/sse4 optimizations.
  swscale: use aligned move for storage into temporary buffer.
  prores: extract idct into its own dspcontext and merge with put_pixels.
  h264: fix invalid shifts in init_cavlc_level_tab()
  intfloat_readwrite: fix signed addition overflows
  mov: do not misreport empty stts
  mov: cosmetics, fix for and if spacing
  id3v2: fix NULL pointer dereference
  mov: read album_artist atom
  mov: fix disc/track numbers and totals
  doc: fix references to obsolete presets directories for avconv/ffmpeg
  flashsv: return more meaningful error value
  flashsv: fix typo in av_log() message
  smacker: validate channels and sample format.
  smacker: check buffer size before reading output size
  smacker: validate number of channels
  smacker: Separate audio flags from sample rates in smacker demuxer.
  ...

Conflicts:
	cmdutils.h
	doc/ffmpeg.texi
	libavcodec/Makefile
	libavcodec/motion_est_template.c
	libavformat/id3v2.c
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 05:40:57 +02:00
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>
2011-10-11 12:05:50 +01:00
Michael Niedermayer
c5db8b4d09 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: fix signed overflow in avformat_find_stream_info()
  vp8: fix signed overflows
  motion_est: fix some signed overflows
  dca: fix signed overflow in shift
  aacdec: fix undefined shifts
  bink: Check for various out of bound writes
  bink: Check for out of bound writes when building tree
  put_bits: fix invalid shift by 32 in flush_put_bits()

Conflicts:
	libavcodec/bink.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 04:02:03 +02:00
Mans Rullgard
e708afd3c0 motion_est: fix some signed overflows
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 20:03:55 +01:00
Michael Niedermayer
78accb876c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: fix some indentation
  ffmpeg: fix operation with --disable-avfilter
  simple_idct: remove disabled code
  motion_est: remove disabled code
  vc1: remove disabled code
  fate: separate lavf-mxf_d10 test from lavf-mxf
  cabac: Move code only used in the cabac test program to cabac.c.
  ffplay: warn that -pix_fmt is no longer working, suggest alternative
  ffplay: warn that -s is no longer working, suggest alternative
  lavf: rename enc variable in utils.c:has_codec_parameters()
  lavf: use designated initialisers for all (de)muxers.
  wav: remove a use of deprecated AV_METADATA_ macro
  rmdec: remove useless ap parameter from rm_read_header_old()
  dct-test: remove write-only variable
  des: fix #if conditional around P_shuffle
  Use LOCAL_ALIGNED in ff_check_alignment()

Conflicts:
	ffmpeg.c
	libavformat/avidec.c
	libavformat/matroskaenc.c
	libavformat/mp3enc.c
	libavformat/oggenc.c
	libavformat/utils.c
	tests/ref/lavf/mxf

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-17 20:12:02 +02:00
Diego Biurrun
473e547e80 motion_est: remove disabled code 2011-07-17 17:32:37 +02:00
Michael Niedermayer
e10979ff56 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  changelog: misc typo and wording fixes
  H.264: add filter_mb_fast support for >8-bit decoding
  doc: Remove outdated comments about gcc 2.95 and gcc 3.3 support.
  lls: use av_lfg instead of rand() in test program
  build: remove unnecessary dependency on libs from 'all' target
  H.264: avoid redundant alpha/beta calculations in loopfilter
  H.264: optimize intra/inter loopfilter decision
  mpegts: fix Continuity Counter error detection
  build: remove unnecessary FFLDFLAGS variable
  vp8/mt: flush worker thread, not application thread context, on seek.
  mt: proper locking around release_buffer calls.
  DxVA2: unbreak build after [657ccb5ac7]
  hwaccel: unbreak build
  Eliminate FF_COMMON_FRAME macro.

Conflicts:
	Changelog
	Makefile
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-12 01:42:32 +02:00
Diego Biurrun
657ccb5ac7 Eliminate FF_COMMON_FRAME macro.
FF_COMMON_FRAME holds the contents of the AVFrame structure and is also copied
to struct Picture.  Replace by an embedded AVFrame structure in struct Picture.
2011-07-11 00:19:00 +02:00
Michael Niedermayer
686959e87e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxygen: Consistently use '@' instead of '\' for Doxygen markup.
  Use av_printf_format to check the usage of printf style functions
  Add av_printf_format, for marking printf style format strings and their parameters
  ARM: enable thumb for Cortex-M* CPUs
  nsvdec: Propagate error values instead of returning 0 in nsv_read_header().
  build: remove SRC_PATH_BARE variable
  build: move basic rules and variables to main Makefile
  build: move special targets to end of main Makefile
  lavdev: improve feedback in case of invalid frame rate/size
  vfwcap: prefer "framerate_q" over "fps" in vfw_read_header()
  v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters()
  fbdev: prefer "framerate_q" over "fps" in device context
  bktr: prefer "framerate" over "fps" for grab_read_header()
  ALSA: implement channel layout for playback.
  alsa: support unsigned variants of already supported signed formats.
  alsa: add support for more formats.
  ARM: allow building in Thumb2 mode

Conflicts:
	common.mak
	doc/APIchanges
	libavcodec/vdpau.h
	libavdevice/alsa-audio-common.c
	libavdevice/fbdev.c
	libavdevice/libdc1394.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-24 03:07:04 +02:00
Diego Biurrun
adbfc605f6 doxygen: Consistently use '@' instead of '\' for Doxygen markup.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-24 00:37:49 +02:00
Diego Biurrun
ac4a854811 Remove some non-compiling debug messages. 2011-06-08 00:45:47 +02:00
Maksym Veremeyenko
002e1f1eb3 motion_est: fix ffmpeg compilation with DEBUG defined
Remove the problematic av_dlog() call
2011-05-10 20:38:07 +02:00
Stefano Sabatini
ce5e49b0c2 replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_* 2011-05-02 16:41:41 +02:00
Stefano Sabatini
975a1447f7 Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 12:18:44 +02:00
Michael Niedermayer
be315a3232 Merge remote branch 'qatar/master'
* qatar/master:
Duplicate  AMV: disable DR1 and don't override EMU_EDGE
Duplicate  lavf: inspect more frames for fps when container time base is coarse
Wrong and we have correct fix: Fix races in default av_log handler
  vorbis: Replace sized int_fast integer types with plain int/unsigned.
  Remove disabled non-optimized code variants.
NO  bswap.h: Remove disabled code.
  Remove some disabled printf debug cruft.
  Replace more disabled printf() calls by av_dlog().
NO  tests: Remove disabled code.
NO  Replace some commented-out debug printf() / av_log() messages with av_dlog().
  vorbisdec: Replace some sizeof(type) by sizeof(*variable).
NO  vf_fieldorder: Replace FFmpeg by Libav in license boilerplate.

Conflicts:
	libavcodec/h264.c
	libavcodec/vorbisdec.c
	libavutil/log.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-30 01:58:26 +02:00
Diego Biurrun
09cbf60f8e Replace more disabled printf() calls by av_dlog(). 2011-04-29 20:00:41 +02:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Reimar Döffinger
b0c73ba11f motion_est: fix implicit truncation warnings
Patch by Reimar Döffinger and Eli Friedman (independently).

Originally committed as revision 24083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 12:27:44 +00:00
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
2010-04-20 14:45:34 +00:00
Michael Niedermayer
fd8277ffa0 Optimize bidir_refine a bit.
compiled code is less tham 1/4 the size.
a tiny bit faster

Originally committed as revision 22777 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 14:04:15 +00:00
Michael Niedermayer
a69220cce0 Change bidir refine hash code so we only need to perform a single
hash calculation for the whole function.
negligibly faster (about 0.1%)

Originally committed as revision 22775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 12:34:08 +00:00
Michael Niedermayer
2d603902f3 Reduce the size of the bidir refine hashtable from 4096 to 256 and
change the hash function to something more sane and simple.
about 1/3 faster, no meassureable change in psnr or size and i gues
its even same md5 with my test file but i forgot testing that.

Originally committed as revision 22773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 11:06:29 +00:00
Michael Niedermayer
e056d2a24b Move comment that belonged to cmp() back to cmp().
Originally committed as revision 22772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-02 01:13:59 +00:00
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
2010-04-02 01:07:03 +00:00
Michael Niedermayer
fc4a2d1e8c Change ref_index structure so it matches how its organized in h264.
Also revert the related error concealment hotfix.

Originally committed as revision 22640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-23 02:17:04 +00:00
Måns Rullgård
94ca624fbc Move ff_sqrt() to libavutil/intmath.h
Originally committed as revision 22345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 21:19:56 +00:00
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
2009-02-01 02:00:19 +00:00
Diego Biurrun
406792e7b0 cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Aurelien Jacobs
199436b952 moves mid_pred() into mathops.h (with arch specific code split by directory)
Originally committed as revision 16681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 22:57:40 +00:00
Michael Niedermayer
a6f2c0d6e5 Fix regression test failure with pthreads on multiprocessor systems.
Fixes issue517

Originally committed as revision 15976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-02 10:43:08 +00:00
Michael Niedermayer
6f55b11ec6 1000l Fix snow regression test that i broke in r15135.
Originally committed as revision 15136 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-01 00:22:00 +00:00
Michael Niedermayer
b74ec69366 Warn the user about me_method values that are not supported.
Fixes issue503

Originally committed as revision 15135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 23:55:47 +00:00
Michael Niedermayer
fdbb1feb27 Remove ancient code that hasnt worked in many years.
Originally committed as revision 14144 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-09 19:21:08 +00:00
Michael Niedermayer
c192426fd8 Fix return type of ff_init_me().
Originally committed as revision 13487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-28 01:54:09 +00:00
Michael Niedermayer
540c5220ff Check dia size a little more. Fixes CID80.
Originally committed as revision 13481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-27 23:41:10 +00:00
Aurelien Jacobs
9701840bb5 add FF_ prefix to all (frame)_TYPE usage
Originally committed as revision 12399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-09 23:31:02 +00:00
Diego Biurrun
7b94177e37 Group all copyright and author notices together.
Originally committed as revision 9483 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 10:37:29 +00:00
Diego Biurrun
90b5b51eab misc typo fixes
Originally committed as revision 9291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 18:50:50 +00:00
Diego Biurrun
755bfeabcc misc spelling fixes
Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 09:29:25 +00:00
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