[ Сообщений: 442 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 15  След.
ZStreamChunksReader: выдёргивание и конвертирование 3DO ресурсов 
Автор Сообщение
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Вложение
ZStreamChunksReader 0.83.png
Данная программа предназначена для проигрывания/просмотра/извлечения/замены ресурсов в играх для приставки 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.
Вложение
0

ZStreamChunksReader 0.80
ZStreamReader082
ZStreamReader084
ZStreamReader085
ZStreamReader096 (Stream to AVI/AVI to 3DO Stream, QuickTime MOV to 3DO Stream)


Распаковка игры Casper


У вас нет необходимых прав для просмотра вложений в этом сообщении.

Последний раз редактировалось Author 18 июл 2016, 13:46, всего редактировалось 21 раз(а).



05 июн 2013, 14:07
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, аудио и видео куски разделены. Я их записываю по очереди следования как они расположены в Stream'e. По идее это самый настоящий смешанный ауди/видео файл. Беда в том, что куча флагов в AVI не до конца разобраны. Вроде выставил, что звук и изображение идут вперемешку, но один плеер сначала играет звук, потом видео и наоборот, другой всё вместе с битым изображением (с чего бы?) очень быстро и звуком. Со звуком тоже разбираться надо, чтобы его плеер верно воспроизвёл, опять косяки в работе с обычным AIFF.

Versus писал(а):
Может, имеет смысл сохранять отдельно звук, отдельно видео (с одинаковыми длительностями для синхра)

Оно и сейчас нужно, сконверить в AVI, выдрать звук отдельно и собрать всё каким-нибудь VirtualDUB.

Добавлено спустя 1 час 39 минут 25 секунд:
В целом по звуку можно разобраться как плеер заставить читать не Unsigned PCM, а Signed PCM и дело в шляпе (ничего перекодировать не придётся), для этого нужно знать какой флаг настроить. Когда он читает Signed, то порядок битов Little Endian. Пробовал свопить, неправильный звук получается. Сделать нормальную синхронизацию, пусть звук и уползёт, но чтобы не было сначала одно, потом другое. Перкодировку звука на лету из SDX2 в PCM при конвертировании в AVI. Уфф.


20 ноя 2015, 13:31
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Пример продвижения в конвертации.
logo.stream.avi


21 ноя 2015, 16:43
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

на WindowsMediaPlayer видео без звука, в Daum PotPlayer вообще не воспроизводится


21 ноя 2015, 19:05
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

GEN13, какая версия WMC и ОС? Заметил, что в XP Media Player Classic пишет, что кодек не найден (вероятно для звука), но потом какой-то выбирает видимо по умолчанию и звук есть. В 7ке Windows большой и классический Media Player воспроизводят. Кодеки какие установлены?


21 ноя 2015, 19:57
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

в 8.1 Media Player Classic видео подтормаживает и звук из-за этого заканчивается быстрее чем видео. Конец видео немой.


21 ноя 2015, 21:09
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

GEN13, какая версия WMC и ОС? Заметил, что в XP Media Player Classic пишет, что кодек не найден (вероятно для звука), но потом какой-то выбирает видимо по умолчанию и звук есть. В 7ке Windows большой и классический Media Player воспроизводят. Кодеки какие установлены?

ОС-Win 7 x64 SP1
WindowsMediaPlayer v12.0.7601.18741 эт на котором ролик без звука воспроизвоился.
Kодеков не ставил так как Daum PotPlayer x64 v1.6.56209 обычно всё хавает


21 ноя 2015, 21:51
Аватара пользователя
Консольный монстр
Консольный монстр

Группа: Разработчики
Сообщения: 2112
Регистрация: 21 окт 2011, 21:37
Откуда: Слобожанщина, 31Rus
Модель 3DO: GoldStar GDO-101M

Windows 10 Домашняя 64-бит, QuickTime Player Версия 7.7.8 (1680.95.71), ситуация в точности как у aliast, последние несколько секунд видео без звука.

Добавлено спустя 1 минуту 32 секунды:
Насчёт подтормаживания не скажу, по-моему на 3DO это видео в точности так же воспроизводилось.


21 ноя 2015, 23:15
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Как я понял, вся проблема во флагах/параметрах сейчас, в заголовке файла. Вся структура правильная, проги чинящие AVI пишут, что всё норм. Заголовок нужно сделать абсолютно правильным, тогда всё будет синхронно. Так же в создаваемой AVI'шке нет одной секции, которую сложно создать, но без которой всё итак должно работать. Есть размер буфера чтения, есть объём данных в секунду, в зависимости от кодека видео и аудио - свой набор параметров. Ужасъ! :ps_ih:
Кроме того, читал что некоторые плееры сами содержат ошибку разбора AVI - убило вообще.
GEN13, а файл Rubi.avi (я его тут выкладывал) Daum PotPlayer воспроизводит?

aliast писал(а):
в 8.1 Media Player Classic видео подтормаживает и звук из-за этого заканчивается быстрее чем видео. Конец видео немой.

Скорость забора фреймов получается ниже, чем частота звучания, отсюда и проблема. Хотя в начале всё ок, потом резко тормозить начинает. Это явно с буферизацией связано. У меня ещё был вариант, когда видео шло нормально, а звук заикаться начинал.

Пока есть идея - в Ruby.avi добавить WAV и изучить содержимое флагов.


22 ноя 2015, 18:09
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

Кроме того, читал что некоторые плееры сами содержат ошибку разбора AVI - убило вообще.
GEN13, а файл Rubi.avi (я его тут выкладывал) Daum PotPlayer воспроизводит?

воспроизводится в Daum PotPlayer без звука, и WindowsMediaPlayer без звука


22 ноя 2015, 18:32
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

GEN13 писал(а):
воспроизводится в Daum PotPlayer без звука, и WindowsMediaPlayer без звука

Значит CVID понимает. Звука в файле нет.

Хм...оказывается секция FILL не такая уж бесполезная, её аналог JUNK в AVI встречается в видяхах очень часто.

Добавлено спустя 1 час 48 минут 53 секунды:
Затык вот с этими параметрами:

DWORD microSecPerFrame;
// Specifies the number of microseconds between frames.
// This value indicates the overall timing for the file.
DWORD maxBytesPerSec;
// Specifies the approximate maximum data rate of the file. This
// value indicates the number of bytes per second the system must
// handle to present an AVI sequence as specified by the other
// parameters contained in the main header and stream header chunks.

Как их вычислять??

Добавлено спустя 1 час 28 минут 52 секунды:
ZStream Chunks Reader 1.0.9.3

- конвертация Stream to AVI со звуком
- ручная установка количества кадров в секудну (параметр Spin Rate)
- компрессия wav/raw в ADPCM 4-bit

известные баги:

- рассинхрон звука и видео
- ошибка чтения аудио данных плеерами, неверная обработка - шум
- RAW видео не конвертируется


У вас нет необходимых прав для просмотра вложений в этом сообщении.


23 ноя 2015, 10:22
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Спасибо! Снова радуешь. :-):


