Вход

Просмотр полной версии : at3tool - кодируем аудио WAV в ATRAC3plus и декодируем обратно на ПК


ErikPshat
15.03.2015, 12:22
ATRAC3plus Codec TOOL

10763 (https://yadi.sk/d/4UmvVzrSfG226)

Не так давно, как миру стало известно, что Sony преподнесла миру неожиданный подарок... В игре Fate/EXTRA CCC вышедшей в Японии на UMD, датированной датой создания 03.02.2013, было запрятано одно очень засекреченное пасхальное яйцо, внутри которого скрывался ценный сюрьприз - at3tool for PSP - кодер/декодер ATRAC3plus for PC.

Достать это яйцо достаточно просто:

Для начала, необходимо поиметь образ игры Fate/EXTRA CCC (скрuншoтик с нaмёкoм).
Кладём образ в папку ms0:/ISO, запускаем игру, нам предложат сделать "DATA INSTALL", соглашаемся.
После установки, идём в папку ms0:/PSP/SAVEDATA/NPJH50505USERID и забираем файл GAME.DNS.

Другой способ: открываем образ с помощью UMDGen (http://www.pspx.ru/forum/showthread.php?t=39575). Идём в папку disk0:/PSP_GAME/INSDIR/ и извлекаем оттуда GAME.DNS.

Если посмотреть через хекс этот файл, то видим в заголовке PGD - это зашифрованный архив с данными. Поэтому переименовываем расширение DNS на PGD !!!
Для декриптовки запускаем PSN PKG Decryptor & Extractor (http://www.pspx.ru/forum/showthread.php?t=103392).
В раскрывающемся списке выставляем "Extract Then (Decrypt, Dump) files for PSP".
Берём мышкой наш криптованный GAME.PGD и кидаем его (Drag'n'Drop) в верхнюю строчку окна программы.
Идём пить чай... (файл почти 1 Гб), приходим и закрываем всплывшее окно об удачном окончании декриптовки.
Открываем снова GAME.PGD в хекс-редакторе и видим уже в заголовке CPK - это контейнер, с напичканными в него ресурсами.
Чтобы извлечь ресурсы, нам поможет утилита QuickBMS (http://aluigi.altervista.org/quickbms.htm) - это универсальная тулза, с помощью которой, посредством скриптов, извлекают ресурсы из контейнеров всевозможных игр. Просто для каждой игры, со своим специфичным контейнером, пишется текстовой скрипт по определённым признакам в смещении файлов.
Для контейнера CPK, нам понадобится скрипт cpk.bms (http://aluigi.altervista.org/papers/bms/cpk.bms). Либо, можно скачать сразу одним паком всю коллекцию скриптов - quickbms_******s.zip (http://aluigi.altervista.org/quickbms_******s.php), выложенных на странице программы QuickBMS. Их лучше распаковать в папку "******s" программы QuickBMS, хотя можно в любое место.
Запускаем утилиту quickbms.exe.
В первом окне проводника нам предложат выбрать файл скрипта, указываем на cpk.bms
В следующем окне нужно указать распаковываемый контейнер с ресурсами GAME.PGD.
В третьем окне указываем на пустую папку, куда будут извлекаться содержимое контейнера.
Идём пить чаю..., приходим, уже всё готово! Заходим в указанный вами каталог и по пути sound\bgm\decode забираем любезно нам предоставленные пасхалки (http://www.pspx.ru/forum/attachment.php?attachmentid=11100) - это at3tool.exe и библиотека msvcr71.dll.


SCEI ATRAC3plus Codec TOOL Version 2.0.0.0
SCE CONFIDENTIAL
Copyright(C) 2007 Sony Computer Entertainment Inc. All Rights Reserved.
*** built w/ ATRAC3plus library version 1.02 ***
Usage : at3tool [-<option>] file1 file2
-e : encode file1(16bit linear PCM wav file) to file2
below options only affects to encoding mode(when not, they will be ignored)
-br N: specify the bitrate Nkbps
-loop S E: specify the loop start point is S samples from the beginning
specify the loop end point is E samples from the beginning
S and E must satisfy under conditon
0 <= S < S + 6143 <= E < number of samples in file1
-wholeloop: set the whole loop

-d : decode to file1 to file2(16bit linear PCM wav file)
below options only affects to decoding mode(when not, they will be ignored)
-repeat N: repeating LOOP part N times(default 2)


This ATRAC3plus program supports only the following parameters

bitrate = 52[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 66[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 66[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 105[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 132[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 32[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 48[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 64[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 96[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 128[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 48[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 64[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 96[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 128[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 160[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 192[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 256[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 320[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 352[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]

Scorpeg
15.03.2015, 14:36
Не так давно, года этак 3 тому назад, миру стало известно :)

Жалко у них муксера нигде не затарено... А он есть! Называется PSMF Composer.

ErikPshat
17.03.2015, 08:37
Не так давно, года этак 3 тому назад, миру стало известно
Ну не 3 года. Дата изготовления диска 03.02.2013 с прошивкой 6.60 внутри, а дата релиза в Японии и того позже.
Просто вспомнилось про ATRAC3plus, а темы на форуме не было, вот и решил восполнить пробел.

Это антисанкция в ответ далёкому востоку :D

А он есть! Называется PSMF Composer.
Ну так это ни для кого не секрет, лежит он в папке "Sony UMD Tools\Umd Stream Composer\bin" и называется MpsMux.dll.
Только как им пользоваться, никто не написал инструкции.

Rockets
02.04.2015, 12:20
Если я все сделаю по инструкции, будут ли радио в гта играть по кругу? Если конвертировать прогой от рокстар, радио играет до конца и тишина потом. Нужно заходить в игровое меню и там радио пощелкать.

SILENT-Pavel
02.04.2015, 14:45
Rockets, тут подробнее, смотри заметку про радио http://gtamodding.ru/wiki/%D0%90%D1%83%D0%B4%D0%B8%D0%BE_%D0%BD%D0%B0_PSP

Rockets
02.04.2015, 23:02
SILENT-Pavel, я не вижу там про проблему loop треков

Yoti
03.04.2015, 00:59
Rockets,
единственный вариант сделать как ты хочешь - подменить радио. В своё время я расковырял все детали замены.

Rockets
03.04.2015, 01:56
Так я меняю старое радио, всё по инструкции. Помню где-то читал что хексом надо заголовки редактировать, а где именно не помню.

SILENT-Pavel
03.04.2015, 03:05
Помню где-то читал что хексом надо заголовки редактировать, а где именно не помню.
http://forums.gtamodding.ru/index.php?showtopic=2405

Yoti
03.04.2015, 18:18
Помню где-то читал что хексом надо заголовки редактировать, а где именно не помню.
смотри заметку про радио http://gtamodding.ru/wiki/%D0%90%D1%...0%BD%D0%B0_PSP
:dash:

Rockets
03.04.2015, 18:23
Похоже я слепой, но я не вижу этого места с loop'ами.

Yoti
03.04.2015, 20:54
Похоже я слепой, но я не вижу этого места с loop'ами.
единственный вариант сделать как ты хочешь - подменить радио
Замена радио
Выполните операции из раздела Конвертация в AT3
откройте образ игры UMDGen'ом
замените файл радио, например, PSP_GAME\USRDIR\AUDIO\MUSIC\MSX.AT3 на ваш файл.
обновите AT3HEDEU.BIN с помощью программы HEADER.BIN Creator
пересохраните образ.

Rockets
03.04.2015, 20:58
я всё делал по инструкции, хеадер бин креатор не помогает. Он нужен чтоб показать где радио начинается похоже. В общем там как-то сам at3 файл в hex редактировать надо было.

Yoti
08.04.2015, 13:29
Он нужен чтоб показать где радио начинается похоже.
Он нужен, чтобы кастомное радио игрой воспринималось. Мне уж лучше знать, что моя программа делает.

В общем там как-то сам at3 файл в hex редактировать надо было.
Это относится только к оформлению хомок. Хотя, вот тебе ключевые слова: snd0.at3 loop|повтор

Rockets
08.04.2015, 13:37
Сам создатель тут, здорово. Если повтор не нужен, может у меня радио слишком большие? Там есть ограничение на время или размер?

Yoti
09.04.2015, 00:51
Там есть ограничение на время или размер?
Заменял всю станцию на один трек, проблем не было.

DruchaPucha
27.12.2020, 11:53
А нет ли команды, которая конвертирует сразу много файлов wav>at3?

temon02
27.12.2020, 21:57
DruchaPucha, в этой теме есть батник, нужно лишь его поправить (https://www.pspx.ru/forum/showthread.php?t=108369)

ErikPshat
28.12.2020, 07:02
А нет ли команды, которая конвертирует сразу много файлов wav>at3?
Это не команда называется, а пакетная обработка :)

Вот пример для PSP:

Создаёшь сначала папку WAVE для пачки *.wav файлов.
Соответственно ты заранее подготавливаешь под параметры конвертера at3tool.exe эти *.wav файлы.
(16bit linear PCM 44100[Hz] wav file)
Если что не так, конвертер сам тебе выплюнет на соответствующем файле ошибку.
Затем копируешь ниже выложенный чёрный код в пустой текстовой файл и сохраняешь его рядом с расширением *.bat
И запускаешь на исполнение. Готовый результат увидишь в папке ATRAC3

@echo off
if not exist WAVE md WAVE
if not exist ATRAC3 md ATRAC3
for %%A in ("WAVE\*.wav") do (
echo Encoding WAV: "%%~nxA"
at3tool.exe -e -br 128 "%%A" "ATRAC3\%%~nA.AT3"
echo.
)
pause

SCEI ATRAC3plus Codec TOOL Version 2.0.0.0
SCE CONFIDENTIAL
Copyright(C) 2007 Sony Computer Entertainment Inc. All Rights Reserved.
*** built w/ ATRAC3plus library version 1.02 ***
Usage : at3tool [-<option>] file1 file2
-e : encode file1(16bit linear PCM wav file) to file2
below options only affects to encoding mode(when not, they will be ignored)
-br N: specify the bitrate Nkbps
-loop S E: specify the loop start point is S samples from the beginning
specify the loop end point is E samples from the beginning
S and E must satisfy under conditon
0 <= S < S + 6143 <= E < number of samples in file1
-wholeloop: set the whole loop

-d : decode to file1 to file2(16bit linear PCM wav file)
below options only affects to decoding mode(when not, they will be ignored)
-repeat N: repeating LOOP part N times(default 2)


This ATRAC3plus program supports only the following parameters

bitrate = 52[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 66[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 66[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 105[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 132[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 32[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 48[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 64[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 96[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]
bitrate = 128[kbps], Ch = 1[ch], Sampling Rate = 44100[Hz]

bitrate = 48[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 64[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 96[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 128[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 160[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 192[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 256[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 320[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]
bitrate = 352[kbps], Ch = 2[ch], Sampling Rate = 44100[Hz]

Вот пример для PS3:

Создаёшь сначала папку WAVE для пачки *.wav файлов.
Соответственно ты заранее подготавливаешь под параметры конвертера at3tool.exe эти *.wav файлы.
(16bit linear PCM 48000[Hz] wav file)
Если что не так, конвертер сам тебе выплюнет на соответствующем файле ошибку.
Затем копируешь ниже выложенный чёрный код в пустой текстовой файл и сохраняешь его рядом с расширением *.bat
И запускаешь на исполнение. Готовый результат увидишь в папке ATRAC3

@echo off
if not exist WAVE md WAVE
if not exist ATRAC3 md ATRAC3
for %%A in ("WAVE\*.wav") do (
echo Encoding WAV: "%%~nxA"
PS3at3tool.exe -e -br 128 "%%A" "ATRAC3\%%~nA.AT3"
echo.
)
pause

SCEI ATRAC3plus Codec TOOL Version 3.1.0.0
SCE CONFIDENTIAL
Copyright(C) 2010 Sony Computer Entertainment Inc. All Rights Reserved.
Copyright 2010 Sony Corporation
*** built w/ ATRAC3plus library version 1.03.03 ***
Usage : PS3at3tool [-<option>] file1 file2
-e : encode file1(16bit linear 48kHz PCM wav file) to file2
below options only affects to encoding mode(when not, they will be ignored)
-br N: specify the bitrate Nkbps
-loop S E: specify the loop start point is S samples from the beginning
specify the loop end point is E samples from the beginning
S and E must satisfy under conditon
0 <= S < S + 6143 <= E < number of samples in file1
-wholeloop: set the whole loop

-d : decode to file1 to file2(16bit linear PCM wav file)
below options only affects to decoding mode(when not, they will be ignored)
-repeat N: repeating LOOP part N times(default 2)


This ATRAC3plus program supports only the following parameters

bitrate = 57[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 72[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 72[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 114[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 144[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 32[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 48[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 64[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 96[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]
bitrate = 128[kbps], Ch = 1[ch], Sampling Rate = 48000[Hz]

bitrate = 64[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 96[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 128[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 160[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 192[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 256[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 320[kbps], Ch = 2[ch], Sampling Rate = 48000[Hz]
bitrate = 192[kbps], Ch = 6[ch], Sampling Rate = 48000[Hz]
bitrate = 256[kbps], Ch = 6[ch], Sampling Rate = 48000[Hz]
bitrate = 320[kbps], Ch = 6[ch], Sampling Rate = 48000[Hz]
bitrate = 384[kbps], Ch = 6[ch], Sampling Rate = 48000[Hz]
bitrate = 512[kbps], Ch = 6[ch], Sampling Rate = 48000[Hz]
bitrate = 384[kbps], Ch = 8[ch], Sampling Rate = 48000[Hz]
bitrate = 768[kbps], Ch = 8[ch], Sampling Rate = 48000[Hz]