| 
																	
																	
																		
																	
																	
																 | 
																@@ -31,15 +31,17 @@ int JackPortAudioIOAdapter::Render(const void* inputBuffer, void* outputBuffer, | 
															
														
														
													
														
															
																 | 
																 | 
																                                void* userData) | 
																 | 
																 | 
																                                void* userData) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																    JackPortAudioIOAdapter* adapter = static_cast<JackPortAudioIOAdapter*>(userData); | 
																 | 
																 | 
																    JackPortAudioIOAdapter* adapter = static_cast<JackPortAudioIOAdapter*>(userData); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    float** paBuffer; | 
															
														
														
													
														
															
																 | 
																 | 
																    char* buffer; | 
																 | 
																 | 
																    char* buffer; | 
															
														
														
													
														
															
																 | 
																 | 
																     | 
																 | 
																 | 
																     | 
															
														
														
													
														
															
																 | 
																 | 
																    jack_log("JackPortAudioIOAdapter::Render"); | 
																 | 
																 | 
																    jack_log("JackPortAudioIOAdapter::Render"); | 
															
														
														
													
														
															
																 | 
																 | 
																      | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																     | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    paBuffer = (float**)inputBuffer; | 
															
														
														
													
														
															
																 | 
																 | 
																    for (int i = 0; i < adapter->fCaptureChannels; i++) { | 
																 | 
																 | 
																    for (int i = 0; i < adapter->fCaptureChannels; i++) { | 
															
														
														
													
														
															
																 | 
																 | 
																         | 
																 | 
																 | 
																         | 
															
														
														
													
														
															
																 | 
																 | 
																        buffer = (char*)inputBuffer; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        buffer = (char*)paBuffer[i]; | 
															
														
														
													
														
															
																 | 
																 | 
																        size_t len = jack_ringbuffer_read_space(adapter->fCaptureRingBuffer); | 
																 | 
																 | 
																        size_t len = jack_ringbuffer_read_space(adapter->fCaptureRingBuffer); | 
															
														
														
													
														
															
																 | 
																 | 
																          | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																         | 
															
														
														
													
														
															
																 | 
																 | 
																        if (len < framesPerBuffer * sizeof(float)) { | 
																 | 
																 | 
																        if (len < framesPerBuffer * sizeof(float)) { | 
															
														
														
													
														
															
																 | 
																 | 
																            jack_error("JackPortAudioIOAdapter::Process : producer too slow, skip frames..."); | 
																 | 
																 | 
																            jack_error("JackPortAudioIOAdapter::Process : producer too slow, skip frames..."); | 
															
														
														
													
														
															
																 | 
																 | 
																            jack_ringbuffer_read(adapter->fCaptureRingBuffer, buffer, len); | 
																 | 
																 | 
																            jack_ringbuffer_read(adapter->fCaptureRingBuffer, buffer, len); | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																	
																 | 
																@@ -48,9 +50,10 @@ int JackPortAudioIOAdapter::Render(const void* inputBuffer, void* outputBuffer, | 
															
														
														
													
														
															
																 | 
																 | 
																        } | 
																 | 
																 | 
																        } | 
															
														
														
													
														
															
																 | 
																 | 
																    } | 
																 | 
																 | 
																    } | 
															
														
														
													
														
															
																 | 
																 | 
																     | 
																 | 
																 | 
																     | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    paBuffer = (float**)outputBuffer; | 
															
														
														
													
														
															
																 | 
																 | 
																    for (int i = 0; i < adapter->fPlaybackChannels; i++) { | 
																 | 
																 | 
																    for (int i = 0; i < adapter->fPlaybackChannels; i++) { | 
															
														
														
													
														
															
																 | 
																 | 
																         | 
																 | 
																 | 
																         | 
															
														
														
													
														
															
																 | 
																 | 
																        buffer =  (char*)outputBuffer; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        buffer =  (char*)paBuffer[i]; | 
															
														
														
													
														
															
																 | 
																 | 
																        size_t len = jack_ringbuffer_write_space(adapter->fPlaybackRingBuffer); | 
																 | 
																 | 
																        size_t len = jack_ringbuffer_write_space(adapter->fPlaybackRingBuffer); | 
															
														
														
													
														
															
																 | 
																 | 
																          | 
																 | 
																 | 
																          | 
															
														
														
													
														
															
																 | 
																 | 
																        if (len < framesPerBuffer * sizeof(float)) { | 
																 | 
																 | 
																        if (len < framesPerBuffer * sizeof(float)) { | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																	
																 | 
																@@ -60,7 +63,6 @@ int JackPortAudioIOAdapter::Render(const void* inputBuffer, void* outputBuffer, | 
															
														
														
													
														
															
																 | 
																 | 
																            jack_ringbuffer_write(adapter->fPlaybackRingBuffer, buffer, framesPerBuffer * sizeof(float)); | 
																 | 
																 | 
																            jack_ringbuffer_write(adapter->fPlaybackRingBuffer, buffer, framesPerBuffer * sizeof(float)); | 
															
														
														
													
														
															
																 | 
																 | 
																        } | 
																 | 
																 | 
																        } | 
															
														
														
													
														
															
																 | 
																 | 
																    } | 
																 | 
																 | 
																    } | 
															
														
														
													
														
															
																 | 
																 | 
																    jack_log("JackPortAudioIOAdapter::Render"); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																     | 
																 | 
																 | 
																     | 
															
														
														
													
														
															
																 | 
																 | 
																    return paContinue; | 
																 | 
																 | 
																    return paContinue; | 
															
														
														
													
														
															
																 | 
																 | 
																} | 
																 | 
																 | 
																} | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																	
																	
																	
																 | 
																
  |