Kodi Community Forum

Full Version: Ember Media Manager 1.9.x - Download & Discussion Thread
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
(2021-03-01, 13:39)DanCooper Wrote: [ -> ]
(2021-02-28, 18:26)Nemura Wrote: [ -> ]I am able to manually configure the movieset posters in Kodi with the images EMM dropped in that directory
That at least means that Kodi has access rights to the folder, which is a good thing. What many users do wrong is that they do not exit the film view in Kodi after the sync so that the new images can be displayed. The film set images are only displayed if the film list is called up after syncing. Can you test that?
Yeah, this has persisted through regular use this past week including multiple kodi restarts, loading the lists and accessing the different collections. I was reading into this some more, and could it be that the loose files are no longer supported in Kodi 19 and they now need to be in separate directories containing the movie title [according to wiki page here] or is this change backwards compatible?

Update: After some fiddling I seem to have narrowed it down.
I had manually configured some of the posters for the blank moviesets and they had continued to show up just fine. After Reloading the art in EMM and triggering the real-time sync, checking back on Kodi the set posters I had manually configured were cleared again. So I thought EMM was clearly sending over wrong values to Kodi. After reconfiguring a movieset poster manually on Kodi again, I compared both the local EMM MyVideos46.emm DB and the Myvideos119.db from Kodi. EMM's DB contains paths like "\\SERVER\media_share\Video\Movies\_meta_movieset_artwork\xx-collection-poster.jpg" (seemingly correct) and sends them over to Kodi (converting them to "smb://" paths). The entry for the poster I configured manually on Kodi however includes my credentials for the SMB share like "smb://USERNAME: [email protected]/media_share/Video/Movies/_meta_movieset_artwork/xx-collection-poster.jpg". Not amazingly secure, but I guess it's not the end of the world since it's not Internet exposed. @DanCooper, Is there a way to work around this with Ember?
(2021-03-04, 19:06)Nemura Wrote: [ -> ]Is there a way to work around this with Ember?
The Kodi Interface simply replace the movieset images path that you've set in the Settings => Moviesets => Files and Sources => File Names => Path with the path you've set in the Kodi Interface Movieset path settings (and change the slash/backslash if needed). That means with an "Ember" movieset image path e.g. Y:\Movieset_Images and a KI movieset path smb://MyServer/Movieset_Images:
Y:\Movieset_Images\die hard collection-poster.jpg
will be become smb://MyServer/Movieset_Images/die hard collection-poster.jpg.

