libsox build and documentation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for the reports so far (mostly off-list).

On top of that build branch, here is a branch that
builds _and_documents_ libsox, i.e. brings libsox(3)
to sync with reality, after many many years.

https://github.com/janstary/sox/tree/libsox
https://github.com/janstary/sox/issues/43
https://github.com/janstary/sox/issues/49


See the git log for more lolz:

/**
Client API:
Signed twos-complement 8-bit type. Typically defined as signed char.
*/
typedef int8_t sox_int8_t;


Please test everywhere and let me know if it works for you.
(Let's see if anyone uses libsox at all.)

	Jan


On Jun 10 20:21:58, hans@xxxxxxxx wrote:
> Dear fellow users of SoX,
> 
> I would like to kindly ask you to test a build system for SoX:
> the 'build' branch at https://github.com/janstary/sox/tree/build
> 
> On the surface it is the same: ./configure && make (see INSTALL).
> On the inside, it is a complete overhaul.
> 
> Branching from Mans's latest commit (the spectrogram fix),
> it consists of about 100 commits, should you want to read
> the whole story; here is the gist of it.
> 
> It replaces the GNU auto* system with a simple, hand-written
> ./configure script, a straightforward Makefile, and a set of
> have-*.c micro-programs testing the availability of libraries.
> It "borrows" heavily (in fact, steals with love) from
> Ingo Schwarze's build system for the mandoc package.
> 
> This has no dependency on anything besides sh(1) and cc(1).
> The main point is to get rid of the GNU autotools monster:
> Do we have strlen()? Can <stdint.h> be included? What of "gcc -v"?
> POSIX.1 came out more than fifteen years ago; all modern systems
> are close to that and we should be coding against that standard.
> 
> Functionaly, this system detects the optional external formats
> and audio drivers the current autotools system tries to detect,
> but correctly, much faster, using elementary tools,
> and actualy respecting the results.
> 
> The single exception is waveaudio, as I have no windows machine.
> 
> A big change in the resulting build is this no longer builds
> or install libsox the library, as opposed to sox the binary.
> SoX itself seems to be the only user of that library.
> Looking into the entire collection of ports and packages
> of all the system below, I have found _two_ things using it.
> (Not to be confused with libsoxr, the resampling library
> extracted from sox by Rob Sykes, maintainer at the time.)
> Details in https://github.com/janstary/sox/issues/43
> 
> Another change is the dynamic loading of libraries with dlopen(),
> which I have completely dropped. Either have the library at build
> and link against it, or don't, like everyone else. (But libltdl
> is not completely gone, because the ladspa plugins need it.)
> 
> Like gsm some years ago, the lpc codec is made an optional,
> external dependecy, as opposed the carrying a copy of its
> entire implementation. If you care about LPC as a format,
> look at https://github.com/janstary/lpc for a separate lib;
> note that the original LPC code (as opposed to the bundled subdir)
> has just been made available, upon asking, by the original author:
> https://github.com/jafingerhut/lpc10
> 
> While here, I have also done some cleaning, but nothing that
> would change SoX's actual audio behaviour. I have removed
> struct timeb, obsoleted ages ago and not even used here,
> the homegrown strcasecmp(), #ifdef HAVE_STDINT_H and
> other ancient cruft. See the git log for the lolz.
> 
> I have been running and testing this for some time on
> 
> 	OpenBSD/current (amd64, i386, arm64, armv7, powerpc, octeon)
> 	FreeBSD 14.1 (amd64)
> 	NetBSD 10.0 (amd64)
> 	macOS 14.5 (M1 MacBook Air)
> 	Debian 13.2 trixie (amd64)
> 	Solaris (SunOS 5.11)
> 
> and everything I could test seems to work. That is to say,
> the build of sox and the detection of external libs as
> optional extra formats and drivers works; the actual
> audio signal processing code, which has its own problems,
> has not been touched.
> 
> During all that, going through the individual formats,
> I have also reviewed the soxi(1) and soxformat(7) manpages,
> untouched for a decade, and synced them with reality,
> refactoring a bit, and rewriting in mdoc(7) not man(7).
> Please read them. (The monstrous sox(1) is for later.)
> 
> Please test on every system you use SoX on.  Please test
> the detection of every audio format and effect and driver
> you care about (or, better yet, test them all). If anything
> doesn't work as expected, please report here or open an issue:
> https://github.com/janstary/sox/issues
> 
> 	Thank you,
> 
> 		Jan
> 
> 
> 
> _______________________________________________
> Sox-users mailing list
> Sox-users@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/sox-users
> 


_______________________________________________
Sox-users mailing list
Sox-users@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/sox-users



[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux