Changeset 57823d10590cb6c089a74293df217d2ba6af7610

Show
Ignore:
Timestamp:
07/04/03 19:35:01 (6 years ago)
Author:
Gildas Bazin <gbazin@videolan.org>
git-committer:
Gildas Bazin <gbazin@videolan.org> 1049736901 +0000
git-parent:

[a8b6aa3724208fd6861ef9e2096572cf9b1a71ec]

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

* po/fr.po: small update.
* modules/codec/libmpeg2.c: we now bypass libmpeg2 buffer management. As a nice side effect, still pictures in dvd menus are working now :)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • modules/codec/libmpeg2.c

    r69f1de0 r57823d1  
    33 ***************************************************************************** 
    44 * Copyright (C) 1999-2001 VideoLAN 
    5  * $Id: libmpeg2.c,v 1.7 2003/04/05 12:43:39 gbazin Exp $ 
     5 * $Id: libmpeg2.c,v 1.8 2003/04/07 17:35:01 gbazin Exp $ 
    66 * 
    77 * Authors: Gildas Bazin <gbazin@netcourrier.com> 
     
    7676static void CloseDecoder ( dec_thread_t * ); 
    7777 
     78static picture_t *GetNewPicture( dec_thread_t *, uint8_t ** ); 
     79 
    7880/***************************************************************************** 
    7981 * Module descriptor 
     
    183185 
    184186        case STATE_SEQUENCE: 
     187        { 
    185188            /* Initialize video output */ 
     189            uint8_t *buf[3]; 
    186190 
    187191            /* Check whether the input gives a particular aspect ratio */ 
     
    224228                                          p_dec->p_info->sequence->height, 
    225229                                          i_chroma, i_aspect ); 
    226             break; 
     230 
     231            mpeg2_custom_fbuf( p_dec->p_mpeg2dec, 1 ); 
     232 
     233            /* Set the first 2 reference frames */ 
     234            if( (p_pic = GetNewPicture( p_dec, buf )) == NULL ) break; 
     235            mpeg2_set_buf( p_dec->p_mpeg2dec, buf, p_pic ); 
     236            if( (p_pic = GetNewPicture( p_dec, buf )) == NULL ) break; 
     237            mpeg2_set_buf( p_dec->p_mpeg2dec, buf, p_pic ); 
     238        } 
     239        break; 
    227240 
    228241        case STATE_PICTURE: 
     
    230243            uint8_t *buf[3]; 
    231244 
    232             /* Get a new picture */ 
    233             while( !(p_pic = vout_CreatePicture( p_dec->p_vout, 0, 0, 0 ) ) ) 
    234             { 
    235                 if( p_dec->p_fifo->b_die || p_dec->p_fifo->b_error ) 
    236                     break; 
    237  
    238                 msleep( VOUT_OUTMEM_SLEEP ); 
    239             } 
    240             if( p_pic == NULL ) 
    241                 break; 
    242  
    243             buf[0] = p_pic->p[0].p_pixels; 
    244             buf[1] = p_pic->p[1].p_pixels; 
    245             buf[2] = p_pic->p[2].p_pixels; 
     245            if( (p_pic = GetNewPicture( p_dec, buf )) == NULL ) break; 
    246246            mpeg2_set_buf( p_dec->p_mpeg2dec, buf, p_pic ); 
    247247 
     
    363363    } 
    364364} 
     365 
     366/***************************************************************************** 
     367 * GetNewPicture: Get a new picture from the vout and set the buf struct 
     368 *****************************************************************************/ 
     369static picture_t *GetNewPicture( dec_thread_t *p_dec, uint8_t **pp_buf ) 
     370{ 
     371    picture_t *p_pic; 
     372 
     373    /* Get a new picture */ 
     374    while( !(p_pic = vout_CreatePicture( p_dec->p_vout, 0, 0, 0 ) ) ) 
     375    { 
     376        if( p_dec->p_fifo->b_die || p_dec->p_fifo->b_error ) 
     377            break; 
     378 
     379        msleep( VOUT_OUTMEM_SLEEP ); 
     380    } 
     381    if( p_pic == NULL ) 
     382        return NULL; 
     383 
     384    pp_buf[0] = p_pic->p[0].p_pixels; 
     385    pp_buf[1] = p_pic->p[1].p_pixels; 
     386    pp_buf[2] = p_pic->p[2].p_pixels; 
     387 
     388    return p_pic; 
     389} 
  • po/fr.po

    r11eecc2 r57823d1  
    40544054#: modules/gui/wxwindows/interface.cpp:208 
    40554055msgid "About this program" 
    4056 msgstr "Quitter le programme" 
     4056msgstr "�propos de ce programme" 
    40574057 
    40584058#: modules/gui/wxwindows/interface.cpp:212 
     
    40664066#: modules/gui/wxwindows/interface.cpp:214 
    40674067msgid "&Network Stream..." 
    4068 msgstr "Flux r�au..." 
     4068msgstr "&Flux r�au..." 
    40694069 
    40704070#: modules/gui/wxwindows/interface.cpp:216 
     
    40824082#: modules/gui/wxwindows/interface.cpp:226 
    40834083msgid "&Logs..." 
    4084 msgstr "Disque..." 
     4084msgstr "&Messages..." 
    40854085 
    40864086#: modules/gui/wxwindows/interface.cpp:227 
    40874087msgid "&File info..." 
    4088 msgstr "&Fichier..." 
     4088msgstr "&Infos fichier..." 
    40894089 
    40904090#: modules/gui/wxwindows/interface.cpp:231