changeset 28051:9e739bdb049c

Get rid of pointless 'extern' keywords.
author diego
date Wed, 03 Dec 2008 23:01:03 +0000
parents 7e53b0b71b18
children 99051552b8b2
files cfg-mencoder.h cfg-mplayer.h gui/app.h gui/cfg.c gui/cfg.h gui/interface.h gui/mplayer/gmplayer.h gui/mplayer/gtk/about.h gui/mplayer/gtk/eq.h gui/mplayer/gtk/fs.c gui/mplayer/gtk/fs.h gui/mplayer/gtk/gtk_common.h gui/mplayer/gtk/gtk_url.h gui/mplayer/gtk/mb.h gui/mplayer/gtk/menu.h gui/mplayer/gtk/opts.h gui/mplayer/gtk/pl.h gui/mplayer/gtk/sb.h gui/mplayer/gui_common.c gui/mplayer/gui_common.h gui/mplayer/mw.c gui/mplayer/pb.c gui/mplayer/play.h gui/mplayer/widgets.h gui/skin/cut.h gui/skin/font.h gui/skin/skin.h gui/win32/dialogs.c gui/win32/gui.c gui/win32/gui.h gui/win32/playlist.h gui/win32/skinload.h gui/win32/wincfg.c gui/wm/ws.h input/input.h libaf/af_format.h libaf/filter.h libaf/window.h libao2/ao_dxr2.c libao2/ao_ivtv.c libao2/ao_v4l2.c libass/ass_mp.c libmpcodecs/ad_acm.c libmpcodecs/ad_twin.c libmpcodecs/dec_audio.h libmpcodecs/dec_video.h libmpcodecs/vd_vfw.c libmpdemux/demux_asf.c libmpdemux/demux_audio.c libmpdemux/demux_avi.c libmpdemux/demux_lavf.c libmpdemux/demux_mpg.c libmpdemux/demux_ogg.c libmpdemux/demux_real.c libmpdemux/demux_realaud.c libmpdemux/demux_ts.c libmpdemux/demux_ty.c libmpdemux/demuxer.c libmpdemux/demuxer.h libmpdemux/muxer_mpeg.c libvo/aspect.h libvo/fastmemcpy.h libvo/osd.h libvo/sub.c libvo/sub.h libvo/video_out.h libvo/vo_directx.c libvo/vo_macosx.m libvo/vo_quartz.c libvo/vo_winvidix.c libvo/vo_xvidix.c libvo/w32_common.h loader/dmo/DMO_AudioDecoder.c loader/elfdll.c loader/ext.h loader/registry.c loader/win32.c loader/win32.h loader/wine/debugtools.h loader/wine/heap.h loader/wine/ldt.h loader/wine/module.h loader/wine/pe_image.h loader/wine/winnt.h loader/wrapper.h mencoder.c mixer.h mp3lib/mp3.h mp3lib/mpg123.h mp3lib/sr1.c mp_msg.c mplayer.c mplayer.h osdep/getch2.c osdep/getch2.h osdep/timer.h parser-mpcmd.c stream/cache2.h stream/cookies.h stream/dvbin.h stream/http.c stream/stream_cdda.c stream/stream_dvb.c vidix/dha.h vidix/pci_db2c.awk vidix/sis_vid.c vidix/sysdep/AsmMacros_alpha.h vidix/sysdep/pci_win32.c vobsub.h
diffstat 109 files changed, 503 insertions(+), 504 deletions(-) [+]
line wrap: on
line diff
--- a/cfg-mencoder.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/cfg-mencoder.h	Wed Dec 03 23:01:03 2008 +0000
@@ -8,8 +8,8 @@
 #include "cfg-common.h"
 
 extern int sws_flags;
-extern int readPPOpt(void *, char *arg);
-extern void revertPPOpt(void *conf, char* opt);
+int readPPOpt(void *, char *arg);
+void revertPPOpt(void *conf, char* opt);
 extern char *pp_help;
 
 extern m_option_t lameopts_conf[];
@@ -20,7 +20,7 @@
 extern m_option_t vfwopts_conf[];
 extern m_option_t xvidencopts_conf[];
 
-extern void x264enc_set_param(const m_option_t* opt, char* arg);
+void x264enc_set_param(const m_option_t* opt, char* arg);
 
 extern m_option_t nuvopts_conf[];
 extern m_option_t mpegopts_conf[];
