How to build your very own m3u IPTV playlists





BUILD .M3U FILE PLAYLIST

How to build m3u playlist and video links format (rtmp,http,hls)

Added support for hosted video

From version 2.0.9.7 we added support for hosted video.  Just put the links in your M3U in following format:

#EXTINF:0,Channel Name Here
httphost://$http-raw=$http-refferer=

where and are without triangle brackets.

Added support for additional stream sources

From version 2.0.9.7 we added support for streams from Vimeo, Dailymotion and NowVideo. You can include links from them in your M3U list as follows:

– Vimeo:

#EXTINF:0,Channel Name Here
https://vimeo.com/VideoID

– Dailymotion:

#EXTINF:0,Channel Name Here
http://www.dailymotion.com/video/VideoID

– NowVideo:

#EXTINF:0,Channel Name Here
http://www.nowvideo.co/video/VideoID

Added custom option in .m3u play list

After version 2.0.6 on XMTV Player we added channel thumbnail and group options in EXTINF, here is example of use when you create your play list:

#EXTINF:0,Channel Name #IMG:url or local file to tumbnail #GRP:name of channel group

#IMG parameter thumbnail is must be url or local file to image with max resolution of 72×72 px.

Example:

#EXTINF:-1,TRT 1 Azeri server nassat #IMG:http://tapthefrog.com/presskit/icons/TTF-icon-72×72.png #GRP:TURK

#EXTINF:-1,TRT 1 Canlitv server nassat #IMG:file:///storage/emulated/0/video/eusport.png

What is .m3u file

An M3U file is a plain text file that specifies the locations of one or more media files. The file is saved with the “M3U” or “m3u” filename extension.

DIRECTIVEDESCRIPTIONEXAMPLE#EXTM3UFile header. Must be the first line of the file.#EXTM3U#EXTINFTrack information, including runtime and title.



Sample m3u file, create test.m3u and add content below:








#EXTM3U

#EXTINF:0,FLV

http://cdnp.tremormedia.com/video/acudeo/Carrot_400x300_500kb.flv

#EXTINF:0,RTMP

rtmp://$OPT:rtmp-raw=rtmp://rtmp.jim.stream.vmmacdn.be app=vmma-jim-rtmplive-live playpath=jim live=1

#EXTINF:0,Student Live Stream

http://m4stv.inqb8r.tv/studentTV/studentTV.stream_360p/playlist.m3u8

#EXTINF:0,BipBop Sample

http://playertest.longtailvideo.com/adaptive/bipbop/bipbop.m3u8

#EXTINF:0,BigBuckBunny 2 Levels

http://184.72.239.149/vod/smil:BigBuckBunny.smil/playlist.m3u8

#EXTINF:0,HLSprovider

http://www.hlsprovider.org/playlists/issue_026/stream_cell_16x9_440k.m3u8

Test and convert M3U List

You can use online utility for SimpleTV to test and convert playlist for XMTV Player http://plstonline.org/

Saving and uploading

Save your file with .m3u extension and copy it to your phone storage, open file from some file browser or open XMTV Player and navigate to your folder where you put m3u file.

How to find streams

There is a many communities which share live streams just google them for following keywords extinf iptv , you can test stream URL with VLC or SimpleTV on PC to be sure that they are working.





Channels List in M3U format including Borpas IP-TV Player parameters

#EXTM3U url-tvg="http://www.teleguide.info/download/new3/jtv.zip" m3uautoload=1 cache=500 deinterlace=1 tvg-shift=0 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Первый_канал" group-title="Смоленский эфир" ,Первый канал udp://@239.255.1.2:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Россия_1" ,Россия 1 udp://@239.255.1.8:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="НТВ" tvg-logo="НТВ" ,НТВ (Смоленск) udp://@239.255.1.1:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="TV5" ,5 канал udp://@239.255.1.7:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Россия_24" ,Россия 24 udp://@239.255.1.5:5510

Channels List in M3U format including Borpas IP-TV Player parameters

#EXTM3U url-tvg="http://www.teleguide.info/download/new3/jtv.zip" m3uautoload=1 cache=500 deinterlace=1 tvg-shift=0 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Первый_канал" group-title="Смоленский эфир" ,Первый канал udp://@239.255.1.2:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Россия_1" ,Россия 1 udp://@239.255.1.8:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="НТВ" tvg-logo="НТВ" ,НТВ (Смоленск) udp://@239.255.1.1:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="TV5" ,5 канал udp://@239.255.1.7:5510 #EXTINF:-1 mono=1 aspect-ratio=4:3 tvg-name="Россия_24" ,Россия 24 udp://@239.255.1.5:5510

Channels List in M3U format by one string

#EXTM3U url-tvg="http://mozhay.tv/jtv.zip" m3uautoload=1 cache=500 deinterlace=1 tvg-shift=0 #EXTINF:0 tvg-name="Первый_канал" group-title="Основные",Первый канал http://001.mozhay.tv #EXTINF:0 tvg-name="Россия_1" group-title="Основные",Россия 1 http://002.mozhay.tv #EXTINF:0 tvg-name="ТВЦ" group-title="Основные",ТВЦ http://003.mozhay.tv #EXTINF:0 tvg-name="НТВ" group-title="Основные",НТВ http://004.mozhay.tv #EXTINF:0 tvg-name="Пятый_Канал" group-title="Основные",Пятый Канал http://017.mozhay.tv #EXTINF:0 tvg-name="Россия_Культура" group-title="Основные",Россия К http://005.mozhay.tv

