|
From: Brian H. <wo...@4a...> - 2021-02-09 13:53:43
|
On 2/8/21 9:44 PM, Jonathan Woithe wrote: > Hi Brian > > As others have said, the AudioFire 12 (AF12) requires firmware 4.8 for use > with FFADO. I am not sure if the same requirement exists for the AF4 > (AudioFire 4) [1] but I would assume so until tests prove otherwise. If > firmware is an issue then FFADO will not get as far as starting the > streaming. Thus if you see xruns in a particular firmware version then you > can conclude that FFADO is happy with that version of the firmware. > > Firmware version 4.8 is prevalent when AudioFire (AF) devices are used with > FFADO. Yeah, I kept seeing "use an older firmware" but never anything about 4.8 specifically. When I decided "screw it I'll try them all" is when I found my choices were pretty much 5.8 or 4.8. The AF4 somewhat worked with 5.8 and FFADO. But it was far from stable and couldn't run low latencies. Using the the 4.8 firmware I'm now running 48khz 16/2 rock solid. > This means one of two things: > 1. FFADO was not able to keep up with the incoming data stream from the > device (capture overrun), or > > 2. FFADO could not feed audio data to the device fast enough (playback > underrun). > > Usually (but not always) these can be addressed by careful tuning of the > system. I'm familiar with xruns. This is completely different behavior though. In this case the xrun wasn't being gracefully handled would crash jack. Probably FFADO not able to do something due to the newer firmware is my guess. > It should be noted that sometimes the problem is related to the firewire > card in use. Your ffado-diag output reports you have a firewire host > controller based on the "XIO2213A/B/XIO2221" chip. Thus it could be the > XIO2213A, the XIO2213B or the XIO2221. I don't know much about the last one > as it's not overly common. Of the other two, my understanding is that the > XIO2213B is a reasonable choice in this day and age. It is also about the > only viable option since the best possible PCIe cards (using the Agere/LSI > FW643E cards) are very difficult to find[2]. > > The XIO2213A did have some hardware issues, although I don't know if they > might affect the ability to use the AF4 at the settings you are targetting. > FFADO users have been able to use XIO2213A cards in the past, although > usually at more conservative settings (512 samples for example). > > I am not aware of any specific issues with the XIO2213B chips and FFADO > users have reported success with them, but I don't think anyone's taken them > down to 16 or 32 sample buffers. I'd have to pull the card to look at the chip, but StarTech says it's a B. I can believe that. Like I stated above I'm now running 16/2 rock solid. > The posted ffado-diag output indicated that you are using a PREEMPT kernel, > which as noted above is a good first step. You will however have to enable > threaded interrupts and utilise something like rtirq to prioritise > interrupts. Perhaps the best description of this (along with a bunch of > information about additional details such as CPU frequency scaling) can be > found at I'm currently running the liquorix kernel (testing as suggested by #ubuntustudio) which doesn't have threaded irq enabled by default. I was manually setting it but rebooted and forgot to. I need to fix that. (firewire is set to top priority for rtirq) That all being said even without theaded irq handling I'm still seeing rock solid low latency. This is amazing. > Finally, if you decide to pursue support for the ALSA AudioFire driver at > some point please use the ALSA project mailing lists. The ALSA drivers for > firewire devices are developed independently of the FFADO project. Nah, I have no interest in ALSA. FFADO appears to be way superior in every conceivable way. Thanks for all the help guys! -brian |