HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Xash3D > Ремонт MP3-плеера. Есть желающие заняться?
Страницы (3): [1] 2 3 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



Ремонт MP3-плеера. Есть желающие заняться?

Я знаю, движок на досуге ковыряет довольно много человек, но в основном - чисто для себя. Помощи я обычно ни у кого не прошу, а мне её оказывают, то это в основном помощи по ковырянию в декомпиле халфы, с целью сравнить алгоритмы, ну или целиком восстановить код, как в случае с DSP. Но здесь - особый случай. В ксаше есть одно весьма проблемное место - это mp3 плеер. Он прекрасно работает и жуёт почти все mp3-файлы, если треки запускать с начала. Но в том-то и дело, что музыка в ксаше тоже сохраняет свою позицию, начиная играть с этого места при загрузке сейва. И тут уже начинаются серъезные проблемы.
Проблемы эти имеют две причины:
1. в MPEG1 Layer III информация задана фреймами-кадрами, как в видео-файле. Для музыки подобное хранение нежелательно, хотя и допустимо.
Из-за этого нормальная навигация по треку невозможна. Заветные флажки FSTREAM_MPEGACCURATE в том же fmod просто распаковывают целый участок файла в wav и делают навигацию уже внутри несжатого потока. Без этого флажка возможно прыгать только на начало ближайшего фрейма, а это в зависимости от битрейта интервал 0.1 - 4 секунды. А может даже и больше, для каких-нибудь 64 kbps, где минута звука занимает 60 килобайт. Т.е. сам формат для навигации плохо годится. В том же OGG таких проблем нет и близко (зато есть проблема по навигации в Theora, но это уже совсем другая история).
2. Сама библиотека mpg123 старенькая от 2004-го года и может иметь какие-то проблемы.
Я сделал приблизительную навигацию, по типу того же FSTREAM_MPEGACCURATE, когда мы сперва находим фрейм, потом флушим его до конкретной временной точки и начинаем с нее играть.
И всё равно в большинстве случаев звук начинается либо с треска, либо с булькания, а в худшем случае - с вылета всего движка.
Я бы с удовольствием это отремонтировал, но я в этом ровным счётом ничего не понимаю. Всё, что я смог сделал, это увеличить размер буффера кадра и вылеты стали вроде как немного реже. Раньше я полагал, что есть связь между ID3v2-тэгами и вылетами, считал что вылетают только короткие файлы, меньше двух секунд длинной, но время развеяло эти приятные заблуждения. Совсем недавно камрад Ксерокс поймал вылет на саунд-треках хипнотика. Которые я сам лично кодировал по всем канонам. Я не знаю что с этим делать.
Надеюсь на вашу помощь. Можете попробовать поискать более другую библиотеку mp3 (хотя и эта прекрасно играет), можете попробовать починить управление этой, можете попробовать разобраться в проблеме, на какой недопустимой позиции происходит вылет.
В любом случае буду рад принять любую помощь по дебагу mp3-плеера с пожизненным занесением в кредитсы ествествено

Тема на CSM

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 158944

Старое сообщение 11-09-2016 13:54
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



Вот в кои-то веки попросил помощи нематериальной. Ну и где толпы желающих? Вам интереснее обсуждать кого резали собаки Сталина, а как до дела доходит - тишина.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 158993

Старое сообщение 13-09-2016 14:35
-
FiEctro
Кот Арсис

Дата регистрации: Aug 2006
Проживает: код
Сообщений: 12882
Возраст: 32

Рейтинг



Дядя Миша
Они заняты сортировкой delta.lst

Сообщить модератору | | IP: Записан
Сообщение: 158995

Старое сообщение 13-09-2016 15:10
- За что?
Ku2zoff
Мастер Ёда из Деревни Дуракоф

Дата регистрации: Apr 2007
Проживает: В Деревне дураков
Сообщений: 6749
Возраст: 33

Рейтинг



Дядя Миша а ты 200 тысяч доната заслал?
Значит, никто не понимает в этом сраном и убогом MP3. Ну ты подожди, лет через пять кто-нибудь починит, как и DSP, и предиктинг, и сетевую часть. Москва не сразу строилась.

Добавлено 13-09-2016 в 22:13:

Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.


Добавлено 13-09-2016 в 22:19:

