Work in Progress - Developer Area

  Thread Rating:
  • 3 Votes - 4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #16
(2013-05-17 16:08)DanCooper Wrote:  
(2013-05-17 16:06)m.savazzi Wrote:  
(2013-05-17 16:04)DanCooper Wrote:  OK. We rename the table to "persons". I don't like it when the table name is different to primary key column (idPerson). It is easier to see that the field is not linked to another table.

You are fully right. Let me recheck the DB I've done, maybe I messed up.

the table should be named Persons
the PK is idPerson
then there are the personslinkmovie etc...

Do you have an idea to prevent actors with same name that are not the same person? Have TMDB/IMDB a "personally number", linked to a profile?

Yes, IMDB ID is unique and the same goes for TMDB Smile

(2013-05-17 16:08)DanCooper Wrote:  
(2013-05-17 16:06)m.savazzi Wrote:  Also I'm not sure if a Set Fanart is needed or used by any skin Tongue

Set fanart and posters are used by EVERY skin if you have enabled "group movies to sets" in XBMC settings. But you can only set an individually images over the context menu.
But... There is a plugin for this problem. You need a folder "artwork" in the movie source folder. The poster must be named "<set-name>.jpg" and the fanart "<set-name>-fanart.jpg". Actually quite simple to implement in Ember.

I've also seen that XBMC wants to make a solution for it in next release (14). Thus, we are already one step ahead Big Grin

Ok,
so the file table and the fileslinkset tables are perfect for this. the set name is in the set name and the files are in the table and the same table can manage poster and fanarts Smile

Nice

(2013-05-17 17:21)Cocotus Wrote:  I looked at the database structure and so far I think it's a good setup - one thing I missed is support for the new VideoTag Field (since v12 Frodo):

What is the VideoTag?

If you mean the keywords (on IMDB) I was already planning to add them.


The keywords table will be identical to genre and linked to movie, shows, episode, etc...

Smile

If you think I'm useful please use the +/- button to raise my reputation
(This post was last modified: 2013-05-18 21:35 by m.savazzi.)
find quote
Cocotus Offline
Moderator
Posts: 315
Joined: Mar 2011
Reputation: 7
Post: #17
ahh I see! Every Movie can have multiple <tag> fields (like <genre>) in nfo - just make sure to name the field "tag" instead of "keyword" because it has to be named this way in order to work for XBMC.
Of course you can then put every IMDB keyword of a movie to populate in seperate <tag> field- I think this would make sense. And then later on user can add custom tags to nfo to set up own filter/group mechansim in XBMC Smile

Look here for nfo info:

http://wiki.xbmc.org/index.php?title=NFO_files/movies , Section 5
(This post was last modified: 2013-05-19 13:03 by Cocotus.)
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #18
yes the name of the XML tag in the NFO is: <tag>Name of the tag</tag>


BUT

IMDB and TMBD call them: Keywords

Smile

If you think I'm useful please use the +/- button to raise my reputation
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #19
bug to be fixed: when the selected movie is un marked and there is a mark only filter the selection jumps around

If you think I'm useful please use the +/- button to raise my reputation
find quote
DanCooper Offline
Moderator
Posts: 1,445
Joined: Apr 2012
Reputation: 73
Location: Switzerland
Post: #20
(2013-05-20 20:39)m.savazzi Wrote:  yes the name of the XML tag in the NFO is: <tag>Name of the tag</tag>


BUT

IMDB and TMBD call them: Keywords

Smile

The purpose of these tags is to define itself. Should not be gescrapt as I understand it.

Latest Ember-MM version - [Release] Ember Media Manager 1.3.x
German XBMCNerds
find quote
DanCooper Offline
Moderator
Posts: 1,445
Joined: Apr 2012
Reputation: 73
Location: Switzerland
Post: #21
m.savazzi, please check this, i can't start Ember without a existing Media.emm:

Code:
Title: Error creating database
Message: System.Data.SQLite.SQLiteException: SQL logic error or missing database
near "DisplaySeason": syntax error
   bei System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   bei System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   bei System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
   bei System.Data.SQLite.SQLiteDataReader.NextResult()
   bei System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
   bei EmberAPI.Database.ConnectMediaDB() in C:\Documents\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 287.
StackTrace:    bei System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   bei System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   bei System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
   bei System.Data.SQLite.SQLiteDataReader.NextResult()
   bei System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
   bei EmberAPI.Database.ConnectMediaDB() in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 287.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========

