source: src/io/sndfileio.h @ 8a7b344

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5pitchshiftsamplertimestretchyinfft+
Last change on this file since 8a7b344 was 4e3723d, checked in by Paul Brossier <piem@piem.org>, 11 years ago

src/io/: add link to examples and missing c++ extern

  • Property mode set to 100644
File size: 2.1 KB
RevLine 
[96fb8ad]1/*
[6a2478c]2  Copyright (C) 2003-2009 Paul Brossier <piem@aubio.org>
[96fb8ad]3
[6a2478c]4  This file is part of aubio.
[96fb8ad]5
[6a2478c]6  aubio is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10
11  aubio is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  GNU General Public License for more details.
15
16  You should have received a copy of the GNU General Public License
17  along with aubio.  If not, see <http://www.gnu.org/licenses/>.
[96fb8ad]18
19*/
20
21#ifndef SNDFILEIO_H
22#define SNDFILEIO_H
23
[4e3723d]24/** \file
25
26  sndfile functions
27
[96fb8ad]28 */
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34/**
35 * sndfile object
36 */
[5e9c68a]37typedef struct _aubio_sndfile_t aubio_sndfile_t;
[96fb8ad]38/**
39 * Open a sound file for reading
40 */
[5e9c68a]41aubio_sndfile_t * new_aubio_sndfile_ro (const char * inputfile);
[96fb8ad]42/**
43 * Copy file model from previously opened sound file.
44 */
[5e9c68a]45aubio_sndfile_t * new_aubio_sndfile_wo(aubio_sndfile_t * existingfile, const char * outputname);
[96fb8ad]46/**
47 * Open a sound file for writing
48 */
[5e9c68a]49int aubio_sndfile_open_wo (aubio_sndfile_t * file, const char * outputname);
[96fb8ad]50/**
[fff7b92]51 * Read frames data from file into an array of buffers
[96fb8ad]52 */
[4621cd6]53int aubio_sndfile_read(aubio_sndfile_t * file, int frames, fvec_t ** read);
[96fb8ad]54/**
[fff7b92]55 * Read frames data from file into a single buffer
56 */
57int aubio_sndfile_read_mono (aubio_sndfile_t * f, int frames, fvec_t * read);
58/**
[96fb8ad]59 * Write data of length frames to file
60 */
[4621cd6]61int aubio_sndfile_write(aubio_sndfile_t * file, int frames, fvec_t ** write);
[96fb8ad]62/**
63 * Close file and delete file object
64 */
[5e9c68a]65int del_aubio_sndfile(aubio_sndfile_t * file);
[96fb8ad]66/**
67 * Return some files facts
68 */
[5e9c68a]69void aubio_sndfile_info(aubio_sndfile_t * file);
[96fb8ad]70/**
71 * Return number of channel in file
72 */
[5e9c68a]73uint_t aubio_sndfile_channels(aubio_sndfile_t * file);
[b173ca1]74/**
75 * Return samplerate of a file (Hz)
76 */
[5e9c68a]77uint_t aubio_sndfile_samplerate(aubio_sndfile_t * file);
[96fb8ad]78
79#ifdef __cplusplus
80}
81#endif
82
83#endif
84
Note: See TracBrowser for help on using the repository browser.