Updated kodi settings on Lenovo

This commit is contained in:
2026-03-22 22:28:43 +01:00
parent 725dfa7157
commit 32b5a81da6
10925 changed files with 575678 additions and 5511 deletions

View File

@@ -0,0 +1,33 @@
{
"iptv": {
"id": "",
"type": "iptv",
"name": "",
"description": "",
"icon": "",
"m3u": {
"path": "",
"slug": "",
"provider": ""
},
"xmltv": {
"path": ""
}
},
"vod": [{
"id": "",
"type": "vod",
"name": "",
"description": "",
"icon": "",
"path": ""
}],
"live": [{
"id": "",
"type": "live",
"name": "",
"description": "",
"icon": "",
"path": ""
}]
}

View File

@@ -0,0 +1,13 @@
{
"id": "",
"type": "",
"number": 0,
"name": "",
"logo": "",
"path": [],
"group": [],
"rules": {},
"catchup": "vod",
"radio": false,
"favorite": false
}

View File

@@ -0,0 +1,5 @@
{
"uuid": "",
"channels": [],
"imports": []
}

View File

@@ -0,0 +1,148 @@
<!--
The following are the DVB Genre Id's used for reference
Source: https://www.etsi.org/deliver/etsi_en/300400_300499/300468/01.11.01_60/en_300468v011101p.pdf
Page 40
Note: the first 4 bits is genre and last is sub genre
Mapping DVB Genres:
- The content below is a reference for Genre Text Mappings
There shoud be no reason to modify this file unless the DVB standard changes.
NOTE: IF YOU MODIFY THIS FILE IT WILL BE OVERWRITTEN NEXT TIME THE ADDON IS STARTED
If you have changes either create a PR containing the changes or an issue with details at:
https://github.com/kodi-pvr/pvr.iptvsimple
https://github.com/kodi-pvr/pvr.iptvsimple#using-a-mapping-file-for-genres
https://codedocs.xyz/xbmc/xbmc/group__cpp__kodi__addon__pvr___defs__epg___e_p_g___e_v_e_n_t.html#ga0ac9430768fc11505a193241fc2d4008
-->
<!-- - 0x10: General Movie / Drama -->
<!-- - 0x20: News / Current Affairs -->
<!-- - 0x30: Show / Game Show -->
<!-- - 0x40: Sports -->
<!-- - 0x50: Children's / Youth Programmes -->
<!-- - 0x60: Music / Ballet / Dance -->
<!-- - 0x70: Arts / Culture -->
<!-- - 0x80: Social / Political / Economics -->
<!-- - 0x90: Education / Science / Factual -->
<!-- - 0xA0: Leisure / Hobbies -->
<!-- - 0xB0: Special Characteristics -->
<genres>
<name>PseudoTV Live</name>
<!-- UNDEFINED (Grey) -->
<genre genreId="0x00">Undefined/Unavailable/Unrated/NA/NR</genre>
<!-- MOVIE/DRAMA (Blue) -->
<genre genreId="0x10">Movie/Drama/TV Movie</genre>
<genre genreId="0x11">Detective/Thriller/Crime/Suspense</genre>
<genre genreId="0x12">Action/Adventure/Western/War</genre>
<genre genreId="0x13">Science Fiction/Fantasy/Horror/Sci-Fi</genre>
<genre genreId="0x14">Comedy</genre>
<genre genreId="0x15">Soap/Melodrama/Folkloric</genre>
<genre genreId="0x16">Romance</genre>
<genre genreId="0x17">Serious/Classical/Religious/Historical/History/Classic</genre>
<genre genreId="0x18">Adult/XXX/Mature</genre>
<!-- NEWS/CURRENT AFFAIRS (Drk. Green) -->
<genre genreId="0x20">News/Current Affairs/Information</genre>
<genre genreId="0x21">Weather/Weather Report</genre>
<genre genreId="0x22">News Magazine</genre>
<genre genreId="0x23">Documentary/Documentaries</genre>
<genre genreId="0x24">Discussion/Interview/Debate</genre>
<!-- SHOW -->
<genre genreId="0x30">Show</genre>
<genre genreId="0x31">Game show/Quiz/Contest</genre>
<genre genreId="0x32">Variety show</genre>
<genre genreId="0x33">Talk show/Talk</genre>
<!-- SPORTS -->
<genre genreId="0x40">Sports/Short</genre>
<genre genreId="0x41">Special Events/Olympic Games/World Cup</genre>
<genre genreId="0x42">Sports Magazines</genre>
<genre genreId="0x43">Football/Soccer/American Football/Rugby</genre>
<genre genreId="0x44">Tennis/Squash</genre>
<genre genreId="0x45">Team sports</genre>
<genre genreId="0x46">Athletics</genre>
<genre genreId="0x47">Motor sport</genre>
<genre genreId="0x48">Water sport</genre>
<genre genreId="0x49">Winter sports</genre>
<genre genreId="0x4A">Equestrian</genre>
<genre genreId="0x4B">Martial sports</genre>
<!-- CHILDREN/YOUTH (Drk. Yellow) -->
<genre genreId="0x50">Children/Youth/Family/Kids</genre>
<genre genreId="0x51">Pre-school children</genre>
<genre genreId="0x52">Entertainment programmes for 6 to 14</genre>
<genre genreId="0x53">Entertainment programmes for 10 to 16</genre>
<genre genreId="0x54">Informational/Educational/School programmes/ Instructional</genre>
<genre genreId="0x55">Cartoons/Puppets/Animation</genre>
<!-- MUSIC/BALLET/DANCE (Green) -->
<genre genreId="0x60">Music/Dance</genre>
<genre genreId="0x61">Rock/Pop</genre>
<genre genreId="0x62">Serious/Classical</genre>
<genre genreId="0x63">Folk/Traditional</genre>
<genre genreId="0x64">Jazz</genre>
<genre genreId="0x65">Musical/Opera/Broadway</genre>
<genre genreId="0x66">Ballet</genre>
<!-- ARTS/CULTURE -->
<genre genreId="0x70">Arts/Culture</genre>
<genre genreId="0x71">Performing Arts</genre>
<genre genreId="0x72">Fine Arts</genre>
<genre genreId="0x73">Religion</genre>
<genre genreId="0x74">Popular Culture/Traditional Arts</genre>
<genre genreId="0x75">Literature</genre>
<genre genreId="0x76">Film/Cinema</genre>
<genre genreId="0x77">Experimental Film/Video</genre>
<genre genreId="0x78">Broadcasting/Press</genre>
<genre genreId="0x79">New Media</genre>
<genre genreId="0x7A">Arts/Culture Magazines</genre>
<genre genreId="0x7B">Fashion</genre>
<!-- SOCIAL/POLITICAL/ECONOMICS -->
<genre genreId="0x80">Social/Political Issues/Economics</genre>
<genre genreId="0x81">Magazines/Reports/Documentary</genre>
<genre genreId="0x82">Economics/Social Advisory</genre>
<genre genreId="0x83">Remarkable people</genre>
<!-- EDUCATIONAL/SCIENCE -->
<genre genreId="0x90">Education/Science/Factual Topics</genre>
<genre genreId="0x91">Nature/Animals/Environment</genre>
<genre genreId="0x92">Technology/Natural Sciences</genre>
<genre genreId="0x93">Medicine/Physiology/Psychology</genre>
<genre genreId="0x94">Foreign Countries/Expeditions</genre>
<genre genreId="0x95">Social/Spiritual Sciences</genre>
<genre genreId="0x96">Further Education</genre>
<genre genreId="0x97">Languages</genre>
<!-- LEISURE/HOBBIES -->
<genre genreId="0xA0">Leisure/Hobbies</genre>
<genre genreId="0xA1">Tourism/Travel</genre>
<genre genreId="0xA2">Handicraft</genre>
<genre genreId="0xA3">Motoring</genre>
<genre genreId="0xA4">Fitness and Health</genre>
<genre genreId="0xA5">Cooking</genre>
<genre genreId="0xA6">Advertisement/Shopping</genre>
<genre genreId="0xA7">Gardening</genre>
<!-- SPECIAL -->
<genre genreId="0xB0">Special Characteristics/Original Language</genre>
<genre genreId="0xB1">Black and White</genre>
<genre genreId="0xB2">Unpublished</genre>
<genre genreId="0xB3">Live/Live broadcast</genre>
<genre genreId="0xB4">Plano-stereoscopic</genre>
<genre genreId="0xB5">Local/Regional</genre>
<!-- USERDEFINED -->
<genre genreId="0xF0"></genre>
<genre genreId="0xF1"></genre>
<genre genreId="0xF2"></genre>
<genre genreId="0xF3"></genre>
<!-- IGNORED -->
<genre genreId="0xF4"></genre>
<genre genreId="0xF5"></genre>
<genre genreId="0xF6"></genre>
<genre genreId="0xF7"></genre>
<genre genreId="0xF8"></genre>
</genres>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="genres">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" />
<xs:element maxOccurs="unbounded" name="genre">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="genreId" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@@ -0,0 +1,18 @@
<!--
Custom Channel Groups:
- Allows users to create a bespoke list of groups to load.
- For each name that matches a group/bouquet name from the set top box include it in the channels loaded
- If no names match the addon will load last scanned by default.
- channelGroupName is the only value to be set
If you are creating your own Custom Channel Groups file make a copy of this file in the same directory so it's not overwritten and start from there.
NOTE: IF YOU MODIFY THIS FILE IT WILL BE OVERWRITTEN NEXT TIME THE ADDON IS STARTED
-->
<customChannelGroups>
<channelGroupName>My 1st Provder - Sports</channelGroupName>
<channelGroupName>My 2nd Provder - Entertainment</channelGroupName>
<channelGroupName>My 3rd Provder - Movies</channelGroupName>
</customChannelGroups>

