![]() |
Страницы (2): [1] 2 » Показать все 28 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Наши проекты (https://hlfx.ru/forum/forumdisplay.php?forumid=1)
-- маленький mp3 декодер - 2 (https://hlfx.ru/forum/showthread.php?threadid=4945)
маленький mp3 декодер - 2
Преведущая тема здесь.
Как вы все знаете, старый декодер на долгое время поселился в ксаше, в качестве mp3 проигрывателя, но к сожалению обладал рядом существенных недостатков. Одним из главных недостатков было наличие отсутствия встроенного хэндлера файловой системы, из-за чего плеер принимал на вход исключительно куски буффера, которые пользователь должен был скармливать ему на своё усмотрение. Проблема заключалась в том, что mp3 это не wav и данные в нём не являются непрерывным потоком, где можно встать в любую точку файла и получить валидный выход. Там информация разбита на блоки-кадры, но это тоже полбеды. Беда в том, что соседние кадры могут отличаться, внезапно заканчиваться, быть испорченными и еще куча других потенциальных проблем, решить которые можно только непосредственным чтением этих кадров. В конечном итоге это приводило к переодическому бульканию звука при загрузке сейва, а в совсем тяжелых случаях - к вылету всего движка. Сперва я себя успокаивал тем, что это Элбер какие-то калечные mp3 сделал для паранои, но когда я поймал аналогичный вылет в римейке кваки, где все mp3 были закодированы мной и провереным энкодером, я понял, что с этим надо что-то делать. Я взял самую свежую версию mpg123 и долго-долго отрезал от нее всё лишнее, пока размер получившейся либы не начал меня устраивать. Еще из побочных приятных эффектов нового декодера - он не булькает на испорченых mp3 файлах, как это делала старая версия и не спотыкается об ID3v2.
Новая версия имеет аналогично старой тестовое приложение, ну и создана окружающая среда для бэкапов, на тот случай, если кто-нибудь захочет над ним поработать в дальнейшем. А в движок, естественно попадёт уже скомпилированная либа.
Добавлено 29-01-2017 в 22:31:
Update: старый плеер при потере синхронизации внутри кадра вообще прекращал декодирование Только сейчас проверил.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
ncuxonaT где есть поддержка огг?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша в Ксаше
ncuxonaT я походу что-то пропустил.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша ну раньше везде писалось, что ogg поддерживается. А теперь "проклятый фмод, депрекейтед, депрекейтед!"
Кто ж знает, как оно щас.
Дядя Миша
У него в голове Ксаш с Волатилой уже прочно переплетены.
__________________
http://cs-mapping.com.ua/forum/show...00&postcount=18
Ну вот же. А про то, что его больше нет, не написано нигде.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша а ты никогда не писал, что у огга нет всех тех проблем, что есть у мр3? Или мне приснилось?
ncuxonaT писал. Но это же не повод на него переходить.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
Дядя Миша что же тогда повод, если не это?
То, что у огга лучше качество, тоже не повод?
ncuxonaT
В смысле - лучше качество?
__________________
XaeroX в смысле срезает меньше частот при одинаковом битрейте
Временная зона GMT. Текущее время 08:57. | Страницы (2): [1] 2 » Показать все 28 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024