John Emmas | 21 Mar 11:49 2015
Picon

Building Portaudio with MSVC

Hi guys,

I just downloaded 'pa_stable_v19_20140130' and I'm trying to build it 
using Visual Studio 2005 (MSVC 8).  I've built many previous versions of 
portaudio so I'm not a newbie.

I'm hitting a problem with this particular source file:- 
'hostapi/wdmks/pa_win_wdmks.c'.  It's always built successfully for me 
in the past but when I try to build this latest version, MSVC gives me 
lots of errors looking like this:-

     error C2065: 'KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION' : 
undeclared identifier
     error C2065: 'KSRTAUDIO_BUFFER' : undeclared identifier
     error C2065: 'KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION' : 
undeclared identifier

A note in the relevant source file states that "Windows SDK 6.0A or 
later is needed.  What exactly is this referring to?  MSVC 6.0? / some 
MSVC service pack? / some Platform SDK version? / or something else?  
Thanks,

John
吕国锋 | 12 Mar 03:22 2015
Picon

I Really Really want Portaudio can read audio data output from sound card on Windows.

I find a mail archives about it:http://music.columbia.edu/pipermail/portaudio/2012-August/014328.html
. And On Stackoverflow:http://stackoverflow.com/questions/14333752/how-to-use-portaudio-to-read-audio-data-output-from-sound-card,it refer to "Someone recently submitted a patch that allows this to be done on one of the windows APIs".Who submitted it? Or Who knows it?Can Telll ME? 
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Drasko DRASKOVIC | 9 Mar 22:27 2015
Picon

Capturing All System Sound on Windows - WASAPI

HI all,
is it possible to use Port Audio to capture all system sound on
Windows and re-direct it to some application which will stream it out
on the network (for example using gstreamer)?

Best regards,
Drasko
g4 | 3 Mar 18:37 2015

WASAPI bug?

Hi All,

 

I‘ve come across a couple of possibly unexplored oddities in the WASAPI layer. Specifically:

 

For devices with input channel counts of <= 8, the layer is automatically setting a channel mask flag, even if the application has cleared paWinWasapiUseChannelMask. This means that Windows may fail to match if the device itself has a channel mask of 0*. (MakeWaveFormatFromParams in pa_win_wasapi.c)

 

Second thing is rare. With a device that provides 48 channels* any exclusive mode requests will drop back to shared mode using polling (rather than event callbacks) as the calculated latency exceeds the hard-coded limit. (CreateAudioClient in pa_win_wasapi.c)

 

Not quite sure if this worth patches? Is there a github repo so I can send a pull request?

 

Thanks

 

Jerry.

 

*Discovered whilst debugging USB firmware/hardware – clarified by Matthew van Erde in the wdmaudiodev list

**Unlikely to occur in real life I know but saidUSB interface that could supply large numbers of inputs

 

_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Picon

Pa_GetStreamHostApiType

Good day,

I'm trying to package Audacity for GNU Guix.

It seems that Audacity rejects a system-provided PortAudio v19 during
./configure because it can't find the function Pa_GetStreamHostApiType,
whereas the PortAudio v19 which Audacity ships in its own tarball has
that function.

I searched around and couldn't find much information on this other than
other people having hit the same issue.  What's the story behind the
function?  Why is it in Audacity's PortAudio v19 but not the latest
PortAudio v19 release?

Thanks in advance,
Taylan
Phil Burk | 1 Mar 03:03 2015

adding major.minor.subminor version support

I would like to try again to add version tracking to PortAudio.

We have had lengthy discussions on this in the past:


I posted an old diff in a branch. But unfortunately we are not able to do merge requests in Assembla because of the way our repo is organized.


So I incorporated the code and comments from that page regarding the version naming and made a patch. See attached.

I would like some feedback on what the next version number needs to be. I put 20.0.0 in this CL. 
We have release 4 V19 snapshots so we should not go below 19.5.0.


Phil Burk
Attachment (version20.patch): application/octet-stream, 4113 bytes
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Brian Whitman | 28 Feb 18:11 2015

non-power-of-2 number of channels on multi-channel audio interface

Hi, on OS X 10.10.2, Portaudio SVN trunk from an hour ago (but also V19-devel) I can't seem to make a stream write to an non-power-of-2 number of channels in Portaudio to a MOTU 828x, it just hangs at the Pa_WriteStream. Here's an example, hacked version of paex_write_sine that sets the deviceID of the MOTU manually and writes a sine tone to each channel.


If I set CHANNELS to 16 or 8 or 4 or 2 everything works fine. Any other number hangs.

Use case here is I need to write to the ADAT channels, which start at channel 15, so I only have access to one of them in PortAudio by setting CHANNELS to 16. I can't set CHANNELS to 32 because the device only reports 30 outputs would fail on init.

The device works fine otherwise, all channels individually accessible through other CoreAudio software.

Any ideas?



_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Evan Balster | 16 Feb 19:58 2015
Picon

Rev. 1919: WDM-KS initialization hangs on certain hardware

Hey, all --

Apologies if this is something that has already been addressed in the nightlies, but it seems to be relatively rare and I'm in a position to collect information on the problem.

I have a small handful of Windows users of my app imitone reporting an application freeze on startup.  (My app reports one of these when taking longer than 7-10 seconds to start up.)  With the help of some deployable instrumentation I've tracked it down to PaInitialize, and had the idea to supply the afflicted users with an alternate PortAudio DLL which doesn't include WDM-KS.  This appears to fix the problem, as can updates to audio drivers.  All this seems to suggest the problem arises when interfacing via WDMKS with buggy audio drivers...  Suspicious devices include a Motoo bluetooth headset and a cheap webcam.

I'm curious how I can help with the problem.  I have a few users who might be persuaded to run test code 

--

I've had this message in my outbox for ages, and revisited it today because now I have the problem myself.  Mysteriously, removing WDM-KS doesn't help in my case.  I've had issues with my audio drivers before on this machine (which have affected other apps) but I suppose I'm curious whether there's a way for PA to fail more gracefully in these circumstances.

Regards,
Evan
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Ritesh Banka | 12 Feb 23:16 2015
Picon

How to send data only to channel number X

Hi,
I have a sound card which has 4 output channels and I want to send data to only channel number 4. I don't find any option in portaudio to specify the channel number. Currently, what I am doing is setting the number of channels in outputparameters to 4 but silence the first 3 channels when sending data to writestream. 

Is there a way to send data to only channel number 4?

Thanks,
Ritesh

--
Ritesh
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
Ritesh Banka | 12 Feb 00:34 2015
Picon

Question regarding interleaved samples and writestream

I am working on a Port Audio application and having some issue understanding the writedata command which is a blocking I/O method.

I want to output a sine wave for 2 seconds on my 2 channel headphones, so I create a buffer with sine wave values. Below is snippet of my code:


#define NUM_SECONDS (2) #define SAMPLE_RATE (44100) #define FRAMES_PER_BUFFER (256) #define INTERVAL (NUM_SECONDS*SAMPLE_RATE/FRAMES_PER_BUFFER) float writeData[INTERVAL][FRAMES_PER_BUFFER]; // bufferfor storing sine values // store sine values in the buffer for(j=0;j<INTERVAL;j++) { //I am creating an interleaved array as this is a stereo output for( i=0; i<FRAMES_PER_BUFFER/2; i++ ) { i *= 2; //left channel writeData[j][i] = (float) sin( ((double)i/((double)FRAMES_PER_BUFFER)/2) * M_PI * 2. ); k=i+1; //write left channel value to right channel writeData[j][k] = writeData[j][i]; } } // code to put sine values to writestream for( i=0; i<INTERVAL; i++ ){ err=Pa_WriteStream(stream,writeData[i],FRAMES_PER_BUFFER); }

The above code works fine and it plays the sound for 2 seconds on my output device on both the channels. My question is the number of samples that I send to writestream = NUM_SECONDS * SAMPLE_RATE = 88200. but these are for 2 channels, so 44100 for 1 channel. Shouldn't the sound just play for 1 sec and not 2 secs?

--
Ritesh
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio
stephane.poirier | 1 Feb 13:57 2015

running portaudio examples on linux with jack

Hi All,

Just started to develop under linux.

Compiled portaudio examples and would like to run them using jack,
can't we just specify hostapi jack and so on?

Steph
_______________________________________________
Portaudio mailing list
Portaudio <at> music.columbia.edu
http://music.columbia.edu/mailman/listinfo/portaudio

Gmane