Она (и оконная, и терминальная) не запускается (ничего не происходит). Остальное еще уточню.Цитата:
Сообщение от Vitamin
Вид для печати
Она (и оконная, и терминальная) не запускается (ничего не происходит). Остальное еще уточню.Цитата:
Сообщение от Vitamin
С пенка собрал r5000 под win32
https://github.com/NEO-SPECTRUMAN/ZX...uilds/releases
...наверно это последняя версия которую можно собрать с текущим набором либ который витамин выложил тут ранее :v2_dizzy_step:
Vitamin, типо багарепорт (хотя утя оно можот и не быть)
r4960
r5000
на vgm зхтюн падает если +$18 Total of all wait values in the file. = 0
на
r4760 - ok
r4831 - ok
так же зхтюн не находит невалидные vgm-ы
c пустым +$04 EOF (file length - 4)
хотя например винамп с vgm input plugin v0.50.1 by Valley Bell 2020
играет оно молча
но без бегунка перемотки
Наконец-то я меня появилось время разобраться. :) Вот, что я выяснил.Цитата:
Сообщение от Vitamin
У меня сейчас на Raspberry Pi установлена buster от 07.05.21, но после 21-го года несколько раз обновлялась.
Вот что выводится о libstdc++6:
https://i.postimg.cc/2q2CN6Ph/raspberrypios.jpg
Терминальная версия музыку играет, а "графическая" - нет:Цитата:
Сообщение от Vitamin
https://i.postimg.cc/fVss3msY/player.jpg
Умеет ли программа в командной строке конвертировать разом много файлов?
Вот такая попытка выдала мне ошибку:
zxtune123.exe --convert mode=psg,filename=[Filename].psg *.ay
Может, как-то по-другому нужно написать?
Умеет. Но не умеет работать с масками файлов. Можно запускать из msys/cygwin консоли.
- - - Добавлено - - -
Ничо не понял:)
- - - Добавлено - - -
Собственно, та проблема о которой говорил- нужна свежая версия, в которой есть символы нужных версий. У тебя какая-то другая нумерация на скрине.
при некотором не соответствии стандарту на VGM
зхтюн или падает или не играет
хотя другим плеерам на это пофиг
они играют молча
и до переезда на какойто там
универсальный чиптюн плеер
(на который переехали дето между r4831...r4960)
оно работало лучше
но тк это моя гофнoсбoрка под win32 твоего гoфнoсорца
то может у тебя оно падать и не будет
так же я указал по какому смещению эти не "критичные" для воспроизведения параметры
мдя
прошло пол года и все оказалось немного не так
я думал что вообще зхтюн не открывал ни одного файла
а не октрываемые пришлось еще и поискать
на один из вариантов утя детектилкка
ненаходит vgm
на второй
(при этом оно продолжает играть ))))
https://user-images.githubuserconten...cad98571de.png
закинул те на гитхаб
https://github.com/vitamin-caig/zxtune/issues/2218
- - - Добавлено - - -
собственно долго думать не надо что это
0xC0000094: Integer division by zero и почаму
- - - Добавлено - - -
чтение заголовка
https://user-images.githubuserconten...f05160cab0.png
само деление на 0 дето дальше
https://user-images.githubuserconten...a36f1d0122.png
- - - Добавлено - - -
это не на твоей стороне?
GetCurTime
GetTotalTime
GetLoopTime
итд все вызывающие Tick2Second
Короче, такие кривые файлы надо игнорировать.
Либо вызывает со всеми сразу. Обычно такими вещами (преобразование масок в список файлов) занимается оболочка. Виндовое *****поделие CMD такого не умеет, поэтому я сказал про msys/cygwin терминалы.
Не умеет. У каждого трека есть длительность и, опционально, точка зацикливания.
По твоему каждый детектор формата должен на каждое несрабатывание окошко показывать с сообщением, "не распарсил"?
На винде разрабатываю с помощью mingw (сейчас с http://winlibs.com), boost/qt выковыриваю из сборочных контейнеров (для qt правда отдельно где-то брал бинари moc/uic/rcc, в контейнерах оно для линукса). Рецепты для контейнеров живут в make/docker/build.
На линуксе хватает системного компилятора и системных qt/boost.
Когда будет переход на qt6 ?
Винда не при чем, но в Linux и Haiku OS давно уже qt6 завезли.
опять твоя странная концепция бегемотоносорогоплеера вылазит боком
плеер не должен рипать файлы из бинарников
это должен делоть рипер
хотя плеер может иметь рипер в довесок
плеер не должен рипать файлы с явно известным расширением, тратя киловатты, ВМЕСТО их открытия
где ты видел плеер который молчит как партизан
когда ты пытаешся открыть файл?
обычно гденить пишетсо "go sleep stupid user"
в твоем конкретно извращенном случае
тебе наверно нужно индицировать результат последнего действия на статус баре
типо
перевварено 100500К найденно 7 битых 699
выкидывание лишних сообщений с Ок-еем
по завершению "скана"
наверно будет совсем не к месту
5.15.2 сейчас используется в статических сборках.
Когда без этого будет ну никак:)
- - - Добавлено - - -
Ну давай, роди стройную концепцию, вылазящую "как надо"
- как отличить битый трек от случайного набора данных с совпавшими сигнатурами?
- если в файле нашелся архив, но в нем нет треков - что надо писать?
- если есть .gz архив или другой упаковщик, теряющий имена файлов, откуда брать "явно известные расширения" шоп не "тратить киловатты"?
- туда же - файл скачали из интернета по страшной ссылке, из какого пальца ему высосать это самое "явно известное расширение"?
- в плейлист закинули папку со 100500 архивами - на каждый надо 200600 раз сообщить "там ничего не нашлось"?
- в файле сканером нашлось два трека, а между ними- нераспознанные данные - о них тоже сообщать "куда надо"?
надуманные все это пробемы
ну вот когда расширение неизвестное и надо включать тот самый сканер
а не сканировать нет ли в pt3 скрытого nsf
тут можно на файл с расширением pt3
натравить в первую очередь pt3 сканер
и если он не подтвердил что это pt3 то сканировать дальше другими
поэтому я и говорю про ненавязчивую индкацию (например в статус баре)
просканировали 100500 архивов
и дето вывели отчет о проделаной работе
чтоб мы его могли неспешно прочитать
а не как всегда...
вероятность такого совпадения стремитсо к 0 на большинстве форматов
и даже если ВНЕЗАПНО совпадет
у тебя будет аж на 1 больше в "отчете" о выполненном ссканировании
> Либо вызывает со всеми сразу. Обычно такими вещами (преобразование масок в список файлов) занимается оболочка
Разве в какой-нибудь утилите вроде grep обход файлов по маске и рекурсивно по вложенным папкам оболочка занимается?
- - - Добавлено - - -
QT кросс-платформенный, под Виндой никто не мешает с QT6 программу сделать. Да хоть с QT6.5. Всегда есть вопрос целесообразности - надо ли переносить проект на что-то новое. Если бы это делалось просто "пересобрать, и оно само заработает", жить было бы гораздо легче. Даже если пересоберется без ошибок и запустится, надо будет ее еще протестировать под всеми платформами и на всех сценариях работы.
Это разные вещи. Рекурсивный обход - это дело тулзы. Обработка масок - это оболочка делает.
Видно, что оболочка развернула маску в список вообще всего (включая директории, на которые тулза и ругается):
Запрещаем обработку масок и вуаля:PHP код:/usr/include$ grep -l string * | head
grep: AL: Is a directory
grep: arpa: Is a directory
grep: asm-generic: Is a directory
argp.h
argz.h
ar.h
grep: boost: Is a directory
grep: c++: Is a directory
grep: clang: Is a directory
cifsidmap.h
grep: gdb: Is a directory
clif.h
cpio.h
crypt.h
cursesf.h
curses.h
cursesm.h
grep: GL: Is a directory
grep: glvnd: Is a directory
Маски обрабатывать как минимум утилита find, но, опять же, не забываем про специфику передачи аргументов ей.PHP код:/usr/include$ grep -l string '*' | head
grep: *: No such file or directory
Совершенно верно. Более того, огромная часть работы по переходу на тот же Qt5 пришлась на сборку статических версий библиотек для разных платформ (generic linux/raspbian/mingw/darwin). И переход этот произошел только когда qt4 исчезла из репозиториев дистрибутивов (для использования compat версий слишком много приседаний надо было делать).
Цитата:
Сообщение от Grand
А в Linux Lite 5 так:Цитата:
Сообщение от Vitamin
https://i.postimg.cc/qN9SrT42/2023-06-17-11-34-16.png
И там плейер установился сразу (из DEB-пакета).
А смысл всех этих форков ubuntu, основанной на Debian, в Arch Linux всегда свежак в репозиториях и 85756 пакетов в AUR.
И все свежие проблемы тоже. Я 9 лет на арче сидел, это был незабываемый опыт (без сарказма, pacman до сих пор считаю эталоном пакетного менеджера), но со временем несколько надоедает. Один переезд на systemd чего стоил.
Есть некая шкала с крайностями вида "стабильное ***** мамонта" и "свежатина с сюрпризами". Вот форки выбирают свою точку на ней и находят своих пользователей. Ну и нескучные оба^Wобои, конечно.
В общем, переезд на qt6 пока откладывается. Для дистрибутивов с динамической версией (debian, fedora) все довольно просто взлетело с небольшим числом правок. Особой разницы с предыдущей версией не увидел, по крайней мере внешне.
А вот со статической линковкой (это еще 4 платформы) пока все плохо, костылить не очень хочется.
Отвратительное впечатление от процесса разработки QT - допускают прямо детские баги в основных кейсах и не особо торопятся фиксить (например, QTBUG-90308 в котором фикс вообще ни к селу ни к городу, пришлось вручную делать это. Плюс наткнулся на QTBUG-91448, где разработчики тупят за троих и делают вид что не понимают в чем проблема, при этом ветка 6.5.x тоже затронута, но фиксить там не особо планируют похоже)
Тогда я в два слова уложусь:
https://startandroid.ru
https://developer.android.com
Билд 5040:
[+] версия для MacOSX M1 arm64 (без нотаризации)
[*] улучшена совместимость версий для linux/raspbian для старых дистрибутивов
[*] переработан анализатор спектра
[*] исправлено падение при работе с поврежденными архивами 7zip
[*] исправлена обработка затухания
[*] исправлено циклическое воспроизведение mp3
[*] исправлено определение длительности цикла vgm
[*] используется значение по умолчанию для дорожек vgm с нулевой длительностью
[*] zxtune-qt: исправлено падение при закрытии приложения
[*] zxtune123: исправлены проблемы с кодировкой на windows
[*] zxtune-android: переработан пользовательский интерфейс
[*] zxtune-android: фильтрация списка воспроизведения выполняется по имени файла, если модуль не имеет названия
[*] zxtune-android: исправлена обработка в режиме перемешивания для текущей очереди воспроизведения
Очень насыщенный релиз получился, даже не понятно с чего начинать рассказ:)
Наконец-таки дошли руки до интерфейса версии для Android. Еще не все из запланированного сделано, что-то может измениться в будущих версиях, но начало положено. Изменений достаточно много, вроде бы ничего из ранее доступного функционала не пропало (кроме зацикленного воспроизведения плейлиста), но появилось немного разных фишек для повышения удобства пользования.
На регулярную основу (надеюсь) вернулись сборки для MacOS. За прошедшее время сильно улучшился инструментарий для кросс-сборок для mac (osxcross), что позволило собирать QT без использования реального мака (да, вся сборка делается в linux контейнерах, если кто не знал, в том числе бинари для windows). Заодно получилось настроить сборку для устройств на базе M1 чипов. К сожалению, пакеты без нотаризации (и врядли она будет), поэтому придется сделать пару широко известных заклинаний чтобы их установить. Жирный плюс в карму за помощь с отладкой улетает пользователю Alf.
Чтоб два раза не вставать, был также улучшений в процессе сборки: статическая линковка libstdc++ для generic linux/raspbian (что должно поправить запуск на старых дистрибутивах) и использование кеша для сборки (раньше был только для android) - это позволило сократить время сборки с 18 минут до 6 при добавленных трех новых конфигурациях (всего сейчас 8, не включая android).
Также была исправлена небольшая кучка найденных и сообщенных проблем и падений.
Скачать версию для Android
http://api.qrserver.com/v1/create-qr...=100x100&ecc=L
Скачать версию для win64 (MMX/SSE/SSE2)
Скачать версию для linux x86_64
Скачать версию для Ubuntu/Debian x86_64
Скачать версию для Redhat/Suse/Centos/Fedora x86_64
Скачать версию для Raspberry Pi
Скачать версию для Mac OS X Intel
Скачать версию для Mac OS X M1