. --overlay and --fulscreen options (only work with --vout sdl)
. the vlc exits after the end of the stream, which prevents from having
to kill it and relaunch it during a presentation, just script it like :
for i in ~/mpeg/* ; do vlc --fullscreen --overlay --vout sdl $i ; done
Yes, I know the --overlay stuff is fucking ugly. But *I* am not the one
who redefines vout_sys_t in an interface-related source file. I won't
change it until the vout/intf is finished being rewritten.
Additional information: if "--overlay --fulscreen" doesn't center your
picture, try with your screen geometry, eg:
"--overlay --fullscreen --width 1024 --height 768"
AC_SUBST(VLC_VERSION)
VLC_CODENAME=Urumov
AC_SUBST(VLC_CODENAME)
AC_SUBST(VLC_VERSION)
VLC_CODENAME=Urumov
AC_SUBST(VLC_CODENAME)
-vlc (0.2.5-1) unstable; urgency=low
+vlc (0.2.50-1) unstable; urgency=low
- -- Samuel Hocevar <sam@zoy.org> Fri, 19 Jan 2001 05:16:58 +0100
+ -- Samuel Hocevar <sam@zoy.org> Wed, 31 Jan 2001 04:30:37 +0100
vlc (0.1.99i) unstable; urgency=low
vlc (0.1.99i) unstable; urgency=low
.B \-g, \-\-grayscale
Grayscale output.
.TP
.B \-g, \-\-grayscale
Grayscale output.
.TP
+.B \-\-fullscreen
+Full screen output.
+.TP
+.B \-\-overlay
+Overlay (hardware accelerated output), if available.
+.TP
.B \-\-color
Color output.
.TP
.B \-\-color
Color output.
.TP
vlc_height=<height> dislay height
vlc_fb_dev=<filename> framebuffer device
vlc_grayscale={1|0} grayscale or color
vlc_height=<height> dislay height
vlc_fb_dev=<filename> framebuffer device
vlc_grayscale={1|0} grayscale or color
+ vlc_fullscreen={1|0} full screen
+ vlc_overlay={1|0} overlay
vlc_idct=<method name> IDCT method
vlc_yuv=<method name> YUV method
vlc_synchro={I|I+|IP|IP+|IPB} synchro algorithm
vlc_idct=<method name> IDCT method
vlc_yuv=<method name> YUV method
vlc_synchro={I|I+|IP|IP+|IPB} synchro algorithm
#define VOUT_GRAYSCALE_VAR "vlc_grayscale"
#define VOUT_GRAYSCALE_DEFAULT 0
#define VOUT_GRAYSCALE_VAR "vlc_grayscale"
#define VOUT_GRAYSCALE_DEFAULT 0
+/* Environment variable for fullscreen mode, and default value */
+#define VOUT_FULLSCREEN_VAR "vlc_fullscreen"
+#define VOUT_FULLSCREEN_DEFAULT 0
+
+/* Environment variable for overlay mode, and default value */
+#define VOUT_OVERLAY_VAR "vlc_overlay"
+#define VOUT_OVERLAY_DEFAULT 0
+
/* Default gamma */
#define VOUT_GAMMA 0.
/* Default gamma */
#define VOUT_GAMMA 0.
* intf_sdl.c: SDL interface plugin
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
* intf_sdl.c: SDL interface plugin
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
- * $Id: intf_sdl.c,v 1.23 2001/01/15 12:42:57 reno Exp $
+ * $Id: intf_sdl.c,v 1.24 2001/01/31 03:42:39 sam Exp $
+/* FIXME: SOME CLUELESS MORON DEFINED THIS STRUCTURE IN VOUT_SDL.C AS WELL */
typedef struct vout_sys_s
{
int i_width;
typedef struct vout_sys_s
{
int i_width;
SDL_Surface * p_display; /* display device */
SDL_Overlay * p_overlay;
boolean_t b_fullscreen;
SDL_Surface * p_display; /* display device */
SDL_Overlay * p_overlay;
boolean_t b_fullscreen;
boolean_t b_reopen_display;
boolean_t b_toggle_fullscreen;
Uint8 * p_buffer[2];
boolean_t b_reopen_display;
boolean_t b_toggle_fullscreen;
Uint8 * p_buffer[2];
{
SDL_Event event; /* SDL event */
Uint8 i_key;
{
SDL_Event event; /* SDL event */
Uint8 i_key;
+
+ if( p_intf->p_vout->p_sys->b_overlay )
+ {
+ intf_SDL_YUVSwitch(p_intf);
+ p_intf->p_vout->p_sys->b_overlay = 0;
+ }
+
while ( SDL_PollEvent(&event) )
{
i_key = event.key.keysym.sym; /* forward it */
while ( SDL_PollEvent(&event) )
{
i_key = event.key.keysym.sym; /* forward it */
{
vlc_mutex_lock( &p_intf->p_vout->change_lock );
p_intf->p_vout->b_need_render = 1 - p_intf->p_vout->b_need_render;
{
vlc_mutex_lock( &p_intf->p_vout->change_lock );
p_intf->p_vout->b_need_render = 1 - p_intf->p_vout->b_need_render;
- intf_DbgMsg( "need render now : '%d'",p_intf->p_vout->b_need_render);
p_intf->p_vout->p_sys->b_reopen_display = 1;
vlc_mutex_unlock( &p_intf->p_vout->change_lock );
}
p_intf->p_vout->p_sys->b_reopen_display = 1;
vlc_mutex_unlock( &p_intf->p_vout->change_lock );
}
* This structure is part of the video output thread descriptor.
* It describes the SDL specific properties of an output thread.
*****************************************************************************/
* This structure is part of the video output thread descriptor.
* It describes the SDL specific properties of an output thread.
*****************************************************************************/
+/* FIXME: SOME CLUELESS MORON DEFINED THIS STRUCTURE IN INTF_SDL.C AS WELL */
typedef struct vout_sys_s
{
int i_width;
typedef struct vout_sys_s
{
int i_width;
SDL_Surface * p_display; /* display device */
SDL_Overlay * p_overlay; /* overlay device */
boolean_t b_fullscreen;
SDL_Surface * p_display; /* display device */
SDL_Overlay * p_overlay; /* overlay device */
boolean_t b_fullscreen;
boolean_t b_reopen_display;
boolean_t b_toggle_fullscreen;
Uint8 * p_buffer[2];
boolean_t b_reopen_display;
boolean_t b_toggle_fullscreen;
Uint8 * p_buffer[2];
and it's impossible to switch between soft/hard yuv */
p_vout->b_need_render = 1;
and it's impossible to switch between soft/hard yuv */
p_vout->b_need_render = 1;
- if(psz_display != NULL && strcmp(psz_display,"fullscreen")==0)
- {
- p_vout->p_sys->b_fullscreen = 1;
- }
- else
- {
- p_vout->p_sys->b_fullscreen = 0;
- }
-
+ p_vout->p_sys->b_fullscreen = main_GetIntVariable( VOUT_FULLSCREEN_VAR,
+ VOUT_FULLSCREEN_DEFAULT );
+ p_vout->p_sys->b_overlay = main_GetIntVariable( VOUT_OVERLAY_VAR,
+ VOUT_OVERLAY_DEFAULT );
p_vout->p_sys->i_width = main_GetIntVariable( VOUT_WIDTH_VAR,
VOUT_WIDTH_DEFAULT );
p_vout->p_sys->i_height = main_GetIntVariable( VOUT_HEIGHT_VAR,
p_vout->p_sys->i_width = main_GetIntVariable( VOUT_WIDTH_VAR,
VOUT_WIDTH_DEFAULT );
p_vout->p_sys->i_height = main_GetIntVariable( VOUT_HEIGHT_VAR,
SDL_YV12_OVERLAY,
p_vout->p_sys->p_display
);
SDL_YV12_OVERLAY,
p_vout->p_sys->p_display
);
- intf_Msg("vout: YUV acceleration set to %d,",
- p_vout->p_sys->p_overlay->hw_overlay);
+ intf_Msg("vout: YUV acceleration %s",
+ p_vout->p_sys->p_overlay->hw_overlay
+ ? "activated" : "unavailable !" );
}
SDL_LockYUVOverlay(p_vout->p_sys->p_overlay);
}
SDL_LockYUVOverlay(p_vout->p_sys->p_overlay);
+ while(!p_intf->b_die && (p_intf->p_input != NULL) )
{
/* Flush waiting messages */
intf_FlushMsg();
{
/* Flush waiting messages */
intf_FlushMsg();
/* Long options return values - note that values corresponding to short options
* chars, and in general any regular char, should be avoided */
#define OPT_NOAUDIO 150
/* Long options return values - note that values corresponding to short options
* chars, and in general any regular char, should be avoided */
#define OPT_NOAUDIO 150
-#define OPT_AOUT 151
-#define OPT_STEREO 152
-#define OPT_MONO 153
+#define OPT_STEREO 151
+#define OPT_MONO 152
-#define OPT_VOUT 161
-#define OPT_DISPLAY 162
-#define OPT_WIDTH 163
-#define OPT_HEIGHT 164
-#define OPT_COLOR 165
-#define OPT_MOTION 167
-#define OPT_IDCT 168
-#define OPT_YUV 169
+#define OPT_DISPLAY 161
+#define OPT_WIDTH 162
+#define OPT_HEIGHT 163
+#define OPT_COLOR 164
+#define OPT_FULLSCREEN 165
+#define OPT_OVERLAY 166
#define OPT_VLANS 170
#define OPT_SERVER 171
#define OPT_VLANS 170
#define OPT_SERVER 171
#define OPT_BROADCAST 173
#define OPT_DVD 174
#define OPT_BROADCAST 173
#define OPT_DVD 174
+#define OPT_AOUT 180
+#define OPT_VOUT 181
+#define OPT_MOTION 182
+#define OPT_IDCT 183
+#define OPT_YUV 184
+#define OPT_SYNCHRO 190
+#define OPT_WARNING 191
/* Usage fashion */
#define USAGE 0
/* Usage fashion */
#define USAGE 0
{ "motion", 1, 0, OPT_MOTION },
{ "idct", 1, 0, OPT_IDCT },
{ "yuv", 1, 0, OPT_YUV },
{ "motion", 1, 0, OPT_MOTION },
{ "idct", 1, 0, OPT_IDCT },
{ "yuv", 1, 0, OPT_YUV },
+ { "fullscreen", 0, 0, OPT_FULLSCREEN },
+ { "overlay", 0, 0, OPT_OVERLAY },
/* DVD options */
{ "dvdaudio", 1, 0, 'a' },
/* DVD options */
{ "dvdaudio", 1, 0, 'a' },
case OPT_HEIGHT: /* --height */
main_PutPszVariable( VOUT_HEIGHT_VAR, optarg );
break;
case OPT_HEIGHT: /* --height */
main_PutPszVariable( VOUT_HEIGHT_VAR, optarg );
break;
case 'g': /* -g, --grayscale */
main_PutIntVariable( VOUT_GRAYSCALE_VAR, 1 );
break;
case OPT_COLOR: /* --color */
main_PutIntVariable( VOUT_GRAYSCALE_VAR, 0 );
break;
case 'g': /* -g, --grayscale */
main_PutIntVariable( VOUT_GRAYSCALE_VAR, 1 );
break;
case OPT_COLOR: /* --color */
main_PutIntVariable( VOUT_GRAYSCALE_VAR, 0 );
break;
+ case OPT_FULLSCREEN: /* --fullscreen */
+ main_PutIntVariable( VOUT_FULLSCREEN_VAR, 1 );
+ break;
+ case OPT_OVERLAY: /* --overlay */
+ main_PutIntVariable( VOUT_OVERLAY_VAR, 1 );
+ break;
case OPT_MOTION: /* --motion */
main_PutPszVariable( MOTION_METHOD_VAR, optarg );
break;
case OPT_MOTION: /* --motion */
main_PutPszVariable( MOTION_METHOD_VAR, optarg );
break;
"\n " VOUT_HEIGHT_VAR "=<height> \tdislay height"
"\n " VOUT_FB_DEV_VAR "=<filename> \tframebuffer device path"
"\n " VOUT_GRAYSCALE_VAR "={1|0} \tgrayscale or color output"
"\n " VOUT_HEIGHT_VAR "=<height> \tdislay height"
"\n " VOUT_FB_DEV_VAR "=<filename> \tframebuffer device path"
"\n " VOUT_GRAYSCALE_VAR "={1|0} \tgrayscale or color output"
+ "\n " VOUT_FULLSCREEN_VAR "={1|0} \tfullscreen"
+ "\n " VOUT_OVERLAY_VAR "={1|0} \toverlay"
"\n " MOTION_METHOD_VAR "=<method name> \tmotion compensation method"
"\n " IDCT_METHOD_VAR "=<method name> \tIDCT method"
"\n " YUV_METHOD_VAR "=<method name> \tYUV method"
"\n " MOTION_METHOD_VAR "=<method name> \tmotion compensation method"
"\n " IDCT_METHOD_VAR "=<method name> \tIDCT method"
"\n " YUV_METHOD_VAR "=<method name> \tYUV method"
- "\n " VPAR_SYNCHRO_VAR "={I|I+|IP|IP+|IPB} \tsynchro algorithm" );
+ "\n " VPAR_SYNCHRO_VAR "={I|I+|IP|IP+|IPB} \tsynchro algorithm"
+ );
/* DVD parameters */
intf_Msg( "\nDVD parameters:"
/* DVD parameters */
intf_Msg( "\nDVD parameters:"
Release: 1
Copyright: GPL
Url: http://www.videolan.org/
Group: X11/Applications/Graphics
Release: 1
Copyright: GPL
Url: http://www.videolan.org/
Group: X11/Applications/Graphics
-Source0: http://www.videolan.org/packages/0.1.99i/vlc-0.1.99i.tar.gz
+Source0: http://www.videolan.org/packages/0.2.50/vlc_0.2.50-1.tar.gz
Packager: Samuel Hocevar <sam@zoy.org>
Buildroot: /tmp/vlc-build
Packager: Samuel Hocevar <sam@zoy.org>
Buildroot: /tmp/vlc-build