Скачиваний:
1
Добавлен:
03.06.2024
Размер:
141.91 Кб
Скачать

Цель работы: научиться анализировать архитектуру существующей информационной системы и представлять её в виде модели структуры.

Основная часть

  1. Выбор информационной системы для построения её модели

Для выполнения лабораторной работы была выбрана информационная система Open Broadcaster Software (OBS), это система с открытым исходным кодом для записи видео и прямых трансляций.

Эта система удовлетворяет всем требованиям:

  1. Имеется обширная техническая документация

  2. Размер и сложность соответствуют требованиям

  3. Аналоги системы: XSplit Broadcaster, Streamlabs OBS

  1. Общее назначение системы

Запись аудио и видео, проведение прямых трансляций на такие сервисы как Twitch, Youtube и др.

  1. Модель структуры системы на уровне программно-технической архитектуры

Каждый элемент из Data capture связан с Audio video filters и Audio Video encoder

Рисунок 1 – Программно-техническая архитектура OBS

Таблица 1 – Элементы OBS

Номер

Название

Элемента

Назначение

Тип

Информационного

процесса

Принадлежность

подсистеме

1

Scene

Создание сцены, выбор заранее сохранённых пользователем сцен

Хранение информации

Interface

2

Data input

Выбор источников ввода данных

Получение информации

Interface

3

Audio mixer

Настройка каналов записи аудио

Обработка информации

Interface

4

Start/pause

Начало/пауза записи

Хранение, вывод информации

Interface

5

Settings

Настройки программы

Хранение, обработка информации

Interface

6

Libobs

Главный фреймворк для всех плагинов

Обработка, передача информации

API and frame layer

7

Media source

Вывод медиа на сцену

Ввод информации

Data capture

8

Screen source

Вывод экрана на сцену

Ввод информации

Data capture

9

Game capture

Вывод 3D-приложений на сцену

Ввод информации

Data capture

10

Camera capture

Вывод изображения с камеры на сцену

Ввод информации

Data capture

11

Text source

Вывод текста на сцену

Ввод информации

Data capture

12

Audio capture

Вывод аудио на сцену

Ввод информации

Data capture

13

Audio Video filters

Обработка аудио и видео

Обработка информации

Data process

14

Audio Video encoder

Шифрование аудио и видео

Обработка информации

Data process

15

RTMP streaming

Трансляция аудио и видео в интернет через протокол RTMP

Вывод информации

Data output

16

Local recording

Запись аудио и видео на устройство

Вывод информации

Data output

17

Local preview

Предпросмотр аудио и видео в программе

Вывод информации

Data output

Таблица 2 – Связи между элементами OBS

Номер связи на схеме

Название связи

Характеристика передаваемых данных

1

Рендер видео

Сборка всех данных из подсистемы Data Capture в единую картинку с последующим наложением на неё эффектов при необходимости

2

Кодировка видео

Преобразование файла в формат, подходящий для дальнейшего вывода данных

3

Прямая трансляция

Трансляция полученного файла в интернет с помощью протокола RTMP

4

Локальная запись

Запись полученного файла на устройство

5

Предпросмотр

Вывод полученного файла в окно предпросмотра в программе

6

Захват данных

С помощью библиотеки Libobs выполняются функции video_thread и audio_thread

7

Обработка данных

Выполняется функция obs_graphics thread из библиотеки Libobs

8

Вывод

Как только данные из источников отрисованы и финальный файл сконвертирован в формат, определённый libobs файл отправляется на предпросмотр в интерфейс либо на трансляцию

Таблица 3 – Матрица смежности

Data input

Audio Mixer

Start/pause

Settings

Libobs

Media source

Screen source

Game capture

Camera capture

Text source

Audio capture

Audio video filters

Audio Video encoder

RTMP streaming

Local recording

Local preview

Scene

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Data input

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Audio Mixer

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

Start/pause

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Settings

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Libobs

0

0

0

0

0

1

1

1

1

1

1

1

1

1

1

1

Media source

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Screen source

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Game capture

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Camera capture

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Text source

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Audio capture

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

Audio Video filters

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

Audio Video encoder

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

RTMP streaming

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

Local recording

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

Local preview

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

0

  1. Альтернативная модель структуры

Рисунок 2 – Альтернативная диаграмма OBS

  1. Описание модели структуры

Interface – задание пользователем команд, настройка программы, задание необходимых параметров для записи и трансляции пользователем

API – Библиотека libobs, все функции программы

Data – ввод, обработка, вывод данных на трансляцию или запись

Вывод: в ходе выполнения лабораторной работы, была построена модель системы Open Broadcaster Software, разобраны её элементы и связи между ними.

Соседние файлы в папке Акопян ЛР