[Pkg-voip-commits] [portaudio19] 61/114: Add audacity-portmixer.patch for adding features needed to make portmixer work with audacity.
Benjamin Drung
bdrung at moszumanska.debian.org
Sun Dec 25 20:05:36 UTC 2016
This is an automated email from the git hooks/post-receive script.
bdrung pushed a commit to branch master
in repository portaudio19.
commit ea057e75061868c5f0f9bdf7851e7410d4e13326
Author: Benjamin Drung <bdrung at debian.org>
Date: Sun Feb 21 22:26:36 2010 +0000
Add audacity-portmixer.patch for adding features needed to make portmixer
work with audacity.
---
debian/changelog | 4 +-
debian/patches/audacity-portmixer.patch | 312 ++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
3 files changed, 316 insertions(+), 1 deletion(-)
diff --git a/debian/changelog b/debian/changelog
index 56308c4..ef6a61d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -14,8 +14,10 @@ portaudio19 (19+svn20100220-1) UNRELEASED; urgency=low
* Update debian/copyright.
* Drop dpatch and switch to dpkg-source 3.0 (quilt) format.
* Replace 01_config.dpatch by config.patch.
+ * Add audacity-portmixer.patch for adding features needed to make portmixer
+ work with audacity.
- -- Benjamin Drung <bdrung at ubuntu.com> Sun, 21 Feb 2010 22:39:20 +0100
+ -- Benjamin Drung <bdrung at ubuntu.com> Sun, 21 Feb 2010 23:25:37 +0100
portaudio19 (19+svn20071022-3) unstable; urgency=low
diff --git a/debian/patches/audacity-portmixer.patch b/debian/patches/audacity-portmixer.patch
new file mode 100644
index 0000000..440608b
--- /dev/null
+++ b/debian/patches/audacity-portmixer.patch
@@ -0,0 +1,312 @@
+Description: Add features needed to make portmixer work with audacity.
+Author: Audacity Team
+Last-Update: 2010-02-21
+
+--- portaudio19-19+svn20100220.orig/include/pa_win_ds.h
++++ portaudio19-19+svn20100220/include/pa_win_ds.h
+@@ -92,6 +92,21 @@ typedef struct PaWinDirectSoundStreamInf
+
+ }PaWinDirectSoundStreamInfo;
+
++/** Retrieve the GUID of the input device.
++
++ @param stream The stream to query.
++
++ @return A pointer to the GUID, or NULL if none.
++*/
++LPGUID PaWinDS_GetStreamInputGUID( PaStream* s );
++
++/** Retrieve the GUID of the output device.
++
++ @param stream The stream to query.
++
++ @return A pointer to the GUID, or NULL if none.
++*/
++LPGUID PaWinDS_GetStreamOutputGUID( PaStream* s );
+
+
+ #ifdef __cplusplus
+--- portaudio19-19+svn20100220.orig/include/portaudio.h
++++ portaudio19-19+svn20100220/include/portaudio.h
+@@ -1106,6 +1106,15 @@ signed long Pa_GetStreamReadAvailable( P
+ signed long Pa_GetStreamWriteAvailable( PaStream* stream );
+
+
++/** Retrieve the host type handling an open stream.
++
++ @return Returns a non-negative value representing the host API type
++ handling an open stream or, a PaErrorCode (which are always negative)
++ if PortAudio is not initialized or an error is encountered.
++*/
++PaHostApiTypeId Pa_GetStreamHostApiType( PaStream* stream );
++
++
+ /* Miscellaneous utilities */
+
+
+--- /dev/null
++++ portaudio19-19+svn20100220/include/pa_unix_oss.h
+@@ -0,0 +1,104 @@
++#ifndef PA_UNIX_OSS_H
++#define PA_UNIX_OSS_H
++
++/*
++ * $Id: portaudio.patch,v 1.10 2009-06-30 04:52:59 llucius Exp $
++ * PortAudio Portable Real-Time Audio Library
++ * OSS-specific extensions
++ *
++ * Copyright (c) 1999-2000 Ross Bencina and Phil Burk
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files
++ * (the "Software"), to deal in the Software without restriction,
++ * including without limitation the rights to use, copy, modify, merge,
++ * publish, distribute, sublicense, and/or sell copies of the Software,
++ * and to permit persons to whom the Software is furnished to do so,
++ * subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * Any person wishing to distribute modifications to the Software is
++ * requested to send the modifications to the original developer so that
++ * they can be incorporated into the canonical version.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
++ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
++ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
++ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ */
++
++/** @file
++ * OSS-specific PortAudio API extension header file.
++ */
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++const char *PaOSS_GetStreamInputDevice( PaStream *s );
++
++const char *PaOSS_GetStreamOutputDevice( PaStream *s );
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif
++#ifndef PA_UNIX_OSS_H
++#define PA_UNIX_OSS_H
++
++/*
++ * $Id: portaudio.patch,v 1.10 2009-06-30 04:52:59 llucius Exp $
++ * PortAudio Portable Real-Time Audio Library
++ * OSS-specific extensions
++ *
++ * Copyright (c) 1999-2000 Ross Bencina and Phil Burk
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files
++ * (the "Software"), to deal in the Software without restriction,
++ * including without limitation the rights to use, copy, modify, merge,
++ * publish, distribute, sublicense, and/or sell copies of the Software,
++ * and to permit persons to whom the Software is furnished to do so,
++ * subject to the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * Any person wishing to distribute modifications to the Software is
++ * requested to send the modifications to the original developer so that
++ * they can be incorporated into the canonical version.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
++ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
++ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
++ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ *
++ */
++
++/** @file
++ * OSS-specific PortAudio API extension header file.
++ */
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++const char *PaOSS_GetStreamInputDevice( PaStream *s );
++
++const char *PaOSS_GetStreamOutputDevice( PaStream *s );
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif
+--- portaudio19-19+svn20100220.orig/src/common/pa_front.c
++++ portaudio19-19+svn20100220/src/common/pa_front.c
+@@ -1211,8 +1211,10 @@ PaError Pa_OpenStream( PaStream** stream
+ hostApiInputParametersPtr, hostApiOutputParametersPtr,
+ sampleRate, framesPerBuffer, streamFlags, streamCallback, userData );
+
+- if( result == paNoError )
++ if( result == paNoError ) {
+ AddOpenStream( *stream );
++ PA_STREAM_REP(*stream)->hostApiType = hostApi->info.type;
++ }
+
+
+ PA_LOGAPI(("Pa_OpenStream returned:\n" ));
+@@ -1724,6 +1726,32 @@ signed long Pa_GetStreamWriteAvailable(
+ return result;
+ }
+
++PaHostApiTypeId Pa_GetStreamHostApiType( PaStream* stream )
++{
++ PaError error = PaUtil_ValidateStreamPointer( stream );
++ PaHostApiTypeId result;
++
++#ifdef PA_LOG_API_CALLS
++ PaUtil_DebugPrint("Pa_GetStreamHostApiType called:\n" );
++ PaUtil_DebugPrint("\tPaStream* stream: 0x%p\n", stream );
++#endif
++
++ if( error == paNoError )
++ {
++ result = PA_STREAM_REP(stream)->hostApiType;
++ }
++ else
++ {
++ result = (PaHostApiTypeId) error;
++ }
++
++#ifdef PA_LOG_API_CALLS
++ PaUtil_DebugPrint("Pa_GetStreamHostApiType returned:\n" );
++ PaUtil_DebugPrint("\tPaError: %d ( %s )\n\n", result, Pa_GetErrorText( result ) );
++#endif
++
++ return result;
++}
+
+ PaError Pa_GetSampleSize( PaSampleFormat format )
+ {
+--- portaudio19-19+svn20100220.orig/src/common/pa_stream.c
++++ portaudio19-19+svn20100220/src/common/pa_stream.c
+@@ -93,6 +93,8 @@ void PaUtil_InitializeStreamRepresentati
+ streamRepresentation->streamInfo.inputLatency = 0.;
+ streamRepresentation->streamInfo.outputLatency = 0.;
+ streamRepresentation->streamInfo.sampleRate = 0.;
++
++ streamRepresentation->hostApiType = 0;
+ }
+
+
+--- portaudio19-19+svn20100220.orig/src/common/pa_stream.h
++++ portaudio19-19+svn20100220/src/common/pa_stream.h
+@@ -152,6 +152,7 @@ typedef struct PaUtilStreamRepresentatio
+ PaStreamFinishedCallback *streamFinishedCallback;
+ void *userData;
+ PaStreamInfo streamInfo;
++ PaHostApiTypeId hostApiType;
+ } PaUtilStreamRepresentation;
+
+
+--- portaudio19-19+svn20100220.orig/src/hostapi/coreaudio/pa_mac_core_blocking.c
++++ portaudio19-19+svn20100220/src/hostapi/coreaudio/pa_mac_core_blocking.c
+@@ -66,6 +66,9 @@
+ #ifdef MOSX_USE_NON_ATOMIC_FLAG_BITS
+ # define OSAtomicOr32( a, b ) ( (*(b)) |= (a) )
+ # define OSAtomicAnd32( a, b ) ( (*(b)) &= (a) )
++#elif MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_3
++# define OSAtomicOr32( a, b ) BitOrAtomic( a, (UInt32 *) b )
++# define OSAtomicAnd32( a, b ) BitAndAtomic( a, (UInt32 *) b )
+ #else
+ # include <libkern/OSAtomic.h>
+ #endif
+--- portaudio19-19+svn20100220.orig/src/hostapi/alsa/pa_linux_alsa.c
++++ portaudio19-19+svn20100220/src/hostapi/alsa/pa_linux_alsa.c
+@@ -134,6 +134,7 @@ typedef struct
+ StreamDirection streamDir;
+
+ snd_pcm_channel_area_t *channelAreas; /* Needed for channel adaption */
++ int card;
+ } PaAlsaStreamComponent;
+
+ /* Implementation specific stream structure */
+@@ -1161,6 +1162,7 @@ static PaError PaAlsaStreamComponent_Ini
+ {
+ PaError result = paNoError;
+ PaSampleFormat userSampleFormat = params->sampleFormat, hostSampleFormat;
++ snd_pcm_info_t* pcmInfo;
+ assert( params->channelCount > 0 );
+
+ /* Make sure things have an initial value */
+@@ -1181,6 +1183,9 @@ static PaError PaAlsaStreamComponent_Ini
+ self->device = params->device;
+
+ PA_ENSURE( AlsaOpen( &alsaApi->baseHostApiRep, params, streamDir, &self->pcm ) );
++
++ snd_pcm_info_alloca( &pcmInfo );
++ self->card = snd_pcm_info_get_card( pcmInfo );
+ self->nfds = snd_pcm_poll_descriptors_count( self->pcm );
+ hostSampleFormat = PaUtil_SelectClosestAvailableFormat( GetAvailableFormats( self->pcm ), userSampleFormat );
+
+@@ -3646,9 +3651,7 @@ PaError PaAlsa_GetStreamInputCard(PaStre
+ /* XXX: More descriptive error? */
+ PA_UNLESS( stream->capture.pcm, paDeviceUnavailable );
+
+- snd_pcm_info_alloca( &pcmInfo );
+- PA_ENSURE( snd_pcm_info( stream->capture.pcm, pcmInfo ) );
+- *card = snd_pcm_info_get_card( pcmInfo );
++ *card = stream->capture.card;
+
+ error:
+ return result;
+@@ -3664,9 +3667,7 @@ PaError PaAlsa_GetStreamOutputCard(PaStr
+ /* XXX: More descriptive error? */
+ PA_UNLESS( stream->playback.pcm, paDeviceUnavailable );
+
+- snd_pcm_info_alloca( &pcmInfo );
+- PA_ENSURE( snd_pcm_info( stream->playback.pcm, pcmInfo ) );
+- *card = snd_pcm_info_get_card( pcmInfo );
++ *card = stream->playback.card;
+
+ error:
+ return result;
+--- portaudio19-19+svn20100220.orig/src/hostapi/oss/pa_unix_oss.c
++++ portaudio19-19+svn20100220/src/hostapi/oss/pa_unix_oss.c
+@@ -1989,3 +1989,26 @@ error:
+ #endif
+ }
+
++const char *PaOSS_GetStreamInputDevice( PaStream* s )
++{
++ PaOssStream *stream = (PaOssStream*)s;
++
++ if( stream->capture )
++ {
++ return stream->capture->devName;
++ }
++
++ return NULL;
++}
++
++const char *PaOSS_GetStreamOutputDevice( PaStream* s )
++{
++ PaOssStream *stream = (PaOssStream*)s;
++
++ if( stream->playback )
++ {
++ return stream->playback->devName;
++ }
++
++ return NULL;
++}
diff --git a/debian/patches/series b/debian/patches/series
index 4462183..5841944 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
config.patch
+audacity-portmixer.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-voip/portaudio19.git
More information about the Pkg-voip-commits
mailing list