Прототип функции в студию.
Вид для печати
тебе видней, вообще хочется чего-нибудь простого. например:
для распаковки: на входе - кусок памяти, на выходе массив структур. в структуре лежит информация о пакере + распакованный кусок.
для детектора тоже самое, но без распакованного куска.
плюс всякие там иниты и клозы.
Проверять соответствие исходных данных формату.
Распаковывать данные.
В случае несоответствия, выдавать смещение во входных данных, где можно попробовать еще раз.
Для архивных форматов сюда добавляется навигация и поиск файлов.
Функционал я описал выше. Тебе как программисту дал интерфейс. Так что дерзай. У меня лишь несколько замечаний:
1) в интерфейсе точно и недвусмысленно надо указать, кто ответственен за освобождение памяти результата.
2) почему на выходе массив структур?
Напиши интерфейс, заглушечную версию библиотеки и тестового клиента. Все это давай мне, я доделаю эту библиотеку. Писать "в воздух" не буду, звиняйте. Не раз уже обжигался и тратил силы на всякие *****фичи, заказчики которых даже не удосуживались потом проверить результат.
"Ну, я так не играю" (c) Карлсон
я не программист :( уже лет 7 как, моя - насяльника теперь.
Понятно что с большущей вероятностью данную *****фичу никто использовать не будет. С другой стороны, при наличии готовой dll'ки кто-нибудь можеть быть тряхнет стариной и какой-нибудь xlook перепишет.
1. память освобождает клиент.
2. потому-что детектор/распаковщик может несколько архивов/модулей найти.
А так я не играю. Причины объяснил выше.
"Значит так сильно оно надо..." (С) народное
Крайняя говнистость С в области владения ресурсами заставляет задавать такие "глупые" вопросы.
Нет. Не может. Не надо валить в одну кучу функционал детекта/распаковки и функционал поиска. Я что-то не заметил в xLook сканирования по данным.
"ну на нет и суда нет"
тем не менее, буде время и желание появится, подумай в этом направлении. по крайней мере распаковка точно может быть востребована.
Заметил что у ASC модулей найденных поиском не отображаются названия трека, в то время как в нем присутсвуют (AY Emul отображает).
---------- Post added at 00:49 ---------- Previous post was at 00:31 ----------
Не запускается.
---------- Post added at 00:52 ---------- Previous post was at 00:49 ----------
Последняя версия и правда находит больше треков.
Еще интересно как сабж работает с ZIP архивами. Скажем если не совпало СЯС то всё, каюк? Или пытается расспаковать что/как возможно.
---------- Post added at 07:30 ---------- Previous post was at 06:59 ----------
Покидал сабжу несколько ZXZIP'во, не извлек ни одного.[COLOR="Silver"]
Кстати у тебя ASC неправильно играются.
Вот сравни хотя бы этот модуль с AY Emul'ом.
Особенно явно это заметно на огибающей в 2:13
Ссылку на трек.
Ссылка на сайт микрософта там же.
Пока CRC не проверяется (если этого не делает zlib неявно).
Может не нашел в них ничего? Давай файлы.
Возможно. Работа над ASC уже ведется.
С налету не получилось, буду пытаться позже. Этот дикий *****код с эмуляцией z80 средствами препроцессора и психотропных веществ в чистом виде втаскивать нельзя:)
Есть надежда, что там просто продублирован один из готовых алгоритмов. Например, режим 2 (SHRINK) поддался переделке, улучшающей его (код) читаемость. Аббревиатура LZW- говорящая. KwKwK - нет:)
Да, кстати о птичках. Сообщения о том что, "играет не как AYEmul" не принимаются. Сравнивать надо с оригинальными спектрумовскими плеерами. Ибо AYEmul тоже не идеален. Подробности в ближайшем билде.
вброс со смыслом:)
http://habrahabr.ru/blogs/mobiledev/125845/
Билд 1439:
+ поддержка конверсии AY в другие форматы (PSG,ZX50,FYM)
* фиксы для SoundTracker: ускорен поиск STC, пофикшено воспроизведение STC/ST1
* исправлены падения на некоторых DST файлах
* переработан парсинг STP, улучшен детект. В силу "размытости" формата, сравнительно много ошибочных детектов
+ zxtune-qt: выделение модулей по типу
* zxtune-qt: переработано контекстное меню
Скачать билд для win32
А где обещанные разоблачение?
Запамятовал.
Обнаружил некоторые ошибки при воспроизведении STC, сравнивая с эталонным выводом из AY. Часть плевые- в регистры лишние незначащие биты выводятся. Часть- посерьезнее. Например, огибающая в некоторых ситуациях должна включаться на одну линию (не фрейм, а линию трека) позже. Подозреваю, что это фишка компилятора, ибо ST1 дает такой же дамп на выходе. Тем не менее, разница имеется.
На слух разница заметна?
В ASC очень заметная, так что ждем фикс.
Перетащил в плеер 60 свежих дисков, получих два десятка STP и ни одного реального трека. Негодный детект.
---------- Post added at 00:39 ---------- Previous post was at 00:37 ----------
Напоминаю про ASC, при рипанье треков из архивов имя музона не отображается (всегда).
Билд 1450:
+ поддержка TeleDisk (TD0) образов (несжатых, сигнатура 'TD' в начале)
* обработка неупомянутых в каталоге файлов для TRD (весьма много находится), а также свободного места на диске
* улучшен детект компилированных STP
* zxtune-qt: двойной клик на вкладках создает новый плейлист
* zxtune-qt: более удобное поведение кнопки 'del' в плейлисте
Скачать версию для win32
Прошу помощи. Как настроить плеер под audigy 4 windows 7 x64. под realtek на материнке все хорошо, а на аудиджи следующая проблема:
Плеер играет в два раза медленнее причем звук прерывистый. один инт есть звук другой совсем нет
Даже если по шаманить с частотой воспроизведения и тд плеер проигрывает мелодии через раз иногда нормально, а иногда опять медленно с "пукающим" звуком.
Не работает на любой версии на любом билде, просто все время забывал написать об этом и пользовался бульбовским плеером.
Также всегда тормозит анализатор звука.
Попробуй увеличить параметр zxtune.sound.backends.win32.buffers хотя бы до 5. Это в zxtune.conf. Положить его либо рядом с программой, либо в %APPDATA%\zxtune
Попробую на досуге сделать dsound вывод. Подозреваю, используемый waveout тормозит.