Fix whitespace inconsistencies.
[herrie-working.git] / herrie / src / audio_format.h
blob4a0e2e0592c7de794c394f28a803bf3743d0896d
1 /*
2 * Copyright (c) 2006-2011 Ed Schouten <ed@80386.nl>
3 * All rights reserved.
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
26 /**
27 * @file audio_format.h
28 * @brief Audio file format specific decompression routines.
31 struct audio_file;
33 #ifdef BUILD_MODPLUG
34 /**
35 * @brief Open a modplug file.
37 int modplug_open(struct audio_file *fd, const char *ext);
38 /**
39 * @brief Close and clean up the modplug file.
41 void modplug_close(struct audio_file *fd);
42 /**
43 * @brief Read data from the modplug file and place it in buf.
45 size_t modplug_read(struct audio_file *fd, int16_t *buf, size_t len);
46 /**
47 * @brief Seek the modplug file a relatime amount of seconds.
49 void modplug_seek(struct audio_file *fd, int len, int rel);
50 #endif /* BUILD_MODPLUG */
52 #ifdef BUILD_MP3
53 /**
54 * @brief Open an mp3 file.
56 int mp3_open(struct audio_file *fd, const char *ext);
57 /**
58 * @brief Close and clean up the mp3 file.
60 void mp3_close(struct audio_file *fd);
61 /**
62 * @brief Read data from the mp3 file and place it in buf.
64 size_t mp3_read(struct audio_file *fd, int16_t *buf, size_t len);
65 /**
66 * @brief Seek the mp3 file a relatime amount of seconds.
68 void mp3_seek(struct audio_file *fd, int len, int rel);
69 #endif /* BUILD_MP3 */
71 #ifdef BUILD_SNDFILE
72 /**
73 * @brief Open a soundfile.
75 int sndfile_open(struct audio_file *fd, const char *ext);
76 /**
77 * @brief Close the soundfile.
79 void sndfile_close(struct audio_file *fd);
80 /**
81 * @brief Read data from the soundfile and place it in buf.
83 size_t sndfile_read(struct audio_file *fd, int16_t *buf, size_t len);
84 /**
85 * @brief Seek a relative amount in seconds in the current file handle.
87 void sndfile_seek(struct audio_file *fd, int len, int rel);
88 #endif /* BUILD_SNDFILE */
90 #ifdef BUILD_VORBIS
91 /**
92 * @brief Open an Ogg Vorbis file.
94 int vorbis_open(struct audio_file *fd, const char *ext);
95 /**
96 * @brief Close and clean up the Ogg Vorbis file.
98 void vorbis_close(struct audio_file *fd);
99 /**
100 * @brief Read data from the Ogg Vorbis file and place it in buf.
102 size_t vorbis_read(struct audio_file *fd, int16_t *buf, size_t len);
104 * @brief Seek a relative amount in seconds in the current file handle.
106 void vorbis_seek(struct audio_file *fd, int len, int rel);
107 #endif /* BUILD_VORBIS */