format: Extend properties to handle lists/ranges

This replaces the simple string used by pa_format_info's proplist with a
JSON string (accessed via new API only). This allows us to express lists
and ranges more cleanly, and embed type information for future
extensibility.

We use json-c for JSON parsing. This is a lightweight depdency (32 KB on
my system) and avoids the hassle of having to reinvent a JSON parser.

Also included is a test which verifies functionality and is
valgrind-clean.
This commit is contained in:
Arun Raghavan 2011-04-13 14:05:18 +05:30
parent 62f56a9f6b
commit 8d076d0990
7 changed files with 389 additions and 22 deletions

View file

@ -603,6 +603,12 @@ fi
AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h])
#### json parsing ####
PKG_CHECK_MODULES(LIBJSON, [ json >= 0.9 ])
AC_SUBST(LIBJSON_CFLAGS)
AC_SUBST(LIBJSON_LIBS)
#### Sound file ####
PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.20 ])