From 74c15d530b4ad506ec524474d2bcb2291adf65a6 Mon Sep 17 00:00:00 2001 From: Denny Date: Sun, 29 Jan 2017 11:02:12 -0500 Subject: [PATCH] Resolves #164 - USB time out while processing buffer transfers. Decreases periodicity of processing the LibUsb timeout handler from 9 milliseconds to 5 milliseconds to reduce chance that buffers are not being serviced in time. --- src/source/tuner/LibUSBTransferProcessor.java | 2 +- src/source/tuner/usb/USBTransferProcessor.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/source/tuner/LibUSBTransferProcessor.java b/src/source/tuner/LibUSBTransferProcessor.java index d1536570..205fce9f 100644 --- a/src/source/tuner/LibUSBTransferProcessor.java +++ b/src/source/tuner/LibUSBTransferProcessor.java @@ -84,7 +84,7 @@ public class LibUSBTransferProcessor if(mRunning.compareAndSet(false, true)) { //Set periodicity to an odd multiple to avoid contention with transfer buffer receivers - mProcessorFuture = ThreadPool.SCHEDULED.scheduleAtFixedRate(mProcessor, 0L, 9L, TimeUnit.MILLISECONDS); + mProcessorFuture = ThreadPool.SCHEDULED.scheduleAtFixedRate(mProcessor, 0L, 5L, TimeUnit.MILLISECONDS); } } diff --git a/src/source/tuner/usb/USBTransferProcessor.java b/src/source/tuner/usb/USBTransferProcessor.java index 902345ce..053250f3 100644 --- a/src/source/tuner/usb/USBTransferProcessor.java +++ b/src/source/tuner/usb/USBTransferProcessor.java @@ -300,6 +300,7 @@ public class USBTransferProcessor implements TransferCallback { case LibUsb.TRANSFER_COMPLETED: case LibUsb.TRANSFER_STALL: + case LibUsb.TRANSFER_TIMED_OUT: if(transfer.actualLength() > 0) { ByteBuffer buffer = transfer.buffer();