Get DVD-Video disc DVDid and then scrape metadata info and artwork online for it?
#46
well two good points indeed !
clearArt Concept
cdArt Concept

*If like, thank user
Reply
#47
Trouble is if you rip a DVD it'll be decrypted, and therefore the contents of the files (which dvdinfo relies on) will be changed too. It sounds like a useful function but certainly not worldendingly so!

Anyway i'll look into it, i'm certainly not up for begging someone to release code when it'll be an hour max to do it myself.
Reply
#48
motd2k Wrote:Trouble is if you rip a DVD it'll be decrypted, and therefore the contents of the files (which dvdinfo relies on) will be changed too. It sounds like a useful function but certainly not worldendingly so!

Anyway I'll look into it, I'm certainly not up for begging someone to release code when it'll be an hour max to do it myself.

yep this is only to get support for those who have a bluray/dvd player in their HTPC and wants to get all the functions and features possible with XBMC !
clearArt Concept
cdArt Concept

*If like, thank user
Reply
#49
reaven Wrote:Is there a way to get the dvd disc title or any other metadata, since this
Code:
System.DVDLabel
is not getting anything maybe only works in Xbox.

maybe something like this app. can be port in xbmc

more info
more info
more info

Yes in Linux you could use the command lsdvd
I give you a python example .... because this I made inside my script ....

Code:
#######################################################
# Parameter                                           #
# dvd_device   device for dvd-access                  #
# dvd_dir      rip-directory                          #
# name         default name 'change-me.iso            #
#                                                     #
# Returns      name of inserted dvd or 'change-me.iso #
#############3#########################################
def get_disc_name(dvd_device,dvd_dir,default_name):
    complet_command = 'volname ' + dvd_device + ' > ' + dvd_dir + '/NAME'  
    sys.platform.startswith('linux')
    status = os.system("%s" % (complet_command))
    print 'executed command volname to get dvd-name .....'

    # In the case the command volname is not installed ... #
    # the function recturns 'change-me.iso                 #

    volume_path = dvd_dir + '/NAME'
    stat_info = os.stat(volume_path)
    file_of_volume = stat_info[stat.ST_SIZE]
          
    if (file_of_volume  != 0):  
        print 'we found a name of the inserted dvd :'  
        f = open(volume_path,'r')
        name = f.readline()
        f.close

        # erase NAME

        os.remove(volume_path)

        print name + '\n'
        name = string.strip(string.lower(name))
        return name
    else:
        print 'volume name can not be read .... or command volname not found ....'
    return default_name
#######################################################
Reply
#50
Here is the code I use in the Meedio DVDID plugin. I'm surprised no one asked... The dvdid code uses the directshowlib found here: http://sourceforge.net/project/showfiles..._id=155643


Code:
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;
            //comobj = null;
            dvdInfo.GetDiscID(Drive + ":\\VIDEO_TS", out id);
            const int HEXADECIMAL = 16;
            String HexID = Convert.ToString(id, HEXADECIMAL);            
            return HexID;
        }
Reply
#51
Take a look at,

http://www.srcf.ucam.org/~cjk32/dvdid/

dvdid-0.1.tar.gz contains the source code for a library to calculate dvdids, and an associated executable. The API will either allow you to pass in a path to the dvd media, or to supply the necessary information directly. On windows, the project definition files provide a dll, a static library and a standalone executable. On unix-like platforms, it uses the stadard ./configure, make, make install, which provides a shared/static library as appropriate and a dependent executable.

There is some API documentation included, but do read the comments throughout the code for more detail, particularly with regards issues on which timestamps get used, and on the limited accuracy of some timestamps.

There is also an older utility and associated source code.

Regards,

Christopher Key
Reply
#52
I can confirm that DVDID lib version 0.1.1 works fine. 0.2 is not really needed as I see it. I have tried building the DLL and calling the function from a C++ project.

If support for DiscID was added cross platform in XBMC, these ID's could be used with the scrapers (if it supports it ala NFOURL (DISCIDURL or something Wink)). With DiscID it would be possible to get data and cover matching 100% (instead of film data in all instances) to the Disc you have via sites like MyMovies.dk. Their API already supports it.

Perhaps someday someone will take this task upon them Smile
Reply
#53
A big up Big Grin

There is a feature in MediaPortal I like a lot (I have a lot of physical media, DVD and Blu-ray). When inserting a disc, it is scanned, the information media are recovered (resolution, sound) and fanarts etc. are retrieved on the Internet, the DVD is inserted in the library. It appears then a different color to indicate that the media is not inserted.

For everything else I much prefer XBMC, it is unfortunate that one can not handle the physical media as easily.

Does that help manage the disks directly in XBMC?
Reply
#54
(2010-08-31, 15:49)doum Wrote: A big up Big Grin

There is a feature in MediaPortal I like a lot (I have a lot of physical media, DVD and Blu-ray). When inserting a disc, it is scanned, the information media are recovered (resolution, sound) and fanarts etc. are retrieved on the Internet, the DVD is inserted in the library. It appears then a different color to indicate that the media is not inserted.

For everything else I much prefer XBMC, it is unfortunate that one can not handle the physical media as easily.

Does that help manage the disks directly in XBMC?

I realize this is a very old thread, but I'm the Meedios DiscId developer. I'm going to work on porting this over to XBMC. It may take a while as I'm not too familiar with XBMC but I'm going to take a shot. I'm looking forward to digging into XBMC.
Reply
#55
(2013-01-19, 23:35)ccrocker Wrote:
(2010-08-31, 15:49)doum Wrote: A big up Big Grin

There is a feature in MediaPortal I like a lot (I have a lot of physical media, DVD and Blu-ray). When inserting a disc, it is scanned, the information media are recovered (resolution, sound) and fanarts etc. are retrieved on the Internet, the DVD is inserted in the library. It appears then a different color to indicate that the media is not inserted.

For everything else I much prefer XBMC, it is unfortunate that one can not handle the physical media as easily.

Does that help manage the disks directly in XBMC?

I realize this is a very old thread, but I'm the Meedios DiscId developer. I'm going to work on porting this over to XBMC. It may take a while as I'm not too familiar with XBMC but I'm going to take a shot. I'm looking forward to digging into XBMC.
ohh! a good news. I think all developpers of Meedios need to go on XBMC now
With you , Crni, Zag, Dakkar, and me, Maybe, we can do something for XBMC Wink

French Kodi translator on Weblate
Reply

Logout Mark Read Team Forum Stats Members Help
Get DVD-Video disc DVDid and then scrape metadata info and artwork online for it?1