November 19, 20241 yr Hello, I'm running unRaid Version 6.12.13 2024-08-22. I've recently added a Plex Docker to my system. Previously to running Plex, I had ripped my DVD collection to VIDEO_TS file format because my preferred player handled that well. My BluRays I've ripped to .iso format. With Plex, I need to convert my films to mkv format. So I've installed jlesage/makemkv docker. This has worked great to convert my BluRay .iso files to .mkv files. But, near as I can tell, MakeMKV won't open the dvd file format from a folder, only from an optical disk. In the past, on a Windows machine, I've used Elby's Virtual Clone Drive to present a folder as an optical drive to MakeMKV. This then allows MakeMKV to open my DVD folder as if it were a drive, rather than a file. If possible, I'd like to do something similar all on my unRaid machine. Has anyone done something like this, whether using Elby's VCD or something else, to enable MakeMKV to open a folder as if it were a physical disk? Any ideas or instructions? Thank you,
November 19, 20241 yr Community Expert untested essential you need to make a virtural drive and mount it. Theoretical possible... If i'm understanding this correctly... Both options would require working knowledge of installing 3rd party slackware packages using the extra folder / nerdtool... To enable MakeMKV in your unRAID setup to handle VIDEO_TS folders as if they were physical DVDs, you can use a combination of tools and approaches to "mount" the folder as a virtual drive. Here's how you can approach this on unRAID: Option 1: Use vfs_mount to create a virtual optical drive Install the Required Packages(not sure if they exist in native unraid....) You'll need to use a tool like vfs_mount (Virtual File System mount) or similar Linux tools for mounting. Since unRAID is based on Slackware Linux, ensure you have the required packages available in your unRAID system. To install additional tools like fuseiso or dvdbackup: ?Use the NerdPack plugin or the Community Applications plugin to add missing packages. the application in terminal your trying to run is vfs_mount.... It may be buried within another folder within libvirt stuff... Mount the VIDEO_TS Folder mount --bind /path/to/VIDEO_TS /mnt/disks/virtual_dvd Point MakeMKV Docker to Virtual DVD Update the MakeMKV Docker container to point to /mnt/disks/virtual_dvd as an input source. You can do this by updating the container's settings and mounting this path as a volume. Test Run MakeMKV, and it should detect the VIDEO_TS folder as if it's a DVD. Option 2: Convert VIDEO_TS to ISO (Recommended for Compatibility) If you have many VIDEO_TS folders, converting them to ISO format can simplify the process: Install genisoimage (or mkisofs) You can use tools like genisoimage to convert a VIDEO_TS folder to an ISO image. genisoimage -o /output/path/movie.iso -dvd-video /path/to/VIDEO_TS Add to MakeMKV Point MakeMKV to the mounted ISO path (/mnt/disks/virtual_dvd) as the input source. Option 3: Use an Alternate Docker Container for Mounting You can run a small Docker container that mounts folders as virtual drives. For example: Use a Docker container with tools like fuseiso preinstalled, or create your own container to handle the mounting process. Mount the folder into this container and expose it as a volume to your MakeMKV container https://forums.docker.com/t/mount-iso-inside-a-container/3911/4
November 19, 20241 yr Community Expert You will need to fix any pathing or not replace any exisitng /dev/loops/files... https://slackbuilds.org/repository/15.0/system/fuseiso/?search=fuseiso cd /boot/extra wget https://slackbuilds.org/slackbuilds/15.0/system/fuseiso.tar.gz In Slackware, the vfs_mount utility is not included in the standard package repositories. However, you can achieve similar functionality using the fuseiso tool, which allows you to mount ISO images and other filesystem images as virtual filesystems. Using fuseiso to Mount ISO Images: mkdir /mnt/virtual_dvd Mount the ISO image: fuseiso /path/to/your.iso /mnt/virtual_dvd check: ls /mnt/virtual_dvd Unmounting the ISO Image: fusermount -u /mnt/virtual_dvd ^This is jsut to confirm you can mount the iso to a path... Then the trickey part... docker pathing. to tell the docker to use taht as a disk drive... you can mount a folder or ISO image to emulate a DVD drive by binding it to one of the sr0 or sg0 devices for MakeMKV in Docker. However, this requires some specific setup because MakeMKV expects physical devices to function correctly. Step 1: Bind Mount a Virtual Optical Drive If you want to trick MakeMKV into thinking your folder or ISO is a physical optical drive: Use a Tool to Mount as a Virtual Optical Drive Install a utility like fuseiso (for ISO images) or similar on your unRAID system to handle the mounting: fuseiso /path/to/movie.iso /mnt/disks/virtual_dvd If you are working with a VIDEO_TS folder, convert it to an ISO first using genisoimage working with iso is much easer then a folder.... genisoimage is apart of trhe cdrkit package https://slackbuilds.org/repository/15.0/system/cdrkit/?search=cdrkit cd /boot/extra wget https://slackbuilds.org/slackbuilds/15.0/system/cdrkit.tar.gz genisoimage -o /path/to/movie.iso -dvd-video /path/to/VIDEO_TS to pass devcie /dev/sr0 /dev/sg0 in makemkv docker... Lets Create a Bind Mount to /dev/sr0 or /dev/sg0 UnRAID doesn’t allow directly replacing device files like /dev/sr0, so you’ll need to create a loopback device. Use losetup to map your ISO to a loop device: UnRAID doesn’t allow directly replacing device files like /dev/sr0, so you’ll need to create a loopback device. Use losetup to map your ISO to a loop device: *loloop does exit make a new one that is not in use... losetup /dev/loop0 /path/to/movie.iso Once mapped, make it accessible as /dev/sr0 mount -o loop /dev/loop0 /mnt/disks/virtual_dvd this should make /dev/loop# the virtual disk for make mkv... or try pathing... Insure the Docker container has access to /mnt/disks/virtual_dvd. ... in the edit tab for docker example: --device /dev/loop0:/dev/sr0 or -v /mnt/disks/virtual_dvd:/mnt/disks/virtual_dvd loop may need updated permissions: chmod 666 /dev/loop0 Edited November 19, 20241 yr by bmartino1
December 6, 20241 yr Author Thank you everyone. I appreciate your help. I ended up simply "Opening File" rather than trying to open a virtual disk, in MakeMKV. If I point that to the VIDEO_TS.IFO file under the DVD's VIDEO_TS directory, or the movie.iso file for my BluRays, it converts most all of them fine. I got a couple of errors for which I had to go back to the original disk. That worked fine opening the disk from MakeMKV. Again, Thank you for taking the time to lend me some help.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.