Разработка кроссплатформенного порта D-Series - Дипломная работа

бесплатно 0
4.5 79
D-Series как система автоматизации телевещательного процесса, используемая современными телестудиями. Портирование компонентов системы для работы на операционных системах Windows. Проверка корректного подключения плагинов и ручного режима воспроизведения.


Аннотация к работе
По этой причине, разработки в области телевещания заняли особую нишу в IT-сфере и являются одними из основных бизнес-процессов ряда компаний. Одним из главных направлений данной революции являлся процесс автоматизации производства, и как следствие этого, был разработан ряд систем управления и контроля процесса телевещания. Ранние системы, в большей мере, были направленны на автоматизацию контроля, а действия по организации и управлению производились операторами вручную; однако современные системы более многофункциональные и полностью автоматизируют процесс вещания, за исключением процесса создания расписания медиа контента для воспроизведения, выполняемого вручную. Субъектом данной научной работы является процесс телевещания, а объектом - многофункциональная система автоматизации эфира, направленная на поддержание полного цикла вещания, начиная с управления оборудованием и заканчивая мониторингом и контролем над воспроизведением.В рамках данного проекта необходимо произвести портирование компонентов системы для работы на операционных системах Windows. К примеру, компании, которые используют несколько операционных систем для своей работы (Windows/Linux, Linux/MACOSИ т.д.), отдадут явное предпочтение продукту, который одновременно функционирует на используемых компанией системах и требует одноразовых затрат. Все эти операционные системы занимаются управлением наиболее важными процессами для всей системы, такими как: управление памятью и файловыми системами, именование и расположение ресурсов, обеспечение многозадачности, взаимодействие и синхронизация между потоками и задачами, а также предоставление гибких механизмов защиты ресурсов от несанкционированного доступа. Данная дипломная работа предполагает разработку проекта, функционирующего на операционных системах Windows 7 и Linux внутренней сборки, поэтому именно эти две системы будут рассмотрены в данном и последующих пунктах работы. Однако открытый код дает возможность подстраивать систему под конкретные нужды разработчиков, а систематизация файлов делает систему понятной для продвинутых пользователей.Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) и бибилиотеки для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как например, Subversion и Visual SOURCESAFE), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметно-ориентированных языках программирования или инструментов для прочих аспектов процесса разработки программного обеспечения. D-MAS - серверная часть системы, которая организует и управляет процессом подачи материала в эфир в соответствии расписанию, а также выполняет контроль над телевизионным оборудованием, подключенном к системе в момент работы; Портинг в данном проекте можно разделить на 4 логических части: портинг NET-части, портинг многопоточности, портинг обработки ошибок и тайм-портинг. Примеры кода (libdseries): ipv4_tcp.h class IPV4_TCP_HOST : public IPV4_HOST {public: IPV4_TCP_HOST(const IPV4_ADDRESS & address, TCP_PORT port); … private: asio::ip::tcp::endpoint endpoint; asio::ip::tcp::socket asio_socket; …} ipv4_udp.h class IPV4_UDP_HOST : public IPV4_HOST {public: IPV4_UDP_HOST(const IPV4_ADDRESS & ipv4_address, UDP_PORT port); … private: asio::ip::udp::endpoint endpoint;В рамках выпускной квалификационной работы проведен портинг компонентов системы автоматизации телевещания, а именно статической прослойки библиотек и ряда плагинов устройств вещания, что позволяет всей системе работать как на Windows, так и на Linux операционных системах. В ходе работы были решены следующие задачи: 1) проведено исследование предметной области;,framer__(std::make_unique(*udp_dgram__.get(), logger, ODETICS_FRAMER::ASSERT_COMM_STATE(dynamic_cast(this), &COMM_THREAD__::assert_comm_bad), ODETICS_FRAMER::ASSERT_COMM_STATE(dynamic_cast(this), &COMM_THREAD__::assert_comm_good),static_cast(channel))) if (!communication_state__.communication_is_enabled()) {logger.printf(LOGGER::filter_debug, "ignoring request on channel %s: communication is disabled", sense_name().c_str()); for (unsigned int i_pos = 0; i_pos <n_to_deactivate; i_pos) {logger.printf(LOGGER::filter_verbose, "Deactivate clip %d, state %d", i_pos, timeline_deactivated_event_state(i_pos)); // This can occur when the plug-in activated (e.g. on startup or after a TOC for DMAS) if (sense_state().action() == STATE::DECODING) {logger.printf(LOGGER::filter_verbose, "Timeline not active, but decoder playing out - setting preview clip to %s", sense_name().c_str()); } else if (sense_state().action() == STATE::ENCODING) {logger.printf(LOGGER::filter_verbose, "Timeline not active, but encoder recording - ignoring request to cue to record %s", sense_name().

Введение
В наше время телевидение стало неотъемлемой частью жизни любого человека. По статистике около 70% россиян смотрят телевизор каждый день, и 99% населения включают его хотя бы раз в месяц. По этой причине, разработки в области телевещания заняли особую нишу в IT-сфере и являются одними из основных бизнес-процессов ряда компаний.

Недавняя научно-техническая революция дала толчок к развитию сферы телевизионного вещания. Одним из главных направлений данной революции являлся процесс автоматизации производства, и как следствие этого, был разработан ряд систем управления и контроля процесса телевещания. Ранние системы, в большей мере, были направленны на автоматизацию контроля, а действия по организации и управлению производились операторами вручную; однако современные системы более многофункциональные и полностью автоматизируют процесс вещания, за исключением процесса создания расписания медиа контента для воспроизведения, выполняемого вручную.

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

Однако система функционирует только на компьютерах под управлением Unix-подобной системы внутренней разработки. Таким образом, задача добавления кроссплатформенности данной системе, для ее работы на операционных системах семейства Unixи Windows, является актуальной в рамках проекта D-Series компании “Теком”. Задача кроссплатформенности выбрана как основа для написания данной выпускной работы.

Вывод
В рамках выпускной квалификационной работы проведен портинг компонентов системы автоматизации телевещания, а именно статической прослойки библиотек и ряда плагинов устройств вещания, что позволяет всей системе работать как на Windows, так и на Linux операционных системах.

В ходе работы были решены следующие задачи: 1) проведено исследование предметной области;

2) проведен анализ существующих решений;

3) проведен выбор средств реализации проекта;

4) разработаны кроссплатформенные порты;

5) проведено тестирования продукта в рамках лаборатории.

Цель работы, состоящая в разработке кроссплатформенного порта системы D-Series и проведение тестирования на реальных устройствах - достигнута.

Разработанное приложение может быть использовано компанией, так как оно дает возможность для расширения рынка конечных пользователей продукта.

Список литературы
Зиборов В.В. C 2012 на примерах / В.В. Зиборов - СПБ.: БХВ - Петербург, 2013. - 480 с.

Мейерс С. Наиболее эффективное использование C .35 новых рекомендаций по улучшению ваших программ и проектов - «ДМК», 2000. - 304 с.

Мюссер Д., Дердж Ж. и Сейни А. C и STL. Справочное руководство, 2-е изд. - 2010. - 432 с.

Харт Д. Системное программирование в среде Windows,3-е изд. - 2005. -608 c.

Таненбаум, Э. Современные операционные системы, 2-е изд. - СПБ. : Питер, 2007. - 1038 с.

Прата С. Язык программирования C (C 11). Лекции и упражнения, 6-е изд. - М.: «Вильямс», 2012. - 1248 с.

Polukhin A. Boost C Application Development Cookbook - Packt Publishing, 2013. - 348 pp.

Hook B. Write Portable Code: An Introduction to Developing Software for Multiple Platforms - San Francisco: No Starch Press, 2005. - 273 pp.

Syd L. Cross-Platform Development in C : Building Mac OS X, Linux, and Windows Applications - 2008. - 550 pp.

Джосаттис Н. Стандартная библиотека С : справочное руководство, 2-е изд. - 2016. - 1136 с.
Заказать написание новой работы



Дисциплины научных работ



Хотите, перезвоним вам?