Statistics
| Branch: | Revision:

ffmpeg / libavcodec / error_resilience.c @ 3732c483

History | View | Annotate | Download (43.4 KB)

# Date Author Comment
3732c483 05/10/2011 10:57 PM Michael Niedermayer

error_concealment: Use previous pictures motion vectors when the current ones have been lost.

Looks better for some cases, worse for others, overall not much difference.
Its more correct though.
Signed-off-by: Michael Niedermayer <>

a811ec7c 05/10/2011 10:57 PM Multiple Authors

Merging branch 'ffmpeg-mt/master'

Just some cosmetics & comments, the only functional change
"error_resilience: use s->last_picture for accessing last MVs."
Is so buggy that it needs a full rewrite, guess -1.0 PSNR loss wasnt
enough for ronald to realize there was a problem.

ce5e49b0 05/02/2011 02:41 PM Stefano Sabatini

replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*

7b9e9817 04/27/2011 02:13 AM Michael Niedermayer

Revert "Eliminate pointless '#if 1' statements without matching '#else'."

no comment

This reverts commit e6ff064845d02c43526c8a56dab121c219f16659.

Conflicts:

libavcodec/dsputil.c

Signed-off-by: Michael Niedermayer <>

d7e5aeba 04/27/2011 01:51 AM Michael Niedermayer

Merge remote branch 'qatar/master'

  • qatar/master: (23 commits)
    ac3enc: correct the flipped sign in the ac3_fixed encoder
    Eliminate pointless '#if 1' statements without matching '#else'.
    Add AVX FFT implementation.
    Increase alignment of av_malloc() as needed by AVX ASM....
e6ff0648 04/26/2011 06:18 PM Diego Biurrun

Eliminate pointless '#if 1' statements without matching '#else'.

2912e87a 03/19/2011 01:33 PM Mans Rullgard

Replace FFmpeg with Libav in licence headers

Signed-off-by: Mans Rullgard <>

ba87f080 04/20/2010 02:45 PM Diego Biurrun

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

e5d2bdec 04/13/2010 10:52 PM Diego Biurrun

Add rectangle.h #include for fill_rectangle().

Originally committed as revision 22877 to svn://svn.ffmpeg.org/ffmpeg/trunk

c28112fa 03/30/2010 08:46 PM Michael Niedermayer

Make sure the EC code does not attempt to use inter based concealment if there
is no reference frame available. (this can happen because the EC code will attempt
to use reference frames even for I/IDR frames)

Originally committed as revision 22732 to svn://svn.ffmpeg.org/ffmpeg/trunk

fc4a2d1e 03/23/2010 02:17 AM Michael Niedermayer

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

3546fa8d 03/20/2010 11:18 PM Aurelien Jacobs

fix compilation with --disable-everything --enable-decoder=mpeg2video

Originally committed as revision 22612 to svn://svn.ffmpeg.org/ffmpeg/trunk

b297129b 03/20/2010 04:51 PM Michael Niedermayer

Hotfix for regtest-error failure
a proper fix appears to require changing h263/mpeg2/motion est to index ref_index like
h264. Ill do this change and then revert this hotfix but it will take a bit time.

Originally committed as revision 22608 to svn://svn.ffmpeg.org/ffmpeg/trunk

673fc638 03/20/2010 12:52 AM Michael Niedermayer

Error concealment of h264 with multiple references.

Originally committed as revision 22603 to svn://svn.ffmpeg.org/ffmpeg/trunk

68f0bc7e 03/17/2010 02:59 AM Michael Niedermayer

Use H264s MC instead of mpeg4-asp qpel for h264 error resilience.

Originally committed as revision 22572 to svn://svn.ffmpeg.org/ffmpeg/trunk

686c7817 03/14/2010 01:52 AM Michael Niedermayer

Make sure all mvs of a mb are set in the error concealment code.

Originally committed as revision 22520 to svn://svn.ffmpeg.org/ffmpeg/trunk

bb4fcfa3 03/14/2010 12:42 AM Michael Niedermayer

