3 Finally figured it out. Update with all incredients for my secret low latency sauce
source | link

MyHow I FINALLY won my MIDI latency war (Cubase 7 x64, BabyFace interface, Win7 pro x64)

First, give yourhere's how I measured my real latency in milliseconds. Here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds. Zoom in if needed.
  • Move the sound file so the first peak (the sound of your finger hitting the keyboard) is positioned at 0.
  • Count the ticks between the sound of your finger hitting the key and the actual sound. If your MIDI produced sound peaks at 9 ticks between 0 and before 0.1 seconds, that's a 9ms latency. If the triggered sound shows up at 0.2 seconds, that is a 200ms latency, and so on.
  • NOTE: If you slowly press a key on your keyboard until you find the spot at which the sound is triggered, you may notice that this is not a fair test because the A-88, just like a real piano, has some smooth movement with no sound, then hits a bit more resistance and at this point the sound is triggered. Thus, the real trigger point for the sound on the A88 is between your finger hitting the key and the key bouncing back up after you hit it.

After doing everything below, Cubase 7.0.7 tells me I have a 21.33656 ms input latency and 21.5599 ms output latency, (which should be 4.88, under 5 ms). The The real measured latency, however, using the method above, is 8.5now around 4 ms.

For many of you thisanything under 10 ms will seem great, but compare thiscompared to playing a real acoustic piano as a professional musician and it will drive you nuts.

Here are some of the things I've done to get to 8.5 ms MIDI latencywas driving me nuts. How can I improve this?

Here's my 2016 Secret Low Latency Recipe!

  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88.
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard. (Built my own silent PC with a fanless power supply and SSD to remove ambient computer noises my microphone was picking up in recordings.)
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 biosBIOS.
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm).
  10. Latest Windows 7 Professional x64 updates.
  11. Install hotfix for "Sound is lost for a while on a MIDI device" in Windows 7/8. See Microsoft KB Article 2919139.
  12. Update display drivers.
  13. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  14. Onboard sound card configured"Speakers RME Babyface" set to be the standarddefault playback device in the Windows Sound settings. Also triedFor this to show up, on Fireface USB Settings, set WDM Devices to at least 1. Try disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  15. Change Windows power management to High Performance.
  16. Disable all background programs not needed for DAW.
  17. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  18. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  19. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  20. Change the sample rate in Cubase Project settings tofrom 44.1MHz1 kHz to 96.000 kHz.
  21. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  22. InWith Cubase not running, in Fireface USB Settings (RME icon in Windows tray), change clock mode to 96000 Hz and clock source Internal. 44100 Hz will be double the latency.
  23. In Fireface USB Settings (RME icon in Windows tray) change buffer size to 48 samples (lowest possible). Good interfaces like the Babyface let you get down to at least 48 samples. 
  24. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  25. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  26. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  27. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  28. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  29. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  30. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.
  31. From a command prompt as administrator, run "chkdsk" to make sure your file structure has no problems.
  32. From a command prompt as administrator, run "sfc /SCANNOW" to check Windows system file integrity.
  33. Scan your computer with Malwarebytes and Spybot Search and Destroy. Make sure your system is clean. If it isn't, back up to external disk then re-install the OS from the original media.
  34. Remove antivirus and any other programs that run in the background which you don't need using Revo Uninstaller.

If you are getting a real MIDI performance latency (using my method for checking that above) that is better, please let us know your set up!

My MIDI latency war (Cubase 7 x64, BabyFace interface, Win7 pro x64)

First, give your real latency in milliseconds. Here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds. Zoom in if needed.
  • Move the sound file so the first peak (the sound of your finger hitting the keyboard) is positioned at 0.
  • Count the ticks between the sound of your finger hitting the key and the actual sound. If your MIDI produced sound peaks at 9 ticks between 0 and before 0.1 seconds, that's a 9ms latency. If the triggered sound shows up at 0.2 seconds, that is a 200ms latency, and so on.

Cubase 7.0.7 tells me I have a 2.33 ms input latency and 2.55 ms output latency, (which should be 4.88, under 5 ms). The real latency, however, using the method above, is 8.5 ms.

