Конфиги для foo_run.

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

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

Сообщение #61 Zin-Uru » 28.10.2009, 22:37

По аналогии сdtest написал автодекодер для бесплатного аудиоредактора Wavosaur (он удобен еще и тем, что не требует установки).
Программка хорошая - маленькая, удобная, умеет все основные (и даже больше) вещи и показывает к тому же спектр, но поддерживает мало форматов, что моя утилитка и обязуется поправить. :)

Утилитку Wavosaurdec (текущая версия 1.05) вместе с последней версией Wavosaur смотрите в прикреплениях в конце поста.

Работает практически так же, как cdtest, с некоторыми поправками, которые и опишу тут.

Поддерживаемые форматы: flac, ape, tta, m4a, tak, wv, wav, wma, mp3, ogg, aif, iff, au, snd, vox, voc, cue.
В случае редактирования открытого в Фубар .cue ищет файл-образ с таким же именем и подхватывает его (одинаковые имена - к сожалению, функциональное ограничение и условие для успешной проверки).

Тоже есть возможность ввода параметра, отвечающего за папку хранения ехешников декодеров, необходимых для проверки.
Есть опция для сохранения временного файла, если это нужно, который собственно и открывается всегда через утилиту в Wavosaur (исходный же остается нетронутым). Если опция используется совместно с опцией пути, то должна стоять в конце.
Ко всему прочему, реализуется проверка пути (если он задан) и, если программа не находит там декодеров и Wavosaur, то пробует выдрать их из текущей папки. В случае неудачи выводит сообщение об отсутствии.
Wavosaur и декодеры должны лежать в одной папке.

Использование:

Полный шаблон ввода параметров:
Wavosaurdec save - опционно
имя файла - полное, иначе берется из тек. папки; в конце пути папки должен стоять слеш "\".
В простейшем случае команда будет выглядеть так:
Wavosaurdec
То же самое, но с сохранением обрабатываемого временного файла:
Wavosaurdec save
Доп. команда:
Wavosaurdec help - без комментариев.

Собственно, привязка к foo_run выглядит так:
Открываем Preferences -> Tools -> Run services, создаем новый.
Имя: Open with Wavosaur for edit
Путь: ".\utilities\wavosaurdec.exe" "$if(%__referenced_file%,$directory_path(%path%)\%__referenced_file%,%path%)" "utilities\"
Здесь utilities - поддиректория в папке Фубара, где хранятся ехешники и Wavosaur (у вас может быть другая). Не забывайте в конце слеш "\".
Можно дописать в конце пути save для сохранения обрабатываемого временного файла:
Имя: Open with Wavosaur for edit & save
Путь: ".\utilities\wavosaurdec.exe" "$if(%__referenced_file%,$directory_path(%path%)\%__referenced_file%,%path%)" "utilities\" save

Запускать: правой кнопкой по файлу из плейлиста, Run service -> Open with Wavosaur for edit   G=Sonogram
В случае использования опции save, обрабатываемый временный файл сохранится там же, где лежит тестируемый.
При использовании можно запускать редактирование нескольких разных файлов одновременно.
Вложения
Wavosaurdec_105.zip
(385.68 КБ) Скачиваний: 630
Последний раз редактировалось Zin-Uru 30.10.2009, 15:33, всего редактировалось 1 раз.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #62 Dthree » 25.11.2009, 12:50

Здраствуйте
Подскажите как правильно используя Panel Stack Splitter назначить на кнопку выполнение какого нибудь скрипта foo_run? И возможно ли вообще такое? в списке контекстных комманд есть run service, но вот как им правильно пользоваться я пока не понял.
я думал как то так:
$textbutton(0,0,60,20,button,button,COMMAND:run service/Google Artist;REFRESH,,)
Dthree
Репутация: 0
С нами: 15 лет

Сообщение #63 Izotop » 25.11.2009, 14:32

2Dthree
$textbutton(0,0,60,20,button,button,COMMAND:Run/Google Artist;REFRESH,,)
Наверное так :)

А вообще-то в PSS есть во вкладке Script кнопочка list
перед ней выбираем Context Command и получаем список контекстных комманд доступных Вашему плееру *пыво*
Izotop M
Аватара
Откуда: Зеленоград - Харьков
Репутация: 69
С нами: 15 лет 4 месяца

Сообщение #64 Zin-Uru » 25.11.2009, 15:53

А можно таким же образом для ElPlaylist назначить для определенного типа файлов выполнение команды из foo_run? :)
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #65 Aum » 08.04.2010, 16:35

