Merge branch 'master' of https://github.com/iptv-org/iptv into be-maintenance

This commit is contained in:
theofficialomega 2025-08-02 00:26:29 +02:00
commit fbc9330ede
31 changed files with 6120 additions and 6375 deletions

3
.gitattributes vendored
View File

@ -1 +1,2 @@
* text eol=crlf * text eol=crlf
*.png -text

View File

@ -40,7 +40,7 @@ jobs:
run: npm run playlist:generate run: npm run playlist:generate
- name: generate .api/streams.json - name: generate .api/streams.json
run: npm run api:generate run: npm run api:generate
- name: update readme.md - name: update readme
run: npm run readme:update run: npm run readme:update
- run: git status - run: git status
- name: commit changes to /streams - name: commit changes to /streams
@ -48,11 +48,11 @@ jobs:
git add streams git add streams
git status git status
git commit --allow-empty -m "[Bot] Update /streams" -m "Committed by [iptv-bot](https://github.com/apps/iptv-bot) via [update](https://github.com/iptv-org/iptv/actions/runs/${{ github.run_id }}) workflow." -m "${{ steps.playlist-update.outputs.OUTPUT }}" --no-verify git commit --allow-empty -m "[Bot] Update /streams" -m "Committed by [iptv-bot](https://github.com/apps/iptv-bot) via [update](https://github.com/iptv-org/iptv/actions/runs/${{ github.run_id }}) workflow." -m "${{ steps.playlist-update.outputs.OUTPUT }}" --no-verify
- name: commit changes to readme.md - name: commit changes to playlists.md
run: | run: |
git add README.md git add PLAYLISTS.md
git status git status
git commit --allow-empty -m "[Bot] Update README.md" -m "Committed by [iptv-bot](https://github.com/apps/iptv-bot) via [update](https://github.com/iptv-org/iptv/actions/runs/${{ github.run_id }}) workflow." --no-verify git commit --allow-empty -m "[Bot] Update PLAYLISTS.md" -m "Committed by [iptv-bot](https://github.com/apps/iptv-bot) via [update](https://github.com/iptv-org/iptv/actions/runs/${{ github.run_id }}) workflow." --no-verify
- name: push all changes to the repository - name: push all changes to the repository
if: ${{ !env.ACT && github.ref == 'refs/heads/master' }} if: ${{ !env.ACT && github.ref == 'refs/heads/master' }}
run: git push run: git push

View File

@ -1,4 +1,4 @@
{ {
"build" : "README.md", "build" : "PLAYLISTS.md",
"files" : ["./.readme/template.md"] "files" : ["./.readme/template.md"]
} }

View File