Title: Error
Message: Der Vorgang ist aufgrund des aktuellen Zustands des Objekts ungültig.
StackTrace:    bei System.Data.SQLite.SQLiteConnection.BeginDbTransaction(IsolationLevel isolationLevel)
   bei System.Data.SQLite.SQLiteConnection.BeginTransaction()
   bei EmberAPI.Database.ClearNew() in C:\\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 189.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========

Title: Error
Message: Database is not open
StackTrace:    bei System.Data.SQLite.SQLiteCommand.InitializeForReader()
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader()
   bei EmberAPI.Database.GetMoviePaths() in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 729.
   bei EmberAPI.Scanner.bwPrelim_DoWork(Object sender, DoWorkEventArgs e) in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIScanner.vb:Zeile 1208.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========

Latest Ember-MM version - [Release] Ember Media Manager 1.3.x
German XBMCNerds
find quote
Cocotus Offline
Moderator
Posts: 315
Joined: Mar 2011
Reputation: 7
Post: #22
(2013-05-21 11:15)DanCooper Wrote:  m.savazzi, please check this, i can't start Ember without a existing Media.emm:

Code:
Title: Error creating database
Message: System.Data.SQLite.SQLiteException: SQL logic error or missing database
near "DisplaySeason": syntax error
   bei System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   bei System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   bei System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
   bei System.Data.SQLite.SQLiteDataReader.NextResult()
   bei System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
   bei EmberAPI.Database.ConnectMediaDB() in C:\Documents\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 287.
StackTrace:    bei System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn, String strSql, SQLiteStatement previous, UInt32 timeoutMS, String& strRemain)
   bei System.Data.SQLite.SQLiteCommand.BuildNextCommand()
   bei System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
   bei System.Data.SQLite.SQLiteDataReader.NextResult()
   bei System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
   bei EmberAPI.Database.ConnectMediaDB() in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 287.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========

Title: Error
Message: Der Vorgang ist aufgrund des aktuellen Zustands des Objekts ungültig.
StackTrace:    bei System.Data.SQLite.SQLiteConnection.BeginDbTransaction(IsolationLevel isolationLevel)
   bei System.Data.SQLite.SQLiteConnection.BeginTransaction()
   bei EmberAPI.Database.ClearNew() in C:\\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 189.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========

Title: Error
Message: Database is not open
StackTrace:    bei System.Data.SQLite.SQLiteCommand.InitializeForReader()
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
   bei System.Data.SQLite.SQLiteCommand.ExecuteReader()
   bei EmberAPI.Database.GetMoviePaths() in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIDatabase.vb:Zeile 729.
   bei EmberAPI.Scanner.bwPrelim_DoWork(Object sender, DoWorkEventArgs e) in C:\GitHub\Ember-MM-Newscraper\EmberAPI\clsAPIScanner.vb:Zeile 1208.
Date/Time: 21.05.2013 11:12:07
================================================================================​===========
Same error here when trying to debug latest version without database - it works fine when emm database already exisits
(This post was last modified: 2013-05-21 19:22 by Cocotus.)
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #23
Wow
I've not changed the DB and I've tried to run a completely clean project before submitting the changes.

Can you give me the exact steps?

(2013-05-21 10:10)DanCooper Wrote:  
(2013-05-20 20:39)m.savazzi Wrote:  yes the name of the XML tag in the NFO is: <tag>Name of the tag</tag>


BUT

IMDB and TMBD call them: Keywords

Smile

The purpose of these tags is to define itself. Should not be gescrapt as I understand it.