View File

@@ -0,0 +1,239 @@
{"":{},
"newyear" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Twilight Zone","Anthology","Anthologies","Outer Limits"]},
{"field":"plot" ,"operator":"contains","value":["Twilight Zone","Anthology","Anthologies","Outer Limits"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Twilight Zone","Anthology","Anthologies","Outer Limits"]},
{"field":"plot" ,"operator":"contains","value":["Twilight Zone","Anthology","Anthologies","Outer Limits"]}]}]}}]},
"scifi" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Sci-Fi","Science Fiction"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Sci-Fi","Science Fiction"]}]}]}}]},
"lotr" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Lord of the rings","LOTR","Hobbit","J.R.R. Tolkien","Tolkien"]},
{"field":"plot" ,"operator":"contains","value":["Lord of the rings","LOTR","Hobbit","J.R.R. Tolkien","Tolkien"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Lord of the rings","LOTR","Hobbit","J.R.R. Tolkien","Tolkien"]},
{"field":"plot" ,"operator":"contains","value":["Lord of the rings","LOTR","Hobbit","J.R.R. Tolkien","Tolkien"]}]}]}}]},
"lego" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["LEGO"]},
{"field":"plot" ,"operator":"contains","value":["LEGO"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["LEGO"]},
{"field":"plot" ,"operator":"contains","value":["LEGO"]}]}]}}]},
"gijoe" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["G.I. Joe"]},
{"field":"plot" ,"operator":"contains","value":["G.I. Joe"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["G.I. Joe"]},
{"field":"plot" ,"operator":"contains","value":["G.I. Joe"]}]}]}}]},
"romance" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Romance","Romcom"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Romance","Romcom"]}]}]}}]},
"pokemon" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Pokemon","Pokémon"]},
{"field":"plot" ,"operator":"contains","value":["Pokemon","Pokémon"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Pokemon","Pokémon"]},
{"field":"plot" ,"operator":"contains","value":["Pokemon","Pokémon"]}]}]}}]},
"superman" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Superman","Krypton"]},
{"field":"plot" ,"operator":"contains","value":["Superman","Krypton"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Superman","Krypton"]},
{"field":"plot" ,"operator":"contains","value":["Superman","Krypton"]}]}]}}]},
"pixar" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Pixar"]},
{"field":"plot" ,"operator":"contains","value":["Pixar"]},
{"field":"studio" ,"operator":"contains","value":["Pixar"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Pixar"]},
{"field":"plot" ,"operator":"contains","value":["Pixar"]},
{"field":"studio" ,"operator":"contains","value":["Pixar"]}]}]}}]},
"seuss" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Dr. Seuss","Lorax","Grinch"]},
{"field":"plot" ,"operator":"contains","value":["Dr. Seuss","Lorax","Grinch"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Dr. Seuss","Lorax","Grinch"]},
{"field":"plot" ,"operator":"contains","value":["Dr. Seuss","Lorax","Grinch"]}]}]}}]},
"hitchcock":{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Alfred Hitchcock"]},
{"field":"plot" ,"operator":"contains","value":["Alfred Hitchcock"]}]}]}}],
"movies" : [{"sort":{"method":"random", "order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Alfred Hitchcock"]},
{"field":"writers" ,"operator":"contains","value":["Alfred Hitchcock"]},
{"field":"plot" ,"operator":"contains","value":["Alfred Hitchcock"]}]}]}}]},
"patrick" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["It's Always Sunny"]}]}]}},
{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"plot" ,"operator":"contains","value":["St. Patrick","Leprechaun","Irish","Luck","Lucky","Gold","Shamrock"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"plot" ,"operator":"contains","value":["St. Patrick","Leprechaun","Irish","Luck","Lucky","Gold","Shamrock"]}]}]}}]},
"quentin" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Quentin Tarantino"]},
{"field":"writers" ,"operator":"contains","value":["Quentin Tarantino"]},
{"field":"plot" ,"operator":"contains","value":["Quentin Tarantino"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Quentin Tarantino"]},
{"field":"writers" ,"operator":"contains","value":["Quentin Tarantino"]},
{"field":"plot" ,"operator":"contains","value":["Quentin Tarantino"]}]}]}}]},
"anderson" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Wes Anderson"]},
{"field":"writers" ,"operator":"contains","value":["Wes Anderson"]},
{"field":"plot" ,"operator":"contains","value":["Wes Anderson"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Wes Anderson"]},
{"field":"writers" ,"operator":"contains","value":["Wes Anderson"]},
{"field":"plot" ,"operator":"contains","value":["Wes Anderson"]}]}]}}]},
"lucas" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["George Lucas","Sofia Coppola"]},
{"field":"writers" ,"operator":"contains","value":["George Lucas","Sofia Coppola"]},
{"field":"plot" ,"operator":"contains","value":["George Lucas","Sofia Coppola"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["George Lucas","Sofia Coppola"]},
{"field":"writers" ,"operator":"contains","value":["George Lucas","Sofia Coppola"]},
{"field":"plot" ,"operator":"contains","value":["George Lucas","Sofia Coppola"]}]}]}}]},
"welles" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Orson Welles"]},
{"field":"writers" ,"operator":"contains","value":["Orson Welles"]},
{"field":"plot" ,"operator":"contains","value":["Orson Welles"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Orson Welles"]},
{"field":"writers" ,"operator":"contains","value":["Orson Welles"]},
{"field":"plot" ,"operator":"contains","value":["Orson Welles"]}]}]}}]},
"chukwu" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Chinonye Chukwu"]},
{"field":"writers" ,"operator":"contains","value":["Chinonye Chukwu"]},
{"field":"plot" ,"operator":"contains","value":["Chinonye Chukwu"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Chinonye Chukwu"]},
{"field":"writers" ,"operator":"contains","value":["Chinonye Chukwu"]},
{"field":"plot" ,"operator":"contains","value":["Chinonye Chukwu"]}]}]}}]},
"eastwood" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Clint Eastwood"]},
{"field":"writers" ,"operator":"contains","value":["Clint Eastwood"]},
{"field":"cast" ,"operator":"contains","value":["Clint Eastwood"]},
{"field":"plot" ,"operator":"contains","value":["Clint Eastwood"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"director","operator":"contains","value":["Clint Eastwood"]},
{"field":"writers" ,"operator":"contains","value":["Clint Eastwood"]},
{"field":"cast" ,"operator":"contains","value":["Clint Eastwood"]},
{"field":"plot" ,"operator":"contains","value":["Clint Eastwood"]}]}]}}]},
"startrek" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Star Trek"]},
{"field":"plot" ,"operator":"contains","value":["Star Trek"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Star Trek"]},
{"field":"plot" ,"operator":"contains","value":["Star Trek"]}]}]}}]},
"muppets" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["The Muppets"]},
{"field":"plot" ,"operator":"contains","value":["The Muppets"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["The Muppets"]},
{"field":"plot" ,"operator":"contains","value":["The Muppets"]}]}]}}]},
"othello" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]},
{"field":"writers" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]},
{"field":"plot" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]}]}]}}],
"movies" : [{"sort":{"method":"random" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]},
{"field":"writers" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]},
{"field":"plot" ,"operator":"contains","value":["William Shakespeare","Shakespeare"]}]}]}}]},
"super" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"studio" ,"operator":"contains","value":["Marvel","DC"]},
{"field":"plot" ,"operator":"contains","value":["Superhero"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"studio" ,"operator":"contains","value":["Marvel","DC"]},
{"field":"plot" ,"operator":"contains","value":["Superhero"]}]}]}}]},
"aliens" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"is" ,"value":["Alien: Earth"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"is" ,"value":["TED 2023","Prometheus","Alien: Covenant","Alien","Alien: Isolation","Alien: Out of the Shadows","Alien: Romulus","Aliens","Aliens: Colonial Marines","Fire and Stone","Alien3","Alien³","Aliens: Dark Descent","Aliens: Fireteam Elite","Aliens: Phalanx","Alien Resurrection"]},
{"field":"title" ,"operator":"is" ,"value":["Predator","Predator 2","Predators","The Predator","Prey","Badlands","Alien vs. Predator","Aliens vs. Predator: Requiem","Predator: Dark Ages"]}]}]}}]},
"starwars" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Star Wars"]},
{"field":"plot" ,"operator":"contains","value":["Star Wars"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Star Wars"]},
{"field":"plot" ,"operator":"contains","value":["Star Wars"]}]}]}}]},
"twilight" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Twilight Zone", "Rod Serling"]},
{"field":"plot" ,"operator":"contains","value":["Twilight Zone", "Rod Serling"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Twilight Zone", "Rod Serling"]},
{"field":"plot" ,"operator":"contains","value":["Twilight Zone", "Rod Serling"]}]}]}}]},
"mavrick" :{"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"is","value":["Top Gun","Top Gun: Maverick"]}]}]}}]},
"watson" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Enola Holmes", "Sherlock", "Sher-lock", "Sherlock Holmes", "Arthur Conan Doyle", "Watson"]},
{"field":"plot" ,"operator":"contains","value":["Enola Holmes", "Sherlock", "Sher-lock", "Sherlock Holmes", "Arthur Conan Doyle", "Watson"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Enola Holmes", "Sherlock", "Sher-lock", "Sherlock Holmes", "Arthur Conan Doyle", "Watson"]},
{"field":"plot" ,"operator":"contains","value":["Enola Holmes", "Sherlock", "Sher-lock", "Sherlock Holmes", "Arthur Conan Doyle", "Watson"]}]}]}}]},
"vampire" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Vampire", "Dracula" ,"Nosferatu"]},
{"field":"plot" ,"operator":"contains","value":["Vampire", "Dracula" ,"Nosferatu", "Vamp", "Bloodsucker", "Vampirism"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Vampire", "Dracula" ,"Nosferatu"]},
{"field":"plot" ,"operator":"contains","value":["Vampire", "Dracula" ,"Nosferatu", "Vamp", "Bloodsucker", "Vampirism"]}]}]}}]},
"ghosts" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Ghostbusters"]},
{"field":"plot" ,"operator":"contains","value":["Ghostbusters"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Ghostbusters"]},
{"field":"plot" ,"operator":"contains","value":["Ghostbusters"]}]}]}}]},
"jurassic" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Jurassic Park"]},
{"field":"plot" ,"operator":"contains","value":["Jurassic Park"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Jurassic Park"]},
{"field":"plot" ,"operator":"contains","value":["Jurassic Park"]}]}]}}]},
"disney" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Disney","Walt Disney"]},
{"field":"plot" ,"operator":"contains","value":["Disney","Walt Disney"]},
{"field":"studio" ,"operator":"contains","value":["Disney","Walt Disney"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Disney","Walt Disney"]},
{"field":"plot" ,"operator":"contains","value":["Disney","Walt Disney"]},
{"field":"studio" ,"operator":"contains","value":["Disney","Walt Disney"]}]}]}}]},
"potter" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Harry Potter"]},
{"field":"plot" ,"operator":"contains","value":["Harry Potter"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Harry Potter","Fantastic beasts"]},
{"field":"plot" ,"operator":"contains","value":["Harry Potter","Fantastic beasts"]}]}]}}]},
"spider" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Spider Man","Spider-Man","Spiderman"]},
{"field":"plot" ,"operator":"contains","value":["Spider Man","Spider-Man","Spiderman"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Spider Man","Spider-Man","Spiderman"]},
{"field":"plot" ,"operator":"contains","value":["Spider Man","Spider-Man","Spiderman"]}]}]}}]},
"sponge" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["SpongeBob"]},
{"field":"plot" ,"operator":"contains","value":["SpongeBob"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["SpongeBob"]},
{"field":"plot" ,"operator":"contains","value":["SpongeBob"]}]}]}}]},
"ranger" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Power Rangers"]},
{"field":"plot" ,"operator":"contains","value":["Power Rangers"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Power Rangers"]},
{"field":"plot" ,"operator":"contains","value":["Power Rangers"]}]}]}}]},
"batman" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Batman"]},
{"field":"plot" ,"operator":"contains","value":["Batman"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Batman","Joker"]},
{"field":"plot" ,"operator":"contains","value":["Batman"]}]}]}}]},
"wonka" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Willy Wonka","Wonka"]},
{"field":"plot" ,"operator":"contains","value":["Willy Wonka","Wonka"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Willy Wonka","Wonka"]},
{"field":"plot" ,"operator":"contains","value":["Willy Wonka","Wonka"]}]}]}}]},
"future" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Back to the future","Delorean"]},
{"field":"plot" ,"operator":"contains","value":["Back to the future","Delorean"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Back to the future","Delorean"]},
{"field":"plot" ,"operator":"contains","value":["Back to the future","Delorean"]}]}]}}]},
"horror" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Horror"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"genre" ,"operator":"contains","value":["Horror"]}]}]}}]},
"heros" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Veterans","WWI","WWII","Korean War","Vietnam War","World War I","World War II"]},
{"field":"plot" ,"operator":"contains","value":["Veterans","WWI","WWII","Korean War","Vietnam War","World War I","World War II"]},
{"field":"genre" ,"operator":"contains","value":["War"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Veterans","WWI","WWII","Korean War","Vietnam War","World War I","World War II"]},
{"field":"plot" ,"operator":"contains","value":["Veterans","WWI","WWII","Korean War","Vietnam War","World War I","World War II"]},
{"field":"genre" ,"operator":"contains","value":["War"]}]}]}}]},
"tardis" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"is" ,"value":["Dr. Who","Doctor Who","Tardis"]},
{"field":"plot" ,"operator":"is" ,"value":["Dr. Who","Doctor Who","Tardis"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"is" ,"value":["Dr. Who","Doctor Who","Tardis"]},
{"field":"plot" ,"operator":"is" ,"value":["Dr. Who","Doctor Who","Tardis"]}]}]}}]},
"turkey" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Thanksgiving","Turkey"]},
{"field":"plot" ,"operator":"contains","value":["Thanksgiving","Turkey"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Thanksgiving","Turkey"]},
{"field":"plot" ,"operator":"contains","value":["Thanksgiving","Turkey"]}]}]}}]},
"marvel" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Marvel"]},
{"field":"plot" ,"operator":"contains","value":["Marvel"]},
{"field":"studio" ,"operator":"contains","value":["Marvel"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Marvel"]},
{"field":"plot" ,"operator":"contains","value":["Marvel"]},
{"field":"studio" ,"operator":"contains","value":["Marvel"]}]}]}}]},
"xmas" :{"episodes": [{"sort":{"method":"episode","order":"ascending"},"filter":{"and":[{"or" :[{"field":"tvshow" ,"operator":"contains","value":["Christmas","X-Mas","Christmastime","Hanukkah","Kwanzaa"]},
{"field":"plot" ,"operator":"contains","value":["Christmas","X-Mas","Christmastime","Hanukkah","Kwanzaa"]}]}]}}],
"movies" : [{"sort":{"method":"year" ,"order":"ascending"},"filter":{"and":[{"or" :[{"field":"title" ,"operator":"contains","value":["Christmas","X-Mas","Christmastime","Hanukkah","Kwanzaa"]},
{"field":"plot" ,"operator":"contains","value":["Christmas","X-Mas","Christmastime","Hanukkah","Kwanzaa"]}]}]}}]}}

