Skip to content

Latest commit

 

History

History
1638 lines (1112 loc) · 35.5 KB

File metadata and controls

1638 lines (1112 loc) · 35.5 KB

Zappr channels schema

$schemahttp://json-schema.org/draft-07/schema#

Properties

NameType
channelsArray

channels

Title Channels array
Description The array that contains all channels.
TypeArray
Required Yes

channels.lcn

Title Channel LCN
Description The channel's LCN on DTT / Freeview.
TypeNumber

channels.logo

Title Channel logo
Description The filename of the channel's logo. If it's in SVG format, you need to suffix it with '.svg'; otherwise, if it's in PNG/WEBP format you must not specify any file extension.
TypeString
Pattern ^(?!.*\.(png|webp)$).*

channels.name

Title Channel name
Description The channel's name.
TypeString

channels.subtitle

Title Channel subtitle
Description The channel's subtitle, which will be shown in a smaller and gray form under the channel name.
TypeString

channels.hd

Title Mark as HD
Description If the channel is in high resolution (and quality!).
TypeBoolean

channels.uhd

Title Mark as 4K
Description If the channel is in 4K.
TypeBoolean

channels.radio

Title Mark as a radio channel
Description If the channel is a radio station (if its streaming only has an audio track or if its video track is a static image).
Type[string, boolean]
Enum
true
The channel is a radio, without any video track.
video
The channel is a radio, with a video track only containing a static image.

channels.ondemand

Title Mark as VOD
Description If the channel is a VOD and not a livestream.
TypeBoolean

channels.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.url

Title Stream URL
Description The stream URL.
TypeString

channels.http

Title Mark stream as not visibile via HTTPS
Description If the stream URL doesn't use the HTTPS protocol and has to be viewed via HTTP.
TypeBoolean

channels.license

Title DRM/license type
Description What DRM/licensing system to use to play the channel.
TypeString
Enum
xdevel-wms
Xdevel WMS Auth Sign (play.xdevel.com/was)
rai-akamai
Rai channels on Akamai servers
clearkey
ClearKey (specify keys in licensedetails)

channels.licensedetails

Title Additional DRM/licensing parameters
TypeString

channels.hbbtvapp

Title Mark as HbbTV app
TypeBoolean

channels.hbbtvmosaic

Title Mark as HbbTV/IP mosaic
TypeBoolean

channels.feed

