Compare commits
3 Commits
70e43f8359
...
bc0d964dc4
| Author | SHA1 | Date | |
|---|---|---|---|
| bc0d964dc4 | |||
| b24e3e6c02 | |||
| c8b5fd94e1 |
@@ -1,6 +1,6 @@
|
|||||||
live:
|
live:
|
||||||
|
@echo "Wait until container starts and open http://localhost:3000 to see live preview"
|
||||||
@docker run --rm -it -p 3000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material
|
@docker run --rm -it -p 3000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material
|
||||||
@echo "Open http://localhost:3000 to see live preview"
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
@docker run --rm -it -v ${PWD}:/docs squidfunk/mkdocs-material build -v
|
@docker run --rm -it -v ${PWD}:/docs squidfunk/mkdocs-material build -v
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
@@ -105,25 +105,13 @@ tags: ["сайт", "статусы", "каналы"]
|
|||||||
Поясню базовые принципы формирования адреса:
|
Поясню базовые принципы формирования адреса:
|
||||||
|
|
||||||
1. необязателен префикс протокола `http://` или `https://` перед доменом
|
1. необязателен префикс протокола `http://` или `https://` перед доменом
|
||||||
2. обязателен домен `iptv.axenov.dev` или `m3u.su`
|
2. обязателен домен `m3u.su`
|
||||||
3. обязателен `/код` плейлиста после домена
|
3. обязателен `/код` плейлиста после домена
|
||||||
4. необязателен постфикс расширения после кода `.m3u` или `.m3u8`
|
4. необязателен постфикс расширения после кода `.m3u` или `.m3u8`
|
||||||
|
|
||||||
На примере ниже я наглядно покажу все возможные ссылки на один и тот же плейлист с кодом `ru`:
|
На примере ниже я наглядно покажу все возможные ссылки на один и тот же плейлист с кодом `ru`:
|
||||||
|
|
||||||
```
|
```
|
||||||
https://iptv.axenov.dev/ru.m3u8
|
|
||||||
https://iptv.axenov.dev/ru.m3u
|
|
||||||
https://iptv.axenov.dev/ru
|
|
||||||
http://iptv.axenov.dev/ru.m3u8
|
|
||||||
http://iptv.axenov.dev/ru.m3u
|
|
||||||
http://iptv.axenov.dev/ru
|
|
||||||
iptv.axenov.dev/ru.m3u8
|
|
||||||
iptv.axenov.dev/ru.m3u
|
|
||||||
iptv.axenov.dev/ru
|
|
||||||
iptv.axenov.dev/ru.m3u8
|
|
||||||
iptv.axenov.dev/ru.m3u
|
|
||||||
iptv.axenov.dev/ru
|
|
||||||
https://m3u.su/ru.m3u8
|
https://m3u.su/ru.m3u8
|
||||||
https://m3u.su/ru.m3u
|
https://m3u.su/ru.m3u
|
||||||
https://m3u.su/ru
|
https://m3u.su/ru
|
||||||
@@ -133,9 +121,6 @@ http://m3u.su/ru
|
|||||||
m3u.su/ru.m3u8
|
m3u.su/ru.m3u8
|
||||||
m3u.su/ru.m3u
|
m3u.su/ru.m3u
|
||||||
m3u.su/ru
|
m3u.su/ru
|
||||||
m3u.su/ru.m3u8
|
|
||||||
m3u.su/ru.m3u
|
|
||||||
m3u.su/ru
|
|
||||||
```
|
```
|
||||||
|
|
||||||
!!! info ""
|
!!! info ""
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ tags: ["плееры"]
|
|||||||
|
|
||||||
Простой и удобный веб-плеер.
|
Простой и удобный веб-плеер.
|
||||||
Загрузка плейлиста по ссылкам или из файла, но только одного.
|
Загрузка плейлиста по ссылкам или из файла, но только одного.
|
||||||
В качестве тестового плейлиста всем известный (iptv.axenov.dev/sh)[https://iptv.axenov.dev/sh].
|
В качестве тестового плейлиста всем известный (m3u.su/sh)[https://m3u.su/sh/details].
|
||||||
Подгрузка и отображение телепрограммы (используется https://cdn.epg.one/epg2.xml).
|
Подгрузка и отображение телепрограммы (используется https://cdn.epg.one/epg2.xml).
|
||||||
|
|
||||||
??? quote "[Скриншот] Главное окно"
|
??? quote "[Скриншот] Главное окно"
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ make live
|
|||||||
|
|
||||||
Перегенерирует документацию на лету сразу после изменения файлов.
|
Перегенерирует документацию на лету сразу после изменения файлов.
|
||||||
|
|
||||||
Открывает [localhost:3000](https://localhost:3000) для просмотра изменений в реальном времени.
|
Открывает [localhost:3000](http://localhost:3000) для просмотра изменений в реальном времени.
|
||||||
|
|
||||||
## Генерация статических файлов
|
## Генерация статических файлов
|
||||||
|
|
||||||
@@ -86,7 +86,7 @@ make build
|
|||||||
|
|
||||||
Генерирует статические файлы, которую можно версионировать и хранить/деплоить отдельно.
|
Генерирует статические файлы, которую можно версионировать и хранить/деплоить отдельно.
|
||||||
|
|
||||||
Открывает [localhost:8080/docs](https://localhost:8080/docs) для просмотра сгенерированной документации.
|
Открывает [localhost:8080/docs](http://localhost:8080/docs) для просмотра сгенерированной документации.
|
||||||
|
|
||||||
Готовый скомпилированный статический сайт с документацией находится в директории `site/`.
|
Готовый скомпилированный статический сайт с документацией находится в директории `site/`.
|
||||||
Он же хранится в репозитории вместе с исходными файлами, потому что:
|
Он же хранится в репозитории вместе с исходными файлами, потому что:
|
||||||
|
|||||||
@@ -89,15 +89,27 @@ tags: ["сайт", "каналы", "плейлисты", "epg", "плееры",
|
|||||||
1. Из самого плейлиста.
|
1. Из самого плейлиста.
|
||||||
Часто в атрибут [`url-tvg`](formats/m3u.md#url-tvg) тега `#EXTM3U` указывают одну или две ссылки на EPG, разделяя их `;`.
|
Часто в атрибут [`url-tvg`](formats/m3u.md#url-tvg) тега `#EXTM3U` указывают одну или две ссылки на EPG, разделяя их `;`.
|
||||||
Их можно использовать отдельно, например, если плеер не может корректно обработать такое значение.
|
Их можно использовать отдельно, например, если плеер не может корректно обработать такое значение.
|
||||||
2. Взять одну из этих ссылок:
|
|
||||||
* `http://epg.it999.ru/edem.xml.gz`
|
2. Взять одну из этих ссылок:
|
||||||
* `http://iptv-content.webhop.net/guide.xml`
|
|
||||||
* `http://www.teleguide.info/download/new3/xmltv.xml.gz`
|
??? quote "Список"
|
||||||
* `https://ottepg.ru/ottepg.xml.gz`
|
* `http://epg.fox-tv.fun/1.xmltv`
|
||||||
* `http://stb.shara-tv.org/epg/epgtv.xml.gz`
|
* `http://epg.it999.ru/edem.xml.gz`
|
||||||
* `http://st.kineskop.tv/epg.xml.gz`
|
* `http://epg.lightiptv.cc/epg.xml.gz`
|
||||||
* `https://iptvx.one/epg/epg_lite.xml.gz`
|
* `http://epg.one/epg.xml.gz`
|
||||||
* `https://iptvx.one/epg/epg.xml.gz`
|
* `http://epg.team/tvteam.xml.7.2`
|
||||||
|
* `http://epg.team/tvteam.xml.gz`
|
||||||
|
* `http://programtv.ru/xmltv.xml.gz`
|
||||||
|
* `http://spacetv.in/api/epg.xml.gz`
|
||||||
|
* `http://www.teleguide.info/download/new3/xmltv.xml.gz`
|
||||||
|
* `https://bcumedia.pro/epg.xml.gz`
|
||||||
|
* `https://epg.fox-tv.fun/1.xmltv`
|
||||||
|
* `https://filmax-tv.ru/epg.xml.gz`
|
||||||
|
* `https://iptvx.one/epg/epg_lite.xml.gz`
|
||||||
|
* `https://iptvx.one/epg/epg.xml.gz`
|
||||||
|
* `https://klimedia.space/epg.xml.gz`
|
||||||
|
* `https://list.satfor.pro/f/epg.xml.gz`
|
||||||
|
|
||||||
3. Найти другие здесь:
|
3. Найти другие здесь:
|
||||||
* `https://iptvx.one/viewtopic.php?f=12&t=4`
|
* `https://iptvx.one/viewtopic.php?f=12&t=4`
|
||||||
* `https://iptvmaster.ru/epg-for-iptv`
|
* `https://iptvmaster.ru/epg-for-iptv`
|
||||||
|
|||||||
@@ -8,8 +8,7 @@ icon: material/home
|
|||||||
Они отбираются вручную и периодически проверяются автоматически.
|
Они отбираются вручную и периодически проверяются автоматически.
|
||||||
|
|
||||||
!!! info "Все необходимые адреса"
|
!!! info "Все необходимые адреса"
|
||||||
**Веб-сайт:** [iptv.axenov.dev](https://iptv.axenov.dev)
|
**Веб-сайт:** [m3u.su](https://m3u.su)
|
||||||
**Зеркало:** [m3u.su](https://m3u.su)
|
|
||||||
Исходный код: [git.axenov.dev/IPTV](https://git.axenov.dev/IPTV)
|
Исходный код: [git.axenov.dev/IPTV](https://git.axenov.dev/IPTV)
|
||||||
Новостной канал: [@iptv_aggregator](https://t.me/iptv_aggregator)
|
Новостной канал: [@iptv_aggregator](https://t.me/iptv_aggregator)
|
||||||
Обсуждение: [@iptv_aggregator_chat](tg/chat.md)
|
Обсуждение: [@iptv_aggregator_chat](tg/chat.md)
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ tags: ["iptvc"]
|
|||||||
Вывод (может незначительно отличаться в разных версиях):
|
Вывод (может незначительно отличаться в разных версиях):
|
||||||
|
|
||||||
```
|
```
|
||||||
Simple utility to check iptv playlists. Part of iptv.axenov.dev project.
|
Simple utility to check iptv playlists. Part of m3u.su project.
|
||||||
Copyright (c) 2025, Антон Аксенов, MIT license.
|
Copyright (c) 2025, Антон Аксенов, MIT license.
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|||||||