Ensure that the deblock filter accesses the correct MVs for h264.

Originally committed as revision 22517 to svn://svn.ffmpeg.org/ffmpeg/trunk

2c4bc23e 03/12/2010 04:59 PM Michael Niedermayer

Fix guess_mv() so that it works correctly with 4x4 MV blocks.

Originally committed as revision 22485 to svn://svn.ffmpeg.org/ffmpeg/trunk

358b5b1a 02/25/2010 11:44 PM Michael Niedermayer

Get rid of mb2b8_xy and b8_stride, change arrays organized based on b8_stride to
ones based on mb_stride in h264.
about 20 cpu cycles faster overall per MB

Originally committed as revision 22065 to svn://svn.ffmpeg.org/ffmpeg/trunk

f40a7fd3 12/01/2009 01:01 AM Michael Niedermayer

4:2:2 4:4:4 bugfix for the error concealment code.

Originally committed as revision 20678 to svn://svn.ffmpeg.org/ffmpeg/trunk

fd1ef13b 11/30/2009 07:15 PM Michael Niedermayer

Disable error resilience for field pictures, this was never supported,
results where more or less random but should not have crashed.

Originally committed as revision 20671 to svn://svn.ffmpeg.org/ffmpeg/trunk

b6b66760 04/10/2009 07:17 AM Reimar Döffinger

Make sure error resilience does not try to use unavailable reference frames.
Fixes the crash described in issue 706.

Originally committed as revision 18407 to svn://svn.ffmpeg.org/ffmpeg/trunk

11647a9f 02/27/2009 08:16 AM Gwenole Beauchesne

Return early if a HW accelerator is used.
Patch by Gwenole Beauchesne.

Originally committed as revision 17635 to svn://svn.ffmpeg.org/ffmpeg/trunk

40e5d31b 02/23/2009 01:44 PM Gwenole Beauchesne

More approved hunks for VAAPI & our new and cleaner hwaccel API.
patch by Gwenole Beauchesne gbeauchesne splitted-desktop com

Originally committed as revision 17540 to svn://svn.ffmpeg.org/ffmpeg/trunk

83344066 02/16/2009 11:49 AM Diego Biurrun

Get rid of some '#if CONFIG_MPEG_XVMC_DECODER' preprocessor checks around if
statements by merging the CONFIG_MPEG_XVMC_DECODER check into the if condition.

Originally committed as revision 17369 to svn://svn.ffmpeg.org/ffmpeg/trunk

fc2dd7e3 02/14/2009 03:37 PM Diego Biurrun

Remove redundant CONFIG_XVMC option, CONFIG_MPEG_XVMC_DECODER suffices.

Originally committed as revision 17229 to svn://svn.ffmpeg.org/ffmpeg/trunk

bad5537e 02/01/2009 02:00 AM Diego Biurrun

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

b250f9c6 01/13/2009 11:44 PM Aurelien Jacobs

Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk

7eb6ed78 01/09/2009 10:22 PM Carl Eugen Hoyos

Move VDPAU check, make future VDPAU patches smaller.

Originally committed as revision 16508 to svn://svn.ffmpeg.org/ffmpeg/trunk

b24298ba 12/15/2008 10:22 PM Diego Biurrun

Switch xvmc over to a CONFIG_ option.

Originally committed as revision 16153 to svn://svn.ffmpeg.org/ffmpeg/trunk

8c07cee9 09/30/2008 12:28 AM Michael Niedermayer

Do not attempt to perform error concealment in lowres mode as this is
not supported currently.

Originally committed as revision 15465 to svn://svn.ffmpeg.org/ffmpeg/trunk

68997192 09/25/2008 07:25 PM Michael Niedermayer

Ensure that no non-existing frame is used.
Fixes issue624.

Originally committed as revision 15416 to svn://svn.ffmpeg.org/ffmpeg/trunk

047599a4 09/08/2008 06:18 PM Michael Niedermayer

Rename error_resilience to error_recognition.

