Git init
[external/libsndfile.git] / doc / embedded_files.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <HTML>
3
4 <HEAD>
5         <TITLE>
6         libsndfile : Embedded Sound Files.
7         </TITLE>
8         <META NAME="Author"      CONTENT="Erik de Castro Lopo (erikd AT mega-nerd DOT com)">
9         <META NAME="Description" CONTENT="The libsndfile API.">
10         <META NAME="Keywords"    CONTENT="WAV AIFF AU libsndfile sound audio dsp Linux">
11         <LINK REL="stylesheet" HREF="libsndfile.css" TYPE="text/css" MEDIA="all">
12         <LINK REL="stylesheet" HREF="print.css" TYPE="text/css" MEDIA="print">
13 </HEAD>
14 <!-- pepper -->
15 <BODY>
16 <!-- pepper -->
17 <H1><B>Embedded Sound Files.</B></H1>
18
19 <P>
20 By using the open SNDFILE with a file descriptor function:
21 </P>
22 <!-- pepper -->
23 <PRE>
24       SNDFILE*  sf_open_fd (int fd, int mode, SF_INFO *sfinfo, int close_desc) ;
25 </PRE>
26 <!-- pepper -->
27 <P>
28 it is possible to open sound files embedded within larger files.
29 There are however a couple of caveats:
30 <P>
31 <!-- pepper -->
32 <UL>
33         <LI> Read/Write mode (SFM_RDWR) is not supported.
34         <LI> Writing of embedded files is only supported at the end of the file.
35         <LI> Reading of embedded files is only supported at file offsets greater
36                         than zero.
37         <LI> Not all file formats are supported (currently only WAV, AIFF and AU).
38 </UL>
39 <!-- pepper -->
40 <P>
41 The test program <B>multi_file_test.c</B> in the <B>tests/</B> directory of the
42 source code tarball shows how this functionality is used to read and write
43 embedded files.
44 </P>
45 <!-- pepper -->
46 </BODY>
47 </HTML>