Кто подскажет: как перенаправить все запросы поиска в фаерфокс, не делая при этом фаерфокс браузером по умолчанию??
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #66 grounder » 08.04.2010, 16:44

2Aum
Добавить вначале путь до брайзера через которых хочешь открывать ссылки в Run Services
C:\Program Files\Firefox\Firefox.exe http://www.google.com/search?q=$replace(%artist%, ,+)&ie=utf-8
grounder M
Аватара
Откуда: Санкт-Петербург
Репутация: 10
С нами: 17 лет 10 месяцев

Сообщение #67 Aum » 08.04.2010, 16:59

ок. спсб.
еще вопрос:
funkysouls отказывается русских искать! все запросы перепробывал??хэлп

Очень актуальная темка:
Break:У меня такая проблема:
хочу  парой кликов посылать музыку на портатив ("мп3-плеер"), но чтоб она транскодилась "налету" и сохранялась в папку
G:\Music\%artist%\%album%\%title%.*

Я знаю, что есть такой плагин, как "Send to Device", но мне его недостаточно.
Он умеет конвертить только в мп3, а я хочу в другие форматы (ogg, flac).
Также он не умеет работать с "cue"-альбомами, а у меня таких много (lossless+cue).

Меня вполне устроил бы стандартаный плагин "Converter", но он не умеет автоматически класть в папку G:\Music\%artist%\%album%\


Так вот, тоже охота кнопочкой отправлять файлы на портатив! а т.к. "cue"-альбомов очччч много -  "Send to Device" не подходит((
Можно ли как то скриптом сделать для foo_run: чтоб проверил - если мр3 - на флэш, если нет в конвертер..?
Реально ли такое?
P.S. оч удобная кнопочка была бы!!!!
Последний раз редактировалось Aum 12.04.2010, 12:16, всего редактировалось 1 раз.
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #68 Zin-Uru » 11.04.2010, 23:57

2Aum
Выглядеть будет примерно так (для примера с G:\Music\%artist%\%album%\):

1. Сначала идем в конвертер, выбираем конвертацию в mp3 в выпадающем списке Output format.
2. Ставим в Output path выбор на Specify folder, туда вписываем G:\Music
3. В Output files выбираем Convert each track to an individual file, в Name format вписываем: %artist%\%album%\%track% - %title%
4. Вводим сверху в графе Preset название (например, File-MP3-Device) и жмем Save - первый этап на этом закончен.

5. Идем в настройки Run services, создаем новый с именем, к примеру, MP3-Device.
6. В Path пишем:
cmd /c "md "G:\Music\%artist%\%album%\"&&copy "%path%" "G:\Music\%artist%\%album%\""
7. Сохраняем изменения - второй этап закончен.

8. Создаем собственно кнопку (например, текстовую):
$textbutton(x,y,w,h,Send2Device,Send2Device,$if($strcmp($ext(%path%),mp3),CONTEXT:'Run service/MP3-Device',CONTEXT:'Convert/File-MP3-Device'),fontcolor:255-255-255,fontcolor:255-255-255)
где x,y,w,h - координаты, ширина и высота кнопки.

Всё. :) (Естественно, кнопка такая будет работать только на CUI+PSS)
Последний раз редактировалось Zin-Uru 12.04.2010, 00:02, всего редактировалось 1 раз.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #69 Aum » 12.04.2010, 13:05

Ого. то что надо! все вроде задумано классно, но:
на 2ом этапе - скрипт отказывается копировать несколько треков? выделяю один - идет, два и больше - ничего..в чем причина? %)
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #70 Zin-Uru » 12.04.2010, 13:12

2Aum, причина в foo_run - он к сожалению только с одним треком из плейлиста умеет работать за раз.
Последний раз редактировалось Zin-Uru 12.04.2010, 13:14, всего редактировалось 1 раз.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #71 Aum » 12.04.2010, 15:18