@ -1,39 +1,7 @@
# IPTV [![update](https://github.com/iptv-org/iptv/actions/workflows/update.yml/badge.svg)](https://github.com/iptv-org/iptv/actions/workflows/update.yml)
Collection of publicly available IPTV (Internet Protocol television) channels from all over the world.
## Table of contents
- 🚀 [How to use?](#how-to-use)
- 📺 [Playlists](#playlists)
- 🗓 [EPG](#epg)
- 🗄 [Database](#database)
- 👨‍💻 [API](#api)
- 📚 [Resources](#resources)
- 💬 [Discussions](#discussions)
- ❓ [FAQ](#faq)
- 🛠 [Contribution](#contribution)
- ⚖ [Legal](#legal)
- © [License](#license)
## How to use?
Simply insert one of the links below into [any video player](https://github.com/iptv-org/awesome-iptv#apps) that supports live streaming and press _Open_.
![VLC Network Panel](https://github.com/iptv-org/iptv/raw/master/.readme/preview.png)
## Playlists ## Playlists
There are several versions of playlists that differ in the way they are grouped. As of January 30th, 2024, we have stopped distributing NSFW channels. For more information, please look at [this issue](https://github.com/iptv-org/iptv/issues/15723). There are several versions of playlists that differ in the way they are grouped. As of January 30th, 2024, we have stopped distributing NSFW channels. For more information, please look at [this issue](https://github.com/iptv-org/iptv/issues/15723).
### Main playlist
This playlist includes all known channels available in this repository.
```
https://iptv-org.github.io/iptv/index.m3u
```
### Grouped by category ### Grouped by category
Playlists in which channels are grouped by category. Playlists in which channels are grouped by category.
@ -144,49 +112,3 @@ Also, any of our internal playlists are available in raw form (without any filte
``` ```
https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u
``` ```
## EPG
[Electronic Program Guide](https://en.wikipedia.org/wiki/Electronic_program_guide) for most of the channels can be downloaded using utilities published in the [iptv-org/epg](https://github.com/iptv-org/epg) repository.
## Database
All channel data is taken from the [iptv-org/database](https://github.com/iptv-org/database) repository. If you find any errors please open a new [issue](https://github.com/iptv-org/database/issues) there.
## API
The API documentation can be found in the [iptv-org/api](https://github.com/iptv-org/api) repository.
## Resources
Links to other useful IPTV-related resources can be found in the [iptv-org/awesome-iptv](https://github.com/iptv-org/awesome-iptv) repository.
## Discussions
If you need help finding a channel, have a question or idea, welcome to the [Discussions](https://github.com/orgs/iptv-org/discussions).
## FAQ
The answers to the most popular questions can be found in the [FAQ.md](FAQ.md) file.
## Contribution
Please make sure to read the [Contributing Guide](CONTRIBUTING.md) before sending an issue or making a pull request.
And thank you to everyone who has already contributed!
### Backers
<a href="https://opencollective.com/iptv-org"><img src="https://opencollective.com/iptv-org/backers.svg?width=890" /></a>
### Contributors
<a href="https://github.com/iptv-org/iptv/graphs/contributors"><img src="https://opencollective.com/iptv-org/contributors.svg?width=890" /></a>
## Legal
No video files are stored in this repository. The repository simply contains user-submitted links to publicly available video stream URLs, which to the best of our knowledge have been intentionally made publicly by the copyright holders. If any links in these playlists infringe on your rights as a copyright holder, they may be removed by sending a [pull request](https://github.com/iptv-org/iptv/pulls) or opening an [issue](https://github.com/iptv-org/iptv/issues/new?assignees=freearhey&labels=removal+request&template=--removal-request.yml&title=Remove%3A+). However, note that we have **no control** over the destination of the link, and just removing the link from the playlist will not remove its contents from the web. Note that linking does not directly infringe copyright because no copy is made on the site providing the link, and thus this is **not** a valid reason to send a DMCA notice to GitHub. To remove this content from the web, you should contact the web host that's actually hosting the content (**not** GitHub, nor the maintainers of this repository).
## License
[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](LICENSE)

View File

@ -163,14 +163,15 @@ http://example.com/stream.m3u8
- `workflows`: contains [GitHub actions](https://docs.github.com/en/actions/quickstart) workflows. - `workflows`: contains [GitHub actions](https://docs.github.com/en/actions/quickstart) workflows.
- `CODE_OF_CONDUCT.md`: rules you shouldn't break if you don't want to get banned. - `CODE_OF_CONDUCT.md`: rules you shouldn't break if you don't want to get banned.
- `.readme/` - `.readme/`
- `config.json`: config for the `markdown-include` package, which is used to compile everything into one `README.md` file. - `config.json`: config for the `markdown-include` package, which is used to compile everything into one `PLAYLISTS.md` file.
- `preview.png`: image displayed in the `README.md`. - `preview.png`: image displayed in the `README.md`.
- `template.md`: template for `README.md`. - `template.md`: template for `PLAYLISTS.md`.
- `scripts/`: contains all scripts used in the repository. - `scripts/`: contains all scripts used in the repository.
- `streams/`: contains all streams broken down by the country from which they are broadcast. - `streams/`: contains all streams broken down by the country from which they are broadcast.
- `tests/`: contains tests to check the scripts. - `tests/`: contains tests to check the scripts.
- `CONTRIBUTING.md`: file you are currently reading. - `CONTRIBUTING.md`: file you are currently reading.
- `README.md`: project description generated from the contents of the `.readme/` folder. - `PLAYLISTS.md`: auto-updated list of available playlists.
- `README.md`: project description.
## Scripts ## Scripts

6020
PLAYLISTS.md Normal file

File diff suppressed because it is too large Load Diff

6025
README.md

File diff suppressed because it is too large Load Diff

View File

@ -24,10 +24,10 @@ async function main() {
logger.info('creating region table...') logger.info('creating region table...')
await new RegionTable().make() await new RegionTable().make()
logger.info('updating readme.md...') logger.info('updating playlists.md...')
const configPath = path.join(README_DIR, 'config.json') const configPath = path.join(README_DIR, 'config.json')
const readme = new Markdown(configPath) const playlists = new Markdown(configPath)
readme.compile() playlists.compile()
} }
main() main()

View File

@ -8,3 +8,4 @@ export const LOGS_DIR = process.env.LOGS_DIR || './temp/logs'
export const TESTING = process.env.NODE_ENV === 'test' ? true : false export const TESTING = process.env.NODE_ENV === 'test' ? true : false
export const OWNER = 'iptv-org' export const OWNER = 'iptv-org'
export const REPO = 'iptv' export const REPO = 'iptv'
export const EOL = '\r\n'

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Category, Playlist } from '../models' import { Stream, Category, Playlist } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type CategoriesGeneratorProps = { type CategoriesGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Country, Stream, Playlist } from '../models' import { Country, Stream, Playlist } from '../models'
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type CountriesGeneratorProps = { type CountriesGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Playlist, Category } from '../models' import { Stream, Playlist, Category } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexCategoryGeneratorProps = { type IndexCategoryGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Playlist, Country } from '../models' import { Stream, Playlist, Country } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexCountryGeneratorProps = { type IndexCountryGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, File, Storage } from '@freearhey/core' import { Collection, File, Storage } from '@freearhey/core'
import { Stream, Playlist } from '../models' import { Stream, Playlist } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexGeneratorProps = { type IndexGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Playlist, Language } from '../models' import { Stream, Playlist, Language } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexLanguageGeneratorProps = { type IndexLanguageGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, File, Storage } from '@freearhey/core' import { Collection, File, Storage } from '@freearhey/core'
import { Stream, Playlist } from '../models' import { Stream, Playlist } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexNsfwGeneratorProps = { type IndexNsfwGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Playlist, Region } from '../models' import { Stream, Playlist, Region } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type IndexRegionGeneratorProps = { type IndexRegionGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Playlist, Language, Stream } from '../models' import { Playlist, Language, Stream } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type LanguagesGeneratorProps = { streams: Collection; logFile: File } type LanguagesGeneratorProps = { streams: Collection; logFile: File }

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Stream, Playlist } from '../models' import { Stream, Playlist } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type RawGeneratorProps = { type RawGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { Playlist, Region, Stream } from '../models' import { Playlist, Region, Stream } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type RegionsGeneratorProps = { type RegionsGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Collection, Storage, File, type Dictionary } from '@freearhey/core' import { Collection, Storage, File, type Dictionary } from '@freearhey/core'
import { Stream, Playlist } from '../models' import { Stream, Playlist } from '../models'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type SourcesGeneratorProps = { type SourcesGeneratorProps = {
streams: Collection streams: Collection

View File

@ -1,8 +1,7 @@
import { Subdivision, Stream, Playlist } from '../models' import { Subdivision, Stream, Playlist } from '../models'
import { Collection, Storage, File } from '@freearhey/core' import { Collection, Storage, File } from '@freearhey/core'
import { PUBLIC_DIR } from '../constants' import { PUBLIC_DIR, EOL } from '../constants'
import { Generator } from './generator' import { Generator } from './generator'
import { EOL } from 'node:os'
type SubdivisionsGeneratorProps = { type SubdivisionsGeneratorProps = {
streams: Collection streams: Collection

View File

@ -3,53 +3,23 @@
https://albportal.net/albkanalemusic.m3u8 https://albportal.net/albkanalemusic.m3u8
#EXTINF:-1 tvg-id="CNA.al",CNA (1080p) #EXTINF:-1 tvg-id="CNA.al",CNA (1080p)
https://live1.mediadesk.al/cnatvlive.m3u8 https://live1.mediadesk.al/cnatvlive.m3u8
#EXTINF:-1 tvg-id="FolkloritTV.al",Folklorit TV (1080p) [Not 24/7] #EXTINF:-1 tvg-id="MCNTV.al" http-referrer="https://mcn24.tv/hls/" http-user-agent="Mozilla/5.0",MCN TV (720p)
https://vs.sednastream.com:1936/folklorit/folklorit/playlist.m3u8 #EXTVLCOPT:http-referrer=https://mcn24.tv/hls/
#EXTINF:-1 tvg-id="MCNTV.al",MCN TV (1080p) [Not 24/7] #EXTVLCOPT:http-user-agent=Mozilla/5.0
http://141.95.145.70:8088/hls/mcn.m3u8 https://mcn24.tv/hidden_stream/mcntv.m3u8
#EXTINF:-1 tvg-id="News24.al",News 24 (392p) [Not 24/7] #EXTINF:-1 tvg-id="News24.al",News 24 (392p) [Not 24/7]
https://tv.balkanweb.com/news24/livestream/playlist.m3u8 https://tv.balkanweb.com/news24/livestream/playlist.m3u8
#EXTINF:-1 tvg-id="News24.al",News 24 Albania (392p) #EXTINF:-1 tvg-id="News24.al",News 24 Albania (392p)
http://tv.balkanweb.com:8081/news24/livestream/playlist.m3u8 http://tv.balkanweb.com:8081/news24/livestream/playlist.m3u8
#EXTINF:-1 tvg-id="OraNews.al",Ora News (720p) #EXTINF:-1 tvg-id="OraNews.al",Ora News (720p)
https://live1.mediadesk.al/oranews.m3u8 https://live1.mediadesk.al/oranews.m3u8
#EXTINF:-1 tvg-id="PanoramaTV.al",Panorama TV (720p) [Not 24/7] #EXTINF:-1 tvg-id="PanoramaTV.al",Panorama TV (720p)
http://198.244.188.94/panorama/livestream/playlist.m3u8 https://tv.panorama.com.al/panorama/livestream/playlist.m3u8
#EXTINF:-1 tvg-id="ReportTV.al",Report TV (720p) #EXTINF:-1 tvg-id="ReportTV.al",Report TV (720p)
https://deb10stream.duckdns.org/hls/stream.m3u8 https://deb10stream.duckdns.org/hls/stream.m3u8
#EXTINF:-1 tvg-id="Syri.al",Syri (720p) [Not 24/7]
https://stream.syritv.al/SyriTV/index.m3u8
#EXTINF:-1 tvg-id="TopChannel.al",Top News (720p)
https://trueodin.serv00.net/?t=topnewsal
#EXTINF:-1 tvg-id="TropojaTelevizion.al",Tropoja TV (1080p)
https://live.prostream.al/al/smil:tropojatv.smil/playlist.m3u8
#EXTINF:-1 tvg-id="VizionPlus.al",Vizion Plus (1080p) #EXTINF:-1 tvg-id="VizionPlus.al",Vizion Plus (1080p)
https://fe.tring.al/delta/105/out/u/rdghfhsfhfshs.m3u8 https://tringliveviz.akamaized.net/delta/105/out/u/qwaszxerdfcvrtryuy.m3u8
#EXTINF:-1 tvg-id="ZjarrTV.al",Zjarr TV (720p) [Not 24/7] #EXTINF:-1 tvg-id="ZjarrTV.al",Zjarr TV (360p)
https://cdn.jwplayer.com/live/events/r2qgHu7W.m3u8 https://zjarr.future.al/hls/playlist.m3u8
#EXTINF:-1 tvg-id="EuronewsAlbania.al",Euronews Albania #EXTINF:-1 tvg-id="EuronewsAlbania.al",Euronews Albania
https://gjirafa-video-live.gjirafa.net/gjvideo-live/2dw-zuf-1c9-pxu/index.m3u8 https://gjirafa-video-live.gjirafa.net/gjvideo-live/2dw-zuf-1c9-pxu/index.m3u8
#EXTINF:-1 tvg-id="3Plus.al",3 Plus (1080i)
http://77.83.120.135:8001/play/a19e
#EXTINF:-1 tvg-id="KlanPlus.al",Klan Plus (1080i)
http://77.83.120.135:8001/play/a0w9
#EXTINF:-1 tvg-id="RTSHMuzike.al",RTSH Muzike (576i)
http://77.83.120.135:8001/play/a1a0
#EXTINF:-1 tvg-id="FaxNews.al",Fax News (576i)
http://77.83.120.135:8001/play/FaxNews
#EXTINF:-1 tvg-id="RTSH24.al",RTSH 24 (1080i)
http://77.83.120.135:8001/play/RTSH24
#EXTINF:-1 tvg-id="ABCNews.al",ABC News (1080i)
http://77.83.120.135:8001/play/a00c
#EXTINF:-1 tvg-id="TVKlan.al",TV Klan (1080i)
http://77.83.120.135:8001/play/a16b
#EXTINF:-1 tvg-id="RTSHShqip.al",RTSH Shqip (576i)
http://77.83.120.135:8001/play/a19y
#EXTINF:-1 tvg-id="Syri.al",Syri (720p)
http://77.83.120.135:8001/play/Sportalb
#EXTINF:-1 tvg-id="Syri.al",Syri (720p)
http://77.83.120.135:8001/play/SyriTV
#EXTINF:-1 tvg-id="RTSHShqip.al",RTSH Shqip (576i)
http://77.83.120.135:8001/play/a10m
#EXTINF:-1 tvg-id="RTSH3.al",RTSH 3 (576i)
http://77.83.120.135:8001/play/a0qo

View File

@ -87,6 +87,8 @@ https://58a4464faef53.streamlock.net/impd/ngrp:impd_all/playlist.m3u8
https://stmv1.srvstm.com/sistema7933/sistema7933/playlist.m3u8 https://stmv1.srvstm.com/sistema7933/sistema7933/playlist.m3u8
#EXTINF:-1 tvg-id="JovemPanNews.br",Jovem Pan News (JP News) (1080p) [Not 24/7] #EXTINF:-1 tvg-id="JovemPanNews.br",Jovem Pan News (JP News) (1080p) [Not 24/7]
https://d6yfbj4xxtrod.cloudfront.net/out/v1/7836eb391ec24452b149f3dc6df15bbd/index.m3u8 https://d6yfbj4xxtrod.cloudfront.net/out/v1/7836eb391ec24452b149f3dc6df15bbd/index.m3u8
#EXTINF:-1 tvg-id="KanadeBrasil.pt",Kanade Brasil (1080p)
https://backend.energeek.cl/webtv/kanadebr/index.m3u8?token=deM0kanADeweB
#EXTINF:-1 tvg-id="KuriakosCine.pt",Kuriakos Cine (1080p) #EXTINF:-1 tvg-id="KuriakosCine.pt",Kuriakos Cine (1080p)
https://w2.manasat.com/kcine/smil:kcine.smil/playlist.m3u8 https://w2.manasat.com/kcine/smil:kcine.smil/playlist.m3u8
#EXTINF:-1 tvg-id="KuriakosKids.pt",Kuriakos Kids (1080p) #EXTINF:-1 tvg-id="KuriakosKids.pt",Kuriakos Kids (1080p)

View File

@ -471,8 +471,8 @@ https://vdo1.streamgato.us:3046/live/tvhigueycanal12live.m3u8
https://host.streamingnation.live/p/3780/live/tvluzlive.m3u8 https://host.streamingnation.live/p/3780/live/tvluzlive.m3u8
#EXTINF:-1 tvg-id="TVMontanaCanal10.do",TV Montaña Canal 10 (1080p) #EXTINF:-1 tvg-id="TVMontanaCanal10.do",TV Montaña Canal 10 (1080p)
https://ss5.domint.net:3064/tvm_str/montanatv/playlist.m3u8 https://ss5.domint.net:3064/tvm_str/montanatv/playlist.m3u8
#EXTINF:-1 tvg-id="TVN24.do",TV N24 (720p) #EXTINF:-1 tvg-id="TVN24.do@SD",TVN24 (720p)
https://ss5.domint.net:3032/vozz_str/vozzmedia/playlist.m3u8 https://ss2.tvrdomi.com:1936/vozzmedianetwork/vozzmedianetwork/playlist.m3u8
#EXTINF:-1 tvg-id="TVPlata.do@SD",TV Plata (720p) [Geo-blocked] #EXTINF:-1 tvg-id="TVPlata.do@SD",TV Plata (720p) [Geo-blocked]
https://ss2.tvrdomi.com:1936/tvplata/tvplata/playlist.m3u8 https://ss2.tvrdomi.com:1936/tvplata/tvplata/playlist.m3u8
#EXTINF:-1 tvg-id="TVQuisqueya.us@SD",TV QUISQUEYA (720p) #EXTINF:-1 tvg-id="TVQuisqueya.us@SD",TV QUISQUEYA (720p)

View File

@ -675,30 +675,6 @@ https://rtmp-live-ingest-us-east-1-universe-dacast-com.akamaized.net/transmuxv1/
http://77.83.120.135:8001/play/a11n http://77.83.120.135:8001/play/a11n
#EXTINF:-1 tvg-id="Rai1.it@HD",Rai 1 HD (720p) #EXTINF:-1 tvg-id="Rai1.it@HD",Rai 1 HD (720p)
http://77.83.120.135:8001/play/a11c http://77.83.120.135:8001/play/a11c
#EXTINF:-1 tvg-id="Rai3.it@HD",Rai 3
https://ilglobotv-live.akamaized.net/channels/RAI3/Live.m3u8
#EXTINF:-1 tvg-id="Rai2.it@HD",Rai 2 HD
https://ilglobotv-live.akamaized.net/channels/RAI2/Live.m3u8
#EXTINF:-1 tvg-id="Rai1.it@HD",Rai 1 HD
https://ilglobotv-live.akamaized.net/channels/RAI1/Live.m3u8
#EXTINF:-1 tvg-id="RaiItalia.it@Americas",Rai Italia Americas
https://ilglobotv-live.akamaized.net/channels/RAIItaliaSudAmerica/Live.m3u8
#EXTINF:-1 tvg-id="RaiItalia.it@EuropeAfrica",Rai Italia
https://ilglobotv-live.akamaized.net/channels/RAIItaliaSudAfrica/Live.m3u8
#EXTINF:-1 tvg-id="RaiItalia.it@Australia",Rai Italia Australia
https://ilglobotv-live.akamaized.net/channels/RAIItaliaAustralia/Live.m3u8
#EXTINF:-1 tvg-id="RaiWorldPremium.it",Rai World Premium
https://ilglobotv-live.akamaized.net/channels/RAIPremium/Live.m3u8
#EXTINF:-1 tvg-id="RaiNews24.it",Rai News 24
https://ilglobotv-live.akamaized.net/channels/RAINews24/Live.m3u8
#EXTINF:-1 tvg-id="Telenord.it",Telenord
https://64b16f23efbee.streamlock.net/telenord/telenord/playlist.m3u8
#EXTINF:-1 tvg-id="InterTV.it",Inter TV
https://ilglobotv-live.akamaized.net/channels/InterTV/Live.m3u8
#EXTINF:-1 tvg-id="LA7.it",LA7
https://ilglobotv-live.akamaized.net/channels/La7Italia/Live.m3u8
#EXTINF:-1 tvg-id="MediasetItalia.it",Mediaset Italia
https://ilglobotv-live.akamaized.net/channels/MediasetItalia/Live.m3u8
#EXTINF:-1 tvg-id="ItalianFishingTV.it@SD",Italian Fishing TV #EXTINF:-1 tvg-id="ItalianFishingTV.it@SD",Italian Fishing TV
https://fms.premio.link/fishingtv/playlist.m3u8 https://fms.premio.link/fishingtv/playlist.m3u8
#EXTINF:-1 tvg-id="LiraTV.it@SD",Lira TV #EXTINF:-1 tvg-id="LiraTV.it@SD",Lira TV

View File

@ -9,9 +9,9 @@ https://cdn3.skygo.mn/live/disk1/Ekh_Oron/HLSv3-FTA/Ekh_Oron.m3u8
https://cdn3.skygo.mn/live/disk1/Dreambox/HLSv3-FTA/Dreambox.m3u8 https://cdn3.skygo.mn/live/disk1/Dreambox/HLSv3-FTA/Dreambox.m3u8
#EXTINF:-1 tvg-id="EagleNews.mn",Eagle News HD (720p) #EXTINF:-1 tvg-id="EagleNews.mn",Eagle News HD (720p)
https://cdn2.skygo.mn/live/disk1/Eagle/HLSv3-FTA/Eagle.m3u8 https://cdn2.skygo.mn/live/disk1/Eagle/HLSv3-FTA/Eagle.m3u8
#EXTINF:-1 tvg-id="",Education (1080p) #EXTINF:-1 tvg-id="EdutainmentTV.mn",Education (1080p)
https://cdn3.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd https://cdn3.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd
#EXTINF:-1 tvg-id="",Education (1080p) #EXTINF:-1 tvg-id="EdutainmentTV.mn",Education (1080p)
https://cdn3.skygo.mn/live/disk1/Education/HLS-FTA/Education.m3u8 https://cdn3.skygo.mn/live/disk1/Education/HLS-FTA/Education.m3u8
#EXTINF:-1 tvg-id="ETV.mn",ETV (720p) #EXTINF:-1 tvg-id="ETV.mn",ETV (720p)
https://cdn3.skygo.mn/live/disk1/ETV/HLSv3-FTA/ETV.m3u8 https://cdn3.skygo.mn/live/disk1/ETV/HLSv3-FTA/ETV.m3u8
@ -30,15 +30,23 @@ https://cdn3.skygo.mn/live/disk1/MNBSport/DASH-FTA/MNBSport.mpd
#EXTINF:-1 tvg-id="MNBSport.mn",MNB Sport (1080p) #EXTINF:-1 tvg-id="MNBSport.mn",MNB Sport (1080p)
https://live.mnb.mn/hls/mnb_sport.stream.m3u8 https://live.mnb.mn/hls/mnb_sport.stream.m3u8
#EXTINF:-1 tvg-id="MNBWorld.mn",MNB World (1080p) #EXTINF:-1 tvg-id="MNBWorld.mn",MNB World (1080p)
https://cdn3.skygo.mn/live/disk1/MNB_World/HLS-FTA/MNB_World.m3u8
#EXTINF:-1 tvg-id="MNBWorld.mn",MNB World (576p)
https://live.mnb.mn/hls/mnb_world.stream.m3u8 https://live.mnb.mn/hls/mnb_world.stream.m3u8
#EXTINF:-1 tvg-id="",MNB Гэр бүл (1080p) #EXTINF:-1 tvg-id="",MNB Гэр бүл (1080p) [Not 24/7]
https://cdn3.skygo.mn/live/disk1/MNB_Family/HLS-FTA/MNB_Family.m3u8
#EXTINF:-1 tvg-id="",MNB Гэр бүл (576p)
https://live.mnb.mn/hls/mnb_family.stream.m3u8 https://live.mnb.mn/hls/mnb_family.stream.m3u8
#EXTINF:-1 tvg-id="MNBMongoliinMedee.mn",MNB Монголын Мэдээ (1080p) #EXTINF:-1 tvg-id="MNBMongoliinMedee.mn",MNB Монголын Мэдээ (1080p)
https://cdn3.skygo.mn/live/disk1/MNB2/DASH-FTA/MNB2.mpd https://cdn3.skygo.mn/live/disk1/MNB2/DASH-FTA/MNB2.mpd
#EXTINF:-1 tvg-id="MNBMongoliinMedee.mn",MNB Монголын Мэдээ (720p)
https://cdn3.skygo.mn/live/disk1/MNB2/HLS-FTA/MNB2.m3u8
#EXTINF:-1 tvg-id="MNBMongoliinMedee.mn",MNB Монголын Мэдээ (576p) #EXTINF:-1 tvg-id="MNBMongoliinMedee.mn",MNB Монголын Мэдээ (576p)
https://live.mnb.mn/hls/mn2.stream.m3u8 https://live.mnb.mn/hls/mn2.stream.m3u8
#EXTINF:-1 tvg-id="MovieBox.mn",MovieBox (720p) #EXTINF:-1 tvg-id="MovieBox.mn",MovieBox (720p)
https://cdn3.skygo.mn/live/disk1/Moviebox/HLS-FTA/Moviebox.m3u8 https://cdn3.skygo.mn/live/disk1/Moviebox/HLS-FTA/Moviebox.m3u8
#EXTINF:-1 tvg-id="AsianBox.mn",AsianBox (720p)
https://cdn3.skygo.mn/live/disk1/AsianBOX/HLS-FTA/AsianBOX.m3u8
#EXTINF:-1 tvg-id="NTV.mn",NTV (1080p) #EXTINF:-1 tvg-id="NTV.mn",NTV (1080p)
https://cdn2.skygo.mn/live/disk1/NTVHD/DASH-FTA/NTVHD.mpd https://cdn2.skygo.mn/live/disk1/NTVHD/DASH-FTA/NTVHD.mpd
#EXTINF:-1 tvg-id="NTV.mn",NTV (720p) #EXTINF:-1 tvg-id="NTV.mn",NTV (720p)
@ -51,6 +59,8 @@ https://cdn2.skygo.mn/live/disk1/SBN/HLSv3-FTA/SBN.m3u8
https://cdn2.skygo.mn/live/disk1/Star/DASH-FTA/Star.mpd https://cdn2.skygo.mn/live/disk1/Star/DASH-FTA/Star.mpd
#EXTINF:-1 tvg-id="StarTV.mn",Star TV (720p) #EXTINF:-1 tvg-id="StarTV.mn",Star TV (720p)
https://cdn2.skygo.mn/live/disk1/Star/HLS-FTA/Star.m3u8 https://cdn2.skygo.mn/live/disk1/Star/HLS-FTA/Star.m3u8
#EXTINF:-1 tvg-id="TMTV.mn",TM TV (720p)
https://cdn3.skygo.mn/live/disk1/TM/HLS-FTA/TM.m3u8
#EXTINF:-1 tvg-id="TV5.mn",TV5 (1080p) #EXTINF:-1 tvg-id="TV5.mn",TV5 (1080p)
https://10st.vcast.im/MYASIATV/TV5/playlist.m3u8 https://10st.vcast.im/MYASIATV/TV5/playlist.m3u8
#EXTINF:-1 tvg-id="TV5.mn",TV5 (720p) #EXTINF:-1 tvg-id="TV5.mn",TV5 (720p)
@ -63,5 +73,41 @@ https://cdn2.skygo.mn/live/disk1/TV9HD/HLS-FTA/TV9HD.m3u8
https://cdn3.skygo.mn/live/disk1/UBSHD/DASH-FTA/UBSHD.mpd https://cdn3.skygo.mn/live/disk1/UBSHD/DASH-FTA/UBSHD.mpd
#EXTINF:-1 tvg-id="UBS.mn",UBS (720p) #EXTINF:-1 tvg-id="UBS.mn",UBS (720p)
https://cdn3.skygo.mn/live/disk1/UBSHD/HLS-FTA/UBSHD.m3u8 https://cdn3.skygo.mn/live/disk1/UBSHD/HLS-FTA/UBSHD.m3u8
#EXTINF:-1 tvg-id="TMTV.mn",TM TV (720p) #EXTINF:-1 tvg-id="Channel11.mn",Channel 11 (720p)
https://cdn3.skygo.mn/live/disk1/TM/HLS-FTA/TM.m3u8 https://cdn3.skygo.mn/live/disk1/Channel11/HLS-FTA/Channel11.m3u8
#EXTINF:-1 tvg-id="",TV7 (720p)
https://cdn3.skygo.mn/live/disk1/TV7/HLS-FTA/TV7.m3u8
#EXTINF:-1 tvg-id="TenGerTV.mn",TenGer TV (720p)
https://cdn3.skygo.mn/live/disk1/VTV/HLS-FTA/VTV.m3u8
#EXTINF:-1 tvg-id="MongolianNewsChannel.mn",MNC (720p)
https://cdn3.skygo.mn/live/disk1/MNCTV/HLS-FTA/MNCTV.m3u8
#EXTINF:-1 tvg-id="MalchinTV.mn",Malchin TV (720p)
https://cdn3.skygo.mn/live/disk1/Malchin/HLS-FTA/Malchin.m3u8
#EXTINF:-1 tvg-id="SuldTV.mn",Suld TV (720p)
https://cdn3.skygo.mn/live/disk1/SuldTV/HLS-FTA/SuldTV.m3u8
#EXTINF:-1 tvg-id="UlziiTV.mn",Өлзий ТВ (720p)
https://cdn3.skygo.mn/live/disk1/UlziiTV/HLS-FTA/UlziiTV.m3u8
#EXTINF:-1 tvg-id="SoyonGegeeruulegchTV.mn",Соён Гэгээрүүлэгч (720p)
https://cdn3.skygo.mn/live/disk1/SoyonGegeeruulegch/HLS-FTA/SoyonGegeeruulegch.m3u8
#EXTINF:-1 tvg-id="GTV.mn",Gandan TV (720p)
https://cdn3.skygo.mn/live/disk1/GTV/HLS-FTA/GTV.m3u8
#EXTINF:-1 tvg-id="",Хөгжим (720p)
https://cdn3.skygo.mn/live/disk1/Khugjim/HLS-FTA/Khugjim.m3u8
#EXTINF:-1 tvg-id="ParliamentTV.mn",Parliament TV (720p)
https://cdn3.skygo.mn/live/disk1/Parlament/HLS-FTA/Parlament.m3u8
#EXTINF:-1 tvg-id="",Auto TV (720p)
https://cdn3.skygo.mn/live/disk1/AutoTV/HLS-FTA/AutoTV.m3u8
#EXTINF:-1 tvg-id="",Premier Sports 1 (720p) [Geo-blocked]
https://cdn3.skygo.mn/live/disk1/SPSPrime/HLS-FTA/SPSPrime.m3u8
#EXTINF:-1 tvg-id="",Premier Sports 2 (720p) [Geo-blocked]
https://cdn3.skygo.mn/live/disk1/SPSPlay/HLS-FTA/SPSPlay.m3u8
#EXTINF:-1 tvg-id="",Premier Sports 3 (720p) [Geo-blocked]
https://cdn3.skygo.mn/live/disk1/SPSNational/HLS-FTA/SPSNational.m3u8
#EXTINF:-1 tvg-id="",Premier Sports 4 (720p) [Geo-blocked]
https://cdn3.skygo.mn/live/disk1/SPSFight/HLS-FTA/SPSFight.m3u8
#EXTINF:-1 tvg-id="",Premier Sports 5 (720p) [Geo-blocked]
https://cdn3.skygo.mn/live/disk1/SPSPlus/HLS-FTA/SPSPlus.m3u8
#EXTINF:-1 tvg-id="",Popcorn (720p)
https://cdn3.skygo.mn/live/disk1/Popcorn/HLS-FTA/Popcorn.m3u8
#EXTINF:-1 tvg-id="",CNBC MGL (720p)
https://cdn3.skygo.mn/live/disk1/CNBC/HLS-FTA/CNBC.m3u8

View File

@ -1,43 +1,4 @@
# IPTV [![update](https://github.com/iptv-org/iptv/actions/workflows/update.yml/badge.svg)](https://github.com/iptv-org/iptv/actions/workflows/update.yml) # Playlists
Collection of publicly available IPTV (Internet Protocol television) channels from all over the world.
## Table of contents
- 🚀 [How to use?](#how-to-use)
- 📺 [Playlists](#playlists)
- 🗄 [Database](#database)
- 👨‍💻 [API](#api)
- 📚 [Resources](#resources)
- 💬 [Discussions](#discussions)
- ❓ [FAQ](#faq)
- 🛠 [Contribution](#contribution)
- ⚖ [Legal](#legal)
- © [License](#license)
## How to use?
Simply insert one of the links below into [any video player](https://github.com/iptv-org/awesome-iptv#apps) that supports live streaming and press _Open_.
![VLC Network Panel](https://github.com/iptv-org/iptv/raw/master/.readme/preview.png)
## Playlists
There are several versions of playlists that differ in the way they are grouped.
### Main playlist
Playlist includes all known channels except adult channels.
```
https://iptv-org.github.io/iptv/index.m3u
```
And here is the full version:
```
https://iptv-org.github.io/iptv/index.nsfw.m3u
```
### Grouped by category ### Grouped by category
@ -255,45 +216,3 @@ Also, any of our internal playlists are available in raw form (without any filte
``` ```
https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u
``` ```
## Database
All channel data is taken from the [iptv-org/database](https://github.com/iptv-org/database) repository. If you find any errors please open a new [issue](https://github.com/iptv-org/database/issues) there.
## API
The API documentation can be found in the [iptv-org/api](https://github.com/iptv-org/api) repository.
## Resources
Links to other useful IPTV-related resources can be found in the [iptv-org/awesome-iptv](https://github.com/iptv-org/awesome-iptv) repository.
## Discussions
If you need help finding a channel, have a question or idea, welcome to the [Discussions](https://github.com/orgs/iptv-org/discussions).
## FAQ
The answers to the most popular questions can be found in the [FAQ.md](FAQ.md) file.
## Contribution
Please make sure to read the [Contributing Guide](CONTRIBUTING.md) before sending an issue or making a pull request.
And thank you to everyone who has already contributed!
### Backers
<a href="https://opencollective.com/iptv-org"><img src="https://opencollective.com/iptv-org/backers.svg?width=890" /></a>
### Contributors
<a href="https://github.com/iptv-org/iptv/graphs/contributors"><img src="https://opencollective.com/iptv-org/contributors.svg?width=890" /></a>
## Legal
No video files are stored in this repository. The repository simply contains user-submitted links to publicly available video stream URLs, which to the best of our knowledge have been intentionally made publicly by the copyright holders. If any links in these playlists infringe on your rights as a copyright holder, they may be removed by sending a [pull request](https://github.com/iptv-org/iptv/pulls) or opening an [issue](https://github.com/iptv-org/iptv/issues/new?assignees=freearhey&labels=removal+request&template=--removal-request.yml&title=Remove%3A+). However, note that we have **no control** over the destination of the link, and just removing the link from the playlist will not remove its contents from the web. Note that linking does not directly infringe copyright because no copy is made on the site providing the link, and thus this is **not** a valid reason to send a DMCA notice to GitHub. To remove this content from the web, you should contact the web host that's actually hosting the content (**not** GitHub, nor the maintainers of this repository).
## License
[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](LICENSE)

View File

@ -1,4 +1,4 @@
{ {
"build" : "tests/__data__/output/readme.md", "build" : "tests/__data__/output/playlists.md",
"files" : ["tests/__data__/output/.readme/template.md"] "files" : ["tests/__data__/output/.readme/template.md"]
} }

View File

@ -1,43 +1,4 @@
# IPTV [![update](https://github.com/iptv-org/iptv/actions/workflows/update.yml/badge.svg)](https://github.com/iptv-org/iptv/actions/workflows/update.yml) # Playlists
Collection of publicly available IPTV (Internet Protocol television) channels from all over the world.
## Table of contents
- 🚀 [How to use?](#how-to-use)
- 📺 [Playlists](#playlists)
- 🗄 [Database](#database)
- 👨‍💻 [API](#api)
- 📚 [Resources](#resources)
- 💬 [Discussions](#discussions)
- ❓ [FAQ](#faq)
- 🛠 [Contribution](#contribution)
- ⚖ [Legal](#legal)
- © [License](#license)
## How to use?
Simply insert one of the links below into [any video player](https://github.com/iptv-org/awesome-iptv#apps) that supports live streaming and press _Open_.
![VLC Network Panel](https://github.com/iptv-org/iptv/raw/master/.readme/preview.png)
## Playlists
There are several versions of playlists that differ in the way they are grouped.
### Main playlist
Playlist includes all known channels except adult channels.
```
https://iptv-org.github.io/iptv/index.m3u
```
And here is the full version:
```
https://iptv-org.github.io/iptv/index.nsfw.m3u
```
### Grouped by category ### Grouped by category
@ -147,45 +108,3 @@ Also, any of our internal playlists are available in raw form (without any filte
``` ```
https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u https://iptv-org.github.io/iptv/raw/<FILENAME>.m3u
``` ```
## Database
All channel data is taken from the [iptv-org/database](https://github.com/iptv-org/database) repository. If you find any errors please open a new [issue](https://github.com/iptv-org/database/issues) there.
## API
The API documentation can be found in the [iptv-org/api](https://github.com/iptv-org/api) repository.
## Resources
Links to other useful IPTV-related resources can be found in the [iptv-org/awesome-iptv](https://github.com/iptv-org/awesome-iptv) repository.
## Discussions
If you need help finding a channel, have a question or idea, welcome to the [Discussions](https://github.com/orgs/iptv-org/discussions).
## FAQ
The answers to the most popular questions can be found in the [FAQ.md](FAQ.md) file.
## Contribution
Please make sure to read the [Contributing Guide](CONTRIBUTING.md) before sending an issue or making a pull request.
And thank you to everyone who has already contributed!
### Backers
<a href="https://opencollective.com/iptv-org"><img src="https://opencollective.com/iptv-org/backers.svg?width=890" /></a>
### Contributors
<a href="https://github.com/iptv-org/iptv/graphs/contributors"><img src="https://opencollective.com/iptv-org/contributors.svg?width=890" /></a>
## Legal
No video files are stored in this repository. The repository simply contains user-submitted links to publicly available video stream URLs, which to the best of our knowledge have been intentionally made publicly by the copyright holders. If any links in these playlists infringe on your rights as a copyright holder, they may be removed by sending a [pull request](https://github.com/iptv-org/iptv/pulls) or opening an [issue](https://github.com/iptv-org/iptv/issues/new?assignees=freearhey&labels=removal+request&template=--removal-request.yml&title=Remove%3A+). However, note that we have **no control** over the destination of the link, and just removing the link from the playlist will not remove its contents from the web. Note that linking does not directly infringe copyright because no copy is made on the site providing the link, and thus this is **not** a valid reason to send a DMCA notice to GitHub. To remove this content from the web, you should contact the web host that's actually hosting the content (**not** GitHub, nor the maintainers of this repository).
## License
[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](LICENSE)

View File

@ -23,8 +23,8 @@ describe('readme:update', () => {
const stdout = execSync(cmd, { encoding: 'utf8' }) const stdout = execSync(cmd, { encoding: 'utf8' })
if (process.env.DEBUG === 'true') console.log(cmd, stdout) if (process.env.DEBUG === 'true') console.log(cmd, stdout)
expect(content('tests/__data__/output/readme.md')).toEqual( expect(content('tests/__data__/output/playlists.md')).toEqual(
content('tests/__data__/expected/readme_update/_readme.md') content('tests/__data__/expected/readme_update/playlists.md')
) )
}) })
}) })