Hacker News new | ask | show | jobs
by flavor8 3387 days ago
Do you have to jump through Jack shenanigans to get it working? Or does it just work, nicely?
2 comments

I don't care what OS your on. When you start talking about latency it is all a nightmare. If latency isn't an issue then Pulse Audio works totally fine.

I actually like Jack when it is concerning latency and think it is a good system. BUT it is a pain.

I used 2 separate sound cards. One is a Pro level I/O breakout box that Jack controls and the on board sound card is controlled by PulseAudio.

I have no issues with latency on MacOS with absolutely zero configuration. It's one of the reasons I won't switch from MacOS to linux.
Likewise, none of my audio devices have required special drivers for Mac, and I can easily get 3ms latency by just plugging it in and making sure buffer size it at a minimum. I produced on Windows forever and didn't believe there would have been a noticeable difference switching to OSX.
I find bout of your claims hard to believe as OSX has a sound architecture similar to PulseAudio.

Are the 3ms measured or is it just what OSX tells you ?

A buffer of 3ms at 48kHz holds 144 samples. That means shoveling 144 fresh samples (per channel, ofc) ~333 times a second and sending them to the sound card immediately. That may be possible if your sound card supports resampling (and minor magic) and only without a sound server (OSX uses one). Either that or you have an impressive cpu. Feel free to correct me at any point.

edit: PS This is only the program->sound_card part. Programs themselves add a ton of latency and sound cards add to it as well. In reality even 10ms is beyond perfect conditions.

The problem isn't the CPU, the problem is the OS going out for lunch, and then designs that assume the OS will go our for lunch (i.e. deep buffers everywhere)... The CPU can move data between devices with sub-microsecond latencies...
I thought I'd try and measure this at some resolution (since my phone can capture at 120 FPS, I should be able to see 8 millisecond increments in a video).

