Page 2 of 3

Плагин для управления плейлистом в Foobar

Posted: Tue 15 Mar, 2022 10:38
by spacedrone808

Latest post of the previous page:

Это вам спасибо!
Завелось. Но созданный плейлист не понимает foobar и судя по всему чтото не то с кодировкой, в переменной owner guid кракозябры.

Несколько комментариев:
  • удаление по f8 возможно тока для одного файла, было бы здорово чтоб это действовало на выделенные
  • добавление папок похоже еще не реализовано
  • если что, могу что-то типа хелпа сделать и как пользоваться

Панельный модуль для обслуживания плейлистов

Posted: Tue 15 Mar, 2022 12:23
by HaRT
 ! Message from: HaRT
spacedrone808 wrote: Tue 15 Mar, 2022 09:56 такая ошибка
Как правильно делать снимки экрана (особенно про «текстовые»)

Панельный модуль для обслуживания плейлистов

Posted: Tue 15 Mar, 2022 12:30
by HaRT
 ! Message from: HaRT
buniak_a_h wrote: Tue 15 Mar, 2022 10:35 «Plugins -> Предложения и идеи»
Я перенёс

Панельный модуль для обслуживания плейлистов

Posted: Tue 15 Mar, 2022 13:26
by Wave
buniak_a_h wrote: Mon 14 Mar, 2022 17:45 Сразу вопрос: имеется в виду плагин AudioPlayer ?
Да.
buniak_a_h wrote: Mon 14 Mar, 2022 17:45 Ниже я про плагин AudioPlayer.
Много раз запускал, переводил плейер в фон (вручную) и снова вытаскивал - не виснет, гад! Но всё же нашёл неприятности.
Я повторюсь на всякий случай: плагин аудиоплеер у меня получалось запускать только так же, как я его запускаю на обычных панелях по F3 ассоциацией вида:
lua: Keys("F11"); Menu.Select("Audio player", 3); Keys("Enter");
(кривовато, но у меня многие ассоциации подобным образом настроены. Там кое-какие несущественные подробности опущены).
buniak_a_h wrote: Mon 14 Mar, 2022 17:45 неправильный порядок действий. Имелось в виду, что сначала нужно экспортировать отмеченные/все файлы в файл (F6), а затем проиграть его по F7.

И, кстати, спасибо за AIMP - не знал, что он тоже запускается с параметрами командной строки. И! У меня - проигрывает…
Ага. Пользуюсь аимпом, когда не фаром с плагином плеера. Так что появлению этого скрипта обрадовался и буду пользоваться. Спасибо!
buniak_a_h wrote: Mon 14 Mar, 2022 17:45 Настройки хранятся в базе плагина LuaFAR. Туда из пишет функция mf.msave. Ну, мне так казалось проще и с точки зрения ресурсов эффективнее. Прочитать и посмотреть их можно командой lua:require"le"(mf.mload('BAX','Playlist'))
Я смутно подозреваю, что многие плагины-скрипты делают так же, а не хранят данные в PluginsData, но о подробностях и средствах работы представления не имею. Например, не знаю, в каком формате возвращает данные этот mload и что с ними делать. Базы в PluginsData можно хотя бы в виде файлов туда-сюда бэкапить\удалять\etc и любыми утилитами для sqlite потрошить. Разберусь как-нибудь на досуге, но попозже, в другой раз.

Проблему непоявления модуля в меню понял. Тут я сам дурак. У меня плагин MediaInfo грузится не при старте ФАРа, а макросом по запросу. А модуль не находит плагина и — всё.
buniak_a_h wrote: Mon 14 Mar, 2022 17:58 P/S. И, кстати, в окне настроек есть кнопка "Сбросить"
Ну так по вышеозначенной причине и окна настроек не было.

Панельный модуль для обслуживания плейлистов

Posted: Tue 15 Mar, 2022 14:54
by buniak_a_h
Wave wrote: Tue 15 Mar, 2022 13:26 плагин аудиоплеер у меня получалось запускать только так же
У меня запускается так (в командной строке 3 команды):

Code: Select all

chcp 65001
dir /b *.mp3 >qwe.m3u8
lua:Plugin.Command('9C3A61FC-F349-48E8-9B78-DAEBD821694B', '/h /p2 "qwe.m3u8"')
Проверьте, пож. . Возможно, надо обновить AudioPlayer
Wave wrote: Tue 15 Mar, 2022 13:26 Я смутно подозреваю, что многие плагины-скрипты делают так же
На самом деле я думаю, что все плагины делают так. Скрипт исполняется плагином LuaFAR, который всё, что должно сохраняться по mf.msave, пишет в свою базу. Так что тут не исключение. Я так думаю…
Wave wrote: Tue 15 Mar, 2022 13:26 в каком формате возвращает данные этот mload
mf.mload возвращает буквально то, что туда поместила mf.msave (ну, кроме функций и хендлеров, я думаю). Т.е. если сохранялась таблица, то и прочитается таблица. Внутренняя кухня для пользования не нужна, но я поясню. Есть функция mf.serialize, переводящая таблицу в текстовый вид (в текст функции, на выходе возвращающая точно такую же таблицу, что была на входе). Вот эта строка (а она может быть очень длинная!) и пишется в базу.

Панельный модуль для обслуживания плейлистов

Posted: Tue 15 Mar, 2022 20:01
by Wave
buniak_a_h wrote: Tue 15 Mar, 2022 14:54 Т.е. если сохранялась таблица, то и прочитается таблица.
Я до сих пор не имею понятия, что есть таблица в контексте луа. Массив? Собсно, это всё, что нужно знать о моих познаниях в луа и луафар.
buniak_a_h wrote: Tue 15 Mar, 2022 14:54 У меня запускается так (в командной строке 3 команды):

chcp 65001
dir /b *.mp3 >qwe.m3u8
lua:Plugin.Command('9C3A61FC-F349-48E8-9B78-DAEBD821694B', '/h /p2 "qwe.m3u8"')

Проверьте, пож.
Ага, работает. Ну, посмотрю, буду ли где-то это использовать или всё останется как есть, примотанное синей изолентой.

Обновил модуль. Проверил F6 - F7 и просто F7 — запускается AIMP, всё отлично.
Удаление файлов по одному немного непривычно, но я пока не сильно уверен, так ли уж мне нужно массовое удаление.

Таааак… Что-то не получается копировать с мультимедиа-панели куда-нибудь.

Code: Select all

 ╔═════════ Выгрузка трека ═════════╗
 ║    Неудача копирования файла     ║
 ║            japan.mp3             ║
 ║             в папку              ║
 ║               D::                ║
 ╟──────────────────────────────────╢
 ║ Не удается найти указанный файл. ║
 ╟──────────────────────────────────╢
 ║              { OK }              ║
 ╚══════════════════════════════════╝
Ага, вот, нашёл. Я очистил мультимедиа-панель, потом на неё накидал файлов. Вылезла вот эта ошибка. При попытке F7 в AIMPе вылезла ошибка

Code: Select all

File: C:\Users\Wave\AppData\Local\Temp\japan.mp3
Code: -1 (FFFFFFFF)
Message: File was not found.
Неудивительно, сам файл лежит на D: в папке MP3.

Панельный модуль для обслуживания плейлистов

Posted: Wed 16 Mar, 2022 13:50
by buniak_a_h
Версия 1.1.4
  1. Реализована возможность первоначальной загрузки треков из вложенных папок. При этом ни текущий фильтр, ни настройка Panel.ShowHidden не учитываются. Анализ подпапок производится в зависимости от настройки. Изначально значение настройки

    Code: Select all

    [?] При загрузке в панель просматривать подкаталоги
    (при загрузке будет задан вопрос).
  2. Предусмотрена более "интеллектуальная" процедура выгрузки файла с треком в папку. Если в папке назначения файл существует, то теперь будет запрошено подтверждение на перезапись.
  3. При выгрузке группы отмеченных треков отметка снимается.
  4. Реализована возможность вычёркивания помеченных треков.
  5. Исправлена ошибка, из-за которой при загрузке треков с пассивной панели в плейлист терялся путь к файлу. В результате с таким файлом в дальнейшем сделать ничего было нельзя (ни проиграть, ни выгрузить).
