+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 12 of 16
  1. #1

    Post 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?

  2. #2

    Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library

    That sounds really awesome HiddenCake! I would love something like that!!!!

  3. #3

    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.

  4. #4
    MC Graduate jmccl jmccl's Avatar
    Join Date
    Dec 2005
    Location
    Newcastle, NSW
    Posts
    94

    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

  5. #5

    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

  6. #6
    MC Graduate jmccl jmccl's Avatar
    Join Date
    Dec 2005
    Location
    Newcastle, NSW
    Posts
    94

    Re: Anyone Interested? Program to create metadata for DVDs in default Movie Library

    Quote Originally Posted by HiddenCake View Post
    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.
    Looks good for DVD TV Series...

    -Jamie
    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

  7. #7

    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.

  8. #8

    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.

  9. #9

    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)

  10. #10

    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

  11. #11

    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.

  12. #12

    dgaust dgaust dgaust dgaust dgaust dgaust dgaust dgaust dgaust dgaust dgaust dgaust's Avatar
    Join Date
    May 2006
    Location
    Wollongong, NSW
    Posts
    5,487

    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"

  13. The following Member(s) said "Thank You!" to dgaust for this information:


Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts