-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathREADME.txt
314 lines (256 loc) · 18.9 KB
/
README.txt
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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
AudioMove v1.24 7/9/2024
by Jeremy Friesner (jaf@meyersound.com)
Copyright 2004-2024 Meyer Sound Laboratories
Licensed under the GNU Public License
See file LICENSE for details.
This directory contains AudioMove, Meyer Sound's handy batch-mode file-conversion utility. You can use this utility to quickly copy files from one location to another, and optionally convert their format as part of the copy.
What can AudioMove do?
----------------------
AudioMove can change the file's format from (any format that libsndfile can read) to WAV, AIFF, MP3, FLAC, OGG, and several other formats.
AudioMove can change the file's sampling rate from (any rate that libsndfile can read) to a number of output sampling rates, ranging from 8kHz to 192kHz.
AudioMove can change the file's sample width from (any width that libsndfile can read) to 8, 16, 24, or 32 bit, floating point, or double-precision floating point format.
AudioMove can optionally convert stereo or multitrack files into multiple single-track (mono) files.
How do I install AudioMove?
---------------------------
Just drag the AudioMove folder to wherever you want to keep it.
To run AudioMove, just double-click its icon.
How is AudioMove licensed?
--------------------------
AudioMove is licensed under the GNU Public License. See the file COPYING for details. (Note that the code in the muscle submodule is also available under the BSD license)
AudioMove uses the following third-party libraries under the terms of the GPL:
libnsdfile - Source code to libsndfile can be downloaded at http://www.mega-nerd.com/libsndfile/#Download
libsamplerate - Source code to libsamplerate can be downloaded at http://www.mega-nerd.com/SRC/download.html
libogg - Source code to libogg can be downloaded at http://www.xiph.org/downloads/
libvorbis - Source code to libvorbis can be downloaded at http://www.xiph.org/downloads/
libFLAC - Source code to libFLAC can be downloaded at http://flac.sourceforge.net/download.html
lame - Source code to lame can be downloaded at https://lame.sourceforge.io
mpg123 - Source code to mpg123 can be downloaded at https://www.mpg123.de
AKRip.dll - (Win32 build only) Source code to AKRip can be downloaded at http://akrip.sourceforge.net/
How do I use AudioMove?
-----------------------
Follow these steps:
1) Launch AudioMove by double clicking its icon
2) Choose your desired output settings from the combo boxes at the top of the window. You may choose the output files' format (WAV, AIFF, FLAC, OGG, etc, or "Same as Source File"), their sampling rate, and the quality of the sample-rate conversion ("Good", "Better", or "Best"). Higher quality sample rate conversion takes longer, but the result sounds slightly better.
3) Click the "Destination Folder" button and choose the folder that you want AudioMove to write its output files to. Or if you prefer to do in-place conversions (where the output file replaces the input file) click the "Convert Files In-Place" checkbox. (Warning: be careful with in-place conversions, since your original input files will be replaced by the output files and won't be recoverable later if you change your mind!)
4) Click "Add Files" to choose the file(s) you want to convert via a file requester, or drag-and-drop the files or folders you want to convert into the white area of the window. (Folders you drag in will have their contents converted)
5) Wait until all the transfer-stats rows have turned green. At that point, the file conversion process is complete and your output files are ready for use in the destination folder you specified above.
Can I use AudioMove from the command line, or call it from a script?
--------------------------------------------------------------------
Absolutely! AudioMove will let you run it from the command line and specify arguments for what it should do when it runs. This is useful e.g. for running AudioMove from scripts or from other programs. To run it this way, open a shell, cd to the AudioMove directory, and type
./AudioMove (args)
or, on a Mac,
./AudioMove.app/Contents/MacOS/AudioMove (args)
But wait -- don't literally type (args)... instead, replace (args) with some or all of the keyword=value pairs specified below. Note that many of the keywords have several synonyms that are equivalent, for convenience. For any keywords that are not specified, the default setting that was active the last time AudioMove was quit will be used instead.
Keywords | Description
-----------+----------------------------------------------------------------------
dir | Specify the directory that AudioMove should write
dest | its output audio files into. This directory should already exist.
destdir | e.g. dir=/Users/jeremy/MyConvertedAudioFiles
|
file | Specify an input audio file to read. This keyword may be specified
| multiple times if you wish to convert multiple files. Also, any
| command line arguments that you specify that don't have an equal sign
| in them are assumed to be file names. (Note that if you want to use
| wild card expansions, you must omit the file= prefix)
|
| e.g. file=/Users/jeremy/src/File1.aiff file=File2.aiff
| or: *.aiff *.wav congo.0.wav
|
format | Specify the output file format. Possible values are AIFF,
destformat | WAV, FLAC, MP3, OGG, PAF, W64, CAF, RF64, OPUS, or Source. e.g. destformat=AIFF
|
rate | Specify the output files' sampling rate. Possible values are
destrate | 8, 11, 12, 16, 22, 24, 44, 48, 88, 96, 176, 192, or Source. e.g. destrate=44
|
width | Specify the output files' sample width. Possible values are
destwidth | 8, 16, 32, float, or Source. e.g. destwidth=Source
|
qual | Specify the sample rate converter's quality setting. Possible values
quality | are good, better, or best. e.g. qual=best
conversionquality
|
pause | If specified, AudioMove will start up with in paused mode.
paused | In this mode, conversions will not start until you uncheck the
| "Paused" checkbox. e.g. pause=yes
|
threads | Specifies how many simultaneous processing threads AudioMove may
maxthreads | launch. Available values range from 1 to 9. e.g. threads=5
|
split | If specified, stereo and multitrack input files will be converted
splitfiles | into multiple mono files.
|
inplace | If specified, destdir will be ignored and all file conversions will
convertinplace be done "in-place" (replacing the input files on completion)
|
quit | Specifies that AudioMove should automatically quit when it is done
autoquit | processing audio. Possible values are "no" (i.e. don't quit when
| finished, "yes" (which will cause AudioMove to quit when it is finished,
| except if there are errors), or "force" (which will cause AudioMove
| to quit when finished even if there are errors. e.g. quit=yes
|
disable_bwf| If specified, then AudioMove won't read or write BWF chunks in WAV
| files. (This might be useful if you are using AudioMove in conjunction
| with old software that doesn't handle BWF chunks well)
Here is an example invocation of AudioMove from the command line under MacOS/X:
./AudioMove.app/Contents/MacOS/AudioMove /Users/jeremyfriesner/wtrxaudio/congo.0.wav /Users/jeremyfriesner/wtrxaudio/*.aiff dest=/Users/jeremyfriesner format=AIFF rate=48 width=float quit=yes
History
-------
v1.24 7/9/2024 - Updated all submodules to the latest versions.
- Added support for reading and writing MP3 audio format.
- Added support for reading and writing CAF+ALAC audio format.
- Fixed a bug that caused destination folders with spaces in the path to not be usable.
o Removed the AKRip library from the Windows build as it doesn't appear to support 64-bit builds.
v1.23 5/28/2021 - Updated all the submodules to the latest/current versions
- Fixed a Qt-related problem that prevented the "are you sure you want
to enable Convert-in-Place" dialog from being handled properly when
the user clicked "No".
- Fixed a bug that caused the original file to be deleted when
splitting a file into its own directory.
- Removed the obsolete "Create Virtual Drive File" feature.
v1.22 3/9/2021 - Migrated the codebase to Github ( https://github.com/jfriesne/audiomove )
for easier development
- Updated muscle submodule to v8.00
- Updated error-handling to the modern-muscle style
- Updated audio-processing submodules to the latest versions
- Updated the Qt code to compile under either Qt 4.x or Qt 5.x
- Added .W64, .CAF, .RF64, and .OPUS as output-format options
- Added 8kHz, 12kHz, 16kHz, and 24kHz as output-rate options
- "Rate" combo box now turns red if set to a known-not-to-work setting
for the current Output Format (e.g. 96kHz for Ogg/Opus)
- "Width" combo box now turns red if set to a known-not-to-work setting
for the current Output Format (e.g. 32-bit Fixed for FLAC)
* 8-bit output-width now works as expected for all supported output formats.
v1.21 5/19/2016 - Upgraded the included libraries to more recent versions
- Added support for little-endian and big-endian PAF output format
- Added a "disable_bwf" command line argument, in case you need to
disable the reading and writing of Broadcast WAV format information
for some reason. This flag can also be enabled by renaming the
AudioMove executable to include the substring disable_bwf in its name.
v1.20 3/5/2009 - Added support for reading and writing FLAC and OGG file types.
- The Win32 build of AudioMove can now read .cda files directly
from audio CD, thanks to Andy Key's AKRip CD-ripping library.
(used under the terms of the GPL)
- Added an "Add Folder..." button that make it a bit more
intuitive to set up recursive batch conversions.
- Upgraded the included muscle distribution to v4.50.
- Upgraded the included libsamplerate distribution to v0.1.7.
- Upgraded the included libsndfile distribution to v1.0.19.
- Added included distributions for libogg, libvorbis, and libFLAC.
- Added a build-audiomove.sh script to make building AudioMove
more automatic under MacOS/X and Linux. (The Windows build doesn't
have a build script, so you still have to assemble everything
manually. It's probably best just to use the Windows AudioMove.exe
binary instead, and leave that pain to me)
o Update AudioMove code to compile against (and require) Qt4.5.x.
* Fixed a bug where convert-in-place mode would try to replace
unusual filename extensions with their more usual ones, and
in the process create a renamed copy of the input file instead
of overwriting the input file (e.g. converting "file.aif" in-place
would instead output to "file.aiff")
v1.15 6/6/2007 - Added a "Split Stereo Files" checkbox. When checked,
any stereo or multitrack input files will be converted
into multiple single-channel output files.
- Added keyboard-shortcuts to all the GUI controls.
- You can now right-click on the file view's column headers
bar to bring up a popup-menu that shows or hides columns.
- There is now a "Convert in Place" checkbox that you can click
if you want all of your conversions to happen in-place (i.e.
the output file replaces the input file)
- AudioMove now supports reading and writing 64-bit
"double" floating point sample widths.
o Ported the code to compile with Qt 4.x instead of Qt 3.x.
o Made the color scheme a bit brighter and prettier.
* The file requester now handles multiple files in
a recent-files line properly.
* Fixed a bug that could cause the conversion process
to stall if you deleted a job that was in progress.
* The file view's column ordering and sort order is now
saved and restored correctly across sessions.
* File names with foreign characters are now handled
correctly.
* AudioMove now preserves the EBU broadcast chunk (BEXT)
of broadcast WAV files when processing them back into
WAV format.
* AudioMove now does the right thing when the input file
and the output file are the same file (before it could
end up munging the file in that case)
* Fixed a bug that caused conversions of audio file
conversions to fail when the input file had a channel
count that was not a power of two.
v1.14 6/2/2006 - Added a recently-selected-files list and customizable
directory-shortcut buttons to the AudioMove file dialogs.
- Updated the included libsndfile distribution to v1.0.16.
- Renamed the items in the "Width" combo box to be more
explicit about the sample formats they describe.
- Updated the included muscle distribution to v3.21.
v1.13 4/28/2006 - Updated the included libsndfile distribution
to v1.0.16pre2.
* AudioMove 1.12 was outputting WAV files in WAV/RIFX
(big endian) format. This was problematic because
most existing software doesn't know how to handle WAV/RIFX
format yet. So in this version WAV files are output in
normal WAV/RIFF (little endian) format once again.
v1.12 3/25/2006 - The background color of the items being processed now
doubles as a progress bar, giving a visual indication
of how far along the file-conversion process is.
- Updated the included libsndfile install to version 1.15.
- Updated the included muscle install to version 3.20.
- Updated the included libsamplerate install to version 0.1.2.
* AudioMove now detects clipping in the output file and
renormalizes the output file (if necessary) to avoid it.
(see the first question in the libsamplerate FAQ for
details: http://www.mega-nerd.com/SRC/faq.html#Q001 )
* Fixed a bug that would cause AudioMove to crash if you
quit AudioMove while file-conversions were ongoing.
v1.11 3/15/2006 - The "Destination" widget now turns pink whenever the
destination path is not a valid directory. The widget
is updated whenever its contents change, and also every 5
seconds (in case the file system changes).
* If the folder listed in the "Destination" widget does not
exist, all transfers will immediately fail. In previous
versions, the destination folder would be automatically created
in this case, but that turned out to be problematic because
if the destination referred to a mount-point which was not
currently mounted, a local directory would be created at the
mount-point's previous location.
v1.10 7/5/2005 - Added 16x16 window icon bitmap
- Updated the included libsndfile archive to 1.0.12pre7,
primarily to add support for reading Sound Designer II format
- Updated the included muscle archive to v3.00.
- Added a "Create .lcsDisk" button that causes AudioMove to
scan the output directory and create a .lcsDisk file that
represents that directory. This feature is useful only for
people who also use LCS's VirtualLX and Wild Tracks products.
o Removed support for obsolete LCS audio format.
o Changed the default "Simultaneous Threads" value to 1.
v1.09 1/6/2005 - Added more sampling rate options to the Output Rate combo box,
including 192kHz, 176.4kHz, 96kHz, 88.2kHz, and 11.025kHz.
o Updated the included muscle folder to v2.62.
* Improved GUI presentation of sampling rate values.
v1.08 11/16/2004 * Tweaked the filename handling logic so that Japanese and
other non-ASCII filenames are handled properly under Windows.
v1.07 10/20/2004 - Arguments without equals signs are now interpreted as input
files. This allows you to use wildcarding to specify input
files (e.g. "./AudioMove *.wav")
* Reorganized the GUI layout so that the controls appear in
the order you are most likely to want to use them.
v1.06 9/01/2004 - Installed the official AudioMove icon.
* Fixed a bug in the recursive drag-and-drop routine -- the
created folder hierarchy wasn't rooted correctly.
v1.05 8/17/2004 o Conversion Quality options are now "good", "better", or "best".
- Directories can now be dragged in to the AudioMove window for
recursive batch conversion of all subfolders and files.
- Default output directory is now the user's home directory.
v1.04 8/02/2004 o Changed the .pro file to statically link all libraries.
o Released AudioMove under GPL license.
v1.03 7/30/2004 - Added "Quality" combo box to the GUI, for choosing conversion quality.
o Integrated libsamplerate sample rate converter code.
* Made the GUI somewhat more space efficient.
v1.02 7/28/2004 - Added command-line argument parsing (see above for details)
* Fixed the bug that was causing silence gaps in the output of
sample-rate-converted stereo files.
v1.01 7/19/2004 - Initial setup of files is now done in a separate thread, so that
the GUI doesn't freeze up after dragging in a lot of files.
- Only the active processes keep file handles open now.
- Other minor GUI tweaks and enhancements.
v1.00 7/14/2004 - Initial Release