Mumble OSS implementation performs device enumeration only when SOUND_VERSION is at least 0x040002, but OSS in FreeBSD base defines it as 0x040000. So only default input and output devices are available. However, the actual code seems to be almost adequate for device enumeration in FreeBSD, the only caveat being that oss_audioinfo::handle is empty, but oss_audioinfo::name is a good enough unique identifier. The attached patch removes SOUND_VERSION test and uses oss_audioinfo::name instead of oss_audioinfo::handle. I have been using it for about 1.5 years now, first on 8.2-RELEASE then on 9.1-RELEASE, both on amd64, without noticing any side-effect. However I don't know whether it's portable enough and/or clean enough to make it to the ports tree. Fix: Copy the attached patch as audio/mumble/files/patch-src-mumble-OSS.cpp Patch attached with submission follows: How-To-Repeat: - Start mumble - Select preferences or audio wizard -> notice that input or output device selection is grayed out, leaving you no option other than "Default OSS device"
Hello, on Wednesday 07 August 2013 at 08:10, FreeBSD-gnats-submit@FreeBSD.org wrote: > >Category: misc The category is actually ports, I must have misclicked on the combobox. Sorry for the inconvenience /o\
Responsible Changed From-To: freebsd-bugs->freebsd-ports-bugs ports PR.
State Changed From-To: open->feedback Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Maintainer of audio/mumble, Please note that PR ports/181104 has just been submitted. If it contains a patch for an upgrade, an enhancement or a bug fix you agree on, reply to this email stating that you approve the patch and a committer will take care of it. The full text of the PR can be found at: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/181104 -- Edwin Groothuis via the GNATS Auto Assign Tool edwin@FreeBSD.org
Responsible Changed From-To: freebsd-ports-bugs->feld I'll take it.
Author: feld Date: Sun Nov 17 23:07:02 2013 New Revision: 334131 URL: http://svnweb.freebsd.org/changeset/ports/334131 Log: Take maintainership Add patch that allows audio device selection with FreeBSD's OSS PR: ports/181104 Submitted by: Natacha Porte Approved by: swills (mentor) Added: head/audio/mumble/files/patch-src-mumble-OSS.cpp (contents, props changed) Modified: head/audio/mumble/Makefile Modified: head/audio/mumble/Makefile ============================================================================== --- head/audio/mumble/Makefile Sun Nov 17 22:16:16 2013 (r334130) +++ head/audio/mumble/Makefile Sun Nov 17 23:07:02 2013 (r334131) @@ -3,11 +3,11 @@ PORTNAME= mumble PORTVERSION= 1.2.4 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= audio MASTER_SITES= SF/${PORTNAME}/Mumble/${PORTVERSION} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= feld@FreeBSD.org COMMENT= A voice chat software primarily intended for use while gaming LIB_DEPENDS+= libspeex.so:${PORTSDIR}/audio/speex \ Added: head/audio/mumble/files/patch-src-mumble-OSS.cpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/audio/mumble/files/patch-src-mumble-OSS.cpp Sun Nov 17 23:07:02 2013 (r334131) @@ -0,0 +1,30 @@ +--- src/mumble/OSS.cpp.orig 2013-08-03 14:01:25.000000000 +0200 ++++ src/mumble/OSS.cpp 2013-08-03 14:12:51.000000000 +0200 +@@ -153,7 +153,6 @@ + qhOutput.insert(QString(), QLatin1String("Default OSS Device")); + qhDevices.insert(QString(), QLatin1String("/dev/dsp")); + +-#if (SOUND_VERSION >= 0x040002) + int mixerfd = open("/dev/mixer", O_RDWR, 0); + if (mixerfd == -1) { + qWarning("OSSEnumerator: Failed to open /dev/mixer"); +@@ -182,15 +181,14 @@ + if (ainfo.caps & PCM_CAP_HIDDEN) + continue; + +- qhDevices.insert(handle, device); ++ qhDevices.insert(name, device); + + if (ainfo.caps & PCM_CAP_INPUT) +- qhInput.insert(handle, name); ++ qhInput.insert(name, name); + if (ainfo.caps & PCM_CAP_OUTPUT) +- qhOutput.insert(handle, name); ++ qhOutput.insert(name, name); + } + close(mixerfd); +-#endif + } + + OSSInput::OSSInput() { + _______________________________________________ svn-ports-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-ports-all To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
State Changed From-To: feedback->closed Committed. Thanks!