Changeset 57823d10590cb6c089a74293df217d2ba6af7610
- 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
| r69f1de0 |
r57823d1 |
|
| 3 | 3 | ***************************************************************************** |
|---|
| 4 | 4 | * 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 $ |
|---|
| 6 | 6 | * |
|---|
| 7 | 7 | * Authors: Gildas Bazin <gbazin@netcourrier.com> |
|---|
| … | … | |
| 76 | 76 | static void CloseDecoder ( dec_thread_t * ); |
|---|
| 77 | 77 | |
|---|
| | 78 | static picture_t *GetNewPicture( dec_thread_t *, uint8_t ** ); |
|---|
| | 79 | |
|---|
| 78 | 80 | /***************************************************************************** |
|---|
| 79 | 81 | * Module descriptor |
|---|
| … | … | |
| 183 | 185 | |
|---|
| 184 | 186 | case STATE_SEQUENCE: |
|---|
| | 187 | { |
|---|
| 185 | 188 | /* Initialize video output */ |
|---|
| | 189 | uint8_t *buf[3]; |
|---|
| 186 | 190 | |
|---|
| 187 | 191 | /* Check whether the input gives a particular aspect ratio */ |
|---|
| … | … | |
| 224 | 228 | p_dec->p_info->sequence->height, |
|---|
| 225 | 229 | 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; |
|---|
| 227 | 240 | |
|---|
| 228 | 241 | case STATE_PICTURE: |
|---|
| … | … | |
| 230 | 243 | uint8_t *buf[3]; |
|---|
| 231 | 244 | |
|---|
| 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; |
|---|
| 246 | 246 | mpeg2_set_buf( p_dec->p_mpeg2dec, buf, p_pic ); |
|---|
| 247 | 247 | |
|---|
| … | … | |
| 363 | 363 | } |
|---|
| 364 | 364 | } |
|---|
| | 365 | |
|---|
| | 366 | /***************************************************************************** |
|---|
| | 367 | * GetNewPicture: Get a new picture from the vout and set the buf struct |
|---|
| | 368 | *****************************************************************************/ |
|---|
| | 369 | static 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 | } |
|---|
| r11eecc2 |
r57823d1 |
|
| 4054 | 4054 | #: modules/gui/wxwindows/interface.cpp:208 |
|---|
| 4055 | 4055 | msgid "About this program" |
|---|
| 4056 | | msgstr "Quitter le programme" |
|---|
| | 4056 | msgstr "�propos de ce programme" |
|---|
| 4057 | 4057 | |
|---|
| 4058 | 4058 | #: modules/gui/wxwindows/interface.cpp:212 |
|---|
| … | … | |
| 4066 | 4066 | #: modules/gui/wxwindows/interface.cpp:214 |
|---|
| 4067 | 4067 | msgid "&Network Stream..." |
|---|
| 4068 | | msgstr "Flux r�au..." |
|---|
| | 4068 | msgstr "&Flux r�au..." |
|---|
| 4069 | 4069 | |
|---|
| 4070 | 4070 | #: modules/gui/wxwindows/interface.cpp:216 |
|---|
| … | … | |
| 4082 | 4082 | #: modules/gui/wxwindows/interface.cpp:226 |
|---|
| 4083 | 4083 | msgid "&Logs..." |
|---|
| 4084 | | msgstr "Disque..." |
|---|
| | 4084 | msgstr "&Messages..." |
|---|
| 4085 | 4085 | |
|---|
| 4086 | 4086 | #: modules/gui/wxwindows/interface.cpp:227 |
|---|
| 4087 | 4087 | msgid "&File info..." |
|---|
| 4088 | | msgstr "&Fichier..." |
|---|
| | 4088 | msgstr "&Infos fichier..." |
|---|
| 4089 | 4089 | |
|---|
| 4090 | 4090 | #: modules/gui/wxwindows/interface.cpp:231 |
|---|