It detects all the external file formats now, except amr-vo for wb encoding and lame for mp3 encoding (the decoders work though). Can you please test again?
Thanks for testing! Yes: none of the test for external libraries (such as ogg of flac) are there yet, that's why thay all "fail" - that is the next step. There rest are the warnings of compiling SoX itself, nothing to do with the build system, Yes, it is fast: it runs a nearly trivial shell script and that's it; unike autotools it doesn't keep checking whether you have strlen() or unistd.h etc. Please keep testing on all other systems :-)
Better version here: https://github.com/janstary/sox/tree/build
It seems to be working now.
cleanup + we have popen()
README not FEATURES
remove homegrown strcasecmp() et al.
So far one confirmation that it does not work.
Can anyone please confirm their emails do arrive at sox-users and sex-devel?
mailing lists not working
a sane build system
no neeed for a specific tmp path
remove sox.pc.in: we provide no library
there is no VERSION
cleanup
clean up DOS and MSVC cruft
everybody has unistd.h etc
both png and zlib are needed for spectrograms
detext zlib, needed by png
drop gsm and gsrt
drop OPENMP threads
detect png and do spectrograms
detect coreaudio
coreaudio cleanup
detect sndio
whitespace
cleanup
detect and use CoreAudio
clean up INSTALL instructions
recognize effect files as such
CPTOBJS are the compatibility objects
drop magic; clean up cruft
cleanup of FEATURES
more cleanup
detect opus
cleanup
trim down the flac test
trim local configuration example
Merge branch 'build' of ssh://git.code.sf.net/u/janstary/sox into build
only compile in formats defined to 1 with HAVE
typo
an empty .depend
detect use flac
drop ladspa
cleanup
cleanup: we don't expose libsox
clean up some mandoc relicts
micro-programs to test the environment
a sane build system
remove unused files
remove the nonexistent 'divide' effect
LT_INIT is a must in this system
remove win32 cruft
remove ancient scripts and tests
remove more cruft
remove tests of nonexisting effects
make the tests compile
remove old cruft
drop lpc support; remove cruft
autoreconf requires these files
Remove the OSX README
remove ChangeLog, we have git history
remove the Doxyfile which does nothing
fix spectrogram segfault
remove the network functionality (wget)
autoreconf overwrites INSTALL
don't generate html. pdf and txt manpages
(Similarly for *.txt files)
$ make html groff -t -man -Thtml -P -Dsoxpng sox.1 | sed 's,<head>,&<link rel="stylesheet" href="http://sox.sourceforge.net/pub/skins/sox/sox.css" type="text/css"></link>,' > sox.html /bin/sh: groff: command not found groff -t -man -Thtml -P -Dsoxpng soxi.1 | sed 's,<head>,&<link rel="stylesheet" href="http://sox.sourceforge.net/pub/skins/sox/sox.css" type="text/css"></link>,' > soxi.html /bin/sh: groff: command not found groff -t -man -Thtml -P -Dsoxpng soxformat.7 | sed 's,<head>,&<link rel="stylesheet"...
html and pdf generation is broken
Merge branch 'macos' into patched
Merge remote-tracking branch 'origin/test' into patched
Merge branch 'dat' into patched
Merge branch 'devices' into patched
Merge branch 'voc' into helmut
Merge branch 'validate' into helmut
Merge branch 'leak-comments' into helmut
Merge branch 'sphere' into helmut
Merge branch 'hcom' into helmut
macos: curl not wget
$ sox ~/Downloads/sox-zero.voc -n noiseprof /dev/null sox FAIL sox: `/Users/hans/Downloads/sox-zero.voc' format changed: Unsupported data format
$ sox ~/Downloads/sox-zero.hcom -n noiseprof /dev/null sox FAIL formats: can't open input file `/Users/hans/Downloads/sox-zero.hcom': premature EOF
Cannot reproduce with current git: $ play Downloads/sox-zero.wav play FAIL formats: bad input format for file `Downloads/sox-zero.wav': data encoding or sample size was not specified $ sox ~/Downloads/sox-zero.wav -n noiseprof /dev/null sox FAIL formats: bad input format for file `/Users/hans/Downloads/sox-zero.wav': data encoding or sample size was not specified What is the version where you are seeing this?
After adding a few naive printfs: with any audio file whatsoever, the ft->encoding.bits_per_sample in these lines is zero. Setting the buf_size is just where it shows.
Also, using AO as an output makes play crash with a SIGFPE on any file whatsoever, not just on those example files. Which makes me believe that 1. AO support is broken 2. Nobody's been using it for a long time Are there any systrems that use AO as their default/native sound playing system?
I don't understand the buf_size dance either. In commit 3d4cdf3d163b9d8c6a4241ff412b785178af4865 it was changed from ao->buf_size = sox_globals.bufsiz - (sox_globals.bufsiz % ft->signal.size); ao->buf_size *= ft->signal.size; to ao->buf_size = sox_globals.bufsiz - (sox_globals.bufsiz % (ft->encoding.bits_per_sample >> 3)); ao->buf_size *= (ft->encoding.bits_per_sample >> 3); Apparently, something like what the first line does needs to be there, because with a simple ao->buf_size = sox_globals.bufsiz;...
I just tried on OpenBSD with only AO compiled in (--with-ao), --disabling all other outputs, including the native sndio. I can confirm that play segfaults on both of your examples. $ play -V6 sox-fpe.voc play DBUG sox: Looking for a default device: trying format `ao' Floating point exception (core dumped) #0 0x00000b33b5565459 in startwrite (ft=0x7f7ffffcfa20) at ao.c:38 38 ao->buf_size = sox_globals.bufsiz - (sox_globals.bufsiz % (ft->encodin g.bits_per_sample >> 3)); (gdb) bt #0 0x00000b33b5565459...
Is AO the default output on Fedora? If not, how ecatly do you send the output to AO? Does the FPE always occur when playing the above files via AO? Have you tried on other systems that use AO as their output?
Also note that this is not "the output of added effect". In fact, it is perfectly legal for effects tp change the rate of number of channels: rate will change the sample rate by definition, synth will add channels, and remix will change the number of channels ...
$ ./example1 monkey.wav monkey.cdr formats: cdda can't encode at 8012Hz; using 44100Hz formats: cdda can't encode mono; setting channels to 2 What else is there to be done?
If we want to use libsndfile for core functionality then we'll need an in-tree copy anyway Isn't the whole point of pushing these formats into libsndfile that sox will not need its own copy of them?
macOS build is like any other
macOS build is like any other
The manpages says To specify that no comment should be stored in the output file, use --comment "" . So I don't think this is a bug.
get device name properly on macOS
coreaudio: get the actual device names
Can we please close this, after more than a decade? As to the feature itself: the proposed .soxrc introduces new syntax, which would require a new parser, as if that's not a mess already. If sox ever has this, let's agree the syntax has to be identical to the command line; at which point the only feature is that you don;t have to type it; which imho means it's not even worth the extra complexity.
move AUTHORS to the manpage
sphere: do not underflow
sphere: do not underflow