AIMP Forum
AIMP for Windows => Ошибки и замечания / Bugs => Обработано / Processed => Topic started 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 к Фубару в этой функциональности? Очень актуально...
-
Вообще-то поддержка длинных путей в плеере есть, и уже довольно давно.
Укажите версию плеера и версию Windows.
-
У меня Aimp 5.02.2370, Windows 10.
-
У меня Aimp 5.02.2370, Windows 10.
Создал такой путь - никаких вопросов, воспроизводится.
Может ваш файловый менеджер не передаёт этот путь?
Как вы добавляете файл в плейлист?
-
Просто нажимаю на файл с расширением .flac. По умолчанию он открывается AIMP. Либо левой кнопкой двойным щелчком, либо правой кнопкой - Меню - Открыть.
-
Если у меня какая-то неправильная настройка, то где она стоит? Я не нашёл.
-
Просто нажимаю на файл с расширением .flac. По умолчанию он открывется AIMP. Либо левой кнопкой двойным щелчком, либо правой кнопкой - Меню - Открыть.
В какой программе вы нажимаете на файл?
-
Обычное нажатие мыши на файл. Открыта папка, где лежат файлы (в проводнике).
-
Если плейлист Default пустой, то что происходит при попытке воспроизвести файл?
Например, файл не отображается в плейлисте или плеер показывает ошибку при двойном клике по единственной записи в плейлисте, либо в плейлисте файл отображается серым текстом с пометкой not found.
-
Создал идентичный путь по образцу в первом сообщении. Проверил на Windows 11 22000.778. AIMP 5.03 Alpha, build 2395 (05.07.2022). Дополнительно Total Commander 10.50.
Файл вообще не добавляется в плеер при запущенном плеере. Перетаскивание тоже не работает.
При закрытом плеере один раз получил ошибку в плеере, предварительно система думала несколько секунд что делать с запросом на открытие:
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.
C:\PROGRA~1\AIMP\AIMP.exe -Embedding
Эти манипуляции делал без настройки LongPathsEnabled в системе.
\\?\ является штатным (задокументированным) префиксом.
https://docs.microsoft.com/ru-ru/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd
По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.
-
Со стороны плеера \\?\ поддерживается, я уже писал об этом выше.
По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.
Я не понял эту фразу, что именно ты имел в виду?
-
При попытке воспроизвести файл с очень длинным именем плейер появляется и показывает предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его.
-
Со стороны плеера \\?\ поддерживается, я уже писал об этом выше.
Я не понял эту фразу, что именно ты имел в виду?
Написано было про длинные пути. Про префикс ты не писал. Если в плейлисте файл без префикса, то воспроизводит. Если с префиксом, то ошибка File was not found. Причём префикс добавляется и при добавлении через плеер (+ файлы).
Это всё про параметр LongPathsEnabled, который я у себя не включал.
Почему-то без него у меня плеер не видит указанный путь. Если после добавления файла нажать F4, потом выбрать переименование (F2) и убрать префикс, то плеер начинает видеть файл и воспроизводить его. Затем, если снова нажать F4 и переименовать в прежний путь с префиксом, то получаю ошибку "Процесс не может получить доступ к файлу, так как этот файл занят другим процессом". Не даёт сохранить путь при переименовании в малом редакторе тегов (F4). Остановка воспроизведения, перезапуск плеера не помогают. Та же ошибка.
Вот поэтому и пишу, что нужна проверка после настройки LongPathsEnabled. Есть подозрение, что ОС сама ограничивает доступ к файлу по указанному пути.
-
При попытке воспроизвести файл с очень длинным именем плейер появляется и показывает предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его.
Как то неоднозначно написано. После последней запятой читается совместно к структуре "предыдущий нормально воспроизводивщийся трек или целый плейлист", т.е. "предыдущий нормально воспроизводивщийся трек или целый плейлист, но не проигрывает его" = не проигрывает предыдущий трек или плейлист.
Верно понимаю, что ситуация аналогична моей, когда файл из проводника не добавляется плеер? При этом плеером можно пользоваться, другие файлы воспроизводит.
Желательно, написать точную версию Windows 10.
Это важно, если рассматривать статью по ссылке выше, т.к. параметр не для всех версий Windows 10.
-
Создал такой путь - никаких вопросов, воспроизводится.
Просьба показать или написать какой путь показывает плеер по F4 (в частности, наличие префикса).
Как написал выше, у меня без префикса и с префиксом разный результат.
-
Версия Винды Windows 10 21H1 (сборка ОС 19043.1766). Если я пытаюсь открыть файл с длинным путём, появляется табличка плеера. На ней название последнего успешно воспроизводившегося трека. Если это был не трек, а целый плейлист, то всего плейлиста. Сам по себе старый трек (плейлист) не автозапускается, но если нажать на плэй, то играет. Сам же трек с длинным путём не воспризводится. Но фубаром - пожалуйста!
-
появляется табличка плеера. На ней название последнего успешно воспроизводившегося трека.
Звучит необычно. Можно скриншот или запись экрана?
-
сли с префиксом, то ошибка File was not found.
а как он у тебя в плейлист с префиксом попал? Плеер подставляет префикс сам при обращении к API. Видимо, получается двойной профикс, поэтому и не работает.
-
Видимо, получается двойной профикс, поэтому и не работает.
Да, так и есть
-
а как он у тебя в плейлист с префиксом попал
Виндовый диалог стал подставлять префикс, чего раньше не было. Если добавлять файлы через мой диалог (например, папку целиком) - такого не будет и все будет работать.
В общем, баг подтверждаю, буду фиксить
-
Звучит необычно. Можно скриншот или запись экрана?
Блин! Я не знаю вашу терминологию... Обычная картинка aimp с треком...
-
Блин! Я не знаю вашу терминологию... Обычная картинка aimp с треком...
https://ru.wikipedia.org/wiki/Снимок_экрана
Мы хотим посмотреть как она выглядит
-
Сборка в альфа-канале
-
Мы хотим посмотреть как она выглядит
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw
-
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw
Где окошечко с ошибкой?
-
Ну, как-то так... https://disk.yandex.ru/i/6yQyByLuLNGFrw
Т.е. не "табличка", а стандартное окно плеера.
Судя по всему, описанная мной ситуация: Система Windows не передаёт путь трека плееру.
Проверить можно в системном диспетчере задач (CTRL+SHIFT+ESC): вкладка "Подробности", колонка "Командная строка". Колонка включается через правый клик по названиям колонок и пункт "Выбрать столбы". Нужно закрыть плеер, а потом попытаться открыть файл в проводнике. Скорее всего, результат будет идентичен моему:
C:\PROGRA~1\AIMP\AIMP.exe -Embedding
-
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
-
Эти манипуляции делал без настройки LongPathsEnabled в системе.
<...>
https://docs.microsoft.com/ru-ru/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd
По идее, нужно проверить, что разрешение работать системе с длинными путями решает проблему.
Так. Моя ошибка. :-[ Не настраивал параметр, а, оказывается, он по умолчанию включен в системе. Что-то я тогда не понимаю работу системы в этом направлении. Может ли быть проблема в манифесте исполняемого файла проводника, т.е. ошибка компании Microsoft?
На уровне Total Commander передачу полного имени пути решил через создание внутренней ассоциации с типом файлов. Параметр %1 передаёт путь с префиксом. При стандартном открыти, как понимаю, передача пути файла производится средствами системы.
-
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
Со стороны плеера проблема решена, независимо от наличия префикса в плейлисте плеера (F4), включая использование функции переименования в этом окне.
-
Где окошечко с ошибкой?
Там видно, что выделен в проводнике один трек, а готов к проигрыванию другой, который проигрывался до этого из папки с коротким путём.
-
Т.е. не "табличка", а стандартное окно плеера.
Да, конечно, окно. Забыл это слово. 65 лет мне почти, мозг глючит.
-
Там видно, что выделен в проводнике один трек, а готов к проигрыванию другой, который проигрывался до этого из папки с коротким путём.
Все понятно. это всего лишь значит, что плеер не получил файл. попробуйте на вчерашней ночной сборке
-
Настройки - обновление - выберите альфа канал, обновитесь и проверьте исправлена ли ошибка
Установил альфа-версию 5.03.2395. От 9.07.2022. Вопрос не решён.
-
Установил альфа-версию 5.03.2395. От 9.07.2022. Вопрос не решён.
Добавляйте файл через плеер.
Либо посмотри какие параметры запуска плеера из закрытого состояния.
Как писал ранее (https://www.aimp.ru/forum/index.php?topic=69099.msg424509#msg424509), система (проводник) не передают плееру адрес (путь) файла.
У меня такая же проблема и не только с AIMP. Непонятно почему система не хочет передавать путь к файлу.
-
Просьба показать или написать какой путь показывает плеер по 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
-
У меня показывает в любом из случаев добавления обычный путь:
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
Надо смотреть на релизе. в ночной версии я этот момент уже поправил
-
Надо смотреть на релизе. в ночной версии я этот момент уже поправил
на 2394 то же самое
никаких префиксов, сокращений или чего-то ещё
-
на 2394 то же самое
никаких префиксов, сокращений или чего-то ещё
Виндовый диалог стал подставлять префикс, чего раньше не было.
Так что возможны оба варианта в рамках Windows. Без разбора ситуации нельзя понять причину этих отличий: исправление бага Windows, запланированные изменения или что-то ещё. Главное, что существование префикса документально зафиксировано и в AIMP исправлен момент с его использованием.
Сейчас остался только непонятный "баг" с Windows, что она не передаёт путь к файлу с длинным именем при штатном его открытии. От плеера это не зависит.
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 довольно сложные варианты решения запросов, а в текущее время санкций ещё и не факт, что можно будет получить квалифицированный ответ.
-
Drag-n-Drop и контекстное меню доработал. Теперь он тоже принимает длинные пути
-
Drag-n-Drop и контекстное меню доработал. Теперь он тоже принимает длинные пути
Подтверждаю. Работает перетягивание и контекстное меню. Теперь можно использовать проводник, но придётся чуть больше действий выполнять.
-
У меня пока длинные треки не читаются, в том числе не работает способ добавления в плеер. Новых альфа-версий после позавчерашней не нашёл. Мне пришло в голову: может, оно и не плохо, что длинные треки не читаются? Ведь они к тому же не могут и копироваться виндой. Там предел длины пути 256 знаков.
-
У меня пока длинные треки не читаются, в том числе не работает способ добавления в плеер. Новых альфа-версий после позавчерашней не нашёл. Мне пришло в голову: может, оно и не плохо, что длинные треки не читаются? Ведь они к тому же не могут и копироваться виндой. Там предел длины пути 256 знаков.
Сегодня вышла еще одна.
Могут, но через drag-n-drop.
-
Я скачал последнюю альфа-версию и попробовал. Работает нестабильно. Иногда воспроизводится. Притом при запуске единичного трека надо было ещё нажать play. В плейлист вводится, играет, но не всегда. Иногда что-то другое (предыдущее) играет. При этом при новом воспроизведении единичного файла появляется уже использованный плейлист. При переносе в другую папку играть отказался. Попробовал всё сделать ещё раз - единичный не запускается, но при добавлении в открытый плейлист работает. Проверил на фубаре - всё играет, над именем трека показывается и путь к нему, притом не целиком: походу весь путь в плейлисте автоматически не отображается, сокращается. Наверное, в этом направлении и надо двигаться: плеер должен сокращать внутри себя полный путь, если он больше 256 знаков...
-
Зачем плееру что-то сокращать "внутри себя", если система знает только полный путь?
По описанной ситуации вообще нельзя повторить то, что вы написали. Лучше выполнить запись экрана.
-
По описанной ситуации вообще нельзя повторить то, что вы написали
Проверил ещё раз. Если сперва вызвать плеер и перенести в него - работает. Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
-
Проверил ещё раз. Если сперва вызвать плеер и перенести в него - работает. Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
Какой путь к файлу по F4 для непроигрываемого трека?
-
Если просто открывать трек, без предварительно открытого плеера и перетаскивания в него - не работает.
"не работает" - не описание проблемы, а её название. Нужно писать подробнее.
Примеры описаний:
1. При закрытом плеере открываем файл, запускается плеер с добавленным треком и при попытке воспроизведения ошибка/переход на другой трек-плейлист;
2. При закрытом плеере открываем файл, плеер не запускается;
3. При закрытом плеере, ...
Как видите, нужно последовательное название выполняемых действий и получаемый результат.
Кроме того, вы постоянно упоминаете другой плеер, но не описываете способ добавления файлов в плеер. Ни разу не показали скриншот диспетчера задач Windows с параметрами командной строки каждого из плееров, когда открываете файлы при закрытом плеере.