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

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

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

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

Сообщение AlMaz »

Да, ваша версия документации посвежее.
Но в "ScriptBase - члены" (так же как и в моей) кроме списка методов и одного свойства "Debug" больше ничего нет =(
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

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

Сообщение AlMaz »

Добрый день. Вот такой очередной вопрос:

При нажатии кнопки Пауза в ОнЭйр - титровальным объектам передается какая-то команда?
Как, я пока вижу - ничего не передается?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

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

Сообщение AlMaz »

Добрый день. Еще порция вопросов:
1) При остановке главного объекта MAIN, я в OnElementStop останавливаю все остальные титр.элементы скрипта
достаточно просто вызывать для каждого элемента например

if (name==MAIN.Name) {
xxx.Stop(0,0);
.....
xxx.Stop(0,0);
}
Не проверяя их статус - запущен или нет. или лучше делать условие
вида
if (xxx.Status==SLTMRunTimeStatus.eRunning) {xxx.Stop(0,0);}

2) Что лучше вызывать Stop(0.0) или Abort(0) для остановки элелементов.

3) Если вызывается функция Stop. то в ней я делаю стоп для Main и в событии (OnElementStop) останавливаю остальные элементы.

4) Если вызывается функция Abort . то этого события (OnElementStop) не генерируется. Получается надо в function Abort стопить все титр. элементы скрипта в этом случае?
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

Давайте объясню сначала разницу между Stop и Abort, поскольку все вопросы именно с этим связаны.

На пример бегущей строки.
Если титровальному элементу "бегущая строка" послать команду Stop (0, 0), то он будет доигрывать текущее (которое сейчас бежит по экрану) объявление.
Если вы вызовите Abort, то показ прекратится немедленно и текущее объявление (которое сейчас бежит по экранц) не будет доиграно.

Это принципиальное отличие. Если судить по фрагменту вашего кода, то вам лучше всё таки вызывать именно Abort.

По вопросам:

1)Статус лучше проверять и останавливать только запущенные
2)Отвечено
3)Да
4)Да, именно. Только нужно не "Stop" вызывать, а именно "Abort" для кадого запущенного элемента
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

Сообщение AlMaz »

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

В титр проект вставил элемент DShow для проигрывания файла WAV.
При остановке проекта останавливаю его по SOUND.Abort(0);

В ОнЭйре получается что после любой команды что СТОП что ABORT видео файлы в таких элементах стартуют заново, а звук продолжает проигрываться с места обрыва.

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

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

Вряд ли так задумано. Скорее всего это ошибка.
Разработчикам информация передана.
А пока можно решить проблему путём загрузки задания перед воспроизведением wav-файлов.
Последний раз редактировалось Даниленко Сергей 20 май 2013 11:29, всего редактировалось 1 раз.
AlMaz
Сообщения: 76
Зарегистрирован: 02 июн 2010 12:48
Откуда: Красноярск, Прима-ТВ
Контактная информация:

Сообщение AlMaz »

Хорошо, так и буду делать. Ошибка у меня в звуковом файле WAV , не в WMV.
Даниленко Сергей
Сообщения: 7091
Зарегистрирован: 26 фев 2004 09:53
Откуда: Techsupport SoftLab-NSK

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

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

Сообщение AlMaz »

Еще вопрос по работе с файлами:

Скрипт Титр.проекта в ОнЭйр загружает файл TGA в титр.объект - после этого файловая система блокирует доступ к файлу. Нельзя ни удалить его ни перезаписать.

По алгоритму в работе находятся 2 граф. файла. Первый на экране, второй подгружен для быстрой подмены. Но фактически доступ блокируется не меньше чем к 5 файлам, которые подгружались.

Можно ли как то программно разблокировать файлы? Или есть какие то еще варианты, для оперативной замены граф. файлов в директории.

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

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

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

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

В титр проект вставил элемент DShow для проигрывания файла WAV.
При остановке проекта останавливаю его по SOUND.Abort(0);
В ОнЭйре получается что после любой команды что СТОП что ABORT видео файлы в таких элементах стартуют заново, а звук продолжает проигрываться с места обрыва.
Мы проверили у себя. Поведение видеофайлов точно такое же. После abort и последующего старта воспроизведение идёт с прерванного места.
Поэтому ничего для wav-файлов менять не будем.

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

Сообщение AlMaz »

Действительно и Dshow и AnimLogo стартуют не с начала. Добавил перезагрузку задания элемента перед рестартом титр.объекта.

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

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

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