К слову, об MP3. Вот ты пишешь, что в других форматах, в частности в OGG, с навигацией лучше. Возьми и выкинь MP3, и забудь как страшный сон. Используй OGG, фанаты свободного ПО одобрят. Не обязательно делать это в Xash3D, сделай в XashNT. Я так понимаю, ты в этом движке стараешься избавиться от вещей, на которые распространяются копирайты Valve.

Сообщить модератору | | IP: Записан
Сообщение: 158996

Старое сообщение 13-09-2016 15:19
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



У меня теперь если будут просить сорцы паранои - я их буду в этот пост тыкать, никому не нужно и не интересно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 158997

Старое сообщение 13-09-2016 15:23
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34498
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Дядя Миша ну ты же 200 тысяч не заслал, чему удивляешься?

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 159000

Старое сообщение 13-09-2016 15:58
-
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



XaeroX так это же вы переживаете что сохранение mp3 портит сейвы, а не я. Это по большому счёту вам надо. Мне-то что? У меня в XashNT этой проблемы нет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 159001

Старое сообщение 13-09-2016 16:09
-
mittorn
Житель форума
Девойс

Дата регистрации: Nov 2009
Проживает: Томск
Сообщений: 398

Рейтинг



Поставил в roadmap к 0.19 на "посмотреть, что там" Может, можно прикрутить другую либу, которая может корректно seek'ать по mp3.

Сообщить модератору | | IP: Записан
Сообщение: 159002

Старое сообщение 13-09-2016 16:29
- За что?
KiQ
Житель форума

Дата регистрации: Aug 2010
Проживает: Смоленск, Москва
Сообщений: 2087

Рейтинг



Дядя Миша ну вообще говоря, для корректной навигации все более менее продвинутые звуковые движки разжимают входной формат на pcm и далее работают с ним) Я бы занялся, но в работе со звуком в Си не особо шарю

__________________
-Brain is dead-

Сообщить модератору | | IP: Записан
Сообщение: 159003

Старое сообщение 13-09-2016 16:30
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



Цитата:
mittorn писал:
Может, можно прикрутить другую либу, которая может корректно seek'ать по mp3.

Да эта тоже корректно сикает, гм. Просто вылетает иногда от такого сиканья.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 159004

Старое сообщение 13-09-2016 17:21
-
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 34498
Нанёс повреждений: 514 ед.
Возраст: 37

Рейтинг



Награды
 
[1 награда]


Дядя Миша ну я тебе это как бета-тестер жаловался, да.

__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!

Сообщить модератору | | IP: Записан
Сообщение: 159005

Старое сообщение 13-09-2016 18:31
-
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


200000 aside, как насчёт просто прикрутить вместо староговёного МеРЗкого плеера ffdshow? И тогда будут ОГГ, ФЛАК, ТТА - намного круче того же огороженного быдлоФМОДа, о котором даже сами разрабы забыли.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

Сообщить модератору | | IP: Записан
Сообщение: 159016

Старое сообщение 14-09-2016 07:29
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



~ X ~ вот в XashNT я первы делом прикрутил OGG.
А здесь нельзя - совмеsteamость, как ты выражаешься.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 159024

Старое сообщение 14-09-2016 13:20
-
~ X ~
offline

Дата регистрации: Oct 2005
Проживает: Архангельск
Сообщений: 3619

Рейтинг



Награды
 
[1 награда]


Дядя Миша почему нельзя-то? в фмоде тоже есть ОГГ - но поддержке МРЗ это никак не мешает.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]

Сообщить модератору | | IP: Записан
Сообщение: 159028

Старое сообщение 14-09-2016 14:08
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 32188
Нанёс повреждений: 392 ед.

Рейтинг



~ X ~ у меня там mp3-либа. Она умеет только mp3. fmod я точно нехочу, он будет конфликтовать с теми, которые цепляются к модам.
Раньше у меня была более другая либа для mp3, libmad называлась.
Она булькала на переменном битрейте и хрипела на 48 кгц.
Но вроде бы не вылетала. Можно попробовать взять более свежую версию mpg123.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | | IP: Записан
Сообщение: 159033

Старое сообщение 14-09-2016 17:59
-
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 12:48. Новая тема    Ответить
Страницы (3): [1] 2 3 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Разработка игр > Наши проекты > Xash3D > Ремонт MP3-плеера. Есть желающие заняться?
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024