Return-Path: Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Subject: Re: [PATCH v6 14/17] sbc: Update sbcdec for msbc From: Marcel Holtmann In-Reply-To: <1362565163-3567-15-git-send-email-frederic.dalleau@linux.intel.com> Date: Tue, 26 Mar 2013 19:26:14 -0700 Cc: linux-bluetooth@vger.kernel.org Message-Id: References: <1362565163-3567-1-git-send-email-frederic.dalleau@linux.intel.com> <1362565163-3567-15-git-send-email-frederic.dalleau@linux.intel.com> To: =?iso-8859-1?Q?Fr=E9d=E9ric_Dalleau?= Sender: linux-bluetooth-owner@vger.kernel.org List-ID: Hi Fred, > --- > src/sbcdec.c | 22 +++++++++++++++++----- > 1 file changed, 17 insertions(+), 5 deletions(-) > > diff --git a/src/sbcdec.c b/src/sbcdec.c > index 0077a82..69c5fcb 100644 > --- a/src/sbcdec.c > +++ b/src/sbcdec.c > @@ -4,6 +4,7 @@ > * > * Copyright (C) 2008-2010 Nokia Corporation > * Copyright (C) 2004-2010 Marcel Holtmann > + * Copyright (C) 2012 Intel Corporation 2012-2013. > * > * > * This program is free software; you can redistribute it and/or modify > @@ -44,7 +45,7 @@ > > static int verbose = 0; > > -static void decode(char *filename, char *output, int tofile) > +static void decode(char *filename, char *output, int tofile, int msbc) > { > unsigned char buf[BUF_SIZE], *stream; > struct stat st; > @@ -98,7 +99,11 @@ static void decode(char *filename, char *output, int tofile) > goto free; > } > > - sbc_init(&sbc, 0L); > + if (msbc) { > + sbc_init_msbc(&sbc, 0L); > + } else { > + sbc_init(&sbc, 0L); > + } > sbc.endian = SBC_BE; > > framelen = sbc_decode(&sbc, stream, streamlen, buf, sizeof(buf), &len); > @@ -228,14 +233,16 @@ static void usage(void) > > printf("Options:\n" > "\t-h, --help Display help\n" > - "\t-v, --verbose Verbose mode\n" > "\t-d, --device Sound device\n" > + "\t-v, --verbose Verbose mode\n" > + "\t-m, --msbc mSBC codec\n" > "\t-f, --file Decode to a file\n" > "\n"); > } > > static struct option main_options[] = { > { "help", 0, 0, 'h' }, > + { "msbc", 0, 0, 'm' }, > { "device", 1, 0, 'd' }, > { "verbose", 0, 0, 'v' }, > { "file", 1, 0, 'f' }, > @@ -246,8 +253,9 @@ int main(int argc, char *argv[]) > { > char *output = NULL; > int i, opt, tofile = 0; > + int msbc = 0; Lets start using bool here as well. > > - while ((opt = getopt_long(argc, argv, "+hvd:f:", > + while ((opt = getopt_long(argc, argv, "+hmvd:f:", > main_options, NULL)) != -1) { > switch(opt) { > case 'h': > @@ -258,6 +266,10 @@ int main(int argc, char *argv[]) > verbose = 1; > break; > > + case 'm': > + msbc = 1; > + break; > + > case 'd': > free(output); > output = strdup(optarg); > @@ -285,7 +297,7 @@ int main(int argc, char *argv[]) > } > > for (i = 0; i < argc; i++) > - decode(argv[i], output ? output : "/dev/dsp", tofile); > + decode(argv[i], output ? output : "/dev/dsp", tofile, msbc); > > free(output); > Regards Marcel