<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> libsndfile : Embedded Sound Files. </TITLE> <META NAME="Author" CONTENT="Erik de Castro Lopo (erikd AT mega-nerd DOT com)"> <META NAME="Description" CONTENT="The libsndfile API."> <META NAME="Keywords" CONTENT="WAV AIFF AU libsndfile sound audio dsp Linux"> <LINK REL="stylesheet" HREF="libsndfile.css" TYPE="text/css" MEDIA="all"> <LINK REL="stylesheet" HREF="print.css" TYPE="text/css" MEDIA="print"> </HEAD> <!-- pepper --> <BODY> <!-- pepper --> <H1><B>Embedded Sound Files.</B></H1> <P> By using the open SNDFILE with a file descriptor function: </P> <!-- pepper --> <PRE> SNDFILE* sf_open_fd (int fd, int mode, SF_INFO *sfinfo, int close_desc) ; </PRE> <!-- pepper --> <P> it is possible to open sound files embedded within larger files. There are however a couple of caveats: <P> <!-- pepper --> <UL> <LI> Read/Write mode (SFM_RDWR) is not supported. <LI> Writing of embedded files is only supported at the end of the file. <LI> Reading of embedded files is only supported at file offsets greater than zero. <LI> Not all file formats are supported (currently only WAV, AIFF and AU). </UL> <!-- pepper --> <P> The test program <B>multi_file_test.c</B> in the <B>tests/</B> directory of the source code tarball shows how this functionality is used to read and write embedded files. </P> <!-- pepper --> </BODY> </HTML>