2020-08-20, 02:38
Disclaimer: I know—I have serious OCD issues. But the fact that even after 19 releases I am unable to get XBMC/Kodi to see my files properly, I felt there is scope for something new.
My current media drive’s layout is simple. My Videos drive has everything in just 3 folders:
Within the Movies folder, every movie is within its own folder. So something like:
Taking the 12 Strong movie as an example, the contents of its folder look something like this:
And this is how all of my movie folders are. Even if I do not have extras for a film, every film is within its own folder.
My collections are also organised in folders. So my Captain America Collection folder looks something like this:
Perhaps you can see where I may be having problems. Not only do I have multiple editions of some titles, but I have every extra ripped from my discs; and I’ve got them (the extras too) in a nested folder structure that I think is ideal to me. Of course, in my ideal world, I would have liked my media player to be able to detect this folder structure and intelligently curate the library, and present the media to me for consumption. But, I know that isn’t easy.
I know there are add-ons that can help with various things—like managing the Extras for every feature; and even managing various versions/editions of the titles themselves. But therein lies the problem. They are add-ons. They break. And many times, they don’t even work as intended. Like some movies have nested folders within the Extras folder too—like the deleted scenes may be 10 separate files instead of 1. All that gets thrown out—and even the sort order gets ignored—and everything is just displayed as 1 list.
The only way to have it work properly is if Kodi itself could see my data the way I see it. So, here’s what my idle brain has come up with.
——
The suggestion/concept is to have an all encompassing container that would house media (video, audio & image) content into a single folder like structure with the extension .kodi. To the OS, the .kodi container is just another folder. But to Kodi, it is an all-in-one package. The contents of this container would be:
For movies which are single-titled, like for example ‘Forrest Gump’—the Forrest Gump (1994).kodi container would look like this:
If multiple editions/versions of the movie exists, the Forrest Gump (1994).kodi container would look like this:
For multi-titled movies, like ‘The Lord of the Rings’ series—every individual title should be saved as a stand-alone container. So, The Lord of the Rings - The Fellowship of the Ring (2001).kodi container would look like:
The .kodi container can be nested too. So the above The Lord of the Rings - The Fellowship of the Ring (2001).kodi container could be inside The Lord of the Rings - The Motion Picture Trilogy.kodi container, whose contents would looks like this:
And in turn, The Lord of the Rings - The Motion Picture Trilogy.kodi container could be inside The Middle Earth Collection.kodi container, whose contents would looks like this:
All Extras folders (nested at any level) should be ignored during scans into the library; and if the folder itself is empty—or doesn’t exist—it would not be displayed within Kodi as an option either.
All words used after the (YEAR) in a file name within the Titles folder, could be used to describe that version of the title—like 4K, Sapphire Edition, Extended Edition, or Director’s Cut etc.
If a suffixed -poster.jpg file does not exist for a media file, the folder.jpg file residing in the same folder will be used as the poster image for that media file.
-x-x-x-
TV Shows would follow the same pattern. Every season would be a .kodi container in itself. With all of them being nested inside a show’s .kodi container. For example, Friends - The Complete Series.kodi container would consist of:
The 1 The Complete First Season.kodi container itself would look like this:
-x-x-x-
For music albums, again, every album would be a .kodi container in itself. With all of them being nested inside either an Artist’s .kodi container; or, just by themselves—as a standalone album. An artist’s .kodi container—for example, Michael Jackson.kodi could consist of:
This would allow for multiple album versions to be parsed correctly as well. Like, if you have the 3 versions of the Thriller album, the 3 Thriller.kodi container above would consist of:
A nesting container format allows for organization beyond the metadata of the file. Audio metadata is almost always wrongly scraped. And even if manually managed, for people with multiple versions of the albums or perhaps 2 albums the exact same name as well, it does become a nightmare. (Example: The soundtrack of Coco. There are 3 versions in 2 languages; but despite having all of the metadata fed in accurately and using the ‘sort album’ field within the ID3 tags, the album never shows up right in any audio player.)
Music albums do not have to be within an Artist container. So, if the Thriller.kodi container was for a single version by itself, it would look like:
I know—this may not be for everyone. But I felt like sharing what I have been thinking of… in the hope that my 2¢ could make a difference. (And, if you made it up to here… thanks for reading.)
My current media drive’s layout is simple. My Videos drive has everything in just 3 folders:
- Home Videos
- Movies
- TV Shows
Within the Movies folder, every movie is within its own folder. So something like:
- 12 Strong (2018)
- 12 Years A Slave (2013)
- 127 Hours (2010)
- A Clockwork Orange (1971)
- A King In New York (1957)
- A Private War (2018)
- A Quiet Place (2018)
- A.I. Artificial Intelligence (2001)
- Ad Astra (2019)
- etc.
Taking the 12 Strong movie as an example, the contents of its folder look something like this:
- 12 Strong (2018)-poster.jpg
- 12 Strong (2018).mkv
- Extras
- 1 12 Strong - The Making Of An Impossible Mission-poster.jpg
- 1 12 Strong - The Making Of An Impossible Mission.mkv
- 2 Monumental Effort - Building America's Response Monument-poster.jpg
- 2 Monumental Effort - Building America's Response Monument.mkv
- folder.jpg
- 1 12 Strong - The Making Of An Impossible Mission-poster.jpg
- folder.jpg
And this is how all of my movie folders are. Even if I do not have extras for a film, every film is within its own folder.
My collections are also organised in folders. So my Captain America Collection folder looks something like this:
- Captain America Collection (2011-2016)
- 1 Captain America - The First Avenger (2011)
- 1 Captain America - The First Avenger (2011)-poster.jpg
- 1 Captain America - The First Avenger (2011).mkv
- 2 Captain America - The First Avenger (2011) 4K-poster.jpg
- 2 Captain America - The First Avenger (2011) 4K.mkv
- Extras
- 1 Deleted Scenes-poster.jpg
- 1 Deleted Scenes.mkv
- 2 Marvel One-Shot - A Funny Thing Happened On The Way To Thor's Hammer-poster.jpg
- 2 Marvel One-Shot - A Funny Thing Happened On The Way To Thor's Hammer.mkv
- 3 Outfitting A Hero-poster.jpg
- 3 Outfitting A Hero.mkv
- 4 Howling Commandos-poster.jpg
- 4 Howling Commandos.mkv
- 5 Heightened Technology-poster.jpg
- 5 Heightened Technology.mkv
- 6 The Transformation-poster.jpg
- 6 The Transformation.mkv
- 7 Behind The Skull-poster.jpg
- 7 Behind The Skull.mkv
- 8 Captain America's Origin-poster.jpg
- 8 Captain America's Origin.mkv
- 9 The Assembly Begins-poster.jpg
- 9 The Assembly Begins.mkv
- folder.jpg
- 1 Deleted Scenes-poster.jpg
- folder.jpg
- 1 Captain America - The First Avenger (2011)-poster.jpg
- 2 Captain America - The Winter Soldier (2014)
- …
- …
- 3 Captain America - Civil War (2016)
- …
- …
- 1 Captain America - The First Avenger (2011)
Perhaps you can see where I may be having problems. Not only do I have multiple editions of some titles, but I have every extra ripped from my discs; and I’ve got them (the extras too) in a nested folder structure that I think is ideal to me. Of course, in my ideal world, I would have liked my media player to be able to detect this folder structure and intelligently curate the library, and present the media to me for consumption. But, I know that isn’t easy.
I know there are add-ons that can help with various things—like managing the Extras for every feature; and even managing various versions/editions of the titles themselves. But therein lies the problem. They are add-ons. They break. And many times, they don’t even work as intended. Like some movies have nested folders within the Extras folder too—like the deleted scenes may be 10 separate files instead of 1. All that gets thrown out—and even the sort order gets ignored—and everything is just displayed as 1 list.
The only way to have it work properly is if Kodi itself could see my data the way I see it. So, here’s what my idle brain has come up with.
——
The suggestion/concept is to have an all encompassing container that would house media (video, audio & image) content into a single folder like structure with the extension .kodi. To the OS, the .kodi container is just another folder. But to Kodi, it is an all-in-one package. The contents of this container would be:
- A folder.jpg file that will be the poster image for the container itself;
- A background.jpg image file that will show up as the the backdrop of the title once the user enters the container; or
- A background.mov video file that would play as the backdrop once the user enters the container. (This video file—if it exists—takes precedence over the static image file.)
- A Titles and/or Tracks folder which would house the primary media files of this title; (Titles for video; Tracks for audio/music.)
- An optional Extras folder, which would house all of the Title’s extras. (This folder is forever ignored during library scans. Contents of this folder would be displayed alphabetically by default, with files and folders sorted together.); and finally
- An optional title.nfo file which would house custom information about the title in the XML format. (If the viewer doesn’t like scrapers to fetch info. about the title.)
For movies which are single-titled, like for example ‘Forrest Gump’—the Forrest Gump (1994).kodi container would look like this:
- background.jpg
- folder.jpg
- Titles
- Forest Gump (1994).mkv
- Forest Gump (1994)-poster.jpg
- folder.jpg
- Forest Gump (1994).mkv
- Extras
- 1 Musical Signposts to History.mkv
- 2 Greenbow Diary.mkv
- 3 The Art of Screenplay Adaptation.mkv
- 4 Getting Past the Impossible: 'Forrest Gump' and the Visual Effects Revolution.mkv
- 5 Little Forrest.mkv
- 6 An Evening with 'Forrest Gump'.mkv
- 7 Archival Supplements.mkv
- 8 The Make-up of 'Forrest Gump'.mkv
- 9 Through the Ears of 'Forrest Gump:' Sound Design
- 1 Bike.mkv
- 2 Crowds.mkv
- 3 Vietnam.mkv
- 4 Rain.mkv
- 5 Ping Pong.mkv
- folder.jpg
- 1 Bike.mkv
- 10 Building the World of 'Gump:' Production Design.mkv
- 11 Seeing is Believing: The Visual Effects of 'Forrest Gump'
- 1 Run Forrest Run.mkv
- 2 Martin Luther King, Jr..mkv
- 3 George Wallace.mkv
- 4 Vietnam.mkv
- 5 Ping Pong with George Bush.mkv
- 6 Lyndon B. Johnson.mkv
- 7 Enhancing Reality.mkv
- 8 Dick Cavett and John Lennon.mkv
- 9 Richard Nixon.mkv
- folder.jpg
- 1 Run Forrest Run.mkv
- 12 Screen Tests
- 1 Michael Conner Humphreys.mkv
- 2 Hanna R. Hall.mkv
- 3 Robin Wright.mkv
- 4 Haley Joel Osment.mkv
- folder.jpg
- 1 Michael Conner Humphreys.mkv
- folder.jpg
- 1 Musical Signposts to History.mkv
If multiple editions/versions of the movie exists, the Forrest Gump (1994).kodi container would look like this:
- background.jpg
- folder.jpg
- Titles
- 1 Forest Gump (1994) Theatrical Release.mkv
- 1 Forest Gump (1994) Theatrical Release-poster.jpg
- 2 Forest Gump (1994) 4K.mkv
- 2 Forest Gump (1994) 4K-poster.jpg
- 3 Forest Gump (1994) Sapphire Edition.mkv
- 3 Forest Gump (1994) Sapphire Edition-poster.jpg
- folder.jpg
- 1 Forest Gump (1994) Theatrical Release.mkv
- Extras
- 1 Musical Signposts to History.mkv
- 2 Greenbow Diary.mkv
- 3 The Art of Screenplay Adaptation.mkv
- 4 Getting Past the Impossible: 'Forrest Gump' and the Visual Effects Revolution.mkv
- 5 Little Forrest.mkv
- 6 An Evening with 'Forrest Gump'.mkv
- 7 Archival Supplements.mkv
- 8 The Make-up of 'Forrest Gump'.mkv
- 9 Through the Ears of 'Forrest Gump:' Sound Design
- 1 Bike.mkv
- 2 Crowds.mkv
- 3 Vietnam.mkv
- 4 Rain.mkv
- 5 Ping Pong.mkv
- folder.jpg
- 1 Bike.mkv
- 10 Building the World of 'Gump:' Production Design.mkv
- 11 Seeing is Believing: The Visual Effects of 'Forrest Gump'
- 1 Run Forrest Run.mkv
- 2 Martin Luther King, Jr..mkv
- 3 George Wallace.mkv
- 4 Vietnam.mkv
- 5 Ping Pong with George Bush.mkv
- 6 Lyndon B. Johnson.mkv
- 7 Enhancing Reality.mkv
- 8 Dick Cavett and John Lennon.mkv
- 9 Richard Nixon.mkv
- folder.jpg
- 1 Run Forrest Run.mkv
- 12 Screen Tests
- 1 Michael Conner Humphreys.mkv
- 2 Hanna R. Hall.mkv
- 3 Robin Wright.mkv
- 4 Haley Joel Osment.mkv
- folder.jpg
- 1 Michael Conner Humphreys.mkv
- folder.jpg
- 1 Musical Signposts to History.mkv
For multi-titled movies, like ‘The Lord of the Rings’ series—every individual title should be saved as a stand-alone container. So, The Lord of the Rings - The Fellowship of the Ring (2001).kodi container would look like:
- background.jpg
- folder.jpg
- Titles
- 1 The Lord of the Rings - The Fellowship of the Ring (2001).mkv
- 1 The Lord of the Rings - The Fellowship of the Ring (2001)-poster.jpg
- 2 The Lord of the Rings - The Fellowship of the Ring (2001) Extended Edition.mkv
- 2 The Lord of the Rings - The Fellowship of the Ring (2001) Extended Edition-poster.jpg
- folder.jpg
- 1 The Lord of the Rings - The Fellowship of the Ring (2001).mkv
- Extras
- 1 The Lord of the Rings: War in the North - The Untold Story.mkv
- 2 The Appendices Parts 1 & 2 Introduction.mkv
- 3 J.R.R. Tolkien: Creator of Middle-earth.mkv
- 4 From Book to Script.mkv
- 5 Visualizing the Story.mkv
- 6 Designing and Building Middle-earth.mkv
- 7 New Zealand as Middle-earth.mkv
- 8 Middle-earth Atlas.mkv
- 9 Filming The Fellowship of the Ring.mkv
- 10 Visual Effects.mkv
- 11 Post Production: Putting It All Together.mkv
- 12 Digital Grading.mkv
- 13 Sound and Music.mkv
- 14 The Road Goes Ever On....mkv
- folder.jpg
- 1 The Lord of the Rings: War in the North - The Untold Story.mkv
The .kodi container can be nested too. So the above The Lord of the Rings - The Fellowship of the Ring (2001).kodi container could be inside The Lord of the Rings - The Motion Picture Trilogy.kodi container, whose contents would looks like this:
- background.jpg
- folder.jpg
- Titles
- 1 The Lord of the Rings - The Fellowship of the Ring (2001).kodi
- 2 The Lord of the Rings - The Two Towers (2002).kodi
- 3 The Lord of the Rings - The Return of the King (2003).kodi
- folder.jpg
- 1 The Lord of the Rings - The Fellowship of the Ring (2001).kodi
- Extras
- 1……
- 1……
And in turn, The Lord of the Rings - The Motion Picture Trilogy.kodi container could be inside The Middle Earth Collection.kodi container, whose contents would looks like this:
- background.jpg
- folder.jpg
- Titles
- 1 The Lord of the Rings - The Motion Picture Trilogy.kodi
- 2 The Hobbit - Motion Picture Trilogy.kodi
- folder.jpg
- 1 The Lord of the Rings - The Motion Picture Trilogy.kodi
- Extras
- 1……
- 1……
All Extras folders (nested at any level) should be ignored during scans into the library; and if the folder itself is empty—or doesn’t exist—it would not be displayed within Kodi as an option either.
All words used after the (YEAR) in a file name within the Titles folder, could be used to describe that version of the title—like 4K, Sapphire Edition, Extended Edition, or Director’s Cut etc.
If a suffixed -poster.jpg file does not exist for a media file, the folder.jpg file residing in the same folder will be used as the poster image for that media file.
-x-x-x-
TV Shows would follow the same pattern. Every season would be a .kodi container in itself. With all of them being nested inside a show’s .kodi container. For example, Friends - The Complete Series.kodi container would consist of:
- background.jpg
- folder.jpg
- Titles
- 1 The Complete First Season.kodi
- 2 The Complete Second Season.kodi
- 3 The Complete Third Season.kodi
- 4 The Complete Fourth Season.kodi
- 5 The Complete Fifth Season.kodi
- 6 The Complete Sixth Season.kodi
- 7 The Complete Seventh Season.kodi
- 8 The Complete Eighth Season.kodi
- 9 The Complete Ninth Season.kodi
- 10 The Complete Tenth Season.kodi
- folder.jpg
- 1 The Complete First Season.kodi
- Extras
- 1 Friends from the Start.mkv
- 2 When Friends Become Family.mkv
- 3 The Legacy of Friends.mkv
- 4 Friends on The Tonight Show with Jay Leno.mkv
- 5 Friends Visits The Ellen DeGeneres Show.mkv
- 6 The One Where Rachel Tells Ross.mkv
- 7 Gag Reel.mkv
- 8 Music Video - I'll Be There for You by The Rembrandts.mkv
- folder.jpg
- 1 Friends from the Start.mkv
The 1 The Complete First Season.kodi container itself would look like this:
- background.jpg
- folder.jpg
- Titles
- 1 The Pilot.mkv
- 2 The One with the Sonogram at the End.mkv
- 3 The One with the Thumb.mkv
- 4 The One with George Stephanopoulos.mkv
- 5 The One with the East German Laundry Detergent.mkv
- 6 The One with the Butt.mkv
- 7 The One with the Blackout.mkv
- 8 The One Where Nana Dies Twice.mkv
- 9 The One Where Underdog Gets Away.mkv
- 10 The One with the Monkey.mkv
- 11 The One with Mrs. Bing.mkv
- 12 The One with the Dozen Lasagnas.mkv
- 13 The One with the Boobies.mkv
- 14 The One with the Candy Hearts.mkv
- 15 The One with the Stoned Guy.mkv
- 16 The One with Two Parts, Part 1.mkv
- 17 The One with Two Parts, Part 2.mkv
- 18 The One with All the Poker.mkv
- 19 The One Where the Monkey Gets Away.mkv
- 20 The One with the Evil Orthodontist.mkv
- 21 The One with Fake Monica.mkv
- 22 The One with the Ick Factor.mkv
- 23 The One with the Birth.mkv
- 24 The One Where Rachel Finds Out.mkv
- folder.jpg
- 1 The Pilot.mkv
- Extras
- 1 Friends of Friends.mkv
- 2 Season Two Trailer.mkv
- folder.jpg
- 1 Friends of Friends.mkv
-x-x-x-
For music albums, again, every album would be a .kodi container in itself. With all of them being nested inside either an Artist’s .kodi container; or, just by themselves—as a standalone album. An artist’s .kodi container—for example, Michael Jackson.kodi could consist of:
- background.jpg
- folder.jpg
- Titles
- 1 Got To Be There.kodi
- 2 Off The Wall.kodi
- 3 Thriller.kodi
- 4 Bad.kodi
- 5 HIStory - Past, Present And Future, Book I.kodi
- 6 Blood On The Dance Floor - HIStory In The Mix.kodi
- 7 Dangerous.kodi
- 8 Invincible.kodi
- 9 Xscape.kodi
- folder.jpg
- 1 Got To Be There.kodi
This would allow for multiple album versions to be parsed correctly as well. Like, if you have the 3 versions of the Thriller album, the 3 Thriller.kodi container above would consist of:
- background.jpg
- folder.jpg
- Titles
- 1 CDDA Release.kodi
- 2 Hi-Res Release.kodi
- 3 SACD Release.kodi
- folder.jpg
- 1 CDDA Release.kodi
- Extras
- 1 Digital Booklet.pdf
- 2 Music Videos
- 1 Billie Jean (1983).mkv
- 2 Beat It (1983).mkv
- 3 Thriller (1983).mkv
- folder.jpg
- 1 Billie Jean (1983).mkv
- folder.jpg
- 1 Digital Booklet.pdf
A nesting container format allows for organization beyond the metadata of the file. Audio metadata is almost always wrongly scraped. And even if manually managed, for people with multiple versions of the albums or perhaps 2 albums the exact same name as well, it does become a nightmare. (Example: The soundtrack of Coco. There are 3 versions in 2 languages; but despite having all of the metadata fed in accurately and using the ‘sort album’ field within the ID3 tags, the album never shows up right in any audio player.)
Music albums do not have to be within an Artist container. So, if the Thriller.kodi container was for a single version by itself, it would look like:
- background.jpg
- folder.jpg
- Tracks
- 1 Wanna Be Startin' Somethin' - Michael Jackson.dsf
- 2 Baby Be Mine - Michael Jackson.dsf
- 3 The Girl Is Mine - Michael Jackson feat. Paul McCartney.dsf
- 4 Thriller - Michael Jackson.dsf
- 5 Beat It - Michael Jackson.dsf
- 6 Billie Jean - Michael Jackson.dsf
- 7 Human Nature - Michael Jackson.dsf
- 8 P. Y. T. (Pretty Young Thing) - Michael Jackson.dsf
- 9 The Lady In My Life - Michael Jackson.dsf
- folder.jpg
- 1 Wanna Be Startin' Somethin' - Michael Jackson.dsf
- Extras
- 1 Digital Booklet.pdf
- 2 Music Videos
- 1 Billie Jean (1983).mkv
- 2 Beat It (1983).mkv
- 3 Thriller (1983).mkv
- folder.jpg
- 1 Billie Jean (1983).mkv
- folder.jpg
- 1 Digital Booklet.pdf
I know—this may not be for everyone. But I felt like sharing what I have been thinking of… in the hope that my 2¢ could make a difference. (And, if you made it up to here… thanks for reading.)