The definition of Tags (and the examples I've found) is exactly the keywords in the two sites.

Now I was thinking to implement keywords as Genre so that they can get scraped if you want (as I do) or you can be free to add yours and associate them to the movies.
The Keywords will be saved in a specific table

In this way we should make everyone happy Smile

I want the scraped keywords as is very good for filtering on XBMC (even if someone are useless) like here in TMDB for Iron Man 3
Plot Keywords
nanotechnology
superhero
marvel cinematic universe
3d
imax
aftercreditsstinger
third part

3d and imax is useless for me

If you think I'm useful please use the +/- button to raise my reputation
(This post was last modified: 2013-05-21 23:54 by m.savazzi.)
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #24
Folks,
the code works perfectly for me!

I have DELETED the whole -dev directory, restarted the project and everything was just nice and I got to my library correctly loaded.

It's WEIRD

this is the code:
Code:
Dim sqlCommand As String = My.Resources.MediaDatabaseSQL_v1
                Using transaction As SQLite.SQLiteTransaction = _mediaDBConn.BeginTransaction()
                    Using command As SQLite.SQLiteCommand = _mediaDBConn.CreateCommand()
                        command.CommandText = sqlCommand
                        command.ExecuteNonQuery()
                    End Using
                    transaction.Commit()
                End Using

can you check your the Resources.MediaDatabaseSQL_v1?
as far as I recall I have not changed it

If you think I'm useful please use the +/- button to raise my reputation
(This post was last modified: 2013-05-22 00:29 by m.savazzi.)
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #25
DanCooper,
the bug is your fault HAHAHAHAHA

is the two lines you added:
HasWatched BOOL NOT NULL DEFAULT False
+ DisplaySeason integer,
+ DisplayEpisode integer


There was the same mistake in .xx something... you forgot:
HasWatched BOOL NOT NULL DEFAULT False,
+ DisplaySeason integer,
+ DisplayEpisode integer


HAHAHHAHHAAHAHAHAH

fixed now!


also there was a mistake in MediaBrowser.
'Me.Label1.Text = Master.eLang.GetString(633, "Experimental module")

If the module is useless let's remove it!

If you think I'm useful please use the +/- button to raise my reputation
(This post was last modified: 2013-05-22 01:17 by m.savazzi.)
find quote
DanCooper Offline
Moderator
Posts: 1,445
Joined: Apr 2012
Reputation: 73
Location: Switzerland
Post: #26
Shame on me! Damn copy-and-paste-generation Tongue

Latest Ember-MM version - [Release] Ember Media Manager 1.3.x
German XBMCNerds
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #27
Dan, Cocotus,
we need to advance and nail down the DB Structure Smile

If you think I'm useful please use the +/- button to raise my reputation
find quote
Cocotus Offline
Moderator
Posts: 315
Joined: Mar 2011
Reputation: 7
Post: #28
(2013-05-24 20:28)m.savazzi Wrote:  Dan, Cocotus,
we need to advance and nail down the DB Structure Smile

I read this thread an didn't found any sketch/scheme besides Dans picture (nice work!) to display the new scheme. Is there a place where I can take a look at the structure? (like example MediaDatabaseSQL_v1.txt, demo.emm database which can be watched with SQLITEBrowser?) If this hasn't be done maybe we should pick the current MediaDatabaseSQL_v1.txt which displays all the Ember tables and just post here and mark/edit the changes based on our discussion?
(This post was last modified: 2013-05-24 21:17 by Cocotus.)
find quote
m.savazzi Offline
Moderator
Posts: 905
Joined: Mar 2008
Reputation: 27
Post: #29
(2013-05-24 21:17)Cocotus Wrote:  
(2013-05-24 20:28)m.savazzi Wrote:  Dan, Cocotus,
we need to advance and nail down the DB Structure Smile

I read this thread an didn't found any sketch/scheme besides Dans picture (nice work!) to display the new scheme. Is there a place where I can take a look at the structure? (like example MediaDatabaseSQL_v1.txt, demo.emm database which can be watched with SQLITEBrowser?) If this hasn't be done maybe we should pick the current MediaDatabaseSQL_v1.txt which displays all the Ember tables and just post here and mark/edit the changes based on our discussion?

sent link via PM

If you think I'm useful please use the +/- button to raise my reputation
find quote
Cocotus Offline
Moderator
Posts: 315
Joined: Mar 2011
Reputation: 7
Post: #30
(2013-05-25 00:32)m.savazzi Wrote:  
(2013-05-24 21:17)Cocotus Wrote:  
(2013-05-24 20:28)m.savazzi Wrote:  Dan, Cocotus,
we need to advance and nail down the DB Structure Smile

I read this thread an didn't found any sketch/scheme besides Dans picture (nice work!) to display the new scheme. Is there a place where I can take a look at the structure? (like example MediaDatabaseSQL_v1.txt, demo.emm database which can be watched with SQLITEBrowser?) If this hasn't be done maybe we should pick the current MediaDatabaseSQL_v1.txt which displays all the Ember tables and just post here and mark/edit the changes based on our discussion?

sent link via PM
thanks for sending! ok I looked into that and looks fine to me - the tag/keyword table we talked about is missing I think, but it's just 1:1 copy of genre-table just (different name) so thats no problem at all.
Thats for the tables/relations in database - I noticed there aren't any columns/field names mentioned yet but I think we can use the current fields of ember tables and dropping the "HAS..." fields which we can obtain with SQL query..
find quote
Post Reply