Title Mark as feed
Description If the channel is to be considered a 'feed' (if its stream isn't active 24/7).
TypeBoolean

channels.adult

Title Mark as 18+
Description If the channel broadcasts 18+ content, and whether it does that all day or only in the night.
Type[string, boolean]
Enum
true
The channel exclusively broadcasts 18+ content.
night
The channel only broadcasts 18+ content in the time slot from 11 PM to 7 AM (during which it's legal for channels in Italy with an LCN higher than 99 to broadcast explicit, but not hardcore, content).

channels.disabled

Title Disable channel
TypeString
Enum
not-working
This channel's streaming isn't working at the moment.

channels.nativeHLS

Title Use an alternative HLS link in an iframe
Description If the browser supports native HLS playback, the HLS URL in this variable will be played through an iframe. Used to avoid CORS restrictions.
TypeObject

channels.nativeHLS.url

Title Stream URL
Description The stream URL.
TypeString

channels.nativeHLS.quality

Title Quality
Description The channel's resolution/quality. If it has multiple, input the highest it can reach.

channels.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.cssfix

Title Apply CSS fixes
Description For channels whose streams require some CSS to look good.
TypeString
Enum
streamshow-embed
StreamShow embed (embed.streamshow.net)
raiplay-sound
RaiPlay Sound
stretch
Stretch the video track of a channel in 4:3 to 16:9.
squashed-height
Stretch the video track of a channel with a squashed height to 16:9.
very-squashed-height
Stretch the video track of a channel with a VERY squashed height to 16:9.
five-two-squashed-height
Stretch the video track of a channel in 5:2 to 16:9.
center-iframe
Center IFrame
servizistreaming-embed
ServiziStreaming.it embed
livetvuk-embed
LiveTVUK.com embed
native-hls-720p-iframe
Scale a 720p video playing natively in an iframe to the video player's width

channels.fallback

Title Fallback stream info
Description Info about the fallback stream that will be used if the main one fails.
TypeObject

channels.fallback.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.fallback.url

Title Stream URL
Description The stream URL.
TypeString

channels.fallback.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.geoblock

Title Geoblocking settings
Description If the channel is geoblocked outside of its country of origin, and whether to disable it completely or to use an alternative link that works worldwide.
Type[boolean, object]

channels.geoblock.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.geoblock.url

Title Stream URL
Description The stream URL.
TypeString

channels.geoblock.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.geoblock.license

Title DRM/license type
Description What DRM/licensing system to use to play the channel.
TypeString
Enum
xdevel-wms
Xdevel WMS Auth Sign (play.xdevel.com/was)
rai-akamai
Rai channels on Akamai servers
clearkey
ClearKey (specify keys in licensedetails)

channels.geoblock.licensedetails

Title Additional DRM/licensing parameters
TypeString

channels.epg

Title EPG info
Description Info on the channel's EPG, and from which source to fetch it from.
TypeObject

channels.epg.source

Title Source
TypeString

channels.epg.id

Title Channel ID
TypeString

channels.manualRestart

Title Manual restart settings
TypeObject

channels.manualRestart.source

Title Source
TypeString

channels.manualRestart.id

Title Channel ID
TypeString

channels.timeshift

Title Timeshift settings
Description Start the channel stream with a specified amount of timeshift hours.
TypeNumber

channels.hbbtv

Title HbbTV/IP channels
Description The channels visible through the channel's HbbTV/IP app.
TypeArray

channels.hbbtv.categorySeparator

Title Category separator
Description This key creates a category separator in the HbbTV/IP channel list.
TypeString

channels.hbbtv.sublcn

Title Channel 'subLCN'
Description The channel's 'subLCN': that is, its 'numbering' based on the order of the channels in the parent channel's HbbTV/IP app.
TypeNumber

channels.hbbtv.logo

Title Channel logo
Description The filename of the channel's logo. If it's in SVG format, you need to suffix it with '.svg'; otherwise, if it's in PNG/WEBP format you must not specify any file extension.
TypeString
Pattern ^(?!.*\.(png|webp)$).*

channels.hbbtv.name

Title Channel name
Description The channel's name.
TypeString

channels.hbbtv.subtitle

Title Channel subtitle
Description The channel's subtitle, which will be shown in a smaller and gray form under the channel name.
TypeString

channels.hbbtv.hd

Title Mark as HD
Description If the channel is in high resolution (and quality!).
TypeBoolean

channels.hbbtv.uhd

Title Mark as 4K
Description If the channel is in 4K.
TypeBoolean

channels.hbbtv.radio

Title Mark as a radio channel
Description If the channel is a radio station (if its streaming only has an audio track or if its video track is a static image).
Type[string, boolean]
Enum
true
The channel is a radio, without any video track.
video
The channel is a radio, with a video track only containing a static image.

channels.hbbtv.ondemand

Title Mark as VOD
Description If the channel is a VOD and not a livestream.
TypeBoolean

channels.hbbtv.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.hbbtv.url

Title Stream URL
Description The stream URL.
TypeString

channels.hbbtv.http

Title Mark stream as not visibile via HTTPS
Description If the stream URL doesn't use the HTTPS protocol and has to be viewed via HTTP.
TypeBoolean

channels.hbbtv.license

Title DRM/license type
Description What DRM/licensing system to use to play the channel.
TypeString
Enum
xdevel-wms
Xdevel WMS Auth Sign (play.xdevel.com/was)
rai-akamai
Rai channels on Akamai servers
clearkey
ClearKey (specify keys in licensedetails)

channels.hbbtv.licensedetails

Title Additional DRM/licensing parameters
TypeString

channels.hbbtv.hbbtvapp

Title Mark as HbbTV app
TypeBoolean

channels.hbbtv.hbbtvmosaic

Title Mark as HbbTV/IP mosaic
TypeBoolean

channels.hbbtv.feed

Title Mark as feed
Description If the channel is to be considered a 'feed' (if its stream isn't active 24/7).
TypeBoolean

channels.hbbtv.adult

Title Mark as 18+
Description If the channel broadcasts 18+ content, and whether it does that all day or only in the night.
Type[string, boolean]
Enum
true
The channel exclusively broadcasts 18+ content.
night
The channel only broadcasts 18+ content in the time slot from 11 PM to 7 AM (during which it's legal for channels in Italy with an LCN higher than 99 to broadcast explicit, but not hardcore, content).

channels.hbbtv.disabled

Title Disable channel
TypeString
Enum
not-working
This channel's streaming isn't working at the moment.

channels.hbbtv.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.hbbtv.cssfix

Title Apply CSS fixes
Description For channels whose streams require some CSS to look good.
TypeString
Enum
streamshow-embed
StreamShow embed (embed.streamshow.net)
raiplay-sound
RaiPlay Sound
stretch
Stretch the video track of a channel in 4:3 to 16:9.
squashed-height
Stretch the video track of a channel with a squashed height to 16:9.
very-squashed-height
Stretch the video track of a channel with a VERY squashed height to 16:9.
five-two-squashed-height
Stretch the video track of a channel in 5:2 to 16:9.
center-iframe
Center IFrame
servizistreaming-embed
ServiziStreaming.it embed
livetvuk-embed
LiveTVUK.com embed
native-hls-720p-iframe
Scale a 720p video playing natively in an iframe to the video player's width

channels.hbbtv.fallback

Title Fallback stream info
Description Info about the fallback stream that will be used if the main one fails.
TypeObject

channels.hbbtv.fallback.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.hbbtv.fallback.url

Title Stream URL
Description The stream URL.
TypeString

channels.hbbtv.fallback.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.hbbtv.geoblock

Title Geoblocking settings
Description If the channel is geoblocked outside of its country of origin, and whether to disable it completely or to use an alternative link that works worldwide.
Type[boolean, object]

channels.hbbtv.geoblock.type

Title Stream type
Description The stream type.
TypeString
Enum
hls
HLS (.m3u / .m3u8)
dash
DASH (.mpd)
twitch
Twitch (username)
youtube
YouTube (video or channel ID)
iframe
IFrame (URL)
audio
Audio (e.g. Icecast)
direct
'Direct' (not HLS, DASH, etc.): a livestream/VOD playable by a <video> (not audio!) element without the need of any additional JavaScript libraries
popup
Popup window (URL)

channels.hbbtv.geoblock.url

Title Stream URL
Description The stream URL.
TypeString

channels.hbbtv.geoblock.api

Title Use an API to play the channel
Description If the channel needs an API to be played.
TypeString
Enum
vercel
Use the Vercel API (https://github.com/ZapprTV/vercel-api) to play the channel.
cloudflare
Use the Cloudflare API (https://github.com/ZapprTV/cloudflare-api) to play the channel.

channels.hbbtv.geoblock.license

Title DRM/license type
Description What DRM/licensing system to use to play the channel.
TypeString
Enum
xdevel-wms
Xdevel WMS Auth Sign (play.xdevel.com/was)
rai-akamai
Rai channels on Akamai servers
clearkey
ClearKey (specify keys in licensedetails)

channels.hbbtv.geoblock.licensedetails

Title Additional DRM/licensing parameters
TypeString

channels.hbbtv.epg

Title EPG info
Description Info on the channel's EPG, and from which source to fetch it from.
TypeObject

channels.hbbtv.epg.source

Title Source
TypeString

channels.hbbtv.epg.id

Title Channel ID
TypeString