Thread overview | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
April 28, 2015 D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
I found this: https://github.com/p0nce/dplug Which seems to be a good analysis library but I haven't found a library to play sounds. Is there one? |
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gan | On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote: > I found this: https://github.com/p0nce/dplug > > Which seems to be a good analysis library but I haven't found a library to play sounds. > Is there one? https://github.com/D-Programming-Deimos/portaudio |
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Dragos Carp | On Tuesday, 28 April 2015 at 11:28:42 UTC, Dragos Carp wrote:
> On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote:
>> I found this: https://github.com/p0nce/dplug
>>
>> Which seems to be a good analysis library but I haven't found a library to play sounds.
>> Is there one?
>
> https://github.com/D-Programming-Deimos/portaudio
Downloaded it, put the D example in a source folder, downloaded the official library, compiled the official library, stuck the libportaudio.la with the example, ran DUB and it can't the port audio library.
Undefined symbols for architecture x86_64:
"_Pa_CloseStream", referenced from:
__Dmain in unknown.o
The source is 3 years old, probably why no dub.json file. Know how to fix the library problem?
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gan | On Tuesday, 28 April 2015 at 13:43:02 UTC, Gan wrote:
> On Tuesday, 28 April 2015 at 11:28:42 UTC, Dragos Carp wrote:
>> On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote:
>>> I found this: https://github.com/p0nce/dplug
>>>
>>> Which seems to be a good analysis library but I haven't found a library to play sounds.
>>> Is there one?
>>
>> https://github.com/D-Programming-Deimos/portaudio
>
> Downloaded it, put the D example in a source folder, downloaded the official library, compiled the official library, stuck the libportaudio.la with the example, ran DUB and it can't the port audio library.
> Undefined symbols for architecture x86_64:
> "_Pa_CloseStream", referenced from:
> __Dmain in unknown.o
>
> The source is 3 years old, probably why no dub.json file. Know how to fix the library problem?
What does dub -v show?
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gan | On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote:
> I found this: https://github.com/p0nce/dplug
>
> Which seems to be a good analysis library but I haven't found a library to play sounds.
> Is there one?
SDL2 can through DerelictSDL2 (use the mixer extension for easier playback).
D-SFML can probably too.
Out of Topic: we need what ae.utils.graphics does for images, but for sound! A good abstraction for audio data and processors would be welcome.
Vanilla ranges do not cut it since it would need the additional concept of:
- clearing the state (setting delaylines to 0)
- separate channels that can be stored interleaved or not. Samples would be indexed by time and channel index. I feel like samplerate can be left out of the equation, it will almost always be a runtime value.
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to ponce | On Tuesday, 28 April 2015 at 15:00:18 UTC, ponce wrote:
> - clearing the state (setting delaylines to 0)
> - separate channels that can be stored interleaved or not. Samples would be indexed by time and channel index. I feel like samplerate can be left out of the equation, it will almost always be a runtime value.
- and more importantly, batch processing instead of sample per
sample like I do now in dplug
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to ponce | On Tuesday, 28 April 2015 at 15:01:23 UTC, ponce wrote:
> On Tuesday, 28 April 2015 at 15:00:18 UTC, ponce wrote:
>> - clearing the state (setting delaylines to 0)
>> - separate channels that can be stored interleaved or not. Samples would be indexed by time and channel index. I feel like samplerate can be left out of the equation, it will almost always be a runtime value.
>
> - and more importantly, batch processing instead of sample per
> sample like I do now in dplug
in d plug sample by sample processing is justified because of the z-transform, while in video games you just basically play some wavetables.
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to ponce | On 29/04/2015 3:00 a.m., ponce wrote:
> On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote:
>> I found this: https://github.com/p0nce/dplug
>>
>> Which seems to be a good analysis library but I haven't found a
>> library to play sounds.
>> Is there one?
>
> SDL2 can through DerelictSDL2 (use the mixer extension for easier
> playback).
> D-SFML can probably too.
>
>
> Out of Topic: we need what ae.utils.graphics does for images, but for
> sound! A good abstraction for audio data and processors would be welcome.
> Vanilla ranges do not cut it since it would need the additional concept of:
>
> - clearing the state (setting delaylines to 0)
> - separate channels that can be stored interleaved or not. Samples would
> be indexed by time and channel index. I feel like samplerate can be left
> out of the equation, it will almost always be a runtime value.
I've seriously considered in the past to implement a library just like Devisualization.Window but for sound. Unfortunately my knowledge of sound/music isn't good enough to do so.
|
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rikki Cattermole | idk if it would be useful at all, I'm not even happy with it myself yet, but I am writing a simpleaudio.d https://github.com/adamdruppe/arsd/blob/master/simpleaudio.d it is meant to do waveform i/o and MIDI, but I'm not happy with my first draft of the api so it is probably going to change.... eventually. Currently works on Windows (winMM) and Linux (ALSA). |
April 28, 2015 Re: D audio playing and analysis library? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gan | On Tuesday, 28 April 2015 at 13:43:02 UTC, Gan wrote:
> On Tuesday, 28 April 2015 at 11:28:42 UTC, Dragos Carp wrote:
>> On Tuesday, 28 April 2015 at 11:18:14 UTC, Gan wrote:
>>> I found this: https://github.com/p0nce/dplug
>>>
>>> Which seems to be a good analysis library but I haven't found a library to play sounds.
>>> Is there one?
>>
>> https://github.com/D-Programming-Deimos/portaudio
>
> Downloaded it, put the D example in a source folder, downloaded the official library, compiled the official library, stuck the libportaudio.la with the example, ran DUB and it can't the port audio library.
> Undefined symbols for architecture x86_64:
> "_Pa_CloseStream", referenced from:
> __Dmain in unknown.o
>
> The source is 3 years old, probably why no dub.json file. Know how to fix the library problem?
It should work, I'm using it a lot. I use libportaudio.a, make sure you reference deimos/portaudio.di or have it in your `source` folder. Here's an excerpt from my dub.json (you might have to include other libs too):
"libs": [
"portaudio",
"asound",
"jack",
"sndfile",
"FLAC",
"vorbisenc",
"vorbis",
"ogg"
],
Also, compile or download the portaudio lib for x86_64, if you're on 64bit. Alternatively, compile your code with -m32.
BTW, did you pass the library to the compiler and linker?
|
Copyright © 1999-2021 by the D Language Foundation