Куда кидать файлы wav
Всё началось с того, что я задумался о том, как отобразить на сайте информацию о загруженном аудио-файле. Для начала решил разобраться с самым простым форматом — wav. Как оказалось, ничего сложного в этом нет и писать именно об этом, в общем-то, не было бы никакого смысла, благо, информации о том, как устроен wav-файл «изнутри» в Интернете полно.
И тут Остапа понесло И тут в голову пришла светлая мысль о том, что было бы прикольно не просто отображать информацию о файле, но и иметь возможность генерировать такой файл «на лету». Думаю, все видели в сети всевозможные «онлайн-пианино» и прочее, верно?
Итак, что мне удалось сделать за 2 вечера — под катом.
Итак, для начала всё-таки вернемся к структуре WAV-файла, как такового. Для простоты берем самый просто одноканальный wav-файл без сжатия.
Любой wav-файл состоит из нескольких секций (чанков, chunks). Подробно обо всех секциях можно почитать, например, по ссылке, я же остановлюсь на трёх основных:
- секция типа —
- секция формата —
- секция данных —
Секция RIFF проста до безобразия: «RIFF<размер файла-8>WAVE»
<размер файла-8> потому что это значение характеризует «сколько байт содержится далее». Соответственно, 4 байта на само значение «сколько» и еще 4 на «RIFF» который был в начале.
В секции формата хранится основная интересующая обычного человека информация о файле: Sample Rate (частота дискретизации, например 44100 Гц), количество каналов (1 = моно, 2 = стерео и так далее).
В секции данных, собственно, и лежат нужные нам для проигрывания аудио-данные. По сути, они из себя представляют амплитуду волны в момент времени.
Исходя из всего вышесказанного и исходя из спецификации самого формата, ничего нам не мешает написать простейшие классы, описывающие каждую нужную нам секцию и простейший парсер, который будет считывать wav-файл и создавать необходимые нам объекты.
В коде выше убрана вся логика, нам сейчас интересна только структура самих данных.
Собственно, для их чтения сделаем небольшую обёртку-helper для fread для более удобного чтения именно бинарных данных.
Осталось дело за малым, взять и прочитать содержимое wav-файла:
Итак, данные получены, мы их можем вывести в нужном на месте простым исполнением чего-то в духе:
Создание wav-файлов
Итак, меня, как человека, окончившего музыкальную школу когда-то, интересовало именно генерация мелодии на основе нот. Осталось только переложить знание музыкальной грамоты и физики на код.
Самым простым этапом в этом деле стало превратить ноту в код. По сути, любая нота характеризуется в первую очередь частотой звучания. Например, нота «ля» — это частота 440 Гц (стандартная частота камертона для настройки музыкальных инструментов).
По сути, нам остается только сопоставить каждой ноте её частоту. Всего нот (тонов) в октаве 7, а полутонов — 12. И у некоторых полутонов имеется несколько вариантов написания. Например, «фа-бемоль» это тоже самое, что и «ми». Или «соль-диез» это тоже самое, что и «ля-бемоль».
Итак, превратим эти знания в код:
Вообще, музыка достаточно точная наука. В нашем случае, это, в первую очередь, означает, что все возможные звучания различных инструментов уже давно описаны физиками и математиками, что, собственно, и позволяет производить, к примеру, синтезаторы. Подробно о синтезировании звуковых волн написано, например, здесь.
Ну а поскольку я еще и ленивый, подробно разбираться во всём этом деле у меня не было желания, поэтому я принялся яростно гуглить. Информацию об эмуляции звуков различных музыкальных инструментов на русском языке не нашлось ровным счетом ничего (может, конечно, я плохо искал, но не суть). Но в итоге мне удалось найти аудио-синтезатор, правда, на JavaScript (GitHub). В целом, оставалось только транслировать JS-код в PHP, чем я и занялся.
По итогу, получаем SampleBuilder, при помощи которого можем создавать сэмплы (куски wav-данных) задавая ноту, октаву и длительность звучания.
Важно знать, что в папке audio, есть папка GENRL в этой папке 137 bank-ов.
В 137-ом bank-е содержатся звуки оружий.
Например, если вы скачали где-то звуковой мод в интернете, и хотите загрузить его в автоустановщик.
Вы смотрите какие именно там файлы, если там один лишь файл GENRL и папка CONFIG.
То вы прописывайте так,
Путь для GENRL (во вкладку "В папку")
\audio\SFX
Это основные файлы которые загружают в интернет, для смены звуков в ГТА Сан-Андреас.
Но есть еще такое, что например, если вы скачали где-то звуковой мод в интернете, а там только bank-и со звуками в формате wav
sound_001.wav sound_002.wav и тд. (название к примеру такое).
Чтобы загрузить их, в автоустановщик, и не было, отклонения со стороны модераторов.
То вы прописывайте так, (во вкладку "В папку")
\modloader\audio\SFX\GENRL
Для работы wav файлов необходим ModLoader.
Ну это лишь основные пути к звукам.
Бывают и замены радио, шагов, переговоры полиции, и.тд.
Но эти звуки уже содержатся в FEET, PAIN_A, STREAMS и.тд.
Вот.. что посоветовать вам я хотел, если вы будете заменять звуки, эксперементировать со звуками и тд.
Советую скачать программу, Alci's SAAT GUI FrontEnd. Эта лучшая программа для ручной замены звуков.
О ее использовании, я расскажу потом, если захотите.
Чтобы добавить звуки к автомобилям, ну тут уже надо смотреть какие по номерации звуки заменять.
Специально для опытных модмейкеров по замене звуков, нумерация bank-ов и что они заменяют в GENRL.
001 002 - Euros, Elegy, ZR350, Uranus, Cadrona, Bravura, Merit, Mesa, nebula, Previon, Primo, Solair,
003 - Неизвестный Самолет
004 005 - Буксир, багаж,
006 - Cargobob, Hunter, Leviathan, Raindanc,
007 - Неизвестный Вертолет
008 009 - Неизвестно
010 011 - Bullet, Glendale, Oceanic, Tornado
012 013 - Bike, Mountain Bike, BMX
014 - Неизвестно
015 016 - Coastguard, Dinghy, Jetmax, Launch, Marquis, Predator, Reefer, Speeder, Squalo, Tropic
017 - Неизвестно
018 - Неизвестно
019 020 - Yosemite, Cabbie, Fortune, Intruder, Picador, Sunrise, Vincent, Willard
021 - Пули, попадание в цель, попадание вокруг
022 - Неизвестные звуковые сигналы
023 - Неизвестные звуковые сигналы
024 - Неизвестные звуковые сигналы
025 - Неизвестные звуковые сигналы
026 027 - Bus, Coach, DFT30
028 029 - Hermes, Remington, Broadway
030 - RC Bandit
031 032 - Hotring, Hotring A, Infurnus, Buffalo ,Alpha
033 - Неизвестно (возможно, звуки магазинов)
034 035 - Wayfarer, HPV-1000
036 037 - Неизвестно
038 - Неизвестно
039 040 - Sabre, Savanna, Voodoo, Clover, Blade, Buccaneer, Stallion
041 042 - Sanchez, Quadbike
043 044 - Неизвестно
045 - Дверь Гаража, Дверь внутри дома, Неизвестный звук
046 - Огонь и взрывы
047 048 - Rustler, Stuntplane
049 050 - Неизвестно
051 052 - Forklift
053 - Неизвестно
054 - Звуки меню
055 056 - Mower, Kart,
057 058 - Caddy
059 - Запуск двигателя вертолета и остановка
060 - Машинка парикмахера и ножницы
061 - Машинка парикмахера и ножницы
062 063 - Зерноуборочный комбайн
064 065 - Monster, Monster (A), Monster (B), Bloodring Banger
066 067 - Неизвестно
068 - Сигналы, Сирены полиции.
069 070 - Hotknife, Hustler, Bf Injection, Slamvan
071 072 - Vortex
073 - Mr Whoopee, и звуки двигателя
074 075 - Swat Van, Trashmaster, Barracks, Dune, Enforcer, FBI Truck, Flatbed
076 - Музыка во время, загрузки игры
077 078 - Packer, tanker, Benson, Cement, Dumper, Firetruck, Linerunner, Roadtrain, Rhino
079 - Maverick, News Chopper, Police Maverick
080 081 - Admiral, Elegant, Emperor, Premier, Sentinel, Stafford, Stratum, Stretch, Sultan, Taxi, Police (LS), Police (LV), Police (SF)
082 083 - Tractor, Walton, Dozer
084 085 - Неизвестно
086 087 - Blista Compact, Club, Jester, Esperanto, Feltzer, Flash, Majestic, Tahoma
088 089 - Bobcat, Greenwood, Manana, Moonbeam, Perennial, Regina, Romero, Sadler, Tampa, Virgo, Washington
090 091 - Неизвестно
092 093 - FBI Rancher, Huntley, Landstalker, Patriot, Rancher, Ranger, Sandking
094 095 - Phoenix, Windsor, Hotring B
096 097 - Super Gt, Сheetah, Comet, Turismo, Banshee
098 - Seasparrow, Sparrow
099 - Неизвестно
100 101 - RC Baron
102 103 - RC Goblin, RC Raider
104 - Неизвестно
105 - Неизвестно
106 107 - RC Tiger
108 109 - FCR900, Bandito
110 111 - Неизвестно
112 113 - Faggio, Pizzaboy, RC Bandit
114 - Cropduster, Dodo, Skimmer
115 - Неизвестно
116 117 - Неизвестно
118 119 - PCJ600, BF400, NRG500,
120 121 - Sweeper
122 - Неизвестно
123 124 - Звуки прицепов, перевозка прицепов (ферма)
125 126 - Freight, Streak, Tram (звуки поездов)
127 - Tram
128 129 - Beagle, Nevada
130 131 - Mule, Ambulance, Topfun, Boxburg, Burrito, Journey, Newsvan, Pony, Securica, Towtruck, Utility Van
132 - Неизвестно
133 134 - Freeway
135 136 - Boxville, Camper, Hotdog, MrWhoop, Rumpo, Yankee
137 - Оружие, выстрелы оружий, перезарядка оружий.
Про описание списка звуков оружий, подробнее я расскажу потом.
Все пока.
Я знаю что перевод корявый, так что если есть предложение по усовершенствованию - не стесняйтесь кидать, я подредактирую.
1,351 | уникальных посетителей |
47 | добавили в избранное |
Вам потребуется:
- Файлы в расширении .WAV или другого типа расширения звукового или музыкального файла*
- GCFScape Software
*В некоторых случаях могут так же ОБЯЗАТЕЛЬНО понадобятся файлы-дублеры в расширении .OGG. Они обычно находятся рядом с WAV файлами. Если видите два одноименных файла в папке (один в формате WAV, другой в OGG) - то обязательно делайте свой саунд-файл В ОБОИХ расширениях.
Конвертировать и преобразовать файлы в расширении MP3, .OGG и WAV вы можете с помощью любых аудио-редакторов. Главное - сохраняйте формат.
Некоторые файлы должны быть ТОЛЬКО в моно. Например, стерео-формат не подойдет для записи звуков обращения с оружием (перезарядка, доставание\убирание оружия, сошки).
Прежде чем мы сделаем наш первый сануд-мод, мы должны знать названия и местоположение оригинальных файлов, которые мы хотим заменить. Пример:
Местоположение:
C:\Program Files (x86)\Steam\SteamApps\common\insurgency2\insurgency
Открываем:
insurgency_sound_dir.vpk с помощью GCFScape.
Выглядеть это должно вот так:
*Примечание - для корректной работы выключите Steam и запустите GCFScape от имени Администратора.
Находим VPK-архив с помощью Проводника, слева.
Далее находим музыкальный\звуковой файл, который мы хотим изменить.
Вы заметите, что звуки организованы в довольно интуитивную файловую систему.
Например, файлы для музыки в Главном Меню могут быть найдены в
root\sound\music\mainmenu
В то время как файлы для звуков АКМа (АК-47 в игре) могут быть найдены в
root\sound\weapons\ak47
И так далее.
ЗАПОМНИТЕ имя и расположение файла, который вы изменяте.
Например, композиция Counterattack из кооперативной миссии будет лежать в
root\sound\cues
и имена файла будут соответсвенно
ins_gamemusic_abouttoattack_a.wav
ins_gamemusic_abouttoattack_a.ogg
Теперь, когда мы знаем имя файла и его расположение, приступим к созидательству! ^_^
Делаем Новую папку с ТЕМ ЖЕ именем, который мы задумали изменить\заменить.
Например, изменяя\заменяя композицию Counterattack из Кооп-миссии, создаем новую папку "root", создаем навую папку "sound",
и затем внутри уже неё создаем папку "cues", чтобы выглядело вот так:
root\sound\cues
Поместим
Ваши созданные .WAV и.OGG музыкальные файлы в папку, которую вы только что сделали.
Примечание: последний патч требует, чтобы саундмоды, касающиеся радиальности или вокализации ботов,
были в следующем формате: OGG Vorbis (или WAV, MP3), VBR, Качество: 1.00, Частота дискретизации: 44,100 Гц, Каналы: Моно.
Переименуйте
Ваши созданые .WAV и.OGG файлы так же, как назывался файл который вы хотите заменить.
Например, заменяя музыку из Миссии из Кооператива, я переименовал бы свой музыкальный файл как:
ins_gamemusic_abouttoattack_a.wav
ins_gamemusic_abouttoattack_a.ogg
После чего сделал бы замену оригинальных файлов на свои
Если Вы успешно выполнили эти шаги, Вы должны убедится что папки в vpk-файле на местах, теперь его можно закрыть:
Перетащите
Папку в файл vpk.exe (прямо внутрь), который расположен в:
C:\Program Files (x86)\Steam\SteamApps\common\insurgency2\bin
Как показано здесь:
Таким образом мы скопировали и преобразовали папку в .VPK файл, который появится на Рабочем Столе
Премещаем
Недавно созданный.VPK файл в:
C:\Program Files (x86)\Steam\SteamApps\common\insurgency2\insurgency\custom
джаст лайк зат:
Это автоматически применит Ваш саунд-мод к Вашему Insurgensy.
Конгратюлирую!
Вы сделали свой первый саунд-мод!
Заходим в Главное Меню игры, кликаем на "Workshop"
Если кнопка "Тэги" не активна, нажимаем на кнопку "Загрузить" (Upload)
Далее выберите файл мода, который хотите опубликовать
Указываем имя мода, описание и задаем нужные тэги
Нажимаем "Опубликовать"
Ура! Мод Опубликован!
Проверяем страницу мода в Стиме.
Проверьте, чтобы мод был виден всем, если хотите чтобы ваш мод был выставлен на обозрение.
Подсказка
- Чтобы поделится Вашим саундмодом с друзьями и сообществом в Стиме, просто загрузите свой.VPK файл в Workshop
- Некоторые саундмоды не запустятся, если вы не пропишете в консоли команду: snd_restart
Как засунуть трек в FL Studio
Обычно этот процесс не вызывает ни у кого, даже из начинающих особой сложности, но все же, почему-то, вопросы по данной теме продолжают поступать от новичков FL Studio.
И для вопроса «Как засунуть трек в fl studio» по сути, самый простой ответ – просто ПЕРЕТАЩИТЬ из папки Windows, в любое место в FL Studio. Это может быть плейлист:
перетаскивание на который, создаст автоматический аудио клип на плейлисте и занесет этот клип, конечно же, в панель каналов FL Studio. Теперь этот трек на плейлисте, как на «операционном столе»: можно растягивать, резать и делать с ним все, что только заблагорассудиться.
Это может быть так же панель каналов, и впоследствии с нее можно направлять трек куда угодно:
Это может быть браузер FL Studio (то темное поле, что находиться слева в FL):
добавление трека в браузер занесет это в коренной каталог FL Studio\Data, что находиться по умолчанию по адресу: С:\Program Files\Image-Line\FL Studio 12 (11,10)\Data\. И это полезно, если ты будешь обращаться к этому треку еще ни один раз, так как теперь он будет в твоей постоянной досягаемости, для перетаскивания его в любую локацию внутри FL Studio.
И впоследствии измененный, подразумевается улучшенный или требуемый вариант, «сохранить» или, по правильному, «экспортировать» в любой аудио формат – Wav, mp3, ogg. Для того, что бы узнать, КАК сохранять и экспортировать аудио форматы из FL studio, добро пожаловать в самую подробную инструкцию!
Так же можно открыть прекраснейший редактор аудио Edison, встроенные VST плагин в FL Studio, открыть его можно на любом канале микшера в одном из слотов, нажав на стрелку в слоте. И туда свой аудио трек ты помещаешь так же простым перетаскиванием. Как научиться профессионально, работать и редактировать аудио в нем, ты можешь научиться в ЭТОЙ СЕРИИ ВИДЕО. Сохраняем из Edison, измененный аудио файл, через команду File– Save sample as.
Читайте также: