Skip to content
Snippets Groups Projects
Commit 82a6e3cf authored by Florent Berthaut's avatar Florent Berthaut
Browse files

Fixed crash when jack is not started

parent dd21fff1
No related branches found
No related tags found
No related merge requests found
......@@ -111,28 +111,36 @@ void AudioManager::init() {
m_rtBufSize = 1024;
m_rtAudio->openStream(param, NULL, RTAUDIO_FLOAT32, data.nRate,
bool init=true;
try{
m_rtAudio->openStream(param, NULL, RTAUDIO_FLOAT32, data.nRate,
&m_rtBufSize,
AudioManager::rtaudio_callback, &data, options);
AudioManager::rtaudio_callback, &data, options);
}
catch(const exception& e) {
init=false;
}
int nbBufs = 5;
m_bufSize = m_rtBufSize*nbBufs;
if(init) {
int nbBufs = 5;
m_bufSize = m_rtBufSize*nbBufs;
data.ringBuffer = ringbuffer_create(m_bufSize*3);
data.ringBuffer = ringbuffer_create(m_bufSize*3);
data.nChannel = param->nChannels;
data.bufSize = m_bufSize;
data.buffer = new float[m_bufSize];
data.nbBufs = nbBufs;
data.bufCounter = 0;
memset(&data.buffer[0], 0, data.bufSize*sizeof(float));
data.nChannel = param->nChannels;
data.bufSize = m_bufSize;
data.buffer = new float[m_bufSize];
data.nbBufs = nbBufs;
data.bufCounter = 0;
memset(&data.buffer[0], 0, data.bufSize*sizeof(float));
data.mixSize = m_rtBufSize;
data.mixBuffer = new float[data.mixSize];
memset(&data.mixBuffer[0], 0, data.mixSize*sizeof(float));
data.mixSize = m_rtBufSize;
data.mixBuffer = new float[data.mixSize];
memset(&data.mixBuffer[0], 0, data.mixSize*sizeof(float));
m_thread = new std::thread(audioThreadFunction, this);
m_init = true;
m_thread = new std::thread(audioThreadFunction, this);
m_init = true;
}
}
......@@ -147,9 +155,9 @@ bool AudioManager::changeBuf(float* outputBuf, float maxSinValue) {
}
else {
//cout<<"AudioManager : Could not write buffer"<<endl;
return false;
}
}
return false;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment