sync with 1.0.2
[flac.git] / doc / developers.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <!-- Copyright (c)  2000,2001,2002  Josh Coalson -->
3 <!-- Permission is granted to copy, distribute and/or modify this document -->
4 <!-- under the terms of the GNU Free Documentation License, Version 1.1 -->
5 <!-- or any later version published by the Free Software Foundation; -->
6 <!-- with no invariant sections. -->
7 <!-- A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html -->
8 <HTML>
9 <HEAD>
10         <TITLE>FLAC - developers</TITLE>
11 </HEAD>
12
13 <BODY MARGINWIDTH="0" MARGINHEIGHT="0" LEFTMARGIN="0" RIGHTMARGIN="0" TOPMARGIN="0" BGCOLOR="#99CC99" TEXT="#000000" LINK="#336699" VLINK="#336699" ALINK="#336699">
14
15 <TABLE BORDER=0 WIDTH="100%" CELLPADDING=1 CELLSPACING=0>
16         <TR>
17                 <TD ALIGN="CENTER" BGCOLOR="#000000"><A HREF="http://flac.sourceforge.net/"><IMG SRC="images/logo.jpg" ALIGN=CENTER ALT="FLAC Logo" BORDER=0 HSPACE=0></a></TD>
18         </TR>
19 </TABLE>
20
21 <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#99CC99"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="25" ALT=""></TD></TR></TABLE>
22
23 <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="2" ALT=""></TD></TR></TABLE>
24
25 <TABLE WIDTH="100%" CELLPADDING=0 CELLSPACING=0 BORDER=0>
26         <TR>
27                 <TD ALIGN="CENTER" BGCOLOR="#D3D4C5">
28                         <TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0>
29                                 <TR>
30                                         <TD HEIGHT=22 BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="index.html">home</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
31                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="news.html">news</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
32                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="download.html">download</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
33                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="features.html">features</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
34                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="goals.html">goals</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
35                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="format.html">format</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
36                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="id.html">id</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
37                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="comparison.html">comparison</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
38                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="documentation.html">documentation</A>&nbsp;&nbsp;</TD><TD BGCOLOR="#D3D4C5" ALIGN=CENTER>|</TD>
39                                         <TD           BGCOLOR="#D3D4C5" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;developers&nbsp;&nbsp;</TD>
40                                 </TR>
41                         </TABLE>
42                 </TD>
43         </TR>
44 </TABLE>
45
46 <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="2" ALT=""></TD></TR></TABLE>
47
48 <TABLE WIDTH="100%" CELLPADDING=0 CELLSPACING=0 BORDER=0>
49         <TR>
50                 <TD ALIGN="CENTER" BGCOLOR="#EEEED4">
51                         <TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0>
52                                 <TR>
53                                         <TD HEIGHT=22 BGCOLOR="#EEEED4" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;english&nbsp;&nbsp;</TD><TD BGCOLOR="#EEEED4" ALIGN=CENTER>|</TD>
54                                         <TD           BGCOLOR="#EEEED4" ALIGN=CENTER NOWRAP>&nbsp;&nbsp;<A CLASS="topnav" HREF="ru/developers.html">russian</A>&nbsp;&nbsp;</TD>
55                                 </TR>
56                         </TABLE>
57                 </TD>
58         </TR>
59 </TABLE>
60
61 <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="2" ALT=""></TD></TR></TABLE>
62
63 <CENTER>
64
65 <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#99CC99"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="15" ALT=""></TD></TR></TABLE>
66
67
68 <TABLE WIDTH="100%" CELLPADDING="5" CELLSPACING="5" BORDER="0">
69 <TR><TD>
70         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
71         <TABLE CELLSPACING="0" CELLPADDING="3" WIDTH="100%" BORDER="0" BGCOLOR="#D3D4C5">
72                 <TR><TD><FONT FACE="Lucida,Verdana,Helvetica,Arial">
73                 <B><FONT SIZE="+2">FLAC developers</FONT></B>
74                 </FONT></TD></TR>
75         </TABLE>
76         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
77         <TABLE CELLSPACING="0" CELLPADDING="3" WIDTH="100%" BORDER="0" BGCOLOR="#EEEED4">
78         <TR><TD><FONT FACE="Lucida,Verdana,Helvetica,Arial">
79         <P>
80                 FLAC is an open source project and we are happy to enlist the help of anyone who wants to contribute.  You can do this to a limited extent through the <A HREF="http://sourceforge.net/mail/?group_id=13478">mailing list</A> but if you have major changes to make to the code it's best to <A HREF="http://sourceforge.net/project/memberlist.php?group_id=13478">sign up as a developer</A>.  In either case, make sure to check out the <A HREF="goals.html">FLAC goals</A> first; there are some thing the we <B>don't</B> want added to FLAC, like copy protection and lossy compression.
81         </P>
82         <P>
83                 High priority items are:
84         </P>
85         <P>
86         <UL>
87                 <LI>
88                         More input plugins.  Currently there are plugins for XMMS and Winamp; Freeamp is in the works.  More is better!
89                 </LI>
90                 <LI>
91                         Improving the compression methods.
92                 </LI>
93         </UL>
94         </P>
95         <P>
96                 Some other "nice-to-haves":
97         </P>
98         <P>
99         <UL>
100                 <LI>
101                         Fix the MSVC makefiles to make libFLAC.dll (instead of just the .lib).
102                 </LI>
103                 <LI>
104                         Configurable ID3V1 support and ID3V2 support in the plugins.
105                 </LI>
106                 <LI>
107                         Support more input types than just WAVE and raw in <TT><B>flac</B></TT>.
108                 </LI>
109                 <LI>
110                         A better logo!  Gimp jedi I'm not...
111                 </LI>
112         </UL>
113         </P>
114         <P>
115                 Things that are in the works (check the flac-dev mailing list):
116         </P>
117         <P>
118         <UL>
119                 <LI>
120                         Windows ACM codec.
121                 </LI>
122                 <LI>
123                         FLAC module for <A HREF="http://oss.sgi.com/projects/audiofile/">Audiofile</A>.
124                 </LI>
125         </UL>
126         </P>
127         </FONT>
128         </TD></TR>
129         </TABLE>
130         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
131 </TD></TR>
132 </TABLE>
133
134
135 <TABLE WIDTH="100%" CELLPADDING="5" CELLSPACING="5" BORDER="0">
136 <TR><TD>
137         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
138         <TABLE CELLSPACING="0" CELLPADDING="3" WIDTH="100%" BORDER="0" BGCOLOR="#D3D4C5">
139                 <TR><TD><FONT FACE="Lucida,Verdana,Helvetica,Arial">
140                 <B><FONT SIZE="+2">third-party developers</FONT></B>
141                 </FONT></TD></TR>
142         </TABLE>
143         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
144         <TABLE CELLSPACING="0" CELLPADDING="3" WIDTH="100%" BORDER="0" BGCOLOR="#EEEED4">
145         <TR><TD><FONT FACE="Lucida,Verdana,Helvetica,Arial">
146         <P>
147                 FLAC is open to third-party developers who want to add support for FLAC into their programs.  All the necessary functionality is contained the library libFLAC which is licensed under the <A HREF="http://www.gnu.org/copyleft/lesser.html">LGPL</A>.  The relevant documentation here is:
148                 <UL>
149                         <LI>The <A HREF="documentation.html#libFLAC">libFLAC API documentation</A></LI>
150                         <LI>The <A HREF="format.html">formal description</A> of the FLAC format.</LI>
151                         <LI>The <A HREF="id.html">ID registration page</A> for registering an ID if you need to write custom metadata.</LI>
152                 </UL>
153         </P>
154         <P>
155                 There also are several examples in the FLAC code base of the use of libFLAC that may also be helpful.  Visit the <A HREF="download.html">download page</A> for instructions on how to get the source.
156         </P>
157         </FONT>
158         </TD></TR>
159         </TABLE>
160         <TABLE WIDTH="100%" CELLPADDING="0" CELLSPACING="0" BORDER="0"><TR BGCOLOR="#000000"><TD><IMG SRC="images/1x1.gif" WIDTH="1" HEIGHT="1" ALT=""></TD></TR></TABLE>
161 </TD></TR>
162 </TABLE>
163
164
165 </CENTER>
166
167 <P>&nbsp;Copyright (c) 2000,2001,2002 Josh Coalson</P>
168
169 </BODY>
170 </HTML>