История изменений




Скачать 131.47 Kb.
НазваниеИстория изменений
Дата20.12.2012
Размер131.47 Kb.
ТипЛитература


Приложение для вещания

Спецификация требований

Ревизия: 1.1

История изменений


16.10.2009 – Версия 1.0. Первичный документ. Ковтун А.Ю.

Содержание


История изменений 2

Содержание 3

Введение 5

Описание предметной области 5

Цель проекта 5

Задачи 5

Общие требования к системе 5

Введение 5

Аппаратное обеспечение 6

Программное обеспечение 6

Требования к производительности 7

Требования к установке 7

Установка 7

Требования к форматам данных 7

Форматы данных 7

Требования к пользовательскому интерфейсу 7

Обзор 7

Требования к разграничению доступа 8

Обзор 8

Функции системы 8

Обзор 8

Серверная часть 9

Введение 9

Захват аудио потока 9

Логирование 9

Аутентификация 10

Настройки 10

Передача данных 11

Обзор 11

Обработка 11

Обзор 11

Клиентская часть 12

Введение 12

Воспроизведение аудио потока 12

Логирование 13

Аутентификация 13

Настройки 13

Передача данных 14

Обзор 14

Обработка 15

Обзор 15

Литература 15

Введение

Описание предметной области


Развитие сети вещания сетевой радиостанции требует передачи аудио потока от студии до передатчика по цифровым каналам связи. Одним из наиболее приемлемых подходов для передачи аудио потока, является использование сети Интернет (сети Интернет).

Однако, передача по сети приводит к задержкам пакетов, что в свою очередь приводит к искажениям звука (характерное шипение или пропадание звука).

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

Цель проекта


Целью данного проекта является создание комплекта ПО для передачи аудио потока по сети Интернет.

Задачи


  • Произвести обзор существующих программных решений данной задачи.

  • Сервер:

    • Разработать модуль для захвата аудио потока с выхода звуковой карты.

    • Разработать модуль для сжатия аудио потока.

    • Разработать модуль для передачи сжатого аудио потока по сети Интернет.

    • Разработать модуль логирования состояния, как передающего компонента, так и принимающего.

    • Разработать модуль для передачи служебной и дополнительной информации по сети Интернет, с передающей вычислительной системы.

    • Разработать модуль для отображения статуса передачи аудио потока и служебной информации.

    • Хранение состояния.

  • Клиент:

    • Разработать модуль автоматического подключения к указанному вещательному серверу, производящему восстановление подключение, в случае разрыва.

    • Разработать модуль для восстановления аудио потока.

    • Разработать модуль для подачи аудио потока на вход звуковой карты.

    • Разработать модуль для получения служебной и дополнительной информации и подачи ее на COM-порт принимающей вычислительной системы.

    • Разработать модуль настройки параметров COM-порта.

    • Разработать модуль логирования состояния принимающего модуля.

    • Разработать модуль для отображения статуса получения аудио потока и служебной информации.

    • Хранение состояния.

Общие требования к системе

Введение


Передающая система представляет собой набор приложений:

  • Серверная сторона. На стороне сервера происходит захват аудио потока, сжатие аудио потока, формирование служебной и дополнительной информации (для аудио потока) и дальнейшая ее передача по сети Ethernet.

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

Аппаратное обеспечение


Приведем требования к клиентской вещательной части.

Минимальная конфигурация:

  • CPU: Intel Pentium III 866 MHz;

  • RAM: 128 Mb;

  • Video RAM: 32 Mb;

  • Resolution: 1024 x 768 @ HiColor.

  • Одноканальная звуковая карта. Позволяет производить захват аудио потока с аудио выхода: s/pdif, линейного входа и aes/ebu.

  • Fast Ethernet сетевых карт.

Предпочтительная конфигурация:

  • CPU: Intel Pentium 4 1,4 GHz;

  • RAM: 256 Mb;

  • Video RAM: 64 Mb;

  • Resolution: 1280 x 1024 @ TrueColor.

  • Многоканальная звуковая карта. Позволяет производить захват нескольких аудио потоков с указанных аудио выходов: s/pdif, линейного входа и aes/ebu.

  • Несколько Fast Ethernet сетевых карт.

