Правила, действующие в этом форуме и всех его подфорумах:
1) Запрещена реклама в любых её проявлениях (сразу бан без предупреждения)! 2) Мат тоже не приветствуется на форуме, но иногда можно выразить свои чувства ( лучше заменяйте матные слова точками, пробелами, другими буквами)! 3) Категорически запрещается унижать, посылать, издеваться над участниками форума! Мы здесь все - одна большая и дружная семья! Поэтому за нарушение этого правила автоматически будем банить! 4) Разрешены ссылки на информацию, которые относятся к тому или иному разделу форума! 5) Ссылки не в тему будут удаляться и пользователь получит предупреждение или будет забанен! 6) Пользователям разрешено задавать любые вопросы относящиеся к теме, а мы все дружно ответим на эти вопросы. А также отвечать на вопросы и высказывать своё мнение. 7) Повторные темы, которые будут создаваться, будут удалены! Создавайте темы, удостоверившись, что такой темы нет на форуме! 8) Запрещён флуд во всех его проявлениях, сообщения не по теме, сообщения состоящие из одного или нескольких смайликов без текста, сообщения типа - Вах!, Рулез!, Круто! и т.п. Пользуйтесь пожалуйста кнопкой [EDIT], не плодите бессодержательные сообщения. 9) Использование смайликов разрешается не более 3-х подряд!
Данная программа предназначена для проигрывания/просмотра/извлечения/замены ресурсов в играх для приставки 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.
ну, хотя бы понятно, что ошибка Not a Quad multiple bytes, которую выдаёт на некоторые фреймы DumpStream (в Ruby.stream) не влияет на воспроизведение. В новом файле она вообще ни на что не ругалась. Бесполезная утилита
Сравнил свой Stream файл с оригиналом. Есть различия в одном-двух параметрах по значению. Попробую разобраться, что это такое и как влияет на воспроизведение.
Добавлено спустя 1 час 1 минуту 56 секунд: http://www.fayloobmennik.net/5931517 - новый вариант. Поправлено значение опорного кадра. Возможно это победит фриз.
Author Тот ролик не работает. Выкладываю сборку для тестирования видосов. Разархивируй, ролик закинь в папку movies и переименуй в intro.cpak. Ридми в папке movies. Потом собери образ OperaFS и все.
Versus, благодарю. Это значительно ускорит процесс :)
Добавлено спустя 5 часов 14 минут 28 секунд: Такие пироги:
Сконвертил ролик из Dr.Hauzer GODS с надписью Game Over в AVI. Там нет звука изначально, что важно для понимания. Конвертнул обратно в stream. Выяснил, что моя прога похерила самый первый кадр ролика (это было правильно для AVI файлов созданных не моей утилитой), поправил алгоритм. Ролик воспроизвелся в демо проге. Ура! Я думал, что теперь дело за звуком. Попробовал ещё пару роликов и был уничтожен чёрным экраном. Ни ролик из Space Hulk, ни Ruby.avi не захотели воспроизвестись. Что за чёрт. При том, на параметры видео в стриме я пока забил, т.к. файл из Dr.Hauzer заработал и без шаманств с ними, только лишь из-за наличия первого кадра.
Выкладываю поправленную утилиту. Может ещё какие опыты кто поставит.
p.s. образ с плеером ускорил процесс на дней 20, учитывая сколько примерно проб было сделано.
GEN13, именно над этой задачей голову и ломаю сейчас. Конвертить в 3DO формат можно. Но, cжимать в cinepak она не умеет. Т.е. нужно сначала приготовить AVI сжатый кодеком cinepak, а потом конвертнуть моей прогой в Stream. Пока из трех файлов только один запустился под эмулятором. И пока не поддерживается звук в видео. Бог даст, прикручу ещё конвертацию из MOV файлов тоже сжатых в cinepak. Но сначала нужно понять, чего там ещё косячного в Stream'e наворачиваю.
При том, CelViewer созданные stream файлы из AVI воспроизводит ВСЕ.
Пришёл к выводу, что дело в размере данных. В файле GODS нет звука, есть чанки FILL. При конвертации в AVI у меня включена опция преобразования FILL в JUNK. Поэтому конвертируя AVI обратно в Stream, я получаю теже размеры блоков данных. Отличаются только некоторые параметры не мешающие воспроизведению. Когда обрабатываю видео из SpaceHulk'a, то обрезаются все данные по звуку, размер блока меняется и что-то выходит не так. Так же остаётся загадкой невозможность воспроизвести видео из Total Eclipse в плеере. Поэтому и хотел ещё переделанный файл именно в неё пихнуть. Вдруг там плеер более прожорливый?
Так же остаётся загадкой невозможность воспроизвести видео из Total Eclipse в плеере. Поэтому и хотел ещё переделанный файл именно в неё пихнуть. Вдруг там плеер более прожорливый?
Исходники плеера тоже, вроде, есть. Под конкретную игру плееры могли быть модифицированы.
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Versus, хорошо бы взглянуть на эти исходники, может станет понятно из-за чего висяк. У меня, кстати, в нерабочих видосах даже первый кадр не отображается. Просто темнота и всё.
Versus, у тебя случаем не осталось примеров моих stream'ов, где фриз на первом кадре? Файлообменники удалили уже всё, да и сам я их потёр как неудачные.
Ґ RUNNING DATA STREAMING EXAMPLES Ґ CREATING STREAMED OUTPUTS
All folders referenced in this document are subfolders of 'Examples' folder in the main Data Stream folder unless otherwise indicated.
RUNNING DATA STREAMING EXAMPLES ---------------------------------
Data Streaming examples included in the Examples Folder are:
Ґ NuPlayer This example uses high level Cinepak movie playback. This application requires a streamed output with a header. To run this example, use the following streamed output: NuPlayer.Stream
Usage: NuPlayer <streamFile> "Start" button: pause/unpause the stream "Stop" button: exits the program
Up Arrow: go forward in the stream Down Arrow: go backward in the stream Left Arrow: rewind to the beginning of the stream
Ґ TestDS (Removed from DataStream 2.1) This example is a simple 3DO stream player application that plays streamed Cinepak, ANIM, and sound. To run this example, use the following streamed output: Bach_M.Stream Bach_S.Stream CPakTestStream NewSanm.Stream
Usage: PALTestDS <-c | -a | -s> <streamFile> ... -c Cinepak stream with or without sound -a ANIM stream with or without sound -s sound only stream
"A" button: Toggles stream stop/start "B" button: Toggles printf display of the stream clock "C" button: Switches to playing the next stream in the command line list. Rewinds the stream in between switching streams. "Start" button: exits the program
Up Arrow: Increases amplitude of the current channel Down Arrow: Decreases amplitude of the current channel Left Arrow: Pans the current channel to the left (Mono only) Right Arrow: Pans the current channel to the right (Mono only)
KNOWN PROBLEMS: "B" button doesn't work.
Ґ PALTestDS (PAL Compatible) This example is a simple 3DO stream player application that plays streamed Cinepak, ANIM, and sound. It has the same functionality as TestDs, but provides an output that conforms to the PAL and handles PAL sized images. To run this example, use the following streamed output: Bach_M.Stream Bach_S.Stream CPakTestStream NewSanm.Stream
Usage: PALTestDS <-c | -a | -s> <streamFile> ... -c Cinepak stream with or without sound -a ANIM stream with or without sound -s sound only stream
"A" button: Toggles stream stop/start "B" button: Toggles printf display of the stream clock "C" button: Switches to playing the next stream in the command line list. Rewinds the stream in between switching streams. "Start" button: exits the program
Up Arrow: Increases amplitude of the current channel Down Arrow: Decreases amplitude of the current channel Left Arrow: Pans the current channel to the left (Mono only) Right Arrow: Pans the current channel to the right (Mono only)
KNOWN PROBLEMS: "B" button doesn't work.
Ґ PlaySAnim This is an example of a multi-channel streamed animation file player. To run this example, use the following streamed output: NewSanm.Stream count.sanim pool.sanim
Usage: PlaySAnim <streamFile> "A" button: Toggles stream stop/start "B" button: Toggles printf display of the stream clock "C" button: Switches to playing the next stream in the command line list. Rewinds the stream in between switching streams. "Start" button: exits the program
Up Arrow: Increases amplitude of the current channel Down Arrow: Decreases amplitude of the current channel Left Arrow: Pans the current channel to the left (Mono only) Right Arrow: Pans the current channel to the right (Mono only)
Ґ PlaySA This is an example of using high level stream playback routines for audio. To run this example, use the following streamed output: Bach_M.Stream Bach_S.Stream
Usage: PlaySA <streamFile> "A" button: Toggles stream stop/start "B" button: Toggles current logical channel number between 0 - 3. "C" button: Switches to playing the next stream in the command line list. Rewinds the stream in between switching streams. "LeftShift-A" Toggles mute on channel 0 "LeftShift-B" Toggles mute on channel 1 "LeftShift-C" Toggles mute on channel 2 "RightShift-C" Toggles mute on channel 3 "Start" button: exits the program
Up Arrow: Increases amplitude of the current channel Down Arrow: Decreases amplitude of the current channel Left Arrow: Pans the current channel to the left (Mono only) Right Arrow: Pans the current channel to the right (Mono only)
NOTE: You will get "Error sending control message", status = -6998 error message if you hit the mute button on a channel that is not the current channel.
Ґ SlideStream This is an example of using JoinSubscriber.c to implement a slide show with audio. To run this example, use the following streamed output: SlideStream
Usage: slideStream <streamFile> "Start" button: exits the program
Ґ TestSA This is a simple 3DO streamed audio player application. To run this example, use the following streamed output: Bach_M.Stream Bach_S.Stream
Usage: TestSA <streamFile> ... "A" button: Toggles stream stop/start "B" button: Toggles printf display of the stream clock "C" button: Switches to playing the next stream in the command line list. Rewinds the stream in between switching streams. "Start" button: exits the program
Up Arrow: Increases amplitude of the current channel Down Arrow: Decreases amplitude of the current channel Left Arrow: Pans the current channel to the left (Mono only) Right Arrow: Pans the current channel to the right (Mono only)
Ґ ShuttlePlayer This example demonstrates fast forward, fast reverse, and step forward by using high level Cinepak movie playback. This application requires a streamed output with a header. To run this example, put the following folders to your remote folder: Player_Movies and Player_Screens.
Usage: ShuttlePlayer
"Start" button: pause/unpause the stream "Stop" button: exits the program "A" button: Plays the stream. "C" button: Gives the help screen.
Right Arrow: Go forward in the stream. Left Arrow: Go backward in the stream. Pause and then Right Arrow: Step forward in the stream.
Restriction: If you hit play (A button) and fast forward (right arrow)/ fast reverse (left arrow) at the same time, the stream has problems in synchronizing.
Ґ ProtoPlayer This is a simple example of playing test data through the Prototype Subscriber. Read the ProtoPlayerDocs in ProtoPlayer Folder for usage.
GENERAL NOTE: Volume and pan control work only for streams with audio and panning works only for mono output. If you pan a stereo output, you will get this message: error sending control message! status = -6991.
Also, channel 0 is used to playback all audio stream examples. In order to pan or to change the volume (volume is set to max), you must make sure that the current channel is set to 0 (use the B button to change the current channel).
To run these examples, copy the application and streamed output file provided in the 'Apps & Data' folder inside each example folder to the remote folder and run the application from the 3DO Debugger.
'Tools and Data' folder contains scripts and data for producing streamed output for the aforementioned examples. Scripts included in this folders are:
Ґ ALRM_Chunk This data chunk writes a CTRL-ALRM chunk to the end of the stream to loop streamed animation or movie.
Ґ bach_44K_16B_M.script This script produces Bach_M.Stream.
Ґ bach_44K_16B_S.script This script produces Bach_S.Stream.
Ґ BuildStreamAudio This script builds the audio stream file to be used with the Data Stream example programs.
Ґ Cphdrtest.Weave This script writes a stream header to CPakTestStream output. It produces a streamed output that is used with NuPlayer.
Ґ GanymedeWeaveScript This script produces CPakTestStream output.
Ґ SAnimWithAudioScript This script produces SAnimWithAudio.Stream output.
Ґ SAnmWeaveScript This script produces NewSAnm.Stream output.
Ґ ShuttleWeaveScript This script writes a stream header to ShuttleTestStream output. It produces a streamed output that is used with ShuttlePlayer.
Data included in this folder are:
Ґ Images This folder contains image files for SlideStream.
Ґ SANM.CELS This folder contains CEL files used to create NewSAnmStream. To produce the streamed output, first launch SanmMaker to produce streamed animation file called NewSANM. Then execute the following from MPW to weave the streamed animation file: Weaver -o NewSAnm.Stream < SAnmWeaveScript
NOTE: Refer to 'Streaming Tools Notes' in the StreamTools folder in the main Data Stream folder for detailed information on SanmMaker and other streaming tools.
Ґ bach_44K_16B_M.aiff This 16 bit mono, 44KHz raw audio file produces Bach.Stream output when used in conjunction with bach_44K_16B_M.script. To produce the output, execute the following: Weaver -o bach_M.Stream < bach_44K_16B_M.script
Ґ bach_44K_16B_S.aiff This 16 bit stereo, 44KHz raw audio file produces Bach.Stream output when used in conjunction with bach_44K_16B_S.script. To produce the output, execute the following: Weaver -o bach_S.Stream < bach_44K_16B_S.script
Ґ Ganymede.cv.MooV This is a QuickTime Movie used in GanymedeWeaveScript to produce CPakTestStream output. To produce the streamed output, execute the following: Weaver -o CPakTestStream < GanymedeWeaveScript
Ґ Ganymede22.aiff This raw audio file is used to produce the compressed, chunkified audio stream file Ganymede22.saudio, used in GanymedeWeaveScript to produce CPakTestStream output. To produce the audio stream, execute the following: BuildStreamAudio Ganymede22.aiff
Ґ NewSAnm This is a streamed animation file of cels from the SANM.CELs folder. This streamed output is produced by SanmMaker.
Scripts for creating streamed animation output are located in 'PlaySAnim:Apps & Data' folder. Read the Readme.txt file included in this folder for detailed explanation on the usage.
Scripts for creating SlideStream output are located 'SlideStream:MPW Scripts For Building Data' folder. MPW Scripts included in 'MPW Scripts For Building Data' folder are:
Ґ BuildSlideStream This is a script to build the output stream to be used with the SlideStream example program.
Ґ BuildSlideStreamAudio This is a script to build the audio stream file to be used with the SlideStream example program.
Ґ Example_Script This script combines sound with a slideshow by building an audio stream from the raw AIFF file, and by converting all image files to streamed format for use with the SlideStream example program. 'Tools and Data' and 'Tools and Data:Images' folder provides Audio and image files needed to create SlideStream.
aliast, нет, я не стал разбираться, а потом как-то забылось. Разница в количестве, наверно, получается потому,что при первой распаковке некоторые вложененные big архивы из тех, что в списке уже распаковываются. В любом случае формат распакованных big файлов мне неизвестен.
Я посмотрел архив, это вроде тот же кусок SDK откуда я брал исходники утилит. Может на что-то конкретно стоит обратить внимание? Пробую осилить конвертацию из QuickTime в стрим. Пока в CelViewer'e один полный кадр удалось отобразить. Формат оказался документированным, правда на сайте Apple хрен чего найдёшь и похоже они выпилили разделы с доками (или я плохо ищу). Ну, и некоторых ключевых моментов в сторонних описаниях я не нашёл. Просто конвертить из MOV наверно лучше, т.к. сжимать в Cinepack всё равно QuickTime'ом придётся.
Versus, да это исходники плееров. Я даже попытался подменить плеер в образе, что ты мне дал, но не вышло. Хотел проверить на что они способны. Там так же есть хитро сделанные файлы - плеер с вложенным видео. Что-то на подобие sfx архивов, где архиватор зашит в архив.
Добавлено спустя 1 час 51 минуту 56 секунд: В общем для баловства на досуге выкладываю версию с возможностью конвертации MOV в Stream. Ещё есть над чем потрудиться. Теперь всё видео в CelViewer'e показывает. Следующий этап звук. Может с ним всё заработает.
Убрал кривой билд
Последний раз редактировалось Author 11 апр 2016, 14:13, всего редактировалось 1 раз.
Чертовщина какая-то. Билд в выложенном архиве неправильно работает с MOV. Выяснил т.к. стал тестить работу со звуком и натолкнулся, что видео опять не показывается. Думал сравнить разницу в генерируемых файлах, а тут и в архиве кривая версия, и домой кривую взял. Что за...?/???
Versus,фьююфф. Хорошо один видеофайл рабочий остался, по нему разобрался, где падляна случилась. Блин, одна цифра может всё запороть, ну что за формат такой неустойчивый к косякам. Поправил. Видимо экспериментировал и не заметил, когда испортил рабочую копию. Она получилась рабочей наполовину. Т.е. часть файлов работала бы, а часть нет. Теперь сделал лучше чем было. Параметр Audio Type пока не работает. На выходной файл влияет include Audio track.
Author Кстати, созрел вопрос. Почему в твоей проге текстуры из комплекта Doom (sky1.cel и другие) отображаются в виде черного прямоугольника, а в проге 3doresexplorer006 отображаются корректно? Черный прямоугольник отображается верных габаритов. Это, конечно, не показатель, потому что текстуры Doom создавались самописным софтом... Но я пытаюсь понять разницу между обычной cel-кой и Doom-овской.
Добавлено спустя 17 минут 35 секунд: И это важно, потому что сделанная обычным образом cel-ка не работает в игре. Может, удастся уяснить различия в формате "оригинальных" cel-ок и исходных Doom-овских.
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Почему в твоей проге текстуры из комплекта Doom (sky1.cel и другие) отображаются в виде черного прямоугольника
Всё просто. Я переносил код из CelViewer'a в свою утилиту. Там есть сложно переводимые комбинации с Си на Дельфи, поэтому часть кода осталась недоработанной. Cel'ы декодируются минимум 2-3мя способами в зависимости от флагов. Поэтому, если попадается картинка для которой код недописан или работает неправильно, то будет либо вылет ошибки (фатальная ошибка в коде), либо чёрный экран (декодирование прошло, но неправильно, ошибка обработки данных при работе с указателями памяти, буфер картинки обнулён, но не заполнен, нули это чёрный цвет). Если так нужно, могу в отладчике посмотреть, в каком моменте затык по файлу из Doom.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения