jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sletz 389a9a572d Correct Start/Stop for Control API. 13 years ago
..
JackRouter New version of JackRouter. 14 years ago
Release/bin Simplify Windows installers: remove the VC++ 2008 dependency. 14 years ago
Release64/bin Simplify Windows installers: remove the VC++ 2008 dependency. 14 years ago
Setup New version of JackRouter. 14 years ago
portaudio Add jackctl_driver_get_type in Control API. 13 years ago
winmme Compiles on Windows again. 13 years ago
JackAtomic_os.h Fix a SMP related bug introduced in rev 2957 : remove the __SMP__ flag and define LOCK for SMP in all cases. 16 years ago
JackCompilerDeps_os.h EXPORT macro renamed to LIB_EXPORT. 14 years ago
JackMMCSS.cpp More debug code in JackMMCSS class. 14 years ago
JackMMCSS.h Use of MMCSS API. 14 years ago
JackNetWinSocket.cpp Fix some file header to have library side code use LGPL. 15 years ago
JackNetWinSocket.h 64 bits compilation on Windows. 14 years ago
JackPlatformPlug_os.h Cleanup JackConstants.h, move platform specific part in JackPlatformPlug_os.h by platform. 15 years ago
JackShmMem_os.h Fix some file header to have library side code use LGPL. 15 years ago
JackSystemDeps_os.h Compile on Windows again. 14 years ago
JackTypes_os.h Compile on Windows again. 14 years ago
JackWinEvent.cpp Fix some file header to have library side code use LGPL. 15 years ago
JackWinEvent.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinMutex.h Compiles on Windows again. 13 years ago
JackWinNamedPipe.cpp Fix some file header to have library side code use LGPL. 15 years ago
JackWinNamedPipe.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinNamedPipeClientChannel.cpp Move session command reply array creation to JackSessionNotifyResult 13 years ago
JackWinNamedPipeClientChannel.h Possible fix for http://trac.jackaudio.org/ticket/193. 13 years ago
JackWinNamedPipeNotifyChannel.cpp Fix some file header to have library side code use LGPL. 15 years ago
JackWinNamedPipeNotifyChannel.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinNamedPipeServerChannel.cpp Correct Start/Stop for Control API. 13 years ago
JackWinNamedPipeServerChannel.h Correct Start/Stop for Control API. 13 years ago
JackWinNamedPipeServerNotifyChannel.cpp Compiles on Windows again. 15 years ago
JackWinNamedPipeServerNotifyChannel.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinProcessSync.cpp -X now allows to add several slave backends, add -I to load several internal clients. 14 years ago
JackWinProcessSync.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinSemaphore.cpp Fix some file header to have library side code use LGPL. 15 years ago
JackWinSemaphore.h Fix some file header to have library side code use LGPL. 15 years ago
JackWinServerLaunch.cpp All Windows files switched to Unix line ending. 16 years ago
JackWinThread.cpp More debug code in JackMMCSS class. 14 years ago
JackWinThread.h Cleanup. 14 years ago
JackWinTime.c Fix some file header to have library side code use LGPL. 15 years ago
README On Windows, now use TRE library for regexp (BSD license instead of GPL license) 15 years ago
getopt.c First import 18 years ago
getopt.h Cleanup, documentation. 17 years ago
getopt1.c Merge windows branch back to trunk. 17 years ago
jack_audioadapter.cbp Simplify Windows installers: remove the VC++ 2008 dependency. 14 years ago
jack_connect.cbp Change intermediate compilation names on Windows. 14 years ago
jack_connect.dsp Merge windows branch back to trunk. 17 years ago
jack_disconnect.cbp Change intermediate compilation names on Windows. 14 years ago
jack_dummy.cbp Change intermediate compilation names on Windows. 14 years ago
jack_freeverb.dsp Merge windows branch back to trunk. 17 years ago
jack_latent_client.cbp Change intermediate compilation names on Windows. 14 years ago
jack_load.cbp Change intermediate compilation names on Windows. 14 years ago
jack_load.dsp Merge windows branch back to trunk. 17 years ago
jack_loopback.cbp Change intermediate compilation names on Windows. 14 years ago
jack_lsp.cbp Correct linking issues. 14 years ago
jack_lsp.dsp Merge windows branch back to trunk. 17 years ago
jack_metro.cbp Change intermediate compilation names on Windows. 14 years ago
jack_metro.dsp Merge windows branch back to trunk. 17 years ago
jack_midi_dump.cbp Merge branch 'newer-midi' 14 years ago
jack_midi_latency_test.cbp Merge branch 'newer-midi' 14 years ago
jack_netadapter.cbp Simplify Windows installers: remove the VC++ 2008 dependency. 14 years ago
jack_netdriver.cbp Change intermediate compilation names on Windows. 14 years ago
jack_netdriver.dsp Compiles again with VC++ 17 years ago
jack_netmanager.cbp Change intermediate compilation names on Windows. 14 years ago
jack_netmanager.dsp Merge windows branch back to trunk. 17 years ago
jack_netonedriver.cbp Change intermediate compilation names on Windows. 14 years ago
jack_netsource.cbp Simplify Windows installers: remove the VC++ 2008 dependency. 14 years ago
jack_portaudio.cbp Change intermediate compilation names on Windows. 14 years ago
jack_portaudio.dsp Compiles again with VC++ 17 years ago
jack_simple_client.dsp Merge windows branch back to trunk. 17 years ago
jack_test.cbp Change intermediate compilation names on Windows. 14 years ago
jack_test.dsp Merge windows branch back to trunk. 17 years ago
jack_unload.cbp Change intermediate compilation names on Windows. 14 years ago
jack_unload.dsp Merge windows branch back to trunk. 17 years ago
jack_winmme.cbp Change intermediate compilation names on Windows. 14 years ago
jackaudioadapter.rc Version 1.9.8 started. 14 years ago
jackd.cbp Change intermediate compilation names on Windows. 14 years ago
jackd.rc Version 1.9.8 started. 14 years ago
jackd.workspace Use of MMCSS API. 14 years ago
jackdmp.dsp Merge windows branch back to trunk. 17 years ago
jackdmp.dsw Merge windows branch back to trunk. 17 years ago
jackdummydriver.rc Version 1.9.8 started. 14 years ago
jackloopbackdriver.rc Version 1.9.8 started. 14 years ago
jacknetadapter.rc Version 1.9.8 started. 14 years ago
jacknetdriver.rc Version 1.9.8 started. 14 years ago
jacknetmanager.rc Typos on Windows. 14 years ago
jacknetonedriver.rc Typos on Windows. 14 years ago
jackportaudio.rc Typos on Windows. 14 years ago
jackwinmme.rc Typos on Windows. 14 years ago
jdelay.dsp Merge windows branch back to trunk. 17 years ago
libjack.cbp Use of MMCSS API. 14 years ago
libjack.rc Typos on Windows. 14 years ago
libjackmp.dsp Merge windows branch back to trunk. 17 years ago
libjacknet.cbp Use of MMCSS API. 14 years ago
libjacknet.rc Update libjacknet Windows project. 14 years ago
libjackserver.cbp New JackTimedDriver class to be used by JackDummyDriver, JackNetDriver and JackNetOneDriver classes. 13 years ago
libjackserver.rc Typos on Windows. 14 years ago
libjackservermp.dsp Merge windows branch back to trunk. 17 years ago
multiple_metro.cbp Change intermediate compilation names on Windows. 14 years ago
resource.h Merge windows branch back to trunk. 17 years ago
resource.rc Version 1.9.8 started. 14 years ago
resource_vc.h All Windows files switched to Unix line ending. 16 years ago
samplerate.h Merge windows branch back to trunk. 17 years ago
testSynchoServerClient.dsp Merge windows branch back to trunk. 17 years ago
testSynchroClient.dsp Merge windows branch back to trunk. 17 years ago
testSynchroServer.dsp Merge windows branch back to trunk. 17 years ago

