diff options
author | drochner <drochner@pkgsrc.org> | 2010-04-12 19:04:58 +0000 |
---|---|---|
committer | drochner <drochner@pkgsrc.org> | 2010-04-12 19:04:58 +0000 |
commit | 51236288015b5b8d57ec11b60e7d7c3c56d741e7 (patch) | |
tree | 68edb697dd823e4c83d0f9551b8169331657496d /audio | |
parent | f1c8fa59a4a64739cd5743e4e68cdb80694b72d6 (diff) | |
download | pkgsrc-51236288015b5b8d57ec11b60e7d7c3c56d741e7.tar.gz |
update to 0.2.7
changes:
-Fix decoding of multi-channel ADPCM WAVE files (was patched in pkgsrc)
-Reduce unshared data in library
-Fix handling of audio files with more than 2^24 frames
-Add support for writing double-precision floating-point WAVE files
-Add support for reading certain uncompressed AIFF-C files created
by Mac OS X
-Write fact chunk in floating-point WAVE files
Diffstat (limited to 'audio')
-rw-r--r-- | audio/libaudiofile/Makefile | 5 | ||||
-rw-r--r-- | audio/libaudiofile/distinfo | 13 | ||||
-rw-r--r-- | audio/libaudiofile/patches/patch-aa | 13 | ||||
-rw-r--r-- | audio/libaudiofile/patches/patch-ac | 25 | ||||
-rw-r--r-- | audio/libaudiofile/patches/patch-ad | 111 | ||||
-rw-r--r-- | audio/libaudiofile/patches/patch-ae | 32 | ||||
-rw-r--r-- | audio/libaudiofile/patches/patch-af | 16 |
7 files changed, 56 insertions, 159 deletions
diff --git a/audio/libaudiofile/Makefile b/audio/libaudiofile/Makefile index e8cf56539d6..fdb67902522 100644 --- a/audio/libaudiofile/Makefile +++ b/audio/libaudiofile/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.44 2009/12/01 10:44:02 drochner Exp $ +# $NetBSD: Makefile,v 1.45 2010/04/12 19:04:58 drochner Exp $ -DISTNAME= audiofile-0.2.6 +DISTNAME= audiofile-0.2.7 PKGNAME= lib${DISTNAME} -PKGREVISION= 3 CATEGORIES= audio MASTER_SITES= http://www.68k.org/~michael/audiofile/ \ ${MASTER_SITE_GNOME:=sources/audiofile/0.2/} diff --git a/audio/libaudiofile/distinfo b/audio/libaudiofile/distinfo index 4fe8b47ee83..6e8f9177729 100644 --- a/audio/libaudiofile/distinfo +++ b/audio/libaudiofile/distinfo @@ -1,9 +1,8 @@ -$NetBSD: distinfo,v 1.13 2009/12/01 10:44:02 drochner Exp $ +$NetBSD: distinfo,v 1.14 2010/04/12 19:04:58 drochner Exp $ -SHA1 (audiofile-0.2.6.tar.gz) = 94a6ab8e5122bc1971cf186e5a52d032811c9bc5 -RMD160 (audiofile-0.2.6.tar.gz) = b61fbc856768a5838ca5c0fad602f35205e8d037 -Size (audiofile-0.2.6.tar.gz) = 374688 bytes -SHA1 (patch-aa) = 7c498a63fe055f1f7e16f45f655341a9b6708f71 +SHA1 (audiofile-0.2.7.tar.gz) = 1d8a5bb0ca63c7047436f136fb1fb98ea886e920 +RMD160 (audiofile-0.2.7.tar.gz) = 70327d38c6a9057045f5c59f67f45e2f6f9bf677 +Size (audiofile-0.2.7.tar.gz) = 502448 bytes SHA1 (patch-ab) = cd292a827aa18b9839305b2c62c3dbd526384430 -SHA1 (patch-ac) = fd2b8bb374b263b34a0e724c3e7de498f3ff2b7c -SHA1 (patch-ad) = 3558f3f83e322efcf2c2a4e7afbc144b084e99f6 +SHA1 (patch-ae) = 6dc99026b3448f436a5ccf638598344018329661 +SHA1 (patch-af) = d0d9b737bf6b3c5ea497ea16160fcee7aad4ffe2 diff --git a/audio/libaudiofile/patches/patch-aa b/audio/libaudiofile/patches/patch-aa deleted file mode 100644 index aeb9599c840..00000000000 --- a/audio/libaudiofile/patches/patch-aa +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-aa,v 1.10 2005/04/27 08:59:41 wiz Exp $ - ---- audiofile.m4.orig 2004-03-06 07:39:23.000000000 +0100 -+++ audiofile.m4 -@@ -9,7 +9,7 @@ - dnl AM_PATH_AUDIOFILE([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) - dnl Test for Audio File Library, and define AUDIOFILE_CFLAGS and AUDIOFILE_LIBS. - dnl --AC_DEFUN(AM_PATH_AUDIOFILE, -+AC_DEFUN([AM_PATH_AUDIOFILE], - [dnl - dnl Get compiler flags and libraries from the audiofile-config script. - dnl diff --git a/audio/libaudiofile/patches/patch-ac b/audio/libaudiofile/patches/patch-ac deleted file mode 100644 index 643a56c0fa2..00000000000 --- a/audio/libaudiofile/patches/patch-ac +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-ac,v 1.2 2009/12/01 10:44:02 drochner Exp $ - ---- libaudiofile/modules/msadpcm.c.orig 2004-03-06 07:39:23.000000000 +0100 -+++ libaudiofile/modules/msadpcm.c -@@ -129,8 +129,7 @@ static int ms_adpcm_decode_block (ms_adp - ms_adpcm_state *state[2]; - - /* Calculate the number of bytes needed for decoded data. */ -- outputLength = msadpcm->samplesPerBlock * sizeof (int16_t) * -- msadpcm->track->f.channelCount; -+ outputLength = msadpcm->samplesPerBlock * sizeof (int16_t);
- - channelCount = msadpcm->track->f.channelCount; - -@@ -180,8 +179,8 @@ static int ms_adpcm_decode_block (ms_adp - The first two samples have already been 'decoded' in - the block header. - */ -- samplesRemaining = (msadpcm->samplesPerBlock - 2) * -- msadpcm->track->f.channelCount; -+ samplesRemaining = msadpcm->samplesPerBlock
-+ - 2 * msadpcm->track->f.channelCount;
- - while (samplesRemaining > 0) - { diff --git a/audio/libaudiofile/patches/patch-ad b/audio/libaudiofile/patches/patch-ad deleted file mode 100644 index 7c7fcfda01f..00000000000 --- a/audio/libaudiofile/patches/patch-ad +++ /dev/null @@ -1,111 +0,0 @@ -$NetBSD: patch-ad,v 1.2 2009/12/01 10:44:02 drochner Exp $ - ---- libaudiofile/wave.c.orig 2004-03-06 07:39:23.000000000 +0100 -+++ libaudiofile/wave.c -@@ -199,11 +199,13 @@ static status ParseFormat (AFfilehandle - case WAVE_FORMAT_ADPCM: - { - u_int16_t bitsPerSample, extraByteCount, -- samplesPerBlock, numCoefficients; -+ samplesPerBlock, numCoefficients,
-+ framesPerBlock;
- int i; - AUpvlist pv; - long l; - void *v; -+ int minBlockLength;
- - if (track->f.channelCount != 1 && - track->f.channelCount != 2) -@@ -216,11 +218,33 @@ static status ParseFormat (AFfilehandle - af_fread(&bitsPerSample, 1, 2, fp); - bitsPerSample = LENDIAN_TO_HOST_INT16(bitsPerSample); - -+ if (bitsPerSample != 4)
-+ {
-+ _af_error(AF_BAD_WIDTH,
-+ "bad sample width of %hd bits",
-+ bitsPerSample);
-+ return AF_FAIL;
-+ }
-+
- af_fread(&extraByteCount, 1, 2, fp); - extraByteCount = LENDIAN_TO_HOST_INT16(extraByteCount); - -- af_fread(&samplesPerBlock, 1, 2, fp); -- samplesPerBlock = LENDIAN_TO_HOST_INT16(samplesPerBlock); -+ af_fread(&framesPerBlock, 1, 2, fp);
-+ framesPerBlock = LENDIAN_TO_HOST_INT16(framesPerBlock);
-+
-+ minBlockLength = 7 * channelCount; /* header */
-+ if (framesPerBlock > 2)
-+ minBlockLength += ( ( framesPerBlock - 2 ) * channelCount + 1) / 2;
-+
-+ if (blockAlign < minBlockLength)
-+ {
-+ _af_error(AF_BAD_FRAMECNT,
-+ "blockAlign %hd too small for %hd samplesPerBlock",
-+ blockAlign, samplesPerBlock);
-+ return AF_FAIL;
-+ }
-+
-+ samplesPerBlock = framesPerBlock *channelCount;
- - af_fread(&numCoefficients, 1, 2, fp); - numCoefficients = LENDIAN_TO_HOST_INT16(numCoefficients); -@@ -242,6 +266,7 @@ static status ParseFormat (AFfilehandle - wave->msadpcmCoefficients[i][1] = a1; - } - -+
- track->f.sampleWidth = 16; - track->f.sampleFormat = AF_SAMPFMT_TWOSCOMP; - track->f.compressionType = AF_COMPRESSION_MS_ADPCM; -@@ -277,18 +302,44 @@ static status ParseFormat (AFfilehandle - { - AUpvlist pv; - long l; -+ int minBlockLength;
- - u_int16_t bitsPerSample, extraByteCount, -- samplesPerBlock; -+ samplesPerBlock, framesPerBlock;
- - af_fread(&bitsPerSample, 1, 2, fp); - bitsPerSample = LENDIAN_TO_HOST_INT16(bitsPerSample); - -+ if (bitsPerSample != 4)
-+ {
-+ _af_error(AF_BAD_WIDTH,
-+ "bad sample width of %hd bits",
-+ bitsPerSample);
-+ return AF_FAIL;
-+ }
-+
- af_fread(&extraByteCount, 1, 2, fp); - extraByteCount = LENDIAN_TO_HOST_INT16(extraByteCount); - -- af_fread(&samplesPerBlock, 1, 2, fp); -- samplesPerBlock = LENDIAN_TO_HOST_INT16(samplesPerBlock); -+ af_fread(&framesPerBlock, 1, 2, fp);
-+ framesPerBlock = LENDIAN_TO_HOST_INT16(framesPerBlock);
-+ samplesPerBlock = framesPerBlock * channelCount;
-+
-+ /* per channel, ima has blocks of len 4, the 1st has 1st sample, the others
-+ * up to 8 samples per block,
-+ * so number of later blocks is (nsamp-1 + 7)/8, total blocks/chan is
-+ * (nsamp-1+7)/8 + 1 = (nsamp+14)/8
-+ */
-+
-+ minBlockLength = ( framesPerBlock + 14 )/8 * 4 * channelCount;
-+
-+ if (blockAlign < minBlockLength)
-+ {
-+ _af_error(AF_BAD_FRAMECNT,
-+ "blockAlign %hd too small for %hd samplesPerBlock",
-+ blockAlign, samplesPerBlock);
-+ return AF_FAIL;
-+ }
- - track->f.sampleWidth = 16; - track->f.sampleFormat = AF_SAMPFMT_TWOSCOMP; diff --git a/audio/libaudiofile/patches/patch-ae b/audio/libaudiofile/patches/patch-ae new file mode 100644 index 00000000000..18fb5c788b9 --- /dev/null +++ b/audio/libaudiofile/patches/patch-ae @@ -0,0 +1,32 @@ +$NetBSD: patch-ae,v 1.1 2010/04/12 19:04:58 drochner Exp $ + +see Ubuntu bug 327018 + +--- libaudiofile/util.c.orig 2010-01-26 19:56:24.000000000 +0000 ++++ libaudiofile/util.c +@@ -343,10 +343,10 @@ int _af_format_sample_size_uncompressed + return size; + } + +-float _af_format_sample_size (_AudioFormat *fmt, bool stretch3to4) ++double _af_format_sample_size (_AudioFormat *fmt, bool stretch3to4) + { + int compressionIndex; +- float squishFactor; ++ double squishFactor; + + compressionIndex = _af_compression_index_from_id(fmt->compressionType); + squishFactor = _af_compression[compressionIndex].squishFactor; +@@ -361,10 +361,10 @@ int _af_format_frame_size_uncompressed ( + fmt->channelCount; + } + +-float _af_format_frame_size (_AudioFormat *fmt, bool stretch3to4) ++double _af_format_frame_size (_AudioFormat *fmt, bool stretch3to4) + { + int compressionIndex; +- float squishFactor; ++ double squishFactor; + + compressionIndex = _af_compression_index_from_id(fmt->compressionType); + squishFactor = _af_compression[compressionIndex].squishFactor; diff --git a/audio/libaudiofile/patches/patch-af b/audio/libaudiofile/patches/patch-af new file mode 100644 index 00000000000..6f824106027 --- /dev/null +++ b/audio/libaudiofile/patches/patch-af @@ -0,0 +1,16 @@ +$NetBSD: patch-af,v 1.1 2010/04/12 19:04:58 drochner Exp $ + +--- libaudiofile/util.h.orig 2010-01-26 19:55:15.000000000 +0000 ++++ libaudiofile/util.h +@@ -55,9 +55,9 @@ _Track *_af_filehandle_get_track (AFfile + + bool _af_unique_ids (int *ids, int nids, char *idname, int iderr); + +-float _af_format_frame_size (_AudioFormat *format, bool stretch3to4); ++double _af_format_frame_size (_AudioFormat *format, bool stretch3to4); + int _af_format_frame_size_uncompressed (_AudioFormat *format, bool stretch3to4); +-float _af_format_sample_size (_AudioFormat *format, bool stretch3to4); ++double _af_format_sample_size (_AudioFormat *format, bool stretch3to4); + int _af_format_sample_size_uncompressed (_AudioFormat *format, bool stretch3to4); + + status _af_set_sample_format (_AudioFormat *f, int sampleFormat, int sampleWidth); |