AIMP Forum

AIMP для Windows => Плагины => Дополнения (Plugins / Skins) => Плагины-дополнения => Topic started by: Awakunar on December 30, 2015, 20:10:09

Title: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on December 30, 2015, 20:10:09
[catalog_card=1060]
Title: Re: AIMP Stop (остановить после текущей группы)
Post by: hrojedef on December 30, 2015, 22:03:55
включается в меню "Разное".
пара особенностей:
-не включается если воспроизведение остановлено
-отключается при смене плейлиста
Работает, но обнаружена ещё пара особенностей:
-по завершении группы захватывает секунду первого файла в следующей группе, успевает появиться инфо-лента.
-если после завершения и остановки группы запустить любой файл в этой группе, он играет секунду и останавливается. (причём эта "фича" накапливается: прослушал в плейлисте группу 1, плагин остановил. Прослушал в плейлисте группу 2, плагин остановил. Вернулся к группе 1 - первый запуск любого файла обрывается. После вернулся к группе 2 - первый запуск любого файла обрывается). Повторный запуск играет нормально.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on January 04, 2016, 12:54:44
-отключается при смене плейлиста

вот кстати, этой фичи я не понял. Логичней было бы отключать по завершении текущей группы, по аналогии с остановкой после файла.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on January 04, 2016, 13:03:40
-отключается при смене плейлиста

