[WIP] AutoRipper for XBMC
#1
***WARNING***
I mainly do windows dev but since my mediacenter is linux and seems to run better in this environment I am going to start writing for linux.
***END WARNING***

Here is what I am trying to accomplish:

When you insert a bluray or dvd disk into your system, it will pop up a prompt on xbmc asking you to play or rip. Rip will return you back to the screen and start ripping in the background. It will use MakeMKV to pull the video off of disk. This is the fastest way to return the cdrom drive back to the user. Then it will use handbrake (if its a bluray) to compress the video (trying to get near perfect quality). Then it will move it to your movie folder location for you.

All this should be done behind the scenes. I am writing this with multi platform in mind, but initially only supporting ubuntu. Suggestions, comments, and help is very much desired.


Here is the github: https://github.com/Cr0n1c/AutoRipper
Reply
#2
I am stuck trying to take a disk and query any part of it to get the movie info from ANY scrapper. Here is the info I can get from the disk. I would like to query ANY part of it to get a movie title.

Code:
mediacenter@mediacenter-MS-7721:~$ udisks --show-info /dev/sr0
Showing information for /org/freedesktop/UDisks/devices/sr0
  native-path:                 /sys/devices/pci0000:00/0000:00:11.0/ata4/host3/target3:0:0/3:0:0:0/block/sr0
  device:                      11:0
  device-file:                 /dev/sr0
    presentation:              /dev/sr0
    by-id:                     /dev/disk/by-id/ata-ATAPI_iHOS104_3775504067_206030500
    by-path:                   /dev/disk/by-path/pci-0000:00:11.0-scsi-0:0:0:0
  detected at:                 Mon 09 Sep 2013 04:06:17 PM EDT
  system internal:             0
  removable:                   1
  has media:                   1 (detected at Tue 10 Sep 2013 01:27:54 PM EDT)
    detects change:            1
    detection by polling:      1
    detection inhibitable:     1
    detection inhibited:       0
  is read only:                0
  is mounted:                  0
  mount paths:
  mounted by uid:              0
  presentation hide:           0
  presentation nopolicy:       0
  presentation name:
  presentation icon:
  automount hint:
  size:                        43064623104
  block size:                  2048
  job underway:                no
  usage:                       filesystem
  type:                        udf
  version:
  uuid:
  label:                       FORREST_GUMP_D1_AC
  optical disc:
    blank:                     0
    appendable:                0
    closed:                    1
    num tracks:                1
    num audio tracks:          0
    num sessions:              1
  drive:
    vendor:                    ATAPI
    model:                     ATAPI   iHOS104
    revision:                  WL0D
    serial:                    3775504067_206030500
    WWN:
    detachable:                0
    can spindown:              0
    rotational media:          Yes, unknown rate
    write-cache:               unknown
    ejectable:                 1
    adapter:                   Unknown
    ports:
    similar devices:
    media:                     optical_bd
      compat:                  optical_bd optical_cd optical_dvd optical_mrw optical_mrw_w
    interface:                 scsi
    if speed:                  (unknown)
    ATA SMART:                 not available

Here is an excerpt from my repository check (this piece I am missing)

Code:
def check_if_owned(movieLabel): #Need help
    '''[ TO DO ] Need to find a way to take CDROM Label and scrap a site to get the movie title.'''
    
    
    ''' WILL NOT WORK UNTIL I FIGURE THIS PIECE OUT '''
    
    #Going to do a simple sql query for the Movie database in XBMC and comparing it to the title we have
    con = sql.connect(XBMC_MOVIE_DB)
    
    cur = con.cursor()
    cur.execute("SELECT c00 FROM movie")
    movieList = cur.fetchall()
    
    found = False
    
    for movieTuple in movieList:
        movie = movieTuple[0]
        
        if movieTitle == movie:
            found = True
            break
    
    cur.close()
    con.close()
    
    return found
Reply
#3
I now have a functioning version. After I run it through a couple of days to get any remaining bugs out, than I will start incorporating this into xbmc.

Current version works independent of xbmc.
Reply
#4
looking forward to testing this when released.. i have been looking into this for a while, but havnt had time to put the foot work down. Keep up the good work!
Reply

Logout Mark Read Team Forum Stats Members Help
[WIP] AutoRipper for XBMC1