1 |
<!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="https://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 |
GigaStudio/Gigasampler (.gig) files and DLS (Downloadable Sounds) Level 1/2 files, KORG sample |
13 |
based instruments (.KSF and .KMP files), SoundFont v2 (.sf2) files and AKAI sampler data. |
14 |
The source code package includes a couple of command line tools based on the |
15 |
library. The library and tools are released in source code format under the |
16 |
<a href="https://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>, |
17 |
except the AKAI classes which are released under the |
18 |
<a href="https://www.gnu.org/copyleft/lgpl.html">GNU Lesser General Public License</a>. |
19 |
</p> |
20 |
<p> |
21 |
This library is developed and optimized for POSIX compliant operating |
22 |
systems like Linux and OSX and since release 3.1.1 for Windows as well. |
23 |
libgig was developed to compile on any operating system. There are some |
24 |
very few build requirements though: |
25 |
<ul> |
26 |
<li> |
27 |
Since release 3.0.0 libgig uses one tiny operating system dependant method to |
28 |
be able to resize files. Should be a 5 minute job to implement this method |
29 |
for other operating systems as well though. |
30 |
</li> |
31 |
<li> |
32 |
Since release 4.3.0, at least a C++11 compliant compiler is required to build |
33 |
libgig from source. |
34 |
</li> |
35 |
<li> |
36 |
Since release 4.3.0, an UUID generating function is required to be provided by |
37 |
the underlying OS. In previous libgig versions this was an optional feature, |
38 |
its absence only prevented gig files modified by libgig potentially from being |
39 |
accepted by Tascam's GigaStudio. It dit not mean any restriction with LinuxSampler |
40 |
though, this has changed in the meantime so this is now a hard build requirement. |
41 |
</li> |
42 |
</ul> |
43 |
</p> |
44 |
|
45 |
<a name="src"></a> |
46 |
<h1>Source Code</h1> |
47 |
<p> |
48 |
<table border="1"> |
49 |
<TH> |
50 |
<TR> |
51 |
<TD>Version</TD> |
52 |
<TD>File Name</TD> |
53 |
<TD>File Size</TD> |
54 |
<TD>Date</TD> |
55 |
</TR> |
56 |
</TH> |
57 |
<tbody id="tar"> |
58 |
<tr> |
59 |
<td>4.4.1</td> |
60 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.4.1.tar.bz2">libgig-4.4.1.tar.bz2</a></td> |
61 |
<td>576K</td> |
62 |
<td>20-Feb-2024 17:32</td> |
63 |
</tr> |
64 |
<tr> |
65 |
<td>4.4.0</td> |
66 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.4.0.tar.bz2">libgig-4.4.0.tar.bz2</a></td> |
67 |
<td>576K</td> |
68 |
<td>26-Jan-2024 19:04</td> |
69 |
</tr> |
70 |
<tr> |
71 |
<td>4.3.0</td> |
72 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.3.0.tar.bz2">libgig-4.3.0.tar.bz2</a></td> |
73 |
<td>744k</td> |
74 |
<td>09-May-2021 12:56</td> |
75 |
</tr> |
76 |
<tr> |
77 |
<td>4.2.0</td> |
78 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.2.0.tar.bz2">libgig-4.2.0.tar.bz2</a></td> |
79 |
<td>729k</td> |
80 |
<td>25-Jul-2017 13:10</td> |
81 |
</tr> |
82 |
<tr> |
83 |
<td>4.1.0</td> |
84 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.1.0.tar.bz2">libgig-4.1.0.tar.bz2</a></td> |
85 |
<td>526k</td> |
86 |
<td>25-Nov-2017 13:52</td> |
87 |
</tr> |
88 |
<tr> |
89 |
<td>4.0.0</td> |
90 |
<td><a href="https://download.linuxsampler.org/packages/libgig-4.0.0.tar.bz2">libgig-4.0.0.tar.bz2</a></td> |
91 |
<td>684k</td> |
92 |
<td>14-Jul-2015 18:36</td> |
93 |
</tr> |
94 |
<tr> |
95 |
<td>3.3.0</td> |
96 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.3.0.tar.bz2">libgig-3.3.0.tar.bz2</a></td> |
97 |
<td>330k</td> |
98 |
<td>30-Jul-2009 10:35</td> |
99 |
</tr> |
100 |
<tr> |
101 |
<td>3.2.1</td> |
102 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.2.1.tar.bz2">libgig-3.2.1.tar.bz2</a></td> |
103 |
<td>316k</td> |
104 |
<td>05-Dec-2007 16:33</td> |
105 |
</tr> |
106 |
<tr> |
107 |
<td>3.2.0</td> |
108 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.2.0.tar.bz2">libgig-3.2.0.tar.bz2</a></td> |
109 |
<td>329k</td> |
110 |
<td>14-Oct-2007 16:52</td> |
111 |
</tr> |
112 |
<tr> |
113 |
<td>3.1.1</td> |
114 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.1.1.tar.bz2">libgig-3.1.1.tar.bz2</a></td> |
115 |
<td>294k</td> |
116 |
<td>24-Mar-2007 19:26</td> |
117 |
</tr> |
118 |
<tr> |
119 |
<td>3.1.0</td> |
120 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.1.0.tar.bz2">libgig-3.1.0.tar.bz2</a></td> |
121 |
<td>294k</td> |
122 |
<td>24-Nov-2006 14:03</td> |
123 |
</tr> |
124 |
<tr> |
125 |
<td>3.0.0</td> |
126 |
<td><a href="https://download.linuxsampler.org/packages/libgig-3.0.0.tar.bz2">libgig-3.0.0.tar.bz2</a></td> |
127 |
<td>275k</td> |
128 |
<td>28-Apr-2006 20:05</td> |
129 |
</tr> |
130 |
<tr> |
131 |
<td>2.0.2</td> |
132 |
<td><a href="https://download.linuxsampler.org/packages/libgig-2.0.2.tar.bz2">libgig-2.0.2.tar.bz2</a></td> |
133 |
<td>255k</td> |
134 |
<td>15-Aug-2005 19:34</td> |
135 |
</tr> |
136 |
<tr> |
137 |
<td>2.0.1</td> |
138 |
<td><a href="https://download.linuxsampler.org/packages/libgig-2.0.1.tar.bz2">libgig-2.0.1.tar.bz2</a></td> |
139 |
<td>241k</td> |
140 |
<td>13-June-2005 02:18</td> |
141 |
</tr> |
142 |
<tr> |
143 |
<td>2.0.0</td> |
144 |
<td><A href="https://download.linuxsampler.org/packages/libgig-2.0.0.tar.bz2">libgig-2.0.0.tar.bz2</A></td> |
145 |
<td>61k</td> |
146 |
<td>10-May-2005 12:08</td> |
147 |
</tr> |
148 |
<tr> |
149 |
<td>1.0.0</td> |
150 |
<td><A href="https://download.linuxsampler.org/packages/libgig-1.0.0.tar.bz2">libgig-1.0.0.tar.bz2</A></td> |
151 |
<td>67k</td> |
152 |
<td>26-Nov-2004 23:39</td> |
153 |
</tr> |
154 |
<tr> |
155 |
<td>0.7.1</td> |
156 |
<td><A href="https://download.linuxsampler.org/packages/libgig-0.7.1.tar.bz2">libgig-0.7.1.tar.bz2</A></td> |
157 |
<td>56k</td> |
158 |
<td>09-July-2004 00:13</td> |
159 |
</tr> |
160 |
<tr> |
161 |
<td>0.7.0</td> |
162 |
<td><A href="https://download.linuxsampler.org/packages/libgig-0.7.0.tar.bz2">libgig-0.7.0.tar.bz2</A></td> |
163 |
<td>253k</td> |
164 |
<td>03-May-2004 16:51</td> |
165 |
</tr> |
166 |
<tr> |
167 |
<td>0.6.0</td> |
168 |
<td><A href="https://download.linuxsampler.org/packages/libgig-0.6.0.tar.bz2">libgig-0.6.0.tar.bz2</A></td> |
169 |
<td>336k</td> |
170 |
<td>20-Dec-2003 05:41</td> |
171 |
</tr> |
172 |
</tbody> |
173 |
</table> |
174 |
<br> |
175 |
See <a href="https://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/ChangeLog"> |
176 |
Changelog</a> for details. |
177 |
</p> |
178 |
|
179 |
<a name="binaries"></a> |
180 |
<h1>Binary Packages</h1> |
181 |
For <a href="https://download.linuxsampler.org/packages/win32/">Windows</a> you can find a precompiled DLL of libgig, |
182 |
coming with the example command line tools as .exe files, packed into one |
183 |
.zip file. For Linux there are currently <a href="https://download.linuxsampler.org/packages/debian/">Debian</a> packages |
184 |
and <a href="https://download.linuxsampler.org/packages/rpms/">RPM</a> packages for Redhat / Fedora, SuSE and Mandrake. |
185 |
Note that libgig is already part of many distributions. You might want to use |
186 |
packages coming with your distribution instead. |
187 |
|
188 |
<a name="tools"></a> |
189 |
<h1>Tools</h1> |
190 |
The libgig sources and the 'gigtools' Debian package contain the following command line tools: |
191 |
<ul> |
192 |
<li><b>gigextract</b> (Extracts samples from a .gig file)</li> |
193 |
<li><b>gigdump</b> (Prints out the content of a .gig file)</li> |
194 |
<li><b>gigmerge</b> (Merges several .gig files to one .gig file)</li> |
195 |
<li><b>gig2mono</b> (Converts .gig files from stereo to mono)</li> |
196 |
<li><b>gig2stereo</b> (Converts .gig files to true interleaved stereo sounds)</li> |
197 |
<li><b>korgdump</b> (Prints out the content of the various KORG file types)</li> |
198 |
<li><b>korg2gig</b> (Convert KORG sound file to Gigasampler/GigaStudio format)</li> |
199 |
<li><b>sf2dump</b> (Prints out the content of a .sf2 file)</li> |
200 |
<li><b>sf2extract</b> (Extracts audio samples from a .sf2 file)</li> |
201 |
<li><b>akaidump</b> (Dump an AKAI media i.e. from a CDROM drive as disk image file |
202 |
to your hard disk drive)</li> |
203 |
<li><b>akaiextract</b> (Extracts samples from an Akai disk image, either from a media |
204 |
i.e. CDROM or Zip drive, from a AKAI disk image file)</li> |
205 |
<li><b>dlsdump</b> (Prints out the content of a DLS file)</li> |
206 |
<li><b>rifftree</b> (Prints out the RIFF tree structure of an arbitrary RIFF file)</li> |
207 |
</ul> |
208 |
|
209 |
<a name="doc"></a> |
210 |
<h1>Documentation</h1> |
211 |
<p> |
212 |
Online API Documentation for the latest libgig version (automatically updated to latest version from SVN) |
213 |
(<a href="https://download.linuxsampler.org/doc/libgig/api/">HTML</a>) |
214 |
</p> |
215 |
<p> |
216 |
Old kick start documentation for libgig (<a href="https://download.linuxsampler.org/doc/libgig/Introduction.sxw">OpenOffice</a>, <a href="https://download.linuxsampler.org/doc/libgig/Introduction.pdf">PDF</a>) |
217 |
</p> |
218 |
|
219 |
<a name="examples"></a> |
220 |
<h1>Examples</h1> |
221 |
There are couple of example applications which demonstrate how to use the |
222 |
library. Beside the mentioned <a href="#tools">tools</a> coming with the |
223 |
source packages, there are also the following demo applications (only in |
224 |
source code format): |
225 |
<ul> |
226 |
<li><a href="examples/gigwritedemo.cpp"><b>gigwritedemo.cpp</b></a> (demonstrates how to create and modify Gigasampler format files)</li> |
227 |
<li><a href="examples/dlswritedemo.cpp"><b>dlswritedemo.cpp</b></a> (demonstrates how to create and modify DLS Level 1/2 files)</li> |
228 |
<li><a href="examples/riffwritedemo.cpp"><b>riffwritedemo.cpp</b></a> (demonstrates how to create and modify RIFF files in general)</li> |
229 |
</ul> |
230 |
|
231 |
<a name="apps"></a> |
232 |
<h1>Applications</h1> |
233 |
<p> |
234 |
Besides <a href="https://www.linuxsampler.org">LinuxSampler</a> and its |
235 |
related programs (e.g. qsampler, gigedit), the following third party |
236 |
applications are also using libgig to access Gigasampler format files: |
237 |
<ul> |
238 |
<li><a href="http://www.wikid.co.uk/capture/">Capture</a></li> |
239 |
</ul> |
240 |
You are also using libgig for your application? Please let me know! |
241 |
</p> |
242 |
|
243 |
<a name="diagrams"></a> |
244 |
<h1>Diagrams</h1> |
245 |
<p> |
246 |
UML static structure diagram focused on the aspect of actually using the |
247 |
library (created with <a href="http://wwwhome.cs.utwente.nl/~tcm/">TCM</a>): |
248 |
<table border="1"> |
249 |
<TH> |
250 |
<TR> |
251 |
<TD>Version</TD> |
252 |
<TD>File Formats</TD> |
253 |
<TD>Date</TD> |
254 |
</TR> |
255 |
</TH> |
256 |
<tbody> |
257 |
<tr> |
258 |
<td>1.0.0</td> |
259 |
<td> |
260 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-1.0.0.ssd">TCM</A>, |
261 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-1.0.0.pdf">PDF</A>, |
262 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-1.0.0.ps">PostScript</A> |
263 |
</td> |
264 |
<td>26-Nov-2004 21:18</td> |
265 |
</tr> |
266 |
<tr> |
267 |
<td>0.7.x</td> |
268 |
<td> |
269 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.7.0.ssd">TCM</A>, |
270 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.7.0.pdf">PDF</A>, |
271 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.7.0.ps">PostScript</A> |
272 |
</td> |
273 |
<td>03-May-2004 17:36</td> |
274 |
</tr> |
275 |
<tr> |
276 |
<td>0.6.0</td> |
277 |
<td> |
278 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.6.0.ssd">TCM</A>, |
279 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.6.0.pdf">PDF</A>, |
280 |
<A href="https://download.linuxsampler.org/doc/libgig/libgig-0.6.0.ps">PostScript</A> |
281 |
</td> |
282 |
<td>20-Dec-2003 05:41</td> |
283 |
</tr> |
284 |
</tbody> |
285 |
</table> |
286 |
(Sorry, these UML diagrams are a bit outdated). |
287 |
</p> |
288 |
|
289 |
<a name="svn"></a> |
290 |
<h1>Subversion</h1> |
291 |
<p> |
292 |
You can check out the latest development version of libgig from the |
293 |
LinuxSampler Subversion server: |
294 |
</p> |
295 |
<p> |
296 |
<table border="1"> |
297 |
<tbody> |
298 |
<tr><TD>svn co https://svn.linuxsampler.org/svn/libgig/trunk libgig</TD></tr> |
299 |
</tbody> |
300 |
</table> |
301 |
</p> |
302 |
<p> |
303 |
You can also <a href="https://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/">browse the libgig Subversion repository</a>. |
304 |
</p> |
305 |
|
306 |
<a name="author"></a> |
307 |
<h1>Author</h1> |
308 |
<p>This library was written by <a href="mailto:cuse@users.sf.net">Christian Schoenebeck</a> |
309 |
(<a href="http://stud.fh-heilbronn.de/~cschoene/gpg.asc">PGP/GPG Public Key</a>). |
310 |
</p> |
311 |
|
312 |
<a name="license"></a> |
313 |
<h1>Licensing</h1> |
314 |
<p> |
315 |
libgig and its tools are released under the |
316 |
<a href="https://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>, |
317 |
except the AKAI classes which are released under the |
318 |
<a href="https://www.gnu.org/copyleft/lgpl.html">GNU Lesser General Public License</a> |
319 |
</p> |
320 |
|
321 |
<a name="contact"></a> |
322 |
<h1>Contact</h1> |
323 |
<p>You can either send emails to the |
324 |
<a href="mailto:linuxsampler-devel@lists.sourceforge.net">LinuxSampler Developers Mailing List</a> |
325 |
or contact <a href="mailto:cuse@users.sf.net">me</a> directly. |
326 |
</p> |
327 |
|
328 |
<p> |
329 |
Happy hacking!<br> |
330 |
Christian |
331 |
</p> |
332 |
</body> |
333 |
</html> |