9 |
files and provide abstract access to the |
files and provide abstract access to the |
10 |
data. |
data. |
11 |
- gig classes (gig.h, gig.cpp): These are based on the DLS classes and |
- gig classes (gig.h, gig.cpp): These are based on the DLS classes and |
12 |
provide the neccessary extensions for |
provide the necessary extensions for |
13 |
the Gigasampler file format. |
the Gigasampler file format. |
14 |
|
|
15 |
Requirements |
Requirements |
21 |
autoconf 2.57 |
autoconf 2.57 |
22 |
|
|
23 |
If you want to compile the 'gigextract' application that comes with these |
If you want to compile the 'gigextract' application that comes with these |
24 |
sources then you will additionally need to have libaudiofile installed (I |
sources then you will additionally need to have libaudiofile (>= 0.2.3) |
25 |
used version 0.2.3). |
or libsndfile (>= 1.0.2) installed. Note: for Windows systems only |
26 |
|
libsndfile is available. |
27 |
|
|
28 |
Non-POSIX systems |
Non-POSIX systems |
29 |
================= |
================= |
30 |
If you don't have a POSIX system, you have to set 'POSIX' to '0' in RIFF.h. |
If you don't have a POSIX system, you have to set 'POSIX' to '0' in RIFF.h. |
31 |
Instead of using POSIX calls then standard C calls will be used for file |
Instead of using POSIX calls then standard C calls will be used for file |
32 |
access. |
access. This applies e.g. to Windows systems. I would appreciate if |
33 |
|
somebody sends me his MS Visual Studio / .NET, Borland C++ Builder or |
34 |
|
Apple XCode project file! This might help others to conveniently compile |
35 |
|
libgig on those platforms as well. |
36 |
|
|
37 |
Compiling: |
Compiling |
38 |
========== |
========= |
|
- Use 'CXXFLAGS=-pedantic ./configure && make all' to compile the library |
|
|
and all tools and demo applications. |
|
39 |
|
|
40 |
- Beside the actual library there are four applications: |
You can either compile the sources and install the library directly on |
41 |
|
your system or you can create Redhat or Debian packages. |
42 |
|
|
43 |
|
a) Compiling and installing directly |
44 |
|
|
45 |
|
Use 'make -f Makefile.cvs && ./configure && make' to compile the library, |
46 |
|
all tools, demo applications, documentation and install them with |
47 |
|
'make install'. You can use 'make distclean && make -f Makefile.cvs clean' |
48 |
|
to clean up everything again. |
49 |
|
|
50 |
|
b) Creating Debian packages |
51 |
|
|
52 |
|
Use 'make -f Makefile.cvs && dpkg-buildpackage -rfakeroot -b' to compile |
53 |
|
and create the Debian packages. This will generate 3 Debian packages: |
54 |
|
|
55 |
|
libgig: Contains the shared library files. |
56 |
|
libgig-dev: Contains the header files and documentation for building |
57 |
|
applications using libgig. |
58 |
|
gigtools: Contains the tools and demo applications. |
59 |
|
|
60 |
|
You can use 'fakeroot debian/rules clean && make -f Makefile.cvs clean' |
61 |
|
to clean up everything again. |
62 |
|
|
63 |
|
c) Creating Redhat packages |
64 |
|
|
65 |
|
You need to have the rpmbuild tool installed and properly configured to |
66 |
|
create RPM packages. To create the RPM packages do the following: |
67 |
|
|
68 |
|
* Get .spec file generated by ./configure and edit it as appropriate. |
69 |
|
|
70 |
|
* Copy the source tarball to "/usr/src/<rpmdir>/SOURCES" directory, |
71 |
|
where <rpmdir> is dependent to the system you are using. For SuSE |
72 |
|
<rmpdir> will be "packages", for Mandrake <rpmdir> is "RPM" and for |
73 |
|
Redhat / Fedora <rpmdir> always equals "redhat". |
74 |
|
|
75 |
|
* Build the rpm(s) by invoking 'rpmbuild -bb <specfile>' from the |
76 |
|
command line. |
77 |
|
|
78 |
|
On success, the resulting rpm(s) can usually be found under the proper |
79 |
|
"/usr/src/<rpmdir>/RPMS/<arch>" directory. |
80 |
|
|
81 |
|
Tools |
82 |
|
===== |
83 |
|
|
84 |
|
Beside the actual library there are four applications: |
85 |
|
|
86 |
gigdump: Demo app that prints out the content of a .gig file. |
gigdump: Demo app that prints out the content of a .gig file. |
87 |
gigextract: Extracts samples from a .gig file. |
gigextract: Extracts samples from a .gig file. |
89 |
rifftree: Tool that prints out the RIFF tree of an arbitrary RIFF |
rifftree: Tool that prints out the RIFF tree of an arbitrary RIFF |
90 |
file. |
file. |
91 |
|
|
92 |
- If you have Doxygen installed you can generate the API documentation by |
API Documentation |
93 |
just running 'doxygen' in the sources' top level directory. |
================= |
94 |
|
|
95 |
- 'make distclean' to clean up everything again |
If you have Doxygen installed you can generate the API documentation by |
96 |
|
running 'make docs' in the sources' top level directory. The API |
97 |
|
documentation will be generated in the 'doc' subdirectory. |
98 |
|
|
99 |
|
Patches |
100 |
|
======= |
101 |
|
If you find bugs or have improvements, your patches are always welcome! |
102 |
|
Send them either directly to me or to the LinuxSampler developer's mailing |
103 |
|
list <linuxsampler-devel@lists.sourceforge.net>. |
104 |
|
|
105 |
|
Credits |
106 |
|
======= |
107 |
|
The initial library was based on the reverse engineering effort of |
108 |
|
Paul Kellett and Ruben van Royen. We owe current support for the quite new |
109 |
|
Gigasampler v3 format to Andreas Persson. Please also have a look at the |
110 |
|
ChangeLog for all those who contributed. Thanks for your great work! |
111 |
|
|
112 |
Christian Schoenebeck <cuse@users.sourceforge.net> |
Christian Schoenebeck <cuse@users.sourceforge.net> |