AIMP Forum

AIMP for Windows => Ошибки и замечания / Bugs => Обработано / Processed => Topic started by: nibelung on July 08, 2022, 10:09:19

Title: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 08, 2022, 10:09:19
AIMP не читает треки с длинными путями.
Например, трек с таким путём D:\Noby.uCoz.R\Authors\Chopin - Solo and for Piano & Orchestra Works - Shebanova, 2009-2010 (14CD NIFC)\12 1845-1849 Mazurkas Op. 59, 63 & 67, Barcarolle, Polonaise-Fantasy, Nocturnes Op. 62, Waltzes Op. 64 etc\17 Tatiana Shebanova - Largo In E Flat Major (1847).flac
Он не читается. В принципе, и Винда их не сможет, например, переименовать. Но foobar 2000 такие треки легко проигрывает. Проблема довольно типическая, учитывая, какие длинные имена треков сейчас скачивается (и покупается) в медиапространстве. Нельзя ли "подтянуть" AIMP к Фубару в этой функциональности? Очень актуально...
Title: Re: Не читаются треки с длинными путями.
Post by: Artem on July 08, 2022, 10:13:45
Вообще-то поддержка длинных путей в плеере есть, и уже довольно давно.
Укажите версию плеера и версию Windows.
Title: Re: Не читаются треки с длинными путями.
Post by: nibelung on July 08, 2022, 15:23:07
У меня Aimp 5.02.2370, Windows 10.
Title: Re: Не читаются треки с длинными путями.
Post by: Soolo on July 08, 2022, 15:43:37
У меня Aimp 5.02.2370, Windows 10.
Создал такой путь - никаких вопросов, воспроизводится.
Может ваш файловый менеджер не передаёт этот путь?
Как вы добавляете файл в плейлист?
Title: Re: Не читаются треки с длинными путями.
Post by: nibelung on July 08, 2022, 17:09:21
Просто нажимаю на файл с расширением .flac. По умолчанию он открывается AIMP. Либо левой кнопкой двойным щелчком, либо правой кнопкой - Меню - Открыть.
Title: Re: Не читаются треки с длинными путями.
Post by: nibelung on July 08, 2022, 17:21:53
Если у меня какая-то неправильная настройка, то где она стоит? Я не нашёл.
Title: Re: Не читаются треки с длинными путями.
Post by: Soolo on July 08, 2022, 18:31:07
Просто нажимаю на файл с расширением .flac. По умолчанию он открывется AIMP. Либо левой кнопкой двойным щелчком, либо правой кнопкой - Меню - Открыть.
В какой программе вы нажимаете на файл?
Title: Re: Не читаются треки с длинными путями.
Post by: nibelung on July 08, 2022, 19:00:05
Обычное нажатие мыши на файл. Открыта папка, где лежат файлы (в проводнике).
Title: Re: Не читаются треки с длинными путями.
Post by: Алексей Долматов on July 08, 2022, 19:07:21
Если плейлист Default пустой, то что происходит при попытке воспроизвести файл?
Например, файл не отображается в плейлисте или плеер показывает ошибку при двойном клике по единственной записи в плейлисте, либо в плейлисте файл отображается серым текстом с пометкой not found.
Title: Re: Не читаются треки с длинными путями.
Post by: Алексей Долматов on July 08, 2022, 19:34:19
Создал идентичный путь по образцу в первом сообщении. Проверил на Windows 11 22000.778. AIMP 5.03 Alpha, build 2395 (05.07.2022). Дополнительно Total Commander 10.50.

Файл вообще не добавляется в плеер при запущенном плеере. Перетаскивание тоже не работает.

При закрытом плеере один раз получил ошибку в плеере, предварительно система думала несколько секунд что делать с запросом на открытие:
Code: [Select]
File: \\?\D:\Noby.uCoz.R\Authors\Chopin - Solo and for Piano & Orchestra Works - Shebanova, 2009-2010 (14CD NIFC)\12 1845-1849 Mazurkas Op. 59, 63 & 67, Barcarolle, Polonaise-Fantasy, Nocturnes Op. 62, Waltzes Op. 64 etc\17 Tatiana Shebanova - Largo In E Flat Major (1847).flac
Code: -1 (FFFFFFFF)
Message: File was not found.
Как видно, во втором случае путь отличается только дополнительным текстом адресного пути. Проводник тоже показывает в свойствах файла расположение через \\?\. Похоже, плеер не обрабатывает такой тип пути. Причём пишет, что не имеет к нему доступа, если использовать быстрое редактирование тегов.