вот кстати, этой фичи я не понял. Логичней было бы отключать по завершении текущей группы, по аналогии с остановкой после файла.
нормальная фича: раз вы запустили трек в другом плейлисте - значит остановка после той группы (в прошлом плейлисте) вам уже не нужна
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 04, 2016, 13:11:03
ну это показалось логичным т.к. у другого плейлиста вообще группы могли быть отключены.
а насчет того чтобы отключать каждый раз: делал по аналогии с настройками в плеере - там один раз включил галочку и он стопает после каждого трека.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on January 04, 2016, 14:08:47
нормальная фича: раз вы запустили трек в другом плейлисте - значит остановка после той группы (в прошлом плейлисте) вам уже не нужна
Всё правильно, так и должно быть, но почему именно только в другом плейлисте? если я, не дослушав, запускаю трек в другой группе того же плейлиста (или по завершению и остановке текущей группы), можно было бы деактивировать эту настройку. Если, скажем, установлено остановить после файла, то по запуске другого файла настройка ведь не сохраняется.
по аналогии с настройками в плеере - там один раз включил галочку и он стопает после каждого трека.
Что-то я не понял ??? там всё ровно наоборот же.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: KorneySan on January 05, 2016, 15:39:54
Не нашёл в AIMP4 галки "Остановить после текущего", только команду в горячих клавишах.
Работает только на текущем треке. После остановки трека (по окончанию или кнопкой стоп) или после ручного перехода на другой команда отключается, а не "стопает после каждого".
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 05, 2016, 15:57:13
да я похоже спутал с "Автоматически переходить на следующий трек"
Title: Re: AIMP Stop (остановить после текущей группы)
Post by: hrojedef on January 05, 2016, 16:07:02
-по завершении группы захватывает секунду первого файла в следующей группе, успевает появиться инфо-лента.
Тоже неплохо бы исправить. :-[
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on January 05, 2016, 16:09:03
Не нашёл в AIMP4 галки "Остановить после текущего", только команду в горячих клавишах.
Работает только на текущем треке. После остановки трека (по окончанию или кнопкой стоп) или после ручного перехода на другой команда отключается, а не "стопает после каждого".
Команду можно вызвать с помощью контекстного меню по кнопке Стоп. Кстати, именно в это меню было бы неплохо закинуть команду "Остановить по окончании группы"
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 05, 2016, 16:17:53
Кстати, именно в это меню было бы неплохо закинуть команду "Остановить по окончании группы"
в апи к нему доступа нет
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on January 05, 2016, 16:24:58
в апи к нему доступа нет
У меня было такое подозрение. Печаль
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: KorneySan on January 05, 2016, 18:02:34
Тоже неплохо бы исправить. :-[
Я смотрел исходники, там надо немного по-другому делать.
в апи к нему доступа нет
Надо просить Артёма, чтобы добавил.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 05, 2016, 18:23:41
Надо просить Артёма, чтобы добавил.
слишком уж специфично.

окей, вторая версия:
-отключается при остановке
-отключается при смене группы
-полностью изменил логику: теперь плагин запрашивает следующий файл и если группа этого файла равна номеру текущей группы+1 то он включает "Остановку после текущего трека"
-куча новых багов и "особенностей"
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on January 05, 2016, 18:54:48
Петерь другое дело! За труды+++
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on January 05, 2016, 18:55:34
окей, вторая версия:
-отключается при остановке
-отключается при смене группы
-полностью изменил логику: теперь плагин запрашивает следующий файл и если группа этого файла равна номеру текущей группы+1 то он включает "Остановку после текущего трека"
-куча новых багов и "особенностей"
Шикарно. +
Такая логика мне нравится
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: KorneySan on January 05, 2016, 19:22:38
теперь плагин запрашивает следующий файл и если группа этого файла равна номеру текущей группы+1 то он включает "Остановку после текущего трека"
Ну я же говорил - ДРУГАЯ группа, ЛЮБАЯ ДРУГАЯ, а не +1, не факт, что индекс будет больше.  ;D
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 05, 2016, 19:27:01
Ну я же говорил - ДРУГАЯ группа, ЛЮБАЯ ДРУГАЯ, а не +1, не факт, что индекс будет больше.  ;D
ну а если руками другую группу выбрали? по логике плагина - надо стопать.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on January 05, 2016, 19:34:04
ну а если руками другую группу выбрали? по логике плагина - надо стопать.
да не, выбрал другу группу - включи стопанье заново
логика должна быть максимально приближена к работе "остановить после текущего трека"

Кстати, баг: если включил остановку после группы, выбрал другую группу руками - то срабатывает выключение после текущего трека (независимо, последний он в группе или нет)
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 05, 2016, 20:11:03
да не, выбрал другу группу - включи стопанье заново
логика должна быть максимально приближена к работе "остановить после текущего трека"

Кстати, баг: если включил остановку после группы, выбрал другую группу руками - то срабатывает выключение после текущего трека (независимо, последний он в группе или нет)
да так и было по идее.

3я версия - просто сравнивает текущий трек с последней песней в группе, если равны включает остановку
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on January 17, 2016, 15:07:59
2я версия не срабатывает, если следующая за текущей группа выключена. Поставил третью.
3-я версия не работает, если по какой-то причине последний трек выключен. Вернул обратно вторую. ;D посмотрим, что бывает чаще.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on January 17, 2016, 22:04:46
3-я версия не работает, если по какой-то причине последний трек выключен.
вроде исправил, попробуйте.

одно НО - если активировать плагин на последнем файле группы и он выключен - не сработает.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on January 17, 2016, 22:20:39
вроде исправил, попробуйте.
Полёт нормальный.
одно НО - если активировать плагин на последнем файле группы и он выключен - не сработает.
До такого я вряд ли додумался бы, всё-таки плагин предназначен для прослушивания групп, а не последних выключенных файлов.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: hrojedef on February 03, 2019, 20:36:23
Аларм! На 2113 не работает. Галка в меню выставляется, но не срабатывает.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on February 04, 2019, 05:44:08
Аларм! На 2113 не работает. Галка в меню выставляется, но не срабатывает.
скорее всего баг в самом плеере - он не принимает изменение свойства AIMP_MSG_PROPERTY_STOP_AFTER_TRACK (другие при этом меняются)
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: KorneySan on February 04, 2019, 10:56:55
скорее всего баг в самом плеере - он не принимает изменение свойства AIMP_MSG_PROPERTY_STOP_AFTER_TRACK (другие при этом меняются)
Делаете так:
Code: [Select]
var lb: LongBool;
lb:=true;
IAIMPServiceMessageDispatcher.Send(AIMP_MSG_PROPERTY_STOP_AFTER_TRACK, AIMP_MSG_PROPVALUE_SET, @lb);
?
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Awakunar on February 04, 2019, 15:28:29
да, примерно так и делал.
суть в том что на 2084 это работает и года 3 назад это работало, а на 2115 нет - значит или изменилось апи и нам ещё не сказали или что-то сломалось
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Soolo on February 04, 2019, 15:45:12
да, примерно так и делал.
суть в том что на 2084 это работает и года 3 назад это работало, а на 2115 нет - значит или изменилось апи и нам ещё не сказали или что-то сломалось
Артём уже в курсе, как посмотрит - так будет понятно в чём дело.
Title: Re: StopAfterCurrentGroup (остановить после текущей группы)
Post by: Artem on February 04, 2019, 19:10:30
Баг, да