1 |
schoenebeck |
1405 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2 |
|
|
<html lang="en"> |
3 |
|
|
<head> |
4 |
|
|
<title>libgig</title> |
5 |
|
|
<link rel="shortcut icon" href="http://download.linuxsampler.org/favicon.ico" type="image/x-icon"> |
6 |
|
|
<link rel="stylesheet" type="text/css" href="css/content.css" title="content" media="all"> |
7 |
|
|
</head> |
8 |
|
|
<body> |
9 |
|
|
<center><h1>libgig</h1></center> |
10 |
|
|
<p> |
11 |
|
|
libgig is a C++ library for loading, modifying existing and creating new |
12 |
|
|
Gigasampler files and DLS (Downloadable Sounds) Level 1/2 files. The |
13 |
|
|
source code package includes a couple of command line tools based on the |
14 |
|
|
library. The library and tools are released in source code format under the |
15 |
|
|
<a href="http://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>. |
16 |
|
|
</p> |
17 |
|
|
<p> |
18 |
|
|
This library is developed and optimized for POSIX compliant operating |
19 |
|
|
systems like Linux and OSX and since release 3.1.1 for Windows as well. |
20 |
|
|
libgig was developed to compile on any operating system, though since |
21 |
|
|
release 3.0.0 libgig uses one tiny operating system dependant method to |
22 |
|
|
be able to resize files. Should be a 5 minute job to implement this method |
23 |
|
|
for other operating systems as well though. |
24 |
|
|
</p> |
25 |
|
|
|
26 |
|
|
<a name="src"></a> |
27 |
|
|
<h1>Source Code</h1> |
28 |
|
|
<p> |
29 |
|
|
<table border="1"> |
30 |
|
|
<TH> |
31 |
|
|
<TR> |
32 |
|
|
<TD>Version</TD> |
33 |
|
|
<TD>File Name</TD> |
34 |
|
|
<TD>File Size</TD> |
35 |
|
|
<TD>Date</TD> |
36 |
|
|
</TR> |
37 |
|
|
</TH> |
38 |
|
|
<tbody> |
39 |
|
|
<tr> |
40 |
schoenebeck |
1991 |
<td>3.3.0</td> |
41 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.3.0.tar.bz2">libgig-3.3.0.tar.bz2</a></td> |
42 |
|
|
<td>330k</td> |
43 |
|
|
<td>30-Jul-2009 10:35</td> |
44 |
|
|
</tr> |
45 |
|
|
<tr> |
46 |
schoenebeck |
1914 |
<td>3.2.1</td> |
47 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.2.1.tar.bz2">libgig-3.2.1.tar.bz2</a></td> |
48 |
|
|
<td>316k</td> |
49 |
|
|
<td>05-Dec-2007 16:33</td> |
50 |
|
|
</tr> |
51 |
|
|
<tr> |
52 |
schoenebeck |
1422 |
<td>3.2.0</td> |
53 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.2.0.tar.bz2">libgig-3.2.0.tar.bz2</a></td> |
54 |
|
|
<td>329k</td> |
55 |
|
|
<td>14-Oct-2007 16:52</td> |
56 |
|
|
</tr> |
57 |
|
|
<tr> |
58 |
schoenebeck |
1405 |
<td>3.1.1</td> |
59 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.1.1.tar.bz2">libgig-3.1.1.tar.bz2</a></td> |
60 |
|
|
<td>294k</td> |
61 |
|
|
<td>24-Mar-2007 19:26</td> |
62 |
|
|
</tr> |
63 |
|
|
<tr> |
64 |
|
|
<td>3.1.0</td> |
65 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.1.0.tar.bz2">libgig-3.1.0.tar.bz2</a></td> |
66 |
|
|
<td>294k</td> |
67 |
|
|
<td>24-Nov-2006 14:03</td> |
68 |
|
|
</tr> |
69 |
|
|
<tr> |
70 |
|
|
<td>3.0.0</td> |
71 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-3.0.0.tar.bz2">libgig-3.0.0.tar.bz2</a></td> |
72 |
|
|
<td>275k</td> |
73 |
|
|
<td>28-Apr-2006 20:05</td> |
74 |
|
|
</tr> |
75 |
|
|
<tr> |
76 |
|
|
<td>2.0.2</td> |
77 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-2.0.2.tar.bz2">libgig-2.0.2.tar.bz2</a></td> |
78 |
|
|
<td>255k</td> |
79 |
|
|
<td>15-Aug-2005 19:34</td> |
80 |
|
|
</tr> |
81 |
|
|
<tr> |
82 |
|
|
<td>2.0.1</td> |
83 |
|
|
<td><a href="http://download.linuxsampler.org/packages/libgig-2.0.1.tar.bz2">libgig-2.0.1.tar.bz2</a></td> |
84 |
|
|
<td>241k</td> |
85 |
|
|
<td>13-June-2005 02:18</td> |
86 |
|
|
</tr> |
87 |
|
|
<tr> |
88 |
|
|
<td>2.0.0</td> |
89 |
|
|
<td><A href="http://download.linuxsampler.org/packages/libgig-2.0.0.tar.bz2">libgig-2.0.0.tar.bz2</A></td> |
90 |
|
|
<td>61k</td> |
91 |
|
|
<td>10-May-2005 12:08</td> |
92 |
|
|
</tr> |
93 |
|
|
<tr> |
94 |
|
|
<td>1.0.0</td> |
95 |
|
|
<td><A href="http://download.linuxsampler.org/packages/libgig-1.0.0.tar.bz2">libgig-1.0.0.tar.bz2</A></td> |
96 |
|
|
<td>67k</td> |
97 |
|
|
<td>26-Nov-2004 23:39</td> |
98 |
|
|
</tr> |
99 |
|
|
<tr> |
100 |
|
|
<td>0.7.1</td> |
101 |
|
|
<td><A href="http://download.linuxsampler.org/packages/libgig-0.7.1.tar.bz2">libgig-0.7.1.tar.bz2</A></td> |
102 |
|
|
<td>56k</td> |
103 |
|
|
<td>09-July-2004 00:13</td> |
104 |
|
|
</tr> |
105 |
|
|
<tr> |
106 |
|
|
<td>0.7.0</td> |
107 |
|
|
<td><A href="http://download.linuxsampler.org/packages/libgig-0.7.0.tar.bz2">libgig-0.7.0.tar.bz2</A></td> |
108 |
|
|
<td>253k</td> |
109 |
|
|
<td>03-May-2004 16:51</td> |
110 |
|
|
</tr> |
111 |
|
|
<tr> |
112 |
|
|
<td>0.6.0</td> |
113 |
|
|
<td><A href="http://download.linuxsampler.org/packages/libgig-0.6.0.tar.bz2">libgig-0.6.0.tar.bz2</A></td> |
114 |
|
|
<td>336k</td> |
115 |
|
|
<td>20-Dec-2003 05:41</td> |
116 |
|
|
</tr> |
117 |
|
|
</tbody> |
118 |
|
|
</table> |
119 |
|
|
<br> |
120 |
persson |
2179 |
See <a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/ChangeLog"> |
121 |
schoenebeck |
1405 |
Changelog</a> for details. |
122 |
|
|
</p> |
123 |
|
|
|
124 |
|
|
<a name="binaries"></a> |
125 |
|
|
<h1>Binary Packages</h1> |
126 |
|
|
For <a href="http://download.linuxsampler.org/packages/win32/">Windows</a> you can find a precompiled DLL of libgig, |
127 |
|
|
coming with the example command line tools as .exe files, packed into one |
128 |
|
|
.zip file. For Linux there are currently <a href="http://download.linuxsampler.org/packages/debian/">Debian</a> packages |
129 |
|
|
and <a href="http://download.linuxsampler.org/packages/rpms/">RPM</a> packages for Redhat / Fedora, SuSE and Mandrake. |
130 |
|
|
Note that libgig is already part of many distributions. You might want to use |
131 |
|
|
packages coming with your distribution instead. |
132 |
|
|
|
133 |
|
|
<a name="tools"></a> |
134 |
|
|
<h1>Tools</h1> |
135 |
|
|
The libgig sources and the 'gigtools' Debian package contain the following command line tools: |
136 |
|
|
<ul> |
137 |
|
|
<li><b>gigextract</b> (Extracts samples from a .gig file)</li> |
138 |
|
|
<li><b>gigdump</b> (Prints out the content of a .gig file)</li> |
139 |
|
|
<li><b>dlsdump</b> (Prints out the content of a DLS file)</li> |
140 |
|
|
<li><b>rifftree</b> (Prints out the RIFF tree structure of an arbitrary RIFF file)</li> |
141 |
|
|
</ul> |
142 |
|
|
|
143 |
|
|
<a name="doc"></a> |
144 |
|
|
<h1>Documentation</h1> |
145 |
|
|
<p> |
146 |
|
|
Online API Documentation for the latest libgig version |
147 |
|
|
(<a href="http://download.linuxsampler.org/doc/libgig/api/">HTML</a>) |
148 |
|
|
</p> |
149 |
|
|
<p> |
150 |
schoenebeck |
1834 |
Kick start documentation for libgig (<a href="http://download.linuxsampler.org/doc/libgig/Introduction.sxw">OpenOffice</a>, <a href="http://download.linuxsampler.org/doc/libgig/Introduction.pdf">PDF</a>) |
151 |
schoenebeck |
1405 |
</p> |
152 |
|
|
|
153 |
|
|
<a name="examples"></a> |
154 |
|
|
<h1>Examples</h1> |
155 |
|
|
There are couple of example applications which demonstrate how to use the |
156 |
|
|
library. Beside the mentioned <a href="#tools">tools</a> coming with the |
157 |
|
|
source packages, there are also the following demo applications (only in |
158 |
|
|
source code format): |
159 |
|
|
<ul> |
160 |
|
|
<li><a href="examples/gigwritedemo.cpp"><b>gigwritedemo.cpp</b></a> (demonstrates how to create and modify Gigasampler format files)</li> |
161 |
|
|
<li><a href="examples/dlswritedemo.cpp"><b>dlswritedemo.cpp</b></a> (demonstrates how to create and modify DLS Level 1/2 files)</li> |
162 |
|
|
<li><a href="examples/riffwritedemo.cpp"><b>riffwritedemo.cpp</b></a> (demonstrates how to create and modify RIFF files in general)</li> |
163 |
|
|
</ul> |
164 |
|
|
|
165 |
schoenebeck |
1990 |
<a name="apps"></a> |
166 |
|
|
<h1>Applications</h1> |
167 |
|
|
<p> |
168 |
|
|
Besides <a href="http://www.linuxsampler.org">LinuxSampler</a> and its |
169 |
|
|
related programs (e.g. qsampler, gigedit), the following third party |
170 |
|
|
applications are also using libgig to access Gigasampler format files: |
171 |
|
|
<ul> |
172 |
|
|
<li><a href="http://www.wikid.co.uk/capture/">Capture</a></li> |
173 |
|
|
</ul> |
174 |
|
|
You are also using libgig for your application? Please let me know! |
175 |
|
|
</p> |
176 |
|
|
|
177 |
schoenebeck |
1405 |
<a name="diagrams"></a> |
178 |
|
|
<h1>Diagrams</h1> |
179 |
|
|
<p> |
180 |
|
|
UML static structure diagram focused on the aspect of actually using the |
181 |
|
|
library (created with <a href="http://wwwhome.cs.utwente.nl/~tcm/">TCM</a>): |
182 |
|
|
<table border="1"> |
183 |
|
|
<TH> |
184 |
|
|
<TR> |
185 |
|
|
<TD>Version</TD> |
186 |
|
|
<TD>File Formats</TD> |
187 |
|
|
<TD>Date</TD> |
188 |
|
|
</TR> |
189 |
|
|
</TH> |
190 |
|
|
<tbody> |
191 |
|
|
<tr> |
192 |
|
|
<td>1.0.0</td> |
193 |
|
|
<td> |
194 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-1.0.0.ssd">TCM</A>, |
195 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-1.0.0.pdf">PDF</A>, |
196 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-1.0.0.ps">PostScript</A> |
197 |
|
|
</td> |
198 |
|
|
<td>26-Nov-2004 21:18</td> |
199 |
|
|
</tr> |
200 |
|
|
<tr> |
201 |
|
|
<td>0.7.x</td> |
202 |
|
|
<td> |
203 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.7.0.ssd">TCM</A>, |
204 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.7.0.pdf">PDF</A>, |
205 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.7.0.ps">PostScript</A> |
206 |
|
|
</td> |
207 |
|
|
<td>03-May-2004 17:36</td> |
208 |
|
|
</tr> |
209 |
|
|
<tr> |
210 |
|
|
<td>0.6.0</td> |
211 |
|
|
<td> |
212 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.6.0.ssd">TCM</A>, |
213 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.6.0.pdf">PDF</A>, |
214 |
|
|
<A href="http://download.linuxsampler.org/doc/libgig/libgig-0.6.0.ps">PostScript</A> |
215 |
|
|
</td> |
216 |
|
|
<td>20-Dec-2003 05:41</td> |
217 |
|
|
</tr> |
218 |
|
|
</tbody> |
219 |
|
|
</table> |
220 |
|
|
(Sorry, these UML diagrams are a bit outdated). |
221 |
|
|
</p> |
222 |
|
|
|
223 |
persson |
2178 |
<a name="svn"></a> |
224 |
|
|
<h1>Subversion</h1> |
225 |
schoenebeck |
1405 |
<p> |
226 |
|
|
You can check out the latest development version of libgig from the |
227 |
persson |
2178 |
LinuxSampler Subversion server: |
228 |
schoenebeck |
1405 |
</p> |
229 |
|
|
<p> |
230 |
|
|
<table border="1"> |
231 |
|
|
<tbody> |
232 |
persson |
2178 |
<tr><TD>svn co https://svn.linuxsampler.org/svn/libgig/trunk libgig</TD></tr> |
233 |
schoenebeck |
1405 |
</tbody> |
234 |
|
|
</table> |
235 |
|
|
</p> |
236 |
|
|
<p> |
237 |
persson |
2178 |
You can also <a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/">browse the libgig Subversion repository</a>. |
238 |
schoenebeck |
1405 |
</p> |
239 |
|
|
|
240 |
|
|
<a name="author"></a> |
241 |
|
|
<h1>Author</h1> |
242 |
|
|
<p>This library was written by <a href="mailto:cuse@users.sf.net">Christian Schoenebeck</a> |
243 |
|
|
(<a href="http://stud.fh-heilbronn.de/~cschoene/gpg.asc">PGP/GPG Public Key</a>). |
244 |
|
|
</p> |
245 |
|
|
|
246 |
|
|
<a name="license"></a> |
247 |
|
|
<h1>Licensing</h1> |
248 |
|
|
<p> |
249 |
|
|
libgig and its tools are released under the |
250 |
|
|
<a href="http://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>. |
251 |
|
|
</p> |
252 |
|
|
|
253 |
|
|
<a name="contact"></a> |
254 |
|
|
<h1>Contact</h1> |
255 |
|
|
<p>You can either send emails to the |
256 |
|
|
<a href="mailto:linuxsampler-devel@lists.sourceforge.net">LinuxSampler Developers Mailing List</a> |
257 |
|
|
or contact <a href="mailto:cuse@users.sf.net">me</a> directly. |
258 |
|
|
</p> |
259 |
|
|
|
260 |
|
|
<p> |
261 |
|
|
Happy hacking!<br> |
262 |
|
|
Christian |
263 |
|
|
</p> |
264 |
|
|
</body> |
265 |
|
|
</html> |