Jump to content

how to add more genres


bugz000
Go to solution Solved by GrimReaper,

Recommended Posts

bugz000

i've been using emby for quite some time now and finally decided to go premium to get genre cleaner addon, it was my (incorrect) understanding that genre cleaner would permit more genres than resolve them to less, but that's my own fault than anything else

however the issue still persists, there is clearly genres such as "found footage" which do not appear in my metadata, and no matter what metadata scrapers i install (omdb, tmdb etc) they don't seem to index these genres

i have these genres mapped in radarr as tags, but ofcourse there's no way for emby to know about that, so i've spent the past few hours going through each movie and manually tagging them which is far. far from ideal, i've been onto the community discord but that help channel is completely dead

as i'm doing this i'm simply thinking to myself there MUST be a better way... there has to be, looking on the forum i see people talking about enabling NFO or importing nfo etc, but what i understand from that is the genres are at the mercy of who packed the download

so i come here, i'm clearly doing something wrong... oddly enough i see no genre on TMDB website, but the tags contain what i'd consider to be genres, if a little bit messy, but genre cleaner would make short work of cleaning that up

what am i doing wrong?

Link to comment
Share on other sites

  • Solution
GrimReaper
12 minutes ago, bugz000 said:

oddly enough i see no genre on TMDB website, but the tags contain what i'd consider to be genres

What you see there are keywords and there is absoultely no way to convert those to Genres save manually. Within Emby, you can't even scrape those. Some 3-rd party tools enable you to scrape those as tags, which still wouldn't satisfy your requirement and would be a bit overkill for that purpose alone. 

As I see it, you can approach that in either of two ways, both would involve some manual labor:

1) Use community-made tool for bulk-editing and simply assign desired tag(s) and/or genre(s) to multiple items at once 

2) Use 3-rd party tool to scrape keywords as tags, afterwards batch-rewrite <tag> tags to <genre> tags in resulting NFOs via text editor, Notepad++ Find in files, for example. 

Edited by GrimReaper
  • Thanks 1
Link to comment
Share on other sites

bugz000
2 minutes ago, GrimReaper said:

2) Use 3-rd party tool to scrape keywords as tags, afterwards batch-rewrite <tag> tags to <genre> tags in resulting NFOs via text editor, Notepad++ Find & Replace, for example. 


aha i think this could do the trick, i do a little programming myself so shifting some data around in an NFO would be quite trivial

i appreciate you are tackling the issue exactly as i described to which i am impressed, but moving tags to genres SPECIFICALLY is not what i'd consider the only solution

in short, i think the tiny media manager may just scrape enough info to be satisfactory all by itself... i'll try it and update on success

worth noting for any others with a similar issue, the v3.1 version of TMM is free

Link to comment
Share on other sites

bugz000
library := "U:\"
restore := 0
loop, files, %library%*, D
{
	if !(restore)
	{
		o:=""
		if fileExist(A_loopfilefullpath "\movie.nfo")
			loop, files, %A_Loopfilefullpath%\*.nfo
				{
					if instr(A_Loopfilefullpath, "movie.nfo")
						{
							fileread, file1, %A_Loopfilefullpath%
							loop, parse, file1, `n,`r
								if instr(A_loopfield, "<tag>") || instr(A_loopfield, "<genre>")
									o.=strreplace(strreplace(A_Loopfield,"</tag>","</genre>"),"<tag>","<genre>")  "`n"
						}
					if !instr(A_Loopfilefullpath, "movie.nfo")
						{
							nfoname:=A_loopfilefullpath
							fileread, file2, %A_Loopfilefullpath%
							loop, parse, file2, `n,`r
								if instr(A_loopfield, "<tag>") || instr(A_loopfield, "<genre>")
									o.=strreplace(strreplace(A_Loopfield,"</tag>","</genre>"),"<tag>","<genre>")  "`n"
						}
				}
		if (file1) AND (file2)
			{
				nfo := ""
				loop, parse, o, `n,`r
					if !instr(nfo, a_loopfield)
						nfo .= A_loopfield "`n"
				fileread, file, %nfoname%
				o:=""
				loop, parse, file, `n,`r
					if !instr(a_loopfield, "<genre>")
						o.=A_loopfield "`n"
				append(nfoname)
				o:=strreplace(o, "</movie>", nfo "`n</movie>")
				
				filemove, %nfoname%, %nfoname%.bak
				fileappend, %o%, %nfoname%
			}
		file1:=""
		file2:=""
	}
	else
	{
		if fileExist(A_loopfilefullpath "\movie.nfo")
			loop, files, %A_Loopfilefullpath%\*.nfo
				if !instr(A_Loopfilefullpath, "movie.nfo")
					nfoname:=A_loopfilefullpath
					
		if fileExist(nfoname ".bak")
			{
				filedelete, %nfoname%
				append("restoring " nfoname)
				filemove, %nfoname%.bak, %nfoname%
			}
	}
}

 

so i used tmm to scrape info to "movie.nfo" - then i wrote a little script to check directories for the presence of an existing nfo, and movie.nfo, if both are present, it collects data from both, merges them and creates a new nfo file, backing up the old one, code is awful but in theory i should only need to run it once, maybe again in a couple years.

the result of this is as the attached image, many many many many genres! fantastic, an absolute mess, but genre cleaner can now cull this down to something useful :) 

fantastic solution, thankyou

i will be busy playing with my new data :)

lwdH.png

Edited by bugz000
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...