In addition to the lack of specification of the protocol (in this case smb: //), the problem is usually the lack of access rights or login data for this path. The simplest is if you store the login data for the entire server (path) in Kodi and not for each share individually. So not:
Code:
smb://USERNAME: [email protected]/Movies
smb://USERNAME: [email protected]/TVShow
smb://USERNAME: [email protected]/otherVideo

but rather

Code:
smb://USERNAME: [email protected]Server

Most of the time, only one login is used for all shares on a server.

Depinding on how you added your sources in Kodi the login has been saved for each share individually and possibly the movieset path login is not permanently stored.
There is a "passwords.xml" in the Userdata folder on your Kodi client that contains all stored logins for your connections. Check this file if you've added a login for the whole server or change it if needed. I've you've fix that is also no longer needed to store the login in the image paths.
(2021-03-05, 01:53)DanCooper Wrote: [ -> ]There is a "passwords.xml" in the Userdata folder on your Kodi client that contains all stored logins for your connections. Check this file if you've added a login for the whole server or change it if needed. I've you've fix that is also no longer needed to store the login in the image paths.
Nice, I did this and it worked beautifully. Configured the credentials at server level instead of the shares, resynced and everything is working now. Thanks a bunch for the help! I've been having trouble with this for some time but learned a lot about the way Kodi works in the process Big Grin
Hi Dan,

Can you help me figure out what I am doing wrong.  I am trying to scrape a movie that can't be found, it asks for the IMDB number which I enter and it finds the correct title, but it then asks for the TMDB number, unfortunately it is a TV movie so when I enter the TMDB number it finds a completely different title.
The following information is what I have;
Item title: The Murder Of Mary Phagan (1988)
IMDB: tt0095678
TMDB: https://www.themoviedb.org/tv/47231-the-...ary-phagan
How to I enter this.
When I put in 47231 it links to: https://www.themoviedb.org/movie/47231-d...londe-dood
How can I get it to find the TV number instead of the Movie number.
Thanks
(2021-03-10, 22:14)BigBearPhoto Wrote: [ -> ]How can I get it to find the TV number instead of the Movie number.
If it's only listed as tv show on TMDb you have to disable the TMDb movie scraper temporarily and scrape the movie with IMDb only. Actually you have to cancel the second search dialog from TMDb but then it think the whole scraping process will be canceled.
Will there be a TVMaze scraper?
.mk3d movies are not getting picked up by ember. anything i can do to add them on my end?
(2021-03-13, 04:26)dr-oopie Wrote: [ -> ].mk3d movies are not getting picked up by ember. anything i can do to add them on my end?

Settings > File System > Valid Video Extensions
Image
(2020-06-02, 11:01)DanCooper Wrote: [ -> ]First of all: The Kodi Interface (KI) does not access the Kodi database directly, but uses the JSON-RPC API (v10 ATM in KI): Link
That means that i don't have access to tables or views like "episode_view" or "season_view".

If you want to test the API you can use the default Kodi webinterface. On the bottom right corner is a button with 3 dots and a "The Lab" menu. In the lab is an "API browser" that allows you to send any API call to check what Kodi sends back as information (and thus to the KI).

How the KI sync tv shows elements:

TV show:
  1. Get a list of tv shows of a specific path
    Code:
    List.Filter.Rule.TVShows.field = List.Filter.Fields.TVShows.path
    List.Filter.Rule.TVShows.Operator = List.Filter.Operators.Is
    List.Filter.Rule.TVShows.value = "smb://TVSHOW_PATH"
    Code:
    VideoLibrary.GetTVShows(filter)
  2. If the result is exactly 1 entry than the KI uses that ID to sync.
TV season:
  1. Get the tv show ID (see above).
  2. Get a list of all seasons of a specific tv show by tv show ID
    Code:
    VideoLibrary.GetSeasons(ShowID)
  3. Filter the results by season number.
  4. If now the result is exactly 1 than use that season ID to sync.
TV episode:
  1. Get the tv show ID (see above).
  2. Get a list of episodes with ShowID and path filter
    Code:
    filter = New List.Filter.EpisodesAnd

    filterRule_Path.field = List.Filter.Fields.Episodes.path
    filterRule_Path.Operator = List.Filter.Operators.Is
    filterRule_Path.value = "smb://EPISODE_PATH"
    filter.and.Add(filterRule_Path)

    filterRule_Filename.field = List.Filter.Fields.Episodes.filename
    filterRule_Filename.Operator = List.Filter.Operators.Is
    filterRule_Filename.value = "filename.ext"
    filter.and.Add(filterRule_Filename)
    Code:
    VideoLibrary.GetEpisodes(filter, ShowID, Season#)
  3. If the result is exactly 1 than use this ID to sync.
    If the result is more than one than try to filter by episode number (multi-episode handling)
I've noticed that the new API version didn't bring up any improvements regarding the case where you have a TV show spread over multiple paths. I was just thinking if it was possible to find the episode ID by some other way.

For example, my Star Trek TNG episodes are on four different volumes on my NAS. I can get the TV Show ID from the API, it's '9'. Then, using the id as a parameter, get a full list of episodes with VideoLibrary.GetEpisodes. You get the labels, which you can then use to find out the correct episode ID (by just using the episode season+order number information you have in EMM) to use it in VideoLibrary.SetEpisodeDetails.
(2021-03-14, 17:40)Boulder Wrote: [ -> ]For example, my Star Trek TNG episodes are on four different volumes on my NAS.

 Why, though?
(2021-03-17, 15:29)Dragen Wrote: [ -> ]
(2021-03-14, 17:40)Boulder Wrote: [ -> ]For example, my Star Trek TNG episodes are on four different volumes on my NAS.

 Why, though?
I've processed the show over a long time and different seasons didn't fit on the same volume. In Kodi, they are stacked into just one TV show entry so it only affects the sync process.
(2021-03-14, 17:40)Boulder Wrote: [ -> ]'ve noticed that the new API version didn't bring up any improvements regarding the case where you have a TV show spread over multiple paths. I was just thinking if it was possible to find the episode ID by some other way.
I will check that. I've already done some improvements for episode syncing for the next release.
Trying out 1.9.2 as an alternative to MediaElch, and I've run into some problems trying to scrape a TV show:
  • With only the TVDB scraper enabled, it gets stuck forever because they apparently disabled free scraping, but Ember just keeps trying.
  • With only the TMDB scraper enabled, it doesn't seem to be able to get any episode names.
  • With only the IMDB scraper enabled, I end up without any data on specials (aka Season 0).
  • With both TMDB and IMDB scrapers enabled, I end up with Ember telling me that I need two copies of the pilot episode: One as S00E01 and the other as S01E00!
I'd prefer to just use TMDB's data, but for some reason Ember just won't pull down the episode titles unless the IMDB scraper is also enabled. It's really weird, because this also affects the specials (aka Season 0) even though IMDB has no data on those as far as I can tell.

Edit: For now, I've just scraped with both, and deleted the S01E00 entry from the database. I didn't know I could even do this, because there's no right click menu for missing episodes, but it turns out you can do it by highlighting the missing episode and hitting the Delete key.
(2021-02-16, 13:58)ss4johnny Wrote: [ -> ]
(2021-02-07, 01:09)DanCooper Wrote: [ -> ]A small status update: Two weeks ago I wanted to quickly incorporate multi-rating, "Premiered" instead of "ReleaseDate" (for movies) and also support for keyarts, and thought that I could take over most of that from Ember 3.0. Unfortunately the whole thing "degenerated" again and I've been writing code since 2 weeks. It will probably take another week until there is a new release. In the meantime you can secure an API key at OMDb, because there will also be a new scraper for IMDb, RT and Metacritic ;-)
Thank you for the update Dan.

I have not had a chance to use the latest version yet or EMM at all since TVDB moved to a subscription service. What is the recommended scraper order for TV shows right now?
wait, is that why when i scrape tv shows i get a ton of white emtpy TVDB thumbnails? if so, any alternatives to get those missing image files?
(2020-03-04, 03:00)redglory Wrote: [ -> ]Hi Dan,

Did you fix the SQLite.Interop.dll missing file issue? As a workaround I have to put this file from "x64\SQLite.Interop.dll" on the application root path.

2020-03-03 01:36:04.3940;EmberAPI.Database;EmberAPI.Database.Connect_MyVideos;1;ERROR;Connect_MyVideos    Unable to open media database connection.;"EXCEPTION OCCURRED:System.DllNotFoundException: Não é possível carregar DLL 'SQLite.Interop.dll': Impossível localizar o módulo especificado. (Excepção de HRESULT: 0x8007007E)
   em System.Data.SQLite.UnsafeNativeMethods.sqlite3_config_none(SQLiteConfigOpsEnum op)
   em System.Data.SQLite.SQLite3.StaticIsInitialized()
   em System.Data.SQLite.SQLiteLog.Initialize()
   em System.Data.SQLite.SQLiteConnection..ctor(String connectionString, Boolean parseViaFramework)
   em EmberAPI.Database.Connect_MyVideos()*   em System.Data.SQLite.UnsafeNativeMethods.sqlite3_config_none(SQLiteConfigOpsEnum op)
   em System.Data.SQLite.SQLite3.StaticIsInitialized()
   em System.Data.SQLite.SQLiteLog.Initialize()
   em System.Data.SQLite.SQLiteConnection..ctor(String connectionString, Boolean parseViaFramework)
   em EmberAPI.Database.Connect_MyVideos()"

Hi @DanCooper, I'm still getting this error.

Can you take a look at it ? Latest version installed.

Thanks
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45