View File

@@ -0,0 +1,26 @@
{
"uuid": "",
"library": {
"Item": {
"enabled": false,
"type": "",
"name": "",
"logo": "",
"path": [],
"rules": {}
},
"TV Networks": [],
"TV Shows": [],
"TV Genres": [],
"Movie Genres": [],
"Movie Studios": [],
"Mixed Genres": [],
"Mixed": [],
"Playlists": [],
"Recommended": [],
"Services": [],
"Music Genres": []
},
"whitelist": [],
"blacklist": []
}

View File

@@ -0,0 +1,45 @@
{
"item": {
"id": "",
"number": 0,
"name": "",
"logo": "",
"group": [
],
"catchup": "vod",
"radio": false,
"favorite": false,
"realtime": false,
"media": "",
"label": "",
"url": "",
"tvg-shift": "",
"x-tvg-url": "",
"media-dir": "",
"media-size": "",
"media-type": "",
"catchup-source": "",
"catchup-days": "",
"catchup-correction": "",
"provider": "",
"provider-type": "",
"provider-logo": "",
"provider-countries": "",
"provider-languages": "",
"x-playlist-type": "",
"kodiprops": [
]
},
"required": {
"id": "",
"number": 0,
"name": "",
"logo": "",
"group": [
],
"catchup": "vod",
"radio": false,
"label": "",
"url": ""
}
}

