/[svn]/libgig/trunk/man/wav2gig.1.in
ViewVC logotype

Annotation of /libgig/trunk/man/wav2gig.1.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3995 - (hide annotations) (download)
Fri Sep 3 15:06:10 2021 UTC (2 years, 7 months ago) by schoenebeck
File size: 6527 byte(s)
* man/wav2gig.1.in: Add description about regular expression format
  being used by this tool.

1 schoenebeck 3995 .TH "wav2gig" "1" "03 Sep 2021" "libgig @VERSION@" "libgig tools"
2 schoenebeck 3980 .SH NAME
3     wav2gig \- Create GigaStudio (.gig) file from a set of WAV files.
4     .SH SYNOPSIS
5     .B wav2gig
6     [ OPTIONS ] GIG_FILE WAV_FILE_OR_DIR_1 [ WAV_FILE_OR_DIR_2 ... ]
7     .SH DESCRIPTION
8     Takes a list of wave (.wav) files and / or directories containing wave files as
9     argument(s) and creates one new GigaStudio / GigaSampler (.gig) file for those
10     samples.
11    
12     The created GigaStudio (.gig) file will contain the given input samples. The
13 schoenebeck 3990 samples' meta information (as far as available) like root note
14     (a.k.a 'unity note'), fine tune, loop points, loop type and loop play count
15     are automatically extracted from the input wave (.wav) files and applied
16     accordingly.
17 schoenebeck 3980
18     Additionally this tool creates exactly one instrument inside the newly created
19     GigaStudio (.gig) file and tries to automatically map the samples in a
20     meaningful way to that instrument. As the wave (.wav) format currently does not
21     support many of the meta information required for this particular task, this
22 schoenebeck 3995 tool tries to extract the required (missing) information from the individual
23     sample's file name for being able to map the samples accordingly. See
24 schoenebeck 3980 .BR SAMPLE
25     .BR NAMES
26 schoenebeck 3990 below for details on the assumed naming scheme for input sample files and how
27     to override that default naming scheme by providing custom regular expression
28     patterns.
29 schoenebeck 3980
30     .SH OPTIONS
31     .TP
32     .B \ GIG_FILE
33     GigaStudio / GigaSampler (.gig) filename to be created
34     .TP
35     .B \ WAV_FILE_OR_DIR_1
36     Filename or directory containing wave (.wav) file(s)
37     .TP
38     .B \ WAV_FILE_OR_DIR_2
39     Filename or directory containing wave (.wav) file(s)
40     .TP
41     .B \ -r
42     Recurse through all subdirectories of provided input WAV directories.
43     .TP
44     .B \ -f
45     Overwrite output GigaStudio (.gig) file in case it already exists.
46     .TP
47     .B \ -v
48     Print version and exit.
49 schoenebeck 3990 .TP
50 schoenebeck 3991 .B \ --dry-run
51     Scan input sample (.wav) files, but exit before creating any .gig file.
52     .TP
53 schoenebeck 3992 .B \ --verbose
54     Increase amount of info being shown.
55     .TP
56 schoenebeck 3990 .B \ --regex-name1 PATTERN
57     Regular expression for overriding the
58     .BR NAME1
59     part of the input sample file name scheme.
60 schoenebeck 3980
61 schoenebeck 3994 Defaults to '([^-\/\\]+) - [^-]+ - [^-]+ - [^-]+ - [^.]+'.
62 schoenebeck 3990
63     .TP
64     .B \ --regex-name2 PATTERN
65     Regular expression for overriding the
66     .BR NAME2
67     part of the input sample file name scheme.
68    
69 schoenebeck 3994 Defaults to '[^-\/\\]+ - ([^-]+) - [^-]+ - [^-]+ - [^.]+'.
70 schoenebeck 3990
71     .TP
72     .B \ --regex-velocity-nr PATTERN
73     Regular expression for overriding the
74     .BR VELOCITY_NR
75     part of the input sample file name scheme.
76    
77 schoenebeck 3994 Defaults to '[^-\/\\]+ - [^-]+ - ([^-]+) - [^-]+ - [^.]+'.
78 schoenebeck 3990
79     .TP
80     .B \ --regex-note-nr PATTERN
81     Regular expression for overriding the
82     .BR NOTE_NR
83     part of the input sample file name scheme.
84    
85 schoenebeck 3994 Defaults to '[^-\/\\]+ - [^-]+ - [^-]+ - ([^-]+) - [^.]+'.
86 schoenebeck 3990
87     .TP
88     .B \ --regex-note-name PATTERN
89     Regular expression for overriding the
90     .BR NOTE_NAME
91     part of the input sample file name scheme.
92    
93 schoenebeck 3994 Defaults to '[^-\/\\]+ - [^-]+ - [^-]+ - [^-]+ - ([^.]+)'.
94 schoenebeck 3990
95 schoenebeck 3980 .SH SAMPLE NAMES
96 schoenebeck 3990 By default this tool assumes the following input sample file naming scheme for
97     automatically mapping samples to regions on the keyboard, as well as mapping
98     them to velocity splits adequately:
99 schoenebeck 3980
100 schoenebeck 3990 .B 'NAME1 - NAME2 - VELOCITY_NR - NOTE_NR - NOTE_NAME.wav'
101 schoenebeck 3980
102     Which are interpreted in the following way:
103    
104     .TP
105     .B \ NAME1
106     Primary name of the sample (e.g. "Violin").
107    
108     This is not interpreted for sample mapping, but it will be used to assemble the
109     final sample name inside the GigaStudio (.gig) file.
110    
111 schoenebeck 3990 You may use
112     .BR --regex-name1
113     to override this part of the naming scheme.
114    
115 schoenebeck 3980 .TP
116     .B \ NAME2
117     Secondary name of the sample (e.g. "Cresc").
118    
119     This is currently ignored, but might be used in future.
120    
121 schoenebeck 3990 You may use
122     .BR --regex-name2
123     to override this part of the naming scheme.
124    
125 schoenebeck 3980 .TP
126     .B \ VELOCITY_NR
127     MIDI Velocity number of the sample (e.g. "18").
128    
129     This informtion will be used to automatically create velocity splits.
130    
131 schoenebeck 3990 You may use
132     .BR --regex-velocity-nr
133     to override this part of the naming scheme.
134    
135 schoenebeck 3980 .TP
136     .B \ NOTE_NR
137     MIDI Note number of the sample (e.g. "021" for note a-1).
138    
139     This informtion will be used to automatically map the sample to a region on the
140 schoenebeck 3994 keyboard. The sample's root note (a.k.a. "unity note") is taken directly from
141     the .wav file content, however if the .wav file content does not contain a root
142     note information then
143     .B \ NOTE_NR
144     is used as root note as well.
145 schoenebeck 3980
146 schoenebeck 3990 You may use
147     .BR --regex-note-nr
148     to override this part of the naming scheme.
149    
150 schoenebeck 3980 .TP
151     .B \ NOTE_NAME
152     Note name of the sample (e.g. "a-1").
153    
154     This is not interpreted for sample mapping, but it will be used to assemble the
155     final sample name inside the GigaStudio (.gig) file.
156    
157 schoenebeck 3990 You may use
158     .BR --regex-note-name
159     to override this part of the naming scheme.
160    
161 schoenebeck 3995 .PP
162     This tool utilizes the
163     .I regular expressions
164     library provided by C++ (introduced with the C++11 standard revision).
165     Each custom regular expression (abbreviated as 'RegEx' from now on below)
166     passed to one of the
167     .BR --regex-*
168     options must contain
169     .B
170     exactly one
171     active RegEx 'capture group' which is denoted in regular expressions by a pair
172     of round brackets like:
173    
174     .B (PATTERN)
175    
176     So the 'capture group' marks the portion in the overall filename string that is
177     going to be exctracted for the respective component of the filename schema.
178     If additional RegEx group(s) are needed to build the overall RegEx pattern, then
179     those other group(s) must be defined as 'passive groups' denoted in RegEx
180     patterns by an additional question mark and colon like this:
181    
182     .B (?:PATTERN)
183    
184     Keep in mind that RegEx scanners behave 'greedy' by default, which means by
185     default they try to match the longest string possible according to your defined
186     RegEx pattern. If that's not desired then you may either override the required
187     parts of your RegEx pattern to behave 'non-greedy' such that those parts would
188     match for the shortest string possible instead, or alternatively consider using
189     the RegEx 'alternation'
190     operator, which is denoted in regular expressions by a vertical bar character
191     like:
192    
193     .B PATTERN1|PATTERN2|PATTERN3
194    
195     The RegEx 'alternation' operator is sometimes more intuitive, because it tries
196     to match the provided patterns strictly in order from left to right. So it
197     would first try to match the first pattern, and only if no match with the first
198     pattern was possible (independent of string length) it would then try to match
199     the second pattern, and so on.
200    
201 schoenebeck 3980 .SH "SEE ALSO"
202     .BR gig2mono(1),
203     .BR gigextract(1),
204     .BR gigdump(1),
205     .BR gigmerge(1)
206     .BR korg2gig(1)
207    
208     .SH "BUGS"
209     Check and report bugs at http://bugs.linuxsampler.org
210     .SH "Author"
211     Application and manual page written by Christian Schoenebeck <cuse@users.sf.net>

  ViewVC Help
Powered by ViewVC