23 ноя 2015, 13:41
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Нужен ещё один пример файла RAW видео.
Вот его предполагаемые характеристики

Video
ID : 0
Format : RGB
Codec ID : raw
Codec ID/Info : Full Frames (Uncompressed)

Важно выделенное жирным. Именно такой Codec ID в 3DO'шных Killing Time и Snow Job роликах.

Versus, пример твоего raw ролика, где самолёт выводит такое:
Video
ID : 0
Format : RGBA
Codec ID : 0x00000000
Codec ID/Info : Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples
Я пробовал подпихнуть в BMP кадр - там просто шум получается. Какой-то хитрый RAW, может всё же сжато частично или декодирование цветов по особому алгоритму.
Возможно, что нужно конвертить такие видео в QuickTime mov'ы. Пример RAW в MOV'e тоже пригодится.


23 ноя 2015, 16:51
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

MicroSecPerFrame = 1000000/fps при известном фпс.
Про maxBytesPerSec пока не нашёл. Во многих исходниках это либо 0, либо 1048576 (1 Мб) константой. Даже есть такой прикол
Цитата:
// OUTLONG(10000000); /* MaxBytesPerSec, I hope this will never be used */
:-)

maxbytespersec = 1000000.0*(totalsize/nframes)/MicroSecPerFrame;
totalsize - это total frame size
nframes - total number of frames


24 ноя 2015, 06:05
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