Stepping frame by frame through the video I took (https://youtu.be/IHmC-q_iPiE) at the point where I press the key to sound a note, there's a 4 to 5 frame latency until I can visually see the speaker membrane move, so that's about 33 to 41 milliseconds.

Bitwig is set to 64 samples (1.45 ms) latency.

I have never in my life seen a Mac out perform a Window machine when it comes to latency and professional audio recording. When it comes to $100-$200 parts it comes to drivers and sometimes Mac wins and sometimes Windows wins. I have a bias that goes beyond Pro-Tools but Pro-Tools was a thing because Apple hardware was not capable of producing Professional level recording without spending thousands of dollars in their proprietary hardware.

Since Windows XP Windows and Audio Latency has not been an issue and both platforms require a lot of end user work to get lower and lower latency. The issue is really only significant for recording audio and not as much when doing live audio. Any modern platforms latency light years ahead of 2000 audio production.

The idea that Mac is better for audio or video because of the OS is marketing and not based on real life professional use of the platforms.

> Since Windows XP Windows and Audio Latency has not been an issue

Core Audio literally-just-works with low latency and aggregated devices.

DAWs on Windows still either use MME/DX for north of 50ms, often 100ms+ latency or ASIO (exclusive device usage and no aggregation, assuming your hardware even has ASIO drivers because ASIO4ALL is at best rickety) on Windows.

I don't know what you think is going on with OS X, but I suggest re-evaluating your assumptions.

All decent hardware has ASIO drivers under Windows.

The problem there, being a closed environment where the manufacturer dictates when the product must die, is rather the drivers life. If they don't update the driver your pricey gear turns into a doorstop overnight. Case in point: Tascam US122 audio interface. Under Linux I can still use it; far from being the best around but it works. Under Windows it became unusable when they stopped supporting it years ago.

... but with ASIO, it is quite possible to get 3ms latency in Windows at 96kHz. I agree it would be nice if the device weren't locked up by the DAW using ASIO, or if updated driver support weren't so hit-and miss, but it still works exceptionally well for what it is. It also makes Windows completely viable as a production platform.
> low latency and aggregated devices

Hang on, no way, you take one or the other. Aggregating devices adds a huge chunk of latency and, frankly, I don't think is that exciting a feature anyway. Maybe for your specific setup, but generally speaking you should buy gear that suits your needs, rather than try to cobble something together from existing devices.

Having used OSX and Win7 (on the same machine) I would agree CoreAudio is less hassle and definitely lower latency - IIRC, OSX reported just over half the latency of W7 on the same setup.

That said, I'm not sure what you think is going on with ASIO, since any class compliant USB audio interface has compatible drivers inherently..

ASIO isn't always exclusive usage. My Focusrite Scarlett 2i2's own ASIO driver can run alongside other audio just fine.
> Since Windows XP Windows and Audio Latency has not been an issue and both platforms require a lot of end user work to get lower and lower latency.

As the other commentor said, Core Audio "just works" for low latency. MIDI is great as well. Windows still needs third party ASIO drivers.

If a USB MIDI controller gets unplugged during a set on Windows, I need to restart Ableton. On Mac, you just plug it back in and it picks up immediately, even the audio interface will do that.

> The issue is really only significant for recording audio and not as much when doing live audio.

What? Latency is a non-issue for recording audio, and A HUGE ISSUE for live usage. Any half-decent DAW supports latency compensation on non-realtime tracks. You can record a vocal track when every other instrument has 10s of seconds of latency, as long as your monitoring for the vocals has none. When playing live, every single track cannot have latency.

Edit, hell many of the best audio interfaces don't even support Windows as a platform.

Well we will disagree 100% I don't think we are talking the same thing. BUT latency (aka delay) in audio recording is a HUGE deal. When someone is playing to a click track and previous recorded pieces and have that person perform with that delay makes it even worse. It's impact on the ability for the drummer to perform has made it default to record drums first. The difference between on beat, before beat or after beat is very significant.

Give this a read - https://www.presonus.com/community/Learn/The-Truth-About-Dig...

Live audio if you have above the human perception of latency you are in the realm of 20 or 30 ms.

> Edit, hell many of the best audio interfaces don't even support Windows as a platform.

What can I say marketing works and this perceived Mac superior creative types tool is believed by most people. In actual Professional world there are plenty of Windows based studios that won Emmy's, Oscars and Grammys.

I then question your need for low latency? OS X and MacOS requires just as much work to get to the lowest latency and your handicapped if your have an Apple laptop. Your latency will be about the same as PusleAudio on Linux if you use default OS X MacOS settings. In most real world settings Windows will get a lower latency mostly due to better hardware on a Professional setup compared to the less then top end audio of Apple. Apple machine require a lot of engineering in the software to achieve low latency.

Here is the focusrite help page dealing with latency and what you must turn off for recording. https://support.focusrite.com/hc/en-gb/articles/207546515-Op...

Those links are either out of date or completely incorrect. None of this has ever been necessary for me on a Mac.

Focusrite doesn't even offer Mac drivers for most of their products, as the support is built in, for example[0], so I don't know why it's advising you to update your drivers.

[0] https://us.focusrite.com/downloads?product=Scarlett+2i4

Seriously. A friend brought over his 2i4 for a project and my Mac was able to plug-and-play with it at 5ms latency.

That page is "dissuade people from calling tech support", not the reality of how audio actually works on OS X.

There is no way you have 5ms latency with a USB port. Your measuring it wrong. USB audio devices have built in buffers that add to your 5ms latency.

http://www.soundonsound.com/sound-advice/q-which-audio-inter...

yes its 2009 but it is still sound science.

On Linux Mint - install, configure your inputs, select your soundcard/device, done. It will work fine with Alsa.

It will also support JACK but for quickly getting up and running it's about the simplest DAW I've setup on Linux configuration wise.

Not open source but I give them lots of kudos for supporting Linux from the start.