Приведем требования к серверной части.

Минимальная конфигурация:

  • 1 x CPU: Intel Core 2 Duo 2,4 GHz;

  • RAM: 1024 Mb;

  • Video RAM: 256 Mb;

  • Resolution: 1024 x 768 @ TrueColor.

  • Одноканальная звуковая карта. Позволяет производить воспроизведение аудио потока на аудио входы: s/pdif, линейного выхода и aes/ebu.

  • Fast Ethernet сетевых карт.

Предпочтительная конфигурация:

  • 2 x CPU: Intel Core 2 Duo 2,4 GHz;

  • RAM: 2048 Mb;

  • Video RAM: 256 Mb;

  • Resolution: 1280 x 1024 @ TrueColor.

  • Многоканальная звуковая карта. Позволяет производить воспроизведение нескольких аудио потоков на несколько аудио входов: s/pdif, линейного выхода и aes/ebu.

  • Несколько Fast Ethernet сетевых карт.

Программное обеспечение


Приведем требования к клиентской части приложения. Опишем требования к ОС, ее компонентам и другому ПО:

  • Microsoft Windows 2003 Server (Microsoft Windows XP Service Pack 3).

  • Аудио кодеки со сжатием: mp3, ogg, aac.

  • Аудио кодеки без сжатия: PCM.

Приведем требования к серверной части приложения.

  • Microsoft Windows 2003 Server (Microsoft Windows XP Service Pack 3).

  • Аудио кодеки: mp3, ogg, aac.




Требования к производительности


Предполагается, что задержка сетевых пакетов не должна превышать 10 мс.

Требования к установке

Установка


Установка каждого компонента производится посредством приложения для инсталляции с последующим ручным конфигурированием.

Перечислим зависимости клиентской части:

  • (TBD)

Перечислим зависимости серверной части:

  • (TBD)

Требования к форматам данных

Форматы данных


Серверное и клиентское приложение обязано поддерживать кодирование аудио потока (сжатие) в следующие форматы:

  • Mp3;

  • Ogg;

  • AAC;

  • PCM (без сжатия).

Для каждого из указанных аудио кодеков, необходимо предусмотреть возможность тонкой настройки:

  • Выбор битрейта.

  • Разрядность.

  • Частота.

  • Уровень сигнала.

  • И т.д.

Требования к пользовательскому интерфейсу

Обзор


Пользовательский интерфейс следует выполнить в виде диалогов Microsoft Windows, в соответствии с Microsoft Windows XP Logo Requirements [1]. Также следует руководствоваться [2] для проектирования пользовательского интерфейса.

Требования к разграничению доступа

Обзор


Для изменения настроек системы, следует предусмотреть возможность парольной защиты.

Необходимо предусмотреть следующие режимы аутентификации:

  • Аутентификация клиентского приложения, для доступа к настройкам и статусу серверного приложения.

  • Аутентификация клиентского вещательного приложения, для доступа к аудио потоку и дополнительной и служебной информации.

Более детальная информация по вопросу аутентификации, изложена ниже.

Функции системы

Обзор


Система захвата, кодирования, передачи по сети Ethernet и воспроизведения аудио потока представляет собой 2 основных компонента, рис. 1:

  • Серверная часть.

  • Клиентская часть.



Рис. 1. Общая схема системы

Далее детально остановимся на функциональности каждой из подсистем.

В качестве прототипов, можно рассмотреть бесплатные вещательные аудио серверы, доступные в сети Интернет (TBD)

Серверная часть

Введение


Серверная часть представляет собой Windows Service, см. рис. 2, который производит захват одного или нескольких аудио потоков, их кодирование и передачу. Кром того, каждому потоку может соответствовать некоторая дополнительная и служебная информация, которую также следует передавать вместе с аудио потоком. Служебная информация может быть представлена, как текстовом, так и двоичном виде.

