'Return a dict of sources
Check for >1 iPod device connected to iTunes'

def _get_sources(self):

    if isosx:
        try:
            names = [s.name() for s in self.iTunes.sources()]
            kinds = [str(s.kind()).rpartition('.')[2] for s in self.iTunes.sources()]
        except:
            return {}
    elif iswindows:
        it_sources = ['Unknown', 'Library', 'iPod', 'AudioCD', 'MP3CD', 'Device', 'RadioTuner', 'SharedLibrary']
        try:
            names = [s.name for s in self.iTunes.sources]
            kinds = [it_sources[s.kind] for s in self.iTunes.sources]
        except:
            logger().info(('    %s._launch_iTunes():ERROR    reading    iTunes.sources' % self.__class__.__name__))
            raise
    if (kinds.count('iPod') > 1):
        if self.verbose:
            logger().error(('        %d    connected    iPod    devices    detected,    calibre    supports    a    single    connected    iDevice' % kinds.count('iPod')))
        while kinds.count('iPod'):
            index = kinds.index('iPod')
            kinds.pop(index)
            names.pop(index)
    return dict(zip(kinds, names))
