Автоплейлист

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

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

Сообщение #1 Anatoly » 07.05.2006, 08:07

Вообщем не знаю можно ли это сделать или нет, но хотелось бы! Вопрос по сортировке файлов!

Хочу сделать своего рода ТОП самых поигруемых песен на плеере! т.е. сортировка по количеству проигранных раз! При этом это нужно сделать динамически... чтобы был плей лист где отображалось к примеру самые популярные комозиции набравшие больше 50 проигрований!

Проблема в том чтобы эту информацию собирал сам плеер!из своей базы! типа пененка набрала больше 50 балов и добавляется в этот плей лист!а в нем сортировка по количеству проигранных раз!
Изображение
Anatoly M
Автор темы
Возраст: 41
Откуда: Краснодар
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #2 Elzor » 07.05.2006, 08:16

autoplaylist тебе в помощь.
Скрипт (Query) для него будет выглядеть примерно так:

Код: Выделить всё
%PLAY_COUNTER% GREATER 50 OR %PLAY_COUNT% GREATER 50
Люди не знают, что лисы умеют лазить по деревьям, если очень сильно захотят. Вот белки - те знают.
(с) П.Бигл
Elzor M
Аватара
Возраст: 41
Откуда: г. Орск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #3 Anatoly » 07.05.2006, 08:19

2Elzor ммм... туповат все же я! А по подробнее? как мне сделать для начало autoplaylist??? чет я не нашел! :(

ВСЕ НАШЕЛ!!!! ...пасибо!! РАБОТАЕТ!!!!
Последний раз редактировалось Anatoly 07.05.2006, 08:25, всего редактировалось 1 раз.
Изображение
Anatoly M
Автор темы
Возраст: 41
Откуда: Краснодар
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #4 Elzor » 07.05.2006, 08:32

Забираешь плагин autoplaylist здесь. Устанавливаешь его. Затем создаешь какой-нибудь плейлист. Потом идешь в главное меню->Library->Autoplaylist, откроется форма настройки. В запросе пишешь, то, что я выше привел. ВPlaylist to take over выбираешь свой плейлист. Нажимаешь Add autoplaylis и радуешься жизни.
ЗЫ: Медиабаза должна быть включена.


Ну вот пока писал ответ, сам разобрался...
Люди не знают, что лисы умеют лазить по деревьям, если очень сильно захотят. Вот белки - те знают.
(с) П.Бигл
Elzor M
Аватара
Возраст: 41
Откуда: г. Орск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #5 Decard » 04.06.2006, 07:19

Мне вдруг пришла идея сделайть автоплейлист, из которого будут исключены песни проиграные за последние, например, 7 дней.
Решение нашел быстро. В foo_playcount, в том, что неофициальный, кроме накрученых разов проигрывания песни есть еще функция LAST_PLAYED.
Выходит такое значение для автоплейлиста, например для плейлиста, где песни прослушались 1 или больше раз - %play_counter% GREATER 0 AND %last_played% [glow=red,2,300]LESS ???  :o
Формат записи last_played такой - гггг-мм-дд чч:мм:сс, например - 2006-06-05 12:07:16
Вот я и не разберусь какое занчение поставить, пробывал простые числа, подошла толька 1 и то видимо это год или месяц, т.к. песни не появились через 1 день  %)
Может кто подскажет чего убрать/добавть?
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #6 maxfl » 04.06.2006, 07:57

выдери оттуда построку mm, dd. И сделай так что бы получился номер дня с начала года. Если без геморроя, но с небольшой ошибкой mm*30+dd. Можно сравнивать :)

времени нету сейчас string писать. Так что прими совет ;)
maxfl M
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 3 месяца

Сообщение #7 Decard » 04.06.2006, 08:29

Что-то не выходит, а как выдернуть сегодняшнюю дату, тогда можно было бы сравнивать ее с last_played.
Последний раз редактировалось Decard 04.06.2006, 08:39, всего редактировалось 1 раз.
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #8 maxfl » 04.06.2006, 09:33

да, что-то я не подумал что foobar2000 не дает текущую дату.
А если ее вручную подставлять?

AND $substr(%last_played%,9,10) LESS $sub("число",7)
или
AND $add($mul($num($substr(%last_played%,6,7)),30),$num($substr(%last_played%,9,10))) LESS $sub($add($mul("месяц",30),"число"),7)

