parent
3510350c01
commit
fedde765de
@ -1,58 +0,0 @@ |
||||
/* libSoX file format: null (c) 2006-8 SoX contributors
|
||||
* Based on an original idea by Carsten Borchardt |
||||
* |
||||
* This library is free software; you can redistribute it and/or modify it |
||||
* under the terms of the GNU Lesser General Public License as published by |
||||
* the Free Software Foundation; either version 2.1 of the License, or (at |
||||
* your option) any later version. |
||||
* |
||||
* This library is distributed in the hope that it will be useful, but |
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser |
||||
* General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Lesser General Public License |
||||
* along with this library; if not, write to the Free Software Foundation, |
||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
||||
*/ |
||||
|
||||
#include "sox_i.h" |
||||
#include <string.h> |
||||
|
||||
static int startread(sox_format_t * ft) |
||||
{ |
||||
if (!ft->signal.rate) { |
||||
ft->signal.rate = SOX_DEFAULT_RATE; |
||||
lsx_report("sample rate not specified; using %g", ft->signal.rate); |
||||
} |
||||
ft->signal.precision = ft->encoding.bits_per_sample? |
||||
ft->encoding.bits_per_sample: SOX_SAMPLE_PRECISION; |
||||
/* Default number of channels is application-dependent */ |
||||
return SOX_SUCCESS; |
||||
} |
||||
|
||||
static size_t read_samples(sox_format_t * ft, sox_sample_t * buf, size_t len) |
||||
{ |
||||
/* Reading from null generates silence i.e. (sox_sample_t)0. */ |
||||
(void)ft; |
||||
memset(buf, 0, sizeof(sox_sample_t) * len); |
||||
return len; /* Return number of samples "read". */ |
||||
} |
||||
|
||||
static size_t write_samples( |
||||
sox_format_t * ft, sox_sample_t const * buf, size_t len) |
||||
{ |
||||
/* Writing to null just discards the samples */ |
||||
(void)ft, (void)buf; |
||||
return len; /* Return number of samples "written". */ |
||||
} |
||||
|
||||
LSX_FORMAT_HANDLER(nul) |
||||
{ |
||||
static const char * const names[] = {"null", NULL}; |
||||
static sox_format_handler_t const handler = {SOX_LIB_VERSION_CODE, |
||||
NULL, names, SOX_FILE_DEVICE | SOX_FILE_PHONY | SOX_FILE_NOSTDIO, |
||||
startread, read_samples,NULL,NULL, write_samples,NULL,NULL, NULL, NULL, 0 |
||||
}; |
||||
return &handler; |
||||
} |
Loading…
Reference in new issue