Commit fdd0e7d3 authored by Sam Hocevar's avatar Sam Hocevar

  * Commited Shane's XVideo patches. It works here (tm).
  * Fixed the XVideo aspect ratio (AR_SQUARE_PICTURE means square pixels,
    not square image).
parent 2715946f
...@@ -4,6 +4,10 @@ ...@@ -4,6 +4,10 @@
HEAD HEAD
* Misc XVideo fixes (aspect ratio, mouse pointer, blue areas).
* AC3 decoder enhancements.
* Fixed an alignment issue in the bitstream callback.
* Got rid of asprintf.
* XVideo fullscreen mode by David Kennedy <dkennedy@tinytoad.com>. * XVideo fullscreen mode by David Kennedy <dkennedy@tinytoad.com>.
* X11 fullscreen mode by David Kennedy <dkennedy@tinytoad.com>. * X11 fullscreen mode by David Kennedy <dkennedy@tinytoad.com>.
* Fixed build process when no plugins or no builtins were chosen. * Fixed build process when no plugins or no builtins were chosen.
......
This diff is collapsed.
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* input_clock.c: Clock/System date convertions, stream management * input_clock.c: Clock/System date convertions, stream management
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN * Copyright (C) 1999, 2000 VideoLAN
* $Id: input_clock.c,v 1.9 2001/04/06 09:15:47 sam Exp $ * $Id: input_clock.c,v 1.10 2001/04/26 03:55:44 sam Exp $
* *
* Authors: Christophe Massiot <massiot@via.ecp.fr> * Authors: Christophe Massiot <massiot@via.ecp.fr>
* *
...@@ -177,25 +177,45 @@ void input_ClockManageRef( input_thread_t * p_input, ...@@ -177,25 +177,45 @@ void input_ClockManageRef( input_thread_t * p_input,
/* Now take into account interface changes. */ /* Now take into account interface changes. */
vlc_mutex_lock( &p_input->stream.stream_lock ); vlc_mutex_lock( &p_input->stream.stream_lock );
if( p_input->stream.i_new_status != UNDEF_S )
if( p_input->stream.i_new_status == PAUSE_S )
{ {
int i_old_status;
vlc_mutex_lock( &p_input->stream.control.control_lock );
i_old_status = p_input->stream.control.i_status;
p_input->stream.control.i_status = PAUSE_S;
vlc_cond_wait( &p_input->stream.stream_wait,
&p_input->stream.stream_lock );
ClockNewRef( p_input, p_pgrm, i_clock, mdate() );
if( p_input->stream.i_new_status == PAUSE_S ) if( p_input->stream.i_new_status == PAUSE_S )
{ {
vlc_cond_wait( &p_input->stream.stream_wait, /* PAUSE_S undoes the pause state: Return to old state. */
&p_input->stream.stream_lock ); p_input->stream.control.i_status = i_old_status;
ClockNewRef( p_input, p_pgrm, i_clock, mdate() ); p_input->stream.i_new_status = UNDEF_S;
} p_input->stream.i_new_rate = UNDEF_S;
else
{
ClockNewRef( p_input, p_pgrm, i_clock,
ClockToSysdate( p_input, p_pgrm, i_clock ) );
} }
/* We handle i_new_status != PAUSE_S below... */
vlc_mutex_unlock( &p_input->stream.control.control_lock );
}
if( p_input->stream.i_new_status != UNDEF_S )
{
vlc_mutex_lock( &p_input->stream.control.control_lock ); vlc_mutex_lock( &p_input->stream.control.control_lock );
p_input->stream.control.i_status = p_input->stream.i_new_status; p_input->stream.control.i_status = p_input->stream.i_new_status;
if( p_input->stream.control.i_status != PLAYING_S ClockNewRef( p_input, p_pgrm, i_clock,
&& p_input->stream.control.i_status != PAUSE_S ) ClockToSysdate( p_input, p_pgrm, i_clock ) );
if( p_input->stream.control.i_status == PLAYING_S )
{
p_input->stream.control.i_rate = DEFAULT_RATE;
p_input->stream.control.b_mute = 0;
}
else
{ {
p_input->stream.control.i_rate = p_input->stream.i_new_rate; p_input->stream.control.i_rate = p_input->stream.i_new_rate;
p_input->stream.control.b_mute = 1; p_input->stream.control.b_mute = 1;
...@@ -204,16 +224,13 @@ void input_ClockManageRef( input_thread_t * p_input, ...@@ -204,16 +224,13 @@ void input_ClockManageRef( input_thread_t * p_input,
* discontinuities. */ * discontinuities. */
input_EscapeAudioDiscontinuity( p_input, p_pgrm ); input_EscapeAudioDiscontinuity( p_input, p_pgrm );
} }
else
{
p_input->stream.control.i_rate = DEFAULT_RATE;
p_input->stream.control.b_mute = 0;
}
vlc_mutex_unlock( &p_input->stream.control.control_lock );
p_input->stream.i_new_status = UNDEF_S; p_input->stream.i_new_status = UNDEF_S;
p_input->stream.i_new_rate = UNDEF_S; p_input->stream.i_new_rate = UNDEF_S;
vlc_mutex_unlock( &p_input->stream.control.control_lock );
} }
vlc_mutex_unlock( &p_input->stream.stream_lock ); vlc_mutex_unlock( &p_input->stream.stream_lock );
} }
else else
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment