Как удалить звуковую дорожку из MKV без перекодирования
В скачанном MKV-фильме звука обычно больше, чем вы когда-нибудь включите: оригинал, две-три озвучки, комментарии режиссёра. Каждая дорожка 5.1 весит от половины гигабайта до нескольких. Убрать ненужные можно за минуту, ничего не потеряв и без всяких конвертеров. Вот четыре способа для Windows: от программы в один клик до командной строки.
Почему конвертер не нужен
MKV — это контейнер: коробка, в которой видео, каждая звуковая дорожка, субтитры и главы лежат отдельными потоками. Чтобы убрать дорожку, коробку просто перепаковывают без этого потока. Байты видео копируются как есть, поэтому картинка в новом файле ровно та же, что в старом, а работа занимает примерно столько, сколько копирование файла. Это называется ремукс.
Видеоконвертеры и онлайн-сервисы «удалить звук из MKV» делают другое: раскодируют картинку и сжимают её заново. Процессор занят от десятков минут до часов на фильм, и с каждым проходом картинка чуть хуже. Простое правило: если программа спрашивает про качество или битрейт, она собирается перекодировать ваше видео. Закройте её. Ни в одном из четырёх способов ниже такой настройки нет.
Способ 1: Slim My Movies — минута и никаких настроек
Slim My Movies — наша бесплатная программа для Windows ровно под эту задачу. Она показывает каждую дорожку с размером, так что видно, что вы убираете и сколько выиграете, ещё до записи.
- Скачайте и установите программу (Windows 10 и 11, 64 бит). Нажмите Открыть... и выберите фильм или просто перетащите файл в окно.
-
Посмотрите на список дорожек. У каждой звуковой показаны язык с флагом, кодек, каналы, название
и размер в МБ. Снимите галочки с дорожек, которые надо убрать. Если вы смотрите на одном-двух языках,
впишите их в поле Мои языки (например,
rus) и нажмите Только мои языки: все остальные озвучки и субтитры снимутся разом. - Строка внизу показывает итог до начала работы: «Было 4,2 ГБ → станет 2,9 ГБ».
- Нажмите Сохранить.... Через полминуты рядом с оригиналом появится копия без лишних дорожек, с .slim в имени. Если удобнее, выберите Вместо оригинала: новый файл сначала проверяется, и только потом старый уходит в Корзину.
und (undetermined) — без указанного языка; чаще всего выручает её название.
Если не выручает, включите фильм в плеере и попереключайте дорожки (в VLC: Аудио → Аудиодорожка):
порядок там тот же, что в списке. Заодно поставьте флаг По умолчанию на дорожку, которую оставляете,
чтобы любой плеер начинал фильм с неё.
Способ 2: MKVToolNix
MKVToolNix — бесплатный набор инструментов с открытым кодом, на котором стоит весь мир MKV. Его оболочка делает тот же ремукс, со всеми настройками, какие есть у Matroska.
- Откройте MKVToolNix GUI. На вкладке Мультиплексор нажмите Добавить исходные файлы и выберите фильм.
- В списке Дорожки, главы и теги снимите галочки со звуковых дорожек, которые не нужны. Тип, кодек и язык показаны у каждой дорожки; размеры — нет.
- Проверьте имя Файла назначения внизу и нажмите Начать мультиплексирование.
Помните, что MKVToolNix всегда пишет MKV (MP4 на выходе не бывает), работает с одним файлом за раз, пока вы не напишете скрипт, и не говорит, сколько места занимает дорожка. Для одного фильма с необычными запросами — правка глав, теги, разрезание — это правильный инструмент.
Способ 3: mkvmerge из командной строки
mkvmerge.exe идёт в комплекте с MKVToolNix и удобен для скриптов. Сначала выведите список дорожек с их ID:
mkvmerge -i "Фильм.mkv"
Потом оставьте только названные звуковые дорожки; всё остальное (видео, субтитры, главы, вложения) копируется как есть:
mkvmerge -o "Фильм.new.mkv" --audio-tracks 1 "Фильм.mkv"
Несколько дорожек перечисляются через запятую (--audio-tracks 1,3), вместо ID работают коды языков
(--audio-tracks rus,und). Знак ! впереди переворачивает список:
--audio-tracks !2 убирает дорожку 2 и оставляет остальные. Целая папка за раз:
for %f in (*.mkv) do mkvmerge -o "out\%f" --audio-tracks rus,und "%f"
ID дорожек в разных файлах разные, поэтому для папки отбирайте по языку, а не по номеру, и не забудьте und:
во многих файлах единственная звуковая дорожка без языка, и правило без него оставит фильм немым.
Способ 4: ffmpeg
Если у вас уже есть ffmpeg, он тоже умеет ремукс. Главное — ключ -c copy: без него ffmpeg перекодирует всё.
Убрать вторую звуковую дорожку (потоки считаются с нуля):
ffmpeg -i "Фильм.mkv" -map 0 -map -0:a:1 -c copy "Фильм.new.mkv"
-map 0 берёт все потоки входного файла, -map -0:a:1 выбрасывает звуковой поток номер 1,
-c copy копирует остальное без перекодирования. Оставить только первую звуковую дорожку:
ffmpeg -i "Фильм.mkv" -map 0:v -map 0:a:0 -map 0:s? -map 0:t? -c copy "Фильм.new.mkv"
Здесь 0:s? и 0:t? сохраняют субтитры и вложенные шрифты, если они есть.
Проверьте результат в плеере: ffmpeg строг к мелочам вроде редких кодеков субтитров и может остановиться с ошибкой там,
где инструмент для MKV просто скопирует поток.
Сразу сотни фильмов
С одним файлом справится любой из четырёх способов. Разница начинается на коллекции. Со скриптами вы отбираете по языку и надеетесь, что все файлы размечены правильно; в MKVToolNix ставите файлы в очередь по одному. В Slim My Movies для этого есть вкладка Коллекция: добавьте папку, нажмите Анализировать, и программа прочитает все фильмы и покажет, сколько места освободят правила — по каждому файлу и всего. Задайте языки один раз, решите, что делать с комментариями, принудительными субтитрами и дорожками без языка, и нажмите Применить. Анализ бесплатный; бесплатная версия применяет правила к пяти файлам в сутки, у Pro ограничений нет.
Проверьте результат, прежде чем удалять оригинал
Каким бы способом вы ни шли, включите новый файл и попереключайте в нём звуковые дорожки. Сравните размеры: новый файл должен быть меньше примерно на размер убранных дорожек — не на пару килобайт и не вдвое. Только потом удаляйте оригинал. Slim My Movies делает эту проверку сама — открывает результат, сверяет дорожки с тем, что вы заказали, и отправляет оригинал в Корзину, а не удаляет — но со скриптом это на вас.
Вопросы
Изменится ли качество картинки?
Нет. Во всех четырёх способах видеопоток копируется побитно. Если инструмент трудился над фильмом больше нескольких минут или загрузил процессор на 100%, он перекодировал — и вот его как раз стоит избегать.
Почему новый файл лишь чуть меньше?
Потому что убранная дорожка была маленькой. Стереодорожка AAC на двухчасовой фильм — около 150 МБ, а дорожка без потерь DTS-HD — 3–5 ГБ. Slim My Movies показывает размер каждой дорожки до сохранения, так что сюрпризов не будет.
Можно ли так же убрать звуковую дорожку из MP4?
Да. Slim My Movies и ffmpeg открывают MP4 (M4V) так же, как MKV; MKVToolNix читает MP4, но пишет MKV. Можно и сохранить MKV как MP4 без перекодирования видео, если звук в формате, который MP4 поддерживает (AAC, AC3, E-AC3); DTS и TrueHD преобразуются, и программа предупредит заранее.
А можно вместо удаления заменить дорожку другой?
Да. В Slim My Movies добавьте внешний файл (AC3, DTS, AAC, FLAC, MKA) или возьмите дорожку из другой
копии фильма, а если звук отстаёт, сдвиньте его на несколько миллисекунд. mkvmerge делает то же с двумя входными
файлами и ключом --sync.
Нужно ли пересканировать библиотеку Plex или Jellyfin?
Нет, если файл сохранил имя и место: сервер заново прочитает дорожки при следующем воспроизведении или обновлении записи. В Slim My Movies выберите «Вместо оригинала», и файл останется там же.
Slim My Movies 1.0 для Windows.
Ещё по теме
- Slim My Movies
- Как пользоваться Slim My Movies
- Диски подорожали: как освободить место, убрав лишние звуковые дорожки
- All My Movies