Поведение данного сервиса обязательно следует документировать (логировать). Наличие данного сервиса позволяет контролировать поведение приложения при эксплуатации.



Рис. 2. Схема серверной части системы вещания

Захват аудио потока


Приложение может производить захват аудио потока с различных звуковых карт, отметим, что каждая звуковая карта может обладать несколькими выходами. В связи с этим следует предусмотреть возможность гибкой настройки:

  • Выбор звуковой карты.

  • Выбор выхода звуковой карты, с которого следует производить захват аудио потока. Также следует обратить внимание, что существуют …

Среди популярных профессиональных звуковых карт, стандартом де-факто является использование не стандартных WDM драйверов, а именно драйверов с архитектурой ASIO. В связи с этим, следует предусмотреть возможность поддержки драйверов звуковых карт с архитектурой ASIO

Логирование


Данная подсистема предназначена для документирования поведения серверного компонента. Источником хранения сообщений предполагается текстовый файл.

Перечислим основные категории сообщений, которые следует документировать:

  • Аутентификация.

  • Изменение настроек.

  • Сетевая активность (подключения, отключения).

  • Программные сбои (исключения).

  • Нарушений защиты:

    • попытка подбора паролей (свыше 3-х);

Каждую запись в файле следует представить в следующем виде:

  • Дата и время генерации записи.

  • Имя процесса, в котором произошел сбой (сервис либо клиентское приложение).

  • Имя потока, в котором произошел сбой (имя аудио потока, который ассоциирован с системным потоком).

  • IP адреса и порты, к которым производились подключения.

  • Логины и хеш-образы паролей, через которые производились подключения.

В качестве прототипа, предлагается использовать библиотеку Apache Log4Net. Данная библиотека позволяет использовать различные источники сообщений:

  • БД;

  • Текстовый файл;

  • XML файл;

  • Event report (системное хранилище событий);

  • И т.д.

Аутентификация


Следует выделить несколько вариантов аутентификации:

  • Аутентификация, для доступа к параметрам (модификации) серверной части через клиентское приложение.

  • Аутентификация, для доступа к аудио потоку и данным самого вещательного сервера, через клиент вещания.

Данная подсистема предназначена для ограничения действий пользователей с приложением, другими словами, не все пользователи могут вносить изменения в настройки приложения.

Предполагается, что пароль будет храниться в виде хеш-образа в системном реестре.

В случае утраты пароля, предполагается наличие механизма восстановления данного пароля.

Предполагается, что аутентификация может производится различными способами, как системным образом (windows аутентификация), так и реализация собственного механизма.

Настройки


Для управления работой Windows Service, который производит обработку аудио потока, предполагается разработать Windows приложение, которое будет производить подключение к сервису и:

  • Производить его конфигурирование.

  • Отображать статус.

Настройки приложения следует хранить в отдельном XML файле. Следует предусмотреть возможность «легкого» криптографического преобразования, что бы исключить возможность постороннего вмешательства в работу сервиса.

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

В настройках следует предусмотреть следующие настройки:

  • Аудио кодек.

  • Битрейт.

  • Разрядность преобразования.

  • Уровень звука.

  • IP адрес и порт, с которого будет осуществляться вещание.

  • Тип вещания: Multicast, Unicast.

  • Транспортный протокол вещания: TCP, UDP.

  • Ограничение количества одновременных подключений, к транслируемому аудио потоку.

Пример пользовательского интерфейса для клиентского приложения, представлен на рис. 3.



Рис. 3. Пользовательский интерфейс клиентского приложения для сервиса вещания

В случае необходимости можно добавить индивидуальные настройки COM-портов, для получения дополнительной и служебной информации, ассоциированной с каждым аудио потоком.

Передача данных

Обзор


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

Предполагается возможность вещания в нескольких режимах:

  • Unicast.

  • Muslticast.

Поддержка нескольких транспортных протоколов:

  • TCP (не обязательно).

  • UDP (приоритетный).

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

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

Обработка

Обзор


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

