By default, HLS-Proxy uses HTTP port 80.
You can change it by passing a command line parameter -port port_number.
Example:
./hls-proxy -port 8080
To save it permanently add -save./hls-proxy -port 8080 -save
To get all supported CLI parameters:
./hls-proxy -help
./install.sh
sudo -H -u <user> <hls-proxy path>/hls-proxy &
chmod 755 ./hls-proxy
After app start, you can open next links for tuning a proxy:
If you get an error on start "Cant start server: listen EADDRINUSE: address already in use"
then a http port you specified (or 80 by default) is used by another app. Change it by command line.
Detailed description of settings you can find at web page /config
EPG is not available at the start. It will take minutes to download and parse. Watch a status at web page /status
Add output=ts as query parameter to the playlist or channel URL
Example:http://localhost/?output=ts
Convert video using ffmpeg:
ffmpeg -i input.mkv -start_number 0 -hls_time 10 -hls_list_size 0 -hls_flags single_file -c copy -hls_segment_type mpegts -hls_allow_cache 0 index.m3u8index.m3u8 and index.ts put in the folder along the path
HLS-PROXY-DIR/recordings/VOD/VIDEO
Enter the playlist address in the player:
http://hls-proxy-address/rec
New video on the way
/recordings/VOD/VIDEO1
VOD - will be the name of the group in the playlist
VIDEO - will be the name of the stream
Folders inside recordings can have any name
Works since 8.0.0
The following environment variables are respected by HLS Proxy
HTTP_PROXY
/ http_proxy
HTTPS_PROXY
/ https_proxy
NO_PROXY
/ no_proxy
When HTTP_PROXY
/ http_proxy
are set, they will be used to proxy non-SSL requests that
do not have an explicit proxy
configuration option present. Similarly, HTTPS_PROXY
/
https_proxy
will be respected for SSL requests that do not have an explicit proxy
configuration option. It is valid to define a proxy in one of the environment variables, but then override it
for a specific request, using the proxy
configuration option. Furthermore, the proxy
configuration option can be explicitly set to false / null to opt out of proxying altogether for that request.
HLS Proxy
is also aware of the NO_PROXY
/no_proxy
environment variables.
These variables provide a granular way to opt out of proxying, on a per-host basis. It should contain a comma
separated list of hosts to opt out of proxying. It is also possible to opt of proxying when a particular
destination port is used. Finally, the variable may be set to *
to opt out of the implicit proxy
configuration of the other environment variables.
Here's some examples of valid no_proxy
values:
google.com
- don't proxy HTTP/HTTPS requests to Google.google.com:443
- don't proxy HTTPS requests to Google, but do proxy HTTP requests to
Google.
google.com:443, yahoo.com:80
- don't proxy HTTPS requests to Google, and don't proxy HTTP
requests to Yahoo!
*
- ignore https_proxy
/http_proxy
environment variables altogether.
По умолчанию, HLS-Proxy использует HTTP порт 80.
Можно изменить порт указывая его как параметр командной строки -port port_number.
Пример:
./hls-proxy -port 8080
Чтобы сохранить это в настройках добавьте параметр -save./hls-proxy -port 8080 -save
Чтобы получить информацию о всех параметрах командной строки:
./hls-proxy -help
./install.sh
Скрипт использует утилиту systemctl (systemd) чтобы запускать прокси как сервис при загрузке.sudo -H -u <user> <hls-proxy path>/hls-proxy &
Где:chmod 755 ./hls-proxy
После запуска доступны следующие ссылки для настройки и использования:
Если прокси выдает ошибку при старте "Cant start server: listen EADDRINUSE: address already in use"
означает, что http порт, который указан в конфигурации (или 80 по умолчанию) используется другим приложением. Измените порт из командной строки.
Детальное описание каждой из настроек смотрите на странице /config
Обратите внимание, что ТВ-программа недоступна несколько минут при самом первом запуске сервера, так как сначала она загружается из интернета.
Добавьте output=ts в качестве параметра в ссылку на плейлист или на поток
Пример: http://localhost/?output=ts
Преобразовать видео используя ffmpeg:
ffmpeg -i input.mkv -start_number 0 -hls_time 10 -hls_list_size 0 -hls_flags single_file -c copy -hls_segment_type mpegts -hls_allow_cache 0 index.m3u8index.m3u8 и index.ts положить в папку по пути
HLS-PROXY-DIR/recordings/VOD/VIDEO
В плеере ввести адрес плейлиста:
http://hls-proxy-address/rec
Новое видео класть по пути
/recordings/VOD/VIDEO1
VOD - будет названием группы в плейлисте
VIDEO - будет названием потока
Папки внутри recordings могут иметь любое название
Работает с версии 8.0.0
Следующие переменные окружения используются HLS Proxy
для указания HTTP proxy
HTTP_PROXY
/ http_proxy
HTTPS_PROXY
/ https_proxy
NO_PROXY
/ no_proxy
Когда HTTP_PROXY
/ http_proxy
указан, он будет использован для запросов non-SSL. Для SSL-запросов будет использоваться
HTTPS_PROXY
/https_proxy
HLS Proxy
также использует NO_PROXY
/no_proxy
для адресов, для которых прокси не должен использоваться.
Список хостов разделяется запятыми. Можно указывать и номер порта.
И, переменная может быть установлена в *
.
В этом случае прокси не используется.
Несколько примеров использования значений переменной no_proxy
:
google.com
- не использовать прокси для HTTP/HTTPS запросов к Google.google.com:443
- не использовать прокси для HTTPS запросов к Google, но использовать для HTTP запросов к Google.
google.com:443, yahoo.com:80
- исключить HTTPS запросы к Google, и HTTP запросы к Yahoo!
*
- игнорировать переменные https_proxy
/http_proxy
.
Por defecto, HLS-Proxy usa el puerto HTTP 80.
Puede cambiarlo pasando un parámetro de línea de comando -port número_puerto.
Ejemplo:
./hls-proxy -port 8080
Para guardarlo permanentemente agregue -save./hls-proxy -port 8080 -save
Para obtener información sobre todas las opciones de línea de comando:
./hls-proxy -help
./install.sh
Una secuencia de comandos de instalación utiliza systemctl (systemd) para ejecutar HLS-Proxy como un servicio en el arranque.sudo -H -u <user> <hls-proxy path>/hls-proxy &
Dónde:chmod 755 ./hls-proxy
Después del inicio de la aplicación, puede abrir los siguientes enlaces para ajustar un proxy:
Si obtiene un error al iniciar "Cant start server: listen EADDRINUSE: address already in use"
entonces otra aplicación usa el puerto http que especificó (u 80 por defecto). Cámbielo por línea de comando.
Descripción detallada de los ajustes que puede encontrar en la página web / config.
EPG no está disponible al inicio. Tardará unos minutos en descargar y analizar.
Agregue output=ts como parámetro de consulta a la lista de reproducción o URL del canal
Ejemplo: http://localhost/?output=ts
Convierta video usando ffmpeg:
ffmpeg -i input.mkv -start_number 0 -hls_time 10 -hls_list_size 0 -hls_flags single_file -c copy -hls_segment_type mpegts -hls_allow_cache 0 index.m3u8index.m3u8 e index.ts colocados en la carpeta a lo largo de la ruta
HLS-PROXY-DIR/recordings/VOD/VIDEO
Ingresa la dirección de la lista de reproducción en el reproductor:
http://hls-proxy-address/rec
Nuevo video en camino
/recordings/VOD/VIDEO1
VOD: será el nombre del grupo en la lista de reproducción
VIDEO: será el nombre de la transmisión
Las carpetas dentro de las grabaciones pueden tener cualquier nombre
Funciona desde 8.0.0
The following environment variables are respected by HLS Proxy
HTTP_PROXY
/ http_proxy
HTTPS_PROXY
/ https_proxy
NO_PROXY
/ no_proxy
Cuando HTTP_PROXY
/ http_proxy
están configurados, se utilizarán para proxy solicitudes no SSL que
no tienen un explicito
proxy
Opción de configuración actual. Similar, HTTPS_PROXY
/
https_proxy
será respetado para las solicitudes SSL que no tienen un explícitoproxy
Opción de configuración. Es válido definir un proxy en una de las variables de entorno, pero luego anularlo
para una solicitud específica, utilizando el proxy
Opción de configuración. Además, elproxy
la opción de configuración se puede establecer explícitamente en falso / nulo para optar por excluirse por completo de esa solicitud.
HLS Proxy
También es consciente de la NO_PROXY
/no_proxy
variables de entorno.
Estas variables proporcionan una forma granular de rechazar el envío de proxy, por host. Debe contener una coma
lista separada de hosts para optar por no enviar fuera del proxy. También es posible optar por proxy cuando un determinado
puerto de destino es utilizado. Finalmente, la variable se puede configurar para *
para optar por el proxy implícito
configuración de las demás variables de entorno.
Aquí hay algunos ejemplos de validez no_proxy
valores:
google.com
- no enviar solicitudes HTTP / HTTPS a Google.google.com:443
- no enviar solicitudes HTTPS a Google, pero hacer solicitudes HTTP de proxy para
Google.
google.com:443, yahoo.com:80
- no haga proxy solicitudes HTTPS a Google, y no haga proxy HTTP
a solicitudes hacia Yahoo!
*
- ignorar https_proxy
/http_proxy
variables de entorno en conjunto.