офф топ:
нашел ответ!!! переделал команду на кнопке минуя фууран - через контекст-функцию фубара:copy to! и все работает на ура!!!!(правда спрашивает запрос, но эт ничего страшного...)
подправленный результат:
1 этап:
1. Сначала идем в конвертер, выбираем конвертацию в mp3 в выпадающем списке Output format.
2. Ставим в Output path выбор на Specify folder, туда вписываем G:\Music
3. В Output files выбираем Convert each track to an individual file, в Name format вписываем: %artist%\%album%\%track% - %title%
4. Вводим сверху в графе Preset название (например, File-MP3-Device) и жмем Save - первый этап на этом закончен.
2 этап:
1. Затем идем в раздел File Operations\Copy to.
2. Пишем в Destination folder нужный путь: M:\Music
3. В File name pattern пишем: %album artist%/%album%[ '('%date%')']/%filename%
4. Вводим сверху в графе Preset название (например, copy to device) и жмем Save.
3 этап:
Создаем собственно кнопку:
$imagebutton(25,2,14,22,%ps_foobar2000_path%\images\buttons\button grey\send to device.bmp,%ps_foobar2000_path%\images\buttons\button grey\send to device cursor.bmp,$if($strcmp($ext(%path%),mp3),CONTEXT:'File Operations/Copy to/copy to device',CONTEXT:'Convert/File-MP3-Device'))
(выделен путь к иконке)
Данная кнопка будет работать только на CUI+PSS.
Все отлично работает!! Спсб за помощь!!! *пыво*
Последний раз редактировалось Aum 12.04.2010, 15:45, всего редактировалось 1 раз.
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #72 Zin-Uru » 12.04.2010, 15:22

C File Operations отличное решение, я как-то и не подумал. Рад, что общими усилиями все получилось. Пожалуйста. :)
(fontcolor в imagebutton не работает, можете убрать.)
Последний раз редактировалось Zin-Uru 12.04.2010, 15:26, всего редактировалось 1 раз.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #73 Aum » 25.05.2010, 17:49

проблема в следующем:
1. есть PSS+CUI (Explorer tree+NGplaylist), хочеться на гарячую кнопку повесить функцию открытия Album Art'a (воспроизводимого трека или трека под курсором) во внешнем просмотрщике (как в стандартном CUI - Artwork view - двойной щелчек по обложке - открывает в просмотрщике).
можно как-то реализовать?
2. [конечно шикарно было бы - если б работал двойной щелчек по обложке в NGplaylist, но такое вроде не возможно???]
Последний раз редактировалось Aum 25.05.2010, 17:51, всего редактировалось 1 раз.
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #74 Zin-Uru » 25.05.2010, 19:31

Aum:1. есть PSS+CUI (Explorer tree+NGplaylist), хочеться на гарячую кнопку повесить функцию открытия Album Art'a (воспроизводимого трека или трека под курсором) во внешнем просмотрщике (как в стандартном CUI - Artwork view - двойной щелчек по обложке - открывает в просмотрщике).
можно как-то реализовать?
Можно. Просто создаем в Run services пресет с содержимым типа:
"$replace(%path%,%filename_ext%,)folder.jpg"
Где вместо folder.jpg - свое имя обложки. Маски из * не поддерживаются, также придется ограничиться одним именем файла обложки на один пресет.
А дальше, ясное дело, просто биндим команду на горячую кнопку.

Aum:2. [конечно шикарно было бы - если б работал двойной щелчек по обложке в NGplaylist, но такое вроде не возможно???]
Именно.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #75 Aum » 25.05.2010, 20:58

Спасиб. Но это грустно, что не поддерживаются маски и список возможных имен файлов...
Будем искать, как говорил Семен Семеныч..))
Хотя внезапно появилась идейка - если создать маленькую панельку Album Art (как кнопку допустим 25х25) (на каком нибудь плагине CUI album art или может даже удобней на WHS) и ей пользоваться... должно по идее выйти..)
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #76 Zin-Uru » 25.05.2010, 21:10

Aum:Хотя внезапно появилась идейка - если создать маленькую панельку Album Art (как кнопку допустим 25х25) (на каком нибудь плагине CUI album art или может даже удобней на WHS) и ей пользоваться... должно по идее выйти..)
Насчет CUI album art не знаю, а так, можно даже на PSS + foo_run. Хотя лучше конечно на WSH.
А в foo_run ограничение по поводу масок и списка возможных обложек можно обойти, если сделать дополнительный bat-файл.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #77 Aum » 26.05.2010, 00:22

Zin-Uru:А в foo_run ограничение по поводу масок и списка возможных обложек можно обойти, если сделать дополнительный bat-файл.
Вот тут, если не затруднит, по подробнее!! Впринципе через foo_run с хоткеем был бы самый простой и удобный вариант..
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #78 Zin-Uru » 26.05.2010, 01:28

Что-то вроде этого:
Код: Выделить всё
@echo off
if exist "%~dpn1.*" goto 1
if exist "%~dpn2.*" goto 2
if exist "%~dpn3.*" goto 3
if exist "%~dpn4.*" goto 4
if exist "%~dpn5.*" goto 5
if exist "%~dpn6.*" goto 6
if exist "%~dpn7.*" goto 7
if exist "%~dpn8.*" goto 8
if exist "%~dpn9.*" goto 9
goto no_cover
:1
if exist "%~dpn1.png" goto 11
if exist "%~dpn1.jpg" goto 11
goto no_cover
:11
if exist "%~dpn1.png" "%~dpn1.png"
if exist "%~dpn1.jpg" "%~dpn1.jpg"
goto end
:2
if exist "%~dpn2.png" goto 22
if exist "%~dpn2.jpg" goto 22
goto no_cover
:22
if exist "%~dpn2.png" "%~dpn2.png"
if exist "%~dpn2.jpg" "%~dpn2.jpg"
goto end
:3
if exist "%~dpn3.png" goto 33
if exist "%~dpn3.jpg" goto 33
goto no_cover
:33
if exist "%~dpn3.png" "%~dpn3.png"
if exist "%~dpn3.jpg" "%~dpn3.jpg"
goto end
:4
if exist "%~dpn4.png" goto 44
if exist "%~dpn4.jpg" goto 44
goto no_cover
:44
if exist "%~dpn4.png" "%~dpn4.png"
if exist "%~dpn4.jpg" "%~dpn4.jpg"
goto end
:5
if exist "%~dpn5.png" goto 55
if exist "%~dpn5.jpg" goto 55
goto no_cover
:55
if exist "%~dpn5.png" "%~dpn5.png"
if exist "%~dpn5.jpg" "%~dpn5.jpg"
goto end
:6
if exist "%~dpn6.png" goto 66
if exist "%~dpn6.jpg" goto 66
goto no_cover
:66
if exist "%~dpn6.png" "%~dpn6.png"
if exist "%~dpn6.jpg" "%~dpn6.jpg"
goto end
:7
if exist "%~dpn7.png" goto 77
if exist "%~dpn7.jpg" goto 77
goto no_cover
:77
if exist "%~dpn7.png" "%~dpn7.png"
if exist "%~dpn7.jpg" "%~dpn7.jpg"
goto end
:8
if exist "%~dpn8.png" goto 88
if exist "%~dpn8.jpg" goto 88
goto no_cover
:88
if exist "%~dpn8.png" "%~dpn8.png"
if exist "%~dpn8.jpg" "%~dpn8.jpg"
goto end
:9
if exist "%~dpn9.png" goto 99
if exist "%~dpn9.jpg" goto 99
goto no_cover
:99
if exist "%~dpn9.png" "%~dpn9.png"
if exist "%~dpn9.jpg" "%~dpn9.jpg"
goto end
:no_cover
if exist .\skins\tech\images\no-cover.png .\skins\tech\images\no-cover.png
:end
exit
Маску правда нормальную все же не удастся реализовать. Но в расширении указывать можно (если картинка jpg или png), например как может выглядеть в foo_run:
".\show_cover.bat" "$replace(%path%,%filename_ext%,)Covers\front.*" "$replace(%path%,%filename_ext%,)folder.*"

В данном случае программка откроет файл из папки Covers с именем front, после чего прекратит работу. Если не найдет - тогда из папки с муз. файлами и именем folder, и т.д.
Максимум возможных задаваемых в параметрах значений - девять.

По поводу содержимого bat-файла:
1. Если убрать все goto end из кода, то будут открываться все найденные картинки сразу.
2. В разделе :no_cover задается путь к картинке, которая будет открываться в случае отсутствия всех заданных.

В качестве бонуса скомпилированный в exe bat-ник с вышеприведенным кодом. Выгодно отличается тем, что делает свою работу совершенно невидимо (никаких мелькающих черных окон).
Вложения
show_cover.zip
(43.9 КБ) Скачиваний: 676
Последний раз редактировалось Zin-Uru 26.05.2010, 01:41, всего редактировалось 1 раз.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Сообщение #79 Aum » 26.05.2010, 15:46

ого го. спсб. с виду не очень то простой способ..))
Все работает исправно!
т.к. маска не задается - других путей никак не найти?? заставить его выполнить: если не найденны прописанные названия коверов - открывать файл с любым названием?
Aum M
Аватара
Репутация: 20
С нами: 14 лет

Сообщение #80 Zin-Uru » 26.05.2010, 16:43

Aum:т.к. маска не задается - других путей никак не найти?? заставить его выполнить: если не найденны прописанные названия коверов - открывать файл с любым названием?
Да, так не получится. Такое можно реализовать с помощью WSH, но даже там весьма сложно и трудоемко. Так что придется довольствоваться заданием полного имени.
Zin-Uru M
Репутация: 45
С нами: 14 лет 6 месяцев

Пред.След.

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