[svn] / branches / dev-api-4 / xvidcore / src / decoder.c Repository:
ViewVC logotype

Diff of /branches/dev-api-4/xvidcore/src/decoder.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1249, Tue Dec 9 14:31:40 2003 UTC revision 1285, Sat Dec 20 11:54:37 2003 UTC
# Line 20  Line 20 
20   *  along with this program ; if not, write to the Free Software   *  along with this program ; if not, write to the Free Software
21   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
22   *   *
23   * $Id: decoder.c,v 1.49.2.21 2003-12-09 14:31:40 syskin Exp $   * $Id: decoder.c,v 1.49.2.27 2003-12-20 11:54:27 Isibaar Exp $
24   *   *
25   ****************************************************************************/   ****************************************************************************/
26    
# Line 58  Line 58 
58    
59  #include "image/image.h"  #include "image/image.h"
60  #include "image/colorspace.h"  #include "image/colorspace.h"
61    #include "image/postprocessing.h"
62  #include "utils/mem_align.h"  #include "utils/mem_align.h"
63    
64  static int  static int
# Line 204  Line 205 
205          dec->last_mbs = NULL;          dec->last_mbs = NULL;
206    
207          init_timer();          init_timer();
208            init_postproc();
209          init_mpeg_matrix(dec->mpeg_quant_matrices);          init_mpeg_matrix(dec->mpeg_quant_matrices);
210    
211          /* For B-frame support (used to save reference frame's time */          /* For B-frame support (used to save reference frame's time */
# Line 1316  Line 1318 
1318  void decoder_output(DECODER * dec, IMAGE * img, MACROBLOCK * mbs,  void decoder_output(DECODER * dec, IMAGE * img, MACROBLOCK * mbs,
1319                                          xvid_dec_frame_t * frame, xvid_dec_stats_t * stats, int coding_type)                                          xvid_dec_frame_t * frame, xvid_dec_stats_t * stats, int coding_type)
1320  {  {
1321            if (dec->cartoon_mode)
1322                    frame->general &= ~XVID_FILMEFFECT;
1323    
1324            if (frame->general & (XVID_DEBLOCKY|XVID_DEBLOCKUV|XVID_FILMEFFECT) && mbs != NULL)     /* post process */
1325            {
1326                    /* note: image is stored to tmp */
1327                    image_copy(&dec->tmp, img, dec->edged_width, dec->height);
1328                    image_postproc(&dec->tmp, dec->edged_width,
1329                                               mbs, dec->mb_width, dec->mb_height, dec->mb_width,
1330                                               frame->general, dec->frames);
1331                    img = &dec->tmp;
1332            }
1333    
1334          image_output(img, dec->width, dec->height,          image_output(img, dec->width, dec->height,
1335                                   dec->edged_width, (uint8_t**)frame->output.plane, frame->output.stride,                                   dec->edged_width, (uint8_t**)frame->output.plane, frame->output.stride,
1336                                   frame->output.csp, dec->interlacing);                                   frame->output.csp, dec->interlacing);
# Line 1450  Line 1465 
1465                          /* XXX: not_coded vops are not used for forward prediction */                          /* XXX: not_coded vops are not used for forward prediction */
1466                          /* we should not swap(last_mbs,mbs) */                          /* we should not swap(last_mbs,mbs) */
1467                          image_copy(&dec->cur, &dec->refn[0], dec->edged_width, dec->height);                          image_copy(&dec->cur, &dec->refn[0], dec->edged_width, dec->height);
1468                            SWAP(MACROBLOCK *, dec->mbs, dec->last_mbs); /* it will be swapped back */
1469                          break;                          break;
1470                  }                  }
1471    

Legend:
Removed from v.1249  
changed lines
  Added in v.1285

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4