• Вышла очередная версия ZXTune

    Билд 3950

    + добавлена поддержка Nintendo DS Sound Format (2SF)
    + добавлена поддержка Startrekker (MOD)
    * ускорен поиск многофайловых треков в архивах
    * исправлено воспроизведение GSF
    * база длительностей SID модулей обновлена до версии 66
    + zxtune-qt: открываемые через командную строку файлы могут добавляться не только в новый, но и в текущий активный или видимый плейлист
    + zxtune-android: добавлен каталог http://2sf.joshw.info
    * zxtune-android: векторные иконки в приложении
    - zxtune-android: минимально поддерживаемая версия Android 4.0.3 (API v14)
    * zxtune-android: исправлены некоторые падения
    Очередная "галочка" в списке поддерживаемых форматов - 2SF. Это очередной представитель семейства xSF форматов, созданный для сохранения музыки с приставки Nintendo DS. Также в версию для Android добавлен доступ к каталогу с такой музыкой.
    Сделан первый шаг в сторону Material Design - переделаны все иконки приложения кроме главной. Для новых версий Android (начиная с 5.0) они будут показываться в наилучшем возможном качестве в связи со своей векторной натурой.
    Также пришлось отказаться от совсем уж старых версий Android (2.3.3 - 3.2) - доля пользователей этих платформ уже практически не видна на радарах, а сложностей с поддержкой имеется достаточно.
    Остальные исправления связаны с найденными и сообщенными проблемами, недобностями и падениями.

    Скачать версию для Android

    Скачать версию для win32
    Скачать версию для win64
    Скачать версию для win32 (MMX/SSE/SSE2)
    Скачать версию для win64 (MMX/SSE/SSE2)
    Эта статья изначально была опубликована в теме форума: ZXTune - ZX Music player автор темы Vitamin Посмотреть оригинальное сообщение

    Комментарии 588 Комментарии
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      qt/
      или ты сразу перешел на qt 5.10050.0?
      минуя 5.0.x
    1. Аватар для ^m00h^
      ^m00h^ -
      Когда будет переход на qt6 ?
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      Когда будет переход на qt6 ?
      обновление ради обновления?
      уголки недосттаточно закруглены на вин15?
      или неужели безопасность ваших банковских щетов там улучшилась?
    1. Аватар для ^m00h^
      ^m00h^ -
      Винда не при чем, но в Linux и Haiku OS давно уже qt6 завезли.
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      По твоему каждый детектор формата должен на каждое несрабатывание окошко показывать с сообщением, "не распарсил"?
      опять твоя странная концепция бегемотоносорогоплеера вылазит боком
      плеер не должен рипать файлы из бинарников
      это должен делоть рипер
      хотя плеер может иметь рипер в довесок
      плеер не должен рипать файлы с явно известным расширением, тратя киловатты, ВМЕСТО их открытия

      где ты видел плеер который молчит как партизан
      когда ты пытаешся открыть файл?
      обычно гденить пишетсо "go sleep stupid user"

      в твоем конкретно извращенном случае
      тебе наверно нужно индицировать результат последнего действия на статус баре

      типо
      перевварено 100500К найденно 7 битых 699

      выкидывание лишних сообщений с Ок-еем
      по завершению "скана"
      наверно будет совсем не к месту
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
      или ты сразу перешел на qt 5.10050.0?
      минуя 5.0.x
      5.15.2 сейчас используется в статических сборках.

      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      Когда будет переход на qt6 ?
      Когда без этого будет ну никак

      - - - Добавлено - - -

      Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
      <много бессмысленных буков>
      Ну давай, роди стройную концепцию, вылазящую "как надо"

      - как отличить битый трек от случайного набора данных с совпавшими сигнатурами?
      - если в файле нашелся архив, но в нем нет треков - что надо писать?
      - если есть .gz архив или другой упаковщик, теряющий имена файлов, откуда брать "явно известные расширения" шоп не "тратить киловатты"?
      - туда же - файл скачали из интернета по страшной ссылке, из какого пальца ему высосать это самое "явно известное расширение"?
      - в плейлист закинули папку со 100500 архивами - на каждый надо 200600 раз сообщить "там ничего не нашлось"?
      - в файле сканером нашлось два трека, а между ними- нераспознанные данные - о них тоже сообщать "куда надо"?
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      надуманные все это пробемы

      Цитата Сообщение от Vitamin Посмотреть сообщение
      - туда же - файл скачали из интернета по страшной ссылке, из какого пальца ему высосать это самое "явно известное расширение"?
      ну вот когда расширение неизвестное и надо включать тот самый сканер
      а не сканировать нет ли в pt3 скрытого nsf

      тут можно на файл с расширением pt3
      натравить в первую очередь pt3 сканер
      и если он не подтвердил что это pt3 то сканировать дальше другими

      Цитата Сообщение от Vitamin Посмотреть сообщение
      - в плейлист закинули папку со 100500 архивами - на каждый надо 200600 раз сообщить "там ничего не нашлось"?
      поэтому я и говорю про ненавязчивую индкацию (например в статус баре)
      просканировали 100500 архивов
      и дето вывели отчет о проделаной работе
      чтоб мы его могли неспешно прочитать
      а не как всегда...

      Цитата Сообщение от Vitamin Посмотреть сообщение
      - как отличить битый трек от случайного набора данных с совпавшими сигнатурами?
      вероятность такого совпадения стремитсо к 0 на большинстве форматов
      и даже если ВНЕЗАПНО совпадет
      у тебя будет аж на 1 больше в "отчете" о выполненном ссканировании
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
      надуманные все это пробемы
      Ясно. У меня бисер заканчивается, за сим откланиваюсь.
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      Когда без этого будет ну никак
      а почаму никак наступило с qt4?

      там сильно много изменений при переходе на qt5
      (наверно про конкретно у тебя)

      я вроде сравнивал 5000 с 5000+ но ***** не понел
    1. Аватар для voldemar_d
      voldemar_d -
      > Либо вызывает со всеми сразу. Обычно такими вещами (преобразование масок в список файлов) занимается оболочка

      Разве в какой-нибудь утилите вроде grep обход файлов по маске и рекурсивно по вложенным папкам оболочка занимается?

      - - - Добавлено - - -

      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      Винда не при чем, но в Linux и Haiku OS давно уже qt6 завезли.
      QT кросс-платформенный, под Виндой никто не мешает с QT6 программу сделать. Да хоть с QT6.5. Всегда есть вопрос целесообразности - надо ли переносить проект на что-то новое. Если бы это делалось просто "пересобрать, и оно само заработает", жить было бы гораздо легче. Даже если пересоберется без ошибок и запустится, надо будет ее еще протестировать под всеми платформами и на всех сценариях работы.
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от voldemar_d Посмотреть сообщение
      Разве в какой-нибудь утилите вроде grep обход файлов по маске и рекурсивно по вложенным папкам оболочка занимается?
      Это разные вещи. Рекурсивный обход - это дело тулзы. Обработка масок - это оболочка делает.

      Видно, что оболочка развернула маску в список вообще всего (включая директории, на которые тулза и ругается):
      PHP код:
      /usr/include$ grep -l string * | head
      grep
      ALIs a directory
      grep
      arpaIs a directory
      grep
      asm-genericIs a directory
      argp
      .h
      argz
      .h
      ar
      .h
      grep
      boostIs a directory
      grep
      c++: Is a directory
      grep
      clangIs a directory
      cifsidmap
      .h
      grep
      gdbIs a directory
      clif
      .h
      cpio
      .h
      crypt
      .h
      cursesf
      .h
      curses
      .h
      cursesm
      .h
      grep
      GLIs a directory
      grep
      glvndIs a directory 
      Запрещаем обработку масок и вуаля:
      PHP код:
      /usr/include$ grep -l string '*' head
      grep
      : *: No such file or directory 
      Маски обрабатывать как минимум утилита find, но, опять же, не забываем про специфику передачи аргументов ей.


      Цитата Сообщение от voldemar_d Посмотреть сообщение
      QT кросс-платформенный, под Виндой никто не мешает с QT6 программу сделать. Да хоть с QT6.5. Всегда есть вопрос целесообразности - надо ли переносить проект на что-то новое. Если бы это делалось просто "пересобрать, и оно само заработает", жить было бы гораздо легче. Даже если пересоберется без ошибок и запустится, надо будет ее еще протестировать под всеми платформами и на всех сценариях работы.
      Совершенно верно. Более того, огромная часть работы по переходу на тот же Qt5 пришлась на сборку статических версий библиотек для разных платформ (generic linux/raspbian/mingw/darwin). И переход этот произошел только когда qt4 исчезла из репозиториев дистрибутивов (для использования compat версий слишком много приседаний надо было делать).
    1. Аватар для voldemar_d
      voldemar_d -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      Это разные вещи. Рекурсивный обход - это дело тулзы. Обработка масок - это оболочка делает.
      Понял, спасибо. Просто я хочу и с обходом вложенных папок тоже обрабатывать :-)

      Ладно, буду с внешними тулзами разбираться.
    1. Аватар для Grand
      Grand -
      Цитата Сообщение от Grand Посмотреть сообщение
      Вот что выводится о libstdc++6:
      Цитата Сообщение от Vitamin Посмотреть сообщение
      У тебя какая-то другая нумерация на скрине.
      А в Linux Lite 5 так:



      И там плейер установился сразу (из DEB-пакета).
    1. Аватар для ^m00h^
      ^m00h^ -
      А смысл всех этих форков ubuntu, основанной на Debian, в Arch Linux всегда свежак в репозиториях и 85756 пакетов в AUR.
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      А смысл всех этих форков
      в блекджекахх со шлюхами
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      в Arch Linux всегда свежак в репозиториях
      И все свежие проблемы тоже. Я 9 лет на арче сидел, это был незабываемый опыт (без сарказма, pacman до сих пор считаю эталоном пакетного менеджера), но со временем несколько надоедает. Один переезд на systemd чего стоил.
      Есть некая шкала с крайностями вида "стабильное ***** мамонта" и "свежатина с сюрпризами". Вот форки выбирают свою точку на ней и находят своих пользователей. Ну и нескучные оба^Wобои, конечно.
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от ^m00h^ Посмотреть сообщение
      Винда не при чем, но в Linux и Haiku OS давно уже qt6 завезли.
      В общем, переезд на qt6 пока откладывается. Для дистрибутивов с динамической версией (debian, fedora) все довольно просто взлетело с небольшим числом правок. Особой разницы с предыдущей версией не увидел, по крайней мере внешне.
      А вот со статической линковкой (это еще 4 платформы) пока все плохо, костылить не очень хочется.
      Отвратительное впечатление от процесса разработки QT - допускают прямо детские баги в основных кейсах и не особо торопятся фиксить (например, QTBUG-90308 в котором фикс вообще ни к селу ни к городу, пришлось вручную делать это. Плюс наткнулся на QTBUG-91448, где разработчики тупят за троих и делают вид что не понимают в чем проблема, при этом ветка 6.5.x тоже затронута, но фиксить там не особо планируют похоже)
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      В общем, переезд на qt6 п
      витамин а можешь в 3-х словах рассказать
      как была запилена поддержка ведра?
      тобешь буцнуть в пральном направлении
    1. Аватар для Vitamin
      Vitamin -
      Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
      как была запилена поддержка ведра?
      не распарсил
    1. Аватар для NEO SPECTRUMAN
      NEO SPECTRUMAN -
      Цитата Сообщение от Vitamin Посмотреть сообщение
      не распарсил
      это всмысле как пц-шная софтварь была адоптирована под андроид
      все доки в интернетах про то как на писать в гуаф**о иде на гуаф**о юнити
      а хочетсо чтоб к иде и близко не подходить

      чего надо выкачать итд
      может какието внятные доки