ZStreamChunksReader: выдёргивание и конвертирование 3DO ресурсов
Автор |
Сообщение |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Данная программа предназначена для проигрывания/просмотра/извлечения/замены ресурсов в играх для приставки 3DO Interactive Multiplayer (R.E.A.L). Музыку можно извлечь из потоковых файлов STREAM, ZStream, видеофайлов, BIN-файлов (бинарные файлы) путём конвертирования сжатых AIFC файлов и извлеченной музыки в формат WAV или AIFF, а так же обратное сжатие WAV/AIFF в AIFC (формат SDX2 моно/стерео) и замена звука в играх. Аудио данные также извлекаются из видеофайлов. Расширения аудио файлов могут быть отличными от Stream, ZStream, weave, AIFC, поэтому экспериментируйте. Поддерживается конвертирование видео из 3DO формата Stream в AVI файлы. Так же возможен просмотр IMAG файлов, извлечение файлов CEL и ANIM из архивных файлов.
ZStream Chunks Reader 0.9.1 - конвертирует 3DO видео в AVI. ZStreamChunksReader 0.80ZStreamReader082ZStreamReader084ZStreamReader085ZStreamReader096 (Stream to AVI/AVI to 3DO Stream, QuickTime MOV to 3DO Stream)Распаковка игры Casper
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Author 18 июл 2016, 13:46, всего редактировалось 21 раз(а).
|
05 июн 2013, 14:07 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Есть какой-то крутой конвертер форматов. Может, какие файлы сможет подхватить, но опять же их нужно избавить от 3DO'шных чанков. Но вдруг DUK файлы понимает :) http://www.erightsoft.com/Superdc.htmlВсё уприается в то, что подсказать некому и подсмотреть негде, более менее понятные примеры отсутствуют.
|
23 сен 2015, 12:15 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Нашёл файлы сжатые в CinePack. Выкладываю один для примера. Зачем они нужны? Если разобрать их структуру. Останется сформировать свой avi с тем же заголовком и списком индексов опорных кадров (х.з какие из них опорными будут, каждый N-ый), подпихнуть данные из 3DO стрима (предварительно выполнив swap значений) и смотреть уже на компе видяхи. Звучит просто. На деле нашёл только один рабочий пример по созданию AVI из BMP. Всё работает. Беда в том, что нам не BMP нужно(не последовательность из картинок), а именно фреймы(кадры) запихивать в AVI. Так же ещё как-то звук подпихнуть надо. Тут уже можно воспользоваться редактором и соединить готовое видео с выдернутым сконвертированным звуком. Но, суть конвертера такова.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
|
15 окт 2015, 13:04 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Author Ты хочешь проанализировать этот файл, сделать конвертер для него, а потом адаптировать для 3DO, учиитывая, что там тоже cinepack?
|
15 окт 2015, 13:13 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Versus, в целом примерно так, да. Уже можно пробовать подпихивать хотя бы первые несколько кадров вручную, чтобы хоть увидеть картинку. Проблема в том, что разбор AVI файла самой ОС'ью перед тем как отдать на обработку кодеку очень капризен (как и сам кодек), если что-то не так, мы просто чёрный фон увидим и всё.
|
15 окт 2015, 13:20 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Начинание классное! Давно хочу пялиться на полученные с оригинала ролики. 
|
15 окт 2015, 13:34 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
В общем пока выложу исходники найденной проги и её билд. Немного её поправил, чтобы цвета хотя бы 16 битные держала. Разрезал CelViewer'ом ролик из SpaceHulk'a на BMP'шки и собрал этой прогой в AVI. Результат нормальный. Минусы - CelViewer не все видео декодит идеально, есть шумы, возня с BMP.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
|
15 окт 2015, 14:28 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
В общем пока затык полный.Пытался из 3DO хоть один фрейм вставить в файл Rudy, хоть оттуда один фрейм в 3DO'шный, ни где не декодируется. на ПК мусор, а CelViewer повисает при попытке декодинга кадра из Ruby. Правда мне swap не удалось сделать, но кажется свопировать такие данные не требуется. Во всяком случае при обработке аудио файлов эти процедуры выполняются только для вычисления размеров данных.
UPDATE: не успел я сообщить грустную новость, как случился прорыв - удалось вставить фрейм из Ruby в видяху из Space Hulk'a. CelViewer всё показал верно :)
Имеем формат фрейма 3DO:
FRME...(..Y...Yx.@............,......x.@ ...
46524D45000000280000598400005978014000F00002FE000006000010002CC0000000000078014020000600
формат фрейма AVI
00db.[....[..@......-B.....x.@ ...
30306462025B000000005B02014000F0000210002D42000000000078014020000604
Жирным выделил куски, по которым понял, что это служебная инфа в ПК версии кодека. Я её случайно затирал. В общем малейшая ошибка и кадра не увидеть.
Далее я выяснил, что размер фрейма в chapel.cpak (3DO видяха) 5968 байт, скопировал из Ruby.avi данных этого же размера и вставил вместо прежних в chapel.cpak. Всё срослось. Свопить ничего не нужно, нужно только сформировать правильно заголовок AVI и список индексов (это посложнее) кадров, остальное просто накопировать. Т.е. создавать видяхи для 3DO игр можно будет средствами только утилит Windows.
|
02 ноя 2015, 14:21 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Вставить в avi и увидеть первый измененный кадр удалось. Проблема в том, что отображается только половина. В чём дело не ясно пока. То ли кодек обламывается при декодинге, то ли ещё что-то. Размер кадров у Ruby.avi и chapel.cpak одинаковый 320х240.
|
03 ноя 2015, 10:54 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
AuthorОу! Поздравляю!  Хороший прогресс! Все время забываю, какой максимальный размер кадра у видеороликов? 320х240?
|
03 ноя 2015, 11:02 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Versus, у стандартных 3DO'шных 320х240, но в Neuro Dancer'e высота больше встречается, меньше тоже полно.
|
03 ноя 2015, 11:08 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Пытаюсь закодить версию собирающую контейнер AVI и хотябы один кадр из потока видео 3DO без использования сторонней библиотеки как предполагал изначально. Какой же стрёмный этот контейнер AVI, никогда бы не подумал. Но всё равно это проще чем писать алгоритм расжатия Cinepak. Интересно, в каком формате закодированы данные типа RAW в видяхах из Snow Job'a например и Killing Time? Когда в AVI попробовал задать такой тип кодека проигрыватель долго думал потом показал шумы, причём размер кадра стал не 320х240, а 2??x5? в общем совсем маленький.
|
05 ноя 2015, 15:38 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Блин, будет круто, если эту кухню осилишь. 
|
05 ноя 2015, 16:09 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Для затравки, кину пока вручную переделанный файл с одним вставленным из SpaceHulk'a кадром (который только на 1/2 выводится). Сам очень надеюсь, что всё получится и можно будет посмотреть сконвертированные видяхи.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
|
05 ноя 2015, 16:22 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
AuthorУвидел половину кадра. 
|
05 ноя 2015, 16:29 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Versus эта половина кадра и заставила двигаться дальше, а то я думал, что ошибся в своей теории одинаковых кодеков.
|
05 ноя 2015, 16:39 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Нашёл тут кое-что проливающее свет на загадки AVI файла. оказывается, если в имени кадра стоит 00 db, то данные не сжаты (вероятно подойдёт для видях из Snow Job'a и Killing Time'a), если 00 dc, то кадр с компрессией.
|
06 ноя 2015, 12:45 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Экспериментальная/нерабочая версия конвертации видео из 3DO формата в ПК. Выкладываю с одной лишь целью - кто-нибудь возможно сможет поправить созданные AVI файлы и подсказать, что программа формирует в них не так. К сожалению не видно даже первого кадра как получилось с готовым файлом Ruby.avi. Причина в том, что сделать такой же аналог как в Ruby для меня пока слишком сложно, я нашёл вариант попроще. Но где-то допущена ошибка. Пытаюсь докопаться где. Если её побороть,то конвертер готов. Так же выкладываю найденный небольшой, но дельный мануал по структуре AVI.
По возможности отпишитесь, какие результаты получились. Может какой AVI фиксер сможет поправить файлы (я уже несколько перепробовал, Они мне только чуть больше в структуре помогли разобраться). Пробовать можно любые файлы stream,weave,str и т.п.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
|
10 ноя 2015, 16:36 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Итак, потратив кучу времени на поиск верного пути удалось получить конвертацию видео. НО! что же за жесть, только половина кадра нормально декодируется :( что за фигня. Взятый кадр из Ruby и вставленный в 3DO видяху отобразился полностью. Если интересно могу этот половинно-кадровый конвертер выложить.
|
11 ноя 2015, 14:41 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Author Оу! Здорово! Конечно, выкладывай, это уже победа большая! Думаю, со временем ты этот половинчатый кадр одолеешь. Скорее всего, там всего один параметр не так выставлен, слишком явная половина кадра.
|
11 ноя 2015, 15:01 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Версия ZStream Chunks Reader 1.0.9.0.
Добавлена конвертация видеофайлов из формата 3DO Stream в формат AVI (Audio-Video Interleaved). Пока вторая половина кадра не декодируется. Пока в видео не добавляется звук. Не отслеживается скорость воспроизведения. Гарантировано должны преобразовываться только видео файлы сжатые в CVID(Cinepak video codec by Radius). Не конвертируется и не добавляется аудио поток.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
|
11 ноя 2015, 15:17 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
AuthorБлагодарю! 
|
11 ноя 2015, 15:27 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Спасибо! Я нашёл параметр отвечающий за выводимый размер первой половины кадра. Забавно. Можно его уменьшить, тогда будет уже не половина, а треть или вообще одна узенькая полоска. Увеличение параметра к сожалению не прибавило строк изображения.
|
11 ноя 2015, 16:07 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
AuthorНо направление "рытья" верное же! 
|
11 ноя 2015, 16:28 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Ага. Это подстава. Есть ещё одно такое же число внутри второй половины кадра. Оно отвечает за её выводимый размер. Ёпрст. Кто же знал, что кадр делится на два отдельных куска для декодирования. Видимо где-то смещение не верно и эти данные тупо игнорятся кодеком. Или надо убрать лишние данные, которые уже были обнаружены в 3DO'шных фреймах, но без которых в 3DO не работает декодинг. Это плохо, т.к. преобразование из AVI в Stream вероятно будет труднее. В общем сегодня вряд ли поправлю, надо вникать.
|
11 ноя 2015, 16:51 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Хм, никаких внутрикадровых смещений нет. Данные занесены верно. Единственное, что для вывода пришлось из 3DO выкинуть несколько байтов заголовка кадра, которые не понятно за что отвечают. Может причина кроется в этом? Вставка первого кадра из образца Ruby.avi в мой файл дала тот же половинчатый результат. Значит ошибка где-то раньше.
Обрадовался и тут же огорчился. Прямо беда с этой второй половиной кадра. Нашёл почему не отображалось. Исправил. В итоге вторая часть отрисовывается, но с таким же мусором как и в CelViewer'e. Блин, шило на мыло поменялось. Единственное, что тут всё автоматизировано и мы имеем avi на выходе сразу.
Добавлено спустя 1 час 42 минуты 17 секунд: Кажется понял. Мусор появляется в кадрах потому, что они не опорные! Опорные кадры не содержат определенного флага, а не опорные, как раз содержат флаг. Выставление принудительно флага везде дало гораздо лучший результат, но мусор остаётся, видимо теперь как раз из-за наличия флага в опорных кадрах. Песец. Как же мне пригодился готовый AVI файл в формате CVID, без него ни чего бы не вышло.
|
12 ноя 2015, 10:29 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
AuthorКак написала Ребекка в комментариях в коде Doom: "My brain hurts." 
|
12 ноя 2015, 12:18 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Versus,  да, тут есть от чего мозгам больно становится. Надеюсь доразобраться когда точно флаги выставлять и вывод видео будет готов. Добавлено спустя 2 часа 37 минут 16 секунд:Наслаждайтесь видосами из 3DO игр :) пока в тишине :) Сообщения об ошибках и т.п. приветствуются!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Author 12 ноя 2015, 16:11, всего редактировалось 1 раз.
|
12 ноя 2015, 12:23 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Author Вах, классно! Спасибо! Обнаружил, что ролики из Doom конвертятся, но при просмотре как будто каждые несколько строк смещаются по горизонтали.
Добавлено спустя 1 минуту 29 секунд: Ролики NFS проигрываются корректно, но с приостановками каждые 0,5 сек.
Добавлено спустя 1 минуту 11 секунд: Ролики DeathKeep либо не запускаются, либо как в Doom.
Добавлено спустя 3 минуты 20 секунд: Doctor Hauzer - как в Doom.
|
12 ноя 2015, 15:34 |
|
 |
Author Приставочник
Группа: Разработчики Сообщения: 1211 Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J
|
Versus, спасибо за отзыв. Надо будет самому глянуть видяхи из этих игр. Интересно, что за остановки каждые 0.5 сек? Дёрганое видео что-ли? Ролики из DeathKeep как не запускаются? Ошибку выдаёт или что? Форматы видео везде CVID? (во время конвертации можно увидеть)
|
12 ноя 2015, 15:49 |
|
 |
Versus Я консольный бог
Группа: Разработчики Сообщения: 9841 Регистрация: 04 дек 2009, 11:59 Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U
|
Как будто плавно приостанавливается немного и дальше идет. Да, плеер выдает ошибку, какую - не пишет. Файл End1B2.stream запускается, а EndCredits.stream - нет. Добавлено спустя 5 минут:Да.
|
12 ноя 2015, 15:52 |
|
|