Originally committed as revision 15270 to svn://svn.ffmpeg.org/ffmpeg/trunk

04932b0d 03/22/2008 04:46 PM Diego Biurrun

cosmetics: typo fixes

Originally committed as revision 12554 to svn://svn.ffmpeg.org/ffmpeg/trunk

d9526386 03/22/2008 01:06 AM Diego Biurrun

typo: occured --> occurred

Originally committed as revision 12549 to svn://svn.ffmpeg.org/ffmpeg/trunk

9701840b 03/09/2008 11:31 PM Aurelien Jacobs

add FF_ prefix to all (frame)_TYPE usage

Originally committed as revision 12399 to svn://svn.ffmpeg.org/ffmpeg/trunk

5e534865 02/13/2008 09:26 AM Diego Biurrun

typo fix: inited --> initialized

Originally committed as revision 11920 to svn://svn.ffmpeg.org/ffmpeg/trunk

551109d4 09/28/2007 08:38 PM Ivan Kalvachev

On bitstream error is_intra_more_likely() could use dsp.sad0() that will segfault when xvmc is in use.

Originally committed as revision 10610 to svn://svn.ffmpeg.org/ffmpeg/trunk

755bfeab 06/12/2007 09:29 AM Diego Biurrun

misc spelling fixes

Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk

2029f312 05/10/2007 09:00 AM Diego Biurrun

Remove redundant #inclusion of common.h, avcodec.h already #includes it.

Originally committed as revision 8967 to svn://svn.ffmpeg.org/ffmpeg/trunk

f66e4f5f 02/25/2007 10:27 AM Reimar Döffinger

Add av_ prefix to clip functions

Originally committed as revision 8122 to svn://svn.ffmpeg.org/ffmpeg/trunk

04cfef21 02/09/2007 02:25 AM Michael Niedermayer

sanity check

Originally committed as revision 7890 to svn://svn.ffmpeg.org/ffmpeg/trunk

55fde95e 11/12/2006 08:08 PM Måns Rullgård

rename cropTbl -> ff_cropTbl

Originally committed as revision 6992 to svn://svn.ffmpeg.org/ffmpeg/trunk

c26abfa5 10/11/2006 11:17 PM Diego Biurrun

Rename ABS macro to FFABS.

Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk

b78e7197 10/07/2006 03:30 PM Diego Biurrun

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

b86216de 09/27/2006 10:13 PM Måns Rullgård

dc_val should be signed

Originally committed as revision 6364 to svn://svn.ffmpeg.org/ffmpeg/trunk

191e8ca7 09/27/2006 07:47 PM Måns Rullgård

fix some signedness warnings

Originally committed as revision 6355 to svn://svn.ffmpeg.org/ffmpeg/trunk

5509bffa 01/12/2006 10:43 PM Diego Biurrun

Update licensing information: The FSF changed postal address.

Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk

bb270c08 12/22/2005 01:10 AM Diego Biurrun

COSMETICS: tabs --> spaces, some prettyprinting

Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk

115329f1 12/17/2005 06:14 PM Diego Biurrun

COSMETICS: Remove all trailing whitespace.

Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk

160d679c 04/24/2005 05:21 PM Mike Melanson

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

02dc8983 03/19/2005 01:10 PM Michael Niedermayer

alignment fix

Originally committed as revision 4059 to svn://svn.ffmpeg.org/ffmpeg/trunk

4cfbbbde 01/21/2005 11:47 PM Michael Niedermayer

count errors instead of printing 2^31

Originally committed as revision 3857 to svn://svn.ffmpeg.org/ffmpeg/trunk

ec892563 11/19/2004 01:08 PM Michael Niedermayer

reset ref_index

Originally committed as revision 3690 to svn://svn.ffmpeg.org/ffmpeg/trunk

0dfd33c3 06/26/2004 02:20 AM Michael Niedermayer

support skiping of mb rows during decoding

Originally committed as revision 3253 to svn://svn.ffmpeg.org/ffmpeg/trunk

6c08a057 04/22/2004 08:56 PM Michael Niedermayer