For many of you this will seem great, but compare this to playing a real acoustic piano as a professional musician and it will drive you nuts.

Here are some of the things I've done to get to 8.5 ms MIDI latency. How can I improve this?

  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard.
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 bios
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm)
  10. Latest Windows 7 Professional x64 updates.
  11. Install hotfix for "Sound is lost for a while on a MIDI device" in Windows 7/8. See Microsoft KB Article 2919139
  12. Update display drivers.
  13. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  14. Onboard sound card configured to be the standard playback device in the Windows Sound settings. Also tried disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  15. Change Windows power management to High Performance.
  16. Disable all background programs not needed for DAW.
  17. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  18. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  19. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  20. Change the sample rate in Cubase Project settings to 44.1MHz.
  21. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  22. In Fireface USB Settings (RME icon in Windows tray), change buffer size to 48 samples (lowest possible).
  23. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  24. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  25. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  26. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  27. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  28. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  29. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.

If you are getting a real MIDI performance latency (using my method for checking that above) that is better, please let us know your set up!

How I FINALLY won my MIDI latency war (Cubase 7 x64, BabyFace interface, Win7 pro x64)

First, here's how I measured my real latency in milliseconds:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds. Zoom in if needed.
  • Move the sound file so the first peak (the sound of your finger hitting the keyboard) is positioned at 0.
  • Count the ticks between the sound of your finger hitting the key and the actual sound. If your MIDI produced sound peaks at 9 ticks between 0 and before 0.1 seconds, that's a 9ms latency. If the triggered sound shows up at 0.2 seconds, that is a 200ms latency, and so on.
  • NOTE: If you slowly press a key on your keyboard until you find the spot at which the sound is triggered, you may notice that this is not a fair test because the A-88, just like a real piano, has some smooth movement with no sound, then hits a bit more resistance and at this point the sound is triggered. Thus, the real trigger point for the sound on the A88 is between your finger hitting the key and the key bouncing back up after you hit it.

After doing everything below, Cubase 7.0.7 tells me I have a 1.656 ms input latency and 1.99 ms output latency. The real measured latency using the method above, is now around 4 ms.

For many of you anything under 10 ms will seem great, but compared to playing a real acoustic piano as a professional musician 8.5 ms was driving me nuts.

Here's my 2016 Secret Low Latency Recipe!

  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88.
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard. (Built my own silent PC with a fanless power supply and SSD to remove ambient computer noises my microphone was picking up in recordings.)
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 BIOS.
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm).
  10. Latest Windows 7 Professional x64 updates.
  11. Install hotfix for "Sound is lost for a while on a MIDI device" in Windows 7/8. See Microsoft KB Article 2919139.
  12. Update display drivers.
  13. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  14. "Speakers RME Babyface" set to be the default playback device in the Windows Sound settings. For this to show up, on Fireface USB Settings, set WDM Devices to at least 1. Try disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  15. Change Windows power management to High Performance.
  16. Disable all background programs not needed for DAW.
  17. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  18. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  19. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  20. Change the sample rate in Cubase Project settings from 44.1 kHz to 96.000 kHz.
  21. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  22. With Cubase not running, in Fireface USB Settings (RME icon in Windows tray), change clock mode to 96000 Hz and clock source Internal. 44100 Hz will be double the latency.
  23. In Fireface USB Settings (RME icon in Windows tray) change buffer size to 48 samples (lowest possible). Good interfaces like the Babyface let you get down to at least 48 samples. 
  24. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/)
  25. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  26. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  27. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  28. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  29. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  30. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.
  31. From a command prompt as administrator, run "chkdsk" to make sure your file structure has no problems.
  32. From a command prompt as administrator, run "sfc /SCANNOW" to check Windows system file integrity.
  33. Scan your computer with Malwarebytes and Spybot Search and Destroy. Make sure your system is clean. If it isn't, back up to external disk then re-install the OS from the original media.
  34. Remove antivirus and any other programs that run in the background which you don't need using Revo Uninstaller.
