Misha Posted May 25, 2020 Share Posted May 25, 2020 Hi Folks. Got this issue when working on a Cakewak project. Getting these: "A dropout has stopped the audio engine (1)" Asio Interface, buffers set to 4096 (!!!) for testing purposes, WiFi Off. Project about 10 midi tracks + 10 audio tracks. 1 instance of Kontakt, 1 instance of Halion Sonic. Not VST FX heavy. Plenty of CPU / Memory / Disk resources. It happens when there is a sudden spike in GPU. See attached. Also seems dedicated GPU RAM is not affected by the spike. Does anybody know what to do to stop these dropouts in Cakewalk caused by GPU behavior? Thank you! Link to comment Share on other sites More sharing options...
Robert Bone Posted May 25, 2020 Share Posted May 25, 2020 Hi - please download and run a freeware app called LatencyMon, for a couple minutes, without Cakewalk running, so that it can analyze your system's ability to handle streaming audio, which is what DAW software does. Here is the link: https://www.resplendence.com/main Once you have it running, again without Cakewalk running, click on the 'Play' triangle up in the top left of the window, to tell LatencyMon to start analysis of your system. You can stop it after a couple minutes, and it will give you the results - please post back here with what it tells you in its findings. Thanks, Bob Bone 1 Link to comment Share on other sites More sharing options...
Misha Posted May 25, 2020 Author Share Posted May 25, 2020 Bob, Thank you. I ran Latencymon for 30 mins. It does not show any significant issues. What I noticed is that Kontakt, at the time of "Engine stop" shows a spike in CPU (100%) but the Cakewalk meter and Task Manager performance tab does not show spikes in CPU... Here is latencymon report: _________________________________________________________________________________________________________ CONCLUSION _________________________________________________________________________________________________________ Your system appears to be suitable for handling real-time audio and other tasks without dropouts. LatencyMon has been analyzing your system for 0:32:00 (h:mm:ss) on all processors. _________________________________________________________________________________________________________ SYSTEM INFORMATION _________________________________________________________________________________________________________ Computer name: --- OS version: Windows 10 , 10.0, build: 18363 (x64) Hardware: 20MF000DUS, LENOVO CPU: GenuineIntel Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz Logical processors: 12 Processor groups: 1 RAM: 32356 MB total _________________________________________________________________________________________________________ CPU SPEED _________________________________________________________________________________________________________ Reported CPU speed: 2592 MHz Note: reported execution times may be calculated based on a fixed reported CPU speed. Disable variable speed settings like Intel Speed Step and AMD Cool N Quiet in the BIOS setup for more accurate results. WARNING: the CPU speed that was measured is only a fraction of the CPU speed reported. Your CPUs may be throttled back due to variable speed settings and thermal issues. It is suggested that you run a utility which reports your actual CPU frequency and temperature. _________________________________________________________________________________________________________ MEASURED INTERRUPT TO USER PROCESS LATENCIES _________________________________________________________________________________________________________ The interrupt to process latency reflects the measured interval that a usermode process needed to respond to a hardware request from the moment the interrupt service routine started execution. This includes the scheduling and execution of a DPC routine, the signaling of an event and the waking up of a usermode thread from an idle wait state in response to that event. Highest measured interrupt to process latency (µs): 636.10 Average measured interrupt to process latency (µs): 5.342145 Highest measured interrupt to DPC latency (µs): 633.40 Average measured interrupt to DPC latency (µs): 2.681330 _________________________________________________________________________________________________________ REPORTED ISRs _________________________________________________________________________________________________________ Interrupt service routines are routines installed by the OS and device drivers that execute in response to a hardware interrupt signal. Highest ISR routine execution time (µs): 87.995370 Driver with highest ISR routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation Highest reported total ISR routine time (%): 0.001830 Driver with highest ISR total time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation Total time spent in ISRs (%) 0.001858 ISR count (execution time <250 µs): 872160 ISR count (execution time 250-500 µs): 0 ISR count (execution time 500-999 µs): 0 ISR count (execution time 1000-1999 µs): 0 ISR count (execution time 2000-3999 µs): 0 ISR count (execution time >=4000 µs): 0 _________________________________________________________________________________________________________ REPORTED DPCs _________________________________________________________________________________________________________ DPC routines are part of the interrupt servicing dispatch mechanism and disable the possibility for a process to utilize the CPU while it is interrupted until the DPC has finished execution. Highest DPC routine execution time (µs): 687.162037 Driver with highest DPC routine execution time: ACPI.sys - ACPI Driver for NT, Microsoft Corporation Highest reported total DPC routine time (%): 0.097270 Driver with highest DPC total execution time: Wdf01000.sys - Kernel Mode Driver Framework Runtime, Microsoft Corporation Total time spent in DPCs (%) 0.128066 DPC count (execution time <250 µs): 5663638 DPC count (execution time 250-500 µs): 0 DPC count (execution time 500-999 µs): 269 DPC count (execution time 1000-1999 µs): 0 DPC count (execution time 2000-3999 µs): 0 DPC count (execution time >=4000 µs): 0 _________________________________________________________________________________________________________ REPORTED HARD PAGEFAULTS _________________________________________________________________________________________________________ Hard pagefaults are events that get triggered by making use of virtual memory that is not resident in RAM but backed by a memory mapped file on disk. The process of resolving the hard pagefault requires reading in the memory from disk while the process is interrupted and blocked from execution. NOTE: some processes were hit by hard pagefaults. If these were programs producing audio, they are likely to interrupt the audio stream resulting in dropouts, clicks and pops. Check the Processes tab to see which programs were hit. Process with highest pagefault count: svchost.exe Total number of hard pagefaults 219 Hard pagefault count of hardest hit process: 118 Number of processes hit: 12 _________________________________________________________________________________________________________ PER CPU DATA _________________________________________________________________________________________________________ CPU 0 Interrupt cycle time (s): 54.068381 CPU 0 ISR highest execution time (µs): 87.995370 CPU 0 ISR total execution time (s): 0.428118 CPU 0 ISR count: 872097 CPU 0 DPC highest execution time (µs): 687.162037 CPU 0 DPC total execution time (s): 29.322767 CPU 0 DPC count: 5620158 _________________________________________________________________________________________________________ CPU 1 Interrupt cycle time (s): 7.833893 CPU 1 ISR highest execution time (µs): 36.989969 CPU 1 ISR total execution time (s): 0.000075 CPU 1 ISR count: 63 CPU 1 DPC highest execution time (µs): 193.535494 CPU 1 DPC total execution time (s): 0.029598 CPU 1 DPC count: 1569 _________________________________________________________________________________________________________ CPU 2 Interrupt cycle time (s): 8.825202 CPU 2 ISR highest execution time (µs): 0.0 CPU 2 ISR total execution time (s): 0.0 CPU 2 ISR count: 0 CPU 2 DPC highest execution time (µs): 67.387346 CPU 2 DPC total execution time (s): 0.030852 CPU 2 DPC count: 10769 _________________________________________________________________________________________________________ CPU 3 Interrupt cycle time (s): 7.832836 CPU 3 ISR highest execution time (µs): 0.0 CPU 3 ISR total execution time (s): 0.0 CPU 3 ISR count: 0 CPU 3 DPC highest execution time (µs): 70.962963 CPU 3 DPC total execution time (s): 0.001932 CPU 3 DPC count: 463 _________________________________________________________________________________________________________ CPU 4 Interrupt cycle time (s): 9.571839 CPU 4 ISR highest execution time (µs): 0.0 CPU 4 ISR total execution time (s): 0.0 CPU 4 ISR count: 0 CPU 4 DPC highest execution time (µs): 52.330247 CPU 4 DPC total execution time (s): 0.015153 CPU 4 DPC count: 4795 _________________________________________________________________________________________________________ CPU 5 Interrupt cycle time (s): 10.109649 CPU 5 ISR highest execution time (µs): 0.0 CPU 5 ISR total execution time (s): 0.0 CPU 5 ISR count: 0 CPU 5 DPC highest execution time (µs): 32.961420 CPU 5 DPC total execution time (s): 0.002772 CPU 5 DPC count: 788 _________________________________________________________________________________________________________ CPU 6 Interrupt cycle time (s): 10.509286 CPU 6 ISR highest execution time (µs): 0.0 CPU 6 ISR total execution time (s): 0.0 CPU 6 ISR count: 0 CPU 6 DPC highest execution time (µs): 75.441358 CPU 6 DPC total execution time (s): 0.032230 CPU 6 DPC count: 9722 _________________________________________________________________________________________________________ CPU 7 Interrupt cycle time (s): 7.848897 CPU 7 ISR highest execution time (µs): 0.0 CPU 7 ISR total execution time (s): 0.0 CPU 7 ISR count: 0 CPU 7 DPC highest execution time (µs): 84.535494 CPU 7 DPC total execution time (s): 0.007270 CPU 7 DPC count: 1639 _________________________________________________________________________________________________________ CPU 8 Interrupt cycle time (s): 10.308604 CPU 8 ISR highest execution time (µs): 0.0 CPU 8 ISR total execution time (s): 0.0 CPU 8 ISR count: 0 CPU 8 DPC highest execution time (µs): 89.952160 CPU 8 DPC total execution time (s): 0.024743 CPU 8 DPC count: 6345 _________________________________________________________________________________________________________ CPU 9 Interrupt cycle time (s): 7.901179 CPU 9 ISR highest execution time (µs): 0.0 CPU 9 ISR total execution time (s): 0.0 CPU 9 ISR count: 0 CPU 9 DPC highest execution time (µs): 57.529321 CPU 9 DPC total execution time (s): 0.003854 CPU 9 DPC count: 896 _________________________________________________________________________________________________________ CPU 10 Interrupt cycle time (s): 9.512018 CPU 10 ISR highest execution time (µs): 0.0 CPU 10 ISR total execution time (s): 0.0 CPU 10 ISR count: 0 CPU 10 DPC highest execution time (µs): 67.350309 CPU 10 DPC total execution time (s): 0.030782 CPU 10 DPC count: 6029 _________________________________________________________________________________________________________ CPU 11 Interrupt cycle time (s): 7.849079 CPU 11 ISR highest execution time (µs): 0.0 CPU 11 ISR total execution time (s): 0.0 CPU 11 ISR count: 0 CPU 11 DPC highest execution time (µs): 93.378086 CPU 11 DPC total execution time (s): 0.005061 CPU 11 DPC count: 734 _________________________________________________________________________________________________________ Link to comment Share on other sites More sharing options...
Noel Borthwick Posted May 25, 2020 Share Posted May 25, 2020 Thats interesting. Do you see the same dropout even when not using Kontakt? It could be something interfering with Kontakt Cakewalk doesn't directly utilize the GPU so I wouldn't expect it to be affected but if a plugin depends on it its possible that it could trigger a dropout. Link to comment Share on other sites More sharing options...
Misha Posted May 25, 2020 Author Share Posted May 25, 2020 Noel, Thank you for trying. I deleted Kontakt "instrument" from the project, still get "stopped audio engine 1" error What I noticed, that Kontakt shows CPU spikes, but there are no spikes in task mngr. (see attached) There is only one setting I found in Kontakt that relates to "stopping sounds on CPU overload" and it is disabled. Other things I tried: disabling all FX . making a copy of the project Enable/disable load balancing (multicore enabled) Upping Asio buffer to 4096 (safe mode) ------ *Please see my config settings in attachment. Should I try to change something there? Thank you for your help!!! Link to comment Share on other sites More sharing options...
John Bradley Posted May 25, 2020 Share Posted May 25, 2020 FWIW, if you right click the CPU graph in Task Manager, you can show Logical Processors (aka cores) rather than Overall Utilization. It's possible that you'll see a 100% spike on one of the cores even though the CPU as a whole is hardly doing anything. Not that this helps solve your problem in any way... Link to comment Share on other sites More sharing options...
Noel Borthwick Posted May 25, 2020 Share Posted May 25, 2020 I'm not sure why the GPU spike would affect Cakewalk's engine but one thing you can try is raise the value of DropoutMsec in the settings you listed above to something like 200-300. While that seems high it may get you past the fallout from the spike. You want to try and diagnose what is causing that however, esp if nothing much is happening in Cakewalk at the time. Link to comment Share on other sites More sharing options...
Misha Posted May 25, 2020 Author Share Posted May 25, 2020 John, Thank you for trying. Good guess., but cores seem to distribute things in balance, there is saturation, but no hard spikes. See attached. (That is while dropout occurred.) Noel, Thank you! Will play with DropoutMsec settings. If it doesn't solve it, I will go through "updating" cycle of all hardware through Lenovo vantage, or whatever it is called now. Windows pushed some updates on me past week, maybe that has to do something with it. I wish there was a more detailed reporting on these dropouts in Cake I will also try a different interface and maybe even onboard Realtek chip, just to eliminate things. Will update this if I find the cause. Link to comment Share on other sites More sharing options...
Robert Bone Posted May 25, 2020 Share Posted May 25, 2020 1 hour ago, Misha said: Noel, Thank you for trying. I deleted Kontakt "instrument" from the project, still get "stopped audio engine 1" error What I noticed, that Kontakt shows CPU spikes, but there are no spikes in task mngr. (see attached) There is only one setting I found in Kontakt that relates to "stopping sounds on CPU overload" and it is disabled. Other things I tried: disabling all FX . making a copy of the project Enable/disable load balancing (multicore enabled) Upping Asio buffer to 4096 (safe mode) ------ *Please see my config settings in attachment. Should I try to change something there? Thank you for your help!!! You might try changing the ThreadSchedulingModel to 2 (do not use 3 it is experimental). Bob Bone Link to comment Share on other sites More sharing options...
Misha Posted May 27, 2020 Author Share Posted May 27, 2020 I think I figured it out after trying about 3 dozen things Seems like it is my workflow flaw (rhymes too) This is what I done to earn constant "Stopped Audio Engine 1" toasts: 1) Insert Instrument->Kontakt. When I was satisfied with how it played midi file -> 2)I Inserted Audio track and set it's input to Stereo output from Kontakt, to record signal as Audio to this track. (see attached) 3)When I recorded my "Audio" tracks from Kontakt, I deleted the initial source "Kontakt instrument", to cut unnecessary weight of the project. But it seems that Each recorded Audio track (with input from Kontakt) somehow became as instance of Kontakt. As soon as I froze these Kontakt recorded "audio" tracks, glitches with "stopped audio engine 1" went away and everything plays fine. ------------------------- Little more patience with me, please. I used a vintage thinking on this. Lets say you have a CD that you want to copy to tape. Once you set input of tape deck to CD out, after you done recording, the tape remains a tape, it does not become a CD just because you used a signal from CD deck to record it. So now that I know the cause, what should be my workflow to record audio track from Kontakt, so it remains standard audio track and not what I got...? I thank you in advance. Misha. Link to comment Share on other sites More sharing options...
Robert Bone Posted May 28, 2020 Share Posted May 28, 2020 For creating an audio track from a midi track, I usually export the midi track (change the Source in the dialog box to tracks, rather than the entire mix). or I will freeze the Kontakt instance, and it will render the audio track(s) in that process. You can always unfreeze the Kontakt instance, if additional midi data manipulation is needed. If I send tracks/stems off to someone else for either mixing, or for populating a project in the DAW of their choice, to add guitar tracks, or vocals, or whatever, that is when I usually do the exports - sometimes as a simple stereo track, or if they want to adjust individual track levels I send each exported track. I know there is the option now to route output to an empty audio track, to record it from the output of a Kontakt instrument, for example, I just never played around with it. I will do some playing around with it shortly, to see what I discover in the process - might help me with additional options I never had pursued in the past. I will post back with anything I figure out. Bob Bone Link to comment Share on other sites More sharing options...
Robert Bone Posted May 28, 2020 Share Posted May 28, 2020 Have you looked at Patch Points? They function like buses, but are tracks - here is the documentation for those: http://www.cakewalk.com/Documentation?product=Cakewalk&language=3&help=Mixing.13.html Here is the 1st paragraph from the above documentation: "A patch point is an internal routing path used to route audio from a track output, bus output, or send to an audio track input. The virtual inputs can then be input monitored or recorded. You can think of patch points as virtual patch cables." Bob Bone Link to comment Share on other sites More sharing options...
Misha Posted May 28, 2020 Author Share Posted May 28, 2020 Bob, Speaking of workflow, the easiest in my view to capture audio from Kontakt (or other synth) is to solo Kontakt channel, create audio track point input to Kontakt output, press record It works, I just do not understand why the Audio track becomes a heavy "Synth" track. I played with it yesterday a little and... If I freeze this recorded Synth/Audio track and duplicate it with events, it duplicates as a normal Audio track. Go figure Link to comment Share on other sites More sharing options...
Robert Bone Posted May 28, 2020 Share Posted May 28, 2020 1 hour ago, Misha said: Bob, Speaking of workflow, the easiest in my view to capture audio from Kontakt (or other synth) is to solo Kontakt channel, create audio track point input to Kontakt output, press record It works, I just do not understand why the Audio track becomes a heavy "Synth" track. I played with it yesterday a little and... If I freeze this recorded Synth/Audio track and duplicate it with events, it duplicates as a normal Audio track. Go figure Can you please explain what you mean by "heavy synth track"? I want to make sure I understand. Thanks, Bob Bone Link to comment Share on other sites More sharing options...
Misha Posted May 28, 2020 Author Share Posted May 28, 2020 Bob, actually I want to understand too and was hoping somebody would shine a light on this See attached. Link to comment Share on other sites More sharing options...
Robert Bone Posted May 28, 2020 Share Posted May 28, 2020 OK - the icons you show changing are by design, to give you some visual information. That 2nd icon lets you know that the audio track is assigned to pick up its input from a soft synth. I am still looking at the rest of your post so will post back after I finish that. Link to comment Share on other sites More sharing options...
Misha Posted May 28, 2020 Author Share Posted May 28, 2020 Bob, Exactly..., that is what I thought: "That 2nd icon lets you know that the audio track is assigned to pick up its input from a soft synth. " But what happens, after I record that signal from "Soft Synth" and delete that initial source "Soft Synth" , it still resides in the project as full instance on that Audio track I recorded. How do I know this: 1) As soon as I click on that "changed icon" with little midi plug on newly recorded track, full instance of Kontakt with all previously loaded instruments in it pops up in a matter of 2 seconds. It can not do that if it was loaded from scratch or even as a "saved" program 2) If the project is saved and closed, when opening it, it loads Kontakt, even when that initial "instance" was deleted. 3) When I have a few of these "recorded audio tracks" from Kontakt output, Cakewalk becomes glitchy with Audio Engine stop 1 toast. 4) If I freeze those "audio" tracks Everything is smooth. Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now