Feature Requests item #1645923, was opened at 2007-01-27 06:08
Message generated for change (Comment added) made by robs
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=360706&aid=1645923&group_id=10706

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Reuben Thomas (rrt)
Assigned to: Nobody/Anonymous (nobody)
Summary: Move file formats into libsndfile

Initial Comment:
On quality we're behind the curve (libsndfile is widely used and has a better 
test suite than SoX). On quantity we're doing OK: we have several formats that 
libsndfile lacks (and vice versa).

libsndfile's author, Erik de Castro Lopo, has said he's happy for me to put the 
SoX formats into libsndfile, so I'm working on that.

There remains one obstacle to just using libsndfile: Erik won't accept 
proprietary or otherwise problematic formats like MP3, so we need to keep that. 
I'm hoping we can find a way to use the same libsndfile API so that we don't 
need to retain the SoX layer on top (although the way that SoX deals with 
effects and formats may still mean it's desirable to do that).

This is a moderately long-term project, but my goal is to have all the 
non-problematic formats run from libsndfile rather than SoX by the next major 
release; that alone will get rid of a lot of SoX code. libsndfile is about as 
portable as SoX and uses the same license, so it doesn't make extra problems 
for us.


----------------------------------------------------------------------

>Comment By: robs (robs)
Date: 2013-02-03 08:10

Message:
I don't think there were many; one I specifically remember is demonstrated
by:
  cat monkey.wav | sox -tvox - -n
SoX gives you a good idea that you were using the wrong format for the
file, by allowing the format to report errors (even better is to report
them live with -S so that the user can perhaps react with a ctrl-c on a
long conversion that's going to be a waste of time).
It's not a major feature of course, but I can't see any merit in throwing
it away.  If we want to use libsndfile for core functionality then we'll
need an in-tree copy anyway, so having local changes on a branch is no
great shakes.

----------------------------------------------------------------------

Comment By: Ulrich Klauer (uklauer)
Date: 2013-02-03 05:13

Message:
Regarding "Does anyone still want it?": Yes, I want it. :) So much that I
might actually work on this (one day). Though I think the SoX format layer
will have to remain, as it is probably too much trouble to get rid of it
completely. The most important points, I think, are what Rob said
(transparency) and from a source code perspective that we shouldn't need an
explicit wrapper like w64.c for each and every supported format, but some
kind of table.

Rob, which API problems were there? Disregarding special formats (playback,
nulfile etc.).

----------------------------------------------------------------------

Comment By: robs (robs)
Date: 2013-02-03 01:51

Message:
I tried to merge a simple format into libsndfile (vox, IIRC) and didn't get
very far as SoX's API contains stuff outside the intersection of the 2 APIs
and Erik didn't want to extend libsndfile's API.  So one possibility is for
SoX to maintain an in-tree fork of libsndfile, probably merging most
upstream updates as they become available, and with the obvious option for
Erik to cherry-pick anything he wants from the fork.

Certainly, for user-friendliness, there should only be one sox driver per
format, and the fact that some use code from libsndfile should be
transparent to the user.


----------------------------------------------------------------------

Comment By: Reuben Thomas (rrt)
Date: 2013-02-02 15:10

Message:
Progress was that back in 2008 I moved WVE [sic] support into libsndfile.
There are plenty of other simple formats that could be moved, and of course
WAV support could be merged, by adding all WAV features that SoX has but
libsndfile lacks into libsndfile.

The main barrier is that Erik de Castro Lopo has very high standards, but
that means that the result is good, and likely to remain zero maintenance
for SoX devs.

Indeed, libsndfile is not being rapidly developed; that should make it
EASIER for SoX devs to get new formats moved into it.

----------------------------------------------------------------------

Comment By: Jan StarĂ½ (janstary)
Date: 2013-02-02 12:19

Message:
Has there been any progress on this? Does anyone still want it?

libsndfile has FLAC/Ogg/Vorbis support since 1.0.18,
and it doesn't look like it will add others any time soon.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=360706&aid=1645923&group_id=10706

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_jan
_______________________________________________
SoX-devel mailing list
SoX-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sox-devel

Reply via email to