UI Hacks (foo_ui_hacks)

Список разделов foobar2000 Плагины

Описание: Все о плагинах, компонентах, расширениях

Сообщение #1 DRON » 28.05.2009, 15:11

Компонент позволяет изменять поведение главного окна плеера и реакцию на некоторые действия пользователя. Настройки компонента можно найти на странице "UI Hacks" в окне конфигурации foobar2000.

Функционально компонент заменяет foo_lock, foo_noss, foo_minimize_on_close, foo_notaskbar, foo_snap, foo_fullscreen и foo_playpause_on_tray_click. Также имеется возможность настройки уведомлений (Balloon tooltip), за что благодарите Mr.Merak.

Увы, официальный сайт более недоступен, и судя по всему, разработка заморожена или вовсе прекращена. С каждой новой версией foobar2000 функционал становится все более несовместимым с плеером, поэтому возможно вам стоит отказаться от его использования в новейших версиях foobar2000.

Последнюю версию можно найти тут:
foo_ui_hacks_2013-02-19.zip
(124.19 КБ) Скачиваний: 10226

Иконки для опции "Use playback status icons":
StateIcons.7z
Иконки для опции "Use playback status icons".
(7.73 КБ) Скачиваний: 3112


ВНИМАНИЕ! Для работы функционала портативности, начиная с версии foobar2000 v1.6 необходимы некоторые действия, описанные ЗДЕСЬ.
Последний раз редактировалось DRON 24.12.2012, 02:48, всего редактировалось 11 раз(а).
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев


Сообщение #461 onv » 30.10.2012, 22:02

Можно ли сделать отключаемый галкой в настройках хаков lock volume line foobar-а (DS, WASAPIHost) и главного ползунка уровня ?
P.S. И еще один вопрос вдогонку. Реально ли сделать управление из WSH стереобалансом ?
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #462 DRON » 30.10.2012, 23:09

onv:Можно ли сделать отключаемый галкой в настройках хаков lock volume line foobar-а (DS, WASAPIHost) и главного ползунка уровня ?
Ни слова не понял :weirdface:
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #463 onv » 30.10.2012, 23:40

phpBB [media]


С линией микшера WASAPIHost аналогично
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #464 DRON » 31.10.2012, 01:02

Нет, не получится, Петя просто стал использовать вместо внутреннего регулятора системный, так что там ничего не лочится на самом деле и регулятор всего один.
Ну и мой любимый вопрос: нафига это собственно нужно? Хотите к двум имеющимся в системе регуляторам (общему и приложения) добавить ещё и третий? Петя наоборот их количество уменьшает и я с ним согласен: у меня вообще фубаровский регулятор всегда 0 дБ и скрыт.
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #465 onv » 31.10.2012, 01:27

К сожалению, у меня не так. И при выполнении фубаровской команды сет вольюм в такой-то уровень, в ноль, например, в одном положении общего ползунка, может быть вообще ничего не слышно, а в другом диффузоры динамиков пытаются оторваться от подвеса. Отсюда и просьба залочить общий и приложения, плодить какой-то третий совершенно низачем. Так что на практике я использование системного регулятора вместо внутреннего не ощущаю, к сожалению. И кнопки переключения в комфортный уровень (-28дБ, например) не работают как от них ожидалось,поскольку при разных положениях общего ползунка ведут себя очень по-разному
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #466 antisibir » 31.10.2012, 02:12

onv:И при выполнении фубаровской команды сет вольюм в такой-то уровень, в ноль, например, в одном положении общего ползунка, может быть вообще ничего не слышно, а в другом диффузоры динамиков пытаются оторваться от подвеса.

извините, что встреваю, но не проще использовать ReplayGain???
antisibir M
Аватара
Откуда: Усолье-Сибирское
Репутация: 11
С нами: 15 лет 5 месяцев

Сообщение #467 onv » 31.10.2012, 02:27

Вы не поняли сути вопроса. И Replaygain здесь ничем не поможет. -40дБ в фубаре может орать так, что оглохнешь, и при этом 0дБ фубаровских может быть вообще не слышно.
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #468 DRON » 31.10.2012, 02:31

onv:Отсюда и просьба залочить общий и приложения
А так вот вы о чём... Это противоречит общей идеологии системы и никогда не поддерживалось ни фубаром, ни виндой. Могу только порекомендовать выставление ползунка приложения в 100%, и управление общей громкостью с помощью Taskbar Gestures.

Я так понимаю, всё это исключительно из-за желания иметь общий регулятор в рамках вашей сборки? Тогда можно вместо ползунка поставить пару кнопок на Playback\System Volume\Down и Up.
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #469 onv » 31.10.2012, 02:39

А я могу узнать дискрету и нижний порог в дБ для System Volume ? Просто Up/Down не греет, маловато будет...
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #470 DRON » 31.10.2012, 02:59

Возьмите что-то вроде этого (первая ссылка в Гугле) и крутите громкость из WSH как вам вздумается.
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #471 onv » 31.10.2012, 03:26

Гм. 30 дней trial, $50. Себе-то купить не вопрос, но в сборку для всех такое не всунешь, как я понимаю.
А так все, вроде, здорово
Код: Выделить всё
Methods
IsVistaWindows7 Returns true if the current OS is window vista or window 7.
W7GetDeviceLeftBalance Get the left balance of current selected device (this method support on window vista or window 7 only).
W7GetDeviceRightBalance Get the right balance of current selected device (this method support on window vista or window 7 only).
W7GetMicrophonesCount Get the count of microphones. (this method support on window vista or window 7 only).
W7GetMicrophonesName Get the name of microphones for specific index. (this method support on window vista or window 7 only).
W7GetSpeakersCount Get the count of speaker. (this method support on window vista or window 7 only).
W7GetSpeakersName Get the name of speaker for specific index. (this method support on window vista or window 7 only).
W7SetCurrentDevice Set the current device. (this method support on window vista or window 7 only).
W7SetDeviceVolume Set the volume of current selected device. (this method support on window vista or window 7 only).
W7SetDeviceLeftBalance Set the left balance of current selected device. (this method support on window vista or window 7 only).
W7SetDeviceRightBalance Set the right balance of current selected device. (this method support on window vista or window 7 only).

SoundVolume ActiveX Control Object

CDAudio A CDAudio object represents CD Audio.
LineIn A LineIn object represents Line In.
MasterVolume A MasterVolume object represents Master Volume.
Microphone A Microphone object represents Microphone.
PCSpeaker A PCSpeaker object represents PC Speaker.
PhoneLine A PhoneLine object represents Phone Line.
SWSynth A SWSynth object represents SWSynth.
Wave A Wave object represents Wave.

Из freeware пока нашел только это :
http://www.nirsoft.net/utils/nircmd.html
а в нем конкретнее это
http://nircmd.nirsoft.net/changesysvolume.html

Проверил, отлично работает из командной строки, вообще занятная игрушка. Кроме управления микшерами еще куча всего, гасит монитор, компьютеры пачками, делает полупрозрачным IE, шоткат для мьют... Наворотили ребята.

P.S. Через Run Service без вопросов крутит master volume, так что первый вопрос закрылся сам собой. Остался открытым один, с балансом :)

Добавлено спустя 7 часов 48 минут 24 секунды:
DRON:Я так понимаю, всё это исключительно из-за желания иметь общий регулятор в рамках вашей сборки?
Исключительно из желания иметь предсказуемую, детерминированную систему, залог здоровья нервных клеток.
Код: Выделить всё
Я, как пользователь полноэкранного приложения, имеющего в своем арсенале команды прямой установки конкретного уровня, например, set to -12dB, вправе надеяться на адекватное и повторяемое исполнение этих команд. Т.е. на то, что тракт настроится таким образом, чтобы обеспечить мне на выходе -12дБ от своего максимального уровня, а не случайное что попало в зависимости от того, с какой ноги встал регулятор master volume, в одном случае -12 от -100, в другом от -40, в третьем от 0. И мне не придется, выдавая одну и ту же команду и не получая желаемого, сворачивать приложение в трей и идти разбираться, какого беса нет звука или почему так орет, что пассажиры за сердце хватаются. Иными словами, когда мы жмем на клавиатуре клавишу "К", а вместо этого в редакторе получаем восьмерку - законный вопрос - какого рожна ? Нуу.... это просто мастер -регулятор сдвига скан-кодов клавиш не в том положении у вас стоит. Подвиньте, и получите "Ж" вместо восьмерки. Битый контроллер клавиатуры, мутный бред больного воображения ? Именно так. Вот только почему-то в случае с регулировкой уровня - это норма, в порядке вещей, выдавать на выходе тракта все, что угодно, только не то, что заказывалось. Поэтому я и пытаюсь превратить фубаровский set to n dB - команда сейчас по сути ни о чем, в реальный set to n dB master volume при 0dB в самом фубаре

