diff options
Diffstat (limited to '3rdparty/portaudio/bindings/java/jportaudio.dox')
-rw-r--r-- | 3rdparty/portaudio/bindings/java/jportaudio.dox | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/3rdparty/portaudio/bindings/java/jportaudio.dox b/3rdparty/portaudio/bindings/java/jportaudio.dox new file mode 100644 index 0000000..f97b565 --- /dev/null +++ b/3rdparty/portaudio/bindings/java/jportaudio.dox @@ -0,0 +1,65 @@ +/** +@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". +*/ |