Dlaczego program MusicUtil musi nadzorować człowiek?
I. Przypadek szczególny z którym mój program sobie nie poradzi (występuje w trzech odmianach):I.
-------------------------------------------------------------------------
1. Gdy utwór nie ma w ogóle tagów Artist i Title mój program próbuje domyślić się nazwę artystys i tytuł z nazwy pliku
mp3.
MusicUtil zawsze dzieli ciąg na artystę i tytuł korzystając z pierwszego myślnika.
Jeżeli wykonawca ma w swojej nazwie myślnik (jak "D-Wane" czy "Z-Man") to kończymy ze źle uzupełnionym tagiem (zobacz przykład na dole).
-------------------------------------------------------------------------
2.Gdy utwór ma tylko jeden tag (Artist lub Title), w którym jest wypisany ciąg "<artysta> - <tytuł>" mój program dzieli ten ciąg na artystę i tytuł szukając pierwszego myślnika.
Jeżeli wykonawca ma w swojej nazwie myślnik to sutuacja jest taka sama jak powyżej (zobacz też przykład na dole).
Jeżeli nie ma żadnego myślnika to MusicUtil sprawdza czy myślnik jest w nazwie plików. Jeśli jest to wywnioskowuje artystę i tytuł z nazwy pliku.
-------------------------------------------------------------------------
Powyższe sytuacje zdarzają się niezwykle rzadko ponieważ ciężko trafić na
a) utwór z artystą z myślnikiem w nazwie, który trafiłby się
b) w pliku gdzie nie ma tag'ów lub gdzie wszystko jest w jednym tag'u (Artist lub Title).
Systuacja kiedy na raz występuje a i b jest niezwykle rzadkim zbiegiem okoliczności (artyści z myślnikiem w nazwie występują względnie często, ale nie w połączeniu z punktem b). Jednak nie można jej w żaden sposób wykluczyć.
Przykład kiedy przez sytuacje z punkut 1. lub 2. źle kończymy:
"Deo And Z-man - Disabled On The Dance Floor (Alejandro Vivanco Remix)"
Zostanie podzielone na:
Wykonawca: "Deo And Z"
Tytuł: "man - Disabled On The Dance Floor (Alejandro Vivanco Remix)"
"D-Wayne - Distance (Original Mix)"
Zostanie podzielone na:
Wykonawca: "D"
Tytuł: "Wayne - Distance (Original Mix)"
-------------------------------------------------------------------------
3. Powyższy błąd wystepuje też jeszcze w jednej odmianie. Mój program robi taki myk że jak widzi w tytule:
<tytuł> - <cos tam>Mix
to przeprawia to na:
<tytuł> (<cos tam>Mix)
przykład(to jest sam tytuł [Title]):
"Let's Get This Thing Started - Daniele Petronelli Remix"
zostanie przeprawione na:
"Let's Get This Thing Started (Daniele Petronelli Remix)"
i jeżeli mielibyśmy:
"Let's Get This Thing Started - D-Wayne Remix"
to zostałoby przeprawione na:
"Let's Get This Thing Started - D (Wayne Remix)"
-------------------------------------------------------------------------
Dlaczego doszedłem do wniosku, że należy dzielić ciąg znaków na artystę i tytuł po pierwszym napotkanym myślniku, a nie po ostatnim?
Zrobilem małą statystykę dotyczącą myślników w tytule i w nazwie wykonawcy:
WSZYSTKICH PLIKOW
MP3: 3988
WSZYSTKICH Z WIECEJ NIZ JEDNYM MYSLNIKIEM: 226
ARTYSTA WIECEJ: 74
TYTUL WIECEJ: 152
http://revers.ugu.pl/temp/artist.txt -- wszystkie przypaki w których więcej myślników miał artysta
http://revers.ugu.pl/temp/title.txt -- wszystkie przypaki w których więcej myślników miał tytuł
II. Tagi i nazwy plików w cały świat:
Część z powyższych udało mi się pozbyć (podwójna nazwa, czy "VA") w wersji 1.3.2 (którą można pobrać z tego samego linka co poprzednie wersje), lecz chodzi o to, że to tylko przykłady sytuacji w których tagi wypisane są w cały świat. Na pewno jest ich więcej.