Wouter1 / EMU-driver

OSX Kernel extension for Creative Labs EMU driver
189 stars 30 forks source link

El Capitan recording sync issue #70

Closed Wouter1 closed 8 years ago

Wouter1 commented 9 years ago

This is a follow-up to #18

Apple has changed something in the USB core to fix this issue.

They reported back

We believe this issue has been addressed in the OS X El Capitan 10.11 release. Please test with this release, and update this report with your results.

Engineering has determined that your bug report (19352753) is a duplicate of another issue (21376752) and will be closed.

We may have to check if this change has consequences.

Wouter1 commented 9 years ago

Only Wouter1 can read the apple bug report because the way Apple handles bug reports. Also it's not clear if the report will be available in the future. This is not good for dealing with this issue.

Therefore I duplicate the contents here (I can't see the 'duplicate' ticket, which seems still open)

Apple Developer Relations07-Oct-2015 10:14 AM

Engineering has determined that your bug report is a duplicate of another issue and will be closed. 

The open or closed status of the original bug report your issue was duplicated to appears in the yellow "Duplicate of XXXXXXXX" section of the bug reporter user interface. This section appears near the top of the right column's bug detail view just under the bug number, title, state, product and rank.

If you have any questions or concerns, please update your report directly here: http://bugreport.apple.com/.
Apple Developer Relations30-Sep-2015 07:57 PM

We believe this issue has been addressed in the OS X El Capitan 10.11 release.  Please test with this release, and update this report with your results.

OS X 10.11
https://developer.apple.com/osx/download/
or
https://itunes.apple.com/app/os-x-yosemite/id1018109117
Apple Developer Relations16-Jan-2015 10:36 PM

Engineering has the following feedback for you:

#define kIOReturnIsoTooNew   iokit_common_err(0x2ef) // isochronous I/O request for distant future

Scheduling too far ahead in the future. Adjust your algorithm to take note of this error code.
w pasman04-Oct-2015 11:10 PM

Thanks for your heads-up on this.

Unfortunately it seems exactly the other way round. I successfully worked around the issue on the previous versions of OSX to get it working properly. But I got user reports that my driver now breaks on El Capitan with read error e00002e7... I will wait installing El Capitan until it is considered stable (many audio drivers seem to have been broken)

Can you indicate what exactly has changed in the USB drivers as compared to Yosemite? That may help me finding a new workaround or better solution. I would like to have one solution that works on all machines to keep the driver compatible with previous versions of OSX.
w pasman19-Jan-2015 08:43 AM

Some people also have reported the issue on Mavericks. So this is not an issue with Yosemite but with something else deep in the system, like the USB chipset?

Can I change the title of this ticket? "on Yosemite" should be "on some machines"
w pasman18-Jan-2015 05:41 PM

Thanks for picking this up.

Yes I know what this error means.
The point is, with kAppleUSBSSIsocContinuousFrame I request the USB system to figure out the proper USB frame itself. So this error makes no sense it seems.
w pasman06-Jan-2015 01:16 PM

We did a few tests on different machines with Yosemite

on rMBP 15" late 2013 it works fine, the read with kAppleUSBSSIsocContinuousFrame works as expected

on MacBook Pro Mid 2012 - 15" it does not work, giving reported error.

Both have a USB3 port according to the specs. Both running Yosemite.
w pasman28-Dec-2014 10:02 AM

Summary:
I'm developing a kernel extension for the EMU0404 USB audio device. The code is c++ available from https://github.com/Wouter1/EMU-driver

At some point (EMUUSBInputStream::readFrameList) I'm starting a isochronous asynchronous read from a USB pipe using

IOUSBPipe::Read(IOMemoryDescriptor, frameStart, numFra,es, IOUSBLowLatencyIsocFrame, IOUSBLowLatencyIsocCompletion, updateFrequency)

with frameStart set to kAppleUSBSSIsocContinuousFrame

On Yosemite this fails with error e00002ef

On Mavericks this works all as it should

Is this a new bug in Yosemite or is there something new that I missed?

Steps to Reproduce:
1. Do test on Yosemite. download the kext from my github site and follow install instructions. Attach your EMU0404 device

2. Check the system.log file. You will see this

 27 Dec 2014 20:33:01 kernel[0]: +UsbInputRing::init 98304 529200
27 Dec 2014 20:33:01 kernel[0]: -UsbInputRing::init 185759637
27 Dec 2014 20:33:01 kernel[0]: USB pipe READ error e00002ef

Expected Results:
read success (no error message)

Actual Results:
USB pipe READ error e00002ef

Version:
OSX 10.9.5 works fine.
Yosemite latest version fails.

Notes:
I can't test this on my own machine that still has Mavericks. Report is based on detailed log files from a client who tries to run on Yosemite. More details are on https://github.com/Wouter1/EMU-driver/issues/17

Configuration:
Doing the same on Mavericks works fine

Attachments:
Wouter1 commented 9 years ago

In El Capitan you are getting many error messages (into system.log).

This you get both while recording and playback so this problem seems only in the audio input part

Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 10:04:42 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Wouter1 commented 9 years ago

Recording with audacity seems to work but I didn't actually attach a mic so I just recorded silence (succesfully). I think we first need to fix the above excessive error messages because excessive logging might cause clicking

Wouter1 commented 9 years ago

Apple has a documentation website with changes in the USB system

https://developer.apple.com/library/mac/releasenotes/Darwin/RN_USB/Articles/10_11Changes.html#//apple_ref/doc/uid/TP40007739-CH3-SW1

The USB stack is completely redesigned to increase stability and performance compared to Mac OS 10.10. Applications and third-party drivers for vendor-specific USB devices built with 10.10 SDK require no modification.

Applications that use IOUSBLib APIs should continue to work with no modification. IOKit drivers that use IOUSBDevice and IOUSBInterface APIs should continue to load and be functional with no regressions.

If you are developing a new IOKit driver that uses IOKIT USB APIs, please refer to the OS X v10.11 SDK for new API and classes such as IOUSBHostDevice and IOUSBHostInterface. New applications developed using the OS X v10.11 SDK should continue to use the IOUSBLib APIs.

Different classes of USB devices should not exhibit any regression in functionality compared to the OS X v10.10 release.
Wouter1 commented 9 years ago

I compiled and ran the kext with USB read logging on. Gives me this output on Capitan (switched to 48kHz and doing playback without recording)

Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: +EMUUSBAudioEngine[<ptr>]::performAudioEngineStart ()
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: ringbuffer<USBInputRing> allocate 98304
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: ringbuffer<frameSizeQueue> allocate 1024
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: create output pipe 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: check for associated endpoint
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 269368 at 270681777653
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 269400 at 270681817723
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 269432 at 270681854478
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 269464 at 270681891131
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 16 22:11:12 --- last message repeated 127 times ---
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 --- last message repeated 1 time ---
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 269496 at 270776603009
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 269528 at 270808538936
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 269560 at 270840679499
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 269592 at 270872645536
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 269624 at 270904670587
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 269656 at 270936543618
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 269688 at 270968677379
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 269720 at 271000681148
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 269752 at 271032601649
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 269784 at 271064552374
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 269816 at 271096702258
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 269848 at 271128677043
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 269880 at 271160608604
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 269912 at 271192543019
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 269944 at 271224713663
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 269976 at 271256687501
Oct 16 22:11:12 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270008 at 271288568514
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270040 at 271320504902
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270072 at 271352489050
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 16 22:11:13 --- last message repeated 63 times ---
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270104 at 271384717315
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270136 at 271416597353
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270168 at 271448554901
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270200 at 271480632501
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270232 at 271512653148
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270264 at 271544657861
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270296 at 271576525437
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: LowPassFilter::filter init 170666666
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: USB timer started
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270328 at 271608618049
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270360 at 271640626623
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270392 at 271672658103
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270424 at 271704701086
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270456 at 271736701799
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270488 at 271768754001
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: **** Output Hiccup!! firstSampleFrame=1264, nextExpectedOutputFrame=0 bufsize=98304
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270520 at 271800696803
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270552 at 271832715659
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270584 at 271864727695
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270616 at 271896594601
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270648 at 271928725584
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270680 at 271960551948
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=2
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 2  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 2 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 270712 at 271992620087
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=3
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 3  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 3 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 270744 at 272024494620
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=0
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 0  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 270776 at 272056502807
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: - readCompleted nextCompleteFrameList=1
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + readCompleted nextCompleteFrameList 1  result 0 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: + read frameList 1 
Oct 16 22:11:13 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 270808 at 272088557037
Wouter1 commented 9 years ago

The 'err reading ring e00002e7' comes from EMUUSBAudioEngine#convertInputSamples and indicates kIOReturnUnderrun. The number of bytes that are requested for convertInputSamples exceeds the number in the ring buffer.

Wouter1 commented 9 years ago

The call leading to the underrun comes directly from OSX.

So the problem is in the synchronisation mechanism.

Wouter1 commented 9 years ago

trying the approach as in #33 to check if the streams are in sync.

Wouter1 commented 9 years ago

Disabled all these error messages and turn on the right messages. Then we get this (partial snip)

Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: create output pipe 
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: check for associated endpoint
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297026 at 298558382907
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297058 at 298558439034
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297090 at 298558464261
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297122 at 298558484783
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 17 15:13:16 --- last message repeated 127 times ---
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 --- last message repeated 1 time ---
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297154 at 298653743766
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297186 at 298685739835
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297218 at 298717749068
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297250 at 298749818798
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 297186 list 21 byte 60
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297282 at 298781733940
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297314 at 298813757287
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297346 at 298845843865
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297378 at 298877784847
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297410 at 298909761187
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 297346 list 42 byte 156
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297442 at 298941892107
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297474 at 298973825734
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297506 at 299005899218
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297538 at 299037737864
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297570 at 299069738994
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 297506 list 63 byte 252
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297602 at 299101854517
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297634 at 299133727052
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297666 at 299165703334
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297698 at 299197697113
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297730 at 299229740420
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 17 15:13:16 --- last message repeated 21 times ---
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 297698 list 21 byte 60
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 17 15:13:16 --- last message repeated 41 times ---
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297762 at 299261780912
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297794 at 299293733420
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297826 at 299325743157
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297858 at 299357889255
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 297890 at 299389681116
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 297922 at 299421689447
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 297858 list 42 byte 156
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 297954 at 299453732980
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: warning way-out ring wrap position
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: LowPassFilter::filter init 170666666
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: USB timer started
Oct 17 15:13:16 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 297986 at 299485816139
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298018 at 299517725137
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298050 at 299549725099
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298082 at 299581710691
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298018 list 63 byte 264
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298114 at 299613778487
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298146 at 299645789873
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: **** Output Hiccup!! firstSampleFrame=1356, nextExpectedOutputFrame=0 bufsize=98304
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298178 at 299677905953
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298210 at 299709704828
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298242 at 299741784058
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298274 at 299773823891
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298210 list 21 byte 72
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298306 at 299805844321
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298338 at 299837778733
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298370 at 299869917631
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298402 at 299901757860
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298434 at 299933885903
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298370 list 42 byte 168
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298466 at 299965873558
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298498 at 299997787213
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298530 at 300029760120
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298562 at 300061887118
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298594 at 300093769164
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298530 list 63 byte 264
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298626 at 300125743507
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298658 at 300157733982
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298690 at 300189812620
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298722 at 300221738946
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298754 at 300253752103
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298786 at 300285797212
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298722 list 21 byte 72
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298818 at 300317723329
Oct 17 15:13:17 Wouters-MacBook-Pro apsd[72]: Certificate doesn't match host
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298850 at 300349750601
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 298882 at 300381791074
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 298914 at 300413817235
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 298946 at 300445830546
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 298882 list 42 byte 180
Oct 17 15:13:17 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 298978 at 300477874131
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299010 at 300509708256
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299042 at 300541792142
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299074 at 300573748185
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299106 at 300605722628
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 299042 list 63 byte 276
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299138 at 300637833375
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299170 at 300669882880
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299202 at 300701729665
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299234 at 300733709230
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299266 at 300765714620
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299298 at 300797718320
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 299234 list 21 byte 84
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299330 at 300829715844
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299362 at 300861886249
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299394 at 300893871217
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299426 at 300925872281
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299458 at 300957740703
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 299394 list 42 byte 204
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299490 at 300989732617
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299522 at 301021744707
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299554 at 301053784569
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299586 at 301085875862
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299618 at 301117779404
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 299650 at 301149766288
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 299586 list 0 byte 12
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 299682 at 301181947687
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 299714 at 301213725787
Oct 17 15:13:18 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 299746 at 301245693024
Wouter1 commented 9 years ago

The input wrap messages are missing........ I have to stop this now because all my time is lost in swapping back and forth between OSX 9 and 11 for every tiny debug step.

Wouter1 commented 9 years ago

Here one with input wraps also there.

Oct 17 18:21:05 Wouters-MBP kernel[0]: create output pipe 
Oct 17 18:21:05 Wouters-MBP kernel[0]: check for associated endpoint
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903237 at 904359588594
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903269 at 904359617161
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903301 at 904359645360
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903333 at 904359671830
Oct 17 18:21:05 Wouters-MBP kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 17 18:21:05 --- last message repeated 127 times ---
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 --- last message repeated 1 time ---
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903365 at 904454508026
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903397 at 904486472043
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903429 at 904518437332
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903461 at 904550456780
Oct 17 18:21:05 Wouters-MBP kernel[0]: write wrap in usbframe 903397 list 21 byte 60
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903493 at 904582508262
Oct 17 18:21:05 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 60
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903525 at 904614369639
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903557 at 904646374575
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903589 at 904678358346
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903621 at 904710398973
Oct 17 18:21:05 Wouters-MBP kernel[0]: write wrap in usbframe 903557 list 42 byte 156
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903653 at 904742314024
Oct 17 18:21:05 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:05 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 156
Oct 17 18:21:05 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903685 at 904774445769
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 17 18:21:06 --- last message repeated 63 times ---
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903717 at 904806433551
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903749 at 904838355846
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 903717 list 63 byte 252
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903781 at 904870404672
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903813 at 904902422787
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: input wrap in list 3 at frame 63 byte 252
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903845 at 904934333328
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 903877 at 904966294144
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 903909 at 904998355791
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 903941 at 905030511855
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 903973 at 905062460978
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 903909 list 21 byte 60
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904005 at 905094497858
Oct 17 18:21:06 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 60
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904037 at 905126332173
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904069 at 905158482630
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904101 at 905190505212
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904133 at 905222495145
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 904069 list 42 byte 156
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904165 at 905254354209
Oct 17 18:21:06 Wouters-MBP kernel[0]: warning way-out ring wrap position
Oct 17 18:21:06 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 156
Oct 17 18:21:06 Wouters-MBP kernel[0]: LowPassFilter::filter init 170666666
Oct 17 18:21:06 Wouters-MBP kernel[0]: USB timer started
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904197 at 905286512437
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904229 at 905318479947
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904261 at 905350478174
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904293 at 905382461544
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 904229 list 63 byte 252
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904325 at 905414461047
Oct 17 18:21:06 Wouters-MBP kernel[0]: input wrap in list 3 at frame 63 byte 252
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904357 at 905446494535
Oct 17 18:21:06 Wouters-MBP kernel[0]: **** Output Hiccup!! firstSampleFrame=1304, nextExpectedOutputFrame=0 bufsize=98304
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904389 at 905478456054
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904421 at 905510503854
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904453 at 905542494604
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904485 at 905574533808
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 904421 list 21 byte 60
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904517 at 905606488361
Oct 17 18:21:06 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 60
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904549 at 905638471452
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904581 at 905670481729
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904613 at 905702522731
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904645 at 905734491246
Oct 17 18:21:06 Wouters-MBP kernel[0]: write wrap in usbframe 904581 list 42 byte 156
Oct 17 18:21:06 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904677 at 905766535899
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 156
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904709 at 905798523663
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904741 at 905830345825
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904773 at 905862447105
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904805 at 905894497417
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 904741 list 63 byte 252
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904837 at 905926447103
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 3 at frame 63 byte 252
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904869 at 905958454901
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 904901 at 905990437907
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 904933 at 906022501960
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 904965 at 906054467931
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 904997 at 906086501762
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 904933 list 21 byte 60
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905029 at 906118496359
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 60
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905061 at 906150473869
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905093 at 906182334009
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905125 at 906214488958
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905157 at 906246474222
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 905093 list 42 byte 168
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905189 at 906278479745
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 168
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905221 at 906310535768
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905253 at 906342447895
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905285 at 906374433452
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905317 at 906406487082
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 905253 list 63 byte 264
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905349 at 906438496927
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 3 at frame 63 byte 264
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905381 at 906470440720
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905413 at 906502489216
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905445 at 906534497056
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905477 at 906566492384
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905509 at 906598490470
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 905445 list 21 byte 72
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905541 at 906630383203
Oct 17 18:21:07 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 72
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905573 at 906662514374
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905605 at 906694455291
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905637 at 906726434686
Oct 17 18:21:07 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905669 at 906758436083
Oct 17 18:21:07 Wouters-MBP kernel[0]: write wrap in usbframe 905605 list 42 byte 168
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905701 at 906790453793
Oct 17 18:21:08 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 168
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905733 at 906822451747
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905765 at 906854474151
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905797 at 906886493586
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905829 at 906918465354
Oct 17 18:21:08 Wouters-MBP kernel[0]: write wrap in usbframe 905765 list 63 byte 264
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905861 at 906950477353
Oct 17 18:21:08 Wouters-MBP kernel[0]: input wrap in list 3 at frame 63 byte 276
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 3 in framenr 905893 at 906982349998
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 0 in framenr 905925 at 907014461855
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 905957 at 907046439371
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 905989 at 907078477399
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 3 in framenr 906021 at 907110424812
Oct 17 18:21:08 Wouters-MBP kernel[0]: write wrap in usbframe 905957 list 21 byte 84
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 0 in framenr 906053 at 907142489440
Oct 17 18:21:08 Wouters-MBP kernel[0]: input wrap in list 1 at frame 21 byte 84
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 906085 at 907174489523
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 906117 at 907206502619
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 3 in framenr 906149 at 907238445414
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 0 in framenr 906181 at 907270482169
Oct 17 18:21:08 Wouters-MBP kernel[0]: write wrap in usbframe 906117 list 42 byte 180
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 906213 at 907302501141
Oct 17 18:21:08 Wouters-MBP kernel[0]: input wrap in list 2 at frame 42 byte 204
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 906245 at 907334487637
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 3 in framenr 906277 at 907366530418
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 0 in framenr 906309 at 907398474325
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 1 in framenr 906341 at 907430484099
Oct 17 18:21:08 Wouters-MBP kernel[0]: READ framelist 2 in framenr 906373 at 907462448819
Wouter1 commented 9 years ago

running the script cat untitled.txt | awk '// { if ($6=="write") { L=$12; B1=$14; } else if ($6=="input" && L==$13) { B2=$15; print "wrap diff " B1-B2 } }' that we used before, the diffs reported look good, just in the range 0..-24 as before.

Wouter1 commented 9 years ago

The messages

Oct 17 18:34:27 Wouters-MBP kernel[0]: RingBufferDefault::push warning. Ignoring overrun

are there because the input pipes are not read properly.

Apparently there IS something reading, but it makes not much sense yet.

If I use Audacity to sample data, it kind of works. But I do have some clicking.

Wouter1 commented 9 years ago

but there are no messages or warnings in the system log. Not clear what is causing the clicking. Maybe it's slow synchronisation? The clicking seems to stop after some time

Wouter1 commented 9 years ago

If I use Quicktime 7, it all works fine. This is just a new instance of the old issues we had with Quicktime before.

Just brief test of playback (1 minute track) from Quicktime 7 at several rates to see if I get clicking.

48k seems OK

96k seems OK

192k seems OK

Wouter1 commented 9 years ago

More testing.

Sampling with the EMU at 48k works fine, no clicks. No errors in the syslog. This is both with 48k and 96k project rate in audacity.

At the other (EMU) rates I these errors in the log

Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Oct 17 18:51:30 Wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7
Wouter1 commented 9 years ago

Did a test with the sync at 44k. I get this file

Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 487953 list 53 byte 132
Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 53 byte 60
Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 488145 list 41 byte 12
Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 40 byte 192
Oct 21 21:50:28 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 488337 list 28 byte 144
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 28 byte 72
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 488529 list 16 byte 36
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 15 byte 228
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 488721 list 3 byte 168
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 3 byte 96
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 488881 list 55 byte 48
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 54 byte 228
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 489073 list 42 byte 180
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 42 byte 108
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 489265 list 30 byte 60
Oct 21 21:50:29 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 29 byte 240
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 489457 list 17 byte 216
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 17 byte 132
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 489649 list 5 byte 84
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 5 byte 12
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 489809 list 56 byte 228
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 56 byte 144
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490001 list 44 byte 96
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 44 byte 24
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490193 list 31 byte 240
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 31 byte 180
Oct 21 21:50:30 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490385 list 19 byte 120
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 19 byte 48
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490577 list 6 byte 264
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 6 byte 180
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490737 list 58 byte 132
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 58 byte 60
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 490929 list 46 byte 12
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 45 byte 192
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 491121 list 33 byte 144
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 33 byte 72
Oct 21 21:50:31 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 491313 list 21 byte 36
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 20 byte 228
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 491505 list 8 byte 180
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 8 byte 96
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 491665 list 60 byte 48
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 59 byte 240
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 491857 list 47 byte 180
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 47 byte 108
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492049 list 35 byte 72
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 34 byte 264
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492241 list 22 byte 216
Oct 21 21:50:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 22 byte 132
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492433 list 10 byte 84
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 10 byte 12
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492593 list 61 byte 228
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 61 byte 144
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492785 list 49 byte 96
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 49 byte 24
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 492977 list 36 byte 252
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Oct 21 21:50:33 --- last message repeated 63 times ---
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 36 byte 180
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 493169 list 24 byte 168
Oct 21 21:50:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 24 byte 48
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 493361 list 12 byte 36
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 11 byte 192
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 493521 list 63 byte 180
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 63 byte 60
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 493713 list 51 byte 48
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 50 byte 216
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 493905 list 38 byte 204
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 38 byte 84
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 494097 list 26 byte 72
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 25 byte 228
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 494289 list 13 byte 216
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 13 byte 96
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 494481 list 1 byte 84
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 0 byte 240
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 494641 list 52 byte 228
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 52 byte 132
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 494833 list 40 byte 120
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 39 byte 264
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495025 list 27 byte 252
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 27 byte 144
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495217 list 15 byte 132
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 15 byte 12
Oct 21 21:50:35 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495409 list 2 byte 264
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 2 byte 168
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495569 list 54 byte 156
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 54 byte 36
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495761 list 42 byte 24
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 41 byte 180
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 495953 list 29 byte 168
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 29 byte 48
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 496145 list 17 byte 36
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 16 byte 192
Oct 21 21:50:36 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 496337 list 4 byte 180
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 4 byte 60
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 496497 list 56 byte 72
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 55 byte 216
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 496689 list 43 byte 204
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 43 byte 96
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 496881 list 31 byte 84
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 30 byte 228
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 497073 list 18 byte 216
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 18 byte 96
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 497265 list 6 byte 108
Oct 21 21:50:37 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 5 byte 264
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 497425 list 57 byte 252
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 57 byte 132
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 497617 list 45 byte 120
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 44 byte 264
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 497809 list 32 byte 252
Oct 21 21:50:38 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 32 byte 144

Running the script I get

wrap diff 72
wrap diff 72
wrap diff 72
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 60
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 84
wrap diff 72
wrap diff 72
wrap diff 120
wrap diff 120
wrap diff 120
wrap diff 120
wrap diff 96
wrap diff 108
wrap diff 120
wrap diff 96
wrap diff 120
wrap diff 120
wrap diff 120
wrap diff 108
wrap diff 120
wrap diff 120
wrap diff 108
Wouter1 commented 9 years ago

Here's some logs with older logging of per-call logs of read and write

Oct 21 22:07:33 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1513411 at 1514871577582
Oct 21 22:07:33 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513347 at 1514871611168
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1513443 at 1514903719214
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513379 at 1514903761496
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1513475 at 1514935565572
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513411 at 1514935605729
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1513507 at 1514967565789
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 1513443 list 52 byte 180
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513443 at 1514967605616
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1513539 at 1514999578118
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513475 at 1514999610027
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 52 byte 72
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1513571 at 1515031572504
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513507 at 1515031600873
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1513603 at 1515063706641
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513539 at 1515063746398
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1513635 at 1515095689868
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513571 at 1515095730800
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1513667 at 1515127596701
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513603 at 1515127635734
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1513699 at 1515159714645
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 1513635 list 40 byte 72
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513635 at 1515159757817
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1513731 at 1515191599523
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513667 at 1515191636110
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 39 byte 228
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1513763 at 1515223650112
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513699 at 1515223688443
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1513795 at 1515255654909
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513731 at 1515255695827
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1513827 at 1515287740543
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513763 at 1515287785049
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1513859 at 1515319624369
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513795 at 1515319660779
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1513891 at 1515351731115
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 1513827 list 27 byte 216
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513827 at 1515351776374
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1513923 at 1515383666496
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513859 at 1515383703955
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 3 at frame 27 byte 96
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1513955 at 1515415580406
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513891 at 1515415613982
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1513987 at 1515447585837
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513923 at 1515447627919
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1514019 at 1515479655473
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513955 at 1515479696456
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 1514051 at 1515511704756
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1513987 at 1515511746566
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 3 in framenr 1514083 at 1515543722081
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 1514019 list 15 byte 84
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1514019 at 1515543768274
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 1514115 at 1515575598931
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: WRITE framenr 1514051 at 1515575638734
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 14 byte 228
Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: RingBufferDefault<USBInputRing>::push warning. Ignoring overrun
Wouter1 commented 9 years ago

You can now check the wraps, eg take Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 39 byte 228

Search back who read list 1 ->

Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 1513635 at 1515095689868 Find a write wrap for that same framenr:

Oct 21 22:07:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 1513635 list 40 byte 72 So yes, read and write both contain a wrap in usb framenr 1513635 but the wrap is in a different list inside that framer.

Wouter1 commented 9 years ago

The difference above is too large but I think not so large that it would break.

HALLab tool still is working. I checked the actual data rate at 44100. It shows values jumping between 44097.99 and 44098.18. Seems all fine and suggests we're in sync.

At 96k it hovers around 95999.91 and 95994.77. Looks ok

Wouter1 commented 9 years ago

Checking some more, at 96k

It starts nice in sync e.g.

Oct 21 22:22:32 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 2411450 at 2412910770573
Oct 21 22:22:32 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 2411450 list 51 byte 180
Oct 21 22:22:32 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 51 byte 96

1sec later

Oct 21 22:22:33 Wouters-MacBook-Pro kernel[0]: READ framelist 2 in framenr 2413146 at 2414606597312
Oct 21 22:22:33 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 2413146 list 3 byte 132
Oct 21 22:22:33 Wouters-MacBook-Pro kernel[0]: input wrap in list 2 at frame 3 byte 48

2 sec

Oct 21 22:22:34 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 2414234 at 2415694749761
Oct 21 22:22:34 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 2414234 list 56 byte 180
Oct 21 22:22:34 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 56 byte 108

is ok

3sec

Oct 21 22:22:35 Wouters-MacBook-Pro kernel[0]: READ framelist 1 in framenr 2415162 at 2416622729392
Oct 21 22:22:35 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 2415162 list 58 byte 96
Oct 21 22:22:35 Wouters-MacBook-Pro kernel[0]: input wrap in list 1 at frame 58 byte 12

ok

Oct 21 22:22:42 Wouters-MacBook-Pro kernel[0]: READ framelist 0 in framenr 2422042 at 2423502676373
Oct 21 22:22:42 Wouters-MacBook-Pro kernel[0]: write wrap in usbframe 2422042 list 45 byte 36
Oct 21 22:22:42 Wouters-MacBook-Pro kernel[0]: input wrap in list 0 at frame 44 byte 228

mm, maybe ok

Wouter1 commented 9 years ago

No it's not ok, check #33 , numbers should be lower for 96k. already at the start the difference is about 80 where we had less than 20 before.

Wouter1 commented 8 years ago

I'm a bit puzzled about the title of this issue now.

Originally it was

USB in core changed wrt READ error e00002ef on Yosemite

but only the first few posts are about that.

I will change the title as it mostly is about sync issues with El Capitan. Maybe these were thought related.

Wouter1 commented 8 years ago

For debugging, I print the distance between the read head and the actual input stream position.

enable this line in convertInputSamples

    debugIOLogC("+convertInputSamples coreaudio distance %d", firstSampleFrame + numSampleFrames - getCurrentSampleFrame(0));

I use control panel to set the EMU to 96k. Then I run audacity and sample some audio at 96k

It shows that the sync is failing here.

So the datastream from the EMU is coming in all right, and the internal sync is fully working. However OSX coreaudio is requesting the data at the wrong moments. It seems it is ignoring our sync info.

Here is what the distance should be (as in Mavericks): very close to 400 bytes:

Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -404
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -402
Nov 24 21:21:37 --- last message repeated 1 time ---
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -405
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -402
Nov 24 21:21:37 --- last message repeated 3 times ---
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -407
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -405
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -402
Nov 24 21:21:37 --- last message repeated 1 time ---
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -405
Nov 24 21:21:37 vlieland kernel[0]: +convertInputSamples coreaudio distance -402
Nov 24 21:21:37 --- last message repeated 1 time ---

This is what we actually get in El Capitan (using binary identical driver and just running the install script from the identical directory)

Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11883
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7962
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -406
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -409
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11879
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7962
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -406
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -404
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11884
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7959
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -409
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -405
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11879
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7957
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -410
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -404
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11883
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7959
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -409
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -406
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11883
Wouter1 commented 8 years ago

I need to check if the timing of USB callbacks changed in El Capitan

Wouter1 commented 8 years ago

getCurrentSampleframe is using -4000000ns offset. At 96k that equals to 384 samples (close to the 400 we have in mavericks).

Wouter1 commented 8 years ago

Enable this in notifyWrap in EMUUSBAudioEngine for checking

    debugIOLogC("UsbInputRing::notifyWrap %lld",wrapTimeNs);
Wouter1 commented 8 years ago

The wrap times as reported to osX seem good.

These are the raw reported wrap times from a test run with audacity

data = {1936282412898, 1936410473463, 1936538418171, 1936666498135, 
   1936794472937, 1936922418526, 1937050418742, 1937178461914, 
   1937306402262, 1937434474159, 1937562401997, 1937690486165, 
   1937818402212, 1937946476136, 1938074413930, 1938202418071, 
   1938330433237, 1938458428614, 1938586899849, 1938714928106, 
   1938842931597, 1938970968085, 1939098929906, 1939226990364, 
   1939354905548, 1939482964487, 1939610977383, 1939738921701, 
   1939866974518, 1939994977186, 1940122932595, 1940250965408, 
   1940378964548, 1940506982316, 1940634982689, 1940762989953, 
   1940890983651, 1941018970164, 1941146917928, 1941274982975, 
   1941402990500, 1941530918858, 1941658918944, 1941786983405, 
   1941914935096, 1942042982547, 1942170971670, 1942298969819, 
   1942426977502, 1942554905214, 1942682981125, 1942810905459, 
   1942938931349, 1943066922280, 1943194974441, 1943323029033, 
   1943450930694, 1943578931946, 1943706970843, 1943834921876, 
   1943962926265, 1944090917971, 1944218968476, 1944346929007, 
   1944474982102, 1944602899916, 1944730988791, 1944858901116, 
   1944986935267, 1945114915540, 1945242971720, 1945370961159, 
   1945498927490, 1945626977053, 1945754905514, 1945882981854, 
   1946010939564, 1946138973745, 1946266981931, 1946394918872, 
   1946522905183, 1946650931050, 1946778932355, 1946906972097, 
   1947034974446, 1947162928774, 1947290977763, 1947418971666, 
   1947546981271, 1947674916586, 1947802909101, 1947930971900, 
   1948058919180, 1948186910500, 1948315029425, 1948442976985, 
   1948570905358, 1948698971675, 1948826911434, 1948954917892, 
   1949082905772, 1949210971385, 1949338966602, 1949466932515, 
   1949594982808, 1949722982660, 1949850917393, 1949978962835, 
   1950106980211, 1950234933770, 1950362973023, 1950490974771, 
   1950618927026, 1950746982792, 1950874989760, 1951002905538, 
   1951130990181, 1951258907472, 1951386964074, 1951514919191, 
   1951642961784, 1951770971749, 1951898940193, 1952026975332, 
   1952154987476, 1952282975286, 1952410934167, 1952538985182, 
   1952666973232, 1952794979213, 1952922966900, 1953051485707, 
   1953179490240, 1953307414699, 1953435475688, 1953563414680, 
   1953691473376, 1953819411196, 1953947488091, 1954075402523, 
   1954203402367, 1954331417997, 1954459432608, 1954587416292, 
   1954715486778, 1954843411545, 1954971472659, 1955099472679, 
   1955227486358, 1955355402446, 1955483486332, 1955611402467, 
   1955739476465, 1955867486350, 1955995486580, 1956123487386, 
   1956251487094, 1956379486469, 1956507486820, 1956635457694, 
   1956763486627, 1956891474107, 1957019486499, 1957147497206, 
   1957275414002, 1957403418267, 1957531488858, 1957659462358, 
   1957787486872, 1957915499703, 1958043461227, 1958171473015, 
   1958299486578, 1958427473281, 1958555418043, 1958683486185, 
   1958811415029, 1958939461963, 1959067402195, 1959195473586, 
   1959323414251, 1959451486577, 1959579402003, 1959707486171, 
   1959835402021, 1959963486394, 1960091527119, 1960219487068, 
   1960347486983, 1960475473608, 1960603414518, 1960731486948, 
   1960859498220, 1960987462315, 1961115403048, 1961243487024, 
   1961371456166, 1961499473392, 1961627486722};

untitled-1

Wouter1 commented 8 years ago

Maybe calling setClockIsStable(TRUE); is doing somethign (instead of setClockIsStable(FALSE) ?

Wouter1 commented 8 years ago

No, makes no difference

Wouter1 commented 8 years ago

The timeStamp deltas are 128000000, which corresponds to a buffer size of 12288 frames. If I remember correctly that is ok

Wouter1 commented 8 years ago

The calls to convertInputSamples are in fact highly regular , with this pattern of 4

Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 11884
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance 7959
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -409
Nov 24 21:10:25 wouters-MBP kernel[0]: +convertInputSamples coreaudio distance -405

The first two are way off, the last two are ok

Wouter1 commented 8 years ago

Sounds like something structurally failing in the flow through the USB input pipe. Maybe the data comes in but not as a smooth stream?

Wouter1 commented 8 years ago

If I do this in convertInput Samples

debugIOLog("+convertInputSamples requested,actual= %d %d", firstSampleFrame , getCurrentSampleFrame(0));

I get

Nov 27 19:57:12 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 11934 4149
Nov 27 19:57:12 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 0 4151
Nov 27 19:57:12 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 3742 8249
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 7838 53
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 11934 4147
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 0 4149
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 3742 8243
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 7838 58
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 11934 4151
Nov 27 19:57:13 wouters-MBP kernel[0]: +convertInputSamples requested,actual= 0 4152
Wouter1 commented 8 years ago

When recording at 96k directly after startup, Incoming samples blocks of ~3900 samples appear repeatedly in the final recorded audio. But the pitch and overall speed is the same. So data is being dropped. Either it never makes it to the buffer (but from the received callbacks, it seems it does), or the converter is aborted. I will check the converter calls first

Wouter1 commented 8 years ago

Just as a shot in the dark I ignored OSX's start position and just deliver bytes as available.

Then it all works perfect, at least for 10 seconds for the left channel at 96k (not longer tested).

Wouter1 commented 8 years ago

Enabled some more debug info. here's what seems the cause

Nov 27 21:11:34 wouters-MBP kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Nov 27 21:11:34 --- last message repeated 127 times ---
Nov 27 21:11:34 wouters-MBP kernel[0]: ++EMUUSBAudioEngine[<ptr>]::performEngineStart result is 0x0 direction 1
Nov 27 21:11:34 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 21:11:34 --- last message repeated 4 times ---
Nov 27 21:11:34 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 0
Nov 27 21:11:34 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 21:11:35 --- last message repeated 3 times ---
Nov 27 21:11:35 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 1
Nov 27 21:11:35 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 21:11:35 --- last message repeated 3 times ---
Nov 27 21:11:35 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 2
Nov 27 21:11:35 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 21:11:35 --- last message repeated 3 times ---
Nov 27 21:11:35 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 3
Nov 27 21:11:35 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 21:11:35 --- last message repeated 3 times ---
Nov 27 21:11:35 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 4
Nov 27 21:11:35 wouters-MBP kernel[0]: LowPassFilter::filter init 128000000
Nov 27 21:11:35 wouters-MBP kernel[0]: USB timer started
Nov 27 21:11:35 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 2563109804812
Nov 27 21:11:35 wouters-MBP kernel[0]: +convertInputSamples firstSampleFrame=12178, numSampleFrames=110 byteorder=1 bitWidth=24 numchannels=2 latency= 18450
Nov 27 21:11:35 wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP

OSX in El Capitan immediately starts reading the input buffer, starting with 110 samples at the END of the buffer.

Since the read pointer is set at 0 initially (and not somewhere halfway or at the end), this causes a seek and a jump over the actual write head.

Wouter1 commented 8 years ago

Here's how OSX responds in Mavericks

Nov 27 21:19:08 vlieland kernel[0]: frameSizeQueue empty, guessing some queue size. May need fix..
Nov 27 21:19:08 --- last message repeated 63 times ---
Nov 27 21:19:08 vlieland kernel[0]: warning way-out ring wrap position
Nov 27 21:19:08 --- last message repeated 2 times ---
Nov 27 21:19:08 vlieland kernel[0]: UsbInputRing::notifyWrap 0
Nov 27 21:19:08 vlieland kernel[0]: warning way-out ring wrap position
Nov 27 21:19:08 --- last message repeated 3 times ---
Nov 27 21:19:08 vlieland kernel[0]: UsbInputRing::notifyWrap 1
Nov 27 21:19:08 vlieland kernel[0]: warning way-out ring wrap position
Nov 27 21:19:09 --- last message repeated 3 times ---
Nov 27 21:19:09 vlieland kernel[0]: UsbInputRing::notifyWrap 2
Nov 27 21:19:09 vlieland kernel[0]: warning way-out ring wrap position
Nov 27 21:19:09 --- last message repeated 3 times ---
Nov 27 21:19:09 vlieland kernel[0]: UsbInputRing::notifyWrap 3
Nov 27 21:19:09 vlieland kernel[0]: warning way-out ring wrap position
Nov 27 21:19:09 --- last message repeated 3 times ---
Nov 27 21:19:09 vlieland kernel[0]: UsbInputRing::notifyWrap 4
Nov 27 21:19:09 vlieland kernel[0]: LowPassFilter::filter init 128000000
Nov 27 21:19:09 vlieland kernel[0]: USB timer started
Nov 27 21:19:09 vlieland kernel[0]: UsbInputRing::notifyWrap 121076512698
Nov 27 21:19:09 vlieland kernel[0]: +convertInputSamples firstSampleFrame=502, numSampleFrames=29 byteorder=1 bitWidth=24 numchannels=2 latency= 18
Nov 27 21:19:09 vlieland kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Nov 27 21:19:09 vlieland kernel[0]: **** Output Hiccup!! firstSampleFrame=1366, nextExpectedOutputFrame=0 bufsize=73728
Nov 27 21:19:09 vlieland kernel[0]: +convertInputSamples firstSampleFrame=834, numSampleFrames=29 byteorder=1 bitWidth=24 numchannels=2 latency= 2016
Nov 27 21:19:09 vlieland kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Wouter1 commented 8 years ago

So the big difference is the firstSampleFrame after the first notifyWrap.

Wouter1 commented 8 years ago

The failing seek causes the problem because it just does not set the read position to the undefined position. We just print the an error and then continue reading the requested number of bytes from the CURRENT instead of actual position. That removes samples from the ring buffer that should still be there, AND advances the actual position. Then next, time, the seek again fails, because the actual position has been already progressed further.

A simple idea would be to just put the read head somewhere at the end. In Mavericks that probably is ok as it causes just a small seek back to the start. In El Capitan it avoids this underrun issue.

Wouter1 commented 8 years ago

I need to understand the rationale for the 110 bytes before the end start position of El Capitan to work around this properly.

Wouter1 commented 8 years ago

Maybe here

http://www.opensource.apple.com/source/IOAudioFamily/IOAudioFamily-165.4.3/IOAudioEngine.cpp

I see some wakeUpOffset value.

        // Total wakeup interval now calculated at 90% minus 125us

        wakeupOffset = (numSampleFrames / reserved->mixClipOverhead) + sampleOffset;

        if (wakeupOffset <= startingPosition->fSampleFrame) {
            wakeupPosition = *startingPosition;
            wakeupPosition.fSampleFrame -= wakeupOffset;
        } else {
            wakeupPosition.fLoopCount = startingPosition->fLoopCount - 1;
            wakeupPosition.fSampleFrame = numSampleFramesPerBuffer - (wakeupOffset - startingPosition->fSampleFrame);
        }

I can't understand why I have to reverse engineer this kind of stuff... Anyway glad that they still have their source code online

Wouter1 commented 8 years ago

90% of 12288 samples = 11059 which is already before the actual start point.

Wouter1 commented 8 years ago

This here

http://www.opensource.apple.com/source/IOAudioFamily/IOAudioFamily-200.6/IOAudioEngine.cpp

is newer.

And there also is a 203.3 version that maybe is newer still.

But the code about wakeUpOffset is the same it seems.

Wouter1 commented 8 years ago

Their comment "90% - 125us" is just bogus. Their code computes something very different based on the size of the ring buffer, mixClipOverhead and sampleOffset.

Wouter1 commented 8 years ago

Just did another run in El Capitan. Now I see this

 27 22:06:17 wouters-MBP kernel[0]: ++EMUUSBAudioEngine[<ptr>]::performEngineStart result is 0x0 direction 1
Nov 27 22:06:17 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 22:06:17 --- last message repeated 1 time ---
Nov 27 22:06:17 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 0
Nov 27 22:06:17 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 22:06:17 --- last message repeated 3 times ---
Nov 27 22:06:17 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 1
Nov 27 22:06:17 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 22:06:17 --- last message repeated 3 times ---
Nov 27 22:06:17 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 2
Nov 27 22:06:17 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 22:06:17 --- last message repeated 3 times ---
Nov 27 22:06:17 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 3
Nov 27 22:06:17 wouters-MBP kernel[0]: warning way-out ring wrap position
Nov 27 22:06:18 --- last message repeated 3 times ---
Nov 27 22:06:18 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 4
Nov 27 22:06:18 wouters-MBP kernel[0]: LowPassFilter::filter init 128000000
Nov 27 22:06:18 wouters-MBP kernel[0]: USB timer started
Nov 27 22:06:18 wouters-MBP kernel[0]: UsbInputRing::notifyWrap 2612509847734
Nov 27 22:06:18 wouters-MBP kernel[0]: +convertInputSamples firstSampleFrame=2822, numSampleFrames=4096 byteorder=1 bitWidth=24 numchannels=2 latency= 36370
Nov 27 22:06:18 wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples READ HICKUP
Nov 27 22:06:18 wouters-MBP kernel[0]: EMUUSBAudioEngine::convertInputSamples err reading ring: e00002e7

Apparently it's even different. It is just starting arbitrary postion?

Wouter1 commented 8 years ago

My analysis above about the cause is not correct. If the seek fails, it DOES set the requested position but it returns kIOUnderrun as warning which results in the reAD_HICKUP message.

Wouter1 commented 8 years ago

That last result firstSampleFrame=2822 is particularly disturbing. All previous tests above indicated that Capitan was picking safe places to start reading. However this seems not a safe place, as right after the first wrap the head is at 0.

Wouter1 commented 8 years ago

checking a number of these first calls to convertInputSamples

Nov 28 10:15:48 wouters-MBP kernel[0]: +convertInputSamples firstSampleFrame=12054, numSampleFrames=234 curr=18450 avail= 18450
Nov 28 10:16:58 wouters-MBP kernel[0]: +convertInputSamples firstSampleFrame=12078, numSampleFrames=210 curr=18432 avail= 18432
Nov 28 10:17:36 wouters-MBP kernel[0]: +convertInputSamples firstSampleFrame=12038, numSampleFrames=250 curr=18450 avail= 18450
Wouter1 commented 8 years ago

We see consistent start again at the end. The cur=18450 is in bytes, so it's frame 3075. In fact no problem. The problem is that the behaviour is different each time.