OSDN Git Service

Reverted back the PCM API.
authorJaroslav Kysela <perex@perex.cz>
Thu, 19 Sep 2002 16:12:13 +0000 (16:12 +0000)
committerJaroslav Kysela <perex@perex.cz>
Thu, 19 Sep 2002 16:12:13 +0000 (16:12 +0000)
New snd_pcm_hw_params_* functions are available only explicitly when
ALSA_PCM_NEW_HW_PARAMS_API is defined.
Updated documentation and test code to new API.

15 files changed:
acconfig.h
aserver/aserver.c
configure.in
doc/doxygen.cfg
include/Makefile.am
include/aserver.h
include/pcm.h
src/Versions
src/control/control_shm.c
src/pcm/pcm.c
src/pcm/pcm_hw.c
src/pcm/pcm_shm.c
src/seq/seq_midi_event.c
test/latency.c
test/pcm.c

index 5a36ae5..748cd6a 100644 (file)
@@ -18,6 +18,3 @@
 
 /* Use versioned symbols for shared library? */
 #undef VERSIONED_SYMBOLS
-
-/* 0.9.0rc3 compatibility build */
-#undef COMPATIBILITY_BUILD_RC3
index f024138..230c9eb 100644 (file)
@@ -1117,7 +1117,7 @@ int main(int argc, char **argv)
                ERROR("Cannot resolve %s", host);
                return 1;
        }
-       if (!is_local(h)) {
+       if (!snd_is_local(h)) {
                ERROR("%s is not the local host", host);
                return 1;
        }
index 35bffd4..cd3be4c 100644 (file)
@@ -9,7 +9,7 @@ dnl remove API = c+1:0:0
 dnl *************************************************
 AC_CANONICAL_SYSTEM
 AM_INIT_AUTOMAKE(alsa-lib, 0.9.0rc3)
-eval LIBTOOL_VERSION_INFO="3:0:0"
+eval LIBTOOL_VERSION_INFO="2:0:0"
 dnl *************************************************
 AM_CONDITIONAL(INSTALL_M4, test -n "${ACLOCAL}")
 
@@ -176,19 +176,6 @@ arm*)
   ;;
 esac
 