10l (segfault fix)

Originally committed as revision 3039 to svn://svn.ffmpeg.org/ffmpeg/trunk

137c8468 04/16/2004 01:01 AM Michael Niedermayer

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

c62c07d3 02/23/2004 08:56 PM Michael Niedermayer

multithreaded mpeg2 decoding

Originally committed as revision 2810 to svn://svn.ffmpeg.org/ffmpeg/trunk

8f2ab833 01/10/2004 04:04 PM Michael Niedermayer

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

967be700 01/08/2004 06:24 PM Michael Niedermayer

memleak fix

Originally committed as revision 2676 to svn://svn.ffmpeg.org/ffmpeg/trunk

bb198e19 12/30/2003 04:07 PM Michael Niedermayer

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)...

622eb836 12/28/2003 11:35 AM Michael Niedermayer

10l (segfault fix)

Originally committed as revision 2633 to svn://svn.ffmpeg.org/ffmpeg/trunk

8d7ec294 12/09/2003 01:49 AM Wolfgang Hesseler

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

9b879566 11/03/2003 01:26 PM Michel Bardiaux

av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>)

Originally committed as revision 2469 to svn://svn.ffmpeg.org/ffmpeg/trunk

02c28fe6 08/24/2003 10:15 PM Fabrice Bellard

avoid warning

Originally committed as revision 2160 to svn://svn.ffmpeg.org/ffmpeg/trunk

7d1c3fc1 07/29/2003 02:09 AM Michael Niedermayer

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

2e7b4c84 07/26/2003 01:28 AM Ivan Kalvachev

initial XvMC support

Originally committed as revision 2085 to svn://svn.ffmpeg.org/ffmpeg/trunk

db6e7795 05/27/2003 12:31 PM Michael Niedermayer

motion vector vissualization for mpeg1/2
mpeg1/2 cleanup/bugfix
error resilience bugfix

Originally committed as revision 1911 to svn://svn.ffmpeg.org/ffmpeg/trunk

7bc9090a 04/10/2003 01:18 PM Michael Niedermayer

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...

0aae3f43 04/10/2003 01:39 AM Michael Niedermayer

fixing slice decoding, dunno why the regression tests didnt catch that ...

Originally committed as revision 1744 to svn://svn.ffmpeg.org/ffmpeg/trunk

46b4feec 03/20/2003 01:00 AM Michael Niedermayer

error resilience cleanup (its faster too...)

Originally committed as revision 1692 to svn://svn.ffmpeg.org/ffmpeg/trunk

b536d0aa 03/16/2003 08:22 PM Michael Niedermayer

field pic decoding cleanup

Originally committed as revision 1686 to svn://svn.ffmpeg.org/ffmpeg/trunk

983e3246 03/06/2003 11:32 AM Michael Niedermayer

per file doxy

Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk

0c1a9eda 02/11/2003 04:35 PM Zdenek Kabelac
  • UINTX -> uintx_t INTX -> intx_t

Originally committed as revision 1578 to svn://svn.ffmpeg.org/ffmpeg/trunk

dc172cc1 12/04/2002 11:25 AM Michael Niedermayer

use spatial error concealment if we dont have a previous frame

Originally committed as revision 1303 to svn://svn.ffmpeg.org/ffmpeg/trunk

1e491e29 12/04/2002 10:04 AM Michael Niedermayer

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

eb4b3dd3 11/11/2002 09:40 AM Zdenek Kabelac
  • 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

b8a78f41 11/10/2002 11:46 AM Michael Niedermayer

reversing header game
MIN/MAX -> FFMIN/FFMAX

Originally committed as revision 1184 to svn://svn.ffmpeg.org/ffmpeg/trunk

4d2858de 10/13/2002 01:16 PM Michael Niedermayer

better/cleaner error resilience (done in a 2nd pass after decoding)
h263/mpeg4 out of order slice decoding

Originally committed as revision 1030 to svn://svn.ffmpeg.org/ffmpeg/trunk