Вопрос или проблема
Я видел документацию по ограниченным форматам Blu-Ray здесь, но мне интересно, если кто-то уже придумал простое решение? Также было бы здорово, если кто-то знает о программе, которая обеспечивает сжатие mkv.
Без обсуждения этики медиапиратства, очевидно, что есть законная необходимость сохранять Blu-ray, который вы легально купили, на ваш жесткий диск, чтобы вы могли воспроизводить свой фильм с помощью выбранного вами открытого ПО на выбранной вами открытой операционной системе без необходимости вставлять царапаемый физический диск или зависеть от сайта потокового вещания владельца авторских прав, который может и не существовать через несколько лет…
Это можно сделать на Debian GNU Linux (и его производных — таких как Ubuntu) с помощью инструментов с открытым исходным кодом (т.е. без использования makemkv) следующим образом (примечание – я предпочитаю использовать командную строку для таких задач, кто-то другой может ответить для тех, кто предпочитает графический интерфейс):
ШАГ 1: СОБЕРИТЕ ИНГРЕДИЕНТЫ
Вам понадобятся:
- vlc
- ffmpeg
- KEYDB.cfg, который содержит ключ, подходящий для вашего Blu-ray диска и плеера.
vlc и ffmpeg можно установить с помощью apt/aptitude обычным способом, но файл KEYDB.cfg необходимо загрузить отдельно из интернета.
Хороший источник — этот сайт:
http://fvonline-db.bplaced.net/
Вот фактическая ссылка:
http://fvonline-db.bplaced.net/fv_download.php?lang=eng
Распакуйте его и поместите файл здесь (переименуйте его, если необходимо):
~/.config/aacs/KEYDB.cfg
ШАГ 2: ИЗВЛЕКИТЕ ЖЕЛАЕМЫЙ ЗАГОЛОВОК
cvlc --no-bluray-menu bluray:///dev/sr1#1 --sout "#std{access=file,mux=ts,dst=my_new_film.mpg}" vlc://quit
Замените /dev/sr1
на файл вашего blu-ray устройства – возможно, это /dev/sr0
или что-то еще. Замените #1 на действительный заголовок. Это может быть что угодно. Если не уверены, воспроизведите заголовок, чтобы увидеть, что это именно то, что вам нужно, используя:
vlc --no-bluray-menu bluray:///dev/sr1#1
vlc --no-bluray-menu bluray:///dev/sr1#2
и так далее.
К вашему сведению: полная синтаксическая структура здесь:
bluray://[device][@raw_device][#Any way to easily rip blu-ray disks?
[:[chapter][:angle]]]
ШАГ 3: ПЕРЕКОДИРУЙТЕ В ЧТО-ТО МЕНЬШЕЕ (И УСТРАНИТЕ ЛЮБОЕ НЕИСПРАВНОСТИ)
ffmpeg -i my_new_film.mpg -b:a 384k my_new_film.mp4
rm my_new_film.mpg
ffmpeg
имеет миллион опций… Я думаю, что стандартные видео параметры для этой операции разумны, но увеличение аудиобитрейта желательно (отсюда -b:a 384k). Если (как автор) вы предпочитаете matroska как контейнер или другие кодеки, измените параметры ffmpeg соответственно.
ДОПОЛНИТЕЛЬНОЕ ЧТЕНИЕ:
Чтобы понимать, что происходит с командной строкой vlc, есть помощь здесь:
https://wiki.videolan.org/Documentation:Streaming_HowTo/Advanced_Streaming_Using_the_Command_Line/
Чтобы понимать, что происходит с командной строкой ffmpeg, есть помощь здесь:
Джейсон Милвард выпустил Python-скрипт Autorippr
, который именно это и делает. Он проверяет привод DVD/BR каждые 5 секунд и вызывает MakeMKV, когда обнаруживает, что DVD/B-R вставлен. Затем он извлекает информацию о фильме с IMDB и, наконец, копирует весь диск.
Я еще не тестировал его, но планирую создать сервер без графического интерфейса с Ubuntu Server и установить привод blu-ray для резервного копирования моей коллекции. Посмотрите и дайте нам знать, если вам это подойдёт.
Он доступен в его репозитории Github.
Для 14.04 по 19.04:
Handbrake может копировать Blu-ray в Mkv. Это удобный подход для дисков, которые вы владеете, с небольшими повреждениями, вызывающими замедленное, рывковое воспроизведение. Я успешно решал эту проблему в прошлом, копируя проблемный диск в формат Matroska. Handbrake поддерживает несколько методов сжатия (x264 AVC, x265 HEVC VP3 и др.), а также предустановки и является высоконастраиваемым. Доступные контейнеры включают Matroska, M4V и другие.
Handbrake доступен из репозитория Universe для всех поддерживаемых версий Ubuntu
Есть также страница загрузки здесь.
А проектная страница с официальными выпусками HandBrake для Ubuntu находится здесь.
Существует также версия командной строки под названием handbrake-cli
Полное раскрытие информации: у меня лично нет blu-ray привода, поэтому я не тестировал это на blu-ray хотя ясно, что это работает,но я использовал handbrake для копирования DVD и перезаписи других форматов и нашел его быстрым и стабильным.
MakeMKV утверждает, что может создавать mkv файлы из Blu-Ray.
Вам нужно будет следовать руководству на форуме MakeMKV для получения и компиляции программного обеспечения.
Ответ или решение
Для извлечения Blu-ray дисков с легальными целями, такими как хранение личной коллекции или удобное воспроизведение на различных устройствах, существует ряд инструментов и методов, адаптированных для работы под операционными системами на базе GNU/Linux, такими как Debian и Ubuntu. Эти методы не используют коммерческое ПО, такое как MakeMKV, опираясь на преимущества свободных программных инструментов.
Теория
Процесс извлечения данных с Blu-ray дисков включает несколько этапов: поиск и установка ключа для дешифровки, копирование содержимого диска на жесткий диск и его последующее перекодирование, если требуется, для уменьшения размера файла и добавления совместимости с различными плеерами. Поскольку Blu-ray диски защищены системой AACS (Advanced Access Content System), для их успешного риппинга требуется использовать конфигурационный файл KEYDB.cfg
, который содержит необходимую информацию для дешифровки.
Пример
Для начала процесса необходимо установить такие утилиты, как VLC и FFmpeg. Их можно легко установить с использованием пакетного менеджера APT:
sudo apt update
sudo apt install vlc ffmpeg
Следующий важный шаг — получить файл KEYDB.cfg
, который можно найти на интернете, например, по ссылке: http://fvonline-db.bplaced.net/fv_download.php?lang=eng. После загрузки необходимо поместить его в директорию ~/.config/aacs/
у вас на компьютере.
После подготовки конфигурации можно приступать к непосредственному извлечению данных с диска. Для этого VLC можно использовать в командной строке следующим образом:
cvlc --no-bluray-menu bluray:///dev/sr0#1 --sout "#std{access=file,mux=ts,dst=my_new_film.mpg}" vlc://quit
Тут /dev/sr0
заменяется на файловый дескриптор вашего Blu-ray привода. Для определения номера трека, который вам необходим, можно проиграть их по порядку, используя VLC:
vlc --no-bluray-menu bluray:///dev/sr0#1
Применение
После извлечения видеофайла можно воспользоваться FFmpeg для его перекодирования в другой формат, например, MP4, для уменьшения размера и сохранения качества:
ffmpeg -i my_new_film.mpg -b:a 384k my_new_film.mp4
rm my_new_film.mpg
Если предпочтительным контейнером является Matroska (MKV), FFmpeg поддерживает и этот формат, просто замените расширение и параметры команды соответствующим образом.
Альтернативой VLC и FFmpeg является использование других доступных инструментов:
- Handbrake: мощный инструмент с графическим интерфейсом, которым можно воспользоваться для риппинга и перекодирования видеофайлов в формат MKV с различной степенью сжатия. Он доступен в репозиториях Ubuntu и может быть легко установлен через APT.
- Autorippr: скрипт на Python, который автоматизирует процесс риппинга дисков через интерфейс MakeMKV. Хотя MakeMKV является коммерческим решением, на начальном этапе возможно его использование в пробном режиме.
При планировании резервирования коллекции следует уделить внимание качеству оригиналов и правильно выбрать режимы сжатия, которые не повлияют на качество изображения и звука. Важным элементом является соблюдение лицензии на используемое ПО и легальность действий в соответствии с местными законами об авторском праве.
Таким образом, процесс риппинга Blu-ray дисков хоть и требует некоторой технической подготовки, вполне достижим с использованием доступных свободных инструментов и может быть успешно адаптирован для нужд пользователей любых уровней.