Python requirements (#17)

Python Requirements
Changelog
Readme
Change GET_VIDEO_TITLE to true in config sample
This commit is contained in:
Benjamin Bryan
2016-12-02 20:40:30 -08:00
committed by GitHub
parent 8a4318885a
commit 032b461e84
5 changed files with 110 additions and 3 deletions

View File

35
CHANGELOG.md Normal file
View File

@@ -0,0 +1,35 @@
# Changelog
## 1.3.0
- Get Title for DVD and Blu-Rays so that media servesr can identify them easily.
- Determine if video is Movie or TV-Show from OMDB API query so that different actions can be taken (TV shows usually require manual episode identification)
- Option for MakeMKV to rip using backup method.
- Option to rip only main feature if so desired.
## v1.2.0
- Distinguish UDF data from UDF video discs
## v1.1.1
- Added devname to abcde command
- Added logging stats (timers). "grep STAT" to see parse them out.
## v1.1.0
- Added ability to rip from multiple drives at the same time
- Added a config file for parameters
- Changed logging
- Log name is based on ID_FS_LABEL (dvd name) variable set by udev in order to isolate logging from multiple process running simultaneously
- Log file name and path set in config file
- Log file cleanup based on parameter set in config file
- Added phone notification options for Pushbullet and IFTTT
- Remove MakeMKV destination directory after HandBrake finishes transcoding
- Misc stuff
## v1.0.1
- Fix ripping "Audio CDs" in ISO9660 format like LOTR.
## v1.0.0
- Initial Release

View File

@@ -1,8 +1,75 @@
Automatic Ripping Machine (ARM)
# Automatic Ripping Machine (ARM)
[![Build Status](https://travis-ci.org/ahnooie/automatic-ripping-machine.svg?branch=master)](https://travis-ci.org/ahnooie/automatic-ripping-machine)
For more details and install instructions see: https://b3n.org/automatic-ripping-machine
## Overview
Insert an optical disc (Blu-Ray, DVD, CD) and checks to see if it's audio, video (Movie or TV), or data, then rips it.
See: https://b3n.org/automatic-ripping-machine
## Features
- Detects insertion of disc using udev
- Determines disc type...
- If video (Blu-Ray or DVD)
- Retrieve title from disc or Windows Media MetaServices API to name the folder "movie title (year)" so that Plex or Emby can pick it up
- Determine if video is Movie or TV using OMDb API
- Rip using MakeMKV (can rip all features or main feature)
- Eject disc and queue up Handbrake transcoding when done
- Transcoding jobs are asynchronusly batched from ripping
- Send notification when done via IFTTT or Pushbullet
- If audio (CD) - rip using abcde
- If data (Blu-Ray, DVD, or CD) - make an ISO backup
- Headless, designed to be run from a server
- Can rip from multiple-optical drives in parallel
## Requirements
- Ubuntu Server 16.04 (should work with other Linux distros)
- One or more optical drives to rip Blu-Rays, DVDs, and CDs
- Lots of drive space (I suggest using a NAS like FreeNAS) to store your movies
## Install
sudo su
add-apt-repository ppa:heyarje/makemkv-beta
add-apt-repository ppa:stebbins/handbrake-releases
add-apt-repository ppa:mc3man/xerus-media
apt update
apt install makemkv-bin makemkv-oss
apt install handbrake-cli libavcodec-extra
apt install abcde flac imagemagick glyrc cdparanoia
apt install at
apt install python3 python3-pip
cd /opt
git clone https://github.com/ahnooie/automatic-ripping-machine.git arm
cd arm
pip3 install -r requirements.txt
ln -s /opt/arm/51-automedia.rules /lib/udev/rules.d/
ln -s /opt/arm/.abcde.conf /root/
cp config.sample config
Edit your "config" file to determine what options you'd like to use.
Optionally if you want something more stable than master you can download the latest release from the releases page.
## Usage
- Insert disc
- Wait for disc to eject
- Repeat
## Troubleshooting
Check /opt/arm/log to see if you can find where the script failed. If you need any help feel free to open an issue.
## Contributing
Pull requests are welcome
## License
[MIT License](LICENSE)

View File

@@ -9,7 +9,7 @@ ARM_CHECK_UDF=true
# When enabled if the disc is a DVD use dvdid to calculate a crc64 and query Windows Media Meta Services for the Movie Title.
# For BluRays attempts to extract the title from an XML file on the disc
GET_VIDEO_TITLE=false
GET_VIDEO_TITLE=true
#####################
## Directory setup ##

5
requirements.txt Normal file
View File

@@ -0,0 +1,5 @@
pycurl>=7.43.0
pydvdid>=1.0
requests>=2.9.1
urllib3>=1.13.1
xmltodict>=0.10.2