Převod souboru XML do M3U8
Převeďte channel-list XML na playlist M3U8, pokud soubor obsahuje přehratelné stream URLs.
Převádějte soubory XML online
Pro převod XML do M3U8 zatím vlastní online konvertor nemáme, ale soubory XML můžete online převést do těchto a dalších formátů:
Jak převést soubor xml do formátu m3u8
- Audio, zvuky, hudba
- Dosud nehodnoceno.
Media player, aplikace IPTV nebo streamovací zařízení může vyžadovat playlist M3U8, pokud je jeho seznam kanálů nebo médií uložen jako XML. Konverze funguje pouze tehdy, pokud XML obsahuje použitelné URL médií; samotná metadata programů nebo názvy kanálů nemohou vytvořit přehratelné položky.
Co je formát XML
XML je strukturovaný textový formát pro hierarchická data, včetně katalogů kanálů, URL streamů, elektronických programových průvodců XMLTV, exportů knihoven médií a nastavení aplikací. Používají ho poskytovatelé IPTV, správci médií, automatizační systémy a vlastní aplikace.
XML nemá univerzální schéma playlistu. URL může být uloženo v atributu url, elementu <url> nebo v elementu specifickém pro daného poskytovatele, například <stream_url>. Otevřete soubor ve VS Code, Notepad++ nebo prohlížeči a před konverzí identifikujte opakující se element položky, pole zobrazovaného názvu a pole URL.
Co je formát M3U8
M3U8 je playlist M3U kódovaný v UTF-8. Rozšířený playlist kanálů nebo souborů běžně obsahuje hlavičku #EXTM3U, položku #EXTINF a jedno URL média:
#EXTM3U
#EXTINF:-1,Example channel
https://example.com/live/stream.m3u8
Aplikace IPTV používají tuto strukturu k uvádění živých kanálů nebo souborů na vyžádání. Stejná přípona .m3u8 se používá také pro mediální playlisty HLS, které odkazují na segmenty a obsahují značky jako #EXT-X-TARGETDURATION a #EXTINF. Seznam kanálů IPTV proto nemusí být playlistem segmentů HLS.
Jak převést XML na M3U8
Převod seznamu kanálů pomocí Pythonu
U nezdokumentovaného schématu nebo schématu specifického pro daného poskytovatele je místní Python skript bezpečnější a spolehlivější než nahrávání souboru do webové služby, zejména pokud URL obsahují tokeny nebo údaje o předplatiteli.
- Nainstalujte Python 3 z
python.orga umístěte soubor XML do pracovního adresáře. - Prohlédněte XML a určete opakující se element položky a pole obsahující název kanálu a URL streamu.
- Uložte následující příklad jako
xml_to_m3u8.py. Očekává položky<channel>a podporuje běžná pole názvu a URL:
import xml.etree.ElementTree as ET
root = ET.parse('input.xml').getroot()
def text_value(node, attribute, element):
return (node.get(attribute) or node.findtext(element) or '').strip()
with open('output.m3u8', 'w', encoding='utf-8', newline='\n') as out:
out.write('#EXTM3U\n')
for channel in root.findall('.//channel'):
name = text_value(channel, 'name', 'name') or 'Unnamed channel'
url = (channel.get('url') or
channel.findtext('url') or
channel.findtext('stream_url') or '').strip()
if url:
name = name.replace('\r', ' ').replace('\n', ' ')
out.write(f'#EXTINF:-1,{name}\n{url}\n')
- Spusťte
python xml_to_m3u8.pyv systému Windows, macOS nebo Linux. - Otestujte
output.m3u8ve VLC pomocí Media → Open File a poté ho importujte do cílové aplikace IPTV.
Pokud XML používá jiné názvy elementů, vnořené cesty nebo jmenné prostory, nahraďte .//channel a vyhledávání polí odpovídajícími hodnotami. Soubor XMLTV běžně obsahuje záznamy <channel id="..."> a <programme>, ale neobsahuje URL streamu; může poskytnout metadata programů, nikoli přehratelný playlist M3U8.
Použití XSLT pro zdokumentované schéma
Pro opakovatelné dávkové zpracování mapuje XSLT známá pole XML přímo na řádky playlistu. Transformaci mohou spouštět Saxon, XMLStarlet a XML knihovny Pythonu. Obecný web pro konverzi souborů nedokáže určit, které elementy specifické pro daného poskytovatele představují názvy, URL, skupiny nebo loga.
Vytvoření skutečného playlistu HLS pomocí FFmpeg
Pokud potřebujete stream HLS, nikoli seznam existujících URL IPTV, použijte FFmpeg k vygenerování souboru M3U8 a segmentů médií:
ffmpeg -i input.mp4 -c:v libx264 -c:a aac -f hls -hls_time 6 -hls_playlist_type vod output.m3u8
Tím vznikne output.m3u8 a soubory segmentů, například output0.ts; publikujte je společně ve stejném adresáři. Extrahované zdrojové URL může nahradit input.mp4. Volba -c copy zabrání překódování, ale pouze tehdy, pokud jsou kodeky zdroje a kontejner kompatibilní s plánovanými klienty HLS. FFmpeg převádí média identifikovaná v XML; samotná metadata XML nepřevádí.
Kompatibilita a omezení
Převod záznamů XML na text M3U8 nestahuje, neopravuje, nepřekóduje ani neautentizuje odkazovaná média. URL musí zůstat dostupná a chráněné streamy mohou vyžadovat HTTP hlavičky, cookies, časově omezené tokeny nebo podporu DRM, kterou základní playlist nedokáže poskytnout.
Zapište soubor jako UTF-8, ponechte každé URL na vlastním řádku a odstraňte zalomení řádků z názvů kanálů. Aplikace IPTV mohou na řádku #EXTINF přijímat atributy jako tvg-id, tvg-name, tvg-logo a group-title, jedná se však o konvence aplikací, nikoli o univerzální požadavky M3U8.
Neexistuje spolehlivý online převodník XML na M3U8 nezávislý na schématu. Služby jako Convertio a CloudConvert zvládají mnoho obecných převodů dokumentů, ale nedokážou spolehlivě mapovat libovolné XML poskytovatele na přehratelný playlist. Online službu použijte pouze tehdy, pokud výslovně podporuje přesné schéma XML a soubor neobsahuje soukromá URL, přihlašovací údaje ani údaje o předplatitelích; v opačném případě použijte lokálně Python, XSLT nebo FFmpeg.
XML vs M3U8: srovnání formátů
Jak si formáty XML a M3U8 stojí v nejdůležitějších vlastnostech pro tento převod.
| Vlastnost | .XML Extensible Markup Language | .M3U8 HTTP Live Streaming playlist |
|---|---|---|
| Otevřený standard | Ano | Částečně otevřený |
| Komprese | Bez komprese | Bez komprese |
| Typická velikost souboru | Malé | Velmi malé |
| Otevírá se ve webovém prohlížeči | Ano, nativně | Ne |
| Další úpravy | Snadné | Snadné |
| Podpora metadat | Základní | Základní |
| Čitelný jako prostý text | Ano | Ano |
| Nejvhodnější pro | Výměna dat | Streamování |
| Zavedeno | 1998 | 2009 |
| Vývojář | W3C | Apple Inc. |
| MIME typ | application/xml | application/vnd.apple.mpegurl |
Databáze v současné době neobsahuje žádný program na konverzi souborů xml.
Podobné .xml konverze
- xml do mp4
- xml do m3u
- xml do ris
- xml do mp3
- xml do plist
- xml do musicxml
- xml do mscz
- xml do prfpset
- xml do ics
- xml do dtd
- xml do accdb
- xml do asc
- xml do ascii
- xml do asp
- xml do ass
- xml do bib
- xml do bibtex
- xml do bww
- xml do csv
- xml do db
- xml do db3
- xml do dbk
- xml do doc
- xml do docx
- xml do ecsv
- xml do eps
- xml do excel
- xml do fdb
- xml do fmp
- xml do fp5
- xml do fp7
- xml do gdb
- xml do htm
- xml do html
- xml do html5
- xml do ical
- xml do ini
- xml do java
- xml do jpg
- xml do json
- xml do lrc
- xml do md
- xml do mdb
- xml do mdf
- xml do mid
- xml do midi
- xml do mm
- xml do mu3
- xml do mxl
- xml do myr
- xml do nfo
- xml do odc
- xml do odp
- xml do ods
- xml do pdf
- xml do prn
- xml do psc
- xml do rdf
- xml do rss
- xml do s3db
- xml do sdf
- xml do sme
- xml do sql
- xml do sqlite
- xml do srt
- xml do ssa
- xml do stl
- xml do stm
- xml do tab
- xml do tdl
- xml do text
- xml do toml
- xml do tpl
- xml do tsv
- xml do txt
- xml do usr
- xml do vcard
- xml do vcf
- xml do vmsg
- xml do vtt
- xml do wav
- xml do wk1
- xml do wk4
- xml do wps
- xml do xl
- xml do xlmx
- xml do xls
- xml do xlsb
- xml do xlsm
- xml do xlsx
- xml do xltm
- xml do xmi
- xml do xsd
- xml do xsl
- xml do xslt
- xml do yaml