.m3u file syntax

#EXTM3U Some Description #EXTINF:0,Channel Name Url of Channel (support rtmp, http, rtsp, mms, rtmp-rtmp://$OPT:) #EXTINF:0,Channel Name 1 Url of Channel (support rtmp, http, rtsp, mms, rtmp-rtmp://$OPT:) #EXTINF:0,Channel Name 2 Url of Channel (support rtmp, http, rtsp, mms, rtmp-rtmp://$OPT:)

HTTP Live Streaming

Simple HTTP URLs

http://url to media content

HTTP URLs with options different variants to pass them.

http(s)://videostream.com/master.m3u8 X-Forwarded-For=127.0.0.1 xhls=1 multiple headers can be placed separated space ( ) sign. Headers different from User-Agent required to pass xhls=1 parameterhttp(s)://videohost.com/master.m3u8|X-Forwarded-For=127.0.0.1|User-Agent==Mozilla%2F2.1 multiple headers can be placed separated pipe (|) sign.http(s)://$OPT:http-raw=url http-user-agent=someagent referer=somevalue

where the URL and parameters are separated by space, or

http(s)://url$OPT:http-user-agent=someagent referer=somevalue

where $OPT comes after the URL and only parameters are separated by space

User-Agent

Changing user agent on http connections

user-agent=someuseragent

#EXTINF:0,Channel http://url to media content user-agent=someuseragent

X-Forwarded-For

The X-Forwarded-For (XFF) HTTP header field is a de facto standard for identifying the originating IP address of a client connecting to a web server through an HTTP proxy or load balancer.

#EXTINF:0,Channel http://url to media content X-Forwarded-For=127.0.0.1

Referer

The HTTP referer is an HTTP header field that identifies the address of the webpage (i.e. the URI or IRI) that linked to the resource being requested. By checking the referrer, the server can see where the request originated.

#EXTINF:0,Channel http://url to media content Referer=http://127.0.0.1

MMS/RTSP Live Streaming

[rtsp][mms]://url to media content

RTMP

rtmp://url – url path to RTMP Media Server

Complex RTMP

rtmp-rtmp://$OPT: options

rtmp://$OPT:rtmp-raw=rtmp://xxx.xxx.xxx.xxx/app playpath=ef18hollywood swfUrl=http://www.xxxxxx.tv/resources/scripts/eplayer.swf live=1 pageUrl=http://www.xxxxxxxx.tv/ conn=S:OK live=1 token=SomeToken

pageUrl

url – URL of the web page in which the media was embedded. By default no value will be sent.

swfVfy

URL of the SWF player for this media. This option replaces all three of the swfUrl, swfhash, and swfsize options. When this option is used, the SWF player is retrieved from the specified URL and the hash and size are computed automatically. Also the information is cached in a .swfinfo file in the user’s home directory, so that it doesn’t need to be retrieved and recalculated every time rtmpdump is run. The .swfinfo file records the URL, the time it was fetched, the modification timestamp of the SWF file, its size, and its hash. By default, the cached info will be used for 30 days before re-checking.

swfUrl

URL of the SWF player for the media. By default no value will be sent.

tcUrl

url – URL of the target stream. Defaults to rtmp[e]://host[:port]/app/playpath.

playpath

playpath – Overrides the playpath parsed from the RTMP URL. Sometimes the rtmpdump URL parser cannot determine the correct playpath automatically, so it must be given explicitly using this option.

live

(live=1,live=0)Specify that the media is a live stream. No resuming or seeking in live streams is possible.

app

app – Name of application to connect to on the RTMP server. Overrides the app in the RTMP URL. Sometimes the rtmpdump URL parser cannot determine the app name automatically, so it must be given explicitly using this option.

conn

type:data – Append arbitrary AMF data to the Connect message. The type must be B for Boolean, N for number, S for string, O for object, or Z for null. For Booleans the data must be either 0 or 1 for FALSE or TRUE, respectively. Likewise for Objects the data must be 0 or 1 to end or begin an object, respectively. Data items in subobjects may be named, by prefixing the type with ‘N’ and specifying the name before the value, e.g. NB:myFlag:1. This option may be used multiple times to construct arbitrary AMF sequences. E.g. Multiple conn params are allowed.

conn=B:1 conn=S:authMe conn=O:1 conn=NN:code:1.23 conn=NS:flag:ok conn=O:0

flashVer

version – Version of the Flash plugin used to run the SWF player. The default is “LNX 10,0,32,18″.

token

Key for SecureToken response, used if the server requires SecureToken authentication.

weeb

weeb used by legacy weeb.tv servers. Invokes Authenticate method with token, username and password

buffer

num – Set buffer time to num milliseconds. The default is 36000000.