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 ...@@ -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 C. Berens | welcome-soft <berens at welcome-soft.de> - German translation
Mathias Kretschmer <mathias at research.att.com> - IP Multicast support Mathias Kretschmer <mathias at research.att.com> - IP Multicast support
Mats Rojestal <mats.rojestal at bredband dot net> - compilation fixes for Solaris 9 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 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) Max Rudberg <max_08 at mac.com> - Mac OS X controller art (v0.7.0)
Meelad Zakaria <meelad at farsiweb dot info> - Persian localisation Meelad Zakaria <meelad at farsiweb dot info> - Persian localisation
......
...@@ -585,34 +585,34 @@ static int Open( vlc_object_t *p_this ) ...@@ -585,34 +585,34 @@ static int Open( vlc_object_t *p_this )
p_aout->output.output.i_rate ); p_aout->output.output.i_rate );
} }
/* Set buffer size. */ /* Set period size. */
#ifdef HAVE_ALSA_NEW_API #ifdef HAVE_ALSA_NEW_API
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm, if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, &i_buffer_size ) ) < 0 ) p_hw, &i_period_size, NULL ) ) < 0 )
#else #else
if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm, if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm,
p_hw, i_buffer_size ) ) < 0 ) p_hw, i_period_size, NULL ) ) < 0 )
#endif #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 ) ); snd_strerror( i_snd_rc ) );
goto error; goto error;
} }
p_aout->output.i_nb_samples = i_period_size;
/* Set period size. */ /* Set buffer size. */
#ifdef HAVE_ALSA_NEW_API #ifdef HAVE_ALSA_NEW_API
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm, if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, &i_period_size, NULL ) ) < 0 ) p_hw, &i_buffer_size ) ) < 0 )
#else #else
if ( ( i_snd_rc = snd_pcm_hw_params_set_period_size_near( p_sys->p_snd_pcm, if ( ( i_snd_rc = snd_pcm_hw_params_set_buffer_size_near( p_sys->p_snd_pcm,
p_hw, i_period_size, NULL ) ) < 0 ) p_hw, i_buffer_size ) ) < 0 )
#endif #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 ) ); snd_strerror( i_snd_rc ) );
goto error; goto error;
} }
p_aout->output.i_nb_samples = i_period_size;
/* Commit hardware parameters. */ /* Commit hardware parameters. */
if ( ( i_snd_rc = snd_pcm_hw_params( p_sys->p_snd_pcm, p_hw ) ) < 0 ) 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