Alsa Compile Problems & Checking for GTKMM

David Hough <[email protected]> Wed, 04 Feb 2004 20:23:10 -0000
Newsgroups gmane.comp.audio.zinf.devel
Message-ID <[email protected]>
hi,

I've added checking for GTKMM to configure.ac and also made it only check 
for boost and GTKMM when the experimental flag is specified. I'm assuming 
that boost is still only used in the mdb and browsermm code, if its not 
I'll move it back out.

Also, the alsa plugin now refuses to compile with version of alsa earlier 
then v1-0-0pre1. Below is a patch I think makes it compile with both old 
and new versions of alsa. I've reversed the recent patch to make it 
compile with new versions and instead done a define that tells alsa we are 
using old api's. I think its possible to tell alsa we're using new api's 
instead and not reverse the patch, but I'm guessing that as the plugin was 
originally designed for the old api's, there's less chance of things 
breaking if we stick to the old api for the moment.

David

Index: io/alsa/unix/linux/include/alsapmo.h
===================================================================
RCS file: /cvsroot/zinf/zinf/io/alsa/unix/linux/include/alsapmo.h,v
retrieving revision 1.15
diff -u -r1.15 alsapmo.h
--- io/alsa/unix/linux/include/alsapmo.h	27 Jan 2004 02:25:39 -0000	1.15
+++ io/alsa/unix/linux/include/alsapmo.h	4 Feb 2004 19:41:17 -0000
@@ -111,8 +111,7 @@
      int		m_iChannel;
      snd_pcm_t	*m_handle;
      FAContext   *m_context;
-    int		m_channels, m_samplesPerFrame;
-    unsigned    m_samples;
+    int		m_channels, m_samples, m_samplesPerFrame;
      long int		totalWrittenToALSABuffer;
  };

Index: io/alsa/unix/linux/src/alsapmo.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/io/alsa/unix/linux/src/alsapmo.cpp,v
retrieving revision 1.29
diff -u -r1.29 alsapmo.cpp
--- io/alsa/unix/linux/src/alsapmo.cpp	27 Jan 2004 02:25:40 -0000	1.29
+++ io/alsa/unix/linux/src/alsapmo.cpp	4 Feb 2004 19:41:18 -0000
@@ -32,7 +32,8 @@
  ____________________________________________________________________________*/

  /* system headers */
  #include <stdlib.h>
+#define ALSA_PCM_OLD_HW_PARAMS_API 1
  #include <alsa/asoundlib.h>
  #include <ctype.h>
  #include <errno.h>
@@ -78,7 +79,7 @@

     m_handle = NULL;
     m_channels = -1;
-   m_samples = 0;
+   m_samples = 
-1;
      snd_mixer_elem_t *selem;
      snd_mixer_selem_id_t *m_sid;
      snd_mixer_selem_id_alloca(&m_sid);
@@ -238,7 +239,7 @@
      err = snd_pcm_hw_params_set_format(m_handle, params, 
SND_PCM_FORMAT_S16_BE);
  #endif
      err = snd_pcm_hw_params_set_channels(m_handle, params, m_channels);
-    err = snd_pcm_hw_params_set_rate_near(m_handle, params, &m_samples, 
0);
+    err = snd_pcm_hw_params_set_rate_near(m_handle, params, m_samples, 0);
      err = snd_pcm_hw_params_set_period_size(m_handle, 
params,m_iDataSize/16, 0);
      err = snd_pcm_hw_params(m_handle, params);
      if (err < 0){


-- 
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/


-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn