-
19th January 2010 01:47 PM #1MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Anyone Interested? Program to create metadata for DVDs in default Movie Library
This topic is for me to see if there are any people interested in having a program that does the stuff described below. If there are people interested, I will go ahead and create the program. It will be freeware. The aim will be for it to be very simple to use.
There are metadata programs for Media Center, for all sorts of different purposes. However, none of those programs seem to be suitable for this scenario:
- You just use the built-in Movie Library, rather than an addon.
- You keep your DVDs on their discs, rather than ripping them to the hard drive.
- Your DVDs include TV shows, not just movies.
- You want to specify your own metadata.
- You want that metadata to display in the Movie Library when its associated DVD is in the DVD drive.
If I write this program, it will work as follows:
- The program lists all DVDs that Media Center doesn't have metadata for.
- You type in (or copy and paste) the information you want it to have, and add a picture (DVD cover, which you can google or scan), in a standard Windows window.
- Repeat step 2 for each DVD you want to set metadata for.
- The program saves all that info and gives it to Media Center.
- Next time you put in one of those DVDs, it will have the information that you set.
So, would anyone be interested in this? Would anyone use it? Do you have any suggestions or requests for some sort of useful functionality? Any questions?
-
19th January 2010 02:44 PM #2MC Graduate


- Join Date
- May 2008
- Posts
- 52
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
That sounds really awesome HiddenCake! I would love something like that!!!!
-
21st January 2010 07:37 PM #3MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
I have started coding it now - I will probably make a release within a week or two.
To anyone that is reading this topic, feel free to ask questions or make suggestions, and I will see what I can do.
-
21st January 2010 08:49 PM #4
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
I would probably be interested in the TV shows on DVD aspect (I have a few...)
OrigenAE S16T (Black), Intel DG965WHMKR, Core 2 Duo E6600, 2048MB DDR2 800Mhz (Corsair), MSI G-Force NX7600GT Diamond Plus, 2 x 500GB WD Sata HDD, Sony DRU840A, 2 x AverTv Duo Hybrid PCIe, D-Link DWA547 Wireless N PCI, MS Wireless Keyboard, Logitech Harmony One Remote, Windows 7 Ultimate
-
22nd January 2010 12:14 AM #5MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
Well, it seems Windows Media Center doesn't have the ability to have a different description for each episode, or to show a different title (or a different title below the DVD title) for each episode. At least, that is what my experimenting has shown. This program is still useful for TV-on-DVD though, as you can at least add the basic info, while Media Center itself by default gives you nothing.
Here is a screenshot of what I was able to do with one of my DVDs.
The DVD contains 3 episodes of the 1st season of Stargate SG1. I chose to call it "Stargate SG-1: Season 1 - Disc 1", and I got the information from the DVD cover, and copy/pasted the descriptions from thetvdb.com.
Screenshot: http://img684.imageshack.us/img684/3808/74581114b.jpg
By the way, if anyone has a DVD with TV show episodes, and Media Center (Vista or 7) DID give it some information, please let me know.Last edited by HiddenCake; 22nd January 2010 at 12:15 AM. Reason: image made the page too wide
-
23rd January 2010 08:15 PM #6
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
OrigenAE S16T (Black), Intel DG965WHMKR, Core 2 Duo E6600, 2048MB DDR2 800Mhz (Corsair), MSI G-Force NX7600GT Diamond Plus, 2 x 500GB WD Sata HDD, Sony DRU840A, 2 x AverTv Duo Hybrid PCIe, D-Link DWA547 Wireless N PCI, MS Wireless Keyboard, Logitech Harmony One Remote, Windows 7 Ultimate
-
25th January 2010 06:52 PM #7MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
Progress is going well. I expect I will make a release tomorrow, after I do a bit more testing.
The interface could probably do with some tweaking, but the actual functionality is the important bit.
Screenshot: http://img41.imageshack.us/img41/6729/69330012.jpg
EDIT: I should probably point out, I gave the topic a "Windows 7" tag, but I think this will also work with Windows Vista.
-
1st February 2010 09:56 PM #8Newbie
- Join Date
- Jun 2007
- Location
- The Netherlands
- Posts
- 9
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
Please, take a look at this:
http://vistamcmovieinfo.oabsoftware.nl
It allows you to pull information about your (ripped) dvd's, video files etc. from the net (or you can enter it by hand) and store it in such a way that it can be viewed in the standard Media Center screens (no plugins).
It has support for episodes of TV series as well.
-
2nd February 2010 08:19 PM #9MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
Oebele, yours looks quite good, but it doesn't work with DVDs that are not ripped. By that, I mean, if a user doesn't rip their DVDs, but instead watches them from the actual physical DVDs, your program doesn't work with those.
This is a limitation in all metadata programs that I have tried, which is one reason why I decided to make one myself. My metadata program is not as complete as yours, but it is built with support for non-ripped DVDs, which is something that is a key element of my Media Center setup.
If you do add that function to your program, that would be good, and it would save me from needing to work on my one. Is it a function you are planning to add in the future?
(For those interested in my one, I apologise for the delay, and will try to release it in the next few days)
-
3rd February 2010 01:57 AM #10MC Apprentice

- Join Date
- Jan 2010
- Location
- Melbourne
- Posts
- 35
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
Hi Hiddencake, im a bit of a coder myself.
I was wondering how you are identifying what movie or tv show is on a DVD in code.
are you somehow getting the show name or an ID from the dvd?
and if so, how are you matching it up on thetvdb.com and themoviedb.org? is it just by straight title match?
i have am curious because i have done a lot of coding around matching video files up against the thetvdb.com, imdb and impawards.com, but never with a physical dvd.
Cheers
Anton
-
3rd February 2010 07:50 PM #11MC Graduate


- Join Date
- Oct 2009
- Posts
- 59
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
At the moment, my program reads the DVDID that is in the metadata file that Media Center generates. Media Center seems to generate a DVDID for every DVD, regardless of if it can find metadata for it or not. My program reads the DVDID, and allows the user to associate their own custom metadata with that DVDID. Then, next time the user puts that DVD in their Media Center, it reads that metadata file and displays the custom metadata.
Until I can figure out how the DVDID is actually generated by Media Center (it isn't random), users need to specify a 'user friendly' name for the DVD, so that when they open my program, they are presented with a list of those 'user friendly' names, of which they can then modify and add metadata to. This is not the ideal solution, but if I just present the DVDIDs to the user, then they will have no idea which DVDID corresponds to which DVD.
There is no data-grabbing at the moment. I would like to add some grabbing at some stage, but my focus right now is on allowing users to enter their own data.
The DVDID (for example "50e28b0a|61962ade") doesn't have any obvious meaning to me, however, I have come to the conclusion that it is not random, and it is made up of two 8-bit hexadecimal strings. If I could figure out what meaning the DVDID has, I could perhaps use it to calculate the title of the DVD, which would be very helpful. I will keep researching this, but if anyone knows anything else about DVDIDs, I would appreciate it if you could give me some information.
-
3rd February 2010 09:29 PM #12
Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library
You can use the directshow library for c#, this is sample application I put together to output the disc id. It basically finds the first cdrom drive with a disc in it, and gets the disc id (GetDVDID is from a sample explaining how to use the directshow lib)
Code:using System; using System.Collections; using System.Collections.Generic; using System.Text; using System.Management; using DirectShowLib; using DirectShowLib.Dvd; using System.Runtime.CompilerServices; namespace GetDVDInfo { class Program { static void Main(string[] args) { ArrayList list2 = new ArrayList(); ManagementObjectCollection.ManagementObjectEnumerator enumerator = null; ManagementObjectSearcher searcher = new ManagementObjectSearcher(@"root\CIMV2", "SELECT * FROM Win32_CDROMDrive WHERE MediaLoaded = True"); try { enumerator = searcher.Get().GetEnumerator(); while (enumerator.MoveNext()) { ManagementObject current = (ManagementObject)enumerator.Current; list2.Add(RuntimeHelpers.GetObjectValue(current["Drive"])); } } catch { } enumerator.Dispose(); string test = GetDVDID(list2[0].ToString()); test = test.Remove(8, 8) + "-" + test.Remove(0, 8); Console.WriteLine(test.ToUpper()); } public static string GetDVDID(string Drive) { long id = 0; int hr; object comobj = null; DirectShowLib.Dvd.AMDvdRenderStatus status; DirectShowLib.Dvd.IDvdGraphBuilder dvdGraph = (DirectShowLib.Dvd.IDvdGraphBuilder)new DirectShowLib.DvdGraphBuilder(); hr = dvdGraph.RenderDvdVideoVolume(null, DirectShowLib.Dvd.AMDvdGraphFlags.None, out status); DsError.ThrowExceptionForHR(hr); hr = dvdGraph.GetDvdInterface(typeof(DirectShowLib.Dvd.IDvdInfo2).GUID, out comobj); DsError.ThrowExceptionForHR(hr); DirectShowLib.Dvd.IDvdInfo2 dvdInfo = (DirectShowLib.Dvd.IDvdInfo2)comobj; dvdInfo.GetDiscID(Drive + "\\VIDEO_TS", out id); const int HEXADECIMAL = 16; String HexID = Convert.ToString(id, HEXADECIMAL); return HexID; } } }Last edited by dgaust; 3rd February 2010 at 10:36 PM.
"How's the serenity"
-
The following Member(s) said "Thank You!" to dgaust for this information:


Reply With Quote


Bookmarks