Index: roarclients/roarfilt.c
===================================================================
--- roarclients/roarfilt.c	(revision 5178)
+++ roarclients/roarfilt.c	(revision 5179)
@@ -170,9 +170,9 @@
    server = argv[++i];
   } else if ( strcmp(k, "--rate") == 0 || strcmp(k, "-R") == 0 || strcmp(k, "-r") == 0 ) {
-   rate = atoi(argv[++i]);
+   rate = roar_str2rate(argv[++i]);
   } else if ( strcmp(k, "--bits") == 0 || strcmp(k, "-B") == 0 ) {
-   bits = atoi(argv[++i]);
+   bits = roar_str2bits(argv[++i]);
   } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0 || strcmp(k, "-C") == 0 ) {
-   channels = atoi(argv[++i]);
+   channels = roar_str2channels(argv[++i]);
   } else if ( strcmp(k, "-b") == 0 ) {
    bits = 8;
Index: roarclients/roarinterconnect.c
===================================================================
--- roarclients/roarinterconnect.c	(revision 5109)
+++ roarclients/roarinterconnect.c	(revision 5179)
@@ -278,9 +278,9 @@
    type = parse_type(argv[++i]);
   } else if ( strcmp(k, "--rate") == 0 ) {
-   rate = atoi(argv[++i]);
+   rate = roar_str2rate(argv[++i]);
   } else if ( strcmp(k, "--bits") == 0 ) {
-   bits = atoi(argv[++i]);
+   bits = roar_str2bits(argv[++i]);
   } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0 ) {
-   channels = atoi(argv[++i]);
+   channels = roar_str2channels(argv[++i]);
   } else if ( strcmp(k, "--codec") == 0 ) {
    codec = roar_str2codec(argv[++i]);
Index: roarclients/roarradio.c
===================================================================
--- roarclients/roarradio.c	(revision 5109)
+++ roarclients/roarradio.c	(revision 5179)
@@ -75,9 +75,9 @@
    server = argv[++i];
   } else if ( strcmp(k, "--rate") == 0 ) {
-   rate = atoi(argv[++i]);
+   rate = roar_str2rate(argv[++i]);
   } else if ( strcmp(k, "--bits") == 0 ) {
-   bits = atoi(argv[++i]);
+   bits = roar_str2bits(argv[++i]);
   } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0 ) {
-   channels = atoi(argv[++i]);
+   channels = roar_str2channels(argv[++i]);
   } else if ( strcmp(k, "--codec") == 0 ) {
    codec = roar_str2codec(argv[++i]);
Index: roarclients/roarshout.c
===================================================================
--- roarclients/roarshout.c	(revision 4885)
+++ roarclients/roarshout.c	(revision 5179)
@@ -119,9 +119,9 @@
    server = argv[++i];
   } else if ( strcmp(k, "--rate") == 0 ) {
-   rate = atoi(argv[++i]);
+   rate = roar_str2rate(argv[++i]);
   } else if ( strcmp(k, "--bits") == 0 ) {
-   bits = atoi(argv[++i]);
+   bits = roar_str2bits(argv[++i]);
   } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0 ) {
-   channels = atoi(argv[++i]);
+   channels = roar_str2channels(argv[++i]);
   } else if ( strcmp(k, "--codec") == 0 ) {
    codec = roar_str2codec(argv[++i]);
Index: roarclients/roarvumeter.c
===================================================================
--- roarclients/roarvumeter.c	(revision 4708)
+++ roarclients/roarvumeter.c	(revision 5179)
@@ -137,7 +137,7 @@
 
 int vumeter (struct roar_vio_calls * vio, int samples, int bits, int channels, int mode, struct roardsp_filterchain * fc) {
- void * buf = malloc((samples*bits*channels)/8);
-
- if ( !buf )
+ void * buf = roar_mm_malloc((samples*bits*channels)/8);
+
+ if ( buf == NULL )
   return -1;
 
@@ -145,12 +145,12 @@
   if ( channels == 2 ) {
    vumeter16bit2ch(vio, samples, (int16_t *) buf, mode, fc);
-   free(buf);
+   roar_mm_free(buf);
    return 0;
   } else {
-   free(buf);
+   roar_mm_free(buf);
    return -1;
   }
  } else {
-  free(buf);
+  roar_mm_free(buf);
   return -1;
  }
@@ -180,9 +180,9 @@
    server = argv[++i];
   } else if ( strcmp(k, "--rate") == 0 ) {
-   rate = atoi(argv[++i]);
+   rate = roar_str2rate(argv[++i]);
   } else if ( strcmp(k, "--bits") == 0 ) {
-   bits = atoi(argv[++i]);
+   bits = roar_str2bits(argv[++i]);
   } else if ( strcmp(k, "--channels") == 0 || strcmp(k, "--chans") == 0) {
-   channels = atoi(argv[++i]);
+   channels = roar_str2channels(argv[++i]);
   } else if ( strcmp(k, "--samples") == 0 ) {
    samples = atoi(argv[++i]);