В остальных случаях запуска плеер запускался без передачи имени объекта. Т.е. при попытке "открыть" или "открыть с помощью" из проводника или Total Commander.
Code: [Select]
C:\PROGRA~1\AIMP\AIMP.exe -Embedding
Эти манипуляции делал без настройки LongPathsEnabled в системе.
\\?\ является штатным (задокументированным) префиксом.
https://docs.microsoft.com/ru-ru/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd
По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.
Title: Re: Не читаются треки с длинными путями.
Post by: Artem on July 08, 2022, 20:28:15
Со стороны плеера \\?\ поддерживается, я уже писал об этом выше.

По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.

Я не понял эту фразу, что именно ты имел в виду?
Title: Re: [2395] Не читаются треки с длинными путями
Post by: nibelung on July 08, 2022, 20:39:39
При попытке воспроизвести файл с очень длинным именем плейер появляется и показывает предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 08, 2022, 21:05:00
Со стороны плеера \\?\ поддерживается, я уже писал об этом выше.

Я не понял эту фразу, что именно ты имел в виду?
Написано было про длинные пути. Про префикс ты не писал. Если в плейлисте файл без префикса, то воспроизводит. Если с префиксом, то ошибка File was not found. Причём префикс добавляется и при добавлении через плеер (+ файлы).

Это всё про параметр LongPathsEnabled, который я у себя не включал.
Почему-то без него у меня плеер не видит указанный путь. Если после добавления файла нажать F4, потом выбрать переименование (F2) и убрать префикс, то плеер начинает видеть файл и воспроизводить его. Затем, если снова нажать F4 и переименовать в прежний путь с префиксом, то получаю ошибку "Процесс не может получить доступ к файлу, так как этот файл занят другим процессом". Не даёт сохранить путь при переименовании в малом редакторе тегов (F4). Остановка воспроизведения, перезапуск плеера не помогают. Та же ошибка.
Вот поэтому и пишу, что нужна проверка после настройки LongPathsEnabled. Есть подозрение, что ОС сама ограничивает доступ к файлу по указанному пути.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 08, 2022, 21:14:10
При попытке воспроизвести файл с очень длинным именем плейер появляется и показывает предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его.
Как то неоднозначно написано. После последней запятой читается совместно к структуре "предыдущий нормально воспроизводивщийся трек или целый плейлист", т.е. "предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его" = не проигрывает предыдущий трек или плейлист.
Верно понимаю, что ситуация аналогична моей, когда файл из проводника не добавляется плеер? При этом плеером можно пользоваться, другие файлы воспроизводит.

Желательно, написать точную версию Windows 10.
Это важно, если рассматривать статью по ссылке выше, т.к. параметр не для всех версий Windows 10.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 08, 2022, 21:16:02
Создал такой путь - никаких вопросов, воспроизводится.
Просьба показать или написать какой путь показывает плеер по F4 (в частности, наличие префикса).
Как написал выше, у меня без префикса и с префиксом разный результат.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: nibelung on July 08, 2022, 21:31:38
Версия Винды Windows 10 21H1 (сборка ОС 19043.1766). Если я пытаюсь открыть файл с длинным путём, появляется табличка плеера. На ней название последнего успешно воспроизводившегося трека. Если это был не трек, а целый плейлист, то всего плейлиста. Сам по себе старый трек (плейлист) не автозапускается, но если нажать на плэй, то играет. Сам же трек с длинным путём не воспризводится. Но фубаром - пожалуйста!
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 08, 2022, 23:10:00
появляется табличка плеера. На ней название последнего успешно воспроизводившегося трека.
Звучит необычно. Можно скриншот или запись экрана?
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Artem on July 08, 2022, 23:40:07
сли с префиксом, то ошибка File was not found.

а как он у тебя в плейлист с префиксом попал? Плеер подставляет префикс сам при обращении к API. Видимо, получается двойной профикс, поэтому и не работает.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Artem on July 08, 2022, 23:49:04
Видимо, получается двойной профикс, поэтому и не работает.

Да, так и есть
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Artem on July 08, 2022, 23:51:00
а как он у тебя в плейлист с префиксом попал

Виндовый диалог стал подставлять префикс, чего раньше не было. Если добавлять файлы через мой диалог (например, папку целиком) - такого не будет и все будет работать.
В общем, баг подтверждаю, буду фиксить
Title: Re: [2395] Не читаются треки с длинными путями
Post by: nibelung on July 08, 2022, 23:57:39
Звучит необычно. Можно скриншот или запись экрана?
Блин! Я не знаю вашу терминологию... Обычная картинка aimp с треком...
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Artem on July 09, 2022, 00:00:43
Блин! Я не знаю вашу терминологию... Обычная картинка aimp с треком...

https://ru.wikipedia.org/wiki/Снимок_экрана
Мы хотим посмотреть как она выглядит
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 09, 2022, 00:17:20
Сборка в альфа-канале
Title: Re: [2395] Не читаются треки с длинными путями
Post by: nibelung on July 09, 2022, 00:27:31
Quote from: Artpt
Мы хотим посмотреть как она выглядит
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 09, 2022, 08:57:02
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw

Где окошечко с ошибкой?
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 09, 2022, 13:15:30
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw
Т.е. не "табличка", а стандартное окно плеера.

Судя по всему, описанная мной ситуация: Система Windows не передаёт путь трека плееру.

Проверить можно в системном диспетчере задач (CTRL+SHIFT+ESC): вкладка "Подробности", колонка "Командная строка". Колонка включается через правый клик по названиям колонок и пункт "Выбрать столбы". Нужно закрыть плеер, а потом попытаться открыть файл в проводнике. Скорее всего, результат будет идентичен моему:
Code: [Select]
C:\PROGRA~1\AIMP\AIMP.exe -Embedding
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Soolo on July 09, 2022, 13:21:55
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
Title: Re: Не читаются треки с длинными путями.
Post by: Алексей Долматов on July 09, 2022, 13:44:16
Эти манипуляции делал без настройки LongPathsEnabled в системе.
<...>
https://docs.microsoft.com/ru-ru/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd
По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.
Так. Моя ошибка.   :-[ Не настраивал параметр, а, оказывается, он по умолчанию включен в системе. Что-то я тогда не понимаю работу системы в этом направлении. Может ли быть проблема в манифесте исполняемого файла проводника, т.е. ошибка компании Microsoft?

На уровне Total Commander передачу полного имени пути решил через создание внутренней ассоциации с типом файлов. Параметр %1 передаёт путь с префиксом. При стандартном открыти, как понимаю, передача пути файла производится средствами системы.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 09, 2022, 13:50:08
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
Со стороны плеера проблема решена, независимо от наличия префикса в плейлисте плеера (F4), включая использование функции переименования в этом окне.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 09, 2022, 20:14:16
Где окошечко с ошибкой?
Там видно, что выделен в проводнике один трек, а готов к проигрыванию другой, который проигрывался до этого из папки с коротким путём.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 09, 2022, 20:18:19
Т.е. не "табличка", а стандартное окно плеера.
Да, конечно, окно. Забыл это слово. 65 лет мне почти, мозг глючит.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 09, 2022, 20:33:38
Там видно, что выделен в проводнике один трек, а готов к проигрыванию другой, который проигрывался до этого из папки с коротким путём.


Все понятно. это всего лишь значит, что плеер не получил файл. попробуйте на вчерашней ночной сборке
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 09, 2022, 20:46:53
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
Установил альфа-версию 5.03.2395. От 9.07.2022. Вопрос не решён.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 09, 2022, 21:22:22
Установил альфа-версию 5.03.2395. От 9.07.2022. Вопрос не решён.
Добавляйте файл через плеер.

Либо посмотри какие параметры запуска плеера из закрытого состояния.
Как писал ранее (https://www.aimp.ru/forum/index.php?topic=69099.msg424509#msg424509), система (проводник) не передают плееру адрес (путь) файла.
У меня такая же проблема и не только с AIMP. Непонятно почему система не хочет передавать путь к файлу.
Title: Re: [2395] Не читаются треки с длинными путями
Post by: Soolo on July 11, 2022, 12:18:30
Просьба показать или написать какой путь показывает плеер по F4 (в частности, наличие префикса).
Как написал выше, у меня без префикса и с префиксом разный результат.
У меня показывает в любом из случаев добавления обычный путь:
D:\Noby.uCoz.R\Authors\Chopin - Solo and for Piano & Orchestra Works - Shebanova, 2009-2010 (14CD NIFC)\12 1845-1849 Mazurkas Op. 59, 63 & 67, Barcarolle, Polonaise-Fantasy, Nocturnes Op. 62, Waltzes Op. 64 etc\17 Tatiana Shebanova - Largo In E Flat Major (1847).flac
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 11, 2022, 14:48:59
У меня показывает в любом из случаев добавления обычный путь:
D:\Noby.uCoz.R\Authors\Chopin - Solo and for Piano & Orchestra Works - Shebanova, 2009-2010 (14CD NIFC)\12 1845-1849 Mazurkas Op. 59, 63 & 67, Barcarolle, Polonaise-Fantasy, Nocturnes Op. 62, Waltzes Op. 64 etc\17 Tatiana Shebanova - Largo In E Flat Major (1847).flac

Надо смотреть на релизе. в ночной версии я этот момент уже поправил
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Soolo on July 11, 2022, 14:56:57
Надо смотреть на релизе. в ночной версии я этот момент уже поправил
на 2394 то же самое
никаких префиксов, сокращений или чего-то ещё
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 11, 2022, 15:32:55
на 2394 то же самое
никаких префиксов, сокращений или чего-то ещё
Виндовый диалог стал подставлять префикс, чего раньше не было.
Так что возможны оба варианта в рамках Windows. Без разбора ситуации нельзя понять причину этих отличий: исправление бага Windows, запланированные изменения или что-то ещё. Главное, что существование префикса документально зафиксировано и в AIMP исправлен момент с его использованием.

Сейчас остался только непонятный "баг" с Windows, что она не передаёт путь к файлу с длинным именем при штатном его открытии. От плеера это не зависит.
Quote
It doesn't work everywhere
Most (but not all Windows and .NET APIs) work with extended path syntax. But the bigger problem is that other applications and the Windows Shell operations don't work with these paths when invoked through Process.Start(). For example, passing an extended path via parameter to Explorer just ends in tears - doing absolutely nothing. Same with terminal and Process.Start() arguments for many apps.
https://weblog.west-wind.com/posts/2022/Jan/03/Integrating-Long-Path-Names-in-Windows-NET-Applications
По идее, здесь нужно писать отчёт в Microsoft и добиваться повышения значимости проблемы. Со стороны базовой поддержки (телефон, форумы) у Microsoft довольно сложные варианты решения запросов, а в текущее время санкций ещё и не факт, что можно будет получить квалифицированный ответ.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 11, 2022, 16:55:14
Drag-n-Drop и контекстное меню доработал. Теперь он тоже принимает длинные пути
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 11, 2022, 18:40:07
Drag-n-Drop и контекстное меню доработал. Теперь он тоже принимает длинные пути
Подтверждаю. Работает перетягивание и контекстное меню. Теперь можно использовать проводник, но придётся чуть больше действий выполнять.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 11, 2022, 20:36:48
У меня пока длинные треки не читаются, в том числе не работает способ добавления в плеер. Новых альфа-версий после позавчерашней не нашёл. Мне пришло в голову: может, оно и не плохо, что длинные треки не читаются? Ведь они к тому же не могут и копироваться виндой. Там предел длины пути 256 знаков.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Artem on July 11, 2022, 21:14:24
У меня пока длинные треки не читаются, в том числе не работает способ добавления в плеер. Новых альфа-версий после позавчерашней не нашёл. Мне пришло в голову: может, оно и не плохо, что длинные треки не читаются? Ведь они к тому же не могут и копироваться виндой. Там предел длины пути 256 знаков.

Сегодня вышла еще одна.
Могут, но через drag-n-drop.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 13, 2022, 23:50:45
Я скачал последнюю альфа-версию и попробовал. Работает нестабильно. Иногда воспроизводится. Притом при запуске единичного трека надо было ещё нажать play. В плейлист вводится, играет, но не всегда. Иногда что-то другое (предыдущее) играет. При этом при новом воспроизведении единичного файла появляется уже использованный плейлист. При переносе в другую папку играть отказался. Попробовал всё сделать ещё раз - единичный не запускается, но при добавлении в открытый плейлист работает. Проверил на фубаре - всё играет, над именем трека показывается и путь к нему, притом не целиком: походу весь путь в плейлисте автоматически не отображается, сокращается. Наверное, в этом направлении и надо двигаться: плеер должен сокращать внутри себя полный путь, если он больше 256 знаков...
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 14, 2022, 00:13:57
Зачем плееру что-то сокращать "внутри себя", если система знает только полный путь?

По описанной ситуации вообще нельзя повторить то, что вы написали. Лучше выполнить запись экрана.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: nibelung on July 14, 2022, 00:51:18
По описанной ситуации вообще нельзя повторить то, что вы написали
Проверил ещё раз. Если сперва вызвать плеер и перенести в него - работает. Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Soolo on July 14, 2022, 01:04:33
Проверил ещё раз. Если сперва вызвать плеер и перенести в него - работает. Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
Какой путь к файлу по F4 для непроигрываемого трека?
Title: Re: [x] [2395] Не читаются треки с длинными путями
Post by: Алексей Долматов on July 14, 2022, 01:23:00
Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
"не работает" - не описание проблемы, а её название. Нужно писать подробнее.
Примеры описаний:
1. При закрытом плеере открываем файл, запускается плеер с добавленным треком и при попытке воспроизведения ошибка/переход на другой трек-плейлист;
2. При закрытом плеере открываем файл, плеер не запускается;
3. При закрытом плеере, ...
Как видите, нужно последовательное название выполняемых действий и получаемый результат.

Кроме того, вы постоянно упоминаете другой плеер, но не описываете способ добавления файлов в плеер. Ни разу не показали скриншот диспетчера задач Windows с параметрами командной строки каждого из плееров, когда открываете файлы при закрытом плеере.