Changeset 23379347d1a9b87795f717c9ffaee06d0b42e938
- Timestamp:
- 01/06/02 15:52:24 (7 years ago)
- git-parent:
- Files:
-
- ChangeLog (modified) (1 diff)
- include/vdec_ext-plugins.h (modified) (2 diffs)
- plugins/chroma/i420_yuy2.h (modified) (5 diffs)
- plugins/mpeg_vdec/video_decoder.h (modified) (2 diffs)
- plugins/mpeg_vdec/video_parser.c (modified) (2 diffs)
- plugins/mpeg_vdec/vpar_blocks.c (modified) (2 diffs)
- plugins/mpeg_vdec/vpar_headers.c (modified) (2 diffs)
- plugins/mpeg_vdec/vpar_pool.c (modified) (2 diffs)
- plugins/mpeg_vdec/vpar_pool.h (modified) (3 diffs)
- plugins/mpeg_vdec/vpar_synchro.c (modified) (2 diffs)
- po/en_GB.po (modified) (2 diffs)
- src/misc/beos_specific.cpp (modified) (7 diffs)
- src/misc/objects.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
ChangeLog
rc168509 r2337934 5 5 HEAD 6 6 7 * Nothing yet. 7 * ./src/misc/beos_specific.cpp: the BeOS BApplication thread now uses the 8 vlc_thread_create / vlc_thread_ready scheme to signal readiness. 9 * ./src/misc/objects.c: prevent the creation of a too small vlc_object_t. 10 * ./include/vdec_ext-plugins.h: removed the vdec_thread_t declaration, which 11 belongs to plugins/mpeg_vdec. 12 * ALL: the first libvlc commit. 13 14 0.4.1 15 16 * ./plugins/chroma/i420_yuy2.h: simplified the chroma code. Please test 17 under BeOS and QNX. 18 * ./plugins/macosx/intf_vlc_wrapper.m: fix for non-ASCII filenames in the 19 MacOS X interface, courtesy of Watanabe Go <go@dsl.gr.jp>. 20 * ./plugins/chroma/i420_yuy2.h: fixed an old overflow bug spotted by 21 Rudolf Cornelissen. 22 * ./plugins/chroma/i420_rgb16.c: fix for skewed display in software RV32 23 mode, courtesy of Pascal Levesque. 24 * ./plugins/beos/InterfaceWindow.h: stopped more than one playlist being 25 opened. 26 * ./plugins/beos/InterfaceWindow.cpp: fixed segfault on exit with playlist 27 open. 28 * ./plugins/beos/vout_beos.cpp: corrected size of output window. 29 * ./plugins/a52/a52.c, ./plugins/satellite/satellite_tools.c: compilation 30 fixes for Solaris. 31 * ./plugins/sdl/aout_sdl.c: fixed an endianness issue created by a 32 brain-dead developer :p 33 * ./plugins/win32/mainframe.cpp: the "Eject" button is enabled only after we 34 played a dvd or vcd. 35 * ./plugins/win32/mainframe.cpp: the toolbar is now flat and less cubist. 36 * ./plugins/win32/mainframe.cpp: got rid of the ugly slider with some winXP 37 skins. 38 * ./plugins/win32/messages.cpp: added a config option to limit the number of 39 messages in the log window (default is set to 500). 40 * ./plugins/mpeg_vdec/vpar_headers.c: don't try to deference a null 41 pointer. 42 * ./plugins/gtk/gnome.c: compilation fix. 43 * ./src/misc/netutils.c: removed the obsolete artificial delay when switching 44 channels. 45 * ./src/interface/intf_eject.c: added ejection code for Win32. 46 * ./plugins/win32/*: enabled the "Eject" button (thanks Ipkiss). 47 * ./include/configuration.h: changed ADD_BOOL and ADD_BOOL_WITH_SHORT config 48 macros to accept a default value as an argument. 49 * ./src/misc/configuration.c: modified the command line parsing to accept 50 --foo and --no-foo when a "foo" boolean config option is defined. 51 * ./src/interface/main.c: modified the help menu to indicate whether the 52 option is enabled or disabled by default. 53 * ./src/video_output/video_output.c: when the video output hasn't received 54 a new picture for a while, it redisplays the last displayed one. This will 55 be useful for DVD menus, but also solves the "picture becomes black when 56 vlc is paused" issue. 57 * ./plugins/dummy/dummy.c: added a CATEGORY_HINT to the config. 58 * ./plugins/x11/xcommon.c: small change to the ToggleFullscreen routine 59 to avoid a flickering during the switch. 60 * ./plugins/filters/*: fixed inconsistencies. 61 * ./plugins/win32/mainframe.dfm: new icons for the toolbar buttons. 62 * ./plugins/win32/network.cpp: URL can now start with "http://" in the 63 Network dialog box. 64 * ./plugins/win32/about.dfm: updated the About dialog box. 65 * ./include/video.h: added a b_force flag to picture_t so that we can force 66 the display of an image even if it is late. 67 * ./plugins/filter/*: filters are now configurable through the configuration 68 system. Patch from Sigmund Augdal <sigmunau@stud.ntnu.no>. 69 * ./po/vlc.pot: updated potfile. 70 * ./po/pl.po: polish translation, courtesy of Arkadiusz Lipiec 71 <A.Lipiec@elka.pw.edu.pl>. 72 * ./debian/control: updated Debian package descriptions. 73 * ./plugins/aa/aa.c: removed all palette code as it was unused. 74 * ./plugins/aa/aa.c: moved the aa_fastrender call from vout_Display to 75 vout_Render. 76 * ./plugins/aa/aa.c: added support for resizing and right-click menu. 77 * ./src/input/mpeg_system.c: in order to make ac3 working in avi file, moved 78 some code from ac3 decoder to mpeg_system.c. (skip 3 bytes is now done in 79 mpeg_system.c and no longer in ac3 audio decoder). 80 * src/misc/netutils.c: tests if message from vlcs begins with 'E:' or 'I:' 81 instead of testing 'E: ' and 'I: ' (to simplify miniVLCS). 82 * ./plugins/avi/avi.c, ./plugins/avi/libioRIFF.c: added more safety tests. 83 * ./include/inpu_ext-dec.h: added a check to fifo->b_die after the call 84 to BitstreamNextDataPacket() in GetChunk(). 8 85 9 86 0.4.0 include/vdec_ext-plugins.h
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999, 2000 VideoLAN 5 * $Id: vdec_ext-plugins.h,v 1.1 2 2002/06/01 12:31:58sam Exp $5 * $Id: vdec_ext-plugins.h,v 1.13 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 75 75 #define DCT_TYPE_INTERLACED 32 76 76 77 /*****************************************************************************78 * vdec_thread_t: video decoder thread descriptor79 *****************************************************************************/80 typedef struct vdec_thread_s vdec_thread_t;81 82 struct vdec_thread_s83 {84 VLC_COMMON_MEMBERS85 86 /* IDCT iformations */87 void * p_idct_data;88 89 /* Input properties */90 struct vdec_pool_s * p_pool;91 };92 plugins/chroma/i420_yuy2.h
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 2000, 2001 VideoLAN 5 * $Id: i420_yuy2.h,v 1. 8 2002/06/01 12:31:58sam Exp $5 * $Id: i420_yuy2.h,v 1.9 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Samuel Hocevar <sam@zoy.org> … … 25 25 26 26 #define UNUSED_LONGLONG(foo) \ 27 static constunsigned long long foo __asm__ (#foo) __attribute__((unused))27 unsigned long long foo __asm__ (#foo) __attribute__((unused)) 28 28 UNUSED_LONGLONG(woo_00ffw) = 0x00ff00ff00ff00ff; 29 29 UNUSED_LONGLONG(woo_80w) = 0x0000000080808080; 30 30 31 #define MMX_LOAD " \n\ 32 movl %9,%%ebx \n\ 33 " 34 35 #define MMX_SAVE " \n\ 36 movl %%ebx,%9 \n\ 37 " 38 39 #define MMX_INC " \n\ 40 addl $16, %0 \n\ 41 addl $16, %1 \n\ 42 addl $8, %2 \n\ 43 addl $8, %3 \n\ 44 addl $4, %%eax \n\ 45 addl $4, %%ebx \n\ 46 " 47 48 #define MMX_CALL(MMX_INSTRUCTIONS) \ 49 __asm__ __volatile__( \ 50 MMX_LOAD \ 51 ".align 8 \n\t" \ 52 MMX_INSTRUCTIONS \ 53 MMX_INC \ 54 MMX_SAVE \ 55 : "=c" (p_line1), "=d" (p_line2), "=D" (p_y1), "=S" (p_y2) \ 56 : "c" (p_line1), "d" (p_line2), "D" (p_y1), "S" (p_y2), \ 57 "a" (p_u), "m" (p_v) \ 58 : "ebx", "memory" ); 31 #define MMX_CALL(MMX_INSTRUCTIONS) \ 32 do { \ 33 __asm__ __volatile__( \ 34 ".align 8 \n\t" \ 35 MMX_INSTRUCTIONS \ 36 : \ 37 : "r" (p_line1), "r" (p_line2), "r" (p_y1), "r" (p_y2), \ 38 "r" (p_u), "r" (p_v) ); \ 39 p_line1 += 16; p_line2 += 16; p_y1 += 8; p_y2 += 8; p_u += 4; p_v += 4; \ 40 } while(0); \ 59 41 60 42 #define MMX_YUV420_YUYV " \n\ 61 43 movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\ 62 movd (%%eax), %%mm1 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\63 movd (%%ebx), %%mm2 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\44 movd (%4), %%mm1 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\ 45 movd (%5), %%mm2 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\ 64 46 punpcklbw %%mm2, %%mm1 # v3 u3 v2 u2 v1 u1 v0 u0 \n\ 65 47 movq %%mm0, %%mm2 # y7 y6 y5 y4 y3 y2 y1 y0 \n\ … … 78 60 #define MMX_YUV420_YVYU " \n\ 79 61 movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\ 80 movd (%%eax), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\81 movd (%%ebx), %%mm1 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\62 movd (%4), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\ 63 movd (%5), %%mm1 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\ 82 64 punpcklbw %%mm2, %%mm1 # u3 v3 u2 v2 u1 v1 u0 v0 \n\ 83 65 movq %%mm0, %%mm2 # y7 y6 y5 y4 y3 y2 y1 y0 \n\ … … 97 79 movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\ 98 80 movq (%3), %%mm3 # Load 8 Y Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 \n\ 99 movd (%%eax), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\100 movd (%%ebx), %%mm1 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\81 movd (%4), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\ 82 movd (%5), %%mm1 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\ 101 83 punpcklbw %%mm2, %%mm1 # u3 v3 u2 v2 u1 v1 u0 v0 \n\ 102 84 movq %%mm1, %%mm2 # u3 v3 u2 v2 u1 v1 u0 v0 \n\ … … 117 99 movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\ 118 100 movq (%3), %%mm1 # Load 8 Y Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 \n\ 119 movd (%%eax), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\120 movd (%%ebx), %%mm3 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\101 movd (%4), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\ 102 movd (%5), %%mm3 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\ 121 103 pand woo_00ffw, %%mm0 # get Y even 00 Y6 00 Y4 00 Y2 00 Y0 \n\ 122 104 packuswb %%mm0, %%mm0 # pack Y y6 y4 y2 y0 y6 y4 y2 y0 \n\ plugins/mpeg_vdec/video_decoder.h
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999, 2000 VideoLAN 5 * $Id: video_decoder.h,v 1. 2 2002/06/01 12:32:00sam Exp $5 * $Id: video_decoder.h,v 1.3 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 23 23 24 24 /***************************************************************************** 25 * vdec_thread_t: video decoder thread descriptor 26 *****************************************************************************/ 27 typedef struct vdec_thread_s 28 { 29 VLC_COMMON_MEMBERS 30 31 /* IDCT iformations */ 32 void * p_idct_data; 33 34 /* Input properties */ 35 struct vdec_pool_s * p_pool; 36 37 } vdec_thread_t; 38 39 /***************************************************************************** 25 40 * Prototypes 26 41 *****************************************************************************/ plugins/mpeg_vdec/video_parser.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999-2001 VideoLAN 5 * $Id: video_parser.c,v 1.2 1 2002/06/01 12:32:00sam Exp $5 * $Id: video_parser.c,v 1.22 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 44 44 45 45 #include "vdec_ext-plugins.h" 46 #include "video_decoder.h" 46 47 #include "vpar_pool.h" 47 48 #include "video_parser.h" plugins/mpeg_vdec/vpar_blocks.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999-2001 VideoLAN 5 * $Id: vpar_blocks.c,v 1.1 0 2002/06/01 12:32:00sam Exp $5 * $Id: vpar_blocks.c,v 1.11 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Michel Lespinasse <walken@zoy.org> … … 34 34 35 35 #include "vdec_ext-plugins.h" 36 #include "video_decoder.h" 36 37 #include "vpar_pool.h" 37 38 #include "video_parser.h" plugins/mpeg_vdec/vpar_headers.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999-2001 VideoLAN 5 * $Id: vpar_headers.c,v 1.2 3 2002/06/01 12:32:00sam Exp $5 * $Id: vpar_headers.c,v 1.24 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 34 34 35 35 #include "vdec_ext-plugins.h" 36 #include "video_decoder.h" 36 37 #include "vpar_pool.h" 37 38 #include "video_parser.h" 38 #include "video_decoder.h"39 39 40 40 /* plugins/mpeg_vdec/vpar_pool.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 2001 VideoLAN 5 * $Id: vpar_pool.c,v 1. 9 2002/06/01 12:32:00sam Exp $5 * $Id: vpar_pool.c,v 1.10 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 33 33 34 34 #include "vdec_ext-plugins.h" 35 #include "video_decoder.h" 35 36 #include "vpar_pool.h" 36 37 #include "video_parser.h" 37 #include "video_decoder.h"38 38 39 39 /* plugins/mpeg_vdec/vpar_pool.h
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999, 2000 VideoLAN 5 * $Id: vpar_pool.h,v 1. 3 2002/06/01 12:32:00sam Exp $5 * $Id: vpar_pool.h,v 1.4 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 41 41 42 42 /* Video decoder threads */ 43 struct vdec_thread_s ** pp_vdec;/* Array of video decoder threads */43 vdec_thread_t ** pp_vdec; /* Array of video decoder threads */ 44 44 int i_smp; /* Number of symmetrical decoder threads, 45 45 * hence size of the pp_vdec, p_macroblocks … … 60 60 * same thread */ 61 61 macroblock_t mb; 62 struct vdec_thread_s * p_vdec;/* Fake video decoder */62 vdec_thread_t * p_vdec; /* Fake video decoder */ 63 63 64 64 /* Pointers to usual pool functions */ plugins/mpeg_vdec/vpar_synchro.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999-2001 VideoLAN 5 * $Id: vpar_synchro.c,v 1.1 0 2002/06/01 12:32:00sam Exp $5 * $Id: vpar_synchro.c,v 1.11 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Christophe Massiot <massiot@via.ecp.fr> … … 103 103 104 104 #include "vdec_ext-plugins.h" 105 #include "video_decoder.h" 105 106 #include "vpar_pool.h" 106 107 #include "video_parser.h" po/en_GB.po
r9e3ab28 r2337934 94 94 #. ***************************************************************************** 95 95 #. * Copyright (C) 1998-2002 VideoLAN 96 #. * $Id: en_GB.po,v 1. 5 2002/06/01 12:32:01sam Exp $96 #. * $Id: en_GB.po,v 1.6 2002/06/01 13:52:24 sam Exp $ 97 97 #. * 98 98 #. * Authors: Vincent Seguin <seguin@via.ecp.fr> … … 174 174 175 175 #: src/libvlc.h:58 176 #, fuzzy 176 msgid "" 177 177 "This option allows you to select the audio audio output method used by vlc. " 178 178 "The default behavior is to automatically select the best method available." src/misc/beos_specific.cpp
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 1999-2001 VideoLAN 5 * $Id: beos_specific.cpp,v 1. 19 2002/06/01 12:32:01sam Exp $5 * $Id: beos_specific.cpp,v 1.20 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Jean-Marc Dressler <polux@via.ecp.fr> … … 40 40 { 41 41 public: 42 vlc_object_t *p_object; 43 42 44 VlcApplication(char* ); 43 45 ~VlcApplication(); … … 50 52 * Static vars 51 53 *****************************************************************************/ 52 static vlc_thread_t app_thread; 53 static vlc_mutex_t app_lock; 54 static vlc_cond_t app_wait; 55 static char *psz_program_path; 54 static char * psz_program_path; 55 static vlc_object_t * p_appthread; 56 56 57 57 extern "C" … … 61 61 * Local prototypes. 62 62 *****************************************************************************/ 63 static void system_AppThread( void * args);63 static void AppThread( vlc_object_t *p_appthread ); 64 64 65 65 /***************************************************************************** … … 68 68 void system_Init( vlc_object_t *p_this, int *pi_argc, char *ppsz_argv[] ) 69 69 { 70 /* Prepare the lock/wait before launching the BApplication thread */ 71 vlc_mutex_init( p_this, &app_lock ); 72 vlc_cond_init( &app_wait ); 73 vlc_mutex_lock( &app_lock ); 70 p_appthread = vlc_object_create( p_this, sizeof(vlc_object_t) ); 74 71 75 /* Create the BApplication thread */ 76 vlc_thread_create( p_this, &app_thread, "app thread", 77 (vlc_thread_func_t)system_AppThread, 0 ); 72 /* Create the BApplication thread and wait for initialization */ 73 vlc_thread_create( p_appthread, "app thread", AppThread, 1 ); 78 74 79 /* Wait for the application to be initialized */ 80 vlc_cond_wait( &app_wait, &app_lock ); 81 vlc_mutex_unlock( &app_lock ); 82 83 /* Destroy the locks */ 84 vlc_mutex_destroy( &app_lock ); 85 vlc_cond_destroy( &app_wait ); 75 vlc_object_attach( p_appthread, p_this->p_vlc ); 86 76 } 87 77 … … 99 89 void system_End( vlc_object_t *p_this ) 100 90 { 101 free( psz_program_path);91 vlc_object_unlink_all( p_appthread ); 102 92 103 93 /* Tell the BApplication to die */ 104 94 be_app->PostMessage( B_QUIT_REQUESTED ); 105 vlc_thread_join( p_this, app_thread ); 95 vlc_thread_join( p_appthread ); 96 97 vlc_object_destroy( p_appthread ); 98 99 free( psz_program_path ); 106 100 } 107 101 … … 173 167 174 168 /* Tell the main thread we are finished initializing the BApplication */ 175 vlc_mutex_lock( &app_lock ); 176 vlc_cond_signal( &app_wait ); 177 vlc_mutex_unlock( &app_lock ); 169 vlc_thread_ready( p_appthread ); 178 170 } 179 171 src/misc/objects.c
r9e3ab28 r2337934 3 3 ***************************************************************************** 4 4 * Copyright (C) 2002 VideoLAN 5 * $Id: objects.c,v 1. 1 2002/06/01 12:32:01sam Exp $5 * $Id: objects.c,v 1.2 2002/06/01 13:52:24 sam Exp $ 6 6 * 7 7 * Authors: Samuel Hocevar <sam@zoy.org> … … 102 102 103 103 psz_foo[i_level] = '\0'; 104 msg_ Dbg( p_this, "%so %s %p%s%s%s%s", psz_foo, p_this->psz_object_type,105 p_this, psz_name, psz_thread, psz_refcount, psz_children );104 msg_Info( p_this, "%so %s %p%s%s%s%s", psz_foo, p_this->psz_object_type, 105 p_this, psz_name, psz_thread, psz_refcount, psz_children ); 106 106 psz_foo[i_level] = i_back; 107 107 … … 140 140 } 141 141 142 /* vlc_object_create: initialize a vlc object and set its parent*/142 /* vlc_object_create: initialize a vlc object */ 143 143 void * __vlc_object_create( vlc_object_t *p_this, int i_type ) 144 144 { … … 182 182 break; 183 183 default: 184 i_size = i_type; 184 i_size = i_type > sizeof(vlc_object_t) 185 ? i_type : sizeof(vlc_object_t); 185 186 i_type = VLC_OBJECT_PRIVATE; 186 187 psz_type = "private";
