Титровальные скрипты

Здесь обсуждаются любые продукты компании СофтЛаб-НСК для телевизионного вещания (Форвард Т, Форвард ТС, Форвард Голкипер, Форвард Рефери, Форвард Офис, Форвард Инжест)

Модераторы: Людмила, PR, vd, Даниленко Сергей

Ответить
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

Сообщение AlMaz »

Добрый день. Возник вопрос: в теле примеров есть текст вида

Debug.WriteLine("text" );

Хотелось бы поподробнее узнать об отладке. Как ее настроить, куда выводятся эти отладочные сообщения =)
shish07
Сообщения: 13
Зарегистрирован: 28 мар 2011 17:04

Сообщение shish07 »

AlMaz писал(а):Добрый день. Возник вопрос: в теле примеров есть текст вида

Debug.WriteLine("text" );

Хотелось бы поподробнее узнать об отладке. Как ее настроить, куда выводятся эти отладочные сообщения =)
Добрый день.
Собственно, отладочные сообщения выводятся в стандартный отладочный вывод Win32 (см. OutputDebugString в MSDN).
Увидеть эти сообщения можно различными способами. Например запустившись под отладчиком (VisualStudio, WinDbg...), или использовать программы, перехватчики дебагерных сообщений.
Самая доступная и правильная (ИМХО) DebugView (DbgView.exe) от Sysinternals.com.

Эти сообщения выводятся, если скрипт запущен в FDTitleDesigner и в настройках включена отладка скриптов, как отмечено на картинке (слева).

Изображение

А если раскомментировать строчку отмеченную справа, то в этом месте вставится DbgBreak и дойдя до этого места система запросит отладку (будьте ОЧЕНЬ :evil: осторожны с этим). Можно будет ставить точки останова, просматривать переменные, ходить по шагам и т.д...)

Отладку, также, можно включить в программе 'FDTitleRunTimeTest.exe'.

В FDOnAir отладка выключена. Включить её, конечно, можно, но крайне не рекомендуется.

Вообще, тема отладки, очень обширна.

Успехов.
Дмитрий Шишкин.
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Пример титровального скрипта для показа информации в стиле a-la "Россия 24":
Изображение

На рисунке, к сожалению, не видна динамика. Здесь видео:
ftp://ftp.sl.iae.nsk.su/Public/ForwardT ... nfoBar.zip

Здесь "труба":
http://youtu.be/XVJuyvu6z7s

Скрипт разрабатывается для одной из телекомпаний.
Будет доступен также и остальным пользователям в коммерческой библиотеке TitleScripts1
genius3000
Сообщения: 26
Зарегистрирован: 17 янв 2011 21:45

Сообщение genius3000 »

Даниленко Сергей писал(а):Есть скрипт под названием Announce.SLTitleTmpl
Он как раз предназначен для этих целей.
Сам скрипт можно найти здесь:
ftp://ftp.sl.iae.nsk.su/Public/ForwardT ... nounce.zip

Рабочий документ с описанием работы со скриптами здесь:
ftp://ftp.sl.iae.nsk.su/Public/ForwardT ... _05_03.zip

Отступ может быть как от начала передачи ("сейчас в эфире"), так и от ее конца ("далее следует").
Подскажите, возможно ли делать анонс на фоне анимированной плашки (avi с прозрачностью), т.е. чтобы в комментарии вводить только текст, а подложка была бы всегда одна, возможно указывалась бы в самом скрипте.
Людмила
Сообщения: 1403
Зарегистрирован: 10 сен 2004 12:09

Сообщение Людмила »

Сейчас такой возможности нет: показывать можно или только текст, или только картинку, или только анимированную плашку.
В будущем такую возможность постараются добавить, а пока можно порекомендовать в титровальном проекте создавать два титровальных объекта со скриптом: один для показа плашки, другой - текста.
genius3000
Сообщения: 26
Зарегистрирован: 17 янв 2011 21:45

Сообщение genius3000 »

Именно так и сделал)
reno477
Сообщения: 7
Зарегистрирован: 06 июл 2011 17:07

Сообщение reno477 »

1)Так все таки что нужно чтобы получить "сертификат"?
Нужно написать письмо на адрес техподдержки.
forward@softlab.tv
forward@sl.iae.nsk.su
forward@softlab-nsk.com
Извиняюсь, предложение ещё в силе?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Все в силе.
Пишите письмо на адрес техподдержки.
reno477
Сообщения: 7
Зарегистрирован: 06 июл 2011 17:07

Сообщение reno477 »

Спасибо, сертификат получил. По инструкциям, которые были в письме попробовал. Код действитеьно недоступен для редактирования. Копипаста побеждена :D
В процессе пока возился с шифрованием дошло, что скрытый код это только часть проблемы защиты. Код то спрятан, но как запретить копирование всего скрипта целиком? Т.е. делаем что-то для кого-то. А этот кто-то пересылает это что-то своему корефану. Или просто тупо в инет выкладывает?
Есть идеи?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Идеи есть. Каждая наша плата имеет номер. Можно делать защиту на конкретный номер платы. В этом случае ваш скрипт будет работать только на той плате, для которой он предназначен. Для отладки проекта в режиме без платы, например, в FDTitleDesigner, можно понимать из скрипта, что сейчас идет работа не в эфире а в дизайн-моде.
В общем это общие направления в которых можно двигаться.
Детали этого мероприятия на форуме обсуждать не хотелось бы. Если нужны подробности, то пишите письмо.
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

функции Stop и Start

Сообщение AlMaz »

Добрый день. Делаю скрипт.
Возникла такая проблема: почему то по отладочным сообщениям видно что при нажатии кнопки Старт в OnAir - запускается процедура Start().
Затем управление преходит в функцию Stop().

А затем скрипт спокойно продолжает работать.

Это глюк в моем скрипте или так и задумано в OnAir ?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Это нормальное поведение OnAir. После старта титровального объекта ему сразу же сообщается когда он будет остановлен. В некоторых ситуациях (при исполнении расписания) - это конкретное время. В некоторых ситуациях (зацикленный титровальный объект, который был запущен вручную) конкретное время остановки сказать невозможно. Поэтому время остановки в таких ситуациях является некоторой абстракцией. Типа "остановимся где-то там в бесконечности".
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

Сообщение AlMaz »

Спасибо за разъяснение. Я уже и сам начал что то подобное подозревать. Но еще не докопался.

Надо теперь подумать как этот первый Стоп обрабатывать. У меня собственные элементы там стопятся. Наверное смотреть по значению паметра atStart.

Подскажите еще , может знаете простой способ как посмотреть - какое в минутах/секундах время передается в этот atStart. В формате double мне это увидеть не под силу.
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

Сообщение Даниленко Сергей »

Надо теперь подумать как этот первый Стоп обрабатывать. У меня собственные элементы там стопятся. Наверное смотреть по значению паметра atStart.
Категорически не рекомендуем об этом думать. Обрабатывайте каждый "Стоп". Это правильный вариант. Даже если в первом "Стоп" время остановки будет "в бесконечности" всё равно нужно обрабатывать. В дальнейшем прилетит "Стоп" с нормальным временем и вы поменяете параметры остановки своих элементов.
Например, у вас два титровальных элемента в скрипте. Прилетел "Стоп" с параметром atStart t1. Вы каждому элементу говорите "Стоп" ко времени t1.
Потом прилетел "Стоп" с параметром atStart t2. Вы снова каждому элементу говорите "Стоп", но уже с другим временем - t2.
Подскажите еще , может знаете простой способ как посмотреть - какое в минутах/секундах время передается в этот atStart. В формате double мне это увидеть не под силу.
Если это нужно для отладки, то можно написать функцию, которая берёт на выходе double, а на выход отдаёт строку вида "чч:мм:сс:кк".
Время в параметре atStart передаётся в секундах.
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

Сообщение AlMaz »

Добрый день. Снова я - со своими детскими вопросами =)


Мой скрипт выдает рекламные банеры в эфир. По 4 штуки за раз.
Он берет сценарий банеров из текстового файла. Это просто список строк содержащих путь к файлам.

Я загружаю первый раз сценарий в массив- при инициализации скрипта (при запуске ОнЭйра или при перезагрузке скрипта).

Если прописан путь к файлу сценария в переменной - то все отлично грузится.
Я хотел этот путь хранить в Параметре скрипта. Оказалось что эти параметры инициализируются (получают свои значения) уже после окончания функции Init(). И в ней путь к файлу сценария еще пустой =(

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

Получается в Init() - сценарий так не загрузить. Может попробовать грузить его в SetPropertyValue() ?
Ответить