Browse Source

v1.3. Эталонные настройки

master
Maxim Lihachev 9 years ago
parent
commit
8e81dbefc2
  1. 102
      README.md
  2. 10
      settings/all.xml
  3. 6
      settings/archive.xml
  4. 2
      settings/icecast.xml

102
README.md

@ -0,0 +1,102 @@ @@ -0,0 +1,102 @@
**streamsaver** - сценарий сохранения аудиопотоков
##Лицензия
Copyright (C) 2011-2016, Maxim Lihachev, <envrm@yandex.ru>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
##streamsaver
Обработчик аудиопотоков с нарезкой их в файлы и ретрансляцией на icecast
Сценарий принимает аудиопоток с оборудования, по UDP или TCP,
фрагментирует его на отрезки заданной длины для последующего хранения и
анализа, а также ретранслирует поток на сервер радиовещания icecast для
прослушивания аудио конечным пользователем.
##streamproxy
Проксирование аудиопотока на Icecast.
Сценарий принимает аудиопоток с оборудования, по UDP или TCP,
и ретранслирует поток на сервер радиовещания icecast для
получения сигнала другими программами и прослушивания аудио конечным
пользователем.
Проксирование будет доступно только при задании в файле настроек опции
<proxy>1</proxy>
##Использование
streamsaver/streamproxy <файл настроек> - xml-файл с описанием входящего и
выходящего потоков и правилами фрагментирования записей.
##Файл настроек
```xml
<xml>
<!-- Название канала -->
<channel_name></channel_name>
<!-- Описание канала -->
<channel_descr>Тестовый_канал</channel_descr>
<!-- Входящий поток -->
<stream>http://localhost:8000/stream</stream>
<!-- Icecast для вывода -->
<icecast>localhost:8000</icecast>
<!-- Пароль для доступа к Icecast -->
<password>hackme</password>
<!-- Точка подключения канала -->
<mountpoint>stream</mountpoint>
<!-- Программа/канал из потока -->
<input_channel>0:p:4098</input_channel>
<!-- Команда получения сигнала -->
<cmd>ffmpeg</cmd>
<!-- Формат входного потока -->
<input_format>mp2 -map 0:0</input_format>
<!-- Директория для сохранения архивных файлов -->
<!-- Может содержать переменную $DATA (текущую дату) -->
<archive_dir>FILES/archive/</archive_dir>
<!-- Длительность архивных файлов в секундах -->
<archive_time>3600</archive_time>
<!-- Файл журнала обработки архивных записей -->
<archive_log>FILES/archive.log</archive_log>
<!-- Директория для сохранения фрагментов на анализ -->
<slices_dir>FILES/fragments/</slices_dir>
<!-- Длительность фрагментов для анализа в секундах -->
<slices_time>10</slices_time>
<!-- Файл журнала обработки фрагментов на анализ -->
<slices_log>FILES/fragments.log</slices_log>
<!-- Префикс имени файла -->
<filename_prefix>%Y-%m-%d_%H:%M:%S</filename_prefix>
<!-- Расширение имени файла -->
<filename_suffix>mp2</filename_suffix>
<!-- Формат аудиофайлов -->
<output_format>mp2</output_format>
<!-- Битрейт аудиофайлов -->
<audio_bitrate>256k</audio_bitrate>
<!-- Использование streamproxy -->
<proxy>1</proxy>
</xml>
```
При отсутствии параметра или пустом значении соответствующие флаги а
аргументы не добавляются в итоговую команду ffmpeg. Таким образом,
например, можно включать или отключать ведение журнала сохранения
аудиозаписей, просто указывая или удаляя параметр archive_log.
##Версия
1.0

10
settings/all.xml

@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
<!-- Описание канала -->
<channel_descr>Test_channel_#4</channel_descr>
<!-- Входящий поток -->
<stream>udp://@224.20.0.1:1234</stream>
<stream>udp://@1.1.0.1:1234</stream>
<!-- Icecast для вывода -->
<icecast>localhost:8000</icecast>
<!-- Пароль для доступа к Icecast -->
@ -20,17 +20,17 @@ @@ -20,17 +20,17 @@
<!-- Программа/канал из потока -->
<input_channel>p:4098</input_channel>
<!-- Директория для сохранения архивных файлов -->
<archive_dir>/tmp/RT/FILES/archive/TK04/CH4098/</archive_dir>
<archive_dir>/FILES/archive/TK04/CH4098/</archive_dir>
<!-- Длительность архивных файлов в секундах -->
<archive_time>3600</archive_time>
<!-- Файл журнала обработки архивных записей -->
<archive_log>/tmp/RT/FILES/tk04_ch4098.archive.log</archive_log>
<archive_log>/FILES/tk04_ch4098.archive.log</archive_log>
<!-- Директория для сохранения фрагментов на анализ -->
<slices_dir>/tmp/RT/FILES/fragments/TK04/CH4098/</slices_dir>
<slices_dir>/FILES/fragments/TK04/CH4098/</slices_dir>
<!-- Длительность фрагментов для анализа в секундах -->
<slices_time>10</slices_time>
<!-- Файл журнала обработки фрагментов на анализ -->
<slices_log>/tmp/RT/FILES/tk04_ch4098.fragments.log</slices_log>
<slices_log>/FILES/tk04_ch4098.fragments.log</slices_log>
<!-- Префикс имени файла -->
<filename_prefix>%Y-%m-%d_%H:%M:%S</filename_prefix>
<!-- Расширение имени файла -->

6
settings/archive.xml

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
<xml>
<!-- Название канала -->
<channel_name>DAB#2</channel_name>
<channel_name>FM#2</channel_name>
<!-- Номер канала -->
<channel_number>01</channel_number>
<!-- Входящий поток -->
@ -10,11 +10,11 @@ @@ -10,11 +10,11 @@
<!-- Формат входного потока -->
<input_format>s16le</input_format>
<!-- Директория для сохранения архивных файлов -->
<archive_dir>/tmp/RT/FILES/archive/$DATE/DAB02/CH01/</archive_dir>
<archive_dir>/FILES/archive/$DATE/DAB02/CH01/</archive_dir>
<!-- Длительность архивных файлов в секундах -->
<archive_time>3600</archive_time>
<!-- Файл журнала обработки архивных записей -->
<archive_log>/tmp/RT/FILES/dab_ch01.archive.log</archive_log>
<archive_log>/FILES/dab_ch01.archive.log</archive_log>
<!-- Префикс имени файла -->
<filename_prefix>%Y-%m-%d_%H:%M:%S</filename_prefix>
<!-- Расширение имени файла -->

2
settings/icecast.xml

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
<xml>
<!-- Название канала -->
<channel_name>DAB#2</channel_name>
<channel_name>ICECAST#2</channel_name>
<!-- Номер канала -->
<channel_number>01</channel_number>
<!-- Описание канала -->

Loading…
Cancel
Save