-dnl Compatibility build, to be removed....
-AC_MSG_CHECKING(for 0.9.0rc3 compatibility build)
-AC_ARG_WITH(compat-rc3,
-  [  --with-compat-rc3       build library compatible with 0.9.0rc3],
-  [  AC_DEFINE(COMPATIBILITY_BUILD_RC3, "1", [0.9.0rc3 compatibility build])
-     comp_rc3="yes" ],)
-if test "$comp_rc3" = "yes" ; then
-  AC_MSG_RESULT(yes)
-else
-  AC_MSG_RESULT(no)
-fi
-AM_CONDITIONAL(COMPATIBILITY_BUILD_RC3, [test "x$comp_rc3" = xyes])
-
 AC_OUTPUT(Makefile doc/Makefile doc/pictures/Makefile include/Makefile src/Makefile \
           src/control/Makefile src/mixer/Makefile src/pcm/Makefile \
          src/rawmidi/Makefile src/timer/Makefile \
index 5a037d4..ccd4683 100644 (file)
@@ -89,7 +89,7 @@ SHOW_INCLUDE_FILES = NO
 JAVADOC_AUTOBRIEF = NO
 INHERIT_DOCS    = YES
 ENABLED_SECTIONS = ""
-PREDEFINED      = DOXYGEN PIC "DOC_HIDDEN" "ATTRIBUTE_UNUSED="
+PREDEFINED      = DOXYGEN PIC "DOC_HIDDEN" "ATTRIBUTE_UNUSED=" ALSA_PCM_NEW_HW_PARAMS_API
 
 OPTIMIZE_OUTPUT_FOR_C = YES    # doxygen 1.2.6 option
 
index c764436..ab60280 100644 (file)
@@ -1,14 +1,6 @@
 sysincludedir = ${includedir}/sys
 alsaincludedir = ${includedir}/alsa
 
-if COMPATIBILITY_BUILD_RC3
-  SND_LIB_MAJOR = 0
-  SND_LIB_MINOR = 9
-  SND_LIB_SUBMINOR = 0
-  SND_LIB_EXTRAVER = 100000  # there was a bug....
-  SND_LIB_VERSION = 0.9.0rc3
-endif
-
 alsainclude_HEADERS = asoundlib.h asoundef.h \
                      version.h global.h input.h output.h error.h \
                      conf.h pcm.h pcm_plugin.h rawmidi.h timer.h \
@@ -39,9 +31,6 @@ stamp-vh: $(top_builddir)/configure.in
        @echo "/** library version (string) */" >> ver.tmp
        @echo "#define SND_LIB_VERSION_STR      \"$(SND_LIB_VERSION)\"" >> ver.tmp
        @echo >> ver.tmp
-if COMPATIBILITY_BUILD_RC3
-       @echo "#define SND_COMPATIBILITY_BUILD_RC3 1" >> ver.tmp
-endif
        @cmp -s version.h ver.tmp \
           || (echo "Updating version.h"; \
               cp ver.tmp version.h; \
index 27cb58c..fe50a65 100644 (file)
@@ -22,8 +22,8 @@
 #include "../src/pcm/pcm_local.h"
 #include "../src/control/control_local.h"
 
-int receive_fd(int sock, void *data, size_t len, int *fd);
-int is_local(struct hostent *hent);
+int snd_receive_fd(int sock, void *data, size_t len, int *fd);
+int snd_is_local(struct hostent *hent);
 
 typedef enum _snd_dev_type {
        SND_DEV_TYPE_PCM,
index a35bec6..4a74a19 100644 (file)
@@ -514,7 +514,9 @@ void snd_pcm_hw_params_free(snd_pcm_hw_params_t *obj);
 void snd_pcm_hw_params_copy(snd_pcm_hw_params_t *dst, const snd_pcm_hw_params_t *src);
 
 #ifndef ALSA_LIBRARY_BUILD
-#ifndef SND_COMPATIBILITY_BUILD_RC3
+#ifdef ALSA_PCM_NEW_HW_PARAMS_API
+
+#ifdef DOXYGEN /* we should use this later */
 
 int snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t *params, snd_pcm_access_t *access);
 int snd_pcm_hw_params_test_access(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t access);
@@ -638,6 +640,303 @@ int snd_pcm_hw_params_set_tick_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *pa
 int snd_pcm_hw_params_set_tick_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
 int snd_pcm_hw_params_set_tick_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
 
+#else /* !DOXYGEN */
+
+static inline int snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t *params, snd_pcm_access_t *access) {
+       __asm__ (".symver __snd_pcm_hw_params_get_access, snd_pcm_hw_params_get_access@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_access(params, access);
+}
+int snd_pcm_hw_params_test_access(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t access);
+int snd_pcm_hw_params_set_access(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t access);
+static inline int snd_pcm_hw_params_set_access_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *access) {
+       __asm__ (".symver __snd_pcm_hw_params_set_access_first, snd_pcm_hw_params_set_access_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_access_first(pcm, params, access);
+}
+static inline int snd_pcm_hw_params_set_access_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *access) {
+       __asm__ (".symver __snd_pcm_hw_params_set_access_last, snd_pcm_hw_params_set_access_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_access_last(pcm, params, access);
+}
+int snd_pcm_hw_params_set_access_mask(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_mask_t *mask);
+int snd_pcm_hw_params_get_access_mask(snd_pcm_hw_params_t *params, snd_pcm_access_mask_t *mask);
+
+static inline int snd_pcm_hw_params_get_format(const snd_pcm_hw_params_t *params, snd_pcm_format_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_format, snd_pcm_hw_params_get_format@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_format(params, val);
+}
+int snd_pcm_hw_params_test_format(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val);
+int snd_pcm_hw_params_set_format(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t val);
+static inline int snd_pcm_hw_params_set_format_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format) {
+       __asm__ (".symver __snd_pcm_hw_params_set_format_first, snd_pcm_hw_params_set_format_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_format_first(pcm, params, format);
+}
+static inline int snd_pcm_hw_params_set_format_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format) {
+       __asm__ (".symver __snd_pcm_hw_params_set_format_last, snd_pcm_hw_params_set_format_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_format_last(pcm, params, format);
+}
+int snd_pcm_hw_params_set_format_mask(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_mask_t *mask);
+void snd_pcm_hw_params_get_format_mask(snd_pcm_hw_params_t *params, snd_pcm_format_mask_t *mask);
+
+static inline int snd_pcm_hw_params_get_subformat(const snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat) {
+       __asm__ (".symver __snd_pcm_hw_params_get_subformat, snd_pcm_hw_params_get_subformat@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_subformat(params, subformat);
+}
+int snd_pcm_hw_params_test_subformat(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t subformat);
+int snd_pcm_hw_params_set_subformat(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t subformat);
+static inline int snd_pcm_hw_params_set_subformat_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat) {
+       __asm__ (".symver __snd_pcm_hw_params_set_subformat_first, snd_pcm_hw_params_set_subformat_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_subformat_first(pcm, params, subformat);
+}
+static inline int snd_pcm_hw_params_set_subformat_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat) {
+       __asm__ (".symver __snd_pcm_hw_params_set_subformat_last, snd_pcm_hw_params_set_subformat_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_subformat_last(pcm, params, subformat);
+}
+int snd_pcm_hw_params_set_subformat_mask(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_mask_t *mask);
+void snd_pcm_hw_params_get_subformat_mask(snd_pcm_hw_params_t *params, snd_pcm_subformat_mask_t *mask);
+
+static inline int snd_pcm_hw_params_get_channels(const snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_channels, snd_pcm_hw_params_get_channels@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_channels(params, val);
+}
+static inline int snd_pcm_hw_params_get_channels_min(const snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_channels_min, snd_pcm_hw_params_get_channels_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_channels_min(params, val);
+}
+static inline int snd_pcm_hw_params_get_channels_max(const snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_channels_max, snd_pcm_hw_params_get_channels_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_channels_max(params, val);
+}
+int snd_pcm_hw_params_test_channels(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val);
+int snd_pcm_hw_params_set_channels(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val);
+int snd_pcm_hw_params_set_channels_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val);
+int snd_pcm_hw_params_set_channels_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val);
+int snd_pcm_hw_params_set_channels_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, unsigned int *max);
+static inline int snd_pcm_hw_params_set_channels_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_channels_near, snd_pcm_hw_params_set_channels_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_channels_near(pcm, params, val);
+}
+static inline int snd_pcm_hw_params_set_channels_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_channels_first, snd_pcm_hw_params_set_channels_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_channels_first(pcm, params, val);
+}
+static inline int snd_pcm_hw_params_set_channels_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_channels_last, snd_pcm_hw_params_set_channels_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_channels_last(pcm, params, val);
+}
+
+static inline int snd_pcm_hw_params_get_rate(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_rate, snd_pcm_hw_params_get_rate@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_rate(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_rate_min(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_rate_min, snd_pcm_hw_params_get_rate_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_rate_min(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_rate_max(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_rate_max, snd_pcm_hw_params_get_rate_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_rate_max(params, val, dir);
+}
+int snd_pcm_hw_params_test_rate(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_rate(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_rate_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_rate_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_rate_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_rate_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_rate_near, snd_pcm_hw_params_set_rate_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_rate_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_rate_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_rate_first, snd_pcm_hw_params_set_rate_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_rate_first(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_rate_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_rate_last, snd_pcm_hw_params_set_rate_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_rate_last(pcm, params, val, dir);
+}
+
+static inline int snd_pcm_hw_params_get_period_time(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_time, snd_pcm_hw_params_get_period_time@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_time(params, val, dir);
+}
+static int snd_pcm_hw_params_get_period_time_min(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_time_min, snd_pcm_hw_params_get_period_time_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_time_min(params, val, dir);
+}
+static int snd_pcm_hw_params_get_period_time_max(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_time_max, snd_pcm_hw_params_get_period_time_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_time_max(params, val, dir);
+}
+int snd_pcm_hw_params_test_period_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_period_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_period_time_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_period_time_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_period_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_period_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_time_near, snd_pcm_hw_params_set_period_time_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_time_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_period_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_time_first, snd_pcm_hw_params_set_period_time_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_time_first(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_period_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_time_last, snd_pcm_hw_params_set_period_time_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_time_last(pcm, params, val, dir);
+}
+
+static inline int snd_pcm_hw_params_get_period_size(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_size, snd_pcm_hw_params_get_period_size@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_size(params, frames, dir);
+}
+static inline int snd_pcm_hw_params_get_period_size_min(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_size_min, snd_pcm_hw_params_get_period_size_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_size_min(params, frames, dir);
+}
+static inline int snd_pcm_hw_params_get_period_size_max(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *frames, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_period_size_max, snd_pcm_hw_params_get_period_size_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_period_size_max(params, frames, dir);
+}
+int snd_pcm_hw_params_test_period_size(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val, int dir);
+int snd_pcm_hw_params_set_period_size(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val, int dir);
+int snd_pcm_hw_params_set_period_size_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir);
+int snd_pcm_hw_params_set_period_size_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir);
+int snd_pcm_hw_params_set_period_size_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *min, int *mindir, snd_pcm_uframes_t *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_period_size_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_size_near, snd_pcm_hw_params_set_period_size_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_size_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_period_size_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_size_first, snd_pcm_hw_params_set_period_size_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_size_first(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_period_size_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_period_size_last, snd_pcm_hw_params_set_period_size_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_period_size_last(pcm, params, val, dir);
+}
+int snd_pcm_hw_params_set_period_size_integer(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
+
+static inline int snd_pcm_hw_params_get_periods(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_periods, snd_pcm_hw_params_get_periods@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_periods(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_periods_min(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_periods_min, snd_pcm_hw_params_get_periods_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_periods_min(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_periods_max(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_periods_max, snd_pcm_hw_params_get_periods_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_periods_max(params, val, dir);
+}
+int snd_pcm_hw_params_test_periods(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_periods(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_periods_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_periods_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_periods_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_periods_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_periods_near, snd_pcm_hw_params_set_periods_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_periods_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_periods_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_periods_first, snd_pcm_hw_params_set_periods_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_periods_first(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_periods_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_periods_last, snd_pcm_hw_params_set_periods_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_periods_last(pcm, params, val, dir);
+}
+int snd_pcm_hw_params_set_periods_integer(snd_pcm_t *pcm, snd_pcm_hw_params_t *params);
+
+static inline int snd_pcm_hw_params_get_buffer_time(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_time, snd_pcm_hw_params_get_buffer_time@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_time(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_buffer_time_min(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_time_min, snd_pcm_hw_params_get_buffer_time_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_time_min(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_buffer_time_max(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_time_max, snd_pcm_hw_params_get_buffer_time_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_time_max(params, val, dir);
+}
+int snd_pcm_hw_params_test_buffer_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_buffer_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_buffer_time_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_buffer_time_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_buffer_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_buffer_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_time_near, snd_pcm_hw_params_set_buffer_time_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_time_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_buffer_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_time_first, snd_pcm_hw_params_set_buffer_time_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_time_near(pcm, params, val, dir);
+}
+static int snd_pcm_hw_params_set_buffer_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_time_last, snd_pcm_hw_params_set_buffer_time_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_time_last(pcm, params, val, dir);
+}
+
+static inline int snd_pcm_hw_params_get_buffer_size(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_size, snd_pcm_hw_params_get_buffer_size@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_size(params, val);
+}
+static inline int snd_pcm_hw_params_get_buffer_size_min(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_size_min, snd_pcm_hw_params_get_buffer_size_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_size_min(params, val);
+}
+static inline int snd_pcm_hw_params_get_buffer_size_max(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_get_buffer_size_max, snd_pcm_hw_params_get_buffer_size_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_buffer_size_max(params, val);
+}
+int snd_pcm_hw_params_test_buffer_size(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val);
+int snd_pcm_hw_params_set_buffer_size(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t val);
+int snd_pcm_hw_params_set_buffer_size_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val);
+int snd_pcm_hw_params_set_buffer_size_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val);
+int snd_pcm_hw_params_set_buffer_size_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *min, snd_pcm_uframes_t *max);
+static inline int snd_pcm_hw_params_set_buffer_size_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_size_near, snd_pcm_hw_params_set_buffer_size_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_size_near(pcm, params, val);
+}
+static inline int snd_pcm_hw_params_set_buffer_size_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_size_first, snd_pcm_hw_params_set_buffer_size_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_size_first(pcm, params, val);
+}
+static inline int snd_pcm_hw_params_set_buffer_size_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val) {
+       __asm__ (".symver __snd_pcm_hw_params_set_buffer_size_last, snd_pcm_hw_params_set_buffer_size_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_buffer_size_last(pcm, params, val);
+}
+
+static inline int snd_pcm_hw_params_get_tick_time(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_tick_time, snd_pcm_hw_params_get_tick_time@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_tick_time(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_tick_time_min(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_tick_time_min, snd_pcm_hw_params_get_tick_time_min@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_tick_time_min(params, val, dir);
+}
+static inline int snd_pcm_hw_params_get_tick_time_max(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_get_tick_time_max, snd_pcm_hw_params_get_tick_time_max@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_get_tick_time_max(params, val, dir);
+}
+int snd_pcm_hw_params_test_tick_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_tick_time(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int val, int dir);
+int snd_pcm_hw_params_set_tick_time_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_tick_time_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir);
+int snd_pcm_hw_params_set_tick_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *min, int *mindir, unsigned int *max, int *maxdir);
+static inline int snd_pcm_hw_params_set_tick_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_tick_time_near, snd_pcm_hw_params_set_tick_time_near@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_tick_time_near(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_tick_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_tick_time_first, snd_pcm_hw_params_set_tick_time_first@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_tick_time_first(pcm, params, val, dir);
+}
+static inline int snd_pcm_hw_params_set_tick_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir) {
+       __asm__ (".symver __snd_pcm_hw_params_set_tick_time_last, snd_pcm_hw_params_set_tick_time_last@ALSA_0.9.0rc4");
+       return snd_pcm_hw_params_set_tick_time_last(pcm, params, val, dir);
+}
+
+#endif /* DOXYGEN */
+
 #else
 
 int snd_pcm_hw_params_get_access(const snd_pcm_hw_params_t *params);
index 6226a3d..64cab9a 100644 (file)
@@ -1,5 +1,9 @@
 ALSA_0.9 {
   global:
+    __snd_*;
+    _snd_*;
+    snd_*;
+  local:
     *;
 };
 ALSA_0.9.0rc4 {
index 9a15c0b..3af9c3c 100644 (file)
@@ -73,7 +73,7 @@ static int snd_ctl_shm_action_fd(snd_ctl_t *ctl, int *fd)
        err = write(shm->socket, buf, 1);
        if (err != 1)
                return -EBADFD;
-       err = receive_fd(shm->socket, buf, 1, fd);
+       err = snd_receive_fd(shm->socket, buf, 1, fd);
        if (err != 1)
                return -EBADFD;
        if (ctrl->cmd) {
@@ -666,7 +666,7 @@ int _snd_ctl_shm_open(snd_ctl_t **handlep, char *name, snd_config_t *root, snd_c
                SNDERR("Cannot resolve %s", host);
                goto _err;
        }
-       local = is_local(h);
+       local = snd_is_local(h);
        if (!local) {
                SNDERR("%s is not the local host", host);
                goto _err;
index 79f52ae..082029b 100644 (file)
@@ -2722,6 +2722,9 @@ void snd_pcm_hw_params_copy(snd_pcm_hw_params_t *dst, const snd_pcm_hw_params_t
  * \param params Configuration space
  * \param access Returned value
  * \return access type otherwise a negative error code if not exactly one is present
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_access)(const snd_pcm_hw_params_t *params, snd_pcm_access_t *access)
@@ -2766,6 +2769,9 @@ int snd_pcm_hw_params_set_access(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, sn
  * \param params Configuration space
  * \param access Returned first access type
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_access_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *access)
@@ -2782,6 +2788,9 @@ int snd_pcm_hw_params_set_access_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *para
  * \param params Configuration space
  * \param val Returned last access type
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_access_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_access_t *access)
@@ -2823,6 +2832,9 @@ int snd_pcm_hw_params_get_access_mask(snd_pcm_hw_params_t *params, snd_pcm_acces
  * \param params Configuration space
  * \param format returned format
  * \return format otherwise a negative error code if not exactly one is present
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_format)(const snd_pcm_hw_params_t *params, snd_pcm_format_t *format)
@@ -2863,6 +2875,9 @@ int snd_pcm_hw_params_set_format(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, sn
  * \param params Configuration space
  * \param format Returned first format
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_format_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format)
@@ -2879,6 +2894,9 @@ int snd_pcm_hw_params_set_format_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *para
  * \param params Configuration space
  * \param format Returned last format
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_format_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_format_t *format)
@@ -2917,6 +2935,9 @@ void snd_pcm_hw_params_get_format_mask(snd_pcm_hw_params_t *params, snd_pcm_form
  * \param params Configuration space
  * \param subformat Returned subformat value
  * \return subformat otherwise a negative error code if not exactly one is present
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_subformat)(const snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat)
@@ -2957,6 +2978,9 @@ int snd_pcm_hw_params_set_subformat(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
  * \param params Configuration space
  * \param subformat Returned subformat
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_subformat_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat)
@@ -2973,6 +2997,9 @@ int snd_pcm_hw_params_set_subformat_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *p
  * \param params Configuration space
  * \param subformat Returned subformat
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_subformat_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_subformat_t *subformat)
@@ -3011,6 +3038,9 @@ void snd_pcm_hw_params_get_subformat_mask(snd_pcm_hw_params_t *params, snd_pcm_s
  * \param params Configuration space
  * \param val Returned channels count
  * \return 0 otherwise a negative error code if not exactly one is present
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_channels)(const snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3026,6 +3056,9 @@ int snd_pcm_hw_params_get_channels(const snd_pcm_hw_params_t *params, unsigned i
  * \param params Configuration space
  * \param val minimum channels count
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_channels_min)(const snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3041,6 +3074,9 @@ int snd_pcm_hw_params_get_channels_min(const snd_pcm_hw_params_t *params, unsign
  * \param params Configuration space
  * \param val maximum channels count
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_channels_max)(const snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3118,6 +3154,9 @@ int snd_pcm_hw_params_set_channels_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *p
  * \param params Configuration space
  * \param val target channels count, returned chosen channels count
  * \return chosen channels count
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_channels_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3134,6 +3173,9 @@ int snd_pcm_hw_params_set_channels_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *par
  * \param params Configuration space
  * \param val minimum channels count
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_channels_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3150,6 +3192,9 @@ int snd_pcm_hw_params_set_channels_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *pa
  * \param params Configuration space
  * \param val maximum channels count
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_channels_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val)
@@ -3169,6 +3214,9 @@ int snd_pcm_hw_params_set_channels_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *par
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_rate)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3187,6 +3235,9 @@ int snd_pcm_hw_params_get_rate(const snd_pcm_hw_params_t *params, unsigned int *
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_rate_min)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3205,6 +3256,9 @@ int snd_pcm_hw_params_get_rate_min(const snd_pcm_hw_params_t *params, unsigned i
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_rate_max)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3300,6 +3354,9 @@ int snd_pcm_hw_params_set_rate_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *param
  * \return approximate chosen rate
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_rate_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3319,6 +3376,9 @@ int snd_pcm_hw_params_set_rate_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_rate_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3338,6 +3398,9 @@ int snd_pcm_hw_params_set_rate_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *params
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_rate_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3357,6 +3420,9 @@ int snd_pcm_hw_params_set_rate_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_time)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3375,6 +3441,9 @@ int snd_pcm_hw_params_get_period_time(const snd_pcm_hw_params_t *params, unsigne
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_time_min)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3393,6 +3462,9 @@ int snd_pcm_hw_params_get_period_time_min(const snd_pcm_hw_params_t *params, uns
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_time_max)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3489,6 +3561,9 @@ int snd_pcm_hw_params_set_period_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return approximate chosen period duration in us
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_time_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3508,6 +3583,9 @@ int snd_pcm_hw_params_set_period_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_time_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3526,6 +3604,9 @@ int snd_pcm_hw_params_set_period_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return approximate period duration in us
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_time_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3545,6 +3626,9 @@ int snd_pcm_hw_params_set_period_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_size)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3567,6 +3651,9 @@ int snd_pcm_hw_params_get_period_size(const snd_pcm_hw_params_t *params, snd_pcm
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_size_min)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3589,6 +3676,9 @@ int snd_pcm_hw_params_get_period_size_min(const snd_pcm_hw_params_t *params, snd
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_period_size_max)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3701,6 +3791,9 @@ int snd_pcm_hw_params_set_period_size_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return 0 otherwise a negative error code
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_size_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3724,6 +3817,9 @@ int snd_pcm_hw_params_set_period_size_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_size_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3747,6 +3843,9 @@ int snd_pcm_hw_params_set_period_size_first(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_period_size_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val, int *dir)
@@ -3781,6 +3880,9 @@ int snd_pcm_hw_params_set_period_size_integer(snd_pcm_t *pcm, snd_pcm_hw_params_
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_periods)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3799,6 +3901,9 @@ int snd_pcm_hw_params_get_periods(const snd_pcm_hw_params_t *params, unsigned in
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_periods_min)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3817,6 +3922,9 @@ int snd_pcm_hw_params_get_periods_min(const snd_pcm_hw_params_t *params, unsigne
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_periods_max)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3912,6 +4020,9 @@ int snd_pcm_hw_params_set_periods_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *pa
  * \return approximate chosen periods per buffer
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_periods_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3931,6 +4042,9 @@ int snd_pcm_hw_params_set_periods_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *para
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_periods_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3950,6 +4064,9 @@ int snd_pcm_hw_params_set_periods_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *par
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_periods_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3981,6 +4098,9 @@ int snd_pcm_hw_params_set_periods_integer(snd_pcm_t *pcm, snd_pcm_hw_params_t *p
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_time)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -3999,6 +4119,9 @@ int snd_pcm_hw_params_get_buffer_time(const snd_pcm_hw_params_t *params, unsigne
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_time_min)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4017,6 +4140,9 @@ int snd_pcm_hw_params_get_buffer_time_min(const snd_pcm_hw_params_t *params, uns
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_time_max)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4112,6 +4238,9 @@ int snd_pcm_hw_params_set_buffer_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return approximate chosen buffer duration in us
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_time_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4131,6 +4260,9 @@ int snd_pcm_hw_params_set_buffer_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_time_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4150,6 +4282,9 @@ int snd_pcm_hw_params_set_buffer_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_time_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4166,6 +4301,9 @@ int snd_pcm_hw_params_set_buffer_time_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \param params Configuration space
  * \param val Returned buffer size in frames
  * \return 0 otherwise a negative error code if not exactly one is present
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_size)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4188,6 +4326,9 @@ int snd_pcm_hw_params_get_buffer_size(const snd_pcm_hw_params_t *params, snd_pcm
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_size_min)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4210,6 +4351,9 @@ int snd_pcm_hw_params_get_buffer_size_min(const snd_pcm_hw_params_t *params, snd
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_buffer_size_max)(const snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4321,6 +4465,9 @@ int snd_pcm_hw_params_set_buffer_size_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \return approximate chosen buffer size in frames
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_size_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4341,6 +4488,9 @@ int snd_pcm_hw_params_set_buffer_size_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \param params Configuration space
  * \param val Returned minimum buffer size in frames
  * \return buffer size in frames
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_size_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4361,6 +4511,9 @@ int snd_pcm_hw_params_set_buffer_size_first(snd_pcm_t *pcm, snd_pcm_hw_params_t
  * \param params Configuration space
  * \param val Returned maximum buffer size in frames
  * \return 0 otherwise a negative error code
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_buffer_size_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, snd_pcm_uframes_t *val)
@@ -4384,6 +4537,9 @@ int snd_pcm_hw_params_set_buffer_size_last(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return 0 otherwise a negative error code if not exactly one is present
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_tick_time)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4402,6 +4558,9 @@ int snd_pcm_hw_params_get_tick_time(const snd_pcm_hw_params_t *params, unsigned
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_tick_time_min)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4420,6 +4579,9 @@ int snd_pcm_hw_params_get_tick_time_min(const snd_pcm_hw_params_t *params, unsig
  * \return 0 otherwise a negative error code
  *
  * Exact value is <,=,> the returned one following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_get_tick_time_max)(const snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4515,6 +4677,9 @@ int snd_pcm_hw_params_set_tick_time_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *
  * \return approximate chosen tick duration in us
  *
  * target/chosen exact value is <,=,> val following dir (-1,0,1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_tick_time_near)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4534,6 +4699,9 @@ int snd_pcm_hw_params_set_tick_time_near(snd_pcm_t *pcm, snd_pcm_hw_params_t *pa
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_tick_time_first)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -4553,6 +4721,9 @@ int snd_pcm_hw_params_set_tick_time_first(snd_pcm_t *pcm, snd_pcm_hw_params_t *p
  * \return 0 otherwise a negative error code
  *
  * Actual exact value is <,=,> the approximate one following dir (-1, 0, 1)
+ *
+ * Note: To use this function add '#define ALSA_PCM_NEW_HW_PARAMS_API' before '#include <alsa/asoundlib.h>'
+ *       to enable this new function prototype. Using of older function with same name is deprecated.
  */
 #ifndef DOXYGEN
 int INTERNAL(snd_pcm_hw_params_set_tick_time_last)(snd_pcm_t *pcm, snd_pcm_hw_params_t *params, unsigned int *val, int *dir)
@@ -5985,19 +6156,12 @@ void snd_pcm_unlink_appl_ptr(snd_pcm_t *pcm, snd_pcm_t *slave)
 
 #ifdef USE_VERSIONED_SYMBOLS
 
-#ifndef SND_COMPATIBILITY_BUILD_RC3
-
-#define OBSOLETE1(name, what, new) \
-  symbol_version(__old_##name, name, what); \
-  default_symbol_version(__##name, name, new);
-
-#else
-
+/* it's really not so nice: obsolete, but default */
+/* forced by developers on alsa-devel */
 #define OBSOLETE1(name, what, new) \
+  symbol_version(__##name, name, new); \
   default_symbol_version(__old_##name, name, what);
 
-#endif
-
 #define __OLD_GET(name, val_type, ret_type) \
 ret_type __old_##name(const snd_pcm_hw_params_t *params) \
 { \
index 852f644..4f59aeb 100644 (file)
@@ -1016,8 +1016,10 @@ SND_DLSYM_BUILD_VERSION(_snd_pcm_hw_open, SND_PCM_DLSYM_VERSION);
  *  To be removed helpers, but keep binary compatibility at the time
  */
 
+#ifndef DOC_HIDDEN
 #define __OLD_TO_NEW_MASK(x) ((x&7)|((x&0x07fffff8)<<5))
 #define __NEW_TO_OLD_MASK(x) ((x&7)|((x&0xffffff00)>>5))
+#endif
 
 static void snd_pcm_hw_convert_from_old_params(snd_pcm_hw_params_t *params,
                                               struct sndrv_pcm_hw_params_old *oparams)
index fe91afb..824bb8b 100644 (file)
@@ -58,7 +58,7 @@ typedef struct {
 #endif
 
 #ifndef DOC_HIDDEN
-int receive_fd(int sock, void *data, size_t len, int *fd)
+int snd_receive_fd(int sock, void *data, size_t len, int *fd)
 {
        int ret;
        size_t cmsg_len = CMSG_LEN(sizeof(int));
@@ -103,7 +103,7 @@ static long snd_pcm_shm_action_fd0(snd_pcm_t *pcm, int *fd)
        err = write(shm->socket, buf, 1);
        if (err != 1)
                return -EBADFD;
-       err = receive_fd(shm->socket, buf, 1, fd);
+       err = snd_receive_fd(shm->socket, buf, 1, fd);
        if (err != 1)
                return -EBADFD;
        if (ctrl->cmd) {
@@ -192,7 +192,7 @@ static long snd_pcm_shm_action_fd(snd_pcm_t *pcm, int *fd)
        err = write(shm->socket, buf, 1);
        if (err != 1)
                return -EBADFD;
-       err = receive_fd(shm->socket, buf, 1, fd);
+       err = snd_receive_fd(shm->socket, buf, 1, fd);
        if (err != 1)
                return -EBADFD;
        if (ctrl->cmd) {
@@ -794,7 +794,7 @@ int snd_pcm_shm_open(snd_pcm_t **pcmp, const char *name,
 }
 
 #ifndef DOC_HIDDEN
-int is_local(struct hostent *hent)
+int snd_is_local(struct hostent *hent)
 {
        int s;
        int err;
@@ -984,7 +984,7 @@ int _snd_pcm_shm_open(snd_pcm_t **pcmp, const char *name,
                SNDERR("Cannot resolve %s", host);
                goto _err;
        }
-       local = is_local(h);
+       local = snd_is_local(h);
        if (!local) {
                SNDERR("%s is not the local host", host);
                goto _err;
index c4e5b98..c8339ca 100644 (file)
@@ -172,6 +172,13 @@ void snd_midi_event_free(snd_midi_event_t *dev)
        }
 }
 
+/**
+ * \brief Enable/disable MIDI command merging
+ * \param dev MIDI event parser
+ * \param on 0 - enable MIDI command merging, 1 - always pass the command
+ *
+ * Enable/disable MIDI command merging
+ */
 void snd_midi_event_no_status(snd_midi_event_t *dev, int on)
 {
        dev->nostat = on ? 1 : 0;
index bb699a3..f4a35c2 100644 (file)
@@ -33,6 +33,7 @@
 #include <sched.h>
 #include <errno.h>
 #include <getopt.h>
+#define ALSA_PCM_NEW_HW_PARAMS_API
 #include "../include/asoundlib.h"
 #include <sys/time.h>
 #include <math.h>
@@ -100,16 +101,16 @@ int setparams_bufsize(snd_pcm_t *handle,
                      const char *id)
 {
        int err;
-       snd_pcm_uframes_t rbufsize, periodsize;
+       snd_pcm_uframes_t periodsize;
 
        snd_pcm_hw_params_copy(params, tparams);
-       rbufsize = bufsize * 2;
-       err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &rbufsize);
+       periodsize = bufsize * 2;
+       err = snd_pcm_hw_params_set_buffer_size_near(handle, params, &periodsize);
        if (err < 0) {
                printf("Unable to set buffer size %li for %s: %s\n", bufsize * 2, id, snd_strerror(err));
                return err;
        }
-       periodsize = snd_pcm_hw_params_get_buffer_size(params) / 2;
+       periodsize /= 2;
        err = snd_pcm_hw_params_set_period_size_near(handle, params, &periodsize, 0);
        if (err < 0) {
                printf("Unable to set period size %li for %s: %s\n", periodsize, id, snd_strerror(err));
@@ -123,7 +124,9 @@ int setparams_set(snd_pcm_t *handle,
                  snd_pcm_sw_params_t *swparams,
                  const char *id)
 {
-       int err, val, sleep_min = 0;
+       int err;
+       snd_pcm_uframes_t val;
+       unsigned int sleep_min = 0;
 
        err = snd_pcm_hw_params(handle, params);
        if (err < 0) {
@@ -143,8 +146,8 @@ int setparams_set(snd_pcm_t *handle,
        tick_time_ok = 0;
        if (tick_time > 0) {
                int time, ttime;
-               time = snd_pcm_hw_params_get_period_time(params, NULL);
-               ttime = snd_pcm_hw_params_get_tick_time(params, NULL);
+               snd_pcm_hw_params_get_period_time(params, &time, NULL);
+                snd_pcm_hw_params_get_tick_time(params, &ttime, NULL);
                if (time < ttime) {
                        printf("Skipping to set minimal sleep: period time < tick time\n");
                } else if (ttime <= 0) {
@@ -161,7 +164,10 @@ int setparams_set(snd_pcm_t *handle,
                        tick_time_ok = sleep_min * ttime;
                }
        }
-       val = !block ? 4 : snd_pcm_hw_params_get_period_size(params, NULL);
+       if (!block)
+               val = 4;
+       else
+               snd_pcm_hw_params_get_period_size(params, &val, NULL);
        if (tick_time_ok > 0)
                val = 16;
        err = snd_pcm_sw_params_set_avail_min(handle, swparams, val);
@@ -189,7 +195,8 @@ int setparams(snd_pcm_t *phandle, snd_pcm_t *chandle, int *bufsize)
        snd_pcm_hw_params_t *pt_params, *ct_params;     /* templates with rate, format and channels */
        snd_pcm_hw_params_t *p_params, *c_params;
        snd_pcm_sw_params_t *p_swparams, *c_swparams;
-       snd_pcm_sframes_t size;
+       snd_pcm_uframes_t size, p_size, c_size, p_psize, c_psize;
+       unsigned int p_time, c_time;
 
        snd_pcm_hw_params_alloca(&p_params);
        snd_pcm_hw_params_alloca(&c_params);
@@ -221,18 +228,24 @@ int setparams(snd_pcm_t *phandle, snd_pcm_t *chandle, int *bufsize)
                exit(0);
        }
 
-       size = snd_pcm_hw_params_get_period_size(p_params, NULL);
+       snd_pcm_hw_params_get_period_size(p_params, &size, NULL);
        if (size > *bufsize)
                *bufsize = size;
-       size = snd_pcm_hw_params_get_period_size(c_params, NULL);
+       snd_pcm_hw_params_get_period_size(c_params, &size, NULL);
        if (size > *bufsize)
                *bufsize = size;
-       if (snd_pcm_hw_params_get_period_time(p_params, NULL) !=
-           snd_pcm_hw_params_get_period_time(c_params, NULL))
+       snd_pcm_hw_params_get_period_time(p_params, &p_time, NULL);
+       snd_pcm_hw_params_get_period_time(c_params, &c_time, NULL);
+       if (p_time != c_time)
                goto __again;
-       if (snd_pcm_hw_params_get_period_size(p_params, NULL) * 2 < snd_pcm_hw_params_get_buffer_size(p_params))
+
+       snd_pcm_hw_params_get_period_size(p_params, &p_psize, NULL);
+       snd_pcm_hw_params_get_buffer_size(p_params, &p_size);
+       if (p_psize * 2 < p_size)
                goto __again;
-       if (snd_pcm_hw_params_get_period_size(c_params, NULL) * 2 < snd_pcm_hw_params_get_buffer_size(c_params))
+       snd_pcm_hw_params_get_period_size(c_params, &c_psize, NULL);
+       snd_pcm_hw_params_get_buffer_size(c_params, &c_size);
+       if (c_psize * 2 < c_size)
                goto __again;
 
        if ((err = setparams_set(phandle, p_params, p_swparams, "playback")) < 0) {
index e12a86b..7b61287 100644 (file)
@@ -8,6 +8,7 @@
 #include <sched.h>
 #include <errno.h>
 #include <getopt.h>
+#define ALSA_PCM_NEW_HW_PARAMS_API
 #include "../include/asoundlib.h"
 #include <sys/time.h>
 #include <math.h>