Blu-Disc Studio: Создаём меню на Java. часть I - Страница 186

!!! Внимание, это архивный форум. Здесь написание новых сообщений отключено! Для того, чтобы присоединиться к обсуждению интересующих Вас тем, переходите в действующую версию форума, по адресу wedframe.ru

Blu-Disc Studio: Создаём меню на Java. часть I

Показано с 1,851 по 1,860 из 2000

  1. #1

    Blu-Disc Studio: Создаём меню на Java. часть I



    Официальный сайт программы

    Официальный сайт DVDLogic

    Blu-Disc Studio - это профессиональная программа для создания дисков Blu-Ray, предназначенная для простого создания дисков Blu-ray с интерактивным Java-меню.

    Используя Blu-Disc Studio, вы можете создавать полноценные диски Blu-ray для личного использования, для вывода CMF (мастеринга) или экспорта данных в Scenarist® BD.

    Усовершенствованный и мощный пользовательский интерфейс, не требующий специальных знаний спецификации BD, и встроенный DVDLogic BD Muxer делают Blu-Disc Studio доступным для домашних пользователей и любителей.

    Профессиональные пользователи и студии будут приятно удивлены поддержкой экспорта проекта в Scenarist® BD и возможностью вывода CMF встроенным мультиплексором.

    UHD-версия Blu-Disc Studio является частью KITe UHD Authoring Suite.


    Скриншоты

    Основное окно программы



    Создание глав



    Мтрица и свитч



    Структура проекта и расширенная анимация



    Подпись JAR



    Симуляция меню


    [свернуть]

    Демонстрация возможностей


    Друзья! Представляю вашему вниманию ролики меню, созданные в Blu-Disc Studio нашим коллегой - bbcby!
    Он любезно предоставил их нам, что бы мы сами могли убедиться, на что способна программа уже сейчас, не говоря о том, что она сможет создавать в будущем!
    Дружище, спасибо огромное за предоставленный материал!

    P.S. Ролики смотрим на полном экране с максимальным разрешением (1080р HD)







    Ну что ж, будущее уже наступило, в программе появилась масса новых возможностей и на настоящий момент она уже является полноценной профессиональной программой способной обеспечить создание Blu-ray структур голливудского уровня. Ниже продемонстрированы некоторые возможности новых версий.

    Закладки и немного анимации.


    Диснеевский таймлайн и локализованный видеоряд

    Пояснения:
    В левом нижнем углу появляется окно с таймером и картинкой текущей главы. При нажатии клавиш "Следующая глава"и "Предыдущая глава" оно появляется на 15 секунд. При нажатии клавиш "Пауза", "Перемотка вперёд" и "Перемотка назад" оно висит всё время, пока не будет нажата клавиша "Воспроизведение".
    Переключение видеоряда происходит при смене языков озвучки — при выборе руского языка автоматически включается руский видеоряд, при выборе англиского языка автоматически включается английский видеоряд.
    В ролике видно, что русское название фильма меняется на английское.
    [свернуть]

    Описание возможностей


    Возможности
    * Создание как главного меню, так и попап
    * Добавление функции закладок
    * Создание таймлайн
    * Программирование кнопок пульта ДУ
    * Анимация графических объектов меню
    * Генерация текста и векторных прямоугольников
    * Настраиваемые переходы между клипами (муви)
    * Подсветка активного чаптера, звуковой дорожки или субтитров
    * Автоматическое создание сцен
    * Симлесс
    * Компиляция диска встроенным муксером DVDLogic
    * Экспорт проекта в Scenarist®

    Поддерживаемые форматы звука, видео, графики
    * Графика: PNG 32 bit (24 + 8), а также импорт Adobe® Photoshop® PSD
    * Видео: AVC (h264), VC-1, M2V (MPEG-2) с разрешением 1920x1080, 1440x1080, 1280x720 и фреймрейтом 23,976p, 24p, 25i, 29,97i
    * Звук: AC3 (Dolby Digital), E-AC3 (Dolby Digital +), True-HD, DTS, DTS-HD и стерео WAV
    * Субтитры: SRT, BDN.xml + PNG, PES + MUI

    Для создание диска в Blu-Disc Studio нужно
    * Подготовить видео и звук соответствующих форматов
    * Подготовить графику
    * Расставить аудио и видео дорожки
    * Разместить графику (кнопки и картинки) в дизайнере
    * Расставить переходы между кнопками, меню и муви
    * Откомпилировать проект встроенным муксером или экспортировать его в Scenarist® BD
    [свернуть]

    Видеоинструкции от bbcby


    Данные уроки сделаны по нашей просьбе bbcby, за что ему большое спасибо!

    Создание простого меню:


    Анимация меню сцен:


    Карусельная анимация меню сцен:

    [свернуть]


    Мануал Blu-Disc Studio (актуально до билда 4.0.0.1508) от kinor

    Шпаргалка функций плавности анимации Slide

    Для получение ключа на 30-дней нужно:
    - Поставить актуальную дату и время - Trial может не заработать при неправильной дате (спасет только перестановка).
    - Скачать и установить соответствующую версию программы: Blu-Disc Studio (без встроенного муксера) или Blu-Disc Studio MX (со встроенным муксером)
    - Запустить Blu-Disc Studio (MX) - она покажет Hardware ID
    - Отправить Hardware ID на адрес bludiscstudio@dvd-logic.com
    - В ответ придет key-файл (для MX-версии 2 файла)
    - Положить key-файл(ы) в папку с установленной программой

    ВНИМАНИЕ: триальная версия не работает на виртуальной машине.





    If you do not speak Russian: please write in two languages ​​- your native language or English and Russian using Google Translate.
    Последний раз редактировалось Palych; 06.11.2021 в 23:04.
  2. #1851
    Подскажите, кто знает. У меня в меню глав (он же попап) установлен switch на action every second, для того чтобы при достижении нужного плеймарка выделялась нужная кнопка/select button:
    SWITCH custom - if [Chapter (Movie) = № плеймарка -> button.....
    Можно ли упростить команду с тем же эффектом?
  3. #1852
    Хочу в концертнике сделать фишку, чтобы можно было добавить треки в "избранное" а потом проиграть их. В принципе такое возможно? Если возможно, то подскажите в каком направлении идти.
  4. #1853
    По хорошему - в направлении программирования. Но в переменных (UDV) сейчас все-равно нет массивов/списков.

    Более простой вариант: если исходить из того что общее число треков известно, наример их 30, то можно использовать GPR. Например резервируем GPR с 1 по 30 под фдаги "трек выбран": 1 - выбран, 0 - пропустить.
    GPR[100] например режим проигрывания: 0 - обычный, 1 - проигрываем избранное.
    При добавлении в избранное ставим 1 в нужном GPR. При проигрывании: при проходе каждой главы, если GPR[100] = 1 и GPR[номер главы] = 1 - проигрываем. Если GPR[номер главы] = 0, то ищем в GPR следующий с 1 и переходим на чаптер.
    Еще придется делать интерфейс удаления из избранного - страницу с полным списком треков и показом галочки исходя из номера GPR.
  5. #1854
    Спасибо за подробный ответ, и по идее на этом можно мне основываться чтобы воплотить задуманное в жизнь, но я с GPR никогда не сталкивался и в мануале об этом очень неопределенно сказано. Поэтому вопрос: что значит если GPR[100], для каждого видео, или отрезка видео, он разный?
  6. #1855
    Нет. GPR это просто массив целочисленных значений (чисел). Что туда записали - то там и будет. Я имею ввиду что при запуске на проигрывание муви нужен какой-то флаг, чтобы определять мы играем целиком или только избранное. Вот в примере флаг записывается и читается из GPR[100].
  7. #1856
    А как добавлять то? Я пробую сделать switch -> Selected/button - MA:GPR[100]=GPR[1]/и move to для галочки. И так далее для каждой кнопки.
    Я в правильном направлении? А то я ооооооочень не уверен.
    Switch делаю на синей кнопке пульта меню треклиста.
  8. #1857
    Добавлять в избранное?
    Это смотря где. Если добавлять при просмотре муви текущий трек, то проще всего скриптом
    Код:
    manager.setGPR(manager.getCurrentChapter(), 1);
    А вот в если в меню ставить/снимать галочку при добавлении/удалении, то это сложнее. Я бы наверное делал так:
    1) Делаем 30 галочек (если всего 30 треков).
    2) При нажатии синей кнопки (добавить) свич, в котором на каждое условие мультиэкшен: установить GPR, переместить соответствующую галку (Flag ...) из-за пределов экрана в нужную позицию:
    if Selected Menu Favorites [track 1] -> MA: [set]: GPR[1] = 1, [prop]: [Flag 1] move to (200, 100)
    if Selected Menu Favorites [track 2] -> MA: [set]: GPR[2] = 1, [prop]: [Flag 2] move to (200, 120)
    ...
    if Selected Menu Favorites [track 30] -> MA [set]: GPR[30] = 1, [prop]: [Flag 30] move to (200, 700)
    3) Для удаления аналогично, только 0 вместо 1 в GPR помещаем и перемещаем соответствующую галку (Flag ...) за пределы экрана

    Но проще пункты 2 и 3 сделать кодом. Сделать первое условие, конвертировать в скрипт и продублировать меняя цифры. Для добавления должно получится что-то типа такого:
    Код:
    if (manager.isButtonSelected("F:MM_Favorites.assembly", "F:MM_Favorites.Track_1.Selected")) {
      manager.setGPR(1, 1);
      manager.moveToXY("F:MM_Favorites.Flag_1", 200, 100);
    }
    if (manager.isButtonSelected("F:MM_Favorites.assembly", "F:MM_Favorites.Track_2.Selected")) {
      manager.setGPR(2, 1);
      manager.moveToXY("F:MM_Favorites.Flag_2", 200, 100);
    }
    ...
    Ну и перед входом в меню нужно переместить все галки в нужные места. Опять же проще кодом:
    Код:
    if (manager.getGPR(1) == 1) {
      manager.moveToXY("F:MM_Favorites.Flag_1", 200, 100);
    } else {
      manager.moveToXY("F:MM_Favorites.Flag_1", -200, 100);
    }
    if (manager.getGPR(2) == 1) {
      manager.moveToXY("F:MM_Favorites.Flag_2", 200, 100);
    } else {
      manager.moveToXY("F:MM_Favorites.Flag_2", -200, 100);
    }
    ...
  9. #1858
    @CDK, Огромное Спасибо за помощь.
  10. #1859
    @CDK, Ну и перед входом в меню нужно переместить все галки в нужные места. Опять же проще кодом:

    Код:
    if (manager.getGPR(1) == 1) {
    manager.moveToXY("F:MM_Favorites.Flag_1", 200, 100);
    } else {
    manager.moveToXY("F:MM_Favorites.Flag_1", -200, 100);
    }
    if (manager.getGPR(2) == 1) {
    manager.moveToXY("F:MM_Favorites.Flag_2", 200, 100);
    } else {
    manager.moveToXY("F:MM_Favorites.Flag_2", -200, 100);
    }
    ...

    Я правильно понимаю, в switch, преобразованный в скрипт, это будет тоже самое?:

    Скрытый текст

    int streamId = 0;
    int chapterId = manager.getCurrentChapter();
    int curPlayListID = manager.getPlaylistID();
    boolean canExec = true;
    if (canExec && (manager.getGPR(1)==1)) {
    canExec = false;
    manager.moveToXY("F:MM_Favorites.01", 1499, 115);
    }
    if (canExec && (manager.getGPR(1)==0)) {
    canExec = false;
    manager.moveToXY("F:MM_Favorites.01", -26, 115);
    }
    if (canExec && (manager.getGPR(2)==1)) {
    canExec = false;
    manager.moveToXY("F:MM_Favorites.02", 1854, 160);
    }
    if (canExec && (manager.getGPR(2)==0)) {
    canExec = false;
    manager.moveToXY("F:MM_Favorites.02", -26, 160);
    }
    manager.UpdateCurrent_MM_Favorites.();
    [свернуть]
    Последний раз редактировалось maks8881; 04.09.2020 в 16:06.
  11. #1860
    Да. Просто строки
    Код:
    int streamId = 0;
    int chapterId = manager.getCurrentChapter();
    int curPlayListID = manager.getPlaylistID();
    не нужны (можно удалить)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 29 (пользователей: 0 , гостей: 29)

Похожие темы

  1. Создаём глянцевый текст
    от WishMaster в разделе Графика и web дизайн
    Ответов: 0
    Последнее сообщение: 19.06.2013, 17:17
-->