66 lines
2.2 KiB
Plaintext
66 lines
2.2 KiB
Plaintext
/**
|
|
@page java_binding JPortAudio Java Binding
|
|
@ingroup jportaudio
|
|
|
|
<i>Note: this page has not been reviewed, and may contain errors.</i>
|
|
|
|
@section java_draft DRAFT - IN PROGRESS
|
|
|
|
9/4/12 JPortAudio is very new and should be considered an "alpha" release.
|
|
The building of JPortAudio will eventually be integrated into the Makefile as an optional build.
|
|
|
|
Currently JPortAudio is only supported for Windows and Macintosh. Please contact us if you want to help with porting Linux.
|
|
|
|
For reference documentation of the JPortAudio API see: com.portaudio.PortAudio
|
|
|
|
For an example see: PlaySine.java
|
|
|
|
@section java_comp_windows Building JPortAudio on Windows
|
|
|
|
Build the Java code using the Eclipse project in "jportaudio". Export as "jportaudio.jar".
|
|
|
|
If you modify the JNI API then you will need to regenerate the JNI .h files using:
|
|
|
|
@code
|
|
cd bindings/java/scripts
|
|
make_header.bat
|
|
@endcode
|
|
|
|
Build the JNI DLL using the Visual Studio 2010 solution in "java/c/build/vs2010/PortAudioJNI".
|
|
|
|
@section java_use_windows Using JPortAudio on Windows
|
|
|
|
Put the "jportaudio.jar" in the classpath for your application.
|
|
Place the following libraries where they can be found, typically in the same folder as your application.
|
|
|
|
- portaudio_x86.dll
|
|
- portaudio_x64.dll
|
|
- jportaudio_x86.dll
|
|
- jportaudio_x64.dll
|
|
|
|
@section java_comp_max Building JPortAudio on Mac
|
|
|
|
These are notes from building JPortAudio on a Mac with 10.6.8 and XCode 4.
|
|
|
|
I created a target of type 'C' library.
|
|
|
|
I added the regular PortAudio frameworks plus the JavaVM framework.
|
|
|
|
I modified com_portaudio_PortAudio.h and com_portaudio_BlockingStream.h so that jni.h could found.
|
|
|
|
@code
|
|
#if defined(__APPLE__)
|
|
#include <JavaVM/jni.h>
|
|
#else
|
|
#include <jni.h>
|
|
#endif
|
|
@endcode
|
|
|
|
This is bad because those header files are autogenerated and will be overwritten.
|
|
We need a better solution for this.
|
|
|
|
I had trouble finding the "libjportaudio.jnilib". So I added a Build Phase that copied the library to "/Users/phil/Library/Java/Extensions".
|
|
|
|
On the Mac we can create a universal library for both 32 and 64-bit JVMs. So in the JAR file I will open "jportaudio" on Apple. ON WIndows I will continue to open "jportaudio_x64" and "jportaudio_x86".
|
|
*/
|