Hi, Ståle.
I do recommend JHT's plug-in for out-of-process automation. It works well for me. The only trouble is that it is not very fast if you need to iterate through a large number of files.
Unfortunately, this comes up a lot. One thing I want to do is build a custom query string and ask MJ to play the files that match. Unfortunately, although the Search() method will return a collection of files matching an arbitrary search string, there is no command to say, "play this collection of files". Instead, you have to iterate through the collection, adding each individual file to the playing now list. You also can't set the filter string on a smart list, which would be even more powerful.
CMJAutomation is very powerful and full of potential, and I hope to see native support fo out of process clients, and ability to get & set the filter string on smartlists, view schemes, and to get and set the playback or view filter.
-- Soundman