типа того :)
maxfl M
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 3 месяца

Сообщение #9 Decard » 04.06.2006, 12:46

2maxfl
Спасибо конечно, но зачем все это высчитывать? Число я и руками могу поставить, например, %play_counter% GREATER 0 AND %last_played% LESS 2006-06-10, в таком случае в этом нет смысла.
Неужели никак нельзя выдернуть число?
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #10 Dr.Death » 04.06.2006, 14:27

тут где то в теме про рейтинг в скирипте были переменные месяца и дня, но у меня они не работают 8))
Dr.Death M
Аватара
Возраст: 39
Откуда: Тюмень
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #11 Mishail » 04.06.2006, 14:45

Эти переменные работают в Columns UI при включенной опции Make date info available
Последний раз редактировалось Mishail 04.06.2006, 14:48, всего редактировалось 1 раз.
Mishail M
Аватара
Возраст: 43
Репутация: 5
С нами: 17 лет 4 месяца

Сообщение #12 Dr.Death » 04.06.2006, 14:55

2Mishail хех, пасиб 8)
ну вот и делайте свои скрипты, ничего не мешает 8)
Dr.Death M
Аватара
Возраст: 39
Откуда: Тюмень
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #13 Decard » 04.06.2006, 16:08

Стринг не могу сделать, пишу это
Код: Выделить всё
%play_counter% GREATER 0 AND $add($mul($right($left(%last_played%,7),2),30),7) LESS $add($mul(%_system_month%,30),%_system_day%)
В консоли отвечает - "ERROR : Invalid query."
Что надо, не пойму, все проверил 10 раз.
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #14 Mishail » 04.06.2006, 16:18

2Decard
Я же написал, это работает в Columns UI, и только там, а не в Auto Playlist.
Mishail M
Аватара
Возраст: 43
Репутация: 5
С нами: 17 лет 4 месяца

Сообщение #15 Decard » 04.06.2006, 16:43

2Mishail
Тогда как быть-то?
Иные способы есть?
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #16 Decard » 05.06.2006, 03:03

Может в Columns UI есть какая-то переменная, которая действительна во всем Фубаре? Тогда можно было бы в нее прописать дату, а в автоплейлисте дергать ее через эту переменную?
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #17 Dr.Death » 05.06.2006, 08:24

2Decard ну если только $set_global() но не факт что везде работает
Dr.Death M
Аватара
Возраст: 39
Откуда: Тюмень
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #18 Mishail » 05.06.2006, 08:33

$set_global - это, опять же, работает только в Columns UI.
Mishail M
Аватара
Возраст: 43
Репутация: 5
С нами: 17 лет 4 месяца

Сообщение #19 Decard » 05.06.2006, 12:40

2Mishail
Попробывал, действиетльно хоть и "глобал", а работает только в Колумнсах.
Жаль, что не получается, так хотелось :(
Всем спасибо, может позже появится такая возможность.
Изображение
Decard M
Возраст: 39
Откуда: Иркутск
Репутация: 0
С нами: 17 лет 4 месяца

Заблокированные Пустые Автоплейлисты

Сообщение #20 Deathmaster » 16.12.2006, 14:49

Прочел на wiki.foobar2000.ru как создавать разделители между плейлистами в меню Playlist Switcher
Там был вот такой код :
$if($greater($len(%title%),0),
$if($strcmp(%title%,-),
$rgb(232,232,232,178,181,190)
$repeat($char(8212),100),
$if($strcmp($left(%title%,1),-),
$rgb(144,144,144)
$substr(%title%,2,$len(%title%)),
%title%
$tab()
$rgb(144,144,144)
%length%)))
Что надо добавить в него чтобы создать заблокированные плейлисты ,скажем используя модель NOT %filename% HAS “.”.Я хочу сгруппировать по стилям все плейлисты и разделители хочу сделать заблокированными .Можно ли вообще сделать так ,чтобы разделители не являлись плейлистами и вообще на них нельзя было кликать и нажимать ,т.е при переключении при помощи клавиатуры между ними чтобы выделение на них не попадало а тутже шло к последующему плейлисту ,чтобы он пропускался ,если можно так выразиться .
Deathmaster
Репутация: 0
С нами: 17 лет 4 месяца

След.

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