private final static void startArtistAnalysis(List<File> foundFiles) 
			throws MasterException {
			
		int cnt= 0;
		try {
			
			Iterator<File> iter= foundFiles.iterator();
			while(iter.hasNext()) {
				//create the list of tasks to do.
				MasterMetadata.artistTasks.add(new ArtistFeature(iter.next()));
				if(++cnt == maxTask) {
					MasterMetadata.submitArtistTasks();
					cnt= 0; //reset the counter
				}
			}
			
			if(MasterMetadata.artistTasks.isEmpty() == false) {
				MasterMetadata.submitArtistTasks();
			}

			if(MasterMetadata.artistES != null) {
				MasterMetadata.artistES.shutdownNow(); //Stop all thread at the end.
				MasterMetadata.artistES= null;
			}
			
		} catch (MP3Exception e) {
			throw new MasterException("MP3Exception "+e.getMessage(), e);
		} catch (MasterException e) {
			throw new MasterException("MasterException "+e.getMessage(), e);
		} catch (Exception e) {
			throw new MasterException("Exception "+e.getMessage(), e);
		}
	}