Правила, действующие в этом форуме и всех его подфорумах:
1) Запрещена реклама в любых её проявлениях (сразу бан без предупреждения)! 2) Мат тоже не приветствуется на форуме, но иногда можно выразить свои чувства ( лучше заменяйте матные слова точками, пробелами, другими буквами)! 3) Категорически запрещается унижать, посылать, издеваться над участниками форума! Мы здесь все - одна большая и дружная семья! Поэтому за нарушение этого правила автоматически будем банить! 4) Разрешены ссылки на информацию, которые относятся к тому или иному разделу форума! 5) Ссылки не в тему будут удаляться и пользователь получит предупреждение или будет забанен! 6) Пользователям разрешено задавать любые вопросы относящиеся к теме, а мы все дружно ответим на эти вопросы. А также отвечать на вопросы и высказывать своё мнение. 7) Повторные темы, которые будут создаваться, будут удалены! Создавайте темы, удостоверившись, что такой темы нет на форуме! 8) Запрещён флуд во всех его проявлениях, сообщения не по теме, сообщения состоящие из одного или нескольких смайликов без текста, сообщения типа - Вах!, Рулез!, Круто! и т.п. Пользуйтесь пожалуйста кнопкой [EDIT], не плодите бессодержательные сообщения. 9) Использование смайликов разрешается не более 3-х подряд!
MovieCompress и жмет этим кодеком видеофайлы. Вопрос в том, можно ли их уже использовать так. Насколько я видел, в играх видеофайлы либо без расширения, либо с расширением *.stream.
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Versus, для воспроизведения в плеере надо прогнать видофайл через MovieToStream и затем через Weaver. Видеофайл надо разбить на блоки через MovieToStream, если есть аудио - поток, то Weaver миксует блоки видео и аудио в единый потоковый файл stream. И уже результирующий файл проиграть в плеере.
Разрешение для видео вполне достаточное. Можно разрешение оставить и 320х240, но поток все же выставить 150-180 кб/сек. В этом случае качество изображения будет хуже из-за более высокого уровня сжатия.
Анализ потока производится утилитой DumpStream. Выдается полная статистика, даже по каждому блоку можно инфу получить.
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Зато с файлами большего разрешения (608*392), пожатыми кем-то Cinepak-ом в винде, MovieToStream работает "на ура"... Но нам-то нужно совершенно другое разрешение. Почитав в SDK раздел DataStreamer, задался вопросом. Зачем было уже отснятое видео со звуком разбирать на видео, на звук, обрабатывать их отдельно, а затем снова собирать в один файл *.stream?! Нельзя было придумать один кодек, которым бы перепаковывалось исходное видео? Не понимаю...
UPD/ Так как я по своей же инструкции не смог найти файл MPW-GM.img, привожу ссылку, откуда можно его скачать, да и не только его. http://download.system7today.com/
Последний раз редактировалось Versus 22 сен 2011, 09:45, всего редактировалось 2 раз(а).
Причина:Обновлено
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Ура! Не без помощи рекомендаций nikk мне удалось видеоролик перегнать в stream. Теперь нужно его проверить. Исходя из этого получается, что нужно написать маленькую прогу, которая бы запускала ролик при загрузке. Учитывая то, что я в C# дуб дубом, это будет сложно. Попробую разобраться, есть ли в примерах SDK похожее...
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Versus писал(а):
Исходя из этого получается, что нужно написать маленькую прогу, которая бы запускала ролик при загрузке.
Василий, попробуй поступить по другому. Распотроши DOOM прогой Altmer. В корне лежит готовый плеер - Playmovie. Это программа которая в фоне проигрывает видео. Синтаксис: "playmovie <твой видео-файл>". Так же в корне твоего диска лежит файлик AppStartup. Как я уже говорил, это скрипт подготавливающий среду исполнения. Добавь в этот файл строку "playmovie <твой видео-файл>". При загрузке консоли будет запущен плеер с твоим видео. Только в своей проге (которая LaunchMe) после инициализации надо вставить пустой цикл без отображения. Иначе видео на мгновение появится и будет затерто. Плеер работает в фоне. Цикл может выглядеть так:
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Поздравляю!
Versus писал(а):
Это из-за того, что неправильно выбран размер блока?
Возможная причина. Каждый кадр видео выравнивается на размер блока. Например если ты выбрал размер блока 32768 байт, а кадр имеет размер 13000 байт, то в блок запишется 13000 байт видеоданных. Остальные 19768 байт будут забиты неиспользуемыми данными. Итого при 15 кадрах в сек. видео приводом будет прочитано за секунду 190 кБ видео и 289 кБ левых данных, что в сумме 479 кБ. Привод не сможет физически прочитать такой поток. Поэтому важно правильно рассчитать поток видео данных, размер блока, учесть аудио поток и т.д. Пробуй, экспериментируй. "Да пребудет с тобой Сила!" (с)
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Не знаю, имеет ли это значение, но я проверял на эмуляторе, а там, по идее, не должно быть ограничения на скорость считывания. UPD\ Переделал на основе примера. jsshowcel. Тормоза пропали. Теперь такой вопрос. Мы запустили ролик по сути перед выполнением LaunchMe. А как запустить, например, по завершении этого ролика следующий? Запись в AppStartup уже не прокатывает. Я так понимаю, что мы должны где-то следить за окончанием потока? UPD2\ Попытался просто добавить фоновую музыку:
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Versus писал(а):
Появились тормоза. Откуда они?
Проигрывание видео это очень ресурсоемкая задача для АРМ. Поэтому и разрешение видео лучше уменьшать для более ровного отображения и другие задачи должны минимально задействовать ресурсы АРМ. И конечно видеоплеер запускается отдельным потоком из твоей программы например:
В программе происходит отслеживание завершения потока или ключевые события (останов, перемотка, следующий эпизод и т.д.). Для более детального изучения см. раздел Multitasking и Intertask Communication в SDK.
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Благодарю! Как всегда, выручаешь. Вот, зацените, что получилось. В образе: подмененный BannerScreen, начальная заставка, фон, курсор на нем и фоновая музыка.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Есть небольшие, кратковременные заикания, На видео всё слышно. От привода приставки не зависит, пробовал на двух. В целом, неплохо. Я в официальных программных продуктах видел распределение потока куда хуже. В частности, в каких-то игрушках на Philips CD-I (привод 1X, max = 150кБ/c). Для неё распределить поток, наверное, ещё труднее.
_______________________________________ Урча, пухлыми лапами кот вцепился в жидкую шевелюру конферансье и, дико взвыв, в два поворота сорвал голову с полной шеи. Две с половиной тысячи человек в театре вскрикнули как один.
Уже знаю, как лучше сделать. Нужно не ждать определенное время, а ждать окончание потока Task2. Тогда выполнение кода будет продолжаться сразу, даже если прервать воспроизведение джойстиком. Как сделать пока не разобрался.
_______________________________________ There are 10 types of people in the world: those who understand binary, and those who don't.
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Кусок кода выдранного моим сниффером с живой FZ-1 американки по линиям между контроллером CD и контроллером XBUS. Обмен который происходит сразу после включения консоли. Информация по командам и ответах от контроллера в сырцах FreeDO (iso.cpp).
C данной точки консоль нормально загружается и опрашивает контроллер по состоянию (команда 0x83). Использованный в сниффере MCU - STM32F4 на 168МГц. После переконфигурирования сниффера на повторение ответов, консоль грузится без контроллера CD.
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Группа: Разработчики Сообщения: 405 Регистрация: 01 мар 2010, 09:07 Откуда: Омск
Модель 3DO:Panasonic FZ-10 NTSC-J
Versus писал(а):
Ничего не понимаю... (с)
Ковыряю аппаратуру консоли. Удалил контроллер CD и пытаюсь эмулировать его работу на MCU. Хочу запускать образы и проги сразу на железе, без прожига CD. По USB передавать секторы образа в MCU и затем из MCU в железо консоли. Ну или с флешки/SD.
_______________________________________ "Он сказал: «Поехали!» / Он взмахнул рукой, / Словно вдоль по Питерской, Питерской, / Пронесся над Землей."
Сейчас этот форум просматривают: Yandex [Bot] и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения