| Разработка и ромхакинг > Ромхакинг и программирование |
| Извлечение звука из Snes игр. |
| (1/2) > >> |
| Матёрый рпгшник:
Приветствую всех любителей классики. :wow: У меня комплексный вопрос o_0,суть которого уже отображена в названии топика: -есть портативный китайский плеер с возможностью эмулировать снес игры(удивительно прекрасная кстати вещь,если исходить из соотношения цена\качество ^_^), -есть проблема - эмуляция несовершенна,огромная беда со звуком(предположительно из-за высокого битрейта) во многих Snes играх,и ладно бы в какой-нибудь фигне,так лагают великие столпы жанра рпг,например ФФ6 и Хронотриггер :-\, -есть предполагаемое решение:вынуть все звуки из рома,перекодировать их в более низкий битрейт,засунуть обратно так,чтобы игра осталась работоспособной. Если есть соображения о способах и,вообще,целесообразности - пишите,пожалуйста,очень жду.Жаба душит купить псп за 7 касарей,чтобы хорошо эмулировать снес :'( Про прохождение игр на компе речи не идёт,такого мои глаза и сердце не выдеражт,только портативные консоли переношу в плане эмуляции старых игр :cool: |
| GManiac:
Нет никакого битрейта и лаги не из-за звука. |
| Матёрый рпгшник:
Что значит нет битрейта?Он есть по-любому в цифровой музыке:) Лаги точно из-за звука - при его отключении игра работает почти на 60 фпс. Ну так вынуть звук из снес игр? |
| Smoke:
При отключении звука, он скорее всего просто не эмулируется, ресурсы хаваются меньше, поэтому игра и не тормозит. Вот и все |
| Матёрый рпгшник:
Я это понимаю,ресурсы он здорово "хавает",вот я и хочу битрейт снизить,чтобы процессору меньше нагрузки было.Вообще я уверен,что такое может получиться. Вы лучше меня не отговаривайте,а опишите как музыку вытащить,вдруг я прав и удастся запускать игры без лагов,ну или хотя бы на 20-40 фпс с хорошим звуком.Это много кому пригодится,так как плееров этих у народа уже не мало. |
| BmpCorp:
--- Цитата: Матёрый рпгшник ---Что значит нет битрейта?Он есть по-любому в цифровой музыке:) --- Конец цитаты --- В SNES применяется не оцифрованная музыка, а музыка в виде последовательности команд (как в Midi - думаю так понятнее). Поэтому понятия "битрейт" там нет. |
| Матёрый рпгшник:
а как же звук голосов;) |
| BmpCorp:
Я, наверно, немного не так написал - не совсем как в Midi, потому что звуки, из которых составляется музыка, всё же хранятся в оцифрованном виде (но именно музыка всё равно при этом остаётся последовательностью команд). Сами звуки, насколько я знаю, хранятся в несжатом виде, поэтому можно было бы попытаться уменьшить число бит на семпл (может, ты именно это и имел в виду под битрейтом), но мне кажется, уменьшать там уже некуда. |
| Матёрый рпгшник:
Битрейт - это грубо говоря количество информации в единицу времени,как я понимаю.Вобщем надо попробовать,я уже потом разбираться :D Так вот,тогда опять вопрос:как вынуть звуки из рома Снес-игры? |
| GManiac:
Если понимать битрейт как скорость сжатого потока, то здесь результат неоднозначный: обычно, чем ниже битрейт, тем аудио сжато лучше, тем сложнее его разжимать, тем больше лаги. По крайней мере, это справедливо в пределах одного лосслесс-декодера. Для лосси-декодеров заранее нельзя сказать, какой битрейт будет быстрее играться. Где-то медленнее, где-то быстрее, но скорость, наверно, будет одного порядка. Всё равно в конце концов разжатый аудио-поток имеет всегда одинаковую частоту. Я не знаю, что ты понимаешь под битрейтом... Видно только, что с устройством СНЕС ты не знаком. В СНЕС применяется WaveTable-синтез. Т.е. имеется набор семплов - записанные оцифровки каких-то инструментов или голосов на нескольких нотах. Чтобы получить новую ноту, берётся одна из базовых нот и экстраполируется до новой. Результат, конечно, не идеальный, но возможности хранить ВСЕ ноты нет. Все вычисления производит звуковой чип. Он выдаёт звук на частоте 32 кГц. Для компьютера эта частота неродная, поэтому в эмуляторах проще всего делать расчёты в 48 кГцах (это ровно в 1.5 раза больше оригинальной частоты). Или считать в 32, а затем ресемплировать в 48. При отключении звука в эмуляторе возможно: отключить эмуляцию звукового чипа (не самого простого), отключить ресемплирование (если есть) и отключить вывод потока на звуковой выход (а это тоже жрёт ресурсы). За счёт этого можно так сильно ускорить эмуляцию. Вот теперь подумай, какой битрейт ты собираешься уменьшать и что это тебе даст. А вытащить звуки мало, надо их ещё обратно потом вставить. |
| Матёрый рпгшник:
--- Цитата: GManiac ---чем ниже битрейт, тем аудио сжато лучше, тем сложнее его разжимать, тем больше лаги --- Конец цитаты --- Вово,я вот всё об этом пытаюсь толковать. --- Цитата: GManiac ---При отключении звука в эмуляторе возможно: отключить эмуляцию звукового чипа --- Конец цитаты --- Верно,игры работают ощутимо быстрее без звука,когда я его выключаю в системе,а не просто громкость убавляю,но играть в них без звука не интересно вообще. --- Цитата: GManiac ---какой битрейт ты собираешься уменьшать и что это тебе даст --- Конец цитаты --- Ноты эти,маленькие составные части и нужно менять,ну или сэмплы,если точнее.Я себе это так представлял:суёшь нужный ром в прогу,она тебе вынимает звуки,ты из перегоняешь в нужный битрейт и с помощью той же программы суешь обратно. Но я тут задумался,возможно вся проблема в частоте звука,в этих самых килогерцах,но тогда исправить ничего нельзя,а лезть в настройки эмулятора я не могу,они скрыты,эмулятор как бы преднастроен и если и можно его как то перенастроить,нужно залезать в прошивку... Обидно,что в ГБА играх со звуком почти во всех играх всё отлично,но лагают фпс,то 60фпс выдаётся,то 10,переодически.А в Снес играх всё стабильно,но лагает звук.....уххх.Это как у Чехова вроде6вот бы усы одного,да к носу другого....Хорошо хоть сега эмулируется на хорошо и на отлично. |
| GManiac:
--- Цитата --- --- Цитата ---чем ниже битрейт, тем аудио сжато лучше, тем сложнее его разжимать, тем больше лаги --- Конец цитаты --- Вово,я вот всё об этом пытаюсь толковать. --- Конец цитаты --- Чем ниже битрейт, тем больше лаги! И это если говорить о сжатии. В старых приставках нет особо сложных схем сжатия, ресурсов не хватит. Поэтому такое понятие битрейта сюда не применишь. --- Цитата ---я его выключаю в системе,а не просто громкость убавляю --- Конец цитаты --- Громкость на количество вычислений не влияет, разве что добавляется домножение на коэффициент от номинальной громкости, чтобы получить результирующую. Но это мелочь. --- Цитата ---Ноты эти,маленькие составные части и нужно менять,ну или сэмплы,если точнее.Я себе это так представлял:суёшь нужный ром в прогу,она тебе вынимает звуки,ты из перегоняешь в нужный битрейт и с помощью той же программы суешь обратно. --- Конец цитаты --- Ты можешь исказить семплы, испортить, вообще затереть их пустотой, но для звукового чипа (и его эмулятора) - это по-прежнему будет массив чисел и он будет их обрабатывать ТАК ЖЕ, проводить столько же вычислений. Ну разве пропускать какие-то ветви алгоритмов, тогда ты получишь небольшой выигрыш в скорости. Тебе же объясняют, что звуковой чип в СНЕС это не mp3-декодер. |
| Матёрый рпгшник:
--- Цитата: GManiac ---если говорить о сжатии --- Конец цитаты --- Вот и нужно это сжатие убрать. --- Цитата: GManiac ---Громкость на количество вычислений не влияет --- Конец цитаты --- Я знаю. --- Цитата: GManiac ---СНЕС это не mp3-декодер. --- Конец цитаты --- Да понял я это уже давно. Но я по прежнему хочу прогу,чтобы вытащить музыку,уж давно бы попробовал,вместо переписки. |
| gepar:
Нет никакого битрейда в snes музыке. Если ты о частоте дискредитации то её можно сменить, но на скорость работы эмулятора это явно не повлияет. Вообще ты хоть напиши каким эмулятором пользуешься, если bsnes то лучше смени его и получишь нормальный звук и fps в играх и поблема с извлечением звка у тебя сама пропадёт. Bsnes очень требователен к ресурсам потому что это точный эмулятор, воспользуйся другими типа zsnes. |
| Шон в Майке:
Кстати, большое количество музыки SNES, в формате spc вот тут есть: http://www.emuparadise.org/Complete_ROM_Sets_(Full_Sets_in_One_File)_ROMs/SNES_SPC_Set_(SnesMusic_v2)_-_15th_July_2009/97036-download Но просто так она не играет. Её Сhipamp, через Winamp запускает:http://www.chipamp.org/download/ |
| DeniSS:
gepar, он на китайском плеере играет. По теме, я не думаю, что с играми на SNES можно производить такие манипуляции, тем более достичь заметного ускорения эмуляции. Нужно же будет править ссылки в роме на музыку, наверняка (точно не знаю) лезть в звуковой "движок" игры. В принципе это все, конечно, познавательно, но вряд ли удастся достичь посталенной цели. Вот здесь можно посмотреть документацию по SNES. В частности это. |
| gepar:
--- Цитата: DeniSS ---gepar, он на китайском плеере играет. --- Конец цитаты --- Хех, и он ещё хочет хорошей эмуляции, ну и народ пошёл. Пусть играет в денди да gbc. |
| gegmopo3:
--- Цитата: Матёрый рпгшник ---Но я по прежнему хочу прогу,чтобы вытащить музыку,уж давно бы попробовал,вместо переписки. --- Конец цитаты --- Если так охото, через эмулятор вытащи. |
| Матёрый рпгшник:
--- Цитата: gepar ---Хех, и он ещё хочет хорошей эмуляции, ну и народ пошёл. --- Конец цитаты --- Зря ты так,сега эмулируется на "хорошо" и на "отлично",например,денди тоже в основном,даже в некоторые снес игры типа Cyber knight можно отлично поиграть.Обидно то,что моя аццкая китайская приставка способна на большее,а настройки в эмуле кривые. Да и в защиту аццких китайских приставок:все вы наверняка знакомы с таким чудом,как Dingoo A320,там,на сколько мне известно нет проблем ни с ГБА ни с Снес,даже многие игры с первой соньки эмулируются. Вот мне на одном форуме посоветовали создать тему про такой плеер,думаю многим это будет интересно(всё таки экран как у псп за 1500 рублей,это даже тем кто не играет,интересно будет для видео например:) ).Но не знаю,нужно ли такое тут. --- Цитата: gegmopo3 ---Если так охото, через эмулятор вытащи. --- Конец цитаты --- Через какой? (почти сдался... :'() |
| Street Fighter:
ZST2SPC v1.01, вроде может вынимать музыку из файлов ZST, т.е. сохранялок. Snessor95 ver 2.1 -программа по прослушиванию и дампу музыки из ромов. Поддерживает много частот. Можно слушать музыку и звуки из рома, как на проигрывателе, а также вытаскивать в Wav-файлы. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |