Commit 8f3d5d03 authored by Rafaël Carré's avatar Rafaël Carré

alsa: sets period size before buffer size, patch by Matthias P. Nowak

parent 5c358414
......@@ -148,6 +148,7 @@ Mateus Krepsky Ludwich <mateus @t csp dot com d.t br> - rc interface mosaic-orde
Mathias C. Berens | welcome-soft <berens at welcome-soft.de> - German translation
Mathias Kretschmer <mathias at research.att.com> - IP Multicast support
Mats Rojestal <mats.rojestal at bredband dot net> - compilation fixes for Solaris 9
Matthias P. Nowak <mpnowak at broadpark dot no> - ALSA 5.1 fix
Matthieu Lochegnies <prof at tocard dot org> - MPEG audio emphasis fix
Max Rudberg <max_08 at mac.com> - Mac OS X controller art (v0.7.0)
Meelad Zakaria <meelad at farsiweb dot info> - Persian localisation
......
......@@ -585,34 +585,34 @@ static int Open( vlc_object_t *p_this )
p_aout->output.output.i_rate );
}
/* Set buffer size. */
/* Set period size. */
#ifdef HAVE_ALSA_NEW_API
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, &i_buffer_size ) ) < 0 )
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, &i_period_size, NULL ) ) < 0 )
#else
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, i_buffer_size ) ) < 0 )
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, i_period_size, NULL ) ) < 0 )
#endif
{
msg_Err( p_aout, "unable to set buffer size (%s)",
msg_Err( p_aout, "unable to set period size (%s)",
snd_strerror( i_snd_rc ) );
goto error;
}
p_aout->output.i_nb_samples = i_period_size;
/* Set period size. */
/* Set buffer size. */
#ifdef HAVE_ALSA_NEW_API
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, &i_period_size, NULL ) ) < 0 )
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, &i_buffer_size ) ) < 0 )
#else
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, i_period_size, NULL ) ) < 0 )
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, i_buffer_size ) ) < 0 )
#endif
{
msg_Err( p_aout, "unable to set period size (%s)",
msg_Err( p_aout, "unable to set buffer size (%s)",
snd_strerror( i_snd_rc ) );
goto error;
}
p_aout->output.i_nb_samples = i_period_size;
/* Commit hardware parameters. */
if ( ( i_snd_rc = snd_pcm_hw_params( p_sys->p_snd_pcm, p_hw ) ) < 0 )
......
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