Проект Streamnik сервера является IPTV сервер на базе открытых кодеков Ogg / Vorbis Ogg и / Theora. Это может течь ряд различных каналов и оптимизирована для работы на арендуемых (виртуальных) серверов. График программа определяется в таблице базы данных SQL и могут быть изменены во время выполнения.
Требования:
· Общие C ++ с разви
· MySQL (mysqlclient)
Монтаж:
Для компиляции, все работает, как обычно:
./configure
делать
Судо сделать установку
Что нужно, чтобы запустить сервер:
короткий метр: короткие фильмы для обработки ошибок
превью: короткий превью фильмов (например, объявления - это поток представлен ...)
видео: видео, чтобы показать
все видео, короткий метр и prieviews должны совпадать частоту кадров,
ключевой кадр расстояния и т.д.
короткий метр и превью фактически кэшируются с именем ключа и составляются
в (следующая версия может использовать запись в базе данных для этого)
Запускать:
просто запустить сервер:
> StreamnikServer -d -u -p
и получить доступ к серверу, например, по MPlayer:
> MPlayer "HTTP: // локальный: 12000 / video.ogg канал = 1?"
Однако, Befor все, что вам нужно, чтобы создать ряд дополнительных вещей:
БАЗА ДАННЫХ:
Вам нужен план SQL-базы данных и работает. Заявления приведены в конце этого документа.
Имя базы данных и пароль могут быть добавлены в командной строке.
ФАЙЛЫ:
Вы должны следующую структуру файла (может быть изменен в serverConfig.h):
Главная
> Поделился
> OGG
> Коротышка
Каталог OGG несет все файлы, которые должны быть в потоковом. Каждый файл имеет соответствующую запись в базе данных SQL ("видео" таблицы).
В короткий метр это небольшие файлы, OGG, которые показаны на ошибку.
не shorty_1.ogg -> нет поток доступен
shorty_2.ogg -> Несанкционированный доступ
shorty_3.ogg -> потокового тайм-аут
shorty_4.ogg -> база данных не доступна
Затем вы можете добавить превью (короткометражные фильмы BEFOR исходный поток, например, для добавляет)
Этот файл должен быть помещен в каталог коротышка, а также и названы
Предварительный _ *. OGG.
Система не будет счастлив, если они не присутствуют, но пустят
КАНАЛЫ:
Каналы открываются с помощью записи в базе данных SQL. Эта запись должна быть на самом деле присутствует на старте.
Для каждого канала, объект StreamCreator будет создан, который будет отправлять свои данные в мультиплексор. Это будет обрабатывать все запросы клиентов.
TcpListener (Порт 12000) StreamSend (Клиент 1)
| | /
Файл -> StreamCreator -> Мультиплексор ---> StreamSend (Клиент 2)
Поток 1 |
| -> StreamSend (Клиент 3)
|
SQL базы данных Access |
^ | -> StreamSend (Клиент 4)
| | /
Файл -> StreamCreator -> Мультиплексор ---> StreamSend (Клиент 5)
Поток 2 |
|
|
SQL базы данных Access |
^ | ---> StreamSend (Клиент 6)
| | /
Файл -> StreamCreator -> Мультиплексор ----> StreamSend (Клиент 7)
Поток 3
-> StreamSend (Клиент 8)
-> StreamSend (Клиент 9)
...
ГРАФИК:
График находится в "график" таблицы в базе данных.
("day_id" и "Дата" на самом деле не используется)
channel_id и video_id соответствуют записям в других таблицах.
каждый фильм имеет позицию (в день). День начинается в 4:00.
Первая запись в одном блоке фильмов должны быть отмечены со статусом "1".
Если у вас есть фильм, который не подключен непрерывно, вы должны добавить
"1" положение снова.
************************************************** ****
*
* Создание базы данных SQL
*
************************************************** ****
CREATE TABLE `schedule` (
`day_id` INT (11) NOT NULL, без знака по умолчанию '0',
`date` VARCHAR (8) NOT NULL по умолчанию '',
`channel_id` INT (11) NOT NULL, без знака по умолчанию '0',
`position` INT (10) NOT NULL, без знака по умолчанию '0',
`video_id` INT (10) NOT NULL, без знака по умолчанию '0',
`duration` INT (10) NOT NULL, без знака по умолчанию '0',
`status` TINYINT (3) знака NOT NULL по умолчанию '0'
)
CREATE TABLE `videos` (
`id` INT (10) NOT NULL, без знака auto_increment,
`owner` Int (10) NOT NULL, без знака по умолчанию '0',
`title` VARCHAR (80) NOT NULL по умолчанию '',
`subtitle` VARCHAR (80) NOT NULL по умолчанию '',
`author` VARCHAR (80) NOT NULL по умолчанию '',
`copyright` VARCHAR (160) NOT NULL по умолчанию '',
`description` VARCHAR (255) NOT NULL по умолчанию '',
`time_added` INT (10) NOT NULL, без знака по умолчанию '0',
`duration` INT (10) NOT NULL, без знака по умолчанию '0',
`ready` TINYINT (1) NOT NULL по умолчанию '0',
PRIMARY KEY (`id`)
)
CREATE TABLE `channels` (
`id` INT (11) NOT NULL, без знака по умолчанию '0',
`name` VARCHAR (80) NOT NULL по умолчанию '',
`owner` INT (11) NOT NULL по умолчанию '0',
`description` VARCHAR (80) NOT NULL по умолчанию '',
`randomplay` TINYINT (1) NOT NULL по умолчанию '0',
PRIMARY KEY (`id`)
)
Что нового в этой версии:
Этот выпуск предоставляет много новых документов о настройке сервера.
· Существует в настоящее время сценарий, который будет доступен компиляции, установки и настроить сервер streamnik в одном шаге.
· Конфигурация теперь может быть сделано с помощью файла конфигурации, который находится на /etc/streamnik.conf.
· Кроме того, есть некоторые незначительные исправления, такие как исправления для компиляции под разными дистрибутивов.
Детали программы:
Версия: 0.02
Дата загрузки: 3 Jun 15
Тип распространения: Бесплатная
Популярность: 24
Комментарии не найдены