Скрипты для OSD

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

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

Сообщение #1 Alex Jade » 15.06.2006, 14:55

Предлагаю в этой теме делиться конфигами для плагина On-Screen Display

Сортировка Ogg битрейтов
Код: Выделить всё
$puts(a,%__bitrate%)
$puts(b,%__bitrate_nominal%)
$puts(c,%__bitrate_dynamic%)

$puts(xa,00FFFF|0%__bitrate% █$char(10))
$puts(xb,00FF00|0 %__bitrate_nominal% █$char(10))
$puts(xc,0000FF|0 %bitrate% █$char(10))
$puts(xx,FFFFFF|0    █$char(10))

$ifgreater($get(a),$get(b), $ifgreater($get(c),$get(a),$puts(z,1),$ifgreater($get(b),$get(c),$puts(z,2),$puts(z,3))),)

$ifgreater($get(b),$get(a), $ifgreater($get(c),$get(b), $puts(z,4), $ifgreater($get(b),$get(c),$puts(z,5),$puts(z,6))), )

$select($get(z),
$get(xc)$get(xa)$get(xx)$get(xb)$get(xx),
$get(xx)$get(xa)$get(xx)$get(xb)$get(xc),
$get(xx)$get(xa)$get(xc)$get(xb)$get(xx),
$get(xc)$get(xb)$get(xx)$get(xa)$get(xx),
$get(xx)$get(xb)$get(xx)$get(xa)$get(xc),
$get(xx)$get(xb)$get(xc)$get(xa)$get(xx))

Вертикальный прогресс бар
Код: Выделить всё
$rgb(255,255,255,128,128,128)
▲    $char(10)
$progress(%playback_time_seconds%,%_length_seconds%,11,
$rgb(255,255,0,128,128,0)
//█
█ $rgb(255,0,0,128,0,0)
$pad_right($div($mul(%playback_time_seconds%,100),%_length_seconds%),3)$char(10),
$rgb(0,255,0,0,128,0)
█    $char(10))
$rgb(255,255,255,128,128,128)
▼   
Alex Jade M
Автор темы
Откуда: Мурманск
Репутация: 2
С нами: 17 лет 11 месяцев

Сообщение #2 Elzor » 15.06.2006, 15:32

А чем скрипты для OSD принципиально отличаются от скриптов для TrackInfo?
Elzor M
Аватара
Откуда: г. Орск
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #3 Alex Jade » 15.06.2006, 19:39

Elzor:А чем скрипты для OSD принципиально отличаются от скриптов для TrackInfo?
общем то ничем :-[, но OSD это не TrackInfo в него не выводят инфо об артисте альбоме песне и т.д. он больше для украшения рабочего стола :).
З.Ы. У меня OSD вместо TrackInfo работает %) не хочу Win XP SP1 ставить  :-(.
Alex Jade M
Автор темы
Откуда: Мурманск
Репутация: 2
С нами: 17 лет 11 месяцев

Сообщение #4 Elzor » 15.06.2006, 20:13

Alex Jade: OSD это не TrackInfo в него не выводят инфо об артисте альбоме песне и т.д. он больше для украшения рабочего стола
У меня он включен постоянно, выводит  артист-альбом-номер-трека-название и прогрессбар. А сам фубар большую часть времени сидит в трее и рулиться хоткеями. Так что ты не совсем прав.
Elzor M
Аватара
Откуда: г. Орск
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #5 Alex Jade » 16.06.2006, 10:26

Elzor:У меня он включен постоянно, выводит  артист-альбом-номер-трека-название и прогрессбар. А сам фубар большую часть времени сидит в трее и рулиться хоткеями. Так что ты не совсем прав.
У меня он тоже самое делает :) . Иногда бывает не очень удобно читать что написано :( .
P.S. В скрипте сортировка битрейтов обнаружена ошибка: не отображается если номинальный и средний битрейты равны. Исправленная версия:
Код: Выделить всё
$puts(a,%__bitrate%)
$puts(b,%__bitrate_nominal%)
$puts(c,%bitrate%)

$puts(xa,00FFFF|0%__bitrate% █$char(10))
$puts(xb,00FF00|0 %__bitrate_nominal% █$char(10))
$puts(xc,0000FF|0 %bitrate% █$char(10))
$puts(xx,FFFFFF|0    █$char(10))

$ifgreater($get(a),$get(b), $ifgreater($get(c),$get(a),$puts(z,1),$ifgreater($get(b),$get(c),$puts(z,2),$puts(z,3))),)

$ifgreater($get(b),$get(a), $ifgreater($get(c),$get(b), $puts(z,4), $ifgreater($get(b),$get(c),$puts(z,5),$puts(z,6))),)

$ifgreater(1,$mod($get(a),$get(b)),$ifgreater($get(c),$get(a),$puts(z,1),$ifgreater($get(a),$get(c),$puts(z,2),$puts(z,3)) ),)

$select($get(z),
$get(xc)$get(xa)$get(xx)$get(xb)$get(xx),
$get(xx)$get(xa)$get(xx)$get(xb)$get(xc),
$get(xx)$get(xa)$get(xc)$get(xb)$get(xx),
$get(xc)$get(xb)$get(xx)$get(xa)$get(xx),
$get(xx)$get(xb)$get(xx)$get(xa)$get(xc),
$get(xx)$get(xb)$get(xc)$get(xa)$get(xx))
Alex Jade M
Автор темы
Откуда: Мурманск
Репутация: 2
С нами: 17 лет 11 месяцев

Сообщение #6 Maxim_289 » 02.07.2006, 13:15

Вот мой скрипт:
Код: Выделить всё
//Artist
$puts(Artist,$replace($trim($caps(%artist%)),_, ,  ,))
$puts(Filename,$replace($trim($caps(%filename%)),_, ,  ,))
$rgb(53,62,120,232,232,232)$if(%artist%,$get(Artist),$get(Filename))
//Title
$puts(Album-or-Dir,$if($meta(album),$caps2($meta(album)),$caps2(%directoryname%)))
$puts(Replace-'_'-Album-Dir,$replace($get(Album-or-Dir),_, ,  ,,   ,))
//$get(Replace-'_'-Album-Dir)
$puts(Title,$replace($trim($caps($meta(title))),_, ,  ,))
$repeat( ,10)$rgb(2,122,187,232,232,232)$if($meta(title),$get(Title)) $rgb(0,128,0,232,232,232)$repeat( ,10)$char(10)
$puts(1,$transition($repeat('❙❙',$muldiv(50,%playback_time_seconds%,%length_seconds%)),$rgb(34,117,200,0,0,0),$rgb(53,62,120,0,0,0)))
$puts(2,$transition($repeat('❙❙',$sub(50,$muldiv(50,%playback_time_seconds%,%length_seconds%))),$rgb(92,147,211,0,0,0),$rgb(124,179,226,0,0,0)))
$get(1)$get(2)$char(10)
Скрин
Последний раз редактировалось Максим 11.08.2006, 12:00, всего редактировалось 1 раз.
Maxim_289
Гость

Сообщение #7 Warchief » 02.07.2006, 18:48

Можно ли сделать так, чтобы Osd был не поверх всех окон, а именно на рабочем стоеле? И работал всё время. Я что-то такой опции в настройках не нашёл :-[
Warchief
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #8 Elzor » 02.07.2006, 20:30

2Warchief нельзя
Elzor M
Аватара
Откуда: г. Орск
Репутация: 0
С нами: 17 лет 11 месяцев

Сообщение #9 NeoLithic » 02.07.2006, 20:59

2Warchief можно поставить чтобы он постоянно отображался:
On-Screen Display -> ставишь галки Interval Update и Display forever.
Изображение
Отменить отображение поверх окон нельзя, но в этом это и смысл   ;)
NeoLithic M
Откуда: МО, Звенигород
Репутация: 0
С нами: 17 лет 10 месяцев

Сообщение #10 iklin » 10.08.2006, 20:15

Господа, вопрос немного другой, но в эту тему, чтобы не начинать новую.
В настройках OSD по умолчанию была такой фигушка - %_next% - и в 0.8.х это означало "следующая песенка". А в 0.9.х - не прокатывает. :( То ли удалили, то ли изменили. Если кто знает - просветите.
Последний раз редактировалось iklin 10.08.2006, 20:17, всего редактировалось 1 раз.
iklin
Репутация: 0
С нами: 17 лет 8 месяцев

Сообщение #11 Snay » 03.12.2006, 11:22

iklin:Господа, вопрос немного другой, но в эту тему, чтобы не начинать новую.
В настройках OSD по умолчанию была такой фигушка - %_next% - и в 0.8.х это означало "следующая песенка". А в 0.9.х - не прокатывает. :( То ли удалили, то ли изменили. Если кто знает - просветите.
Меня тоже интересует этот вопрос. Может кто-нибудь ответить?
Тег(%_next%) стоит в конфиге,но отображается только текущий трек. Можно исправить?
Snay
Репутация: 0
С нами: 17 лет 4 месяца

Сообщение #12 susL » 20.01.2007, 16:38

Snay:
iklin:Господа, вопрос немного другой, но в эту тему, чтобы не начинать новую.
В настройках OSD по умолчанию была такой фигушка - %_next% - и в 0.8.х это означало "следующая песенка". А в 0.9.х - не прокатывает. :( То ли удалили, то ли изменили. Если кто знает - просветите.
Меня тоже интересует этот вопрос. Может кто-нибудь ответить?
Тег(%_next%) стоит в конфиге,но отображается только текущий трек. Можно исправить?
можно, если стоит cwb_hooks. он добавляет  %cwb_next_title%. я себе исправил: теперь нормально отображает
susL
Репутация: 0
С нами: 17 лет 3 месяца

Сообщение #13 NeoLithic » 27.01.2007, 22:12

Господа, а чем foo_osd_gdiplus от обычного отличается? И что есть GDI? а то страница мелкомягких негрузится...
Пока заметил только что полоска громкости другая... только ИМХО стандартная красивей...
NeoLithic M
Откуда: МО, Звенигород
Репутация: 0
С нами: 17 лет 10 месяцев

Сообщение #14 ID » 10.08.2007, 18:53

Люди подскажите плиз, как выводить osd в несколько строк?
Желательно с примером.
Спасибо.[br]Написано: 2007.07.29, 09:13:55Отвечу сам себе: $char(10)
ID
Репутация: 0
С нами: 17 лет

Сообщение #15 burin » 19.08.2007, 19:39

как сделать чтобы при изменении громкости полоска была полностью залита (раньше так и было, а с какой-то версии она стала дискретной)
burin
Репутация: 0
С нами: 17 лет 6 месяцев


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