| 
    FFmpeg
    
   | 
 
Error resilience / concealment. More...
#include <limits.h>#include "avcodec.h"#include "error_resilience.h"#include "mpegvideo.h"#include "rectangle.h"#include "thread.h"Go to the source code of this file.
Macros | |
| #define | MV_FROZEN 3 | 
| #define | MV_CHANGED 2 | 
| #define | MV_UNCHANGED 1 | 
Functions | |
| static void | set_mv_strides (ERContext *s, int *mv_step, int *stride) | 
| static void | put_dc (ERContext *s, uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr, int mb_x, int mb_y) | 
| Replace the current MB with a flat dc-only version.   | |
| static void | filter181 (int16_t *data, int width, int height, int stride) | 
| static void | guess_dc (ERContext *s, int16_t *dc, int w, int h, int stride, int is_luma) | 
| guess the dc of blocks which do not have an undamaged dc   | |
| static void | h_block_filter (ERContext *s, uint8_t *dst, int w, int h, int stride, int is_luma) | 
| simple horizontal deblocking filter used for error resilience   | |
| static void | v_block_filter (ERContext *s, uint8_t *dst, int w, int h, int stride, int is_luma) | 
| simple vertical deblocking filter used for error resilience   | |
| static void | guess_mv (ERContext *s) | 
| static int | is_intra_more_likely (ERContext *s) | 
| void | ff_er_frame_start (ERContext *s) | 
| static int | er_supported (ERContext *s) | 
| void | ff_er_add_slice (ERContext *s, int startx, int starty, int endx, int endy, int status) | 
| Add a slice.   | |
| void | ff_er_frame_end (ERContext *s) | 
Error resilience / concealment.
Definition in file error_resilience.c.
| #define MV_FROZEN 3 | 
Referenced by guess_mv().
| #define MV_CHANGED 2 | 
Referenced by guess_mv().
| #define MV_UNCHANGED 1 | 
Referenced by guess_mv().
| stride | the number of MVs to get to the next row | 
| mv_step | the number of MVs per row or column in a macroblock | 
Definition at line 40 of file error_resilience.c.
Referenced by guess_mv(), h_block_filter(), and v_block_filter().
      
  | 
  static | 
Replace the current MB with a flat dc-only version.
Definition at line 55 of file error_resilience.c.
Referenced by ff_er_frame_end().
      
  | 
  static | 
Definition at line 91 of file error_resilience.c.
Referenced by ff_er_frame_end().
guess the dc of blocks which do not have an undamaged dc
| w | width in 8 pixel blocks | 
| h | height in 8 pixel blocks | 
Definition at line 132 of file error_resilience.c.
Referenced by ff_er_frame_end().
      
  | 
  static | 
simple horizontal deblocking filter used for error resilience
| w | width in 8 pixel blocks | 
| h | height in 8 pixel blocks | 
Definition at line 235 of file error_resilience.c.
Referenced by ff_er_frame_end().
      
  | 
  static | 
simple vertical deblocking filter used for error resilience
| w | width in 8 pixel blocks | 
| h | height in 8 pixel blocks | 
Definition at line 303 of file error_resilience.c.
Referenced by ff_er_frame_end().
Definition at line 369 of file error_resilience.c.
Referenced by ff_er_frame_end().
      
  | 
  static | 
Definition at line 679 of file error_resilience.c.
Referenced by ff_er_frame_end().
Definition at line 754 of file error_resilience.c.
Referenced by h264_frame_start().
      
  | 
  static | 
Definition at line 765 of file error_resilience.c.
Referenced by ff_er_add_slice(), and ff_er_frame_end().
Add a slice.
| endx | x component of the last macroblock, can be -1 for the last of the previous line | 
| status | the status at the end (ER_MV_END, ER_AC_ERROR, ...), it is assumed that no earlier end or error of the same type occurred | 
Definition at line 783 of file error_resilience.c.
Referenced by decode_chunks(), decode_slice(), er_add_slice(), ff_intrax8_decode_picture(), ff_mpeg4_decode_partitions(), rv10_decode_packet(), rv34_decode_slice(), slice_decode_thread(), vc1_decode_b_blocks(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_p_blocks(), and vc1_decode_skip_blocks().
Definition at line 853 of file error_resilience.c.
Referenced by decode_wmv9(), ff_h263_decode_frame(), ff_rv34_decode_frame(), field_end(), finish_frame(), rv10_decode_frame(), rv10_decode_packet(), slice_end(), and vc1_decode_frame().
 1.8.2