Борьба с "unknown" и "неизвестными". Как?

Список разделов foobar2000 Секреты foobar2000

Описание: Кнопочки, конфиги, секреты, советы.

Сообщение #1 Break » 01.07.2006, 18:19

Некоторые песни имеют теги, заполненные стандартными фразами а-ля:
"Неизвестный Исполнитель", "Unknown Title" и т.д., и т.п....

К сожалению, доступ к таким песням у меня только "на чтение" и поменять теги я не могу, а подобная "информация" о песне в плейлисте мягко говоря не удовлетворяет. :-\

Решение: выцарапать хоть какую-то информацию из названий папок, в которых эта песня лежит. :)

Пока написал так:
Код: Выделить всё
//  Исполнитель
$puts(artist1,
$if(
$or($strstr($lower(%artist%),unknown),
$strstr($lower(%artist%),неизвестный)
),$directory(%path%,2),[%artist%])
)

// Название
$puts(title1,
$if(
$or($strstr($lower(%title%),unknown),
$strstr($lower(%title%),неизвестн)
),$directory(%path%,1),[%title%])
)

// Альбом
$puts(album1,
$if(
$or($strstr($lower(%album%),unknown),
$strstr($lower(%album%),неизвестн)
),$directory(%path%,1),[%album%])
)

Конечно есть недостатки, но это уже лучше, чем терк: Unknown Atrist - Uncnown Title - Unknown Album

Кто-нибудь сталкивался с такой проблемой?
Может есть более комплексное решение?
Break M
Автор темы
Репутация: 0
С нами: 17 лет 9 месяцев

Сообщение #2 Maxim_289 » 03.07.2006, 16:52

Break
У меня похожая проблема: есть трэк ATB - Summer в формате WMA. Ну и в %album artist% прописано Неизвестный исполнитель. Можно реализовать при помощи $stricmp. Например, так:
Код: Выделить всё
$if($stricmp(%album artist%,Неизвестный исполнитель),$if($stricmp(%artist%,неизвестный исполнитель),,%artist%),%album artist%)
и далее то же самое для трэков и альбомов
Конечно, слишком простое решение. Но если рассматривать все варианты написания неизв. испол. и трэк (англ. и рус.), не таким и маленьким код получится. :-)
Можно прописать это же для папок разных уровней.
Ещё такую логику возможно применить: сканируем альбом, если есть слова неизв. и т.д., то берём название папки и работаем с ним: вычисляем расположение этих слов и выводим всё кроме них или папку более высокого уровня. Опять сканируем её: проверяем есть ли в ней название артиста или жанра совпадающее с инфо из трэка. + Всё это для артиста и трэков. Попробую реализовать.
Maxim_289
Гость

Сообщение #3 AcDC » 27.08.2006, 17:13

Вместо Unknown удобно писать название папки, где лежит файл
AcDC M
Откуда: Минск
Репутация: 0
С нами: 17 лет 7 месяцев


Вернуться в Секреты foobar2000