FWIW, I'd say that neither of those options is 100% what I'd personally consider to be perfect
This is how I'd do it:
1. Auto import detects new files- They are added to the DB, I assume that if the file path etc. is altered as part of this or a subsequent action, then MC should be 'smart' enough to cope. No input from audio analysis at this point.
2. Completion of the auto import of these files spawns thread #2 (Same principle as the current thread used for video thumbnailing)- This is entirely separate from auto-import; Auto-import just feeds it the files its just added to the DB. Any new files added via auto-import while this thread is still running should be able to be added to the tasklist.
3. This thread runs in the background analysing the audio, and should require no user interaction, but be visible if so desired by the user.
4. When the analysis of the files completes, the thread should close itself, but leave a report somewhere (Extension of the existing audio analysis dialog?)
Obviously, I don't know how you've built MC, and my knowledge of this advanced level programming is sketchy at best, but as such MC is very database driven, and I see no real reason that there shouldn't be another thread accessing and altering the information in the DB, so long as everything is kept separate and under control.
Both of your options would (IMHO) drop the usability of this function & auto-import combined, as it either requires user interaction, defeating the point of 'auto', or it slows the adding of new files to the DB, which while not critical could be confusing & annoying.
-Leezer-