Вещательный сервер поддерживает следующие форматы кодирования аудио потока (сжатие):

  • Mp3;

  • Ogg;

  • AAC;

  • PCM (без сжатия).

Кроме того, вся служебная и дополнительная информация может передаваться:

  • Со сжатием (ZIP);

  • Без сжатия.

Для каждого из указанных аудио кодеков, необходимо предусмотреть возможность тонкой настройки:

  • Выбор битрейта.

  • Разрядность.

  • Частота.

  • Уровень сигнала.

  • И т.д.

Клиентская часть

Введение


Клиентская часть представляет собой Windows Service, см. рис. 4, который производит подключение к вещательным серверам по указанным IP адресам и портам, получает от каждого аудио поток, осуществляет их декодирование. Кроме аудио потока серверами, может передаваться еще дополнительная и служебная информация.

Служебная информация может быть представлена, как текстовом, так и двоичном виде.

Поведение данного сервиса обязательно следует документировать (логировать). Наличие данного сервиса позволяет контролировать поведение приложения при эксплуатации.



Рис. 4. Схема клиентской части системы вещания

Воспроизведение аудио потока


Приложение может производить воспроизведение аудио потока на различные звуковые карты, отметим, что каждая звуковая карта может обладать несколькими входами. В связи с этим следует предусмотреть возможность гибкой настройки:

  • Выбор звуковой карты.

  • Выбор входа звуковой карты, на который следует воспроизводить аудио поток. Также следует обратить внимание, что существуют …

Среди популярных профессиональных звуковых карт, стандартом де-факто является использование не стандартных WDM драйверов, а именно драйверов с архитектурой ASIO. В связи с этим, следует предусмотреть возможность поддержки драйверов звуковых карт с архитектурой ASIO

Логирование


Данная подсистема предназначена для документирования поведения клиентского компонента. Источником хранения сообщений предполагается текстовый файл.

Перечислим основные категории сообщений, которые следует документировать:

  • Аутентификация.

  • Изменение настроек.

  • Сетевая активность (подключения, отключения).

  • Программные сбои (исключения).

  • Нарушений защиты:

    • попытка подбора паролей (свыше 3-х);

Каждую запись в файле следует представить в следующем виде:

  • Дата и время генерации записи.

  • Имя процесса, в котором произошел сбой (сервис либо клиентское приложение).

  • Имя потока, в котором произошел сбой (имя аудио потока, который ассоциирован с системным потоком).

  • IP адреса и порты, к которым производились подключения.

  • Логины и хеш-образы паролей, через которые производились подключения.

В качестве прототипа, предлагается использовать библиотеку Apache Log4Net. Данная библиотека позволяет использовать различные источники сообщений:

  • БД;

  • Текстовый файл;

  • XML файл;

  • Event report (системное хранилище событий);

  • И т.д.

Аутентификация


Следует выделить несколько вариантов аутентификации:

  • Аутентификация, для доступа к параметрам (модификации) клиентской части через клиентское приложение.

  • Аутентификация, для доступа к аудио потоку и данным самого вещательного сервера, через клиент вещания.

Данная подсистема предназначена для ограничения действий пользователей с приложением, другими словами, не все пользователи могут вносить изменения в настройки приложения.

Предполагается, что пароль будет храниться в виде хеш-образа в системном реестре.

В случае утраты пароля, предполагается наличие механизма восстановления данного пароля.

Предполагается, что аутентификация может производится различными способами, как системным образом (windows аутентификация), так и реализация собственного механизма.

Настройки


Для управления работой Windows Service, который производит обработку аудио потока, предполагается разработать Windows приложение, которое будет производить подключение к сервису и:

  • Производить его конфигурирование.

  • Отображать статус.

Настройки приложения следует хранить в отдельном XML файле. Следует предусмотреть возможность «легкого» криптографического преобразования, что бы исключить возможность постороннего вмешательства в работу сервиса.

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

