Skip to content

A simple parser to parse M3U, M3U8 playlist files into usable data classes.

License

Notifications You must be signed in to change notification settings

zainulhassan815/iptv-parser

Repository files navigation

IPTV Parser

A simple parser to parse M3U, M3U8 playlist files into usable data classes.


Sample Usage

Local File

import org.dreamers.iptvparser.IptvParser
import org.dreamers.iptvparser.models.Playlist
import org.dreamers.iptvparser.models.PlaylistItem
import java.io.File

val file: File = File("path/to/file")
val playlist: Playlist = IptvParser().parse(file)
playlist.items.forEach {
    println(it.title)
}

Network File

import org.dreamers.iptvparser.IptvParser
import org.dreamers.iptvparser.models.Playlist
import org.dreamers.iptvparser.models.PlaylistItem
import java.io.InputStream
import java.net.URL

val input: InputStream = URL("url/to/file").openStream()
val playlist: Playlist = IptvParser().parse(input)
playlist.items.forEach {
    println(it.title)
}

String Content

import org.dreamers.iptvparser.IptvParser
import org.dreamers.iptvparser.models.Playlist
import org.dreamers.iptvparser.models.PlaylistItem

val input: String = """
#EXTM3U
#EXTINF:-1 tvg-logo="url/to/logo.png",RTP 1
https://streaming-live.rtp.pt/liverepeater/rtpClean1HD.smil/playlist.m3u8|user-agent=RTP
""".trimIndent()

val playlist: Playlist = IptvParser().parse(input)
playlist.items.forEach {
    println(it.title)
}

About

A simple parser to parse M3U, M3U8 playlist files into usable data classes.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages