<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">Greetings,<br> <br> I am trying to a connect a bare bones Qt-based client to the JACK audio server , and I am running into a strange run-time error. I recently posted my question on the Qt-Interest list but have had no luck. Maybe someone on this list would be kind enough to help... <br><br><pre>my Setup is:<br><br>-Fedora 10 - 2.6.26.8-1.rt16.1.fc10.ccrma.i686.rt #1 SMP PREEMPT RT Tue Feb 17 15:48:24 EST 2009 i686 i686 i386 GNU/Linux<br>-Qt 4.50 (for Linux/X11)<br>-Jack audio connection kit<br><br><br><br>The .cpp files which cause this error are here:<br><br><br>******************<br>#include <QApplication><br>#include "MainWindow.h"<br>int main(int argc, char *argv[]) {<br> QApplication app(argc, argv);<br> MainWindow mainWindow;<br> mainWindow.show();<br> return app.exec();<br>}<br>*********************<br>#include
"MainWindow.h"<br>MainWindow::MainWindow() {<br> QPushButton * b1 = new QPushButton("HELLO BUTTON",this);<br> audioEngine = new AudioEngine();<br> audioEngine->run();<br>}<br>MainWindow::~MainWindow() {<br>}<br>**********************<br>#include "AudioEngine.h"<br>using namespace std;<br>static int process(jack_nframes_t nframes, void *pvArg) {<br> AudioEngine * pAudioEngine = static_cast<AudioEngine *> (pvArg);<br> return pAudioEngine->audioEngineProcess(nframes);<br>}<br>int AudioEngine::audioEngineProcess(jack_nframes_t nframes) {<br> currFrame = nframes;<br> return 0;<br>}<br>AudioEngine::AudioEngine() {<br>}<br>AudioEngine::~AudioEngine() {<br>}<br>void AudioEngine::run() {<br> const char * client_name = "Template Player";<br> jack_options_t options = JackNullOption;<br> jack_status_t status;<br> // open a client connection to the JACK server<br> client = jack_client_open(client_name, options, &status);<br> if (client == NULL)
{<br> fprintf(stderr, "jack_client_open() failed, status = 0x%2.0x\n", status);<br> if (status & JackServerFailed) {<br> fprintf(stderr, "Unable to connect to JACK server\n");<br> }<br> exit(1);<br> }<br> if (status & JackServerStarted)<br> fprintf(stderr, "JACK server started\n");<br> if (status & JackNameNotUnique) {<br> client_name = jack_get_client_name(client);<br> fprintf(stderr, "unique name `%s' assigned\n", client_name);<br> }<br> jack_set_process_callback(client, process, 0);<br> // jack_on_shutdown(client, jack_shutdown, 0);<br> //register the client ports<br> input_port = jack_port_register(client, "input", JACK_DEFAULT_AUDIO_TYPE,<br> JackPortIsInput, 0);<br> output_port = jack_port_register(client, "output", JACK_DEFAULT_AUDIO_TYPE,<br> JackPortIsOutput, 0);<br> if ((input_port == NULL) || (output_port == NULL)) {<br> fprintf(stderr, "no more JACK ports available\n");<br> exit(1);<br> }<br>
jack_activate(client);<br>}<br><br>*************************<br>Everything compiles , but I am getting the following run-time error:<br><br>/usr/libexec/<unknown>: No such file or directory.<br>Cannot access memory at address 0x7<br>Cannot access memory at address 0x7<br><br>Not sure what this means... I have registered a<br> callback function with the JACK daemon and whenever<br> I try to access the member variable currFrame from <br>within the callback function I get that error. <br>Has anyone seen this error before?<br><br>-Thank You!<br><br></pre><br></td></tr></table><br>