aliast, спасибо за инфу. Сейчас я забил на эти параметры, поправив Scale и задав самостоятельно Rate. При Scale = 1, Rate фактически задаёт количество кадров в секунду.
Попробую MicroSecPerFrame посчитать, может ситуация улучшиться. Так же не ясно, кадры и звук в 3DO синхронно чередуются или нет. Потому что в AVI сейчас указывается что AVI_Interleaved, а может быть ещё AVI_Captured - это асинхрон - может тогда лучше будет??
aliast писал(а):
OUTLONG(10000000); /* MaxBytesPerSec, I hope this will never be used */

Да, в мануале по AVI что-то подобное писалось про несколько обязательных параметров, которые как не задай - пофиг всем. Контейнер ужасный в этом смысле, капризы на каждом шагу, да ещё и каждый плеер обрабатывает чуть ли не со своей колокольни. QuickTime'у я так понял положить на Scale и Rate, скорость практически не меняется.

Добавлено спустя 2 часа 49 минут 59 секунд:
расчёт доп. параметров не дал эффекта. Установка новых кодеков (2014 года K-lite) привела к тому, что Media Player классический всё дёрганно воспроизводит.

Добавлено спустя 17 минут 15 секунд:
В общем рекомендуемый плеер получаемых видео файлов - QuickTime Player. Я смотрел на версии 7.7.5. Меняя кол-во кадров в секунду можно подобрать значение, когда синхронизация почти идеальная. Для роликов NFS - 16FPS. Блин, а где в Stream файлах указывается FPS?

Добавлено спустя 49 минут 18 секунд:
Видяхи из Defcon 5 - 15 FPS для QT Player'a.

Добавлено спустя 16 минут 51 секунду:
Update
- Сделан пересчёт частоты для 8-битных аудио дорожек, помогло избавиться от шума
- Добавлена опция свопинга данных аудио дорожки, для не сжатых данных этот флаг иногда требуется включить.


У вас нет необходимых прав для просмотра вложений в этом сообщении.


24 ноя 2015, 10:13
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

в Фениксе можно посмотреть внутриигровой FPS, насколько точно не знаю, но вроде правильно :nez-nayu:


24 ноя 2015, 14:31
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

GEN13 писал(а):
в Фениксе можно посмотреть внутриигровой FPS

Быстрее получится в ручную на глаз подобрать. Просто может в Stream'e где-то прописано? Приставка же как-то понимает как обработать видео. Надо SDK снова поднимать наверно.


24 ноя 2015, 14:33
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Может, сделать проще? Сконвертить с помощью SDK один ролик с разным fps и сравнить потом в hex?


24 ноя 2015, 14:38
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, тоже вариант. А так из SDK нужно смотреть описание FHDR и FRME. В FDHR мало данных, вряд ли там что-то есть, а большую часть заголовка FRME прога просто копирует в AVI, не особо вдаваясь в подробоности содержимого, где как раз может быть указан FPS.


24 ноя 2015, 14:46
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

на 3DO возможны видеоролики выше 15FPS без потери производительности?


24 ноя 2015, 14:49
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Интересный момент, если в AVI указать кодек DUCK, то плеер запускает файл с чёрным экраном, как если бы он не мог нормально декодировать фреймы, но сам кодек подцепился :)
Вообще кое-какая инфа по этим DUK/DUCK'ам есть в инете, это ранний вариант кодека TrueMotion-S Video.


24 ноя 2015, 17:05
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

GEN13 писал(а):
на 3DO возможны видеоролики выше 15FPS без потери производительности?

Видео из Phoenix 3 на 15 кадрах не успевает за звуком. Нужно больше выставлять. Значит 3DO нормально такое тянет, правда это только видео, без участия игрока и каких либо вычислений для AI игры.
p.s. заметил что большинство роликов нормально(идеально я бы сказал) синхронизируется при 15 FPS, но есть случаи, где надо меньше или больше задавать.
p.s.s Если неудобно пользоваться QuickTime Player, то видео можно сконвертить в MKV формат с помощью MKVToolNix, полагаю есть ещё варианты.

Добавлено спустя 57 минут 3 секунды:
Найдено значение FPS в FHDR :-):


25 ноя 2015, 12:05
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author писал(а):
Найдено значение FPS в FHDR

Ура! Я хотел вечером попробовать сделать тебе ролики с разными fps. Уже не надо?


25 ноя 2015, 13:11
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, да, пока не надо. Осталось расчёты поправить в связи с находкой и всё.
Нужен ролик с RAW видео в формате MOV. В DUK'ах покопаюсь ещё.

