MediaChef Обрезать видео
Обрезать видео без потери качества
Бросьте видео в MediaChef, выберите «Обрезать без перекодирования», впишите начало и конец в формате ЧЧ:ММ:СС, нажмите старт. Кусок появится рядом с оригиналом. Ничего не пересчитывается — поток копируется как есть, поэтому картинка побитово та же, а задача заканчивается за сотые доли секунды: по нашим измерениям 0,03 секунды, что для куска в пять секунд, что для пятнадцати. Единственная оговорка — разрез возможен только по опорному кадру, и об этом ниже.
- Что нужно
- MediaChef 0.8.5 — одна загрузка, FFmpeg уже внутри
- Работает офлайн
- Да, полностью — сеть не задействована вообще
- Потеря качества
- Нулевая. Ничего не перекодируется, поток копируется
- Формат времени
- ЧЧ:ММ:СС. Пустой конец — резать до конца файла
- Скорость
- Около 0,03 с, и она не растёт с длиной куска
- Что получится
- clip.trim.mp4 рядом с исходником; оригинал сохраняется
Бесплатно и с открытым кодом — код на GitHub Все файлы и заметки о релизе
Как вырезать кусок из видео
-
Скачайте MediaChef
Один файл на macOS, Windows или Linux. FFmpeg едет внутри загрузки — отдельно ничего ставить не нужно и в PATH ничего дописывать тоже.
-
Бросьте видео на доску
MediaChef читает файл через ffprobe и оставляет только подходящие рецепты. Карточка обрезки появляется у любого видео, каким бы ни был исходный формат.
-
Выберите «Обрезать без перекодирования» и впишите время
Начало и конец в формате ЧЧ:ММ:СС — 00:01:30 это полторы минуты. Если оставить конец пустым, кусок пойдёт от начальной точки до конца файла.
-
Нажмите старт и заберите кусок
Результат ляжет рядом с оригиналом как clip.trim.mp4, а оригинал останется нетронутым. Работа заканчивается быстрее, чем вы успеете отвести взгляд.
Насколько это быстро на самом деле
Поскольку ничего не пересчитывается, работа сводится к копированию нужных байтов. Время не зависит от длины куска — измерено на источнике 1080p длиной 20 секунд.
| Вырезали | Результат | Заняло |
|---|---|---|
| 00:00:02 → 00:00:07 | 5,2 с | 0,03 с |
| 00:00:00 → 00:00:10 | 10,1 с | 0,03 с |
| 00:00:05 → 00:00:20 | 15,0 с | 0,04 с |
Для сравнения: перекодирование того же источника заняло от 1,3 до 2,0 секунды — примерно в пятьдесят раз дольше, да ещё с потерей качества. Если нужен только фрагмент, начинать стоит с этого рецепта.
Почему разрез иногда уезжает
Это честное ограничение, и знание о нём превращает непонятный результат в ожидаемый. Видео хранит не каждый кадр целиком: большинство кадров описывают только разницу с предыдущим, а начать разрез можно лишь с полного кадра — опорного. Попросите точку между двумя такими, и разрез начнётся с опорного кадра перед ней.
| Источник | Опорные кадры на | Просили начать с | Начало вышло на |
|---|---|---|---|
| Редкие опорные кадры | 0 с, 8,33 с, 16,67 с | 5 с | 0 с — на пять секунд раньше |
| Редкие опорные кадры | 0 с, 8,33 с, 16,67 с | 9 с | 8,33 с — на 0,67 с раньше |
| Частые опорные кадры | каждую секунду | 5 с | 5 с — точно |
| Частые опорные кадры | каждую секунду | 9 с | 9 с — точно |
Насколько может уехать разрез — свойство файла, а не MediaChef: записи с телефона и с программ съёмки экрана обычно ставят опорные кадры примерно раз в секунду, а файлы, подготовленные для стриминга, могут разносить их на восемь секунд и больше. Если разрез обязан быть покадровым, нужен видеоредактор — он ради этого перекодирует.
Что меняется, а что остаётся как было
Почти ничего не меняется, и в этом весь смысл рецепта. Список короткий, потому что копирование мало к чему прикасается.
| Свойство | После обрезки | Замечание |
|---|---|---|
| Качество картинки | Идентично | Наружу пишутся те же закодированные кадры. Потери поколения не возникает никогда. |
| Видеокодек | Без изменений | H.264 на входе — H.264 на выходе. Что было в исходнике, то и сохраняется. |
| Разрешение | Без изменений | Для меньшего числа пикселей есть рецепт изменения размера. |
| Звук | Копируется, не перекодируется | Дорожка сохраняет исходный кодек и битрейт. |
| Контейнер | MP4 | Результат пишется в MP4 независимо от контейнера исходника. |
| Оригинал | Не тронут | Рядом пишется новый файл, ничего не перезаписывается. |
Как писать время
Оба поля принимают часы, минуты и секунды через двоеточие. Больше всего вопросов вызывает поле конца.
| Что нужно | Начало | Конец |
|---|---|---|
| Первые тридцать секунд | 00:00:00 | 00:00:30 |
| С 1:30 и до конца файла | 00:01:30 | оставить пустым |
| Минута из середины длинной записи | 01:12:00 | 01:13:00 |
| Последняя часть, начиная с 2:05 | 00:02:05 | оставить пустым |
Конец — это позиция на шкале, а не длительность: чтобы получить десять секунд начиная с первой минуты, пишите 00:01:00 и 00:01:10, а не 00:00:10.
Почему обрезать у себя
Наверх ничего не уходит. Обрезка обычно первое, что делают с сырым материалом, — то есть ровно с тем, который ещё никому не показывали. Он остаётся на диске.
Ждать не приходится вообще. Веб-инструменту сначала нужно получить файл целиком, чтобы вырезать из него десять секунд. Здесь работа заканчивается за сотые доли секунды на файле любого размера.
Качество ничего не стоит. Большинство онлайн-обрезчиков перекодируют, и каждый разрез отнимает поколение качества. Копирование потока не отнимает ничего, и один файл можно резать сколько угодно раз.
Нет ограничения на размер. Двухчасовая запись здесь не проблема, а это ровно тот размер, который веб-инструменты не берут.
Сразу несколько. Бросьте целую папку: очередь пройдёт её и скажет, где какой кусок лёг.
Когда нужен другой рецепт
Копирование потока — то, что делает этот рецепт быстрым и без потерь, и оно же его ограничивает. Вот случаи, где лучше подойдёт что-то другое.
-
Разрез обязан попасть в конкретный кадр.
Как измерено выше, начало откатывается к ближайшему опорному кадру, а на некоторых файлах это несколько секунд. Покадровый разрез требует перекодирования — этим и занимается видеоредактор.
-
Нужно вырезать кусок из середины.
Этот рецепт достаёт один непрерывный фрагмент. Убрать середину означает сделать два куска и склеить их, а это уже монтаж, а не обрезка.
-
Вы всё равно собираетесь сжимать.
Тогда сначала обрежьте, потом сжимайте — такой порядок стоит одного перекодирования вместо двух, а сама обрезка остаётся бесплатной.
-
На выходе нужен другой формат.
Результат — MP4 с исходными потоками внутри. Если нужен WebM, гифка или только звук, берите соответствующий рецепт: они перекодируют по своей природе.
Вопросы
Теряется ли качество при обрезке?
Нет, совсем. Закодированные кадры переносятся нетронутыми, поэтому картинка в куске побитово та же, что была в оригинале. Этим рецепт и отличается от большинства онлайн-обрезчиков, которые перекодируют и отнимают поколение качества на каждом разрезе.
Почему разрез начался раньше, чем я просил?
Потому что начать можно только с опорного кадра — кадра, сохранённого целиком, — а в вашем файле его в запрошенной точке не оказалось. Мы это измерили: на файле с опорными кадрами каждые 8,33 секунды запрос «начать с 5-й секунды» дал кусок, начинающийся с нулевой. На файле с опорными кадрами каждую секунду тот же запрос попал точно. Это свойство файла, а не приложения.
Как сделать покадровый разрез?
Без перекодирования никак — нужного кадра просто не существует в файле в виде готовой картинки. Если точность важнее скорости и качества, нужен видеоредактор: он декодирует и кодирует заново, чтобы дать вам любой кадр, на который вы покажете.
Сколько это занимает времени?
По нашим измерениям около 0,03 секунды, и время не растёт с длиной куска: пять секунд и пятнадцать заняли одинаково. Перекодирование того же источника заняло от 1,3 до 2,0 секунды — примерно в пятьдесят раз дольше.
Как писать начало и конец?
В формате ЧЧ:ММ:СС — часы, минуты, секунды. 00:01:30 это полторы минуты. Конец — это позиция, а не длительность: чтобы получить десять секунд начиная с первой минуты, пишите 00:01:00 и 00:01:10.
Что будет, если оставить конец пустым?
Кусок пойдёт от вашей начальной точки до конца файла. Это самый быстрый способ отрезать длинный хвост — например, запись, которая продолжалась после окончания встречи.
Можно вырезать середину и оставить остальное?
Одним шагом нет. Этот рецепт делает один непрерывный кусок. Убрать середину означает получить два куска и склеить их, а это работа для редактора, а не для обрезки.
Меняется ли исходный файл?
Нет. Кусок пишется рядом как clip.trim.mp4, а исходник не меняется, не переименовывается и не удаляется. Из одного файла можно вырезать несколько разных кусков подряд.
Что происходит со звуком?
Он копируется вместе с картинкой, сохраняя исходный кодек и битрейт. Ни одна из дорожек не перекодируется.
Есть ограничение на длину или размер?
Нет. MediaChef его не ставит, а поскольку работа — копирование, а не вычисление, двухчасовой файл режется не медленнее двухминутного. Ограничение — свободное место на диске, и приложение проверяет его перед стартом.
Какие форматы можно обрезать?
Всё, что читает FFmpeg: MP4, MKV, MOV, WebM, AVI, TS и остальные. Результат пишется в MP4 с исходными видео- и аудиопотоками внутри.
Можно обрезать несколько видео сразу?
Да, но начало и конец у всех будут одинаковыми. Бросьте их все на доску, добавьте рецепт — очередь выполнит их одно за другим.
Работает без интернета?
Да, полностью. FFmpeg едет внутри загрузки, поэтому обрезка не касается сети ни разу. Одноразовая загрузка модели нужна только для расшифровки, а это другой рецепт.
Есть водяной знак или платная версия?
Нет. MediaChef с открытым кодом под GPL-3.0, платной версии нет, и раз ничего не перекодируется, водяному знаку тут негде было бы взяться даже в принципе.
Работает на Windows и Linux?
На всех трёх системах. Для Windows есть установщик, для Linux — AppImage и .deb, для macOS — DMG под Apple Silicon. Рецепт ведёт себя одинаково везде.
Вырежьте нужный кусок
MediaChef 0.8.5 — бесплатно, открытый код, macOS · Windows · Linux.
Бесплатно и с открытым кодом — код на GitHub Все файлы и заметки о релизе
MediaChef — молодой проект: сборки пока без подписи Apple и Microsoft, поэтому первый запуск попросит подтверждение — простая инструкция лежит внутри каждого архива.
Что-то не работает или чего-то не хватает? Напишите: hello@mediachef.app