Changeset acbd501ea8663f6d7a1a3ecd90f7b4e7bceed16b

Show
Ignore:
Timestamp:
22/02/04 00:50:52 (5 years ago)
Author:
Gildas Bazin <gbazin@videolan.org>
git-committer:
Gildas Bazin <gbazin@videolan.org> 1077407452 +0000
git-parent:

[b6fde88ed9664916983ea43fc5f3d7ee76a96748]

git-author:
Gildas Bazin <gbazin@videolan.org> 1077407452 +0000
Message:

* modules/stream_out/transcode.c: fixed memleak. Set aspect ratio info even for raw video input.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/stream_out/transcode.c

    r8408f63 racbd501  
    33 ***************************************************************************** 
    44 * Copyright (C) 2003-2004 VideoLAN 
    5  * $Id: transcode.c,v 1.78 2004/02/20 19:21:25 massiot Exp $ 
     5 * $Id: transcode.c,v 1.79 2004/02/21 23:50:52 gbazin Exp $ 
    66 * 
    77 * Authors: Laurent Aimar <fenrir@via.ecp.fr> 
     
    10421042        id->ff_dec_c->height    = id->f_src.video.i_height; 
    10431043        id->ff_dec_c->pix_fmt   = get_ff_chroma( id->f_src.i_codec ); 
     1044 
     1045#if LIBAVCODEC_BUILD >= 4687 
     1046        if( id->ff_dec_c->width ) 
     1047        id->ff_dec_c->sample_aspect_ratio = 
     1048            av_d2q( id->f_src.video.i_aspect / (double)VOUT_ASPECT_FACTOR * 
     1049                    id->ff_dec_c->height / id->ff_dec_c->width, 255 ); 
     1050#else 
     1051        id->ff_dec_c->aspect_ratio = 
     1052            id->f_src.video.i_aspect / (float)VOUT_ASPECT_FACTOR; 
     1053#endif 
    10441054    } 
    10451055    else 
     
    12781288        int i_plane; 
    12791289 
    1280         p_pic = malloc(sizeof(picture_t)); 
    1281  
    12821290        /* decode frame */ 
    12831291        frame = id->p_ff_pic; 
     
    15201528 
    15211529        /* Encoding */ 
     1530        p_pic = malloc(sizeof(picture_t)); 
    15221531        vout_InitPicture( VLC_OBJECT(p_stream), p_pic, 
    15231532                          id->p_encoder->fmt_in.i_codec, 
     
    15311540            if ( p_sys->i_threads >= 1 ) 
    15321541            { 
    1533                 p_pic->p[i_plane].p_pixels = malloc(p_pic->p[i_plane].i_lines * p_pic->p[i_plane].i_pitch); 
    1534                 p_stream->p_vlc->pf_memcpy(p_pic->p[i_plane].p_pixels, frame->data[i_plane], p_pic->p[i_plane].i_lines * p_pic->p[i_plane].i_pitch); 
     1542                p_pic->p[i_plane].p_pixels = malloc(p_pic->p[i_plane].i_lines * 
     1543                                                    p_pic->p[i_plane].i_pitch); 
     1544                p_stream->p_vlc->pf_memcpy( p_pic->p[i_plane].p_pixels, 
     1545                    frame->data[i_plane], p_pic->p[i_plane].i_lines * 
     1546                     p_pic->p[i_plane].i_pitch ); 
    15351547            } 
    15361548            else