View File

@@ -0,0 +1,146 @@
{"Blues":"Blues developed in the 19th century and was originally played by a single performer singing with a guitar or banjo. By the 1960s, The Blues had evolved significantly along with the instruments used (now electric guitars, bass and drums) and made its way across the Atlantic to the UK and beyond. A common feature of Blues music is the 12-bar blues chord structure. This starts with 4 bars on the root note of the scale followed by two on the 4th. This is then followed by two on the root, one bar on the 5th, one bar on the 4th and another two on the root.",
"Classical":"Encompassing a huge range of sub-genres, classical music refers broadly to most orchestral styles between 1750 and 1820. It came as a reaction to the rules and restrictions prevalent in baroque music which predates it. To many people, anything pre-jazz sounds classical and may be referred to as such. Once you get inside this genre, however, you will find whole-world music and a stunning range of styles and categories.",
"Country":"Also known as country and western, country music has its roots in the south of the USA. Having evolved from a combination of different fold styles. Combining the influence of working-class immigrants it takes its cues from Irish and Celtic folk, traditional English ballads and cowboy songs. In the modern era, there are numerous sub-genres like country pop, country rock and neo-country.",
"Dance":"Dance music is a far more modern genre that could also be broadly categorized as electronic music. With roots in disco music combined with the evolution of pop music, electronic dance music took off in the late 1980s and early 90s. It is now home to an incredibly large number of sub-genres, some of which have become popular enough to be considered full genres in their own right.",
"Drill":"Havent heard of drill music? Dont worry youre not alone yet. With this being a growing underground genre, its making its way into the medias consciousness with a whole lot of controversy. Drill music is an aggressive music form taking its cues from grime, rap and dance music. Characterised by its own beat patterns, the lyrics feature what is often extreme violence and talk of criminal acts. As a result, theres been police interventions and YouTube bans some acts have to now get their videos authorised before being allowed to post. While it originated in the USA, its taken on a new British format mostly in South London where its growing.",
"Jungle":"A direct result of the dance music scene, drum and bass became a fully-fledged genre of its own. Characterised by high BPM drums and heavy bass lines, it borrows heavily from other genres. The drum and bass characteristics are significant enough for most people to be able to spot and categorise this genre quite easily.",
#7 Dubstep
Yet another love-child of the dance genre, dubstep is an evolution of garage and drum and bass. It came to prominence in the early 2000s, borrowing the heavy bass lines and distorted tones used in drum and bass.
Dubstep combined garage timing and urban influences to create an extremely energetic and popular genre of music.
#8 Easy Listening
Based more on mood rather than any particular musical traits, easy listening tends to omit vocal performances in favour of easy-going re-workings of popular pop and rock hits.
Coming to prominence in the 1970s the genre has perhaps gone through a bit of re-brand in the form of chill-out music.
#9 Electronic Dance Music (EDM)
We mentioned that dance has a lot of sub-genres, but this is its biggest. Its the fastest-growing music type across the world and rose in popularity with DJs like David Guetta, Calvin Harris and Tiesto leading the way. Its closely linked to House music and came about as disco declined.
Originally a cult and underground movement, EDM is now mainstream and while part of the dance music umbrella is very much its own entity. EDM festivals, big-name DJ gigs and Vegas events ensure it continues to be successful.
#10 Emo
With roots in rock, pop, heavy metal and punk, emo music has a specific goal in that it is designed to have a particularly emotive or emotional resonance.
Characterised by expressive melodic musicianship and often confessional lyrics. It is often associated with a particular fashion style that is also influenced by metal and punk.
#11 Funk
Funk uses a syncopated beat and heavy bass lines and distinctive grooves. It originates from African American influences and takes cues from Soul, Jazz and R&B.
Since rising to prominence in the 1960s, it has gone on to influence almost every genre of dance music as well as modern rock.
#12 Folk
Folk is a very traditional genre. Traditional folk music is orally passed down over time and often has no author. However, modern artists can still be labelled as Folk artists with their original songs.
Storytelling is a key aspect of folk music and whilst musical styles vary across the world, this is a consistent element.
#13 Garage
Another modern genre that has come directly from the evolution of electronic dance music, drum and bass and soul/R&B. Heavy baselines, irregular kick drum patterns and syncopated hi-hats are all standard characterisations for this popular style.
#14 Grunge
Grunge music is based on rock and punk and was popularised in the 1990s by bands like Nirvana and Pearl Jam. Played in a traditional rock band set up with electric guitars and bass, distorted guitars the main feature was a more anguished vocal style and perhaps a more negative outlook on life.
#15 Grime
This British take on hip-hop fuses the dubstep, garage, dancehall and drum and bass influences with rap and R&B.
Gaining notoriety through pirate radio stations in London, it has continuously evolved to incorporate more sounds and rhythms, gaining massive popularity in the process.
#16 Hip Hop
Now an extremely broad musical category, hip hop evolved out of a cultural explosion in the United States. Featuring vinyl records mixed on turntables and incorporating the rap genre along with heavy bass-lines and samples, hip hop has now become extremely significant in terms of musics cultural influence in modern times.
#17 House
House Music
Linked to EDM and trance, House music began in a USA nightclub called The Warehouse in the late 1970s. Its defined by a gradual build-up to a crescendo followed by a euphoric drop in the beat. To some extent, EDM has taken over from house music which had a peak in the 1990s and 2000s, but its still going strong, especially in places like Ibiza. It uses an addictively repetitious four-on-the-floor beat and a tempo of 120 to 130 beats per minute. A well-known sub-genre of house music is acid house.
#18 Indie
Another offshoot from rock and punk, indie music came from so-called independent artists and bands who were not part of the mainstream music industry machine. The style of indie music has typically remained with a primary rock band set-up.
However, it has evolved from a blend of punk, and rock to include modern electronic and dance music.
#19 Jazz
Historically started in New Orleans in the early 1900s, Jazz typifies musical flexibility not seen by many other genres. Featuring a mix of rhythms and tempos as well as a focus on soloing, jazz also has a huge range of potential instrumental structures and setups.
Its very common for there to be a drummer and a bass instrument as well as any number of lead instruments ranging from woodwind to stringed instruments.
Popular genres
#20 K-Pop
Remember Gangnam Style? This new genre of music was initially categorised as a brand, rather than a type of music. But its explosion not only in its native South Korea but in the Western world has elevated its status. It borrows a variety of forms, including pop, electronic music, rap, R&B and even classical music. Lady Gaga recently collaborated with a fledgeling K-Pop star Rose cementing its place in the US mainstream.
#21 Latin
Latin music refers to Latin America and the influence of the whole of South America on various styles. This genre of music has Spanish and African roots but was popularised in the United States in the 20th century by Hispanic and Latino immigrants.
Latin music is very percussive and driven by energy, passion, polyrhythms and movement.
#22 Metal
Metal, or Heavy Metal, is a sub-genre of rock music that has become a genre in its own right and spawned countless other sub-genres. Featuring a band setup with electric guitars, bass and drums, the distorted guitar sounds to give it the heavy non-commercialised and aggressive sound.
Fast tempos and shrieking vocals have become synonymous with the style.
#23 Motown
This particular genre is extremely interesting because it was the creation of Motown Records, a subsidiary of Universal, that began what would become a fully-fledged musical genre.
Best described as a pop-soul hybrid, the acts signed to the record label created a sound that would become a movement and eventually a genre in its own right.
#24 Mod
Mod or modernist music came to prominence and popularity in the working-class communities of the UK in the 1960s. Modern jazz and the Northern Soul were strong influences on Mod music.
It can also be characterised as a lifestyle or subculture and was popularised by the film Quadrophenia.
#25 Opera
A key part of the classical music tradition in the West, opera features vocal performances that make up a specific type of musical theatre. Opera is essentially a story told to music.
The lines between opera and classical music are extremely blurred and very often the two genres overlap.
#26 Pop
Pop music or popular music is an ever-evolving genre that encompasses any music that is designed for the masses. Anything played on mainstream radio can be categorised as pop.
Over the years pop has enveloped almost every genre from Motown to metal, hip-hop to drum and bass.
#27 Punk
Punk is another British music genre with roots in sub-culture development. The punk-rock scene was characterised by heavy, fast guitars, simplistic songs and basic recording techniques. Punk became incredibly iconic because of its at the time radical image and lyrical themes.
These themes and aesthetics went on to influence entire genres of music in the future.
#28 Rap
Rap describes a style of vocal delivery. However, it can be rightly regarded as a musical genre due to its massive popularity. Developing alongside hip-hop in the United States, rap evolved from MCs toasting and deejaying in Jamaican dancehall music.
It has grown to incorporate increasingly complex rhyme schemes and has been appreciated in the same regard as poetry.
#29 Reggae
Originating in Jamaica in the 1960s and taking the world by storm through the work of Bob Marley, reggae is a fusion of traditional Jamaican folk music with jazz and R&B.
Offbeat rhythms and staccato chords are common musical themes, and Reggae is closely linked to Rastafarianism and Afrocentric religion.
#30 Rhythm and Blues (R&B)
Another extremely interesting genre that has undergone several different shifts in focus. Originating in African American communities in the 1940s, it was popularized in the 1950s and the term was applied to blues records. In the 1970s the term was used to describe soul and funk.
However, its latest incarnation has blended with hip-hop and a whole range of other styles. From the 1980s to the present day it has described popular soulful artists, from Maria Carey and Whitney Houston to SZA and Jorja Smith.
#31 Rock
Arising from the evolution of the electric guitar and distorted amplification, rock music is now home to hundreds of sub-genres. Popularised in both the UK and the United States by bands playing a 4/4 rhythm and singing verse-chorus songs, it has become part of music history.
Rocknroll music is characterised by guitars and a heavy snare and a kick drum rhythm.
#32 Soul
Another genre that came from African American roots, soul music is an evolution from original rhythm and blues, gospel and jazz.
Featuring hand claps, call-and-response singing, and heavy focus on lead singers, Soul became so popular it eventually began to splinter into other genres, like Motown.
#33 Techno
Techno-music is a direct descendant of the dance music genre. It differentiates itself by having a much higher tempo and kick 4/4 kick drum lead beat.
#34 Trance
Another offshoot of electronic dance music, trance features heavily synthesised lead lines that have to induce a trance-like state in dancers. The euphoric nature of techno music is meant to take listeners on a journey.
#35 World
This is a huge genre that encompasses a localised version of traditional music from all over the globe. Each country has rhythmic and melodic nuances that set them apart.
The term World music can be used to describe all of them, but each countrys music has its own names and even sub-genres.

View File

@@ -0,0 +1,30 @@
<!--
Custom Providers:
- Allows users to create a bespoke list of providers to map to.
- For each provider name that matches a provider name below the given name, type,
icon, country codes and lanuage codes will be used.
- If no names match the addon will just use the supplied name and any other metadta supplied
in the M3U for the provider.
- The valid values for types are: unknown, addon, satellite, cable, aerial and iptv
- Country codes should be ISO 3166 codes, comma separated (e.g 'GB,IE,FR,CA'),
an empty string means this value is undefined.
- Language codes should be RFC 5646 codes, comma separated (e.g. 'en_GB,fr_CA'),
an empty string means this value is undefined.
If you have publicly available icons for providers and would like to make them available as default please
create an issue at https://github.com/kodi-pvr/pvr.iptvsimple/issues requesting their inclusion.
If you are creating your own Custom Providers file make a copy of this file in the same directory so it's
not overwritten and start from there.
NOTE: IF YOU MODIFY THIS FILE IT WILL BE OVERWRITTEN NEXT TIME THE ADDON IS STARTED
-->
<providerMappings>
<providerMapping mappedName="PseudoTV">
<name>PseudoTV Live</name>
<type>local</type>
<iconPath>https://github.com/PseudoTV/PseudoTV_Live/raw/master/plugin.video.pseudotv.live/resources/skins/default/media/logo.png</iconPath>
</providerMapping>
</providerMappings>

View File

@@ -0,0 +1,6 @@
{
"id": 0,
"values": {
"0": ""
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,18 @@
{
"servers": {
"Example": {
"id": "",
"version": "",
"uuid": "",
"name": "",
"host": "",
"remotes": {
},
"settings": {
},
"enabled": false,
"online": false,
"updated": null
}
}
}

View File

@@ -0,0 +1,557 @@
<!-- DTD for TV listings
This is a DTD to represent a TV listing. It doesn't explicitly group
programmes by day or by channel, instead broadcast time and channel
are attributes of the 'programme' element. Optionally, data about the
TV channels used can be stored in 'channel' elements.
Data about a TV programme are stored in the subelements of element
'programme', but metadata such as when it will be broadcast are stored
as attributes.
Many of the details have a 'lang' attribute so that you can
store them in multiple languages or have mixed languages in a single
listing. This 'lang' should be the two-letter code such as 'en' or
'fr_FR'. Or you can just leave it out and let your reader take a
guess.
Unless otherwise specified, an element containing CDATA must have some
text if it is written.
An example XML file for this DTD might look like this:
<tv generator-info-name="my listings generator">
<channel id="3sat.de">
<display-name lang="de">3SAT</display-name>
</channel>
<channel id="das-erste.de">
<display-name lang="de">ARD</display-name>
<display-name lang="de">Das Erste</display-name>
</channel>
<programme start="200006031633" channel="3sat.de">
<title lang="de">blah</title>
<title lang="en">blah</title>
<desc lang="de">
Blah Blah Blah.
</desc>
<credits>
<director>blah</director>
<actor>a</actor>
<actor>b</actor>
</credits>
<date>19901011</date>
<country>ES</country>
<episode-num system="xmltv_ns">2 . 9 . 0/1</episode-num>
<video>
<aspect>16:9</aspect>
</video>
<rating system="MPAA">
<value>PG</value>
<icon src="pg_symbol.png" />
</rating>
<star-rating>
<value>3/3</value>
</star-rating>
</programme>
<programme> ... </programme>
...
</tv>
This describes two channels and then a programme broadcast on one of
the channels, then some more programmes. Almost everything in the DTD
is optional, so you can write files which are much simpler than this
example.
All dates and times in this DTD follow the same format, loosely based
on ISO 8601. They can be 'YYYYMMDDhhmmss' or some initial
substring, for example if you only know the year and month you can
have 'YYYYMM'. You can also append a timezone to the end; if no
explicit timezone is given, UTC is assumed. Examples:
'200007281733 BST', '200209', '19880523083000 +0300'. (BST == +0100.)
Unless specified otherwise, textual element content may not contain
newlines - this is to make it easy to convert into line-oriented
formats, and to avoid the question of what exactly a newline would
mean in the middle of someone's name or whatever. Leading and
trailing whitespace in element content is not significant.
At present versions of this DTD correspond to releases of the 'xmltv'
package, which is a set of programs to generate and manipulate files
conforming to this DTD. Written by Ed Avis (ed@membled.com) and
Gottfried Szing, thanks to others for suggestions.
$Id: xmltv.dtd,v 1.44 2010/04/10 13:11:06 knowledgejunkie Exp $
-->
<!-- The root element, tv.
Date should be the date when the listings were originally produced in
whatever format; if you're converting data from another source, then
use the date given by that source. The date when the conversion
itself was done is not important.
To indicate the source of the listings, there are three attributes you
can define:
'source-info-url' is a URL describing the data source in
some human-readable form. So if you are getting your listings from
SAT.1, you might set this to the URL of a page explaining how to
subscribe to their feed. If you are getting them from a website, the
URL might be the index of the site or at least of the TV listings
section.
'source-info-name' is the link text for that URL; it should
generally be the human-readable name of your listings supplier.
Sometimes the link text might be printed without the link itself, in
hardcopy listings for example.
'source-data-url' is where the actual data is grabbed from. This
should link directly to the machine-readable data files if possible,
but it's not rigorously defined what 'actual data' means. If you are
parsing the data from human-readable pages, then it's more appropriate
to link to them with the source-info stuff and omit this attribute.
To publicize your wonderful program which generated this file, you can
use 'generator-info-name' (preferably in the form 'progname/version')
and 'generator-info-url' (a link to more info about the program).
-->
<!ELEMENT tv (channel*, programme*)>
<!ATTLIST tv date CDATA #IMPLIED
source-info-url CDATA #IMPLIED
source-info-name CDATA #IMPLIED
source-data-url CDATA #IMPLIED
generator-info-name CDATA #IMPLIED
generator-info-url CDATA #IMPLIED >
<!-- channel - details of a channel
Each 'programme' element (see below) should have an attribute
'channel' giving the channel on which it is broadcast. If you want to
provide more detail about channels, you can give some 'channel'
elements before listing the programmes. The 'id' attribute of the
channel should match what is given in the 'channel' attribute of the
programme.
Typically, all the channels used in a particular TV listing will be
included and then the programmes using those channels. But it's
entirely optional to include channel details - you can just leave out
channel elements or provide only some of them. It is also okay to
give just channels and no programmes, if you just want to describe
what TV channels are available in a certain area.
Each channel has one id attribute, which must be unique and should
preferably be in the form suggested by RFC2838 (the 'broadcast'
element of the grammar in that RFC, in other words, a DNS-like name
but without any URI scheme). Then one or more display names which are
shown to the user. You might want a different display name for
different languages, but also you can have more than one name for the
same language. Names listed earlier are considered 'more canonical'.
Since the display name is just there as a way for humans to refer to
the channel, it's acceptable to just put the channel number if it's
fairly universal among viewers of the channel. But remember that this
isn't an official statement of what channel number has been
allocated, and the same number might be used for a different channel
somewhere else.
The ordering of channel elements makes no difference to the meaning of
the file, since they are looked up by id and not by their position.
However it makes things like diffing easier if you write the channel
elements sorted by ASCII order of their ids.
-->
<!ELEMENT channel (display-name+, icon*, url*) >
<!ATTLIST channel id CDATA #REQUIRED >
<!-- A user-friendly name for the channel - maybe even a channel
number. List the most canonical / common ones first and the most
obscure names last. The lang attribute follows RFC 1766.
-->
<!ELEMENT display-name (#PCDATA)>
<!ATTLIST display-name lang CDATA #IMPLIED>
<!-- A URL where you can find out more about the element that contains
it (programme or channel). This might be the official site, or a fan
page, whatever you like really.
If multiple url elements are given, the most authoritative or official
(which might conflict...) sites should be listed first.
-->
<!ELEMENT url (#PCDATA)>
<!-- programme - details of a single programme transmission
A show will be exactly the same whether it is broadcast at 18:00 or
19:00, and on whichever channel. Technical details like broadcast
time don't affect the content of the programme itself, so they are
included as attributes of this element. Start time and channel are
the two that you must include.
Sometimes VCR programming systems like PDC or VPS have their own
notion of 'start time' which is different from the actual start time,
so there are attributes for that. In practice, stop time will usually
be the start time of the next programme, but if you can get it more
accurate, good for you. Similarly, you can specify a code for
Gemstar's Showview or VideoPlus programming systems.
TV listings sometimes have the problem of listing two or more
programmes in the same timeslot, such as 'News; Weather'. We call
this a 'clump' of programmes, and the 'clumpidx' attribute
differentiates between two programmes sharing the same timeslot and
channel. In this case News would have clumpidx="0/2" and Weather
would have clumpidx="1/2". If you don't have this problem, be
thankful!
It's intended that start time and stop time, when both are present,
make a half-closed interval: a programme is considered to be
broadcasting _at_ its start time but to stop just before its stop
time. In this way a programme from 11:00 to 12:00 does not overlap
with another programme from 12:00 to 13:00, not even for a moment.
Nor is there any gap between the two.
To do: Some means of indicating breaks between programmes on the same
channel. The 'channel' attribute references the 'id' of a channel
element, but the DTD doesn't give a way to specify this constraint.
Perhaps there is some better XML syntax we could use for that.
-->
<!ELEMENT programme (title+, sub-title*, desc*, credits?, date?,
category*, language?, orig-language?, length?,
icon*, url*, country*, episode-num*, video?, audio?,
previously-shown?, premiere?, last-chance?, new?,
subtitles*, rating*, star-rating*, review* )>
<!ATTLIST programme start CDATA #REQUIRED
stop CDATA #IMPLIED
pdc-start CDATA #IMPLIED
vps-start CDATA #IMPLIED
showview CDATA #IMPLIED
videoplus CDATA #IMPLIED
channel CDATA #REQUIRED
clumpidx CDATA "0/1" >
<!-- Programme title, eg 'The Simpsons'. -->
<!ELEMENT title (#PCDATA)>
<!ATTLIST title lang CDATA #IMPLIED>
<!-- Sub-title or episode title, eg 'Datalore'. Should probably be
called 'secondary title' to avoid confusion with captioning!
-->
<!ELEMENT sub-title (#PCDATA)>
<!ATTLIST sub-title lang CDATA #IMPLIED>
<!-- Description of the programme or episode.
Unlike other elements, long bits of whitespace here are treated as
equivalent to a single space and newlines are permitted, so you can
break lines and write a pretty-looking paragraph if you wish.
-->
<!ELEMENT desc (#PCDATA)>
<!ATTLIST desc lang CDATA #IMPLIED>
<!-- Credits for the programme.
People are listed in decreasing order of importance; so for example
the starring actors appear first followed by the smaller parts. As
with other parts of this file format, not mentioning a particular
actor (for example) does not imply that he _didn't_ star in the film -
so normally you'd list only the few most important people.
Adapter can be either somebody who adapted a work for television, or
somebody who did the translation from another language. Maybe these
should be separate, but if so how would 'translator' fit in with the
'language' element?
-->
<!ELEMENT credits (director*, actor*, writer*, adapter*, producer*,
composer*, editor*, presenter*, commentator*,
guest* )>
<!ELEMENT director (#PCDATA)>
<!ELEMENT actor (#PCDATA)>
<!ATTLIST actor role CDATA #IMPLIED>
<!ELEMENT writer (#PCDATA)>
<!ELEMENT adapter (#PCDATA)>
<!ELEMENT producer (#PCDATA)>
<!ELEMENT composer (#PCDATA)>
<!ELEMENT editor (#PCDATA)>
<!ELEMENT presenter (#PCDATA)>
<!ELEMENT commentator (#PCDATA)>
<!ELEMENT guest (#PCDATA)>
<!-- The date the programme or film was finished. This will probably
be the same as the copyright date.
-->
<!ELEMENT date (#PCDATA)>
<!-- Type of programme, eg 'soap', 'comedy' or whatever the
equivalents are in your language. There's no predefined set of
categories and it's okay for a programme to belong to several.
-->
<!ELEMENT category (#PCDATA)>
<!ATTLIST category lang CDATA #IMPLIED>
<!-- The language the programme will be broadcast in. This does not
include the language of any subtitles, but it is affected by dubbing
into a different language. For example, if a French film is dubbed
into English, language=en and orig-language=fr.
There are two ways to specify the language. You can use the
two-letter codes such as en or fr, or you can give a name such as
'English' or 'Deutsch'. In the latter case you might want to use the
'lang' attribute, for example
<language lang="fr">Allemand</language>
-->
<!ELEMENT language (#PCDATA)>
<!ATTLIST language lang CDATA #IMPLIED>
<!-- The original language, before dubbing. The same remarks as for
'language' apply.
-->
<!ELEMENT orig-language (#PCDATA)>
<!ATTLIST orig-language lang CDATA #IMPLIED>
<!-- The true length of the programme, not counting advertisements or
trailers. But this does take account of any bits which were cut out
of the broadcast version - eg if a two hour film is cut to 110 minutes
and then padded with 20 minutes of advertising, length will be 110
minutes even though end time minus start time is 130 minutes.
-->
<!ELEMENT length (#PCDATA)>
<!ATTLIST length units (seconds | minutes | hours) #REQUIRED>
<!-- An icon associated with the element that contains it.
src: uri of image
width, height: (optional) dimensions of image
These dimensions are pixel dimensions for the time being, eventually
this will change to be more like HTML's 'img'.
-->
<!ELEMENT icon EMPTY>
<!ATTLIST icon src CDATA #REQUIRED
width CDATA #IMPLIED
height CDATA #IMPLIED>
<!-- The value of the element that contains it. This is for elements
that can have both a textual 'value' and an icon. At present there is
no 'lang' attribute here because things like 'PG' are not translatable
(although a document explaining what 'PG' actually means would be).
It happens that 'value' is used only for this sort of thing.
-->
<!ELEMENT value (#PCDATA)>
<!-- A country where the programme was made or one of the countries in
a joint production. You can give the name of a country, in which case
you might want to specify the language in which this name is written,
or you can give a two-letter uppercase country code, in which case the
lang attribute should not be given. For example,
<country lang="en">Italy</country>
<country>GB</country>
-->
<!ELEMENT country (#PCDATA)>
<!ATTLIST country lang CDATA #IMPLIED>
<!-- Episode number
Not the title of the episode, its number or ID. There are several
ways of numbering episodes, so the 'system' attribute lets you specify
which you mean.
There are two predefined numbering systems, 'xmltv_ns' and
'onscreen'.
xmltv_ns: This is intended to be a general way to number episodes and
parts of multi-part episodes. It is three numbers separated by dots,
the first is the series or season, the second the episode number
within that series, and the third the part number, if the programme is
part of a two-parter. All these numbers are indexed from zero, and
they can be given in the form 'X/Y' to show series X out of Y series
made, or episode X out of Y episodes in this series, or part X of a
Y-part episode. If any of these aren't known they can be omitted.
You can put spaces whereever you like to make things easier to read.
(NB 'part number' is not used when a whole programme is split in two
for purely scheduling reasons; it's intended for cases where there
really is a 'Part One' and 'Part Two'. The format doesn't currently
have a way to represent a whole programme that happens to be split
across two or more timeslots.)
Some examples will make things clearer. The first episode of the
second series is '1.0.0/1' . If it were a two-part episode, then the
first half would be '1.0.0/2' and the second half '1.0.1/2'. If you
know that an episode is from the first season, but you don't know
which episode it is or whether it is part of a multiparter, you could
give the episode-num as '0..'. Here the second and third numbers have
been omitted. If you know that this is the first part of a three-part
episode, which is the last episode of the first series of thirteen,
its number would be '0 . 12/13 . 0/3'. The series number is just '0'
because you don't know how many series there are in total - perhaps
the show is still being made!
The other predefined system, onscreen, is to simply copy what the
programme makers write in the credits - 'Episode #FFEE' would
translate to '#FFEE'.
You are encouraged to use one of these two if possible; if xmltv_ns is
not general enough for your needs, let me know. But if you want, you
can use your own system and give the 'system' attribute as a URL
describing the system you use.
-->
<!ELEMENT episode-num (#PCDATA)>
<!ATTLIST episode-num system CDATA "onscreen">
<!-- Video details: the subelements describe the picture quality as
follows:
present: whether this programme has a picture (no, in the
case of radio stations broadcast on TV or 'Blue'), legal values are
'yes' or 'no'. Obviously if the value is 'no', the other elements are
meaningless.
colour: 'yes' for colour, 'no' for black-and-white.
aspect: The horizontal:vertical aspect ratio, eg '4:3' or '16:9'.
quality: information on the quality, eg 'HDTV', '800x600'.
-->
<!ELEMENT video (present?, colour?, aspect?, quality?)>
<!ELEMENT present (#PCDATA)>
<!ELEMENT colour (#PCDATA)>
<!ELEMENT aspect (#PCDATA)>
<!ELEMENT quality (#PCDATA)>
<!-- Audio details, similar to video details above.
present: whether this programme has any sound at all, 'yes' or 'no'.
stereo: Description of the stereo-ness of the sound. Legal values
are currently 'mono','stereo','dolby','dolby digital','bilingual'
and 'surround'. 'bilingual' in this case refers to a single audio
stream where the left and right channels contain monophonic audio
in different languages. Other values may be added later.
-->
<!ELEMENT audio (present?, stereo?)>
<!ELEMENT stereo (#PCDATA)>
<!-- When and where the programme was last shown, if known. Normally
in TV listings 'repeat' means 'previously shown on this channel', but
if you don't know what channel the old screening was on (but do know
that it happened) then you can omit the 'channel' attribute.
Similarly you can omit the 'start' attribute if you don't know when
the previous transmission was (though you can of course give just the
year, etc.).
The absence of this element does not say for certain that the
programme is brand new and has never been screened anywhere before.
-->
<!ELEMENT previously-shown EMPTY>
<!ATTLIST previously-shown start CDATA #IMPLIED
channel CDATA #IMPLIED >
<!-- 'Premiere'. Different channels have different meanings for this
word - sometimes it means a film has never before been seen on TV in
that country, but other channels use it to mean 'the first showing of
this film on our channel in the current run'. It might have been
shown before, but now they have paid for another set of showings,
which makes the first in that set count as a premiere!
So this element doesn't have a clear meaning, just use it to represent
where 'premiere' would appear in a printed TV listing. You can use
the content of the element to explain exactly what is meant, for
example:
<premiere lang="en">
First showing on national terrestrial TV
</premiere>
The textual content is a 'paragraph' as for <desc>. If you don't want
to give an explanation, just write empty content:
<premiere />
-->
<!ELEMENT premiere (#PCDATA)>
<!ATTLIST premiere lang CDATA #IMPLIED>
<!-- Last-chance. In a way this is the opposite of premiere. Some
channels buy the rights to show a movie a certain number of times, and
the first may be flagged 'premiere', the last as 'last showing'.
For symmetry with premiere, you may use the element content to give a
'paragraph' describing exactly what is meant - it's unlikely to be the
last showing ever! Otherwise, explicitly put empty content:
<last-chance />
-->
<!ELEMENT last-chance (#PCDATA)>
<!ATTLIST last-chance lang CDATA #IMPLIED>
<!-- New. This is the first screened programme from a new show that
has never been shown on television before - if not worldwide then at
least never before in this country. After the first episode or
programme has been shown, subsequent ones are no longer 'new'.
Similarly the second series of an established programme is not 'new'.
Note that this does not mean 'new season' or 'new episode' of an
existing show. You can express part of that using the episode-num
stuff.
-->
<!ELEMENT new EMPTY>
<!-- Subtitles. These can be either 'teletext' (sent digitally, and
displayed at the viewer's request), 'onscreen' (superimposed on the
picture and impossible to get rid of), or 'deaf-signed' (in-vision
signing for users of sign language). You can have multiple subtitle
streams to handle different languages. Language for subtitles is
specified in the same way as for programmes.
-->
<!ELEMENT subtitles (language?)>
<!ATTLIST subtitles type (teletext | onscreen | deaf-signed) #IMPLIED>
<!-- Rating. Various bodies decide on classifications for films -
usually a minimum age you must be to see it. In principle the same
could be done for ordinary TV programmes. Because there are many
systems for doing this, you can also specify the rating system used
(which in practice is the same as the body which made the rating).
-->
<!ELEMENT rating (value, icon*)>
<!ATTLIST rating system CDATA #IMPLIED>
<!-- 'Star rating' - many listings guides award a programme a score as
a quick guide to how good it is. The value of this element should be
'N / M', for example one star out of a possible five stars would be
'1 / 5'. Zero stars is also a possible score (and not the same as
'unrated'). You should try to map whatever wacky system your listings
source uses to a number of stars: so for example if they have thumbs
up, thumbs sideways and thumbs down, you could map that to two, one or
zero stars out of two. If a programme is marked as recommended in a
listings guide you could map this to '1 / 1'. Because there could be many
ways to provide star-ratings or recommendations for a programme, you can
specify multiple star-ratings. You can specify the star-rating system
used, or the provider of the recommendation, with the system attribute.
Whitespace between the numbers and slash is ignored.
-->
<!ELEMENT star-rating (value, icon*)>
<!ATTLIST star-rating system CDATA #IMPLIED>
<!-- Review. Listings guides may provide reviews of programmes in
addition to, or in place of, standard programme descriptions. They are
usually written by in-house reviewers, but reviews can also be made
available by third-party organisations/individuals. The value of this
element must be either the text of the review, or a URL that links to it.
Optional attributes giving the review source and the individual reviewer
can also be specified.
-->
<!ELEMENT review (#PCDATA)>
<!ATTLIST review type (text | url) #REQUIRED
source CDATA #IMPLIED
reviewer CDATA #IMPLIED>
<!-- (Why are things like 'stereo', which must be one of a small
number of values, stored as the contents of elements rather than as
attributes? Because they are data rather than metadata. Attributes
are used for things like the language or encoding of element contents,
or for programme transmission details.) -->

View File

@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="tv">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="channel">
<xs:complexType>
<xs:sequence>
<xs:element name="display-name">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="icon">
<xs:complexType>
<xs:attribute name="src" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element maxOccurs="unbounded" name="programme">
<xs:complexType>
<xs:sequence>
<xs:element name="title">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="sub-title">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="optional" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="desc">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="credits">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="actor" type="xs:string" />
<xs:element minOccurs="0" name="director" type="xs:string" />
<xs:element name="writer" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="date" type="xs:unsignedInt" />
<xs:element maxOccurs="unbounded" name="category">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="lang" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="length">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:unsignedShort">
<xs:attribute name="units" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="icon">
<xs:complexType>
<xs:attribute name="src" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" maxOccurs="unbounded" name="episode-num">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="system" type="xs:string" use="optional" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="new" />
<xs:element name="rating">
<xs:complexType>
<xs:sequence>
<xs:element name="value" type="xs:string" />
</xs:sequence>
<xs:attribute name="system" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
<xs:element name="star-rating">
<xs:complexType>
<xs:sequence>
<xs:element name="value" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="start" type="xs:unsignedLong" use="required" />
<xs:attribute name="channel" type="xs:string" use="required" />
<xs:attribute name="catchup-id" type="xs:string" use="required" />
<xs:attribute name="stop" type="xs:unsignedLong" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="date" type="xs:unsignedLong" use="required" />
<xs:attribute name="source-info-url" type="xs:string" use="required" />
<xs:attribute name="source-info-name" type="xs:string" use="required" />
<xs:attribute name="generator-info-url" type="xs:string" use="required" />
<xs:attribute name="generator-info-name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>