[Lame-dev] New lame upstream release?

Andres Mejia mcitadel at gmail.com
Wed Jul 27 22:26:23 UTC 2011


2011/7/27 Rogério Brito <rbrito at ime.usp.br>:
> Hi, Reinhard.
>
> I hope that you're having a good DebConf... I miss chatting with you...
>
> On 2011-07-27, at 16:22, Reinhard Tartler wrote:
>
>> On Wed, Jul 27, 2011 at 19:48:05 (CEST), Rogério Brito wrote:
>>>
>>> I'm in the middle of a power outage right now, using the last few
>>> drops of energy of notebook battery and a 3G connection, so I will be
>>> brief. (Oh, please keep in the CC'ies to me).
>
> The energy just came back and I'm taking that time to charge my battery, but
> I won't be able to compile stuff here.
>
>>> On Tue, Jul 26, 2011 at 14:41, Andres Mejia <mcitadel at gmail.com> wrote:
>>>>
>>>> On Jul 26, 2011 12:49 PM, "robert" <Robert.Hegemann at gmx.de> wrote:
>>>>>
>>>>> From my point of view, there may be some small patches to apply
>>>>> and then release 3.99:
>>>>>
>>>>> 1 - pending LGPL patch
>>>>> 2 - eventually changing default behaviour for ID3v2 unicode tags.
>>>
>>> Robert, it seems that Andres just adopted the suggestion that I gave
>>> him of backporting some changes. Regarding a new release, I think that
>>> we may need to include one extra thing in our TODO list. See below.
>>
>> Andres, may I suggest that instead of placing patches inline in
>> debian/lame-get-orig-source.sh, we create an 'upstream-dfsg' branch, do
>> modifications there directly and roll tarballs from that?
>
> I would like to take a peek at how you guys are packaging it... Will do as
> soon as the power is back.
>
>>> Andres, I just saw that LAME was rejected by the FTP masters:
>>>
>>>
>>>  http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/2011-July/020498.html
>>>
>>> That part is only used if we use lame's internal IO routines. Just rip
>>> that apart and link with libsndfile and we're done. Please reupload
>>> that...
>>
>> Unforunately, this won't work easily because frontend/main.c uses
>> functions from portableio.h unconditionally. We'd therefore need some
>> more patches. Anyone familiar with the codebase and willing to
>> contribute that patch?
>
> Oh, shit. I'll take a look at that... I thought that the code were
> ifdef'ed... Isn't it?
>
>>> Most of the functions in portableio.[ch] are quite trivial, anyway...
>>> You can tell that I *badly* want LAME in Debian, can't you?
>>> (Especially now that it seems that the FTP masters are convinced that
>>> such software is Free Software).
>>>
>>> Oh, hint, hint for the multimedia maintainers: what about uploading my
>>> already packaged mp3packer from my launchpad PPA? [0]
>>>
>>> [0]:
>>> https://launchpad.net/~rbrito/+archive/ppa/+files/mp3packer_1.20-1~ubuntu1.dsc
>>>
>>> OK, the battery of my laptop is running out... :-(
>>
>> Doesn't the package lack a dependency on lame?
>
> No, absolutely *no* dependency on LAME.
>
>> AFAIUI it is a tool to
>> reencode .mp3 files. I persume that it uses lame for that, but the
>> documentatin isn't entirely clear on that.
>
> It doesn't reencode. It only "rearranges" the frames in a lossless manner.
> Like, for instance, getting the bits that are already produced by an MP3
> encoder (any one) and "putting them in bins" so as to make the files smaller
> (taking a better advantage of the bit reservoir, etc).
>
> The program is so darned cool... The best thing with this MP3 thing is that
> even though you already have a file that is encoded by anyone, it is
> possible to a great extent to manipulate it losslessly:
>
> * mp3gain, to avoid clipping while decoding (of course, clipping before
> encoding is not remediable);
> * mp3packer, to squeeze some extra bits and make the files smaller (reduding
> the bitrate).
>
> In my very humble opinion, the combo (mp3packer, LAME) breathes at least a
> little bit of life in a format that many already thought that was dead,
> while still being, say, universally compatible... With them, you can raise
> the bitrate of your encodes a notch to get better sound and then losslessly
> rearrange the file to a lower bitrate...
>
> A side effect of it is that it also fixes many old VBR files that may have
> incorrect lengths reported (and, thus, renders my package vbrfix obsolete).
>
> OK, enough blurb. The packaging of mp3packer is really trivial (as you can
> see) and I would volunteer to maintain it under the pkg-multimedia umbrella.
>
>
> Regards,
>
> --
> Rogério Brito : rbrito@{ime.usp.br,gmail.com} : GPG key 4096R/BCFCAAAA
> http://rb.doesntexist.org : Packages for LaTeX : algorithms.berlios.de
> DebianQA: http://qa.debian.org/developer.php?login=rbrito%40ime.usp.br
>
>
>
>

Hi Rogério,

I have a patch here with some changes we do to the build system.

We outright disable the use of the GTK frontend, since it requires a
very old version of GTK. I think there are better tools out now
(audacity maybe). Perhaps the GTK frontend should be removed from lame
entirely.

The other change simply changes how the debian directory is included
in the generated tarball. The debian directory still gets included,
but there's no need to have any "Makefile*" files in the debian
directory. This would remove our need to patch the build system for
each release of lame.

Index: configure.in
===================================================================
RCS file: /cvsroot/lame/lame/configure.in,v
retrieving revision 1.140
diff -u -r1.140 configure.in
--- configure.in  7 May 2011 15:44:18 -0000 1.140
+++ configure.in  27 Jul 2011 22:12:03 -0000
@@ -388,7 +388,7 @@

 dnl configure use of features

-AM_PATH_GTK(1.2.0, HAVE_GTK="yes", HAVE_GTK="no")
+dnl AM_PATH_GTK(1.2.0, HAVE_GTK="yes", HAVE_GTK="no")

 dnl ElectricFence malloc debugging
 AC_MSG_CHECKING(use of ElectricFence malloc debugging)
@@ -1147,6 +1147,6 @@

 AC_SUBST(CONFIG_DEFS)

-AC_CONFIG_FILES([Makefile libmp3lame/Makefile
libmp3lame/i386/Makefile libmp3lame/vector/Makefile frontend/Makefile
mpglib/Makefile doc/Makefile doc/html/Makefile doc/man/Makefile
include/Makefile Dll/Makefile misc/Makefile debian/Makefile
dshow/Makefile ACM/Makefile ACM/ADbg/Makefile ACM/ddk/Makefile
ACM/tinyxml/Makefile lame.spec mac/Makefile macosx/Makefile
macosx/English.lproj/Makefile macosx/LAME.xcodeproj/Makefile
vc_solution/Makefile])
+AC_CONFIG_FILES([Makefile libmp3lame/Makefile
libmp3lame/i386/Makefile libmp3lame/vector/Makefile frontend/Makefile
mpglib/Makefile doc/Makefile doc/html/Makefile doc/man/Makefile
include/Makefile Dll/Makefile misc/Makefile dshow/Makefile
ACM/Makefile ACM/ADbg/Makefile ACM/ddk/Makefile ACM/tinyxml/Makefile
lame.spec mac/Makefile macosx/Makefile macosx/English.lproj/Makefile
macosx/LAME.xcodeproj/Makefile vc_solution/Makefile])

 AC_OUTPUT
Index: Makefile.am
===================================================================
RCS file: /cvsroot/lame/lame/Makefile.am,v
retrieving revision 1.38
diff -u -r1.38 Makefile.am
--- Makefile.am 30 Oct 2010 13:21:01 -0000  1.38
+++ Makefile.am 27 Jul 2011 22:12:03 -0000
@@ -4,7 +4,7 @@

 .PHONY: test

-SUBDIRS = mpglib libmp3lame frontend Dll debian doc include misc dshow ACM \
+SUBDIRS = mpglib libmp3lame frontend Dll doc include misc dshow ACM \
  mac macosx vc_solution

 CLEANFILES = testcase.new.mp3
@@ -22,6 +22,7 @@
  STYLEGUIDE \
  USAGE \
  configMS.h \
+ debian \
  lame.bat \
  lame.spec.in \
  lame.spec \
Index: frontend/Makefile.am
===================================================================
RCS file: /cvsroot/lame/lame/frontend/Makefile.am,v
retrieving revision 1.33
diff -u -r1.33 Makefile.am
--- frontend/Makefile.am  30 Oct 2010 13:21:02 -0000  1.33
+++ frontend/Makefile.am  27 Jul 2011 22:12:03 -0000
@@ -36,7 +36,7 @@
 mp3rtp_SOURCES = mp3rtp.c rtp.c $(common_sources)
 mp3x_SOURCES = mp3x.c gtkanal.c gpkplotting.c $(common_sources)

-CFLAGS = @CFLAGS@ @GTK_CFLAGS@ @FRONTEND_CFLAGS@ @SNDFILE_CFLAGS@
+CFLAGS = @CFLAGS@ @FRONTEND_CFLAGS@ @SNDFILE_CFLAGS@
 LDFLAGS = @LDFLAGS@ @FRONTEND_LDFLAGS@ @SNDFILE_LIBS@

 INCLUDES = -I$(top_srcdir)/libmp3lame -I$(top_srcdir)/include -I$(top_builddir)
@@ -45,7 +45,7 @@
  $(top_builddir)/libmp3lame/libmp3lame.la \
  @FRONTEND_LDADD@

-mp3x_LDADD = $(LDADD) @GTK_LIBS@
+mp3x_LDADD = $(LDADD)

 CLEANFILES = lclint.txt $(EXTRA_PROGRAMS)


Note again, the single space at the end. Also, this patch doesn't
include the removal of "debian/Makefile*" files.

I've started replacing frontend/portableio.* code. I should have
something available later on tonight.

One final thing, I delete the "LICENSE" file from the upstream tarball
since the "COPYING" file has the actual license text and the contents
of "LICENSE" seem to what is already said in the "README" file.
Perhaps you might want to look into that too.

-- 
Regards,
Andres Mejia
-------------- next part --------------
A non-text attachment was scrubbed...
Name: build-system-changes.patch
Type: text/x-diff
Size: 3002 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20110727/59b51635/attachment.patch>


More information about the pkg-multimedia-maintainers mailing list