Добавлено спустя 26 минут 15 секунд:
Определение FPS хорошо подходит к обычным видео потокам. В потоках, где есть паузы (не знаю как они делаются) FPS нужно занижать вручную иначе слишком быстро заканчивается видео.


У вас нет необходимых прав для просмотра вложений в этом сообщении.


25 ноя 2015, 13:25
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

В некоторых видео файлах вместо FPS указывается какое-то очень большое число, что приводит к невозможности воспроизвести файл нормально при автоматической подстановке FPS. Можно попробовать сделать в таком случае установку принудительных 15 FPS (как наиболее часто встречающийся случай). Столкнулся с таким в Iron Angel of Apocalypse The Return.


26 ноя 2015, 12:50
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Начал разбираться с DUK файлами. Похоже нашёл размер аудио и видео данных в блоках, а так же размер заголовка каждого блока. Подставить в ПК'шный AVI с DUK кодеком пока не вышло.
Так же не ясно для CinePak'a, какой параметр надо учесть в файлах stream, где к примеру 30 FPS слишком быстро воспроизводят видео и надо резать до 15, хотя чётко указано 30. Но это не проблема в целом, лечится ручным указанием нужного FPS, если автоматика подвела, кроме критичных случаев, где к примеру в видео несколько картинок сменяемых с течением времени, а музыки на всё это время записано.
Кто знает, как в AVI задержать показ фрейма? По идее же в редакторах собирая видяшку из картинок, мы может задать протяжённость её показа. Вот и интересно, это столько кадров под нужное кол-во времени создаётся или просто выводится один кадр до момента встречи какого-то управляющего флага.


30 ноя 2015, 16:11
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Мдааа... Ну ты вопросов понакидал... :-( Я вообще в это не втыкаю... :-(


30 ноя 2015, 16:24
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Есть опасения, что кодека для 3DO'шных DUK файлов для WIndows не существует. Там какая-то ранняя версия зарождающегося кодека TrueMotion S, судя по инфе из инета. Звук там сжат чем-то типа ADPCM, но не 4х битный. Я им попробовал расжать- стало слышно речь в роликах, только очень фигово и иногда чуть ли не до тишины доходит. Но алгоритм видимо похожий. Есть вроде ещё 3х битный ADPCM. В общем как будет время попробую дёрнуть звук и погонять в Sound Forge разными декодерами, чтобы понять какой задать в AVI. С видео пока ступор :ups: заголовочные файлы hdr почему-то для всех файлов одинаковые. То что предполагалось разрешением картинки оказалось чем-то другим. Файл tbl вообще фиг знает что содержит и куда его данные можно подпихнуть в AVI. Файл frm содержит указатели на блоки видео фрагментов со звуком. Причём звук всегда одинакового размера, а данные фрейма в размере меняются. Файл бесполезен, т.к. всю структуру DUK можно пройти и без него.


04 дек 2015, 11:09
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Интересно, а QuickTime Player Pro умеет создавать видео файлы Raw?


10 дек 2015, 13:49
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Про Lost Eden еще актуально?


10 дек 2015, 15:11
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, актуально, потому-что мне кажется алгоритм не идеально отрабатывает. В DUK файлах и видяхах от Psychic Detective похоже тоже используется ADPCM, но там декодится просто ужасно, хотя без декодирования вообще шум сплошной. В Psy.Detect. посторонний шум в аудио, в Horde звук вообще иногда почти пропадает. Ошибка алгоритма, либо алгоритм декодирования чуть другой, пока не ясно. Попробовал аудио из роликов Psychic Detective дёрнуть отдельно и конвертнуть прогой pcspeech, получилось одинаково с ZStream. Думаю.


10 дек 2015, 16:09
На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 15  След.
Похожие темы
   Темы   Автор   Ответы   Просмотры   Последнее сообщение 
В этой теме нет новых непрочитанных сообщений. Manual Dumper - ручное выдёргивание ресурсов из файла

Author

5

5253

Author Перейти к последнему сообщению

19 сен 2014, 18:18


© 2008-2024 «3DOPLANET.ru». Создано на основе phpBB® Forum Software © phpBB Group
Designed by ST Software || Русская поддержка phpBB || Time : 0.064s | 20 Queries | GZIP : On