/usr/share/doc/libgig-dev/html/index.html is in libgig-doc 4.1.0~repack-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libgig: libgig</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">libgig
 <span id="projectnumber">4.1.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('index.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">libgig </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h1><a class="anchor" id="Intro"></a>
Intro</h1>
<p>libgig is a C++ library for accessing audio-sample based instrument files, as they are shipped for various software samplers, hardware sampler devices and synthesizer keyboards. This C++ library was originally created to access Gigasampler files, but in the meantime grew to much more than that. At the moment libgig consists of the following four major parts:</p>
<ul>
<li><b>1</b>. <a class="el" href="namespacegig.html">gig</a> classes: These provide convenient access to <b>Gigasampler</b> / <b>GigaStudio</b> files (for all known format version, that is from Gigasampler v1 to GigaStudio v4), allowing to load, modify and save existing .gig files, as well as creating new .gig files from scratch.<br />
<br />
Since the gig file format was originally designed based on the <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> Level 2 format, the gig classes in this library are derived from the <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> classes of this library, where the gig classes provide the necessary extensions for the Gigasampler file format.<br />
<br />
Besides the fact that libgig supports all aspects of the original Gigasampler / GigaStudio format, it now also provides some own extensions of that original format. Most notably libgig provides an extension to save <a class="el" href="classgig_1_1Script.html">real-time instrument scripts</a> with .gig files. Those custom extensions are however currently only supported by the graphical instrument editor application <b>gigedit</b> and by <b>LinuxSampler</b>, those extensions will obviously not work with the original GigaStudio software.</li>
<li><b>2</b>. <a class="el" href="namespacesf2.html">sf2</a> classes: These provide support for loading and modifying <b>SoundFont</b> version 2 files. Even though being an older format, the SoundFont format is still one of the most popular sample based instrument file formats and is widely supported by a variety of hardware and software.</li>
<li><b>3</b>. <a class="el" href="namespaceKorg.html">Korg</a> classes: These provide support for loading sample based instrument files of KORG's synthesizer keyboard models <em>Kronos</em>, <em>M3</em>, <em>Oasys</em>, <em>Triton</em> and <em>Trinity</em>. There is currently no support for modifying KORG files yet.</li>
<li><b>4</b>. <b>AKAI</b> classes: These provide support for loading sample based disks (CDROMs, hard disks, ZIP disks) and disk image files of AKAI's hardware sampler series <em>S1000</em>, <em>S01</em>, <em>S2000</em> and <em>S3000</em>.<br />
<br />
The AKAI classes are a branch of <em>libakai</em>. In the AKAI classes of libgig, libakai's original dependency to the so called <em>Carbon</em> C++ library has been removed and has been replaced by using ordinay <a href="http://en.wikipedia.org/wiki/Standard_Template_Library">C++ STL</a> classes instead. Further, this branch of libakai also provides support for Linux and other POSIX based OSes (the original libakai was limited to Mac and Windows).<br />
<br />
Currently the AKAI classes don't have their own dedicated C++ namespace. Refer to class <a class="el" href="classAkaiDisk.html">AkaiDisk</a> as toplevel entry class for accessing AKAI sounds.</li>
</ul>
<p>Besides the mentioned major parts above, libgig also provides the following three other components:</p>
<ul>
<li><b>5</b>. <a class="el" href="namespaceDLS.html">DLS</a> classes: Provide convenient methods to access <b><a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a></b> (<em>Downloadable Sounds</em>) Level 1 and 2 files. The <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> file format has been designed as open file format to be adopted by various keyboard manufacturers for their sounds. However it never really made it to a broad standard. You can use the <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> classes of libgig to load, modify and create <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> files from scratch, however you will probably not find many <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> files and/or software or hardware that supports this file format. The main reason why these classes exist in libgig, is because of the fact that the Gigasampler / GigaStudio file format was designed as extension on top of the <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> file format (with quite some radical modifications though).</li>
<li><b>6</b>. <a class="el" href="namespaceRIFF.html">RIFF</a> classes: Provide convenient methods to parse and access arbitrary <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> files. The <em>"Resource Interchange File Format"</em> provides universal data containers ordered in a tree-like structure and can be compared to XML, but with the difference that <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> is binary encoded.<br />
<br />
The <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> file format, the gig file format, the <a class="el" href="namespacesf2.html" title="SoundFont specific classes and definitions. ">sf2</a> file format and KORG's file format are all based on <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> on lowest level of their file format. And consequently all those classes mentioned above are using the <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> classes for that purpose.</li>
<li><b>7</b>. <a class="el" href="namespaceSerialization.html">Serialization</a> classes: This is a separate framework on its own, which allows efficient and powerful serialization and deserialization of native C++ objects and is used by <a class="el" href="namespacegig.html">gig</a> classes and i.e. the gigedit application for implementing a preset system.</li>
</ul>
<h1><a class="anchor" id="License"></a>
License</h1>
<p>Most parts of libgig and its tools are released under the terms of the <a href="http://www.gnu.org/licenses/gpl-2.0.html">GNU General Public License (GPL)</a>. This applies to the <a class="el" href="namespacegig.html">gig</a> classes, <a class="el" href="namespacesf2.html">sf2</a> classes, <a class="el" href="namespaceKorg.html">Korg</a> classes, <a class="el" href="namespaceDLS.html">DLS</a> classes, <a class="el" href="namespaceRIFF.html">RIFF</a> classes and all of their tools and example programs. We may offer you a commercial license for using libgig in commercial products. If you are interested in a commercial license, <a href="http://www.linuxsampler.org/developers.html">contact us!</a></p>
<p>The <b>AKAI</b> classes and their tools / example programs are released under the terms of the <a href="https://www.gnu.org/licenses/lgpl.html">GNU Lesser General Public License (LGPL)</a>.</p>
<p>If you have any questions regarding license aspects, <a href="http://www.linuxsampler.org/developers.html">contact us!</a></p>
<h1><a class="anchor" id="Examples"></a>
Examples</h1>
<p>Beside the actual C++ library, there are the following example applications which demonstrate how to use the library:</p>
<ul>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/gigdump.cpp?view=markup"><b>gigdump:</b> </a> Prints out the content of a .gig file.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/gigextract.cpp?view=markup"><b>gigextract:</b> </a> Extracts audio samples from a .gig file as .wav files.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/gigmerge.cpp?view=markup"><b>gigmerge:</b> </a> Combines multiple .gig files to one .gig file.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/gig2mono.cpp?view=markup"><b>gig2mono:</b> </a> Converts .gig files from stereo to mono.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/gig2stereo.cpp?view=markup"><b>gig2stereo:</b> </a> Converts .gig files from mono sample pairs to true interleaved stereo.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/dlsdump.cpp?view=markup"><b>dlsdump:</b> </a> Prints out the content of a <a class="el" href="namespaceDLS.html" title="DLS specific classes and definitions. ">DLS</a> file.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/rifftree.cpp?view=markup"><b>rifftree:</b> </a> Prints out the <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> tree of an arbitrary <a class="el" href="namespaceRIFF.html" title="RIFF specific classes and definitions. ">RIFF</a> container file.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/sf2dump.cpp?view=markup"><b>sf2dump:</b> </a> Prints out the content of a .<a class="el" href="namespacesf2.html" title="SoundFont specific classes and definitions. ">sf2</a> file.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/sf2extract.cpp?view=markup"><b>sf2extract:</b> </a> Extracts audio samples from a .<a class="el" href="namespacesf2.html" title="SoundFont specific classes and definitions. ">sf2</a> file as .wav files.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/korgdump.cpp?view=markup"><b>korgdump:</b> </a> Prints out the content of KORG sound files (.KSF, .KMP).</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/korg2gig.cpp?view=markup"><b>korg2gig:</b> </a> Converts KORG (.KSF, .KMP) sound files to GigaStudio (.gig) files.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/akaidump.cpp?view=markup"><b>akaidump:</b> </a> Dump an AKAI media i.e. from a CDROM drive as disk image file to your HD.</li>
<li><a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/libgig/trunk/src/tools/akaiextract.cpp?view=markup"><b>akaiextract:</b> </a> Extracts audio samples from an AKAI media or from an AKAI disk image file (as .wav files).</li>
</ul>
<p>Currently libgig ist most prominently used by LinuxSampler and gigedit.</p>
<h1><a class="anchor" id="Portability"></a>
Portability</h1>
<p>This library is developed and optimized for POSIX compliant operating systems like Linux and Mac OS X, as well as for Windows. It is written as cross platform C++ library, so libgig should also compile for other operation systems as well. Due to this it works on all architectures (i.e. 32 bit x86, 64 bit x86, PPC and many more). It works on <a href="http://en.wikipedia.org/wiki/Endianness">little endian and big endian</a> systems.</p>
<h1><a class="anchor" id="Bugs"></a>
Bugs</h1>
<p>Please report bugs on <a href="http://bugs.linuxsampler.org/">http://bugs.linuxsampler.org/</a> and/or subscribe to the <a href="http://lists.sourceforge.net/lists/listinfo/linuxsampler-devel">LinuxSampler developers mailing list</a>.</p>
<h1><a class="anchor" id="Outro"></a>
Outro</h1>
<p>For compilation instructions, requirements and further details please refer to the README file et al.</p>
<p>That's all folks. Happy hacking!</p>
<p>– Christian Schoenebeck <a href="#" onclick="location.href='mai'+'lto:'+'cus'+'e@'+'use'+'rs'+'.so'+'ur'+'cef'+'or'+'ge.'+'ne'+'t'; return false;">cuse@<span style="display: none;">.nosp@m.</span>user<span style="display: none;">.nosp@m.</span>s.sou<span style="display: none;">.nosp@m.</span>rcef<span style="display: none;">.nosp@m.</span>orge.<span style="display: none;">.nosp@m.</span>net</a></p>
<dl class="section see"><dt>See also</dt><dd><a href="http://www.linuxsampler.org">http://www.linuxsampler.org</a> </dd></dl>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>
|