2 Clarified how to measure ms in Cubase, added a hotfix I tried from Microsoft for MIDI problems.
source | link

A personalMy MIDI latency war (Cubase 7 x64, BabyFace interface, Win7 pro x64)

First, here'sgive your real latency in milliseconds. Here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds, zoom. Zoom in, and count if needed.
  • Move the sound file so the first peak (the sound of your finger hitting the keyboard) is positioned at 0.
  • Count the ticks between the sound of your finger hitting the key and the actual sound. If your MIDI produced sound peaks at 9 ticks between 0 and before 0.1 seconds, that's a 9ms latency. If the triggered sound shows up at 0.2 seconds, that is a 200ms latency, and so on.
  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard.
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 bios
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm)
  10. Latest Windows 7 Professional x64 updates.
  11. Install hotfix for "Sound is lost for a while on a MIDI device" in Windows 7/8. See Microsoft KB Article 2919139
  12. Update display drivers.
  13. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  14. Onboard sound card configured to be the standard playback device in the Windows Sound settings. Also tried disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  15. Change Windows power management to High Performance.
  16. Disable all background programs not needed for DAW.
  17. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  18. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  19. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  20. Change the sample rate in Cubase Project settings to 44.1MHz.
  21. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  22. In Fireface USB Settings (RME icon in Windows tray), change buffer size to 48 samples (lowest possible).
  23. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  24. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  25. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  26. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  27. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  28. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  29. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.

A personal MIDI latency war

First, here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds, zoom in, and count the ticks between the sound of your finger hitting the key and the actual sound.
  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard.
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 bios
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm)
  10. Latest Windows 7 Professional x64 updates.
  11. Update display drivers.
  12. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  13. Onboard sound card configured to be the standard playback device in the Windows Sound settings. Also tried disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  14. Change Windows power management to High Performance.
  15. Disable all background programs not needed for DAW.
  16. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  17. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  18. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  19. Change the sample rate in Cubase Project settings to 44.1MHz.
  20. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  21. In Fireface USB Settings (RME icon in Windows tray), change buffer size to 48 samples (lowest possible).
  22. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  23. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  24. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  25. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  26. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  27. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  28. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.

My MIDI latency war (Cubase 7 x64, BabyFace interface, Win7 pro x64)

First, give your real latency in milliseconds. Here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds. Zoom in if needed.
  • Move the sound file so the first peak (the sound of your finger hitting the keyboard) is positioned at 0.
  • Count the ticks between the sound of your finger hitting the key and the actual sound. If your MIDI produced sound peaks at 9 ticks between 0 and before 0.1 seconds, that's a 9ms latency. If the triggered sound shows up at 0.2 seconds, that is a 200ms latency, and so on.
  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard.
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 bios
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm)
  10. Latest Windows 7 Professional x64 updates.
  11. Install hotfix for "Sound is lost for a while on a MIDI device" in Windows 7/8. See Microsoft KB Article 2919139
  12. Update display drivers.
  13. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  14. Onboard sound card configured to be the standard playback device in the Windows Sound settings. Also tried disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  15. Change Windows power management to High Performance.
  16. Disable all background programs not needed for DAW.
  17. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  18. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  19. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  20. Change the sample rate in Cubase Project settings to 44.1MHz.
  21. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  22. In Fireface USB Settings (RME icon in Windows tray), change buffer size to 48 samples (lowest possible).
  23. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  24. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  25. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  26. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  27. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  28. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  29. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.
1
source | link

A personal MIDI latency war

First, here's how to measure real MIDI performance latency:

  • Set up your system and DAW optimized as best you can.
  • Record, using another device like an iPhone, the sound of your finger hitting the keyboard followed by the sound of your virtual instrument.
  • Email yourself that recording and import the sound file into your DAW
  • Change the scale to show seconds, zoom in, and count the ticks between the sound of your finger hitting the key and the actual sound.

Cubase 7.0.7 tells me I have a 2.33 ms input latency and 2.55 ms output latency, (which should be 4.88, under 5 ms). The real latency, however, using the method above, is 8.5 ms.

For many of you this will seem great, but compare this to playing a real acoustic piano as a professional musician and it will drive you nuts.

Here are some of the things I've done to get to 8.5 ms MIDI latency. How can I improve this?

  1. Good MIDI keyboard. I'm using the Roland A-88 with 88 weighted keys.
  2. Good Interface. I'm using a Babyface, which is taking the MIDI output from the A-88
  3. Update Interface Driver/Firmware. Using latest drivers and firmware from RME. RME Fireface driver 1.089, Hardware revision 223.
  4. Good Hardware (Motherboard): Using a Gigabyte GA-X79-UD3 motherboard.
  5. Good Hardware (CPU): Intel Core i7 3820 @ 3.60GHz
  6. Good Hardware (Memory): 8 GB memory DDr3
  7. Good Hardware (HardDrive): 500GB SDD. ATA Samsung SSD 840 SCSI
  8. Update BIOS: Using latest gigabyte F20 bios
  9. Update chipset drivers: Detected and updated to latest from Intel (http://www.intel.com/content/www/us/en/support/detect.htm)
  10. Latest Windows 7 Professional x64 updates.
  11. Update display drivers.
  12. Use just Windows drivers for keyboard and mouse instead of 3rd party.
  13. Onboard sound card configured to be the standard playback device in the Windows Sound settings. Also tried disabling all but "RME Babyface" in Windows device manager under "Sound, video and game controllers"
  14. Change Windows power management to High Performance.
  15. Disable all background programs not needed for DAW.
  16. Disable Hyper-Threading in BIOS (It can have a negative impact on performance).
  17. Disable TurboBoost in BIOS. (Disable any other power-saving and dynamic performance options for your CPU like Enhanced Intel SpeedStep (EIST), AMD Cool 'n' Quiet, or AMD Turbo CORE.)
  18. Win32 VST Plug-ins may perform poorly in a 64-bit Host Sequencer. In Cubase 7 go to Plugin Information. For each that says "(win32)" stop using that plug-in, move it to a separate folder from the current location and reboot Cubase, repeat until all gone, then verify (Ctrl+Alt+Del and open the Windows Task Manager) that VSTBridgeApp.exe is no longer running.
  19. Change the sample rate in Cubase Project settings to 44.1MHz.
  20. Change the bit resolution in Cubase Project settings to 24 Bit resolution. Tried 16 bit, no improvement.
  21. In Fireface USB Settings (RME icon in Windows tray), change buffer size to 48 samples (lowest possible).
  22. In Cubase Device Setup VST Audio System, select "ASIO Fireface USB" ASIO driver. (Has lower Latency than ASIO4All 2.3 http://asio4all.com/).
  23. Cubase Device Setup | VST Audio System | Advanced options | Audio Priority = Normal. If you set this to "Boost" you are giving auto higher priority than MIDI.
  24. Cubase Device Setup | VST Audio System | Advanced options | Multi-Processing. Doesn't seem to matter on or off.
  25. RME TotalMix FX software 1.12 | Options | Settings | MIDI | MiDI Connection In & Out set to None. (These are for using MIDI to control TotalMix, not needed for MIDI keyboard use with Babyface & Cubase).
  26. Cubase Device Setup | VST Audio System | Advanced options | ASIO-Guard off (Cannot be used for real time dependent signals (no link due to low rep). Looking at ASIO-Guard latency, mine says 8.7 ms, which is the real latency I measured.
  27. Cubase Device Setup | MIDI Port Setup, input device is DirectMusic Babface MIDI Port 1 active in 'All MIDI Inputs'. Set "Use System Timestamp for 'DirectMusic' Inputs. On or off, doen't change real midi performance latency.
  28. Turn off unneeded Windows features. Control Panel\All Control Panel Items\Programs and Features. Remove IE 10, Windows Gadget Platform, Window Search, Tablet PC Components, Media Features, Windows Fax and Scan. Reboot.

If you are getting a real MIDI performance latency (using my method for checking that above) that is better, please let us know your set up!