Добавлено спустя 2 часа 8 минут 34 секунды:
Пока в лоб придумалось только так:
WshShell.Run(foopath+"\\nircmd.exe changesysvolume -65535");
for(i=0;i<vol;i++) {WshShell.Run(foopath+"\\nircmd.exe changesysvolume 655");} // 0 < vol < 100
Ну или, если без плавности, скачком, то просто без цикла
WshShell.Run(foopath+"\\nircmd.exe changesysvolume "+vol);
Еще бы недурно было при запуске фубара запоминать текущий уровень master volume-а и при выходе восстанавливать его на всякий случай, для политкорректности :) Пока не представляю, как.
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #472 DRON » 31.10.2012, 17:05

Обновлены интерфейсы и примеры их использования (UIHacks.js).
http://rghost.ru/41257898
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #473 onv » 31.10.2012, 18:28

Спасибо большое. Под XP работать должно, или это только для 7 ? На работе под ХР попробовал, mute и установка уровня работают нормально, StepUp и StepDown вываливают в крэш.

Добавлено спустя 5 часов 16 минут 22 секунды:
Под 7 картина аналогичная. Размер шага не нужно объявлять, он неизменяемый ?

P.S. Set Volume отлично справляется, и его, в принципе, достаточно, так что степы не особо-то и нужны. А Get Volume, наверное, не помешал бы, если это не слишком сложно. Если бы еще Set Volume крутил раздельно L,R... Да еще и не только master volume, а и остальные основные линии микшера... :)
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #474 lexeyn » 04.11.2012, 13:46

DRON:lexeyn, проверяйте:
http://rghost.ru/41227777

[Minimize on close]
Если опция включена, то при нажатии Alt+F4 или кнопки "Закрыть" в заголовке
окна, плеер не закрывается, а только сворачивается. Если же опция находится в
неопределённом состоянии, а в настройках плеера включена опция "Minimize to
notification area" (DUI) или "Minimise to icon" (CUI), то сворачивание в трей
будет происходить только при нажатии Alt+F4 или кнопки "Закрыть".
По-настоящему закрыть плеер можно через меню File\Exit.

OMFG!!!! РАБОТАЕТ!!!! как надо!!!!
спасибо спасибо спасибо ОГРОМНОЕ
я хотел это очень долго долго , вечность

единственное что- я не с первого раза понял "опция находится в неопределённом состоянии"
у меня оно выглядит почему то одинаково с чеканутой.
может изза кастом темы (adobulated, w7 64)
тыкал тыкал все опции чтоб заработало и случайно заметил что "Minimize on close" три состояния имеют
когда заработало так рад был 8))

DRON:PS: Вообще бред это всё, поставили бы глобальную горячую клавишу на View/Activate и не мучались.

да есть оно у меня! просто клава и мышь это ведь не одно и тоже, одно другое не исключает.
у меня вот "View/Activate" правой рукой нажимается, и мышь в правой руке. если у меня рука на мыши мне неудобно на "горячую клавишу" нажимать
и вообще это тут не причем совсем , это совсем разные вещи View/Activate и close to tray
с "close to tray" то - в тыщу раз комфортнее

ОБЖЕ Я ТАК ТЕБЕ БЛАГОДАРЕН!!!!


vladj:DRON, это для меня бред, для него сущая необходимость.Знаешь ведь, что иногда попадаются запросы
от " пацанов", о которых большинство и не задумывалось никогда.
я подозреваю ты этой фичой тогда в utorrent не пользуешься ? потому что это удобно

vladj:lexeyn, я хоть и не пацан на седьмом десятке лет, но вот поверь, мне вообще всё-равно, куда окно скрывается.
И дома и в машине я постоянно пользуюсь горячей клавишей, как тут повыше и советовали тебе.
Вообще, в вопросе твоём никакой логики...
>всегда держать фубар в трее не удобно
>всегда держать в таскбаре тоже неудобно

горячие клавиши есть, я им пользуюсь , они не исключают мышь, они никак не исключают удобство close to tray
я не понимаю как вообще можно не видеть в этом логики
вот ты активно что то в фубаре делаешь, добавляешь музыку в плейлист удобнее чтоб он в таскбаре был
(ты перетаскиваешь папку на таскбар , фубар всплывает ты добавляешь, а как в трей????)
вот ты закончил его мучать - удобнее его сослать в трей , чтоб не занимал место в таскбаре
но дело не только в добавление музыки, вообще так удобней, иметь возможность
иметь фубар в таскбаре и иметь возможность убрать его в трей.

vladj:Я просто теряюсь в догадках и переведи пож-та со сленга
выражение "батхерты адовые и rage", вдруг кто ещё такое напишет, я хоть знать буду, учится никогда не поздно.
там кароче тред на гидрогене прочитал я про это , и там противники этой опции просто взбесили меня 8)


как много я написал то.
еще раз спасибо огромное
lexeyn
Репутация: 0
С нами: 12 лет

Сообщение #475 vladj » 04.11.2012, 19:10

lexeyn, рад,что у тебя заработало всё, как тебе хотелось. По поводу сворачивания, мне совершенно
всё-равно, куда сворачивается utorrent или любая другая программа, лишь-бы свернулась.
За два с половиной года с фубаром не создавал буквально ни одного плейлиста, слушаю только из библиотеки.
Папки никогда не таскаю никуда, и в папке с музыкой неделями могу не бывать. Ну там изредка картинки упорядочить или
лишние двойники удалить, ковриков захожу.
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 9 месяцев

Сообщение #476 DRON » 14.11.2012, 06:53

Небольшое обновление: опции с "неопределённым состоянием" заменены на выпадающие списки, "Fullscreen" из настроек убрано (не думаю, что кто-то переключал его из настроек, а не через меню).
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #477 onv » 16.11.2012, 12:12

DRON, спасибо огромное. Регулировка в машине баланса в один клик - это реально столько комфорта добавляет ! Как долго я этого ждал ...
P.S. if (UIHacks.MasterVolume.ChannelCount==2) пришлось заглушить, у креатива под регулировкой тупо присутствуют все каналы, наплевав на установку 2.0 speakers :smile:
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #478 DRON » 16.11.2012, 14:42

onv:if (UIHacks.MasterVolume.ChannelCount==2) пришлось заглушить
Эта строка присутствует в примере только для того, чтобы показать наличие свойства ChannelCount.
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Сообщение #479 onv » 16.11.2012, 19:55

Ясно, спасибо. Еще бы так же удобно коммутировать лин. вход (вкл/выкл) ... :smile:
onv M
Откуда: Харьков
Репутация: 52
С нами: 12 лет 6 месяцев

Сообщение #480 DRON » 16.11.2012, 21:48

onv:Еще бы так же удобно коммутировать лин. вход (вкл/выкл) ...
У вас же есть "SoundVolume ActiveX Control Object", а у него "LineIn", о чём вы сами и писали.
Я MasterVolume добавил только потому, что код и так уже присутствовал ("Pause on Mute", foo_taskbar_gestures итд) и надо было только сделать его видимым в WSH. Превращать же хаки в набор не связанных с самим плеером интерфейсов я смысла не вижу и, если когда нибудь я наткнусь на халявный аналог "SoundVolume ActiveX Control Object", то MasterVolume из хаков будет тут же убрано.
DRON M
Автор темы
Аватара
Откуда: Санкт-Петербург
Репутация: 113
С нами: 16 лет 6 месяцев

Пред.След.

Вернуться в Плагины