No description
Find a file
2025-10-18 21:49:39 +01:00
.github Bump github/codeql-action from 3 to 4 (#1595) 2025-10-08 22:15:47 +10:30
arm fixing udev trigger 2025-10-18 21:49:39 +01:00
arm_wiki [DOCS] Add hints for Intels newer CPUs and discrete GPUs (#1590) 2025-10-08 22:24:25 +10:30
devtools [BUGFIX] UI Progress Bar and Old ARM Version Removal (#1414) 2025-07-01 22:04:51 +09:30
docs fix: remove executable bit from files which don't need it 2025-07-29 18:38:59 +02:00
scripts upgrade to noble 2025-10-18 17:10:47 +01:00
setup fixing udev trigger 2025-10-18 21:49:39 +01:00
test [BUGFIX] Port track 99 detection to python (#1489) 2025-10-02 06:38:50 +01:00
.codeclimate.yml Revert "Revert "Merge branch 'v2_devel' of https://github.com/1337-server/automatic-ripping-machine into v2_devel"" 2022-03-22 10:22:37 +00:00
.codecov.yml Reverting main feature test as it causes issues in some cases. automatic-ripping-machine/issues/446 2021-08-17 22:18:42 +01:00
.dockerignore fixing udev trigger 2025-10-18 21:49:39 +01:00
.gitignore Merge remote-tracking branch 'origin/v2_devel' into v2_master 2023-01-13 22:44:02 +00:00
.pylintrc changed around check_db_version and duplicate_run_check - to lower chances of db errors 2022-04-08 20:25:37 +01:00
build.sh Back to 1 docker image 2025-10-18 03:52:32 +01:00
CHANGELOG.md Merge branch 'pr/485' into v2_devel 2022-04-29 08:28:28 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2022-04-30 03:09:18 +01:00
CONTRIBUTING.md fix: remove executable bit from files which don't need it 2025-07-29 18:38:59 +02:00
Dockerfile Added a catch to stop the whole app crashing when a user/dev is on a branch that doesnt exist 2025-10-18 20:00:47 +01:00
favicon.ico Adding more info to settings.html->General info 2022-05-03 01:02:37 -07:00
LICENSE updated LICENSE 2022-03-12 20:26:00 -07:00
README.md [BUGFIX] UI Progress Bar and Old ARM Version Removal (#1414) 2025-07-01 22:04:51 +09:30
requirements.txt downgrade from noble -> jammy 2025-10-18 15:19:28 +01:00
SECURITY.md fix: remove executable bit from files which don't need it 2025-07-29 18:38:59 +02:00
setup.cfg fix: remove executable bit from files which don't need it 2025-07-29 18:38:59 +02:00
VERSION [FEATURE] Add cd-r/cd-rw support (#1589) 2025-10-08 22:13:42 +10:30

Automatic Ripping Machine (ARM)

CI Publish Docker Image Docker

GitHub forks GitHub stars GitHub issues GitHub pull requests GitHub contributors GitHub last commit

GitHub license

GitHub release (latest by date) GitHub release Date Python Versions

Wiki Discord

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 OMDb 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 or HandBrake (can rip all features or main feature)
      • Eject disc and queue up Handbrake transcoding when done
      • Transcoding jobs are asynchronously batched from ripping
      • Send notifications via IFTTT, Pushbullet, Slack, Discord, and many more!
    • If audio (CD) - rip using abcde (get disc-data and album art from musicbrainz)
    • If data (Blu-ray, DVD, DVD-Audio or CD) - make an ISO backup
  • Headless, designed to be run from a server
  • Can rip from multiple-optical drives in parallel
  • Python Flask UI to interact with ripping jobs, view logs, update jobs, etc

Usage

  • Insert disc
  • Wait for disc to eject
  • Repeat

Requirements

  • A system capable of running Docker containers
  • One or more optical drives to rip Blu-rays, DVDs, and CDs
  • Lots of drive space (I suggest using a NAS) to store your movies

Install

For normal installation please see the wiki.

For docker installation please see here.

Troubleshooting

Please see the wiki for troubleshooting.

Contributing

Pull requests are welcome. Please see the Contributing Guide

If you set ARM up in a different environment (hardware/OS/virtual/etc.), please consider submitting a howto to the wiki.

License

MIT License