Comments (19)
looks like you've removed the requirement for this?
it also would be nice to hook up BinDeps support, esp. since both portaudio and libsndfile are already available via WinRPM
from audioio.jl.
which change are you referring to? I've got the issue up but windows support hasn't been a priority.
I was avoiding Windows support because of the custom C shim and multithreading gymnastics I was doing before, but now that those are gone it should be pretty easy.
I just added the WinRPM lines to REQUIRE and build.jl, though I had to guess at the package names. Is there a list of WinRPM packages online somewhere?
from audioio.jl.
Via email Aitor Ortiz de Latierro Olivella informed me that the packages are:
- "libportaudio2" (libportaudio2 (mingw64) - Portable Real-Time Audio Library)
- "libsndfile1" (libsndfile1 (mingw64) - A Library to Handle Various Audio File Formats)
I changed the names in the package script, hopefully that helps. If anyone can test on Windows please let me know.
from audioio.jl.
Now this message appears just after the "INFO: Complete" of the libportaudio2 installation.
===============================[ ERROR: AudioIO ]===============================
Provider PackageManager failed to satisfy dependency libportaudio
while loading C:\Users\Aitor.julia\v0.3\AudioIO\deps\build.jl, in expression st
arting on line 29
================================[ BUILD ERRORS ]================================
WARNING: AudioIO had build errors.
- packages with build errors remain installed in C:\Users\Aitor.julia\v0.3
- build a package and all its dependencies with
Pkg.build(pkg)
- build a single package by running its
deps/build.jl
script
from audioio.jl.
Hmm, what happens if you try to use AudioIO even though the build throws the error? Are you able to play sound?
from audioio.jl.
With just "using AudioIO":
ERROR: could not open file C:\Users\Aitor.julia\v0.3\AudioIO\src../deps/deps.j
l
in include at boot.jl:245
in include_from_node1 at loading.jl:128
in include at boot.jl:245
in include_from_node1 at loading.jl:128
in reload_path at loading.jl:152
in _require at loading.jl:67
in require at loading.jl:51
while loading C:\Users\Aitor.julia\v0.3\AudioIO\src\AudioIO.jl, in expression s
tarting on line 60
from audioio.jl.
I've manually installed "libsndfile1" and the error in the "using AudioIO" doesn't appear. (it is not installed in the build process because of the error)
Now I'm going to try play, I will update this comment with the results shortly. (10 min)
UPDATE: Every method like play, ArrayPlayer, SinOsc, read "is not defined" :(
UPDATE2: On the other hand methods like "AudioIO.open(wavFile)" work.
from audioio.jl.
Hi, sorry, I didn't see these updates because apparently GitHub doesn't sent notifications on updates, only new comments.
I'll see if I can get AudioIO up and running on a Windows machine myself so I can better debug. I'll comment back when I have some more info. Probably next week.
from audioio.jl.
Still getting the same error on my Windows 10 machine with Julia 0.3.11 when building AudioIO:
===============================[ ERROR: AudioIO ]===============================
Provider PackageManager failed to satisfy dependency libportaudio
while loading C:\Users\Wouter.julia\v0.3\AudioIO\deps\build.jl, in expression s
tarting on line 29
================================[ BUILD ERRORS ]================================
WARNING: AudioIO had build errors.
- packages with build errors remain installed in C:\Users\Wouter.julia\v0.3
- build the package(s) and all dependencies with
Pkg.build("AudioIO")
- build a single package by running its
deps/build.jl
script
from audioio.jl.
I've also been finding this error. Any guesses on what one should do?
from audioio.jl.
Are you running the release version or master? If you're not running the latest master try checking it out with Pkg.checkout("AudioIO")
. I fixed the package names to what hopefully are the correct ones, but that hasn't made it into a release yet because I haven't tested it.
from audioio.jl.
It seems that the RPM provider of libportaudio2 does not provide what AudioIO wants? Or is the build script in error somehow?
According to the RPM page at http://rpmfind.net//linux/RPM/opensuse/12.1/i586/portaudio-19-273.1.3.i586.html the RPM provides:
portaudio
libportaudio.so.2
portaudio(x86-32)
Is this what AudioIO needs? Or should a different RPM be used?
from audioio.jl.
Ah, here it is: for Windows to build, there have to be aliases. In build.jl the lines need to change to:
libportaudio = library_dependency("libportaudio", aliases=["libportaudio-2"])
libsndfile = library_dependency("libsndfile", aliases=["libsndfile-1"])
from audioio.jl.
Great! Thanks for that. Will test soon.
from audioio.jl.
Thanks for the windows help, @wherrera10. If this change is confirmed working than I'll merge in #50. (I don't think it should break anything on linux or osx and seems a strict improvement on windows).
Thanks!
Also, so you know, AudioIO.jl is going to be deprecated relatively soon and the functionality broken out into separate packages for audio file I/O, device I/O, and building DSP graphs. (see #48 with some more info) Changes like this will definitely make it into the new packages though, so it's definitely still helpful.
from audioio.jl.
Thanks. I have an interest in device IO with DSP.
I have recently patched portaudio.jl by adding functionality to use other
than the default stream. Is the portaudio side already undergoing a lot of
revision, so my added functions are not needed?
--Bill
On Tue, Nov 3, 2015 at 9:34 AM, Spencer Russell [email protected]
wrote:
Thanks for the windows help, @wherrera10 https://github.com/wherrera10.
If this change is confirmed working than I'll merge in #50
#50. (I don't think it should
break anything on linux or osx and seems a strict improvement on windows).Thanks!
Also, so you know, AudioIO.jl is going to be deprecated relatively soon
and the functionality broken out into separate packages for audio file I/O,
device I/O, and building DSP graphs. (see #48
#48 with some more info)
Changes like this will definitely make it into the new packages though, so
it's definitely still helpful.—
Reply to this email directly or view it on GitHub
#4 (comment).
from audioio.jl.
There is going to be a lot of revision on the PortAudio side, but it's hard to tell at this point what exactly will be preserved across the transition. Certainly being able to select non-default audio streams would be a great feature to carry over, so I'd welcome the PR.
from audioio.jl.
I was wresting with this error on win64 for a while. Strangely enough I had added the @windows_only directive and the library_dependency aliases which didn't do the trick for me. The recent @windows_only change in master and the two lines proposed by @wherrera10 work as expected.
from audioio.jl.
I wanted to offer some Windows DLLs for PortAudio that may be helpful. These are from the Python community, but I suspect these DLLs could work for Julia. Especially important to me is that these builds support WASAPI exclusive mode, and they use a recent version of PortAudio where WASAPI exclusive mode is working. Note that Python wheel files are ZIP format, so I use 7-Zip to extract DLLs from them.
These wheel files contain portaudio_x64.dll
(and whatever the name is for 32-bit) compiled with the Microsoft compiler:
http://www.lfd.uci.edu/~gohlke/pythonlibs/#sounddevice
The Microsoft compiler version used for each Python version is documented at https://wiki.python.org/moin/WindowsCompilers
These DLLs are built with GCC on Linux:
https://github.com/spatialaudio/portaudio-binaries/tree/19.6.0-windows
I have tested the above DLLs on 64-bit Python 3.5 with Windows 8.1.
from audioio.jl.
Related Issues (20)
- WARNING: libportaudio: Input overflowed HOT 4
- AudioIO should have a `versioninfo` method
- [PkgEval] AudioIO may have a testing issue on Julia 0.3 (2014-10-17) HOT 4
- Playing a file with a sample rate != 44100 does not work
- Use Wav.jl for opening .wav files HOT 4
- support writemime
- Support auto samplerate conversion
- design contract for buffers of AudioNode HOT 2
- Warning: libportaudio: Input overflowed HOT 7
- The play()-function is broken HOT 2
- SinOsc should take an initial phase HOT 2
- AudioIO uses deprecated Dict syntax
- Close audio stream when nothing is playing HOT 1
- Hook into FileIO `load` `save` mechanism
- Real Time audio recording examples missing HOT 5
- Coordinate various audio and DSP packages HOT 10
- PaStream as Ptr{Void} loses information about the data stream HOT 1
- Make Error in Fedora 23 HOT 1
- not working in Julia version 0.5.0-rc3+0 HOT 2
- Info about upcoming removal of packages in the General registry
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from audioio.jl.