{"id":18655058,"url":"https://github.com/hmlendea/stream-to-m3u","last_synced_at":"2026-03-09T10:31:36.151Z","repository":{"id":44910287,"uuid":"184493058","full_name":"hmlendea/stream-to-m3u","owner":"hmlendea","description":"Get M3U playlist links for liverstreams from various platforms","archived":false,"fork":false,"pushed_at":"2025-06-23T14:00:08.000Z","size":188,"stargazers_count":16,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2026-02-08T20:34:53.657Z","etag":null,"topics":["iptv","m3u","m3u8"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hmlendea.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":"hmlendea","open_collective":null,"ko_fi":"hmlendea","tidelift":null,"community_bridge":null,"liberapay":"HMlendea","issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":"hmlendea","thanks_dev":null,"custom":"https://hmlendea.go.ro/fund.html"}},"created_at":"2019-05-01T23:07:30.000Z","updated_at":"2026-01-25T20:41:11.000Z","dependencies_parsed_at":"2025-04-11T17:39:13.755Z","dependency_job_id":"4757f02d-504e-4059-b3f4-16a9ff79229c","html_url":"https://github.com/hmlendea/stream-to-m3u","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/hmlendea/stream-to-m3u","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmlendea%2Fstream-to-m3u","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmlendea%2Fstream-to-m3u/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmlendea%2Fstream-to-m3u/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmlendea%2Fstream-to-m3u/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hmlendea","download_url":"https://codeload.github.com/hmlendea/stream-to-m3u/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmlendea%2Fstream-to-m3u/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30291807,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T02:57:19.223Z","status":"ssl_error","status_checked_at":"2026-03-09T02:56:26.373Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["iptv","m3u","m3u8"],"created_at":"2024-11-07T07:17:39.847Z","updated_at":"2026-03-09T10:31:36.141Z","avatar_url":"https://github.com/hmlendea.png","language":"C#","funding_links":["https://patreon.com/hmlendea","https://ko-fi.com/hmlendea","https://liberapay.com/HMlendea","https://buymeacoffee.com/hmlendea","https://hmlendea.go.ro/fund.html"],"categories":[],"sub_categories":[],"readme":"[![Donate](https://img.shields.io/badge/-%E2%99%A5%20Donate-%23ff69b4)](https://hmlendea.go.ro/fund.html) [![Build Status](https://github.com/hmlendea/stream-to-m3u/actions/workflows/dotnet.yml/badge.svg)](https://github.com/hmlendea/stream-to-m3u/actions/workflows/dotnet.yml)\n\n# About\n\nTool for retrieving the M3U playlist URL for a given live stream\n\n# Usage\n\nThe tool is used as just another console application.\n\nOpen a terminal and run the `SteamToM3U` executable, making sure that all the desired arguments are supplied.\n\n# Configuration\n\nThe settings are supplied via CLI arguments\n\nThe following arguments are used to indicate the source of the stream\n\n| Argument                                                     | Description                     |\n|--------------------------------------------------------------|---------------------------------|\n| --tvsporthd\u003cbr\u003e--tvsport\u003cbr\u003e--tvshd\u003cbr\u003e--tvs                 | Sets the source to TV Sport HD  |\n| --antena-play\u003cbr\u003e--antenaplay\u003cbr\u003e--antena\u003cbr\u003e--aplay\u003cbr\u003e--ap | Sets the source to Antena Play  |\n| --streamlink\u003cbr\u003e--sl                                         | Sets the source to Streamlink   |\n\nIf no source argument is provided, a generic solution will be attempted\n\nEach source will require a different set of arugments to indicate the desired live stream, as follows\n\n## TV Sport HD\n\n| Argument        | Description                  | Optional  |\n|-----------------|------------------------------|-----------|\n| --channel\u003cbr\u003e-c | The host channel ID          | Mandatory |\n\n## Streamlink\n\n| Argument    | Description                                       | Optional  |\n|-------------|---------------------------------------------------|-----------|\n| --url\u003cbr\u003e-u | The URL of the page that contains the live stream | Mandatory |\n\n## Antena Play\n\n| Argument        | Description                  | Optional  |\n|-----------------|------------------------------|-----------|\n| --channel\u003cbr\u003e-c | The host channel ID          | Mandatory |\n\n## Website\n\n| Argument    | Description                                       | Optional  |\n|-------------|---------------------------------------------------|-----------|\n| --url\u003cbr\u003e-u | The URL of the page that contains the live stream | Mandatory |\n\n## Running in background as a service\n\n**Note:** The following instructions only apply for *Linux* distributions using *systemd*.\n\nCreate the following service file: /usr/lib/systemd/system/stream-to-m3u@.service\n```\n[Unit]\nDescription=Stream to M3U (%i channels)\n\n[Service]\nWorkingDirectory=[ABSOLUTE_PATH_TO_SERVICE_DIRECTORY]\nExecStart=[ABSOLUTE_PATH_TO_SERVICE_DIRECTORY]/StreamToM3U -i [ABSOLUTE_PATH_TO_SERVICE_DIRECTORY]/Data/input-%i.xml -O /srv/http/iptv/livestreams/%i -u http://mydomain.com/iptv\nMemoryAccounting=yes\nMemoryMax=256M\n\n[Install]\nWantedBy=multi-user.target\n```\n\nCreate the following timer file: /lib/systemd/system/stream-to-m3u.timer\n```\n[Unit]\nDescription=Periodically creates an M3U playlist out of livestreams (%i channels)\n\n[Timer]\nOnBootSec=3min\nOnUnitActiveSec=40min\n\n[Install]\nWantedBy=timers.target\n```\n\nValues that you might want to change:\n - *OnBootSec*: the delay before the service is started after the OS is booted\n - *OnUnitActiveSec*: how often the service will be triggered\n - *MemoryMax*: RAM usage limit\n\nIn the above example, the service will start 3 minutes after boot, and then again once every 40 minutes, being allocated 256M RAM per instance\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmlendea%2Fstream-to-m3u","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhmlendea%2Fstream-to-m3u","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmlendea%2Fstream-to-m3u/lists"}