Thread MP3 ID3 Tag (46 answers)
Opened by timehandler at 2012-06-04 15:49

Gast timehandler
 2012-06-05 18:27
#158762 #158762
more (11.6kb):
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/usr/bin/perl -w

use strict;               
use MP3::Tag;
use File::Find;
use File::Copy;
use Cwd;

print "Pfad angeben wo die MP3's sind!!! [keine Eingabe - Aktuelles Verzeichnis]\n";

# Findet das Aktuelle Verzeichnis
my $cwd = getcwd;

while (<STDIN>) {
        chomp;
        $_ = <*.mp3>;
        find(\&wanted, $_);# findet alles was in dem angegebenen Verzeichnis ist
}


sub wanted {
    my ($mp3, $track, $artist,$dir,$info);
     return unless /mp3$/i; # alles was keine *.mp3 Endung hat wird nicht beachtet

    if ($mp3=MP3::Tag->new($_)) {
        print "$_ (Tags: ", join(", ",$mp3->get_tags),")\n";
        my @info=$mp3->autoinfo;
        print "* Song: $info[0]\n";
        print "* Track: $info[1]\n";
        print "* Artist: $info[2]\n";
        print "* Album: $info[3]\n";
        print "* Comment: $info[4]\n";
        
        ordner("$info[2] - $info[3]");#übergabe der tags zum ordner erstellen
        print "\n Ordner wurde bzw ist schon erstellt.\n";
        
        

        #my $dir = "$cwd/Musik/$info[2] - $info[3]";
        
        #mkdir( $dir ) or die "mkdir( $dir) failed: $!\n";{
        #move ($_, "$cwd/$_") or die "Could not move '$_' to '$dir': $!";}
        
        my ($oldlocation,$newlocation);
        $oldlocation = "$cwd";
        print "$oldlocation";
        $newlocation = "$cwd/$info[2] - $info[3]/$_";
        print "\n$newlocation\n";
        
        move($oldlocation, $newlocation) 
        or die "Could not move '$_' zu '$newlocation':$!";
        
    }
    
    print "\n Weiter mit Enter!!\n";
    
}

sub ordner {
        my ($dir) = @_;

        unless(-e $dir or mkdir $dir) {
                die             "Unable to create $dir\n";
                
        }
}


hier der gesamte code

ich benutze windows.

der ordner wird ja erstellt und existiert vorher nicht, dafür werden ja aus der mp3 datei die tags verwendet, auf groß oder kleinschreibung habe ich da keinen einfluss.
Last edited: 2012-06-05 18:29:59 +0200 (CEST)

View full thread MP3 ID3 Tag