README

-------------------------------

JACK2 on Windows
-------------------------------

This folder contains all the windows specific sources.
You will also find two sets of files :
- VisualC++6 workspace and project files, in order to compile JACK with MSVC
- Code::Blocks (8.02) workspace and project files, in order to compile JACK with MingW

The built binaries will be located in '/Release/bin' (or '/Debug/bin' if you build the Debug target). Once compiled, you'll find there everything you need :
- the two 'libjackmp.dll' and 'libjackservermp.dll', client and server jack libraries
- the 'jackdmp.exe', main application : the JACK server
- the 'jack_xxx.exe' utilities and examples
- in the jackmp directory, you'll find the driver's DLL's ('jack_portaudio.dll' and 'jack_netdriver.dll') and some tools ('netmanager.dll', 'audioadapter.dll', 'netadapter.dll' for example)

In Code::Blocks all the projects are automatically built in a correct order (dll's then apps) by doing 'build->build workspace'.
In VC6, you'll have to build the projects one by one.

The needed regexp library TRE can be found here http://laurikari.net/tre/. Unzip and place the "tre-0.8.0" folder into the "windows" folder.
Then edit and comment "#define snprintf sprintf_s" at the end off the "tre-0.8.0/win32/config.h" file before building the JACK project.

-------------------------------
Notes about VC and GCC versions
-------------------------------

The Visual Studio workspace is limited to VC6. JACK will not compile on most recent MSVC's. The fact is recent compilers (MSVC7, 8 or 9) don't agree with some of the JACK sources.
But now you can compile JACK using GCC, with MingW.
The project is actually organized in a Code::Blocks workspace. This is a simple and efficient way to compile the whole project.

But for some reasons, you need to compile JACK using a SJLJ version of G++ (available on MingW website).
Current GCC/G++ version (3.4.5) doesn't includes SJLJ so you'll have to use another one.
JACK needs the use of SJLJ exceptions instead of DW2 because exceptions are exchanged between DLL's, and DW2 does not allow to throw an exception out of a DLL, so it wouldn't be cought.

The ressources files has been created with ResEdit (ANSI build). VisualStudio uses 'ressource.rc' and 'ressource_vc.h'. The other files are used by MingW.

You can make a small installer ('setup.exe') with CreateInstallFree, a little freeware. For this you have the little script 'jack.ci'.The installer contains everything jack needs to be intagreted in windows (including register entries and shortcuts).
A binary version of qjackctl is also included.

-------------------------------
Running JACK on Windows
-------------------------------

You can use two drivers : PortAudio and NetDriver.
The PortAudio backend allow the use of many soundcards, using ASIO, DirectSound or WMME drivers (any ASIO driver can be seen by PortAudio).
The NetDriver allow you to use NetJack2 on windows. Thus you can easily exchange midi and audio streams bitween computers (Linux, MacOSX or Windows).
In both cases, you have to use the minimalist :
'jackd -R -d ...' command. With PortAudio, you can have a list of supported drivers with :
'jackd -R -S -d portaudio -l'

Other options still stay the same.
You can also pick a binary of Qjackctl, but this is still in development.

-------------------------------
Running Jack on windows
-------------------------------

More information at : 'http://www.grame.fr/~letz/jackdmp.html'.

For any question or suggestion, you can refer to the mailing list 'jack-devel@jackaudio.org'
Enjoy JACK on windows... ;-)