AIMP Forum

AIMP для Android => Ошибки / Замечания => Topic started by: m1ragex on October 23, 2020, 08:01:46

Title: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 23, 2020, 08:01:46
Добрый день.
Хочу поделиться с создателями программы своими мыслями о работе механизма "выборочного (рандомного) выбора".
Использую Вашу программу на автомагнитоле с OS Android 8.0
Программа установлена последняя на время написания AIMP for Android v3.01, build 981.
Суть проблемы:
Есть каталог с музыкальными композициями (в основном это формат FLAC). В каталоге есть стилевые подкаталоги.
В Вашей программе создаю плейлист, который включает все каталоги. При этом стоит функция "выборочного (рандомного) выбора". Настройки программы по умолчанию!
Проблема состоит в том, что при включении магнитолы и запуске Вашей программы, воспроизведение начинается с одной и той же композиции! И это не всё! Последующие композиции идут четко в том же порядке как и в прошлые разы. Это повторяется постоянно при запуске программы.
Являясь действующим программистом хочу предложить Вам свой код перемешивания списка в плейлесте:
Code: [Select]
# Генератор ID подобных имён                 
sub idGenerator() {
my $id = undef;
my $length = 8;
my @charsarr = ("a".."z","A".."Z",0..9);   # \'\+\&\^\%\$\#\@\!\~,'-','_','(',')'
srand(time()+rand($$));
for(0..$#charsarr) { # Перемешиваем массив   
my $j = int(rand(scalar@charsarr));
@charsarr[$_, $j] = @charsarr[$j, $_];
}
for( my$i = 0; $i < $length; $i++ ) {
$id .= $charsarr[ int(rand(scalar@charsarr)) ];
}
+$id;
}
Код никогда не повторяется по крайней мере при первых запусках) проверенно!
Код написан на PERL но его с легкостью можно переделать под любой язык программирования.
Благодарю за понимание.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Soolo on October 23, 2020, 08:06:37
как вы запускаете приложение?
как завершаете?
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on October 23, 2020, 09:41:33
Плеер хранит очередь воспроизведения в файле плейлиста, в т.ч. рандомизированную. Если плейлист открывать каждый раз заново - очередь останется прежней.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 23, 2020, 09:50:36
Quote
как вы запускаете приложение?
как завершаете?
Включаю зажигание. Включается магнитола и автоматически включается AIMP
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 23, 2020, 09:58:06
Quote
Плеер хранит очередь воспроизведения в файле плейлиста, в т.ч. рандомизированную. Если плейлист открывать каждый раз заново - очередь останется прежней.
Вот в этом и есть ошибка!!! РАНДОМ - подразумевает выбор случайного индекса а не сохраненного.
Это очень неудобно.
Запускается программа -> запускается композиция с которой начинался вчерашний день, все последующие тоже вчерашние. А у меня в общей массе боллее 1000 композиции.
Смекаете на что похоже!? ДЕНЬ СУРКА))
Приходится заходить в плейлист выбирать вручную композицию - далеко стоящую от текущей.
А на следующий день опять все начинается с Delerium feat. Sarah McLachlan - Silence (DJ Tiesto's in Search of Sunrise Remix) (ORIGINAL).flac
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Soolo on October 23, 2020, 10:29:55
Вот в этом и есть ошибка!!! РАНДОМ - подразумевает выбор случайного индекса а не сохраненного.
Расскажите это тем, кто постоянно жалуется на повторы треков при рандоме.

Видимо, ваша магнитола не даёт завершиться приложениям корректно - отсюда и несохранение результатов проигрывания
Ради интереса, попробуйте однажды завершить АИМП через кнопку "выход".

Решение: после запуска проигрывателя выключите и включите рандом обратно - создастся новая очередь.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on October 23, 2020, 10:49:03
Вот в этом и есть ошибка!!! РАНДОМ - подразумевает выбор случайного индекса а не сохраненного.

Во-первых, я не понимаю, откуда у вас столько гонора? Я вам что-то задолжал?
Во-вторых, нет, вы не правы. Очередь рандома НЕ ДОЛЖНА перестраиваться, пока плейлист полностью не проиграет, иначе вы попросту не сможете услышать все треки, в него входящие.

Видимо, ваша магнитола не даёт завершиться приложениям корректно - отсюда и несохранение результатов проигрывания
Ради интереса, попробуйте однажды завершить АИМП через кнопку "выход".

Поддерживаю, попробуйте.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 23, 2020, 12:01:13
Quote
Во-первых, я не понимаю, откуда у вас столько гонора? Я вам что-то задолжал?
Во первых как вы вообще определили сколько у меня гонора. Это форум!!! Здесь каждый высказывает свои мысли - жалко что не вслух! Я вижу проблему в Вашем приложении - решил поделиться Своими соображениями и идеями (бесплатно, заметьте, поделился с Вами кодом "мешалки" )! Или тогда объясните для чего тогда ФОРУМ - что бы Вас расхваливать?
Если у Вас что-то там ёкнуло в Вашем самолюбии - тогда это ни ко мне а к психиатору.
Quote
Во-вторых, нет, вы не правы. Очередь рандома НЕ ДОЛЖНА перестраиваться, пока плейлист полностью не проиграет, иначе вы попросту не сможете услышать все треки, в него входящие.
При выключении должен создаваться новый рандом - тогда вообще проблем не будет!
Quote
Видимо, ваша магнитола не даёт завершиться приложениям корректно - отсюда и несохранение результатов проигрывания
Ради интереса, попробуйте однажды завершить АИМП через кнопку "выход".
Решение: после запуска проигрывателя выключите и включите рандом обратно - создастся новая очередь.
Программисты вы или кто? Разве пользователь приложения AIMP должен должен думать, что там нужно нажимать или отключать?
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Soolo on October 23, 2020, 12:36:41
При выключении должен создаваться новый рандом - тогда вообще проблем не будет!
Будут всё те же жалобы на повторы треков: "я вчера слушал майкла джексона, и сегодня он опять играет, а у меня 5000 треков, ай-яй-яй, вот вам мой уникальный алгоритм рандома, программисты вы или кто"

Разве пользователь приложения AIMP должен должен думать, что там нужно нажимать или отключать?
Думать должны все и всегда. На то мы и человеки, а не планктон.
Об этом должны думать производители устройства.
У меня, к примеру, говённый видеорегистратор завершается корректно при выключении зажигания.
Ваша же магнитола либо физически вырубается способом "рубильник", либо её прошивка слишком кривая, чтобы корректно завершить приложения.
Со стороны АИМПа, возможно, требуется пересохранять плейлист каждые N времени. Но часто это делать некорректно, а при редком сохранении часть треков с предыдущего проигрывания будут проигрываться при новом включении.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on October 23, 2020, 13:22:21
Во первых как вы вообще определили сколько у меня гонора. Это форум!!!

По количеству восклицательных знаков.

решил поделиться Своими соображениями и идеями (бесплатно, заметьте, поделился с Вами кодом "мешалки" )!

Заметьте, я своими разработками с вами так же делюсь бесплатно.

Или тогда объясните для чего тогда ФОРУМ - что бы Вас расхваливать?

Культуру общения никто не отменяет, ни на форуме, ни в слух. Психиатр тут ни при чем.

При выключении должен создаваться новый рандом - тогда вообще проблем не будет!
Программисты вы или кто? Разве пользователь приложения AIMP должен должен думать, что там нужно нажимать или отключать?

Перечитайте мои слова. Нельзя перемешивать плейлист при каждом запуске плеера, иначе вы никогда не дослушаете его до конца! Понимаете?
Мы разработчики, а не говно-кодеры, что кидаются делать любой каприз пользователя, даже в ущерб приложению и здравому смыслу.

P.S.Я рекомендую вам провести эксперимент, о котором мы с Soolo вам сказали, а уже по его результатам поговорим и подумаем, как это решать.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on October 23, 2020, 13:25:48
Со стороны АИМПа, возможно, требуется пересохранять плейлист каждые N времени. Но часто это делать некорректно, а при редком сохранении часть треков с предыдущего проигрывания будут проигрываться при новом включении.

Плеер уже сейчас этим занимается. Часть настроек дампятся каждые 10 минут, часть - сразу при их изменении.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on October 23, 2020, 13:31:52
Давайте для начала разберемся, как вы формируете и запускаете свой плейлист. Напишите четкую последовательность ваших действий за две итерации с указанием, на каком треке первая кончается, и с какого трека начинается вторая.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 26, 2020, 07:54:13
Перечитайте мои слова. Нельзя перемешивать плейлист при каждом запуске плеера, иначе вы никогда не дослушаете его до конца! Понимаете?
Мы разработчики, а не говно-кодеры, что кидаются делать любой каприз пользователя, даже в ущерб приложению и здравому смыслу.
P.S.Я рекомендую вам провести эксперимент, о котором мы с Soolo вам сказали, а уже по его результатам поговорим и подумаем, как это решать.
Во первых я Вас не считаю "говно-кодерами". Использую Вашу программу со времени ее появления.
Все верно при каждом включении выключая и включая функцию "Рандомайзера" плейлист перемешивается. Но приходится это делать каждый раз при включении!!! Это не трудно делать))... Но всё же))
Вы пишите:
Quote
Нельзя перемешивать плейлист при каждом запуске плеера, иначе вы никогда не дослушаете его до конца
Что я заметил:
- при включении через некоторое время, или сначала попадает композиция, которая уже была в этом "перемешивании", а следующая будет та же которая была в прошлый раз именно за этой композицией. Так же обстоит дело с последующими композициями.
Это было мною замечено на протяжении 2 лет, столько я использую магнитолу на ANDROID и установленное Ваше приложение.
Тогда какой смысл не создавать новый "РАНДОМ".
Я своего мнения никому не навязываю. Если включена функция  "Рандомайзера" то лично мне все равно в каком он будет играть порядке, лишь бы композиции проигрывались не подряд, так как конкретно у меня песни собраны по стилям, названию групп и направлениям.
Предлагаю в настройку "Проигрывание" добавить CheckBox с названием "Перемешивать плейлист при каждом запуске" (если включена функция "Рандомайзера").
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Soolo on October 26, 2020, 08:04:00
Что я заметил:
- при включении через некоторое время, или сначала попадает композиция, которая уже была в этом "перемешивании", а следующая будет та же которая была в прошлый раз именно за этой композицией. Так же обстоит дело с последующими композициями.
Это было мною замечено на протяжении 2 лет, столько я использую магнитолу на ANDROID и установленное Ваше приложение.
Тогда какой смысл не создавать новый "РАНДОМ".
Я своего мнения никому не навязываю. Если включена функция  "Рандомайзера" то лично мне все равно в каком он будет играть порядке, лишь бы композиции проигрывались не подряд, так как конкретно у меня песни собраны по стилям, названию групп и направлениям.
Предлагаю в настройку "Проигрывание" добавить CheckBox с названием "Перемешивать плейлист при каждом запуске" (если включена функция "Рандомайзера").
Переливаете из пустого в порожнее, мы это уже слышали.
1. Вы так и не ответили, как вы завершаете АИМП?
По-видимому никак, просто выключаете зажигание.
2. Тогда второй вопрос: как завершается магнитола?
Нормальное выключение с показом заставки или физическое вырубание типа рубильник?
3. У вас всегда одна и та же последовательность треков играет?
Или при поездках более 10 минут всё-таки повторяются только последние 3-4 трека с предыдущей поездки, а не все (условно) 20?
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: gr-e on October 26, 2020, 08:09:26
- при включении через некоторое время, или сначала попадает композиция, которая уже была в этом "перемешивании", а следующая будет та же которая была в прошлый раз именно за этой композицией.
Это же не нормально, воспроизведение должно начинаться с того трека, на котором оно закончилось. Нужно решать эту проблему, а не костылить перемешиванием при включении. Например, дать возможность включить учащенное сохранение очереди для устройств, которые не дают нормально завершиться плееру.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: m1ragex on October 29, 2020, 13:37:32
Переливаете из пустого в порожнее, мы это уже слышали.
1. Вы так и не ответили, как вы завершаете АИМП?
По-видимому никак, просто выключаете зажигание.
2. Тогда второй вопрос: как завершается магнитола?
Нормальное выключение с показом заставки или физическое вырубание типа рубильник?
3. У вас всегда одна и та же последовательность треков играет?
Или при поездках более 10 минут всё-таки повторяются только последние 3-4 трека с предыдущей поездки, а не все (условно) 20?
Как я выключаю AIMP?!
Да за меня продумали все создатели магнитолы. Когда я выключаю зажигание магнитола выключается, но не сразу, а плавно.
Включается она также от зажигания: Включил зажигание => магнитола начинает запускаться. На "рабочем столе" запущено то приложение которое было до выключения. В данном случае AIMP. Который и начинает после загрузки проигрывать композиции (правда случается это не всегда!).
Кстати это еще один "Баг" подмеченный мною - Если в плейлисте находятся композиции только из одной папки (допустим это: LOSSLESS -> ROCK -> Metallica) и внутри этой папки больше нет вложенных папок, то при запуске AIMP композиции сами не включаются, а приходится нажимать кнопочку <PLAY>. А судя по настройкам композиция должна включиться имена та на которой закончилось воспроизведение.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: nick.kharchenko on November 23, 2020, 12:05:15
Поддержу топикстартера. Сортировка при запуске вполне могла бы быть уместной опцией. Как в Android, так и в Windows.

На похожую тему обращал внимание: https://www.aimp.ru/forum/index.php?topic=65810.msg406755#msg406755
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: Artem on November 23, 2020, 13:53:19
Поддержу топикстартера. Сортировка при запуске вполне могла бы быть уместной опцией. Как в Android, так и в Windows.

На похожую тему обращал внимание: https://www.aimp.ru/forum/index.php?topic=65810.msg406755#msg406755

Здесь обсуждается отнюдь не сортировка. А  сценарий из "похожей темы" решен как в ПК, так и в мобильной версии
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: SergGrebnev on November 30, 2020, 12:10:43
Переливаете из пустого в порожнее, мы это уже слышали.
1. Вы так и не ответили, как вы завершаете АИМП?
По-видимому никак, просто выключаете зажигание.
2. Тогда второй вопрос: как завершается магнитола?
Нормальное выключение с показом заставки или физическое вырубание типа рубильник?
3. У вас всегда одна и та же последовательность треков играет?
Или при поездках более 10 минут всё-таки повторяются только последние 3-4 трека с предыдущей поездки, а не все (условно) 20?

Такая же проблема, как у ТС. Ежедневно еду до/с работы 15 минут, постоянно включается с одного и того же трека и всегда одна и та же псевдослучайная последовательность.
1. АИМП, перед выключением зажигания, не завершаю. Он, как правило, работает в фоне, параллельно с ещё 2-3 приложениями.
2. Магнитола выключается не как рубильником. После выключения зажигания экран гаснет, но подсветка кнопок горит ещё минут 5. После этого, думаю, выключается полностью. Как она завершает приложения - не знаю. (Китайская поделка)
3. Одна и та же последовательность включается если перерыв в работе минут 10 и больше. Если перерыв в пределах 5-10 минут, то продолжает играть с момента на котором остановилась при выключении (может этот момент как-нибудь получше запоминать?).

Если нужны более точные измерения интервалов времени или какие-либо другие эксперименты, готов помочь.
Title: Re: Неправильня работа "выборочного (рандомного) выбора" в плейЛисте!!!
Post by: SergGrebnev on December 01, 2020, 04:01:34
Ждал долго, но всё-таки, похоже, поторопился с написанием предыдущего сообщения.
Вчера вечером обновил AIMP. Поэкспериментировал - проигрывает разные треки. Сегодня с утра включился и опять всё новенькое. Круто.
Ребята, спасибо...