forked from cbagwell/sox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
1759 lines (1545 loc) · 80.1 KB
/
ChangeLog
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
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Change History
--------------
This file contains a list of all changes starting after the release of
sox-11gamma, followed by a list of prior authors and features.
$ox-14.4.2 2015-02-22
----------
Previously deprecated features that have been removed in this release:
Deprec- Feature [O(ption)]
ated in [F(ormat)] [E(ffect)] Replacement
------- ---------------------- ----------------------
14.3.0 O -1/-2/-3/-4/-8 -b
14.3.0 O -s/-u/-f -e
14.3.0 O -A/-U/-o/-i/-a/-g -e
14.4.0 E swap with parameters remix
14.4.0 E mixer remix
14.4.1 OpenMP < 3.0 OpenMP >= 3.0
14.4.1 F ffmpeg ffmpeg/avconv via pipe
File formats:
o Add optional support for reading Ogg Opus files. (John Stumpo)
o Fix for max size text chunks in aiff files. (cbagwell)
o Add reading support for RF64 WAV files. (Dave Lambley)
o Work around for libsndfile created RF64 files with invalid
sizes. (Dave Lambley)
o Detect MS ADPCM WAV files with invalid blocks. (cbagwell)
o Detect Sphere files with invalid header sizes. (cbagwell)
Effects:
o 'Deemph' can now also be used at 48kHz sample rate. (robs)
o 'Rate' now much faster in many cases. (robs)
o Allow sending spectrograms to stdout. (Ulrich Klauer)
o Allow use of Dolph window with spectrograms. (robs)
o Allow mixing time and sample-count arguments for the delay
effect, and for spectrogram -S and -d. (Ulrich Klauer)
o Support multi-channel LADSPA plugins. (Eric Wong)
o Support infinite repetition with repeat. (Ulrich Klauer)
o Improved pink noise frequency response in synth. (robs)
o Extended syntax for specifying audio positions to several
effects. (Ulrich Klauer)
o Fix integer overflow in mcompand. [3590093] (Guido Aulisi)
o Add optional latency compenstation for LADSPA plugins. (Eric Wong)
Other new features:
o New -p option for soxi to display sample precision. (Ulrich Klauer)
o New libsox example6: give explicit output attributes. (robs)
Internal improvements:
o Speed optimization for effects that operate on channels
independently. (Ulrich Klauer)
o Fix memory leaks. (Ulrich Klauer)
o Most internal symbols (lsx_*) are no longer exported. (Ulrich Klauer)
sox-14.4.1 2013-02-01
----------
Newly deprecated features (to be removed in future):
Deprec- Feature [O(ption)] Removal
ated in [F(ormat)] [E(ffect)] Replacement due after
------- ---------------------- ---------------------- -------
14.4.1 OpenMP < 3.0 OpenMP >= 3.0 14.4.1
14.4.1 F ffmpeg ffmpeg/avconf via pipe 14.4.1
File formats:
o Fix pipe file-type detection regression. (robs)
o MAUD write fixes. [3507927] (Carl Eric Codere and Ulrich Klauer)
o Fix crash when seeking within a FLAC file. [3476843] (Eric Wong)
o Fix Ogg Vorbis files with certain numbers of channels being
truncated. (Ulrich Klauer)
o Fix reading 64-bit float WAVs. [3481510] (nu774 and Ulrich Klauer)
o Fix potential buffer overrun when writing FLAC files directly via
sox_write(). [3474924] (Eric Wong)
Audio device drivers:
o Check whether pulseaudio is available before choosing it as
default. (robs)
Effects:
o Restore 8 seconds default for spectrogram, if the input length is
not known. (Ulrich Klauer)
o Set output length for splice to unknown instead of 0. (Ulrich Klauer)
o Increase maximum width for spectrograms. (Ulrich Klauer)
o Fix memory leaks in LADSPA effect. (Eric Wong)
o Fix hang in several effects (rate, tempo, and those based on
dft_filter) when processing long files. [3592482, 3594822] (MrMod)
o Prevent (m)compand from tampering with their arguments. (Ulrich Klauer)
Other bug fixes:
o Fix input length calculation for combine methods other than
concatenate. (Ulrich Klauer)
o Fix to configure.ac to work with Autoconf 2.69. [3600293] (cbagwell)
o Use binary mode for pipes on all Windows compilers, rather than
MSVC only. [3602130] (Ulrich Klauer)
sox-14.4.0 2012-03-04
----------
Previously deprecated features that have been removed in this release:
Deprec- Feature [O(ption)]
ated in [F(ormat)] [E(ffect)] Replacement
------- ---------------------- ----------------------
14.3.0 O --interactive --no-clobber
14.3.0 E filter ~= sinc
14.3.0 E norm -b, norm -i gain -B, gain -en
14.3.0 PLAY_RATE_ARG SOX_OPTS
14.2.0 E key alias pitch
14.2.0 E pan ~= remix
14.1.0 E resample alias rate
14.1.0 E polyphase alias rate
14.1.0 E rabbit alias rate
14.3.1 F sndfile: sndfile 1.0.11 sndfile > 1.0.11
14.3.0 F flac: libFLAC < 1.1.3 libFLAC >= 1.1.3
14.3.1 F mp3: lame 3.97 lame > 3.97
Newly deprecated features (to be removed in future):
Deprec- Feature [O(ption)] Removal
ated in [F(ormat)] [E(ffect)] Replacement due after
------- ---------------------- ---------------------- -------
14.4.0 E mixer remix 14.4.0 + 1 year
14.4.0 E swap with parameters remix 14.4.0
Previously deprecated features (to be removed in future):
Deprec- Feature [O(ption)] Removal
ated in [F(ormat)] [E(ffect)] Replacement due after
------- ---------------------- ---------------------- -------
14.3.0 O -1/-2/-3/-4/-8 -b 14.4.0
14.3.0 O -s/-u/-f -e 14.4.0
14.3.0 O -A/-U/-o/-i/-a/-g -e 14.4.0
File formats:
o Mention in man pages that WAV files support floating point encodings.
o Add support for floating point encodings in AIFF-C files. (Ulrich Klauer)
o Pad WAV data chunk to an even number of bytes (as required by the
specification). [3203418] (Ulrich Klauer)
o Add optional MP2 write support with twolame library. (Paul Kelly)
Audio device drivers:
o Give pulseaudio driver higher priority than alsa or oss now that
its proven stable and gives user more features; such as per app
volume control. (cbagwell)
o Fix bug when specifying OSX coreaudio device name. Would only
search for first 3 devices. (cbagwell)
o Fix sox hangups are exit when using coreaudio. (cbagwell)
o Improve buffering in coreaudio driver (Michael Chen)
o Support enabling play/rec mode when user invokes sox as either
play or play.exe on windows. (cbagwell)
o Fix compile of sunaudio driver on OpenBSD (cbagwell)
Effects:
o Improvements to man pages for tempo effect. Really made in 14.3.2.
(Jim Harkins).
o New upsample effect. (robs)
o Fix to effects pipeline to let fade effect specify time from end of
file again. (cbagwell and Thor Andreassen)
o Fix man page default error for splice effect. (Ulrich Klauer)
o Enable support for --plot option on biquad and fir effects. (Ulrich Klauer)
o Effects chain can now be unlimited in length. (Ulrich Klauer)
o Fix newfile/restart effects when merging or mixing files. (Ulrich Klauer)
o Fix crashes in compand and mcompand effects. [3420893] (Ulrich Klauer)
o Let the delay effect gracefully handle the special case that a delay can
be more than the input length. [3055399] (Ulrich Klauer)
o New hilbert and downsample effects. (Ulrich Klauer)
o Fix problem where fade would sometimes fail if specifying a fade-out
immediately after a fade-in. (robs)
o Stricter syntax checking for several effects (might reveal bugs hidden
in existing scripts). (Ulrich Klauer)
o Calculate output audio length for most effects. (Ulrich Klauer)
o Fix problems with several effects when the buffer size was not evenly
divisible by the number of channels. [3420899] (Ulrich Klauer)
o Complete rewrite of the trim effect with extended syntax (backwards
compatible) and capabilities. [FR 2941349] (Ulrich Klauer)
o Fix trim optimization unexpectedly seeking backwards. (Ulrich Klauer)
o Prevent samples from getting lost at effects chain transitions in
multiple effects chain/multiple output modes. (Ulrich Klauer)
Misc:
o Minor improvements to the man page. (Ulrich Klauer)
o When using pipes (-p) on Windows, set file mode to binary. (cbagwell)
o Updated .dat format description in soxformat. (Jan Stary)
o Doxygen documentation for libSoX. (Doug Cook)
Other bug fixes:
o Fix several memory leaks. [3309913] (Jin-Myung Won and Ulrich Klauer)
o Fixed crashes in apps that call sox_format_init/quit() multiple times.
(cbagwell)
Internal improvements:
o Added use_threads variable to sox_globals. This should be used to enable
or disable use of parallel effects processing instead of directly calling
omp_set_num_threads. (Doug Cook)
o Fix compiler warnings. (Cristian Morales Vega [P. 3072301], Doug Cook)
o Improve large file support by using 64-bit numbers to count
samples. (Doug Cook, Thor Andreassen, Ulrich Klauer)
sox-14.3.2 2011-02-27
----------
File formats:
o Add seek support to mp3 handler for speed improvements. (Pavel Karneliuk)
o Fix bug were WavPack header was not updated correctly when closing
file. Fixed libsox memory leak when closing WavPack files.
(David Bryant)
o Fix RIFF chunk length error when writing 24-bit files. (David Bryant)
o 24-bit WAV files were leaving channel maps unassigned. Change to use
common channel mappings based on channel count. This allows to
work more seemlessly with other apps such as WavPack and Foobar2000.
(David Bryant)
o Fix ffmpeg playback bug caused by alignment requirements on some platforms.
Closes bug #3017690. (Reuben Thomas).
o Fix memory leak in ffmpeg. (Doug Cook)
o Handle 0 length chunks in WAV files gracefully. (Beat Jorg)
o When skipping over chunks, account for word alignment. Helps
with some Logic Pro generated files. (D Lambley)
o Fix incorrect MP3 file length determination with VBR & .5s initial
silence. (robs)
Audio device drivers:
o Fix immediate segfault on OSX while attempting to record. (Adam Fritzler)
o Fix segfault on OSX playback for some HW that gives smaller then
requested buffers. (cbagwell)
o Clean up system resource in coreaudio on close. Allows running
back-to-back open()/close()'s without exiting app first. (cbagwell)
o Add support for 32-bit samples to OSS driver. (Eric Lammerts)
o Add support for 24 and 32-bit samples to waveaudio (Win32) driver.
(Doug Cook)
o Support specifying audio device other than default on OSX (cbagwell)
Effects:
o F.R. [3051700] spectrogram -r for `raw' spectrogram, no legend. (robs)
o Fix -w option on stats effect. (Ronald Sprouse)
o Fix segfault with some ladspa plugins (Thor Andreassen)
o Optionally look for png.h in libpng directory to support OpenBSD
packaging. Helps enable spectrograph effect. (cbagwell)
o libpng15 requires application to include zlib.h header file. (cbagwell)
Add this to spectrograph effect. [3184238]
o Enable LADSPA effects on all platforms without any external
dependencies. Mainly useful for Linux, Windows and OS X which have
binaries readily available. (cbagwell)
o Support specifying an absolute end location for trim effect instead
only an offset from trim begin location. (Ulrich Klauer)
o Fix regression where MP3 handler required libmad headers to be installed.
(Samuli Suominen)
o Allow dynamic loading of lame to be enabled even if lame header files
are not installed. (Doug Cook)
Other new features:
o Soxi now reports duration of AMR files. (robs)
o Document the "multiple" combine option in man pages and in
usage output (Ulrich Klauer).
Internal improvements:
o Distribute msvc9 project files that had been in CVS only. (cbagwell)
o Add msvc10 project files (also compatible with the Windows SDK 7.1).
(Doug Cook)
o cmake now compiles waveaudio driver under windows environment. (cbagwell)
[3072672]
sox-14.3.1 2010-04-11
----------
Newly deprecated features (to be removed in future):
Deprec- Feature [O(ption)] Removal
ated in [F(ormat)] [E(ffect)] Replacement due after
------- ---------------------- ---------------------- -------
14.3.1 F mp3: lame 3.97 lame > 3.97 2011-04-11
14.3.1 F sndfile: sndfile 1.0.11 sndfile > 1.0.11 14.3.1
Previously deprecated features (to be removed in future):
Deprec- Feature [O(ption)] Removal
ated in [F(ormat)] [E(ffect)] Replacement due after
------- ---------------------- ---------------------- -------
14.2.0 E key alias pitch 14.3.1
14.2.0 E pan ~= mixer/remix 14.3.1
14.3.0 F flac: libFLAC 1.1.2,3 libFLAC > 1.1.3 14.3.1
14.3.0 PLAY_RATE_ARG SOX_OPTS 14.3.1
14.3.0 E norm -b, norm -i gain -B, gain -en 2010-06-14
14.3.0 E filter ~=sinc 2010-06-14
14.1.0 E resample alias rate 2010-06-14
14.1.0 E polyphase alias rate 2010-06-14
14.1.0 E rabbit alias rate 2010-06-14
LibSoX interface changes:
o Added new variants of sox_open to allow read/write from/to memory
buffers (in POSIX 2008 environment); see example5.c. (robs)
File formats:
o New Grandstream ring-tone (gsrt) format. (robs)
o CVSD encode/decode speed-ups. (Kimberly Rockwell, P. Chaintreuil)
o Add ability to select MP3 compression parameters. (Jim Harkins)
o Now writes out ID3-tags in MP3 files with lame supports it. (Doug Cook)
o Also can write VBR Tag ("XING Header") in MP3 files. (Jim Hark /
Doug Cook)
o Increase percision of MP3 encoders to use 24-bits instead of
16-bits. (Doug Cook)
o Fix failed writing 24-bit PAF files (and possibly other libsndfile
based formats). (cbagwell)
o Allow libsndfile to be dlopen()'ed at runtime if --enable-dl-sndfile
is used. (Doug Cook)
o Allow amr-nb/amr-wb to be dlopen()'ed at runtime if
--enable-dl-amrwb or --enable-dl-amrnb is used. (Doug Cook)
o amrnb and amrwb formats can optionally use opencore-amr libraries.
(cbagwell)
Audio device drivers:
o Add native windows audio driver. (Pavel Karneliuk, Doug Cook)
o Add 32-bit support to ALSA driver. (Pavel Hofman)
o Make OpenBSD sndio audio driver default over older sunau driver.
(cbagwell)
Effects:
o Fix [2254919] silence doesn't trim digital silence correctly. (robs)
o Fix [2859842] stats effect crashes on 64-bit arch. (Ulrich Klauer)
Other new features:
o Added libSoX example #4: concatenating audio files. (robs)
o Show soxi version & usage information when no args given. (robs)
Other bug fixes:
o Fix build so that grouped files (e.g. play -r 6k "*.vox" plays all
at 6k) works. (robs)
o Fix build to support auto file type detection with pipes on FreeBSD
and elsewhere. (Dan Nelson)
o Fix simultaneous play & rec not working. (robs)
o Fix multi-threading problems on multi-core Windows OS; also, change
default to single-threaded.
o Fix mistaken file size with pipe input on Windows. (Doug Cook)
o Fix missing documentation for -R (repeatable), and pulseaudio driver.
o Fix memory leak of format private data. (Slawomir Testowy)
Internal improvements:
o Move bit-rot detection support files to sub-directory (could
previously cause build problems). (robs)
o [2859244] Fixes to improve compatibility with MSVC. (Doug Cook)
o Added utilities to help any format handler dlopen() external
libraries at run time instead of link time. (Doug Cook)
o Compiling with mingw now has feature parity with cygwin. (Doug Cook
and cbagwell)
sox-14.3.0 2009-06-14
----------
Previously deprecated features that have been removed in this release:
Deprec- Feature [O(ption)]
ated in [F(ormat)] [E(ffect)] Replacement
------- ---------------------- ----------------------
14.1.0 E resample * ~= rate
14.1.0 E polyphase * ~= rate
14.1.0 E rabbit * ~= rate
14.2.0 E dither: RPDF,scaled dither (TPDF only)
14.1.0 F flac: libFLAC 1.1.1 libFLAC > 1.1.1
* But interface retained as an alias for `rate'.
LibSoX interface changes:
o sox_format_init() has been supeseded by sox_init().
o Removed obsolete error codes (SOX_E...); new sox_strerror()
function to convert error codes to text.
o Use of sox_effect_options() is now mandatory when initialising an
effect (see example0.c for an example of this).
o sox_flow_effects() has a new (3rd) parameter: a void pointer
`client_data' that is passed as a new (2nd) parameter to the flow
callback function. client_data may be NULL.
File formats:
o Slight improvement to A-law/u-law conversion accuracy: round LSB
instead of truncating. (robs)
o Fix length in wav header with multi-channel output to pipe. (robs)
o Fix [2028181] w64 float format incompatibility. (Tim Munro)
o Fix reading AIFF files with pad bytes in COMT chunks. (Joe Holt)
o Fix AIFF file length bug to stop reading trash data on files that
have extra chunks at end of file. (Joe Holt)
o Fix file length being 4 bytes short for AIFF sowt CD tracks. (Joe Holt)
o Fix [2404566] segfault when converting from MS ADPCM wav file. (robs)
o Fix slight FLAC seek inaccuracy e.g. when using `trim' effect. (robs)
o Fix mp3 decode sometimes being up to a block short. (robs)
o Fix not outputing GSM-in-wav when input is GSM-in-wav. (robs)
Audio device drivers:
o New native OpenBSD audio handler for play/recording. (Alexandre Ratchov)
o 24-bit support for ALSA handler. (robs)
o Warn if ALSA under/overrun. (robs)
Effects:
o New `stats' effect; multichannel audio statistics. (robs)
o New `sinc' FFT filter effect; replacement for `filter'. (robs)
o New `fir' filter effect using external coefficients/file. (robs)
o New `biquad' filter effect using external coefficients. (robs)
o New `overdrive' effect. (robs)
o New `vad' Voice Activity Detector effect. (robs)
o `synth' enhancements: can now set common parameters for multiple
channels, new `pluck' and `tpdf' types, `scientific' note
notation, [2778142] just intonation. (robs)
o New multi-channel support and revised sizing options for `spectrogram'.
N.B. revised options are not directly backwards compatible -- see the
man page for details of the new syntax. (robs)
o Richer gain/normalise options. (robs)
o [2704442] Slight change to `riaa' gain: now norm'd to 0dB @ 1k
(previously 19.9dB @ DC). (Glenn Davis)
o Fix [2487589] `dither' clipping detection & handling. (robs)
o Fix `repeat' sometimes stopping repeating too soon. (robs)
o Fix `repeat' sometimes repeating wrong audio segments. (robs)
o Fix [2332343] 'silence' segfault with certain lengths. (cbagwell)
o Fix `silence' empty output file with A-law input. (robs)
o Fix temporary file problems in Windows (cygwin) with normalise and
other effects. (robs)
o Fix [2779041] spectrogram PNG file is invalid on Windows. (robs)
o Fix [2787587] `trim x 0' should produce zero length audio. (robs)
o Parallel effects channel processing on some hyper-threading/mult-core
architectures. New `--single-threaded' option to disable this. (robs)
Other new features:
o Added ability to create shared DLL's on cygwin (cbagwell)
o New `--guard' & `--norm' options; use temporary files to guard against
clipping for many, but not currently all, effects. (robs)
o New `--ignore-length' option to ignore length in input file header (for
simple encodings & for mp3); instead, read to end of file. (robs)
o New `--temp DIRECTORY' option. (robs)
o New `--play-rate-arg ARG' option. (robs)
o New SOX_OPTS environment variable; can be used to provide default
values for above and other options. (robs)
o Grouped files, e.g. play -r 6k "*.vox" plays all at 6k. (robs)
o Automatically `dither'; new `--no-dither' option to disable this. (robs)
o Can now use `v' & `V' keys to adjust volume whilst playing audio (on some
systems). (robs)
o New bitrate, time in seconds, & total options for soxi; bitrate
and file-size display for sox. (robs)
o `Magic' (libmagic) file type detection now selected using `--magic'
option (where supported).
o [2003121] In many cases, no longer need to specify -t when inputing
audio from a `pipe'. (robs)
o Support more Shoutcast URL variants. (robs)
o Added libSoX example #3: playing audio. (robs)
Other bug fixes:
o Fix [2262177] SoX build could fail with parse /etc/issue error. (robs)
o Fix "no handler for detected file type `application/octet-stream;
charset=binary'" with raw files when using libmagic. (robs)
Internal improvements:
o Rationalise use of and make repeatable across different platforms
pseudo random number generators. (robs)
o Rationalise effects' options interface (getopt compatible). (robs)
o Added stub headers to allow test compilation of all sources on
linux. (robs)
sox-14.2.0 2008-11-09
----------
Previously deprecated features that have been removed in this release:
Deprec- Feature [O(ption)]
ated in [F(ormat)] [E(ffect)] Replacement
------- ---------------------- ----------------------
14.0.0 E pitch new pitch = old key
File formats:
o New `.cvu' unfiltered CVSD; supports any bit-rate. (robs)
o New `.sox' native format intended for intermediate files. (robs)
o Fix WAV write on 64-bit arch. (robs)
o Fix writing PRC ADPCM files. (Silas Brown)
o Fix problems reading short mp3 files. (robs)
Effects:
o N.B. Reduced default bandwidth setting for `rate' effect from 99%
to 95%; use `rate -s' to be compatible with SoX v14.1.0. (robs)
o New options for `rate' effect to configure phase response,
band-width and aliasing. (robs)
o New options for 'dither' effect: RPDF, TPDF, noise-shaping. (robs)
o New `riaa' effect: RIAA vinyl playback EQ. (robs)
o New `loudness' effect: gain control with ISO 226 loudness
compensation. (robs)
o New `bend' effect; pitch bending. (robs)
o New -b option for the norm effect; can be used to fix stereo
imbalance. (robs)
o Wider tempo range for `tempo' effect. (robs)
o New --effects-file option to read effects and arguments from
a file instead of command line. (cbagwell)
o `filter' effect now supports --plot. (robs)
o Improved documentation for the `stat' effect. (robs)
o Fix broken audio pass-through with noiseprof effect. (robs)
o Fix graph legend display when using --plot octave. (robs)
o Fix rare crash with `rate' effect. (robs)
o Fix [2190767] `norm' under-amplifying in some cases. (George Yohng)
o Fix [2007062] Earwax effect can overflow; should clip. (robs)
o Fix [2223251] mcompand should use linkwitz-riley. (robs)
o Fix `phaser' clicks and overflows. (robs)
o Trim will now skip past 2G point correctly. (cbagwell)
o Improved handling of speed changes in the effects chain. (robs)
Other new features:
o New psuedo-effects "newfile" and ":" to allow running
multiple effect chains on a single file. newfile will
create a new output file when an effect chain terminates.
Of most use with trim and silence effects. (cbagwell)
o Can now use multiple pipes as inputs to the combiner;
see `Special Filenames' in sox(1). (robs)
o Display SoX build/run environment information with -V -V. (robs)
o Display (with -V) the detected file-type if it differs from the
file extension. (robs)
o New -t option for soxi; to display the detected file type. (robs)
o New -b/--bits, -e/--encoding alternative options for specifying
audio encoding parameters. (robs)
o [FR 1958680] Support more than 32 input files. (robs)
o New native Mac OSX audio handler for playing/recording. (cbagwell)
Other bug fixes:
o Bump library version because it was not binary compatible with
SoX 14.0.1 (Pascal Giard)
o Turn off versioning of special libsox_fmt* libraries since thats
not really needed. (kwizart)
o Fixed crash when running play with no arguments. (Dan Nelson)
o Allow libpng to be found with -static option. (cbagwell)
o Allow libsamplerate to be found if pkg-config is installed but
no samplerate.pc exists. (cbagwell)
o [2038855] external lpc10 lib patch. (Oden Eriksson, Mandriva)
o Fix memory leaks in effects chain when restarting effects. (cbagwell)
o Fixed pkg-config CFLAGS. (evilynux)
o Fix sndfile inclusion in build in some circumstances. (robs)
o Fix [2026912] Fails on URL-like filenames. (robs)
o Always add _LARGEFILE_SUPPORT when off_t is 64bits to work around
buggy platforms. Fixes not able to read WAV files. (cbagwell)
Internal improvements:
o Fixed all compiler warnings (with gcc 4.3.1, 64-bit arch.). (robs)
o Updates to internal effects chain API. (cbagwell)
o Retire old FFT routines (speeds up `noisered' effect). (robs)
o Allow effects to use getopt. (robs)
o Use libmagic for mp3. (robs)
o Change sox_seek() offset to 64-bit to work with > 2G files (cbagwell)
o Merged libsfx back into libsox to align with sox.h API. (cbagwell)
sox-14.1.0 2008-7-29
----------
Previously deprecated features that have been removed in this release:
Deprec- Feature [O(ption)]
ated in [F(ormat)] [E(ffect)] Replacement
------- ---------------------- ----------------------
13.0.0 O -e -n
13.0.0 O -b/-w/-l/-d -1/-2/-4/-8
13.0.0 E avg, pick mixer
13.0.0 E highp, lowp highpass -1, lowpass -1
13.0.0 E mask dither
13.0.0 E vibro ~= tremolo
13.0.0 F auto Becomes internal only
File formats:
o New option --help-format shows info about supported format(s). (robs)
o New WavPack format (includes lossless audio compression, but not
guaranteed lossless file compression). (robs)
o New htk format. (robs)
o Add .f4 & .f8 raw file extensions. (robs)
o Writing aiff, aifc & dvms now repeatable with -R. (robs)
o Writing hcom no longer fails with unsupported rate--chooses
best match. (robs)
o Au/snd: added support for 32-bit integer and 64-bit float PCM
encoding/decoding; display name of unsupported encoding. (robs)
o Can now write .amb (.wav variant) files [FR 1902232]. (robs)
o Can now read 2,3(2.6),4 bit ADPCM .voc files [FR 1714991]. (robs)
o Can now read some MP3 ID3 tags. (robs)
o Can now write Sounder files. (robs)
o Can now write DEC-variant au files (with -x). (robs)
o Comments support for SoundTool files. (robs)
o Fix [1864216] comments mangled when writing ogg-vorbis. (robs)
o Fix short noise at end of alsa playback. (Morita Sho/Tim Munro/robs)
o Fix wve seek accuracy. (robs)
o Fix lpc10 not working. (robs)
o Fix [1187257] wav MS-ADPCM block-align size incorrect. (robs)
o For wav & au, fix [548256] size in header wrong when piping out. (robs)
o Fix IRCAM SF header processing; support all (modern) variants. (robs)
o Fix 24-bit read/write on big-endian systems. (robs)
o Fix crash trying to open non-existent play-list. (robs)
o Fix FLAC read from stdin with libFLAC >= 8. (Patrick Taylor Ramsey/robs)
o Fix [1997637] Trim effect loses samples (with wav). (robs)
Effects:
o New `splice' effect; splice together audio sections. (robs)
o New `remix' effect; mixes any number of channels. (robs)
o New `norm' (normalise) effect. (robs)
o New `delay' effect; delay one or more channels. (robs)
o New `contrast' enhancement effect [FR 708923]. (robs)
o Improved `rate' resampling effect; resample, polyphase, & rabbit
now deprecated. (robs)
o New `spectrogram' effect; creates a PNG (if built with PNG lib). (robs)
o `synth' can now sweep linearly and squarely (as well as
exponentially). (robs)
o Can now `fade' out to EOF without giving file-length (if it can
be determined from the input file header). (robs)
o Fix synth max. level setting for some output encodings. (robs)
o Fix crash on 64-bit arch. with tempo & key effects. (Sami Liedes)
o `gain' alias for the vol effect. (robs)
Other new features:
o Now possible to control play-back resampling quality (and hence
cpu-load) via the PLAY_RATE_ARG environment variable. (robs)
o Command line support for multiple file comments. (robs)
o New --combine=mix-power option to mix combine using 1/sqrt(n) scaling
instead of 1/n [FR 2012856]. (robs)
o New --input-buffer option to specify (only) input buffer size. (robs)
o New `soxi' utility to extract/display file header fields. (robs)
o Pkg-config support. (Pascal Giard)
o Simple VU meter. (robs)
o Heuristic to detect when playing an album and set
the default replay-gain mode to `album'. (robs)
o Better auto-choice of output file format parameters when
type is different to that of input file. (robs)
o SoX now treats (and displays) encoding size & signal precision
separately. (robs)
o Default audio devices (sox), and allow environment variables to
be used to override the default audio device driver (rec/play)
and default audio device (all). (robs)
o Simpler file info display for `play'. (robs)
o For some file-types, warn if file size seems too short. (robs)
o Added auto-detect for caf, sndr, txw & sf files. (robs)
o Added example0: simpler example of how to develop applications that
use the libSoX effects chain. (robs)
o Added example2: simple example of how to develop applications that
use libSoX to read an audio file. (robs)
o Moved contents of soxexam man page into soxeffect man page. (robs)
Other bug fixes:
o Fix [1890983] rec shortcut should apply bit depth (8-bit,
16-bit, etc.) to input handler. (robs)
o Fix ungraceful handling of out of disc space and other write
errors (bug was introduced in 14.0.0). (robs)
o Fix endian selection (-B, -L, -x) in some circumstances. (robs)
o Fix auto-detect of hcom files. (robs)
Internal improvements:
o Use FORTIFY_SOURCE with gcc. (robs)
o Fixed all compiler warnings (with gcc 4.2.3, 32-bit arch). (robs)
o Reimplement (separately) SoundTool & Sounder format handlers. (robs)
o Allow formats & effects to have any size of private data. (robs)
sox-14.0.1 2008-01-29
----------
File formats:
o Added support for non-standard, non-WAVE_FORMAT_EXTENSIBLE
(esp. 24-bit) PCM wav (see wavpcm in soxformat.7 for details). (robs)
Effects:
o Reimplemented reverb to be similar to freeverb. (robs)
Bug fixes:
o Fix Sndtool read error causing noise at start. (Reynir Stefánsson)
o Fix mixer with >4 numbers, and mixer -3 behaving as mixer -4. (robs)
o Fix [1748909] sox does not report remaining playtime of mp3s. (robs)
o Fix failure to read AIFF files with empty MARK chunk. (robs)
o Fix spurious 'Premature EOF' message in some circumstances. (robs)
o Switched to 16-bit for libao driver since not all its plugins
support it (such as oss, nas, and pulse audio) (Morita Sho)
o Stop crash when "rec" is run with no arguments (Morita Sho).
o Fix -V (without argument) on non-gnu systems. (robs)
o Fix reported (with -V) output audio length in some cases. (robs)
o Fix actual FLAC output file audio length in some cases. (robs)
o Fix poor 24-bit FLAC compression & support newer versions of
libFLAC (1.2.x). (robs)
o Fix loss of 1 decoded FLAC block when using "trim 0 ...". (robs)
o Fix trim when first effect with IMA-ADPCM input wav file. (robs)
Internal improvements:
o Let "make distcheck" run some automated test scripts.
o Distribute missing cmake files.
o Fix ogg vorbis compile error on some platforms.
o Remove unused libltdl that could cause header mismatch with
installed libltdl.
o Fix AMR detection with --disable-shared. (robs)
o Updated configure to support linking to static libraries
on mingw for flac, ogg, and libsamplerate libraries.
o Added example1: simple example of how to develop applications that
use the libSoX effects chain. (robs)
sox-14.0.0 2007-09-11
----------
File formats:
o Added ffmpeg support. (Reuben Thomas)
o FLAC: added seekable decoding; added seek-table generation. (robs)
o Added M3U & PLS playlist formats [FR# 1667341] (Note: SHOUTcast PLS
is only partially supported). (robs)
o Made format readers and writers into individual modules for easier
distribution of differently-licensed code. (Reuben Thomas)
o Added libao support. (Reuben Thomas)
o Added support for ADPCM-encoded PRC files, based on Danny Smith's
rec2wav and sndcmp. (Reuben Thomas)
o Added AMR-NB [FR# 728875] & AMR-WB formats (with external libs). (robs)
o Added LPC-10 support. (Reuben Thomas)
Effects:
o Use LADSPA effects (one input, one output). (Reuben Thomas)
o --octave option changed to --plot; can now also use gnuplot to
plot effect transfer function. (robs)
o Added soft-knee companding. (robs)
o Show (with --plot) compand transfer function. (robs)
o Allow e.g. "vol 6dB" (as well as "vol 6 dB"). (robs)
o Changed deemph filter from 1st order to 2nd order for
slightly better accuracy. (robs)
o Add option to silence effect to leave periods of silence
in and only strip out extra silence. (Mark Schreiber)
o synth can now generate any number of channels. (robs)
o mixer can now mixdown to mono any number of channels. (robs)
o Added oops effect (mixer special case). (robs)
o All effects that could only work on mono or stereo audio, now
work with any number of channels. (robs)
o Added WSOLA-based key and tempo effects. (robs)
Other new features:
o Show (with -S) if clipping is occurring. (robs)
o Added internet input file support (needs wget). (robs)
o Made it possible to build without sound drivers. (Reuben Thomas)
Bug fixes:
o Fix (m)compand transfer function non-linearities; fix compand
drain volume. (robs)
o Fix crash with pan effect. (robs)
o Add missing RM define to Makefiles so installs work.
(Bug# 1666599) (cbagwell)
o Fix I/O performance regression in 13.0.0. (Reuben Thomas)
o Fix .lu, .la read regression in 13.0.0 [Bug# 1715076]. (robs)
o Fix uncompressed NIST/Sphere read regression in v13 [Bug #1736016].
o Fix displayed times when playing a file and using trim. (robs)
o Fix CDDA sector duration display for non-CDDA sample rates. (robs)
o synth fixes: brown noise; inverted square wave; offset < 0. (robs)
o Fix crash when encoding Vorbis or FLAC: with no comment. (robs)
o Fix effect drain problems: chorus, echo(s), phaser. (robs)
o Fix rabbit responsiveness and memory problems. (Peter Samuelson)
o Fix broken stereo audio when recording using ALSA. (robs)
o Fix OSS driver on big endian machines that was introduced in
last release.
Internal improvements:
o Renamed libst to libsox for name recongition and to avoid
duplications with other existing libst libraries. (Reuben Thomas)
o Moved effects to libsfx. (Reuben Thomas)
o Got rid of several hundred compiler warnings. (robs, Reuben Thomas)
o Added basic performance testing of I/O. (Reuben Thomas)
o Effects chain processing now available in libSoX. (robs)
o Added effects-chain buffering for effects that use a window [FR#
1621695]. (robs)
o Added cmake build files for Win32. (robs)
sox-13.0.0 2007-02-11
----------
File formats:
o Support for .caf, .paf, .fap, .nist, .w64, .nist, Matlab 4.2/5.0
(Octave 2.0/2.1), .pvf, .sds, .sd2 and .xi file formats via libsndfile.
If available, libsndfile can also be used to handle all the other file
formats it understands. (Reuben Thomas)
o Add FLAC support (robs)
o Support Maxis's XA format. (Dwayne C. Litzenberger)
o Add support for 24-bit PCM raw, wav (WAVE_FORMAT_EXTENSIBLE) [FR# 801015],
au, aiff, & flac files. (robs)
o Add AIFF-C output support. (shashimoto)
o New .ima file format for raw IMA ADPCM. (robs)
o Allow the rate and number of channels of .au files to be overridden
by command-line arguments. (robs)
o Add seek support for GSM data in WAV files. Rafal Maszkowski
o Allow encoding quality to be specified (FLAC & Ogg, but not
MP3 yet). (robs)
o Rename -b to -1, -w to -2, -l to -4, -d to -8, and mask to dither.
(robs)
o New options for specifying endianness (and separate options for
nibble & bit reversal) [FR# 1621702]. (robs)
o Improved multi-channel file reading; fixes [1599990]. (robs)
Effects:
o Equalizer effect (Pascal Giard)
o bass and treble altering effects. (robs)
o New optional rabbit resample routine, using libsamplerate
(aka Secret Rabbit Code). (Reuben Thomas)
o Added allpass filter effect. (robs)
o Documented the butterworth filter effects; added variable Q. (robs)
o "rate" effect made an alias for "resample".
o Visualisation of various filters' frequency response via Octave. (robs)
o Can now specify width of many 2nd-order filters as: Hz, octaves,
or Q. (robs)
o Dither/mask amount now specifiable. (robs)
o Consistent (and hopefully complete) clipping detection and
reporting. (robs)
o Allow command-line time parameters of < 1 sec to omit the
leading 0. (robs)
o Improved synth usage and improved the synth entry in the man-
page. (robs)
o Higher quality audio speed adjustment; also fixes [1155364]. (robs)
o Replacement flanger effect; also fixes [1393245]. (robs)
o Added silence padding effect. (robs)
o Added ability for noiseprof to use stdout and noisered to use stdin
[FR# 1621694]. (Reuben Thomas)
o vibro effect name deprecated in favour of tremolo; this effect
reimplemented as a special case of synth. (robs)
Other new features:
o Remove soxmix. (Reuben Thomas)
o Preview mode now removed, as all it did was use rate rather than
resample, and rate has been removed.
o -V now gives only user-relevant messages, use -V -V to get
developer-relevant messages. (robs)
o -V output much improved and expanded; now includes display of
(auto-)selected effects. (robs)
o sox man-page overhaul, new soxexam man-page entries. (robs)
o Added command line options for specifying the output file
comment. (robs)
o Added ability to merge e.g. 2 mono files to 1 stereo file
[FR# 1297076]. (robs)
o Removed the restrictions whereby multiple input files had to have
the same data encoding & size, and in most situations where they
had to have the same # of channels, and for play where they had
to have the same sampling-rate. (robs)
o Options to apply replay-gain on input; enabled by default
with `play'. (robs)
o Can now use Ctrl-C to skip to next track when playing multiple
files (e.g. play *.mp3); Ctrl-C twice to exit. (robs)
o Added --interactive option to prompt to overwrite pre-existing
output file. (robs)
o Added large file support. (Reuben Thomas)
Bug fixes:
o Fix writing MP3 files on AMD64 processors.
o More fixes to MP3 tag reading. Sometimes tags were
detected as valid MP3 frames.
o Fix to stop, avoiding a crash, when starting of effects fails.
(Reuben Thomas)
o Fixed a bug introduced in 12.18.2 that stopped the draining
of effects from occuring. This had stopped the reverse effect,
among others, from working. (Reuben Thomas)
o Several effects are now optimised out in situations where they need
do nothing, e.g. changing rate from 8000 to 8000, or changing volume
by 0dB [Bug# 1395781]. (robs)
o Fix rounding error when reading command-line time
parameters. (robs)
o Fix nul file hander ignoring other format options if rate
option has not been given. (robs)
o Fix synth length accuracy. (robs)
o Fix broken audio when downmixing with any of the following
effects: synth, deemph, vibro. (robs)
o Fixed deemph & earwax effects to work with MP3, vorbis,
& FLAC. (robs)
o Fix wav file handler discarding the last PCM sample in certain
circumstances. (robs)
o Fix [1627972] AIFF read bug when MARK chunk present. (Richard Fuller)
o Fix [1160154] VOX to WAV conversion problem. (robs)
o Removed (for output file only) the potentially
problematic -v option. Use the vol effect instead. (robs)
o Improved the accuracy of integer and floating point PCM
conversions. (robs)
o Don't go into a loop on zero-padded WAVs. (Jorge Serna)
o Fix to AIFF writing to avoid writing invalid files in some situations.
(Reuben Thomas)
o Fix compander effect bugs: [1613030] Compand fails to compress
clipping, [1181423] compand with 0 sec attack/release. (robs)
Internal improvements:
o More and better self-tests. (robs)
o Build system overhaul to use the full set of GNU autotools.
(Reuben Thomas)
o Add new getopt1.c to win32 project file.
o Remove old, optional rate change and alaw/ulaw conversion code.
(Reuben Thomas)
o Removed the old internally invoked (but mentioned in the man page)
copy effect. (robs)
sox-12.18.2 2006-09-03
-----------
o Adding in Debian's disk full fix (#313206).
o Finally got rid of reference to cleanup() function in
library. Applications are now required to detect
all failures from return codes and cleanup as they
want.
o Changed how list of formats and effects are stored internally.
Effects libst users only. Dirk
o Store effects usage so that its accessable by applications.
Dirk
o Modify the synth effect to not use SIGINT to stop processing
and instead return ST_EOF. This allows exact acount of
samples to be written out instead of an approximate amount.
o Fix hangup when attempting to write stereo MP3 files.
(1512218) Kendrick Shaw
o Fix deemph effect would lose stereo separation. (1479249) robs
o Adding cross-platform support for getopt_long
o Make help screens print much more information and add
new --help-effect option. (Originally from Dirk).
o Add support for using an external gsm library instead of
just the internal one. Vladimir Nadvornik
o Updates to nul file handler to prevent crashes during output.
Martin Panter (1482869)
sox-12.18.1 2006-05-07
------------
o The "filter" effect could go into infinite drain mode. Now
only drain 1 buffer. noisered as well.
o SoX was ignoring user aborts (ctrl-c) if it occured during
effect drain operations. This was bad if effects had
bugs and stuck in infinite loop.
o Stop SoX from crashing when file type could not be auto
determined (1417776).
o Output filenames with multiple '.' confused SoX. (1417776)
Christian Hammer
o Moved to a common set of CLIP routines. This fixed clipping
bugs in noisered and mcompand.
o Stop SoX from crashing on sphere files that contain large text
strings. (1430025) Ulf Hamhammar
o Fix some overflow crashes in aiff handler. (1430024) Ulf Hamhammar.
o Under windows, set piped input/output to binary mode (1417794). Martin
Panter
o Fixed broken internal version of strdup(). (1417790) Marty
o Stop infinite loop when reading MP3's with a tag size of
exactly 8192 bytes. (1417511) Hans Fugal
o Fix typo in stlib.dsp for loading in Visual Studio 6.
o Fixed problems in silence effect related to removing multiple
periods of silence from the middle of the sound file.
o Reduced the window size greatly on the silence effect to
prevent leaving in silence that looked like noise still based
on RMS values.
o Prevent infinite loop in pitch effect from uninitialize variable.
Frank Heckenbach
o Prevent crashes when printing error mesages (1447239)