From a041a70153382bded4639ff6d9a534a9500bbb57 Mon Sep 17 00:00:00 2001 From: "Francisco Blas Izquierdo Riera (klondike)" Date: Sun, 3 Apr 2011 22:44:43 +0200 Subject: Fix bug in alsa driver (Portage version: 2.1.9.42/git/Linux x86_64, unsigned Manifest commit) --- media-sound/jack-audio-connection-kit/ChangeLog | 7 +- media-sound/jack-audio-connection-kit/Manifest | 23 +-- ...udio-connection-kit-fix-alsa-capture-only.patch | 201 +++++++++++++++++++++ .../jack-audio-connection-kit-0.118.0.ebuild | 3 +- 4 files changed, 212 insertions(+), 22 deletions(-) create mode 100644 media-sound/jack-audio-connection-kit/files/jack-audio-connection-kit-fix-alsa-capture-only.patch (limited to 'media-sound') diff --git a/media-sound/jack-audio-connection-kit/ChangeLog b/media-sound/jack-audio-connection-kit/ChangeLog index f3e1b7c..74271ee 100644 --- a/media-sound/jack-audio-connection-kit/ChangeLog +++ b/media-sound/jack-audio-connection-kit/ChangeLog @@ -1,7 +1,12 @@ # ChangeLog for media-sound/jack-audio-connection-kit -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/media-sound/jack-audio-connection-kit/ChangeLog,v 1.126 2010/06/12 17:15:24 aballier Exp $ + 03 Apr 2011; Francisco Blas Izquierdo Riera (klondike) + jack-audio-connection-kit-0.118.0.ebuild, + +files/jack-audio-connection-kit-fix-alsa-capture-only.patch: + Patch the alsa driver so it can support capture only + 12 Jun 2010; Alexis Ballier jack-audio-connection-kit-0.118.0.ebuild, +files/jack-audio-connection-kit-0.118.0-debug.patch: diff --git a/media-sound/jack-audio-connection-kit/Manifest b/media-sound/jack-audio-connection-kit/Manifest index 9819167..be562e5 100644 --- a/media-sound/jack-audio-connection-kit/Manifest +++ b/media-sound/jack-audio-connection-kit/Manifest @@ -1,24 +1,7 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -AUX jack-audio-connection-kit-0.103.0-ppc64fix.patch 2688 RMD160 f5e56bf524078be13f5b9114e1629c5bc4d2d0ac SHA1 bd4b823c54e06debec3b93b3bf850af06b69f045 SHA256 80e12c89348728ad9dc3022d00322b030102dbe7c5bd2b300a2b45dd696afb68 -AUX jack-audio-connection-kit-0.103.0-riceitdown.patch 1588 RMD160 9a4c86b480b580e16d407f88fc30b23fcd339efb SHA1 2e082c75e0927525f225e58e73f1a59811eb238c SHA256 4b26b1528cc9ec17bad3968af81ded11d378a5a2379a553f401c1ff2ec03a3c4 AUX jack-audio-connection-kit-0.118.0-debug.patch 617 RMD160 30a3509e33363439d60794dba9122418cea8297b SHA1 7f345432bcf42aefc5bf34db7d1a112b324a0571 SHA256 a9d5fee09a49656aa1377de2783cc4f47a4affcfe90fc1e9cae588fa260b6a95 +AUX jack-audio-connection-kit-fix-alsa-capture-only.patch 6123 RMD160 d21717bee505df94c675c15e80af742e54d9cc25 SHA1 d645efcf6cfd924da07456f0e760fd5330137b3c SHA256 8977b9054fe757a0c33a99cc37752ca3ee805ae8db8fd0cdc77072b11e3d8c23 AUX jack-audio-connection-kit-sparc-cpuinfo.patch 659 RMD160 b14b46eef7a70c91d8501b5766f69e718b67e842 SHA1 26a4c95457b6c987ddc616dabe33ecea69554673 SHA256 256d48109d32ce8af89042401508392fbb90c499d4cf8b056104dc1a47522fe5 -AUX jack-audio-connection-kit-transport.patch 309 RMD160 7b7130dd922ed14988eb591059d643ece39f6757 SHA1 ed8f9d90ec62476643f41ff60735d4aaaee84886 SHA256 74f1d155f365deb1461d070b37ccd7836c32c521d31960a3f4e6c3f2e528bada -DIST jack-audio-connection-kit-0.109.2.tar.gz 831141 RMD160 1e382cf6751b4df3d5d4ea75be7ee94adbc7746a SHA1 5a23c9817fb72858d5bc7b3077224575140b7f55 SHA256 27a7a70e5be0dbcdd98ee1a505399e006e06b4f58fcd3b8cd25763aa7e43bfd4 -DIST jack-audio-connection-kit-0.116.2.tar.gz 944106 RMD160 ffa9238b6083778b91dfa266524074bfa1592399 SHA1 178beb2d5ef906c029c1cdbe534f16445f342f0f SHA256 ce6e1f61a3b003137af56b749e5ed4274584167c0877ea9ef2d83f47b11c8d3d DIST jack-audio-connection-kit-0.118.0.tar.gz 992374 RMD160 cc3374ccb77d2e577d725531ac07d0ec4ac9ae7e SHA1 04715b3fd0a6e2bcaf10e5d02403dada980c34c1 SHA256 6aadf38ca98104772fd675bba7adecf72d2a600e17cccfc5d1f7c50f19b722c2 -DIST netjack-0.12.tar.bz2 28044 RMD160 13d13f2a66c891da243f9a286833554f680937ff SHA1 f850ed654d0f115065d96bee34d9f7c05e8c5725 SHA256 c443bcb6ec2b477c52cab2fca75aef80fe2c2c91499e45ffdbb1c28ffaa7ee60 -EBUILD jack-audio-connection-kit-0.109.2-r1.ebuild 3747 RMD160 18060514d4976090b00236fad9b2d6defaee7699 SHA1 f29fa8873cada676f5b87e56149e09f270f918f0 SHA256 edfd9ed32c0c58854b146c6a72eaab5434e57660c04a77ffe626a21b91425778 -EBUILD jack-audio-connection-kit-0.116.2.ebuild 1876 RMD160 0f1c428b140c9f195dfaffb29d2ca23188cd94c0 SHA1 20a7ea7e8f86fe9c270f20ec67bb9a51f43d1e4e SHA256 aacb65b7d32dd7d9a9b18fc694d42f79bd7dc6402d9dbcb806b10972aa49d2d8 -EBUILD jack-audio-connection-kit-0.118.0.ebuild 1914 RMD160 e3d236e9d3cba76cf91299648febaffa7c51334a SHA1 8b817899e9db226498bacaf539543ea991fe3875 SHA256 022b778f95d0bd3bc24d7deaf5641f164af5bc44bda07dd799dbca5599f8200a -MISC ChangeLog 24447 RMD160 9b674ebc1a19b83404f6323295fc9293a7c08437 SHA1 8a8f803b4e8ac7a6bcec079d87e82327cca1302f SHA256 06f4ca46576493f0903e8998be5b9e1410171c8a98ecfbb6a4cae8cb66b1727c +EBUILD jack-audio-connection-kit-0.118.0.ebuild 1970 RMD160 21ca04b7c423d102c364d353cb9c4e83646f2e2c SHA1 3f99c4eba2a61bd6a961369849503de1a80d2036 SHA256 c5759ea4b2db543fa368317eb883ce586151c5354bbda59743e949775abb6cd7 +MISC ChangeLog 24668 RMD160 0843f3e2cd3fc1738271593608cd8c0b105d9235 SHA1 64f80363a248e7b07342bd3410985ae29d66347f SHA256 25599d1e55700d989a193121c4b44d854bf0a6a966cfc38cf7b730b606bd2640 MISC metadata.xml 423 RMD160 6adb075f07c8fa999f472c9b74565cacd3f30ee8 SHA1 b972d137f4b16aadd0a6ee6c6eb3fb83a1a001b1 SHA256 fc69eb157777984f0b8118f8c3cebbc998df7d1e4378e76853bfe995be498f33 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.15 (GNU/Linux) - -iEYEARECAAYFAkwTwLIACgkQvFcC4BYPU0pTmwCeMLvocUPZu7YnCKlcA4EHqTwD -qVQAoJG40la5kJSYfjLdsUdF2BsmVkfA -=+sJN ------END PGP SIGNATURE----- diff --git a/media-sound/jack-audio-connection-kit/files/jack-audio-connection-kit-fix-alsa-capture-only.patch b/media-sound/jack-audio-connection-kit/files/jack-audio-connection-kit-fix-alsa-capture-only.patch new file mode 100644 index 0000000..ed88123 --- /dev/null +++ b/media-sound/jack-audio-connection-kit/files/jack-audio-connection-kit-fix-alsa-capture-only.patch @@ -0,0 +1,201 @@ +#Author: Josh Green +#Source: http://trac.jackaudio.org/changeset/3848 +#Issue: https://bugs.launchpad.net/ubuntu/+source/jack-audio-connection-kit/+bug/494223 + +Index: /jack2/trunk/jackmp/linux/alsa/JackAlsaDriver.cpp +=================================================================== +--- drivers/alsa/alsa_driver.c (revision 3580) ++++ drivers/alsa/alsa_driver.c (revision 3848) +@@ -264,66 +264,6 @@ + alsa_driver_setup_io_function_pointers (alsa_driver_t *driver) + { +- if (SND_PCM_FORMAT_FLOAT_LE == driver->playback_sample_format) { +- if (driver->playback_interleaved) { +- driver->channel_copy = memcpy_interleave_d32_s32; +- } else { +- driver->channel_copy = memcpy_fake; +- } +- driver->read_via_copy = sample_move_floatLE_sSs; +- driver->write_via_copy = sample_move_dS_floatLE; +- } else { +- +- switch (driver->playback_sample_bytes) { +- case 2: +- if (driver->playback_interleaved) { +- driver->channel_copy = memcpy_interleave_d16_s16; +- } else { +- driver->channel_copy = memcpy_fake; +- } +- +- switch (driver->dither) { +- case Rectangular: +- jack_info("Rectangular dithering at 16 bits"); +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_dither_rect_d16_sSs: +- sample_move_dither_rect_d16_sS; +- break; +- +- case Triangular: +- jack_info("Triangular dithering at 16 bits"); +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_dither_tri_d16_sSs: +- sample_move_dither_tri_d16_sS; +- break; +- +- case Shaped: +- jack_info("Noise-shaped dithering at 16 bits"); +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_dither_shaped_d16_sSs: +- sample_move_dither_shaped_d16_sS; +- break; +- +- default: +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_d16_sSs : +- sample_move_d16_sS; +- break; +- } +- break; +- +- case 3: /* NO DITHER */ +- if (driver->playback_interleaved) { +- driver->channel_copy = memcpy_interleave_d24_s24; +- } else { +- driver->channel_copy = memcpy_fake; +- } +- +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_d24_sSs: +- sample_move_d24_sS; +- +- break; +- +- case 4: /* NO DITHER */ ++ if (driver->playback_handle) { ++ if (SND_PCM_FORMAT_FLOAT_LE == driver->playback_sample_format) { + if (driver->playback_interleaved) { + driver->channel_copy = memcpy_interleave_d32_s32; +@@ -331,33 +271,97 @@ + driver->channel_copy = memcpy_fake; + } +- +- driver->write_via_copy = driver->quirk_bswap? +- sample_move_d32u24_sSs: +- sample_move_d32u24_sS; +- break; +- +- default: +- jack_error ("impossible sample width (%d) discovered!", +- driver->playback_sample_bytes); +- exit (1); ++ driver->read_via_copy = sample_move_floatLE_sSs; ++ driver->write_via_copy = sample_move_dS_floatLE; ++ } else { ++ ++ switch (driver->playback_sample_bytes) { ++ case 2: ++ if (driver->playback_interleaved) { ++ driver->channel_copy = memcpy_interleave_d16_s16; ++ } else { ++ driver->channel_copy = memcpy_fake; ++ } ++ ++ switch (driver->dither) { ++ case Rectangular: ++ jack_info("Rectangular dithering at 16 bits"); ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_dither_rect_d16_sSs: ++ sample_move_dither_rect_d16_sS; ++ break; ++ ++ case Triangular: ++ jack_info("Triangular dithering at 16 bits"); ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_dither_tri_d16_sSs: ++ sample_move_dither_tri_d16_sS; ++ break; ++ ++ case Shaped: ++ jack_info("Noise-shaped dithering at 16 bits"); ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_dither_shaped_d16_sSs: ++ sample_move_dither_shaped_d16_sS; ++ break; ++ ++ default: ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_d16_sSs : ++ sample_move_d16_sS; ++ break; ++ } ++ break; ++ ++ case 3: /* NO DITHER */ ++ if (driver->playback_interleaved) { ++ driver->channel_copy = memcpy_interleave_d24_s24; ++ } else { ++ driver->channel_copy = memcpy_fake; ++ } ++ ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_d24_sSs: ++ sample_move_d24_sS; ++ ++ break; ++ ++ case 4: /* NO DITHER */ ++ if (driver->playback_interleaved) { ++ driver->channel_copy = memcpy_interleave_d32_s32; ++ } else { ++ driver->channel_copy = memcpy_fake; ++ } ++ ++ driver->write_via_copy = driver->quirk_bswap? ++ sample_move_d32u24_sSs: ++ sample_move_d32u24_sS; ++ break; ++ ++ default: ++ jack_error ("impossible sample width (%d) discovered!", ++ driver->playback_sample_bytes); ++ exit (1); ++ } + } + } + +- switch (driver->capture_sample_bytes) { +- case 2: +- driver->read_via_copy = driver->quirk_bswap? +- sample_move_dS_s16s: +- sample_move_dS_s16; +- break; +- case 3: +- driver->read_via_copy = driver->quirk_bswap? +- sample_move_dS_s24s: +- sample_move_dS_s24; +- break; +- case 4: +- driver->read_via_copy = driver->quirk_bswap? +- sample_move_dS_s32u24s: +- sample_move_dS_s32u24; +- break; ++ if (driver->capture_handle) { ++ switch (driver->capture_sample_bytes) { ++ case 2: ++ driver->read_via_copy = driver->quirk_bswap? ++ sample_move_dS_s16s: ++ sample_move_dS_s16; ++ break; ++ case 3: ++ driver->read_via_copy = driver->quirk_bswap? ++ sample_move_dS_s24s: ++ sample_move_dS_s24; ++ break; ++ case 4: ++ driver->read_via_copy = driver->quirk_bswap? ++ sample_move_dS_s32u24s: ++ sample_move_dS_s32u24; ++ break; ++ } + } + } diff --git a/media-sound/jack-audio-connection-kit/jack-audio-connection-kit-0.118.0.ebuild b/media-sound/jack-audio-connection-kit/jack-audio-connection-kit-0.118.0.ebuild index 7327498..c4b3d0a 100644 --- a/media-sound/jack-audio-connection-kit/jack-audio-connection-kit-0.118.0.ebuild +++ b/media-sound/jack-audio-connection-kit/jack-audio-connection-kit-0.118.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2010 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/media-sound/jack-audio-connection-kit/jack-audio-connection-kit-0.118.0.ebuild,v 1.4 2010/06/12 17:15:24 aballier Exp $ @@ -27,6 +27,7 @@ src_unpack() { cd "${S}" epatch "${FILESDIR}/${PN}-sparc-cpuinfo.patch" epatch "${FILESDIR}/${P}-debug.patch" + epatch "${FILESDIR}/${PN}-fix-alsa-capture-only.patch" } src_compile() { -- cgit v1.2.3-65-gdbad