В настройках следует предусмотреть следующие настройки:

  • Аудио кодек.

  • Битрейт.

  • Разрядность преобразования.

  • Уровень звука.

  • IP адрес и порт, с которого будет осуществляться вещание.

  • Тип вещания: Multicast, Unicast.

  • Транспортный протокол вещания: TCP, UDP.

  • Ограничение количества одновременных подключений, к транслируемому аудио потоку.

Пример пользовательского интерфейса для клиентского приложения, представлен на рис. 5.



Рис. 5. Пользовательский интерфейс клиентского приложения для сервиса вещания

В случае необходимости можно добавить индивидуальные настройки COM-портов, для передачи дополнительной и служебной информации, ассоциированной с каждым аудио потоком.

Передача данных

Обзор


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

Предполагается возможность вещания в нескольких режимах:

  • Unicast.

  • Muslticast.

Поддержка нескольких транспортных протоколов:

  • TCP (не обязательно).

  • UDP (приоритетный).

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

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

Обработка

Обзор


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

Вещательный сервер поддерживает следующие форматы кодирования аудио потока (сжатие):

  • Mp3;

  • Ogg;

  • AAC;

  • PCM (без сжатия).

Кроме того, вся служебная и дополнительная информация может передаваться:

  • Со сжатием (ZIP);

  • Без сжатия.

Для каждого из указанных аудио кодеков, необходимо предусмотреть возможность тонкой настройки:

  • Выбор битрейта.

  • Разрядность.

  • Частота.

  • Уровень сигнала.

  • И т.д.

Литература


1. Microsoft Windows XP Logo Requirements.

2. Влад Головач. Дизайн пользовательского интерфейса. Версия 1.1. Usethics.

3. Сервер Интернет-радио вещания: Icecast.

4. Проигрыватель аудио потока VLC.

Последняя модификация:Vlad Kovtun

Modification Date:23.10.2009 09:12:00 PM

NRJETIX 2000 - 2008



Похожие:

История изменений iconРуководство пользователя 643. 49851011. 01010-0 4 34
Данное руководство описывает функционал и интерфейс программы "Почтовый Агент" версии X x. Описание истории изменений программы,...
История изменений iconУправление изменениями: направления, уровни и типы
Автор статьи анализирует понятие изменений, причины, виды и цели организационных изменений, проблемы, возникающие при проведении...
История изменений iconРабочая программа дисциплины «Источниковедение отечественной истории XI -xx вв.»
«История России (до ХХ века)», «История России (ХХ века)», «История Древнего мира», «История Средних веков», «Новая и новейшая история»,...
История изменений iconЭколого-экономические проблемы изменения климата: исходные принципы, глобальные и региональные оценки
Ний. Рассмотрено влияние климатических изменений на различные отрасли экономики и предложены пути снижения негативного влияния климатических...
История изменений iconПроект модельных изменений в уставы муниципальных образований, направленных на их приведение в соответствие с федеральным законодательством
От 21. 04. 2011 №69-фз «О внесении изменений в отдельные законодательные акты Российской Федерации»
История изменений iconРезюме Воскресенская Нина Олеговна Степень, звание: к и. н., доцент Должность во взфэи: доцент
Преподаваемые дисциплины: «История экономики», «История экономических учений», «Отечественная история», «История государственного...
История изменений iconМатематико-механический факультет Кафедра системного программирования Поддержка структурных изменений в процессах загрузки данных
Исследование необходимости поддержки структурных изменений в источниках данных 35
История изменений iconРешени е 26. 10. 2012 с. Пичаево №86 о внесении изменений в
О внесении изменений в решение Пичаевского районного Совета народных депутатов от 11. 06. 2009 №179 «Об утверждении реестра муниципального...
История изменений iconПриказ от 15 декабря 2009 г. N 2326 о внесении изменений в приказ рособрнадзора "о советах по защите докторских и кандидатских диссертаций" от 05. 06. 2009 n 1187
В связи с внесением Минобрнауки России изменений в Номенклатуру специальностей научных
История изменений iconИстория России
История Руси, России, Российская Империя, отечества, история ссср, советская история. Специализированные сайты и интересные факты...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница