Tag Archives: FL Studio

Explorer.exe, dllhost.exe using high CPU?

Do you have a problem with explorer.exe using high CPU, showing 100% CPU usage (per CPU core) in windows 7, Windows server 2008 or windows 8? ie. It might show as using 50% CPU on a dual core or 25% on a quad core machine…

explorer.exe using high CPU
Picture thanks to http://tinymouseblog.blogspot.com/2010/02/xu-ly-hien-tuong-explorerexe-chiem-tron.html

Task manager shows explorer.exe and/or dllhost.exe using loads of CPU? Have you recently exported .wav files which contain markers in them using Sony SoundForge, Image-Line FL Studio or any other audio software? Maybe the files are either on the Desktop, ‘My documents’, or somewhere else which is in the path for search indexing? Or are you trying to move or delete some .wav files but can’t as they are locked ‘in use by another program’ ? Or just when you open a folder containing these .wav files with markers in them, explorer seems to take forever… If so, read on.

Microsoft claims these are ‘corrupted’ .wav files but they’re not, it seems it’s only a new problem since window 7. The solution is to disable windows explorer from trying to extract the metadata from the .wav files (by using mf.dll which fails to do it correctly, gets confused and becomes stuck in a loop forever.)

Some related files:
dllhost.exe
explorer.exe
mf.dll
wmplayer.exe

Here is a description and explanation from Microsoft:

High CPU usage in the Explorer.exe process when you open a folder that contains corrupted .wav files in Windows 7 or in Windows Server 2008 R2

SYMPTOMS
 You have some corrupted .wav files in a folder on a computer that is running Windows 7 or Windows Server 2008 R2. When you open the folder, you encounter the following problems:

The computer responds slowly.
You cannot perform any other operations.
You experience high CPU usage in the Explorer.exe process. Note To temporarily resolve these problems, restart the Explorer.exe process. For more information about how to restart the Explorer.exe process, see the "More Information" section. You may also encounter problems when you use other applications or operations to open the corrupted .wav files. For example, if you try to use Windows Media Player to open the corrupted .wav files, Windows Media Player stops responding. Additionally, the Wmplayer.exe process generates high CPU usage.

CAUSE
 When a folder that contains corrupted .wav files is opened, Windows Explorer calls the Media Foundation (Mf.dll) function to extract metadata from the .wav files. However, the Mf.dll function enters an infinite loop when extracting the metadata.

From http://support.microsoft.com/kb/976417/en-us

You can try their official hotfix there also, (doesn’t work lol) but an actually working solution is this:

Download the following zip and open it, double click on Fix.reg and add the information to your registry, then reboot:

FixWin7WavHandling.Zip

An ‘unfix’ is also provided in the zip, though you won’t be needing that. :)

The solution and registry fix was originally found here: http://superuser.com/questions/233223/prevent-windows-explorer-from-trying-to-extract-metadata by Wojtek and also some extra information and an explanation of how that works by Gwideman:

Adding a bit of explanation: What this fix does is disable the "PropertyHandler" dll for files having a particular filename extension (here, '.wav.). The registry should already contain the mentioned keys, with the default value shown. In the .reg files shown here, '@=' means 'default value'. The '#' sign prepended to the GUID apparently just makes the GUID invalid, but preserves it for future reference.

So if you are full nerd mode, that’s how it works. There is apparently the same sort of issue with some video files and formats so you could simply find and edit the property handlers for any type of file extension like that, if one so wanted to. ;)

And here is some more info on this error from one of the Fl Studio developers, Didier Dambrin (Gol):

What they might be calling "corrupt" is a misinterpretation of the wav file format on their side. There is a legacy bug by Sonic Foundry (now Sony) in the association of a MIDI note to a wav marker, only Soundforge & FL reads it, and it has to be buggy on purpose (wrong marker ID used) for it to load in Soundforge. Probably Microsoft isn't aware of that, but a bug in a format becomes part of history & thus part of the format.
 That or they have a bug somewhere else.

  // cue triggers
             for m:=0 to High(Regions) do if Regions[m].ID>=0 then
               Begin
               with SampleTriggerChunk do
                 Begin
                 ListID      :=CUEID;
                 dwIdentifier:=Regions[m].ID-1;  // don’t forget the -1 (bug in SoundForge)
                 dwType      :=1;  // MIDI Command Trigger
                 MIDIByte0   :=$FF;
                 MIDINoteNum :=Regions[m].KeyNum;
                 MIDICommand :=MIDI_NOTEON;
                 MIDIChannel :=0;
                 dwFunction  :=0;  // Play
                 cbExtra     :=0;
                 End;
               Write(SampleTriggerChunk,SizeOf(SampleTriggerChunk));
               End;

             // size of the trigger list chunk
             Seek(TempSize-4,soFromBeginning);
             TempSize:=Size-TempSize;
             Write(TempSize,4);
             WAVStream_AlignChunk(WAVStream);
             End;

From: http://forum.image-line.com/viewtopic.php?p=510953#p510953

Hope this helps… Don’t forget to reboot! It won’t work until then.

:D

FL Studio slide notes. Not just for pitch bends!

FL Studio slide notes. Not just for pitch bends!

One of FL Studio’s powerful features is the ability to use slide notes in it’s piano-roll. (For their native plugins only, it doesn’t apply to 3rd party VST plugins, standard MIDI automation needs to be used with those.)

In FL Studio, slide notes morph most note properties from one to the other. From one note’s pitch to another in the piano-roll is the obvious and most used one, however there is many other possibilities. Slide notes don’t make their own noise by playing a note, there must already be a regular note playing for them to effect.

Some interesting uses of slide notes:
X to X – Frequency Cutoff or whatever X is linked to in a synth.
Y to Y – Res(Q) or whatever the Y is linked to in a synth.
Pitch – Apart from just more obvious sliding one note for another, it’s great for subtle bends, especially on strings. Also, you can easily add vibrato with slide notes pitching up and down rapidly around the original note up and down in succession.
Pan – Panning notes anywhere you like in the stereo field from hard left to hard right.
Velocity – Fade note velocities in and out anywhere from maximum level to silent.

So how it works is you choose your starting note and it’s properties. (Such as pitch,pan,velocity etc.) Draw it in as a normal note, of the length you want the whole note to play for. (Including any later bends.) Now change the piano-roll mode to slide notes. Draw your slide note in at any point from the beginning of the first note or later. (Not before.) It’s length defines how long it will take for the first note to slide, or morph properties into the slide note’s properties.

FL Studio Slide-Notes Disabled, regular note example.
A regular note in FL Studio. Slide note setting can be seen disabled in the circle.
FL Studio Slide-note example, slide notes enabled.
A slide note shown, with slide notes now enabled in the piano-roll.

You can use all of the 16 different colors in the piano-roll, to have up to 16 different simultaneously sliding notes that won’t affect each other color group. In the demonstration project I use up to 3 separate colors as an example.

Pan a note left to right and back.

Fade in and out from silence.

Bend those strings!

Change the Cutoff on a saw to make a pluck.

Make some vibrato.

You can download the project file used to make these mp3 examples here: IC_SlideNotesInFLStudio_Tutorial

The official manual is here, scroll down to the heading ‘Understanding slides and Portamento’ for more info:

http://www.image-line.com/support/FLHelp/html/pianoroll.htm