RSS Feed abonnieren

MusicBrainz (Picard) – Dupletten in der Musiksammlung entfernen

06. Oktober 2012

Mit folgendem Script lassen sich Dupletten in der mittels MusicBrainz (Picard) erstellten Musiksammlung erkennen und entfernen. Das Script erkennt die Bitrate (mittels mplayer) und entfernt bei Dupletten die Datei mit der jeweils niedrigeren Bitrate.

#!/bin/bash
find ./ -regex '.*([0-9]+)\.mp3' | while read file ; do
 
    orginal="`echo \"${file}\" | sed 's/ ([0-9]*)\.mp3$/.mp3/'`"
 
    if test -e "${orginal}" ; then
 
        bitrate_original=`mplayer -vo null -ao null -frames 0 -identify "${orginal}" 2>/dev/null |grep ^ID_AUDIO_BITRATE | head -n 1 | cut -d "=" -f 2`
        bitrate_file=`mplayer -vo null -ao null -frames 0 -identify "${file}" 2>/dev/null |grep ^ID_AUDIO_BITRATE | head -n 1 | cut -d "=" -f 2`    
 
        if [  "${bitrate_file}" -ge "${bitrate_original}" ] ; then
 
            # file with number and same bitrate, replace the original
            # because this should be the newer one
 
            echo "file: ${file} > ${bitrate_file} > rename/keep"
            echo "original: ${orginal} > ${bitrate_original} > remove"
 
            mv "${file}" "${orginal}"
 
        else
            echo "file: ${file} > ${bitrate_file} > remove"
            echo "original: ${orginal} > ${bitrate_original} > rename/keep"
 
            rm "${file}"
        fi
 
    else
 
        echo "file: ${file} > ${bitrate_file} > rename/keep"
        echo "original: ${orginal} > ${bitrate_original} > not exists"
 
        mv "${file}" "${orginal}"        
    fi
 
    echo "----------"
 
done

Tags: ,

Kommentar?

Hinweise zum Datenschutz siehe Impressum

*

tempo@deruwe.de jl@deruwe.de