Импорт из текстового файла¶
- Table of contents
- Импорт из текстового файла
Данная функция используется для импорта расписания из текстового файла, который создан некоторой программой генерации расписаний, например, системой ротации музыки PowerGold или программой «1С: Реклама + Трафик». Модуль Импорт Расписания имеет очень гибкую настройку, позволяющую выбрать типы импортируемых полей, блоков и многое другое. Модуль может быть настроен на импорт практически любого файла известного формата, где находится что-либо, напоминающее расписание. Главное условие состоит в том, что в этом файле должны использоваться 1 строчка текста на 1 элемент расписания и его структура должна повторяться от строчки к строчке.
В особых случаях для использования импорта расписания необходимо написание специального препроцессора, выполняющего дополнительную обработку исходного файла для согласования форматов. Эта процедура должна обсуждаться на начальном этапе работы и может потребовать дополнительной оплаты со стороны заказчика.
Для работы модуля Импорт Расписания на определенном рабочем месте необходим модуль Расписание (DSM-005-15).
Импорт по имени файла из файловой системы в уже созданное расписание¶
Пример текста из файла импорта (должен быть в формате .txt):
"07:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3" "07:21:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3" "07:21:00","Реклама Номер 3","D:\Реклама\Агентство\comm_3.mp3" "08:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3" "08:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3" "08:21:00","Реклама Номер 7","D:\Реклама\Наша реклама\comm_7.mp3" "08:36:00","Реклама Номер 4","D:\Реклама\Агентство\comm_4.mp3" "08:36:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3" "08:36:00","Реклама Номер 5","D:\Реклама\Наша реклама\comm_5.mp3" "08:36:00","Реклама Номер 8","D:\Реклама\Наша реклама\comm_8.mp3" "09:00:00","Новости в Начале Часа","D:\Реклама\Новости\news_09.mp3" "09:21:00","Реклама Номер 9","D:\Реклама\Наша реклама\comm_9.mp3" "09:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3" "09:21:00","Реклама Номер 3","D:\Реклама\Агентство\comm_3.mp3" "09:36:00","Реклама Номер 4","D:\Реклама\Агентство\comm_4.mp3" "09:36:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3" "09:36:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3" "10:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3" "10:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3" "10:21:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3"
Разберем структуру: "07:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"
"07:21:00" - это время блока, куда встанет элемент
"," - это разделитель
"Реклама Номер 1" - это название элемента
"D:\Реклама\Агентство\comm_1.mp3" - путь до физического файла
Импорт в готовое расписание можно разделить на следующие шаги:
1. Перед процессом импортирования нам требуется создать «Формат импорта», для этого:
- Выбираем пункт «Сервис» – далее «Форматы импорта», видим окно – нажимаем «добавить»
- Видим окно «Настройки импорта»
- Во вкладке «Разбор файла» вбиваем «Название формата»(любое название), и добавляем в окно «Поля:» кнопкой «Добавить» поля импорта.
В нашем примере нам требуются следующие поля:
- Время
- Название
- Имя файла
Разделитель оставляем по умолчанию т.к. в нашем примере он именно такой «,». (В случае использования другого разделителя, укажите требуемый)
Начиная с 2.17.2.180 допускается использовать escape-символы (такие как \t, \a, \b, \v, \f ) в качестве разделителя при импорте текстовых файлов. Например, \t - для использования табуляции в качестве разделителя.
Остальные настройки следует оставить по умолчанию.
Нажимаем «ОК» тем самым сохранив наш формат.
2. Приступаем к импорту, причем уже должны быть созданы блоки, соответствующие временным промежуткам в нашем файле.
В примере есть 7 временных промежутков, соответственно мы создаем 7 блоков тех типов, которые нам требуются:
- Рекламный блок на 07:21:00
- Рекламный блок на 08:21:00
- Рекламный блок на 08:36:00
- Новостной блок на 09:00:00
- Рекламный блок на 09:21:00
- Рекламный блок на 09:36:00
- Рекламный блок на 10:21:00
Это идеальная ситуация, время блоков может отличаться но логика импорта довольна прямолинейна и элементы будут вставлены в наиболее близкие относительно времени в файле блоки. (Если блок создан на 10:30:00 туда попадут элементы с временем 10:21:00 из нашего файла)
Обратите внимание, что элементы не будут попадать в блоки с нулевой длительностью, даже при совпадении времени блока.
- Далее выбираем меню расписания «…»
- Выбираем пункт «Импорт из текстового файла»
Выбираем из списка «Формат импорта», выбираем файл, который мы импортируем.
Далее мы можем сохранить пресет настроек, для этого просто вводим название в поле «пресет» и нажимаем кнопку «сохранить».
Нажимаем кнопку «ОК»
Импорт из файловой системы по имени файла в пустое расписание с использованием команд управления¶
Пример текста из файла импорта (должен быть в формате .txt):
"BTA","07:21:00","" "F","","comm_1.mp3" "F","","comm_2.mp3" "F","","comm_3.mp3" "E","","" "BTA","08:21:00","" "F","","comm_1.mp3" "F","","comm_6.mp3" "F","","comm_7.mp3" "E","","" "BTA","08:36:00","" "F","","comm_4.mp3" "F","","comm_2.mp3" "F","","comm_5.mp3" "F","","comm_8.mp3" "E","","" "BTA","09:00:00","" "F","","news.mp3" "E","","" "BTA","09:21:00","" "F","","comm_9.mp3" "F","","comm_6.mp3" "F","","comm_3.mp3" "E","","" "BTA","09:36:00","" "F","","comm_4.mp3" "F","","comm_1.mp3" "F","","comm_2.mp3" "E","","" "BTA","10:21:00","" "F","","comm_1.mp3" "F","","comm_6.mp3" "F","","comm_2.mp3" "E","",""
Разберем структуру:
"BTA","07:21:00","" - строка параметров добавляемого блока
"BTA" – ключи управления
"," – разделитель
"07:21:00" – время начала блока
"" – имя блока (в данном случае нет названия)
"F","","comm_1.mp3" - строка параметров добавляемого элемента
"F" – ключ, обозначающий аудио элемент
"" – время выхода, в данном случае ставим пустые т.к. элементы будут в рамках блока
"comm_1.mp3" – имя файла
"E","","" - строка параметров окончания блока
"E" – ключ, означает окончание блока
Далее идут "","" пустые строки (требуются для того, чтобы распознавание производилось корректно)
Процесс импорта:
1.Создаем формат импорта под наш файл
- Выбираем пункт «Сервис» – далее «Форматы импорта», видим окно – нажимаем «добавить»
- Видим окно «Настройки импорта»
- Во вкладке «Разбор файла» вбиваем «Название формата» (любое название), и добавляем в окно «Поля:» кнопкой «Добавить» поля импорта.
В нашем примере нам требуются следующие поля:
- Управление
- Время
- Имя файла
Разделитель оставляем по умолчанию т.к. в нашем примере он именно такой «,». (В случае использования другого разделителя, укажите требуемый).
Начиная с 2.17.2.180 допускается использовать escape-символы (такие как \t, \a, \b, \v, \f ) в качестве разделителя при импорте текстовых файлов. Например, \t - для использования табуляции в качестве разделителя.
- Переходим на вкладку элемент
Выбираем «Каталог хранения фонограмм по умолчанию» или «Каталоги, в которых следует искать фонограммы» (при указанном каталоге мы можем не указывать полный путь до элемента в текстовом файле)
Важно, что одновременно данные поля не следует использовать:
«Каталог хранения фонограмм по умолчанию» используется в случае уверенности, что требуемая фонограмма находится именно в данном разделе. Произойдет следующее: ПО подставит к пути, который указан по умолчанию имя из файла и так его вставит в расписание, в случае отсутствия фонограммы элемент будет отмечен красным и не проиграется. (Такой способ можно использовать например когда фонограмм еще нет и вставить их позднее в элемент)
«Каталоги, в которых следует искать фонограммы» используется для поиска музыкального файла в папках из списка иерархически т.е. если ПО найдет файл с подходящим названием в первом каталоге, то в остальных поиск произведен не будет.
- Переходим на вкладку «Обозначения»
На данной вкладке указаны ключи на различные действия, в нашем примере мы используем:
B – Начало блока
T – Фиксировать время начала
A – В свойствах блока в параметрах привязки ко времени устанавливается галочка на пункте «Не позднее»
F – элемент Аудио
E – окончание блока
Эти обозначения можно менять и настраивать.
- Нажимаем «ОК», сохраняя шаблон
2. Приступаем к импорту
- Выбираем меню расписания «…»
- Выбираем пункт «Импорт из текстового файла»
- Выбираем из списка «Формат импорта», выбираем файл, который мы импортируем.
- Далее мы можем сохранить пресет настроек, для этого просто вводим название в поле «пресет» и нажимаем кнопку «сохранить».
- Нажимаем кнопку «ОК»
Создаются блоки без типа, наполненные указанными в файле импорта элементами. Чтобы блоки создавались с определенным типом требуется в параметрах блока в текстовом файле добавить соответствующую букву, которая указана в формате импорта на вкладке «Обозначения» (Например "BTAN","07:21:00","" – будет создан блок типа Новости)
Установка усиления и нормализация при импорте в расписание¶
Импорт из текстового файла позволяет установить коэффициент усиления или выполнить нормализацию звука импортируемого элемента. Нормализация может быть выполнена либо по пиковому уровню, либо по громкости в зависимости от полей, присутствующих в импортируемом файле. Эти параметры устанавливаются в особом порядке, после завершения импорта и синхронизации с МБД, таким образом они применяются уже поверх данных, скопированных из БД в расписание.
Этим параметрам соответствуют поля формата импорта "Усиление (дБ)", "Уровень пиковой нормализации (dBFS)", "Уровень нормализации по громкости (LUFS)".
Это взаимоисключающие параметры, и необходимо использовать только один из них, в противном случае будет применено значение усиления (оно имеет приоритет), а в окно ошибок выдано предупреждение о конфликте.
Примечание: разделителем целой и дробной части в значениях параметров всегда является точка, но не запятая.
Следует отметить, что нормализация элемента - продолжительный процесс, нормализация большого количества элементов может занять существенное время, в течении которого работа с приложением будет невозможна.
Усиление и нормализация применяются только когда элемент связан с реальным файлом. Если при импорте файл не был найден, то эти значения не применяются, но сохраняются в расписании (поля NormalLvl и NormalLufs). Если подходящий файл будет найден спустя некоторое время, потребуется ручной вызов команды Тестировать блоки для того, чтобы применить усиление или нормализацию к импортированным элементам.
После однократного применения эти значения стираются из расписания и при последующих тестах блоков применяться не будут.
Лог редактирования расписания¶
В логах редактирования применения уровня нормализации отмечается следующим образом:
Operation=Check block items
Reason=Manual
Block content:
Gain = 0.336235 ««« 0.000000
NormalLvl = •NO• ««« 0.000000
ВАЖНО! Для добавления элементов в БД с последующей подстановкой в расписание, каждому элементу должен быть присвоен свой ID_Number в текстовом файле и указан тип элемента.