From: Ed R. <ed....@go...> - 2012-11-22 11:27:05
|
Git commit 99d8b834ac66a6514286fb003343b0198f203365 by Ed Rogalsky. Committed on 21/11/2012 at 14:28. Pushed by rogalsky into branch 'feature/jack'. noise while syncing removed M +18 -8 src/jackslave.cpp http://commits.kde.org/kdenlive/99d8b834ac66a6514286fb003343b0198f203365 diff --git a/src/jackslave.cpp b/src/jackslave.cpp index 927829a..ec07e8f 100644 --- a/src/jackslave.cpp +++ b/src/jackslave.cpp @@ -312,6 +312,11 @@ int JackSlave::jack_sync(jack_transport_state_t state, jack_position_t* pos, voi } if (device->m_sync > 1) { + /* FIXME: optimize sync */ +#if 0 + for(int i = 0; i < device->m_channels; i++) + jack_ringbuffer_reset(device->m_ringbuffers[i]); +#endif device->m_sync = 0; result = 1; } @@ -324,12 +329,24 @@ int JackSlave::jack_process(jack_nframes_t frames, void *data) JackSlave* device = (JackSlave*)data; int channels = device->m_channels; + /* TODO: review later */ +#if 0 if (device->m_sync) { size_t bufsize = (frames * sizeof(float)); /* play silence while syncing */ for(int i = 0; i < channels; i++) memset(jack_port_get_buffer(device->m_ports[i], frames), 0, bufsize); - } else { + + /* FIXME: optimize sync */ +// if (device->m_sync > 1) { +// for(int i = 0; i < device->m_channels; i++) +// jack_ringbuffer_reset(device->m_ringbuffers[i]); +// device->m_sync = 3; +// } + + } else +#endif + { /* convert nr of frames to nr of bytes */ size_t jacksize = (frames * sizeof(float)); /* copy audio data into jack buffers */ @@ -359,13 +376,6 @@ int JackSlave::jack_process(jack_nframes_t frames, void *data) void JackSlave::updateBuffers(Mlt::Frame& frame) { - /* FIXME: optimize sync */ - if (m_sync) { - for(int i = 0; i < m_channels; i++) - jack_ringbuffer_reset(m_ringbuffers[i]); - return; - } - if (!frame.is_valid() || frame.get_int("test_audio") != 0) { return; } |