spacedrone808 wrote: Tue 15 Mar, 2022 10:38 если что, могу что-то типа хелпа сделать и как пользоваться
Если сможете - буду рад. Ну, точнее, будут, наверно, рады те, кто потом будет модулем пользоваться. А то я полдня потратил на рисование настроечной картинки в hlf-файле
Wave wrote: Tue 15 Mar, 2022 20:01Ага, работает
Тогда должно работать и проигрывание плагином из скрипта
Wave wrote: Tue 15 Mar, 2022 20:01 Удаление файлов по одному немного непривычно
Это ошибка была. Исправлена.
Wave wrote: Tue 15 Mar, 2022 20:01Ага, вот, нашёл. …
Да, при загрузке я "терял" исходный путь. Исправлено. Возможно, предыдущее замечание
Wave wrote: Tue 15 Mar, 2022 20:01 Неудача копирования файла
… … … …
Не удается найти указанный файл.
тоже исправится.

Панельный модуль для обслуживания плейлистов

Posted: Wed 16 Mar, 2022 13:52
by buniak_a_h
P/S. Импорт папки (F5 на пассивной панели) будет реализовано позже.

Панельный модуль для обслуживания плейлистов

Posted: Wed 16 Mar, 2022 15:26
by buniak_a_h
Версия 1.1.5
  1. Теперь по Enter-у указанным в настройке проигрывателем проигрывается текущий трек.
  2. При импорте папки с другой панели импортируются файлы этой папки и её подпапок.

Панельный модуль для обслуживания плейлистов

Posted: Thu 17 Mar, 2022 12:30
by spacedrone808
Офигенно. Буду тестировать.

Панельный модуль для обслуживания плейлистов

Posted: Thu 17 Mar, 2022 14:04
by spacedrone808
Куда лучше скинуть хелп в формате фара?

Панельный модуль для обслуживания плейлистов

Posted: Thu 17 Mar, 2022 15:55
by buniak_a_h
spacedrone808 wrote: Thu 17 Mar, 2022 14:04 Куда лучше скинуть хелп в формате фара?
Сюда. Я его потом в поставку включу. Я там несколько орфографических ошибок исправлял…

Панельный модуль для обслуживания плейлистов

Posted: Thu 17 Mar, 2022 16:14
by spacedrone808
Ну забил что понял и знал, скорее всего что-то пропустил.
Вот собственно файл.

Панельный модуль для обслуживания плейлистов

Posted: Thu 17 Mar, 2022 16:24
by buniak_a_h
spacedrone808, спасибо. Хотя список хоткеев не полный (ShiftF7, Enter) :-) Ну и надо бы (я сам сделаю) добавить ссылку на эту тему форума. Это - экспресс-анализ.

Панельный модуль для обслуживания плейлистов

Posted: Fri 18 Mar, 2022 11:34
by spacedrone808
А что shiftF7 делает?

Панельный модуль для обслуживания плейлистов

Posted: Fri 18 Mar, 2022 13:09
by buniak_a_h
spacedrone808 wrote: Fri 18 Mar, 2022 11:34 А что shiftF7 делает?
Тоже проигрывает, но спрашивает, каким - внутренним (плагином AudioPlayer-ом) или внешним проиграть. Просто иногда для скорости можно плагином проиграть, а потом сформировать окончательный плейлист и запустить "хорошим" проигрывателем (у меня AIMP даёт лучший звук, т.к. эквалайзер подстраивает)