@@ -155,8 +155,8 @@
 	{NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
-extern float avi_aspect_override; /* defined in libmpdemux/muxer_avi.c */
-extern int write_odml; /* defined in libmpdemux/muxer_avi.c */
+float avi_aspect_override; /* defined in libmpdemux/muxer_avi.c */
+int write_odml; /* defined in libmpdemux/muxer_avi.c */
 
 const m_option_t mencoder_opts[]={
 	/* name, pointer, type, flags, min, max */
--- a/cfg-mplayer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/cfg-mplayer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -40,8 +40,8 @@
 
 extern char *unrar_executable;
 
-extern int vo_zr_parseoption(const m_option_t* conf, char *opt, char * param);
-extern void vo_zr_revertoption(const m_option_t* opt,char* pram);
+int vo_zr_parseoption(const m_option_t* conf, char *opt, char * param);
+void vo_zr_revertoption(const m_option_t* opt,char* pram);
 
 extern m_option_t dxr2_opts[];
 
@@ -54,8 +54,8 @@
 extern float monitor_pixel_aspect;
 
 extern int sws_flags;
-extern int readPPOpt(void *conf, char *arg);
-extern void revertPPOpt(void *conf, char* opt);
+int readPPOpt(void *conf, char *arg);
+void revertPPOpt(void *conf, char* opt);
 extern char* pp_help;
 
 const m_option_t vd_conf[]={
--- a/gui/app.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/app.h	Wed Dec 03 23:01:03 2008 +0000
@@ -191,14 +191,14 @@
 extern char      * skinMPlayerDir_obsolete;
 extern char      * skinName;
 
-extern void appInitStruct( listItems * item );
-extern void appClearItem( wItem * item );
-extern void appCopy( listItems * item1,listItems * item2 );
-extern int appFindMessage( unsigned char * str );
-extern int appFindKey( unsigned char * name );
+void appInitStruct( listItems * item );
+void appClearItem( wItem * item );
+void appCopy( listItems * item1, listItems * item2 );
+int appFindMessage( unsigned char * str );
+int appFindKey( unsigned char * name );
 
-extern void btnModify( int event,float state );
-extern float btnGetValue( int event );
-extern void btnSet( int event,int set );
+void btnModify( int event, float state );
+float btnGetValue( int event );
+void btnSet( int event, int set );
 
 #endif /* MPLAYER_GUI_APP_H */
--- a/gui/cfg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/cfg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -99,8 +99,8 @@
 // ---
 
 extern int    stop_xscreensaver;
-extern int    m_config_parse_config_file(m_config_t* config, char *conffile);
 extern int    disable_gui_conf;
+int m_config_parse_config_file(m_config_t* config, char *conffile);
 
 static m_config_t * gui_conf;
 static const m_option_t gui_opts[] =
--- a/gui/cfg.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/cfg.h	Wed Dec 03 23:01:03 2008 +0000
@@ -73,7 +73,7 @@
 extern gtkASS_t gtkASS;
 #endif
 
-extern int cfg_read( void );
-extern int cfg_write( void );
+int cfg_read( void );
+int cfg_write( void );
 
 #endif /* MPLAYER_GUI_CFG_H */
--- a/gui/interface.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/interface.h	Wed Dec 03 23:01:03 2008 +0000
@@ -162,13 +162,13 @@
 
 extern int use_gui;
 
-extern void guiInit( void );
-extern void guiDone( void );
-extern int  guiGetEvent( int type,char * arg );
-extern void guiEventHandling( void );
-extern void guiLoadFont( void );
-extern void guiLoadSubtitle( char * name );
-extern void guiMessageBox(int level, char * str);
+void guiInit( void );
+void guiDone( void );
+int  guiGetEvent( int type,char * arg );
+void guiEventHandling( void );
+void guiLoadFont( void );
+void guiLoadSubtitle( char * name );
+void guiMessageBox(int level, char * str);
 
 typedef struct plItem
 {
@@ -223,13 +223,13 @@
 
 extern float gtkEquChannels[6][10];
 
-extern void * gtkSet( int cmd,float param, void * vparam );
+void * gtkSet( int cmd, float param, void * vparam );
 
-extern char * gstrdup( const char * str );
-extern int    gstrcmp( const char * a,const char * b );
-extern void   gfree( void ** p );
-extern void   gaddlist( char *** list,const char * entry );
-extern char * gstrchr( char * str,int c );
+char * gstrdup( const char * str );
+int    gstrcmp( const char * a, const char * b );
+void   gfree( void ** p );
+void   gaddlist( char *** list, const char * entry );
+char * gstrchr( char * str, int c );
 
 #define guiSetFilename( s,n ) { gfree( (void **)&s ); s=gstrdup( n ); }
 
--- a/gui/mplayer/gmplayer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gmplayer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -29,23 +29,23 @@
 extern int             mplMainAutoPlay;
 extern int             mplMiddleMenu;
 
-extern void mplInit( void * disp );
+void mplInit( void * disp );
 
-extern void mplMainDraw( void );
-extern void mplEventHandling( int msg,float param );
-extern void mplMainMouseHandle( int Button,int X,int Y,int RX,int RY );
-extern void mplMainKeyHandle( int KeyCode,int Type,int Key );
-extern void mplDandDHandler(int num,char** files);
+void mplMainDraw( void );
+void mplEventHandling( int msg, float param );
+void mplMainMouseHandle( int Button, int X, int Y, int RX, int RY );
+void mplMainKeyHandle( int KeyCode, int Type, int Key );
+void mplDandDHandler(int num, char** files);
 
-extern void mplSubDraw( void );
-extern void mplSubMouseHandle( int Button,int X,int Y,int RX,int RY );
+void mplSubDraw( void );
+void mplSubMouseHandle( int Button, int X, int Y, int RX, int RY );
 
-extern void mplMenuInit( void );
-extern void mplHideMenu( int mx,int my,int w );
-extern void mplShowMenu( int mx,int my );
-extern void mplMenuMouseHandle( int X,int Y,int RX,int RY );
+void mplMenuInit( void );
+void mplHideMenu( int mx, int my, int w );
+void mplShowMenu( int mx, int my );
+void mplMenuMouseHandle( int X, int Y, int RX, int RY );
 
-extern void mplPBInit( void );
-extern void mplPBShow( int x, int y );
+void mplPBInit( void );
+void mplPBShow( int x, int y );
 
 #endif /* MPLAYER_GUI_GMPLAYER_H */
--- a/gui/mplayer/gtk/about.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/about.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,7 +23,7 @@
 
 extern GtkWidget * About;
 
-extern GtkWidget * create_About( void );
-extern void ShowAboutBox( void );
+GtkWidget * create_About( void );
+void ShowAboutBox( void );
 
 #endif /* MPLAYER_GUI_ABOUT_H */
--- a/gui/mplayer/gtk/eq.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/eq.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,7 +23,7 @@
 
 extern GtkWidget * Equalizer;
 
-extern GtkWidget * create_Equalizer( void );
-extern void ShowEqualizer( void );
+GtkWidget * create_Equalizer( void );
+void ShowEqualizer( void );
 
 #endif /* MPLAYER_GUI_EQ_H */
--- a/gui/mplayer/gtk/fs.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/fs.c	Wed Dec 03 23:01:03 2008 +0000
@@ -43,7 +43,7 @@
 #ifndef __linux__
 #define get_current_dir_name()  getcwd(NULL, PATH_MAX)
 #else
-extern char * get_current_dir_name( void );
+char * get_current_dir_name( void );
 #endif
 
 gchar         * fsSelectedFile = NULL;
--- a/gui/mplayer/gtk/fs.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/fs.h	Wed Dec 03 23:01:03 2008 +0000
@@ -31,9 +31,9 @@
 
 extern GtkWidget   * fsFileSelect;
 
-extern void HideFileSelect( void );
-extern void ShowFileSelect( int type, int modal );
+void HideFileSelect( void );
+void ShowFileSelect( int type, int modal );
 
-extern GtkWidget * create_FileSelect( void );
+GtkWidget * create_FileSelect( void );
 
 #endif /* MPLAYER_GUI_FS_H */
--- a/gui/mplayer/gtk/gtk_common.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/gtk_common.h	Wed Dec 03 23:01:03 2008 +0000
@@ -22,20 +22,20 @@
 #include <gdk/gdkkeysyms.h>
 #include <gtk/gtk.h>
 
-extern GtkWidget * AddDialogFrame( GtkWidget * parent );
-extern GtkWidget * AddFrame( const char * title,int type,GtkWidget * parent,int add );
-extern GtkWidget * AddLabel( const char * title,GtkWidget * parent );
-extern GtkWidget * AddVBox( GtkWidget * parent,int type );
-extern GtkWidget * AddHBox( GtkWidget * parent,int type );
-extern GtkWidget * AddCheckButton( const char * title, GtkWidget * parent );
-extern GtkWidget * AddRadioButton( const char * title,GSList ** group,GtkWidget * parent );
-extern GtkWidget * AddSpinButton( const char * title,GtkAdjustment * adj,GtkWidget * parent );
-extern GtkWidget * AddButton( const char * title,GtkWidget * parent );
-extern GtkWidget * AddHSeparator( GtkWidget * parent );
-extern GtkWidget * AddHButtonBox( GtkWidget * parent );
-extern GtkWidget * AddHScaler( GtkAdjustment * adj,GtkWidget * parent,int digit );
-extern GtkWidget * AddVScaler( GtkAdjustment * adj,GtkWidget * parent,int digit );
-extern GtkWidget * AddComboBox( GtkWidget * parent );
-extern void WidgetDestroy( GtkWidget * widget,GtkWidget ** widget_pointer );
+GtkWidget * AddDialogFrame( GtkWidget * parent );
+GtkWidget * AddFrame( const char * title, int type, GtkWidget * parent, int add );
+GtkWidget * AddLabel( const char * title, GtkWidget * parent );
+GtkWidget * AddVBox( GtkWidget * parent, int type );
+GtkWidget * AddHBox( GtkWidget * parent, int type );
+GtkWidget * AddCheckButton( const char * title, GtkWidget * parent );
+GtkWidget * AddRadioButton( const char * title, GSList ** group, GtkWidget * parent );
+GtkWidget * AddSpinButton( const char * title, GtkAdjustment * adj, GtkWidget * parent );
+GtkWidget * AddButton( const char * title, GtkWidget * parent );
+GtkWidget * AddHSeparator( GtkWidget * parent );
+GtkWidget * AddHButtonBox( GtkWidget * parent );
+GtkWidget * AddHScaler( GtkAdjustment * adj, GtkWidget * parent, int digit );
+GtkWidget * AddVScaler( GtkAdjustment * adj, GtkWidget * parent, int digit );
+GtkWidget * AddComboBox( GtkWidget * parent );
+void WidgetDestroy( GtkWidget * widget, GtkWidget ** widget_pointer );
 
 #endif /* MPLAYER_GUI_GTK_COMMON_H */
--- a/gui/mplayer/gtk/gtk_url.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/gtk_url.h	Wed Dec 03 23:01:03 2008 +0000
@@ -24,7 +24,7 @@
 extern GtkWidget * URL;
 extern int         gtkVURLDialogBox;
 
-extern void ShowURLDialogBox( void );
-extern GtkWidget * create_URL( void );
+void ShowURLDialogBox( void );
+GtkWidget * create_URL( void );
 
 #endif /* MPLAYER_GUI_GTK_URL_H */
--- a/gui/mplayer/gtk/mb.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/mb.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,7 +23,7 @@
 
 extern GtkWidget * MessageBox;
 
-extern GtkWidget * create_MessageBox( int type );
-extern void ShowMessageBox( const char * msg );
+GtkWidget * create_MessageBox( int type );
+void ShowMessageBox( const char * msg );
 
 #endif /* MPLAYER_GUI_MB_H */
--- a/gui/mplayer/gtk/menu.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/menu.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,9 +23,9 @@
 
 extern GtkWidget * DVDSubMenu;
 
-extern GtkWidget * AddMenuItem( GtkWidget *window1, const char * immagine_xpm,  GtkWidget * SubMenu,const char * label,int Number );
-extern GtkWidget * AddSubMenu( GtkWidget *window1, const char * immagine_xpm, GtkWidget * Menu,const char * label );
-extern GtkWidget * AddSeparator( GtkWidget * Menu );
-extern GtkWidget * create_PopUpMenu( void );
+GtkWidget * AddMenuItem( GtkWidget *window1, const char * immagine_xpm, GtkWidget * SubMenu, const char * label, int Number );
+GtkWidget * AddSubMenu( GtkWidget *window1, const char * immagine_xpm, GtkWidget * Menu, const char * label );
+GtkWidget * AddSeparator( GtkWidget * Menu );
+GtkWidget * create_PopUpMenu( void );
 
 #endif /* MPLAYER_GUI_MENU_H */
--- a/gui/mplayer/gtk/opts.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/opts.h	Wed Dec 03 23:01:03 2008 +0000
@@ -25,9 +25,9 @@
 extern GtkWidget * Preferences;
 extern GtkWidget * prEFontName;
 
-extern GtkWidget * create_Preferences( void );
-extern GtkWidget * create_AudioConfig( void );
+GtkWidget * create_Preferences( void );
+GtkWidget * create_AudioConfig( void );
 
-extern void ShowPreferences( void );
+void ShowPreferences( void );
 
 #endif /* MPLAYER_GUI_OPTS_H */
--- a/gui/mplayer/gtk/pl.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/pl.h	Wed Dec 03 23:01:03 2008 +0000
@@ -21,9 +21,9 @@
 
 #include <gtk/gtk.h>
 
-extern void ShowPlayList( void );
-extern void HidePlayList( void );
+void ShowPlayList( void );
+void HidePlayList( void );
 
-extern GtkWidget * create_PlayList (void);
+GtkWidget * create_PlayList (void);
 
 #endif /* MPLAYER_GUI_PL_H */
--- a/gui/mplayer/gtk/sb.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gtk/sb.h	Wed Dec 03 23:01:03 2008 +0000
@@ -24,7 +24,7 @@
 extern char      * sbSelectedSkin;
 extern GtkWidget * SkinBrowser;
 
-extern void ShowSkinBrowser( void );
-extern GtkWidget * create_SkinBrowser( void );
+void ShowSkinBrowser( void );
+GtkWidget * create_SkinBrowser( void );
 
 #endif /* MPLAYER_GUI_SB_H */
--- a/gui/mplayer/gui_common.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gui_common.c	Wed Dec 03 23:01:03 2008 +0000
@@ -48,7 +48,7 @@
 #include "play.h"
 #include "widgets.h"
 
-extern unsigned int GetTimerMS( void );
+unsigned int GetTimerMS( void );
 
 static inline void TranslateFilename( int c,char * tmp,size_t tmplen )
 {
--- a/gui/mplayer/gui_common.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/gui_common.h	Wed Dec 03 23:01:03 2008 +0000
@@ -29,9 +29,9 @@
 #include "gui/bitmap.h"
 #include "gui/wm/ws.h"
 
-extern char * Translate( char * str );
-extern void PutImage( txSample * bf,int x,int y,int max,int ofs );
-extern void SimplePotmeterPutImage( txSample * bf,int x,int y,float frac );
-extern void Render( wsTWindow * window,wItem * Items,int nrItems,char * db,int size );
+char * Translate( char * str );
+void PutImage( txSample * bf,int x, int y, int max, int ofs );
+void SimplePotmeterPutImage( txSample * bf, int x, int y, float frac );
+void Render( wsTWindow * window, wItem * Items, int nrItems, char * db, int size );
 
 #endif /* MPLAYER_GUI_GUI_COMMON_H */
--- a/gui/mplayer/mw.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/mw.c	Wed Dec 03 23:01:03 2008 +0000
@@ -53,7 +53,7 @@
 #include "play.h"
 #include "widgets.h"
 
-extern unsigned int GetTimerMS( void );
+unsigned int GetTimerMS( void );
 
 unsigned char * mplDrawBuffer = NULL;
 int             mplMainRender = 1;
--- a/gui/mplayer/pb.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/pb.c	Wed Dec 03 23:01:03 2008 +0000
@@ -48,8 +48,8 @@
 #include "widgets.h"
 #include "gui_common.h"
 
-extern unsigned int GetTimerMS( void );
-extern unsigned int GetTimer( void );
+unsigned int GetTimerMS( void );
+unsigned int GetTimer( void );
 
 unsigned char * mplPBDrawBuffer = NULL;
 int		mplPBVisible = 0;
--- a/gui/mplayer/play.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/play.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,29 +23,29 @@
 
 extern int mplGotoTheNext;
 
-extern void mplEnd( void );
-extern void mplFullScreen( void );
-extern void mplPlay( void );
-extern void mplPause( void );
-extern void mplState( void );
-extern void mplPrev( void );
-extern void mplNext( void );
-extern void mplCurr( void );
+void mplEnd( void );
+void mplFullScreen( void );
+void mplPlay( void );
+void mplPause( void );
+void mplState( void );
+void mplPrev( void );
+void mplNext( void );
+void mplCurr( void );
 
-extern void mplIncAudioBufDelay( void );
-extern void mplDecAudioBufDelay( void );
+void mplIncAudioBufDelay( void );
+void mplDecAudioBufDelay( void );
 
-extern void  mplRelSeek( float s );
-extern void  mplAbsSeek( float s );
-extern float mplGetPosition( void );
+void  mplRelSeek( float s );
+void  mplAbsSeek( float s );
+float mplGetPosition( void );
 
-extern void mplPlayFork( void );
-extern void mplSigHandler( int s );
-extern void mplPlayerThread( void );
+void mplPlayFork( void );
+void mplSigHandler( int s );
+void mplPlayerThread( void );
 
-extern void ChangeSkin( char * name );
-extern void EventHandling( void );
+void ChangeSkin( char * name );
+void EventHandling( void );
 
-extern void mplSetFileName( char * dir,char * name,int type );
+void mplSetFileName( char * dir, char * name, int type );
 
 #endif /* MPLAYER_GUI_PLAY_H */
--- a/gui/mplayer/widgets.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/mplayer/widgets.h	Wed Dec 03 23:01:03 2008 +0000
@@ -60,21 +60,21 @@
 extern Pixmap      guiIcon;
 extern Pixmap	   guiIconMask;
 
-extern void widgetsCreate( void );
+void widgetsCreate( void );
 
-extern void gtkInit( void );
-extern void gtkAddIcon( GtkWidget * window );
+void gtkInit( void );
+void gtkAddIcon( GtkWidget * window );
 
-extern int  gtkFillSkinList( gchar * dir );
-extern void gtkClearList( GtkWidget * list );
-extern void gtkSetDefaultToCList( GtkWidget * list,char * item );
-extern int  gtkFindCList( GtkWidget * list,char * item );
+int  gtkFillSkinList( gchar * dir );
+void gtkClearList( GtkWidget * list );
+void gtkSetDefaultToCList( GtkWidget * list, char * item );
+int  gtkFindCList( GtkWidget * list, char * item );
 
-extern void gtkEventHandling( void );
+void gtkEventHandling( void );
 
-extern void gtkShow( int type,char * param );
-extern void gtkMessageBox( int type,const gchar * str );
-extern void gtkSetLayer( GtkWidget * wdg );
-extern void gtkActive( GtkWidget * wdg );
+void gtkShow( int type, char * param );
+void gtkMessageBox( int type, const gchar * str );
+void gtkSetLayer( GtkWidget * wdg );
+void gtkActive( GtkWidget * wdg );
 
 #endif /* MPLAYER_GUI_WIDGETS_H */
--- a/gui/skin/cut.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/skin/cut.h	Wed Dec 03 23:01:03 2008 +0000
@@ -19,9 +19,9 @@
 #ifndef MPLAYER_GUI_CUT_H
 #define MPLAYER_GUI_CUT_H
 
-extern void  cutItem( char * in,char * out,char sep,int num );
-extern int   cutItemToInt( char * in,char sep,int num );
-extern float cutItemToFloat( char * in,char sep,int num );
-extern void  cutChunk( char * in,char * s1 );
+void  cutItem( char * in, char * out, char sep, int num );
+int   cutItemToInt( char * in, char sep, int num );
+float cutItemToFloat( char * in, char sep, int num );
+void  cutChunk( char * in, char * s1 );
 
 #endif /* MPLAYER_GUI_CUT_H */
--- a/gui/skin/font.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/skin/font.h	Wed Dec 03 23:01:03 2008 +0000
@@ -42,13 +42,13 @@
 extern txSample   Bitmap;
 extern bmpFont  * Fonts[26];
 
-extern int  fntAddNewFont( char * name );
-extern void fntFreeFont( void );
-extern int  fntFindID( char * name );
-extern int  fntTextHeight( int id,char * str );
-extern int  fntTextWidth( int id,char * str );
+int  fntAddNewFont( char * name );
+void fntFreeFont( void );
+int  fntFindID( char * name );
+int  fntTextHeight( int id, char * str );
+int  fntTextWidth( int id, char * str );
 
-extern int        fntRead( char * path,char * fname );
-extern txSample * fntRender( wItem * item,int px,const char * fmt,... );
+int        fntRead( char * path, char * fname );
+txSample * fntRender( wItem * item, int px, const char * fmt, ... );
 
 #endif /* MPLAYER_GUI_FONT_H */
--- a/gui/skin/skin.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/skin/skin.h	Wed Dec 03 23:01:03 2008 +0000
@@ -23,13 +23,13 @@
 
 extern listItems     * skinAppMPlayer;
 
-extern int skinRead( char * dname  );
-extern int skinBPRead( char * fname, txSample * bf );
+int skinRead( char * dname  );
+int skinBPRead( char * fname, txSample * bf );
 
 // ---
 
-extern char * trimleft( char * in );
-extern char * strswap( char * in,char what,char whereof );
-extern char * trim( char * in );
+char * trimleft( char * in );
+char * strswap( char * in, char what, char whereof );
+char * trim( char * in );
 
 #endif /* MPLAYER_GUI_SKIN_H */
--- a/gui/win32/dialogs.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/dialogs.c	Wed Dec 03 23:01:03 2008 +0000
@@ -40,8 +40,8 @@
 extern int vo_gamma_saturation;
 extern int vo_gamma_contrast;
 extern int vo_gamma_hue;
-extern int set_video_colors(sh_video_t *sh_video, const char *item, int value);
-extern int get_video_colors(sh_video_t *sh_video, const char *item, int *value);
+int set_video_colors(sh_video_t *sh_video, const char *item, int value);
+int get_video_colors(sh_video_t *sh_video, const char *item, int *value);
 
 guiInterface_t guiIntfStruct;
 int addurl = 0;
--- a/gui/win32/gui.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/gui.c	Wed Dec 03 23:01:03 2008 +0000
@@ -54,9 +54,9 @@
 #endif
 
 /* Globals / Externs */
-extern void renderinfobox(skin_t *skin, window_priv_t *priv);
-extern void renderwidget(skin_t *skin, image *dest, widget *item, int state);
-extern void print_version(void);
+void renderinfobox(skin_t *skin, window_priv_t *priv);
+void renderwidget(skin_t *skin, image *dest, widget *item, int state);
+void print_version(void);
 float sub_aspect;
 
 DWORD oldtime;
@@ -1086,7 +1086,7 @@
 }
 
 /* unloads a skin and destroys its windows */
-extern int destroy_window(gui_t *gui)
+int destroy_window(gui_t *gui)
 {
     RECT rd;
     unsigned int i;
@@ -1311,7 +1311,7 @@
 }
 
 /* creates the sub (AKA video) window,*/
-extern int create_subwindow(gui_t *gui, char *skindir)
+int create_subwindow(gui_t *gui, char *skindir)
 {
     HINSTANCE instance = GetModuleHandle(NULL);
     WNDCLASS wc;
@@ -1392,7 +1392,7 @@
 }
 
 /* loads/updates a skin and creates windows for it */
-extern int create_window(gui_t *gui, char *skindir)
+int create_window(gui_t *gui, char *skindir)
 {
     HINSTANCE instance = GetModuleHandle(NULL);
     WNDCLASS wc;
--- a/gui/win32/gui.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/gui.h	Wed Dec 03 23:01:03 2008 +0000
@@ -99,23 +99,23 @@
 #define     wsMovable       2
 #define     wsSizeable      4
 
-extern gui_t *create_gui(char *skindir, char *skinName, void (*playercontrol)(int event));
-extern int destroy_window(gui_t *gui);
-extern int create_window(gui_t *gui, char *skindir);
-extern int create_subwindow(gui_t *gui, char *skindir);
-extern int parse_filename(char *file, play_tree_t *playtree, m_config_t *mconfig, int clear);
-extern void capitalize(char *filename);
-extern int import_playtree_playlist_into_gui(play_tree_t *my_playtree, m_config_t *config);
+gui_t *create_gui(char *skindir, char *skinName, void (*playercontrol)(int event));
+int destroy_window(gui_t *gui);
+int create_window(gui_t *gui, char *skindir);
+int create_subwindow(gui_t *gui, char *skindir);
+int parse_filename(char *file, play_tree_t *playtree, m_config_t *mconfig, int clear);
+void capitalize(char *filename);
+int import_playtree_playlist_into_gui(play_tree_t *my_playtree, m_config_t *config);
 
 /* Dialogs */
-extern void display_playlistwindow(gui_t *gui);
-extern void update_playlistwindow(void);
-extern int display_openfilewindow(gui_t *gui, int add);
-extern void display_openurlwindow(gui_t *gui, int add);
-extern void display_skinbrowser(gui_t *gui);
-extern void display_chapterselwindow(gui_t *gui);
-extern void display_eqwindow(gui_t *gui);
-extern void display_prefswindow(gui_t *gui);
-extern void display_opensubtitlewindow(gui_t *gui);
+void display_playlistwindow(gui_t *gui);
+void update_playlistwindow(void);
+int display_openfilewindow(gui_t *gui, int add);
+void display_openurlwindow(gui_t *gui, int add);
+void display_skinbrowser(gui_t *gui);
+void display_chapterselwindow(gui_t *gui);
+void display_eqwindow(gui_t *gui);
+void display_prefswindow(gui_t *gui);
+void display_opensubtitlewindow(gui_t *gui);
 
 #endif /* MPLAYER_GUI_GUI_H */
--- a/gui/win32/playlist.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/playlist.h	Wed Dec 03 23:01:03 2008 +0000
@@ -55,7 +55,7 @@
 #define SORT_BYTITLE        3
 #define SORT_BYDURATION     4
 
-extern playlist_t *create_playlist(void);
-extern BOOL adddirtoplaylist(playlist_t *playlist, const char* path, BOOL recursive);
+playlist_t *create_playlist(void);
+BOOL adddirtoplaylist(playlist_t *playlist, const char* path, BOOL recursive);
 
 #endif /* MPLAYER_GUI_PLAYLIST_H */
--- a/gui/win32/skinload.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/skinload.h	Wed Dec 03 23:01:03 2008 +0000
@@ -110,7 +110,7 @@
     image *(*pngRead)(skin_t *skin, unsigned char *fname);
 };
 
-extern skin_t *loadskin(char *skindir, int desktopbpp);
+skin_t *loadskin(char *skindir, int desktopbpp);
 
 // --- Widget types ---
 
--- a/gui/win32/wincfg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/win32/wincfg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -55,7 +55,7 @@
 
 /* External functions */
 extern char *proc_priority;
-extern int m_config_parse_config_file(m_config_t *config, char *conffile);
+int m_config_parse_config_file(m_config_t *config, char *conffile);
 
 static m_config_t *gui_conf;
 static const m_option_t gui_opts[] =
--- a/gui/wm/ws.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/gui/wm/ws.h	Wed Dec 03 23:01:03 2008 +0000
@@ -208,15 +208,15 @@
 // ----------------------------------------------------------------------------------------------
 extern unsigned long        wsKeyTable[512];
 
-extern void wsXDone( void );
-extern void wsXInit( void* disp );
+void wsXDone( void );
+void wsXInit( void* disp );
 
-extern int wsGetDepthOnScreen( void );
+int wsGetDepthOnScreen( void );
 
-extern void wsDoExit( void );
-extern void wsMainLoop( void );
-extern Bool wsEvents( Display * display,XEvent * Event,XPointer arg );
-extern void wsHandleEvents( void );
+void wsDoExit( void );
+void wsMainLoop( void );
+Bool wsEvents( Display * display, XEvent * Event, XPointer arg );
+void wsHandleEvents( void );
 
 // ----------------------------------------------------------------------------------------------
 //  wsCrateWindow: create a new window on the screen.
@@ -226,49 +226,49 @@
 //   cV    : mouse cursor visible
 //   D     : "decoration", visible titlebar, etc ...
 // ----------------------------------------------------------------------------------------------
-extern void wsCreateWindow( wsTWindow * win,int X,int Y,int wX,int hY,int bW,int cV,unsigned char D,char * label );
-extern void wsDestroyWindow( wsTWindow * win );
-extern void wsMoveWindow( wsTWindow * win,int b,int x, int y );
-extern void wsResizeWindow( wsTWindow * win,int sx, int sy );
-extern void wsIconify( wsTWindow win );
-extern void wsMoveTopWindow( Display * wsDisplay,Window win );
-extern void wsSetBackground( wsTWindow * win,int color );
-extern void wsSetForegroundRGB( wsTWindow * win,int r,int g,int b );
-extern void wsSetBackgroundRGB( wsTWindow * win,int r,int g,int b );
-#define wsClearWindow( win ) XClearWindow( wsDisplay,win.WindowID )
-extern void wsSetTitle( wsTWindow * win,char * name );
-extern void wsVisibleWindow( wsTWindow * win,int show );
-extern void wsWindowDecoration( wsTWindow * win,long d );
-extern void wsSetLayer( Display * wsDisplay,Window win, int layer );
-extern void wsFullScreen( wsTWindow * win );
-extern void wsPostRedisplay( wsTWindow * win );
-extern void wsSetShape( wsTWindow * win,char * data );
-extern void wsSetIcon( Display * dsp,Window win,Pixmap icon,Pixmap mask );
+void wsCreateWindow( wsTWindow * win, int X, int Y, int wX, int hY, int bW, int cV, unsigned char D, char * label );
+void wsDestroyWindow( wsTWindow * win );
+void wsMoveWindow( wsTWindow * win, int b, int x, int y );
+void wsResizeWindow( wsTWindow * win, int sx, int sy );
+void wsIconify( wsTWindow win );
+void wsMoveTopWindow( Display * wsDisplay, Window win );
+void wsSetBackground( wsTWindow * win, int color );
+void wsSetForegroundRGB( wsTWindow * win, int r, int g, int b );
+void wsSetBackgroundRGB( wsTWindow * win, int r, int g, int b );
+#define wsClearWindow( win ) XClearWindow( wsDisplay, win.WindowID )
+void wsSetTitle( wsTWindow * win, char * name );
+void wsVisibleWindow( wsTWindow * win, int show );
+void wsWindowDecoration( wsTWindow * win, long d );
+void wsSetLayer( Display * wsDisplay, Window win, int layer );
+void wsFullScreen( wsTWindow * win );
+void wsPostRedisplay( wsTWindow * win );
+void wsSetShape( wsTWindow * win, char * data );
+void wsSetIcon( Display * dsp, Window win, Pixmap icon, Pixmap mask );
 
 // ----------------------------------------------------------------------------------------------
 //    Draw string at x,y with fc ( foreground color ) and bc ( background color ).
 // ----------------------------------------------------------------------------------------------
-extern void wsDrawString( wsTWindow win,int x,int y,char * str,int fc,int bc );
-extern int  wsTextWidth( wsTWindow win,char * str );
+void wsDrawString( wsTWindow win, int x, int y, char * str, int fc, int bc );
+int  wsTextWidth( wsTWindow win, char * str );
 
 // ----------------------------------------------------------------------------------------------
 //    Show / hide mouse cursor.
 // ----------------------------------------------------------------------------------------------
-extern void wsVisibleMouse( wsTWindow * win,int m );
-extern void wsSetMousePosition( wsTWindow * win,int x, int y );
+void wsVisibleMouse( wsTWindow * win, int m );
+void wsSetMousePosition( wsTWindow * win, int x, int y );
 
 // ----------------------------------------------------------------------------------------------
 // Image handling
 // ----------------------------------------------------------------------------------------------
-extern void wsCreateImage( wsTWindow * win,int Width,int Height );
-extern void wsConvert( wsTWindow * win,unsigned char * Image,unsigned int Size );
-extern void wsPutImage( wsTWindow * win );
-extern void wsResizeImage( wsTWindow * win,int Width,int Height );
-extern void wsDestroyImage( wsTWindow * win );
-extern int  wsGetOutMask( void );
+void wsCreateImage( wsTWindow * win, int Width, int Height );
+void wsConvert( wsTWindow * win, unsigned char * Image, unsigned int Size );
+void wsPutImage( wsTWindow * win );
+void wsResizeImage( wsTWindow * win, int Width, int Height );
+void wsDestroyImage( wsTWindow * win );
+int  wsGetOutMask( void );
 
-extern void wsScreenSaverOn( Display *mDisplay );
-extern void wsScreenSaverOff( Display * mDisplay );
+void wsScreenSaverOn( Display *mDisplay );
+void wsScreenSaverOff( Display * mDisplay );
 
 #define wgIsRect( X,Y,tX,tY,bX,bY ) ( ( (X) > (tX) )&&( (Y) > (tY) )&&( (X) < (bX) )&&( (Y) < (bY) ) )
 
--- a/input/input.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/input/input.h	Wed Dec 03 23:01:03 2008 +0000
@@ -217,7 +217,7 @@
 typedef void (*mp_close_func_t)(int fd);
 
 // Set this to grab all incoming key codes
-extern int (*mp_input_key_cb)(int code);
+int (*mp_input_key_cb)(int code);
 // Should return 1 if the command was processed
 typedef int (*mp_input_cmd_filter)(mp_cmd_t* cmd, int paused, void* ctx);
 
--- a/libaf/af_format.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libaf/af_format.h	Wed Dec 03 23:01:03 2008 +0000
@@ -85,11 +85,11 @@
 
 #define AF_FORMAT_UNKNOWN (-1)
 
-extern int af_str2fmt(const char *str);
-extern int af_str2fmt_short(const char *str);
-extern int af_fmt2bits(int format);
-extern int af_bits2fmt(int bits);
-extern char* af_fmt2str(int format, char* str, int size);
-extern const char* af_fmt2str_short(int format);
+int af_str2fmt(const char *str);
+int af_str2fmt_short(const char *str);
+int af_fmt2bits(int format);
+int af_bits2fmt(int bits);
+char* af_fmt2str(int format, char* str, int size);
+const char* af_fmt2str_short(int format);
 
 #endif /* MPLAYER_AF_FORMAT_H */
--- a/libaf/filter.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libaf/filter.h	Wed Dec 03 23:01:03 2008 +0000
@@ -44,28 +44,27 @@
 #define ODD         0x00000010 // Make filter HP
 
 // Exported functions
-extern FLOAT_TYPE af_filter_fir(unsigned int n, const FLOAT_TYPE* w, const FLOAT_TYPE* x);
+FLOAT_TYPE af_filter_fir(unsigned int n, const FLOAT_TYPE* w, const FLOAT_TYPE* x);
 
-extern FLOAT_TYPE* af_filter_pfir(unsigned int n, unsigned int k,
-                                  unsigned int xi, const FLOAT_TYPE** w,
-                                  const FLOAT_TYPE** x, FLOAT_TYPE* y,
-                                  unsigned int s);
+FLOAT_TYPE* af_filter_pfir(unsigned int n, unsigned int k,
+                           unsigned int xi, const FLOAT_TYPE** w,
+                           const FLOAT_TYPE** x, FLOAT_TYPE* y,
+                           unsigned int s);
 
-//extern int af_filter_updateq(unsigned int n, unsigned int xi,
-//                             FLOAT_TYPE* xq, FLOAT_TYPE* in);
-extern int af_filter_updatepq(unsigned int n, unsigned int k, unsigned int xi,
-                              FLOAT_TYPE** xq, const FLOAT_TYPE* in, unsigned int s);
-
-extern int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, const FLOAT_TYPE* fc,
-                                unsigned int flags, FLOAT_TYPE opt);
+//int af_filter_updateq(unsigned int n, unsigned int xi,
+//                      FLOAT_TYPE* xq, FLOAT_TYPE* in);
+int af_filter_updatepq(unsigned int n, unsigned int k, unsigned int xi,
+                       FLOAT_TYPE** xq, const FLOAT_TYPE* in, unsigned int s);
 
-extern int af_filter_design_pfir(unsigned int n, unsigned int k, const FLOAT_TYPE* w,
-                                 FLOAT_TYPE** pw, FLOAT_TYPE g,
-                                 unsigned int flags);
+int af_filter_design_fir(unsigned int n, FLOAT_TYPE* w, const FLOAT_TYPE* fc,
+                         unsigned int flags, FLOAT_TYPE opt);
 
-extern int af_filter_szxform(const FLOAT_TYPE* a, const FLOAT_TYPE* b, FLOAT_TYPE Q,
-                             FLOAT_TYPE fc, FLOAT_TYPE fs, FLOAT_TYPE *k,
-                             FLOAT_TYPE *coef);
+int af_filter_design_pfir(unsigned int n, unsigned int k, const FLOAT_TYPE* w,
+                          FLOAT_TYPE** pw, FLOAT_TYPE g, unsigned int flags);
+
+int af_filter_szxform(const FLOAT_TYPE* a, const FLOAT_TYPE* b, FLOAT_TYPE Q,
+                      FLOAT_TYPE fc, FLOAT_TYPE fs, FLOAT_TYPE *k,
+                      FLOAT_TYPE *coef);
 
 /* Add new data to circular queue designed to be used with a FIR
    filter. xq is the circular queue, in pointing at the new sample, xi
--- a/libaf/window.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libaf/window.h	Wed Dec 03 23:01:03 2008 +0000
@@ -22,12 +22,12 @@
 #ifndef MPLAYER_WINDOW_H
 #define MPLAYER_WINDOW_H
 
-extern void af_window_boxcar(int n, FLOAT_TYPE* w);
-extern void af_window_triang(int n, FLOAT_TYPE* w);
-extern void af_window_hanning(int n, FLOAT_TYPE* w);
-extern void af_window_hamming(int n, FLOAT_TYPE* w);
-extern void af_window_blackman(int n, FLOAT_TYPE* w);
-extern void af_window_flattop(int n, FLOAT_TYPE* w);
-extern void af_window_kaiser(int n, FLOAT_TYPE* w, FLOAT_TYPE b);
+void af_window_boxcar(int n, FLOAT_TYPE* w);
+void af_window_triang(int n, FLOAT_TYPE* w);
+void af_window_hanning(int n, FLOAT_TYPE* w);
+void af_window_hamming(int n, FLOAT_TYPE* w);
+void af_window_blackman(int n, FLOAT_TYPE* w);
+void af_window_flattop(int n, FLOAT_TYPE* w);
+void af_window_kaiser(int n, FLOAT_TYPE* w, FLOAT_TYPE b);
 
 #endif /* MPLAYER_WINDOW_H */
--- a/libao2/ao_dxr2.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libao2/ao_dxr2.c	Wed Dec 03 23:01:03 2008 +0000
@@ -157,7 +157,7 @@
 
 static void dxr2_send_lpcm_packet(unsigned char* data,int len,int id,unsigned int timestamp,int freq_id)
 {
-  extern int write_dxr2(const unsigned char *data, int len);
+  int write_dxr2(const unsigned char *data, int len);
   
   if(dxr2_fd < 0) {
     mp_msg(MSGT_AO,MSGL_ERR,"DXR2 fd is not valid\n");
@@ -176,7 +176,7 @@
 // it should round it down to outburst*n
 // return: number of bytes played
 static int play(void* data,int len,int flags){
-  extern int write_dxr2(const unsigned char *data, int len);
+  int write_dxr2(const unsigned char *data, int len);
 
   // MPEG and AC3 don't work :-(
     if(ao_data.format==AF_FORMAT_MPEG2)
--- a/libao2/ao_ivtv.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libao2/ao_ivtv.c	Wed Dec 03 23:01:03 2008 +0000
@@ -147,7 +147,7 @@
 static int
 play (void *data, int len, int flags)
 {
-  extern int ivtv_write (unsigned char *data, int len);
+  int ivtv_write (unsigned char *data, int len);
   
   if (ao_data.format != AF_FORMAT_MPEG2)
     return 0;
--- a/libao2/ao_v4l2.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libao2/ao_v4l2.c	Wed Dec 03 23:01:03 2008 +0000
@@ -144,7 +144,7 @@
 static int
 play (void *data, int len, int flags)
 {
-  extern int v4l2_write (unsigned char *data, int len);
+  int v4l2_write (unsigned char *data, int len);
   
   if (ao_data.format != AF_FORMAT_MPEG2)
     return 0;
--- a/libass/ass_mp.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libass/ass_mp.c	Wed Dec 03 23:01:03 2008 +0000
@@ -71,7 +71,7 @@
 static char* sub_cp = 0;
 #endif
 
-extern void process_force_style(ass_track_t* track);
+void process_force_style(ass_track_t* track);
 
 ass_track_t* ass_default_track(ass_library_t* library) {
 	ass_track_t* track = ass_new_track(library);
--- a/libmpcodecs/ad_acm.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpcodecs/ad_acm.c	Wed Dec 03 23:01:03 2008 +0000
@@ -38,7 +38,7 @@
   return 1;
 }
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 static int preinit(sh_audio_t *sh_audio)
 {
--- a/libmpcodecs/ad_twin.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpcodecs/ad_twin.c	Wed Dec 03 23:01:03 2008 +0000
@@ -88,7 +88,7 @@
      TvqGetNumFixedBitsPerFrame;
 }
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 static int init_vqf_audio_codec(sh_audio_t *sh_audio){
     WAVEFORMATEX *in_fmt=sh_audio->wf;
     vqf_priv_t*priv=sh_audio->context;
--- a/libmpcodecs/dec_audio.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpcodecs/dec_audio.h	Wed Dec 03 23:01:03 2008 +0000
@@ -4,14 +4,14 @@
 #include "libmpdemux/stheader.h"
 
 // dec_audio.c:
-extern void afm_help(void);
-extern int init_best_audio_codec(sh_audio_t *sh_audio,char** audio_codec_list,char** audio_fm_list);
-extern int decode_audio(sh_audio_t *sh_audio, int minlen);
-extern void resync_audio_stream(sh_audio_t *sh_audio);
-extern void skip_audio_frame(sh_audio_t *sh_audio);
-extern void uninit_audio(sh_audio_t *sh_audio);
+void afm_help(void);
+int init_best_audio_codec(sh_audio_t *sh_audio, char** audio_codec_list, char** audio_fm_list);
+int decode_audio(sh_audio_t *sh_audio, int minlen);
+void resync_audio_stream(sh_audio_t *sh_audio);
+void skip_audio_frame(sh_audio_t *sh_audio);
+void uninit_audio(sh_audio_t *sh_audio);
 
-extern int init_audio_filters(sh_audio_t *sh_audio, int in_samplerate,
-		int *out_samplerate, int *out_channels, int *out_format);
+int init_audio_filters(sh_audio_t *sh_audio, int in_samplerate,
+                       int *out_samplerate, int *out_channels, int *out_format);
 
 #endif /* MPLAYER_DEC_AUDIO_H */
--- a/libmpcodecs/dec_video.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpcodecs/dec_video.h	Wed Dec 03 23:01:03 2008 +0000
@@ -4,22 +4,22 @@
 #include "libmpdemux/stheader.h"
 
 // dec_video.c:
-extern void vfm_help(void);
+void vfm_help(void);
 
-extern int init_best_video_codec(sh_video_t *sh_video,char** video_codec_list,char** video_fm_list);
-extern void uninit_video(sh_video_t *sh_video);
+int init_best_video_codec(sh_video_t *sh_video, char** video_codec_list, char** video_fm_list);
+void uninit_video(sh_video_t *sh_video);
 
-extern void *decode_video(sh_video_t *sh_video,unsigned char *start,int in_size,int drop_frame, double pts);
-extern int filter_video(sh_video_t *sh_video, void *frame, double pts);
+void *decode_video(sh_video_t *sh_video, unsigned char *start, int in_size, int drop_frame, double pts);
+int filter_video(sh_video_t *sh_video, void *frame, double pts);
 
-extern int get_video_quality_max(sh_video_t *sh_video);
-extern void set_video_quality(sh_video_t *sh_video,int quality);
+int get_video_quality_max(sh_video_t *sh_video);
+void set_video_quality(sh_video_t *sh_video, int quality);
 
-extern int get_video_colors(sh_video_t *sh_video,const char *item,int *value);
-extern int set_video_colors(sh_video_t *sh_video,const char *item,int value);
-extern int set_rectangle(sh_video_t *sh_video,int param,int value);
-extern void resync_video_stream(sh_video_t *sh_video);
-extern int get_current_video_decoder_lag(sh_video_t *sh_video);
+int get_video_colors(sh_video_t *sh_video, const char *item, int *value);
+int set_video_colors(sh_video_t *sh_video, const char *item, int value);
+int set_rectangle(sh_video_t *sh_video, int param, int value);
+void resync_video_stream(sh_video_t *sh_video);
+int get_current_video_decoder_lag(sh_video_t *sh_video);
 
 extern int divx_quality;
 
--- a/libmpcodecs/vd_vfw.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpcodecs/vd_vfw.c	Wed Dec 03 23:01:03 2008 +0000
@@ -134,7 +134,7 @@
     return CONTROL_UNKNOWN;
 }
 
-extern void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
+void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
 
 // init driver
 static int init(sh_video_t *sh){
--- a/libmpdemux/demux_asf.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_asf.c	Wed Dec 03 23:01:03 2008 +0000
@@ -18,8 +18,8 @@
 
 // defined at asfheader.c:
 
-extern int asf_check_header(demuxer_t *demuxer);
-extern int read_asf_header(demuxer_t *demuxer,struct asf_priv* asf);
+int asf_check_header(demuxer_t *demuxer);
+int read_asf_header(demuxer_t *demuxer,struct asf_priv* asf);
 
 // based on asf file-format doc by Eugene [http://divx.euro.ru]
 
@@ -531,7 +531,7 @@
 
 #include "stheader.h"
 
-extern void skip_audio_frame(sh_audio_t *sh_audio);
+void skip_audio_frame(sh_audio_t *sh_audio);
 
 static void demux_seek_asf(demuxer_t *demuxer,float rel_seek_secs,float audio_delay,int flags){
     struct asf_priv* asf = demuxer->priv;
--- a/libmpdemux/demux_audio.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_audio.c	Wed Dec 03 23:01:03 2008 +0000
@@ -45,7 +45,7 @@
   struct mp3_hdr *next;
 } mp3_hdr_t;
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 int hr_mp3_seek = 0;
 
--- a/libmpdemux/demux_avi.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_avi.c	Wed Dec 03 23:01:03 2008 +0000
@@ -14,8 +14,8 @@
 
 #include "aviheader.h"
 
-extern demuxer_t* init_avi_with_ogg(demuxer_t* demuxer);
-extern int demux_ogg_open(demuxer_t* demuxer);
+demuxer_t* init_avi_with_ogg(demuxer_t* demuxer);
+int demux_ogg_open(demuxer_t* demuxer);
 
 extern const demuxer_desc_t demuxer_desc_avi_ni;
 extern const demuxer_desc_t demuxer_desc_avi_nini;
--- a/libmpdemux/demux_lavf.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_lavf.c	Wed Dec 03 23:01:03 2008 +0000
@@ -79,8 +79,8 @@
     int cur_program;
 }lavf_priv_t;
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
-extern void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
 
 static int mp_read(void *opaque, uint8_t *buf, int size) {
     stream_t *stream = opaque;
--- a/libmpdemux/demux_mpg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_mpg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -879,7 +879,7 @@
   return 1;
 }
 
-extern void skip_audio_frame(sh_audio_t *sh_audio);
+void skip_audio_frame(sh_audio_t *sh_audio);
 
 void demux_seek_mpg(demuxer_t *demuxer,float rel_seek_secs,float audio_delay, int flags){
     demux_stream_t *d_audio=demuxer->audio;
--- a/libmpdemux/demux_ogg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_ogg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -29,7 +29,7 @@
 
 #ifdef CONFIG_OGGTHEORA
 #include <theora/theora.h>
-extern int _ilog (unsigned int); /* defined in many places in theora/lib/ */
+int _ilog (unsigned int); /* defined in many places in theora/lib/ */
 #endif
 
 #define BLOCK_SIZE 4096
@@ -607,11 +607,11 @@
   
 }
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
-extern void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_video_header(BITMAPINFOHEADER *h, int verbose_level);
 
 /* defined in demux_mov.c */
-extern unsigned int store_ughvlc(unsigned char *s, unsigned int v);
+unsigned int store_ughvlc(unsigned char *s, unsigned int v);
 
 /** \brief Change the current subtitle stream and return its ID.
 
--- a/libmpdemux/demux_real.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_real.c	Wed Dec 03 23:01:03 2008 +0000
@@ -1085,7 +1085,7 @@
   return 0;
 }
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 static demuxer_t* demux_open_real(demuxer_t* demuxer)
 {
--- a/libmpdemux/demux_realaud.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_realaud.c	Wed Dec 03 23:01:03 2008 +0000
@@ -141,7 +141,7 @@
 
 
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 
 
--- a/libmpdemux/demux_ts.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_ts.c	Wed Dec 03 23:01:03 2008 +0000
@@ -1107,7 +1107,7 @@
 }
 
 
-extern unsigned char mp_getbits(unsigned char*, unsigned int, unsigned char);
+unsigned char mp_getbits(unsigned char*, unsigned int, unsigned char);
 #define getbits mp_getbits
 
 static int mp4_parse_sl_packet(pmt_t *pmt, uint8_t *buf, uint16_t packet_len, int pid, ES_stream_t *pes_es)
@@ -3085,7 +3085,7 @@
 }
 
 
-extern void skip_audio_frame(sh_audio_t *sh_audio);
+void skip_audio_frame(sh_audio_t *sh_audio);
 
 static void reset_fifos(demuxer_t *demuxer, int a, int v, int s)
 {
--- a/libmpdemux/demux_ty.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demux_ty.c	Wed Dec 03 23:01:03 2008 +0000
@@ -47,7 +47,7 @@
 #include "libavutil/avstring.h"
 #include "libavutil/intreadwrite.h"
 
-extern void skip_audio_frame( sh_audio_t *sh_audio );
+void skip_audio_frame( sh_audio_t *sh_audio );
 extern int sub_justify;
 
 // 2/c0: audio data
--- a/libmpdemux/demuxer.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demuxer.c	Wed Dec 03 23:01:03 2008 +0000
@@ -34,8 +34,8 @@
 #endif
 #endif
 
-extern void resync_video_stream(sh_video_t *sh_video);
-extern void resync_audio_stream(sh_audio_t *sh_audio);
+void resync_video_stream(sh_video_t *sh_video);
+void resync_audio_stream(sh_audio_t *sh_audio);
 
 // Demuxer list
 extern const demuxer_desc_t demuxer_desc_rawaudio;
--- a/libmpdemux/demuxer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/demuxer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -404,16 +404,16 @@
 int demux_ogg_sub_id(demuxer_t *demuxer, int index);
 #endif
 
-extern int demuxer_get_current_time(demuxer_t *demuxer);
-extern double demuxer_get_time_length(demuxer_t *demuxer);
-extern int demuxer_get_percent_pos(demuxer_t *demuxer);
-extern int demuxer_switch_audio(demuxer_t *demuxer, int index);
-extern int demuxer_switch_video(demuxer_t *demuxer, int index);
+int demuxer_get_current_time(demuxer_t *demuxer);
+double demuxer_get_time_length(demuxer_t *demuxer);
+int demuxer_get_percent_pos(demuxer_t *demuxer);
+int demuxer_switch_audio(demuxer_t *demuxer, int index);
+int demuxer_switch_video(demuxer_t *demuxer, int index);
 
-extern int demuxer_type_by_filename(char* filename);
+int demuxer_type_by_filename(char* filename);
 
-extern void demuxer_help(void);
-extern int get_demuxer_type_from_name(char *demuxer_name, int *force);
+void demuxer_help(void);
+int get_demuxer_type_from_name(char *demuxer_name, int *force);
 
 int demuxer_add_attachment(demuxer_t* demuxer, const char* name,
                            const char* type, const void* data, size_t size);
--- a/libmpdemux/muxer_mpeg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libmpdemux/muxer_mpeg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -2048,7 +2048,7 @@
 	return layer;	//actual layer with the highest score
 }
 
-extern int aac_parse_frame(uint8_t *buf, int *srate, int *num);
+int aac_parse_frame(uint8_t *buf, int *srate, int *num);
 
 static int parse_audio(muxer_stream_t *s, int finalize, unsigned int *nf, double *timer, double delay, int drop)
 {
--- a/libvo/aspect.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/aspect.h	Wed Dec 03 23:01:03 2008 +0000
@@ -6,8 +6,8 @@
 extern int vo_panscan_y;
 extern float vo_panscan_amount;
 
-extern void panscan_init( void );
-extern void panscan_calc( void );
+void panscan_init(void);
+void panscan_calc(void);
 
 void aspect_save_orig(int orgw, int orgh);
 
--- a/libvo/fastmemcpy.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/fastmemcpy.h	Wed Dec 03 23:01:03 2008 +0000
@@ -28,8 +28,8 @@
 /*    || defined(HAVE_SSE) || defined(HAVE_SSE2) */
 #include <stddef.h>
 
-extern void * fast_memcpy(void * to, const void * from, size_t len);
-extern void * mem2agpcpy(void * to, const void * from, size_t len);
+void * fast_memcpy(void * to, const void * from, size_t len);
+void * mem2agpcpy(void * to, const void * from, size_t len);
 
 #else /* HAVE_MMX/MMX2/3DNOW/SSE/SSE2 */
 #define mem2agpcpy(a,b,c) memcpy(a,b,c)
--- a/libvo/osd.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/osd.h	Wed Dec 03 23:01:03 2008 +0000
@@ -5,14 +5,14 @@
 // Generic alpha renderers for all YUV modes and RGB depths.
 // These are "reference implementations", should be optimized later (MMX, etc)
 
-extern void vo_draw_alpha_init(void); // build tables
+void vo_draw_alpha_init(void); // build tables
 
-extern void vo_draw_alpha_yv12(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_yuy2(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_uyvy(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_rgb24(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_rgb32(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_rgb15(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
-extern void vo_draw_alpha_rgb16(int w,int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase,int dststride);
+void vo_draw_alpha_yv12(int w,  int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_yuy2(int w,  int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_uyvy(int w,  int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_rgb24(int w, int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_rgb32(int w, int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_rgb15(int w, int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
+void vo_draw_alpha_rgb16(int w, int h, unsigned char* src, unsigned char *srca, int srcstride, unsigned char* dstbase, int dststride);
 
 #endif /* MPLAYER_OSD_H */
--- a/libvo/sub.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/sub.c	Wed Dec 03 23:01:03 2008 +0000
@@ -1030,7 +1030,7 @@
 
 static int draw_alpha_init_flag=0;
 
-extern void vo_draw_alpha_init(void);
+void vo_draw_alpha_init(void);
 
        mp_osd_obj_t* vo_osd_list=NULL;
 
--- a/libvo/sub.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/sub.h	Wed Dec 03 23:01:03 2008 +0000
@@ -105,8 +105,8 @@
 extern int spu_aamode;
 extern float spu_gaussvar;
 
-extern void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
-extern void vo_remove_text(int dxs,int dys,void (*remove)(int x0,int y0, int w,int h));
+void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
+void vo_remove_text(int dxs,int dys,void (*remove)(int x0,int y0, int w,int h));
 
 void vo_init_osd(void);
 int vo_update_osd(int dxs,int dys);
--- a/libvo/video_out.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/video_out.h	Wed Dec 03 23:01:03 2008 +0000
@@ -244,9 +244,9 @@
 	float max;
 	} range_t;
 
-extern float range_max(range_t *r);
-extern int in_range(range_t *r, float f);
-extern range_t *str2range(char *s);
+float range_max(range_t *r);
+int in_range(range_t *r, float f);
+range_t *str2range(char *s);
 extern char *monitor_hfreq_str;
 extern char *monitor_vfreq_str;
 extern char *monitor_dotclock_str;
--- a/libvo/vo_directx.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/vo_directx.c	Wed Dec 03 23:01:03 2008 +0000
@@ -89,7 +89,7 @@
 static BOOL (WINAPI* myGetMonitorInfo)(HMONITOR, LPMONITORINFO) = NULL;
 static RECT last_rect = {0xDEADC0DE, 0xDEADC0DE, 0xDEADC0DE, 0xDEADC0DE};
 
-extern void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
+void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
 extern int vidmode;
 
 /*****************************************************************************
--- a/libvo/vo_macosx.m	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/vo_macosx.m	Wed Dec 03 23:01:03 2008 +0000
@@ -85,8 +85,8 @@
 
 LIBVO_EXTERN(macosx)
 
-extern void mplayer_put_key(int code);
-extern void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
+void mplayer_put_key(int code);
+void vo_draw_text(int dxs,int dys,void (*draw_alpha)(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride));
 
 static void draw_alpha(int x0, int y0, int w, int h, unsigned char *src, unsigned char *srca, int stride)
 {
--- a/libvo/vo_quartz.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/vo_quartz.c	Wed Dec 03 23:01:03 2008 +0000
@@ -128,7 +128,7 @@
 
 #include "osdep/keycodes.h"
 
-extern void vo_draw_text(int dxs, int dys, void (*draw_alpha) (int x0, int y0, int w, int h, unsigned char *src, unsigned char *srca, int stride));
+void vo_draw_text(int dxs, int dys, void (*draw_alpha) (int x0, int y0, int w, int h, unsigned char *src, unsigned char *srca, int stride));
 
 //PROTOTYPE/////////////////////////////////////////////////////////////////
 static OSStatus KeyEventHandler(EventHandlerCallRef nextHandler, EventRef event, void *userData);
--- a/libvo/vo_winvidix.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/vo_winvidix.c	Wed Dec 03 23:01:03 2008 +0000
@@ -54,7 +54,7 @@
 static vidix_grkey_t gr_key;
     
 
-extern void set_video_eq( int cap );
+void set_video_eq(int cap);
 
 
 static LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
--- a/libvo/vo_xvidix.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/vo_xvidix.c	Wed Dec 03 23:01:03 2008 +0000
@@ -68,7 +68,7 @@
 static uint32_t drwX, drwY, drwWidth, drwHeight, drwBorderWidth,
     drwDepth, drwcX, drwcY, dwidth, dheight;
 
-extern void set_video_eq(int cap);
+void set_video_eq(int cap);
 
 
 static void set_window(int force_update)
--- a/libvo/w32_common.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/libvo/w32_common.h	Wed Dec 03 23:01:03 2008 +0000
@@ -7,14 +7,14 @@
 extern HWND vo_w32_window;
 extern int vo_vm;
 
-extern int vo_w32_init(void);
-extern void vo_w32_uninit(void);
-extern void vo_w32_ontop(void);
-extern void vo_w32_border(void);
-extern void vo_w32_fullscreen(void);
-extern int vo_w32_check_events(void);
-extern int vo_w32_config(uint32_t, uint32_t, uint32_t);
-extern void destroyRenderingContext(void);
-extern void w32_update_xinerama_info(void);
+int vo_w32_init(void);
+void vo_w32_uninit(void);
+void vo_w32_ontop(void);
+void vo_w32_border(void);
+void vo_w32_fullscreen(void);
+int vo_w32_check_events(void);
+int vo_w32_config(uint32_t, uint32_t, uint32_t);
+void destroyRenderingContext(void);
+void w32_update_xinerama_info(void);
 
 #endif /* MPLAYER_W32_COMMON_H */
--- a/loader/dmo/DMO_AudioDecoder.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/dmo/DMO_AudioDecoder.c	Wed Dec 03 23:01:03 2008 +0000
@@ -31,7 +31,7 @@
 #include "mp_msg.h"
 
 typedef long STDCALL (*GETCLASS) (GUID*, GUID*, void**);
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 DMO_AudioDecoder * DMO_AudioDecoder_Open(char* dllname, GUID* guid, WAVEFORMATEX* wf,int out_channels)
 //DMO_AudioDecoder * DMO_AudioDecoder_Create(const CodecInfo * info, const WAVEFORMATEX* wf)
--- a/loader/elfdll.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/elfdll.c	Wed Dec 03 23:01:03 2008 +0000
@@ -33,8 +33,8 @@
 
 
 /*------------------ HACKS -----------------*/
-extern DWORD fixup_imports(WINE_MODREF *wm);
-extern void dump_exports(HMODULE hModule);
+DWORD fixup_imports(WINE_MODREF *wm);
+void dump_exports(HMODULE hModule);
 /*---------------- END HACKS ---------------*/
 
 //char *extra_ld_library_path = "/usr/lib/win32";
--- a/loader/ext.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/ext.h	Wed Dec 03 23:01:03 2008 +0000
@@ -8,12 +8,12 @@
 
 #include "wine/windef.h"
 
-extern LPVOID FILE_dommap( int unix_handle, LPVOID start,
-			   DWORD size_high, DWORD size_low,
-			   DWORD offset_high, DWORD offset_low,
-			   int prot, int flags );
-extern int FILE_munmap( LPVOID start, DWORD size_high, DWORD size_low );
-extern int wcsnicmp(const unsigned short* s1, const unsigned short* s2, int n);
-extern int __vprintf( const char *format, ... );
+LPVOID FILE_dommap( int unix_handle, LPVOID start,
+                    DWORD size_high, DWORD size_low,
+                    DWORD offset_high, DWORD offset_low,
+                    int prot, int flags );
+int FILE_munmap( LPVOID start, DWORD size_high, DWORD size_low );
+int wcsnicmp( const unsigned short* s1, const unsigned short* s2, int n );
+int __vprintf( const char *format, ... );
 
 #endif /* MPLAYER_EXT_H */
--- a/loader/registry.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/registry.c	Wed Dec 03 23:01:03 2008 +0000
@@ -24,7 +24,7 @@
 //#undef TRACE
 //#define TRACE printf
 
-extern char *get_path ( const char * );
+char *get_path(const char*);
 
 // ...can be set before init_registry() call
 char* regpathname = NULL;
--- a/loader/win32.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/win32.c	Wed Dec 03 23:01:03 2008 +0000
@@ -1159,7 +1159,7 @@
 // we will silently ignore this second call...
 static void* heapfreehack = 0;
 static int heapfreehackshown = 0;
-//extern void trapbug(void);
+//void trapbug(void);
 static void* WINAPI expHeapAlloc(HANDLE heap, int flags, int size)
 {
     void* z;
--- a/loader/win32.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/win32.h	Wed Dec 03 23:01:03 2008 +0000
@@ -21,7 +21,7 @@
 #endif
 #endif
 
-extern void my_garbagecollection(void);
+void my_garbagecollection(void);
 
 typedef struct {
     UINT             uDriverSignature;
@@ -37,7 +37,7 @@
 typedef struct tls_s tls_t;
 
 
-extern void* LookupExternal(const char* library, int ordinal);
-extern void* LookupExternalByName(const char* library, const char* name);
+void* LookupExternal(const char* library, int ordinal);
+void* LookupExternalByName(const char* library, const char* name);
 
 #endif /* MPLAYER_WIN32_H */
--- a/loader/wine/debugtools.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/debugtools.h	Wed Dec 03 23:01:03 2008 +0000
@@ -37,17 +37,17 @@
 /* These function return a printable version of a string, including
    quotes.  The string will be valid for some time, but not indefinitely
    as strings are re-used.  */
-extern LPCSTR debugstr_an (LPCSTR s, int n);
-extern LPCSTR debugstr_wn (LPCWSTR s, int n);
-extern LPCSTR debugres_a (LPCSTR res);
-extern LPCSTR debugres_w (LPCWSTR res);
-extern LPCSTR debugstr_guid( const struct GUID *id );
-extern LPCSTR debugstr_hex_dump (const void *ptr, int len);
-extern int dbg_header_err( const char *dbg_channel, const char *func );
-extern int dbg_header_warn( const char *dbg_channel, const char *func );
-extern int dbg_header_fixme( const char *dbg_channel, const char *func );
-extern int dbg_header_trace( const char *dbg_channel, const char *func );
-extern int dbg_vprintf( const char *format, va_list args );
+LPCSTR debugstr_an( LPCSTR s, int n );
+LPCSTR debugstr_wn( LPCWSTR s, int n );
+LPCSTR debugres_a( LPCSTR res );
+LPCSTR debugres_w( LPCWSTR res );
+LPCSTR debugstr_guid( const struct GUID *id );
+LPCSTR debugstr_hex_dump( const void *ptr, int len );
+int dbg_header_err( const char *dbg_channel, const char *func );
+int dbg_header_warn( const char *dbg_channel, const char *func );
+int dbg_header_fixme( const char *dbg_channel, const char *func );
+int dbg_header_trace( const char *dbg_channel, const char *func );
+int dbg_vprintf( const char *format, va_list args );
 
 static inline LPCSTR debugstr_a( LPCSTR s )  { return debugstr_an( s, 80 ); }
 static inline LPCSTR debugstr_w( LPCWSTR s ) { return debugstr_wn( s, 80 ); }
--- a/loader/wine/heap.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/heap.h	Wed Dec 03 23:01:03 2008 +0000
@@ -14,12 +14,12 @@
 extern HANDLE SystemHeap;
 extern HANDLE SegptrHeap;
 
-extern int HEAP_IsInsideHeap( HANDLE heap, DWORD flags, LPCVOID ptr );
-extern SEGPTR HEAP_GetSegptr( HANDLE heap, DWORD flags, LPCVOID ptr );
-extern LPSTR HEAP_strdupA( HANDLE heap, DWORD flags, LPCSTR str );
-extern LPWSTR HEAP_strdupW( HANDLE heap, DWORD flags, LPCWSTR str );
-extern LPWSTR HEAP_strdupAtoW( HANDLE heap, DWORD flags, LPCSTR str );
-extern LPSTR HEAP_strdupWtoA( HANDLE heap, DWORD flags, LPCWSTR str );
+int HEAP_IsInsideHeap( HANDLE heap, DWORD flags, LPCVOID ptr );
+SEGPTR HEAP_GetSegptr( HANDLE heap, DWORD flags, LPCVOID ptr );
+LPSTR HEAP_strdupA( HANDLE heap, DWORD flags, LPCSTR str );
+LPWSTR HEAP_strdupW( HANDLE heap, DWORD flags, LPCWSTR str );
+LPWSTR HEAP_strdupAtoW( HANDLE heap, DWORD flags, LPCSTR str );
+LPSTR HEAP_strdupWtoA( HANDLE heap, DWORD flags, LPCWSTR str );
 
 /* SEGPTR helper macros */
 
--- a/loader/wine/ldt.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/ldt.h	Wed Dec 03 23:01:03 2008 +0000
@@ -30,11 +30,11 @@
 extern "C" 
 {
 #endif
-extern void LDT_BytesToEntry( const unsigned long *buffer, ldt_entry *content);
-extern void LDT_EntryToBytes( unsigned long *buffer, const ldt_entry *content);
-extern int LDT_GetEntry( int entry, ldt_entry *content );
-extern int LDT_SetEntry( int entry, const ldt_entry *content );
-extern void LDT_Print( int start, int length );
+void LDT_BytesToEntry( const unsigned long *buffer, ldt_entry *content );
+void LDT_EntryToBytes( unsigned long *buffer, const ldt_entry *content );
+int LDT_GetEntry( int entry, ldt_entry *content );
+int LDT_SetEntry( int entry, const ldt_entry *content );
+void LDT_Print( int start, int length );
 
 
   /* This structure is used to build the local copy of the LDT. */
--- a/loader/wine/module.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/module.h	Wed Dec 03 23:01:03 2008 +0000
@@ -139,11 +139,11 @@
 
 
 /* module.c */
-extern FARPROC MODULE_GetProcAddress( HMODULE hModule, LPCSTR function, WIN_BOOL snoop );
-extern WINE_MODREF *MODULE32_LookupHMODULE( HMODULE hModule );
-extern WINE_MODREF *MODULE_FindModule( LPCSTR path );
+FARPROC MODULE_GetProcAddress( HMODULE hModule, LPCSTR function, WIN_BOOL snoop );
+WINE_MODREF *MODULE32_LookupHMODULE( HMODULE hModule );
+WINE_MODREF *MODULE_FindModule( LPCSTR path );
 
 /* resource.c */
-extern INT       WINAPI AccessResource(HMODULE,HRSRC); 
+INT WINAPI AccessResource( HMODULE, HRSRC );
 
 #endif /* MPLAYER_MODULE_H */
--- a/loader/wine/pe_image.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/pe_image.h	Wed Dec 03 23:01:03 2008 +0000
@@ -25,32 +25,32 @@
 } PE_MODREF;
 
 struct wine_modref;
-extern int PE_unloadImage(HMODULE hModule);
-extern FARPROC PE_FindExportedFunction(struct wine_modref *wm, LPCSTR funcName, WIN_BOOL snoop);
-extern WIN_BOOL PE_EnumResourceTypesA(HMODULE,ENUMRESTYPEPROCA,LONG);
-extern WIN_BOOL PE_EnumResourceTypesW(HMODULE,ENUMRESTYPEPROCW,LONG);
-extern WIN_BOOL PE_EnumResourceNamesA(HMODULE,LPCSTR,ENUMRESNAMEPROCA,LONG);
-extern WIN_BOOL PE_EnumResourceNamesW(HMODULE,LPCWSTR,ENUMRESNAMEPROCW,LONG);
-extern WIN_BOOL PE_EnumResourceLanguagesA(HMODULE,LPCSTR,LPCSTR,ENUMRESLANGPROCA,LONG);
-extern WIN_BOOL PE_EnumResourceLanguagesW(HMODULE,LPCWSTR,LPCWSTR,ENUMRESLANGPROCW,LONG);
-extern HRSRC PE_FindResourceExW(struct wine_modref*, LPCWSTR, LPCWSTR, WORD);
-extern DWORD PE_SizeofResource(HMODULE,HRSRC);
-extern struct wine_modref *PE_LoadLibraryExA(LPCSTR, DWORD);
-extern void PE_UnloadLibrary(struct wine_modref *);
-extern HGLOBAL PE_LoadResource(struct wine_modref *wm, HRSRC);
-extern HMODULE PE_LoadImage( int hFile, LPCSTR filename, WORD *version );
-extern struct wine_modref *PE_CreateModule( HMODULE hModule, LPCSTR filename,
-                                             DWORD flags, WIN_BOOL builtin );
-extern WIN_BOOL PE_CreateProcess( HANDLE hFile, LPCSTR filename, LPCSTR cmd_line, LPCSTR env, 
-                              LPSECURITY_ATTRIBUTES psa, LPSECURITY_ATTRIBUTES tsa,
-                              WIN_BOOL inherit, DWORD flags, LPSTARTUPINFOA startup,
-                              LPPROCESS_INFORMATION info );
+int PE_unloadImage(HMODULE hModule);
+FARPROC PE_FindExportedFunction(struct wine_modref *wm, LPCSTR funcName, WIN_BOOL snoop);
+WIN_BOOL PE_EnumResourceTypesA(HMODULE, ENUMRESTYPEPROCA, LONG);
+WIN_BOOL PE_EnumResourceTypesW(HMODULE, ENUMRESTYPEPROCW, LONG);
+WIN_BOOL PE_EnumResourceNamesA(HMODULE, LPCSTR, ENUMRESNAMEPROCA, LONG);
+WIN_BOOL PE_EnumResourceNamesW(HMODULE, LPCWSTR, ENUMRESNAMEPROCW, LONG);
+WIN_BOOL PE_EnumResourceLanguagesA(HMODULE, LPCSTR, LPCSTR, ENUMRESLANGPROCA, LONG);
+WIN_BOOL PE_EnumResourceLanguagesW(HMODULE, LPCWSTR, LPCWSTR, ENUMRESLANGPROCW, LONG);
+HRSRC PE_FindResourceExW(struct wine_modref*, LPCWSTR, LPCWSTR, WORD);
+DWORD PE_SizeofResource(HMODULE, HRSRC);
+struct wine_modref *PE_LoadLibraryExA(LPCSTR, DWORD);
+void PE_UnloadLibrary(struct wine_modref *);
+HGLOBAL PE_LoadResource(struct wine_modref *wm, HRSRC);
+HMODULE PE_LoadImage(int hFile, LPCSTR filename, WORD *version);
+struct wine_modref *PE_CreateModule(HMODULE hModule, LPCSTR filename,
+                                    DWORD flags, WIN_BOOL builtin);
+WIN_BOOL PE_CreateProcess(HANDLE hFile, LPCSTR filename, LPCSTR cmd_line, LPCSTR env,
+                          LPSECURITY_ATTRIBUTES psa, LPSECURITY_ATTRIBUTES tsa,
+                          WIN_BOOL inherit, DWORD flags, LPSTARTUPINFOA startup,
+                          LPPROCESS_INFORMATION info);
 
-extern void PE_InitTls(void);
-extern WIN_BOOL PE_InitDLL(struct wine_modref *wm, DWORD type, LPVOID lpReserved);
+void PE_InitTls(void);
+WIN_BOOL PE_InitDLL(struct wine_modref *wm, DWORD type, LPVOID lpReserved);
 
-extern PIMAGE_RESOURCE_DIRECTORY GetResDirEntryA(PIMAGE_RESOURCE_DIRECTORY,LPCSTR,DWORD,WIN_BOOL);
-extern PIMAGE_RESOURCE_DIRECTORY GetResDirEntryW(PIMAGE_RESOURCE_DIRECTORY,LPCWSTR,DWORD,WIN_BOOL);
+PIMAGE_RESOURCE_DIRECTORY GetResDirEntryA(PIMAGE_RESOURCE_DIRECTORY, LPCSTR, DWORD, WIN_BOOL);
+PIMAGE_RESOURCE_DIRECTORY GetResDirEntryW(PIMAGE_RESOURCE_DIRECTORY, LPCWSTR, DWORD, WIN_BOOL);
 
 typedef DWORD CALLBACK (*DLLENTRYPROC)(HMODULE,DWORD,LPVOID);
 
@@ -74,8 +74,8 @@
 	ELF_STDCALL_STUB	*stubs;
 } ELF_MODREF;
 
-extern struct wine_modref *ELF_LoadLibraryExA( LPCSTR libname, DWORD flags);
-extern void ELF_UnloadLibrary(struct wine_modref *);
-extern FARPROC ELF_FindExportedFunction(struct wine_modref *wm, LPCSTR funcName);
+struct wine_modref *ELF_LoadLibraryExA( LPCSTR libname, DWORD flags);
+void ELF_UnloadLibrary(struct wine_modref *);
+FARPROC ELF_FindExportedFunction(struct wine_modref *wm, LPCSTR funcName);
 
 #endif /* MPLAYER_PE_IMAGE_H */
--- a/loader/wine/winnt.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wine/winnt.h	Wed Dec 03 23:01:03 2008 +0000
@@ -1071,15 +1071,15 @@
 struct TEB;
 /*
 #if defined(__i386__) && defined(__GNUC__)
-extern inline struct TEB * WINAPI NtCurrentTeb(void);
-extern inline struct TEB * WINAPI NtCurrentTeb(void)
+inline struct TEB * WINAPI NtCurrentTeb(void);
+inline struct TEB * WINAPI NtCurrentTeb(void)
 {
     struct TEB *teb;
     __asm__(".byte 0x64\n\tmovl (0x18),%0" : "=r" (teb));
     return teb;
 }
 #else
-extern struct TEB * WINAPI NtCurrentTeb(void);
+struct TEB * WINAPI NtCurrentTeb(void);
 #endif
 */
 
--- a/loader/wrapper.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/loader/wrapper.h	Wed Dec 03 23:01:03 2008 +0000
@@ -11,10 +11,10 @@
 
 extern wrapper_func_t report_entry, report_ret;
 
-extern void (*wrapper_target)(void);
+void (*wrapper_target)(void);
 
-extern int wrapper(void);
-extern int null_call(void);
+int wrapper(void);
+int null_call(void);
 
 #endif /* MPLAYER_WRAPPER_H */
 
--- a/mencoder.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/mencoder.c	Wed Dec 03 23:01:03 2008 +0000
@@ -361,7 +361,7 @@
 
 static muxer_t* muxer=NULL;
 
-extern void print_wave_header(WAVEFORMATEX *h, int verbose_level);
+void print_wave_header(WAVEFORMATEX *h, int verbose_level);
 
 int main(int argc,char* argv[]){
 
--- a/mixer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/mixer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -26,7 +26,7 @@
 void mixer_getbalance(mixer_t *mixer, float *bal);
 void mixer_setbalance(mixer_t *mixer, float bal);
 
-//extern void mixer_setbothvolume( int v );
+//void mixer_setbothvolume(int v);
 #define mixer_setbothvolume(m, v) mixer_setvolume(m, v, v)
 
 #endif /* MPLAYER_MIXER_H */
--- a/mp3lib/mp3.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/mp3lib/mp3.h	Wed Dec 03 23:01:03 2008 +0000
@@ -2,18 +2,18 @@
 
 /* decoder level: */
 #ifdef CONFIG_FAKE_MONO
-extern void MP3_Init(int fakemono);
+void MP3_Init(int fakemono);
 #else
-extern void MP3_Init();
+void MP3_Init();
 #endif
-extern int MP3_Open(char *filename,int buffsize);
-extern void MP3_SeekFrame(int num,int dir);
-extern void MP3_SeekForward(int num);
-extern int MP3_PrintTAG(void);
-extern int MP3_DecodeFrame(unsigned char *hova,short single);
-extern int MP3_FillBuffers(void);
-extern void MP3_PrintHeader(void);
-extern void MP3_Close(void);
+int MP3_Open(char *filename, int buffsize);
+void MP3_SeekFrame(int num, int dir);
+void MP3_SeekForward(int num);
+int MP3_PrintTAG(void);
+int MP3_DecodeFrame(unsigned char *hova, short single);
+int MP3_FillBuffers(void);
+void MP3_PrintHeader(void);
+void MP3_Close(void);
 /* public variables: */
 extern int MP3_eof;        // set if EOF reached
 extern int MP3_pause;      // lock playing
@@ -28,8 +28,8 @@
 extern int MP3_bps;
 
 /* player level: */
-extern int  MP3_OpenDevice(char *devname);  /* devname can be NULL for default) */
-extern void MP3_Play(void);
-extern void MP3_Stop(void);
-extern void MP3_CloseDevice(void);
+int  MP3_OpenDevice(char *devname);  /* devname can be NULL for default) */
+void MP3_Play(void);
+void MP3_Stop(void);
+void MP3_CloseDevice(void);
 
--- a/mp3lib/mpg123.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/mp3lib/mpg123.h	Wed Dec 03 23:01:03 2008 +0000
@@ -116,13 +116,13 @@
 extern real mp3lib_decwin[(512+32)];
 extern real *mp3lib_pnts[];
 
-extern int synth_1to1_pent( real *,int,short * );
-extern int synth_1to1_MMX( real *,int,short * );
-extern int synth_1to1_MMX_s(real *, int, short *, short *, int *);
+int synth_1to1_pent( real *, int, short * );
+int synth_1to1_MMX( real *, int, short * );
+int synth_1to1_MMX_s(real *, int, short *, short *, int *);
 
-extern void dct36_3dnow(real *,real *,real *,real *,real *);
-extern void dct36_3dnowex(real *,real *,real *,real *,real *);
-extern void dct36_sse(real *,real *,real *,real *,real *);
+void dct36_3dnow(real *, real *, real *, real *, real *);
+void dct36_3dnowex(real *, real *, real *, real *, real *);
+void dct36_sse(real *, real *, real *, real *, real *);
 
 typedef int (*synth_func_t)( real *,int,short * );
 typedef void (*dct36_func_t)(real *,real *,real *,real *,real *);
--- a/mp3lib/sr1.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/mp3lib/sr1.c	Wed Dec 03 23:01:03 2008 +0000
@@ -51,7 +51,7 @@
 #include "tabinit.c"
 
 #if 1
-extern int mplayer_audio_read(char *buf,int size);
+int mplayer_audio_read(char *buf,int size);
 
 LOCAL int mp3_read(char *buf,int size){
 //  int len=fread(buf,1,size,mp3_file);
@@ -61,7 +61,7 @@
   return len;
 }
 #else
-extern int mp3_read(char *buf,int size);
+int mp3_read(char *buf,int size);
 #endif
 /*
  * Modified for use with MPlayer, for details see the changelog at
@@ -386,11 +386,11 @@
 /******************************************************************************/
 
 /* It's hidden from gcc in assembler */
-extern void dct64_MMX(short *, short *, real *);
-extern void dct64_MMX_3dnow(short *, short *, real *);
-extern void dct64_MMX_3dnowex(short *, short *, real *);
-extern void dct64_sse(short *, short *, real *);
-extern void dct64_altivec(real *, real *, real *);
+void dct64_MMX(short *, short *, real *);
+void dct64_MMX_3dnow(short *, short *, real *);
+void dct64_MMX_3dnowex(short *, short *, real *);
+void dct64_sse(short *, short *, real *);
+void dct64_altivec(real *, real *, real *);
 void (*dct64_MMX_func)(short *, short *, real *);
 
 #include "layer2.c"
--- a/mp_msg.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/mp_msg.c	Wed Dec 03 23:01:03 2008 +0000
@@ -8,7 +8,7 @@
 #ifdef CONFIG_ICONV
 #include <iconv.h>
 #include <errno.h>
-extern char* get_term_charset(void);
+char* get_term_charset(void);
 #endif
 
 #if defined(FOR_MENCODER)
--- a/mplayer.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/mplayer.c	Wed Dec 03 23:01:03 2008 +0000
@@ -124,8 +124,8 @@
 #include "playtree.h"
 #include "playtreeparser.h"
 
-extern int import_playtree_playlist_into_gui(play_tree_t* my_playtree, m_config_t* config);
-extern int import_initial_playtree_into_gui(play_tree_t* my_playtree, m_config_t* config, int enqueue);
+int import_playtree_playlist_into_gui(play_tree_t* my_playtree, m_config_t* config);
+int import_initial_playtree_into_gui(play_tree_t* my_playtree, m_config_t* config, int enqueue);
 
 //**************************************************************************//
 //             Config
@@ -339,7 +339,7 @@
 #ifdef CONFIG_MENU
 #include "m_struct.h"
 #include "libmenu/menu.h"
-extern void vf_menu_pause_update(struct vf_instance_s* vf);
+void vf_menu_pause_update(struct vf_instance_s* vf);
 extern vf_info_t vf_info_menu;
 static vf_info_t* libmenu_vfs[] = {
   &vf_info_menu,
@@ -832,7 +832,7 @@
   exit(1);
 }
 
-extern void mp_input_register_options(m_config_t* cfg);
+void mp_input_register_options(m_config_t* cfg);
 
 #include "cfg-mplayer.h"
 
--- a/mplayer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/mplayer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -47,7 +47,7 @@
 extern int dvdsub_id;
 extern int vobsub_id;
 
-extern void exit_player(const char* how);
-extern void update_set_of_subtitles(void);
+void exit_player(const char* how);
+void update_set_of_subtitles(void);
 
 #endif /* MPLAYER_MPLAYER_H */
--- a/osdep/getch2.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/osdep/getch2.c	Wed Dec 03 23:01:03 2008 +0000
@@ -61,10 +61,10 @@
 #if 0
 #include <termcap.h>
 #else
-  extern int tgetent (char *BUFFER, char *TERMTYPE);
-  extern int tgetnum (char *NAME);
-  extern int tgetflag (char *NAME);
-  extern char *tgetstr (char *NAME, char **AREA);
+int tgetent(char *BUFFER, char *TERMTYPE);
+int tgetnum(char *NAME);
+int tgetflag(char *NAME);
+char *tgetstr(char *NAME, char **AREA);
 #endif
 
 static char term_buffer[4096];
--- a/osdep/getch2.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/osdep/getch2.h	Wed Dec 03 23:01:03 2008 +0000
@@ -12,20 +12,20 @@
 extern char * erase_to_end_of_line;
 
 /* Get screen-size using IOCTL call. */
-extern void get_screen_size(void);
+void get_screen_size(void);
 
 /* Load key definitions from the TERMCAP database. 'termtype' can be NULL */
-extern int load_termcap(char *termtype);
+int load_termcap(char *termtype);
 
 /* Enable and disable STDIN line-buffering */
-extern void getch2_enable(void);
-extern void getch2_disable(void);
+void getch2_enable(void);
+void getch2_disable(void);
 
 /* Read a character or a special key code (see keycodes.h) */
-extern void getch2(void);
+void getch2(void);
 
 /* slave cmd function for Windows and OS/2 */
-extern int mp_input_slave_cmd_func(int fd,char* dest,int size);
+int mp_input_slave_cmd_func(int fd,char* dest,int size);
 
 #if defined(__MINGW32__) || defined(__OS2__)
 #define USE_SELECT  0
--- a/osdep/timer.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/osdep/timer.h	Wed Dec 03 23:01:03 2008 +0000
@@ -13,7 +13,7 @@
 
 /* timer's callback handling */
 typedef void timer_callback( void );
-extern unsigned set_timer_callback(unsigned ms,timer_callback func);
-extern void restore_timer(void);
+unsigned set_timer_callback(unsigned ms,timer_callback func);
+void restore_timer(void);
 
 #endif /* MPLAYER_TIMER_H */
--- a/parser-mpcmd.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/parser-mpcmd.c	Wed Dec 03 23:01:03 2008 +0000
@@ -75,7 +75,7 @@
   int opt_exit = 0; // flag indicating whether mplayer should exit without playing anything
   play_tree_t *last_parent, *last_entry = NULL, *root;
 #ifdef CONFIG_MACOSX_FINDER
-  extern play_tree_t *macosx_finder_args(m_config_t *, int , char **);
+  play_tree_t *macosx_finder_args(m_config_t *, int , char **);
 #endif
 
 #ifdef MP_DEBUG
--- a/stream/cache2.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/cache2.h	Wed Dec 03 23:01:03 2008 +0000
@@ -3,7 +3,7 @@
 
 #include "stream.h"
 
-extern void cache_uninit(stream_t *s);
+void cache_uninit(stream_t *s);
 int cache_do_control(stream_t *stream, int cmd, void *arg);
 
 #endif /* MPLAYER_CACHE2_H */
--- a/stream/cookies.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/cookies.h	Wed Dec 03 23:01:03 2008 +0000
@@ -10,7 +10,7 @@
 
 #include "http.h"
 
-extern void cookies_set(HTTP_header_t * http_hdr, const char *hostname,
-			const char *url);
+void cookies_set(HTTP_header_t * http_hdr, const char *hostname,
+                 const char *url);
 
 #endif /* MPLAYER_COOKIES_H */
--- a/stream/dvbin.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/dvbin.h	Wed Dec 03 23:01:03 2008 +0000
@@ -108,9 +108,9 @@
 #define TUNER_CBL	3
 #define TUNER_ATSC	4
 
-extern int dvb_step_channel(stream_t *, int);
-extern int dvb_set_channel(stream_t *, int, int);
-extern dvb_config_t *dvb_get_config(void);
-extern void dvb_free_config(dvb_config_t *config);
+int dvb_step_channel(stream_t *, int);
+int dvb_set_channel(stream_t *, int, int);
+dvb_config_t *dvb_get_config(void);
+void dvb_free_config(dvb_config_t *config);
 
 #endif /* MPLAYER_DVBIN_H */
--- a/stream/http.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/http.c	Wed Dec 03 23:01:03 2008 +0000
@@ -31,7 +31,7 @@
 extern int stream_cache_size;
 extern int network_bandwidth;
 
-extern int http_seek(stream_t *stream, off_t pos);
+int http_seek(stream_t *stream, off_t pos);
 
 typedef struct {
   unsigned metaint;
--- a/stream/stream_cdda.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/stream_cdda.c	Wed Dec 03 23:01:03 2008 +0000
@@ -88,9 +88,9 @@
   {NULL, NULL, 0, 0, 0, 0, NULL}
 };
 
-extern int cdd_identify(const char *dev);
-extern int cddb_resolve(const char *dev, char **xmcd_file);
-extern cd_info_t* cddb_parse_xmcd(char *xmcd_file);
+int cdd_identify(const char *dev);
+int cddb_resolve(const char *dev, char **xmcd_file);
+cd_info_t* cddb_parse_xmcd(char *xmcd_file);
 
 static int seek(stream_t* s,off_t pos);
 static int fill_buffer(stream_t* s, char* buffer, int max_len);
--- a/stream/stream_dvb.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/stream/stream_dvb.c	Wed Dec 03 23:01:03 2008 +0000
@@ -105,13 +105,13 @@
 
 
 
-extern int dvb_set_ts_filt(int fd, uint16_t pid, dmx_pes_type_t pestype);
-extern int dvb_demux_stop(int fd);
-extern int dvb_get_tuner_type(int fd);
+int dvb_set_ts_filt(int fd, uint16_t pid, dmx_pes_type_t pestype);
+int dvb_demux_stop(int fd);
+int dvb_get_tuner_type(int fd);
 int dvb_open_devices(dvb_priv_t *priv, int n, int demux_cnt);
 int dvb_fix_demuxes(dvb_priv_t *priv, int cnt);
 
-extern int dvb_tune(dvb_priv_t *priv, int freq, char pol, int srate, int diseqc, int tone,
+int dvb_tune(dvb_priv_t *priv, int freq, char pol, int srate, int diseqc, int tone,
 		fe_spectral_inversion_t specInv, fe_modulation_t modulation, fe_guard_interval_t guardInterval,
 		fe_transmit_mode_t TransmissionMode, fe_bandwidth_t bandWidth, fe_code_rate_t HP_CodeRate,
 		fe_code_rate_t LP_CodeRate, fe_hierarchy_t hier, int timeout);
--- a/vidix/dha.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/vidix/dha.h	Wed Dec 03 23:01:03 2008 +0000
@@ -56,29 +56,29 @@
 }pciinfo_t;
 
 /* needed for mga_vid */
-extern int pci_config_read(unsigned char bus, unsigned char dev, unsigned char func,
+int pci_config_read(unsigned char bus, unsigned char dev, unsigned char func,
 			unsigned char cmd, int len, unsigned long *val);
 			/* Fill array pci_list which must have size MAX_PCI_DEVICES
 			   and return 0 if sucessful */
-extern int  pci_scan(pciinfo_t *pci_list,unsigned *num_card);
+int pci_scan(pciinfo_t *pci_list,unsigned *num_card);
 
 
 	    /* Enables/disables accessing to IO space from application side.
 	       Should return 0 if o'k or errno on error. */
-extern int enable_app_io( void );
-extern int disable_app_io( void );
+int enable_app_io(void);
+int disable_app_io(void);
 
-extern unsigned char  INPORT8(unsigned idx);
-extern unsigned short INPORT16(unsigned idx);
-extern unsigned       INPORT32(unsigned idx);
+unsigned char  INPORT8(unsigned idx);
+unsigned short INPORT16(unsigned idx);
+unsigned       INPORT32(unsigned idx);
 #define INPORT(idx) INPORT32(idx)
-extern void          OUTPORT8(unsigned idx,unsigned char val);
-extern void          OUTPORT16(unsigned idx,unsigned short val);
-extern void          OUTPORT32(unsigned idx,unsigned val);
+void          OUTPORT8(unsigned idx, unsigned char val);
+void          OUTPORT16(unsigned idx, unsigned short val);
+void          OUTPORT32(unsigned idx, unsigned val);
 #define OUTPORT(idx,val) OUTPORT32(idx,val)
 
-extern void *  map_phys_mem(unsigned long base, unsigned long size);
-extern void    unmap_phys_mem(void *ptr, unsigned long size);
+void *  map_phys_mem(unsigned long base, unsigned long size);
+void    unmap_phys_mem(void *ptr, unsigned long size);
 
 /*  These are the region types  */
 #define MTRR_TYPE_UNCACHABLE 0
@@ -86,6 +86,6 @@
 #define MTRR_TYPE_WRTHROUGH  4
 #define MTRR_TYPE_WRPROT     5
 #define MTRR_TYPE_WRBACK     6
-extern int	mtrr_set_type(unsigned base,unsigned size,int type);
+int mtrr_set_type(unsigned base, unsigned size, int type);
 
 #endif /* MPLAYER_DHA_H */
--- a/vidix/pci_db2c.awk	Wed Dec 03 20:52:27 2008 +0000
+++ b/vidix/pci_db2c.awk	Wed Dec 03 23:01:03 2008 +0000
@@ -158,8 +158,8 @@
    print "\tconst char *\tname;" >out_file
    print "\tconst struct device_id_s *\tdev_list;" >out_file
    print "};" >out_file
-   print "extern const char *pci_vendor_name(unsigned short id);">out_file
-   print "extern const char *pci_device_name(unsigned short vendor_id, unsigned short device_id);">out_file
+   print "const char *pci_vendor_name(unsigned short id);">out_file
+   print "const char *pci_device_name(unsigned short vendor_id, unsigned short device_id);">out_file
    print "">out_file
    return
 }
--- a/vidix/sis_vid.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/vidix/sis_vid.c	Wed Dec 03 23:01:03 2008 +0000
@@ -167,7 +167,7 @@
 
 /** function declarations **/
 
-extern void sis_init_video_bridge(void);
+void sis_init_video_bridge(void);
 
 
 static void set_overlay(SISOverlayPtr pOverlay, int index);
--- a/vidix/sysdep/AsmMacros_alpha.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/vidix/sysdep/AsmMacros_alpha.h	Wed Dec 03 23:01:03 2008 +0000
@@ -66,12 +66,12 @@
 #include <sys/io.h>
 #elif defined (__FreeBSD__)
 #include <sys/types.h>
-extern void outb(u_int32_t port, u_int8_t val);
-extern void outw(u_int32_t port, u_int16_t val);
-extern void outl(u_int32_t port, u_int32_t val);
-extern u_int8_t inb(u_int32_t port);
-extern u_int16_t inw(u_int32_t port);
-extern u_int32_t inl(u_int32_t port);
+void outb(u_int32_t port, u_int8_t val);
+void outw(u_int32_t port, u_int16_t val);
+void outl(u_int32_t port, u_int32_t val);
+u_int8_t inb(u_int32_t port);
+u_int16_t inw(u_int32_t port);
+u_int32_t inl(u_int32_t port);
 #else
 #error This stuff is not ported on your system
 #endif
--- a/vidix/sysdep/pci_win32.c	Wed Dec 03 20:52:27 2008 +0000
+++ b/vidix/sysdep/pci_win32.c	Wed Dec 03 23:01:03 2008 +0000
@@ -31,7 +31,7 @@
 #include "vidix/dhahelperwin/dhahelper.h"
 
 static HANDLE hDriver;
-extern int IsWinNT();
+int IsWinNT();
 
 
 
--- a/vobsub.h	Wed Dec 03 20:52:27 2008 +0000
+++ b/vobsub.h	Wed Dec 03 23:01:03 2008 +0000
@@ -1,30 +1,30 @@
 #ifndef MPLAYER_VOBSUB_H
 #define MPLAYER_VOBSUB_H
 
-extern void *vobsub_open(const char *subname, const char *const ifo, const int force, void** spu);
-extern void vobsub_reset(void *vob);
-extern int vobsub_parse_ifo(void* this, const char *const name, unsigned int *palette, unsigned int *width, unsigned int *height, int force, int sid, char *langid);
-extern int vobsub_get_packet(void *vobhandle, float pts,void** data, int* timestamp);
-extern int vobsub_get_next_packet(void *vobhandle, void** data, int* timestamp);
-extern void vobsub_close(void *this);
-extern unsigned int vobsub_get_indexes_count(void * /* vobhandle */);
-extern char *vobsub_get_id(void * /* vobhandle */, unsigned int /* index */);
+void *vobsub_open(const char *subname, const char *const ifo, const int force, void** spu);
+void vobsub_reset(void *vob);
+int vobsub_parse_ifo(void* this, const char *const name, unsigned int *palette, unsigned int *width, unsigned int *height, int force, int sid, char *langid);
+int vobsub_get_packet(void *vobhandle, float pts,void** data, int* timestamp);
+int vobsub_get_next_packet(void *vobhandle, void** data, int* timestamp);
+void vobsub_close(void *this);
+unsigned int vobsub_get_indexes_count(void * /* vobhandle */);
+char *vobsub_get_id(void * /* vobhandle */, unsigned int /* index */);
 
 /// Get vobsub id by its index in the valid streams.
-extern int vobsub_get_id_by_index(void *vobhandle, unsigned int index);
+int vobsub_get_id_by_index(void *vobhandle, unsigned int index);
 /// Get index in the valid streams by vobsub id.
-extern int vobsub_get_index_by_id(void *vobhandle, int id);
+int vobsub_get_index_by_id(void *vobhandle, int id);
 
 /// Convert palette value in idx file to yuv.
 unsigned int vobsub_palette_to_yuv(unsigned int pal);
 /// Convert rgb value to yuv.
 unsigned int vobsub_rgb_to_yuv(unsigned int rgb);
 
-extern void *vobsub_out_open(const char *basename, const unsigned int *palette, unsigned int orig_width, unsigned int orig_height, const char *id, unsigned int index);
-extern void vobsub_out_output(void *me, const unsigned char *packet, int len, double pts);
-extern void vobsub_out_close(void *me);
-extern int vobsub_set_from_lang(void *vobhandle, unsigned char * lang);
-extern void vobsub_seek(void * vobhandle, float pts);
+void *vobsub_out_open(const char *basename, const unsigned int *palette, unsigned int orig_width, unsigned int orig_height, const char *id, unsigned int index);
+void vobsub_out_output(void *me, const unsigned char *packet, int len, double pts);
+void vobsub_out_close(void *me);
+int vobsub_set_from_lang(void *vobhandle, unsigned char * lang);
+void vobsub_seek(void * vobhandle, float pts);
 
 #endif /* MPLAYER_VOBSUB_H */