FLV часто приходится переводить в MP4 не ради монтажа, а ради совместимости: старый ролик не принимается редактором, не открывается на телевизоре или смартфоне, либо его неудобно загружать на современную площадку. Главная ошибка в такой задаче — сразу запускать повторное сжатие. Если внутри FLV уже находятся видеопоток H.264 и совместимая аудиодорожка, контейнер можно заменить на MP4 без декодирования и повторного кодирования. В этом случае пиксели и звук не пересчитываются, поэтому качество не меняется. Если же исходный FLV содержит VP6, Sorenson Spark, FLV1 или другой поток, который нельзя корректно поместить в MP4, без перекодирования видео не обойтись.
Ниже разобраны пять способов, которые покрывают разные сценарии: простой графический конвертер для Windows, VLC для разовой операции, HandBrake для управляемого перекодирования, FFmpeg для настоящего remux без потерь и OBS Studio для FLV-записей, сделанных в OBS. Для каждого варианта указано, где качество сохраняется буквально, а где речь идет только о минимизации потерь при повторном сжатии.
- Сначала определите: нужен remux или перекодирование
- Какой способ выбрать
- Подготовка перед конвертацией
- Способ 1. ВидеоМАСТЕР: простой путь для Windows
- Шаг 1. Добавьте FLV и сразу проверьте предпросмотр
- Шаг 2. Выберите MP4, а не профиль с уменьшением размера
- Шаг 3. Откройте «Параметры»
- Шаг 4. Укажите отдельную папку и запустите обработку
- Что считать правильным результатом
- Способ 2. VLC media player: конвертация без отдельного конвертера
- Шаг 1. Откройте окно Convert/Save
- Шаг 2. Выберите профиль MP4
- Шаг 3. Проверьте настройки профиля
- Шаг 4. Укажите имя с расширением .mp4
- Как оценить результат VLC
- Способ 3. HandBrake: когда старый FLV нужно аккуратно перекодировать
- Шаг 1. Откройте FLV через Open Source
- Шаг 2. Установите контейнер MP4
- Шаг 3. Не меняйте геометрию кадра без причины
- Шаг 4. Настройте частоту кадров
- Шаг 5. Выберите режим качества видео
- Шаг 6. Сохраните совместимый звук без лишнего пересжатия
- Шаг 7. Запустите Start Encode и проверьте Activity Log при ошибке
- Способ 4. FFmpeg: настоящий FLV → MP4 без потери качества
- Шаг 1. Посмотрите, какие кодеки находятся внутри FLV
- Шаг 2. Для H.264/AAC сначала попробуйте stream copy
- Шаг 3. Проверьте новый MP4, а не только сообщение о завершении
- Шаг 4. Если не проходит только аудио, не трогайте видео
- Шаг 5. Если видеокодек не поддерживается MP4, перекодируйте только необходимое
- Шаг 6. Не добавляйте масштабирование и fps без необходимости
- Шаг 7. Для серии файлов сначала отделите remux от transcode
- Способ 5. OBS Studio: remux FLV, записанного в OBS
- Шаг 1. Откройте File → Remux Recordings
- Шаг 2. Нажмите Remux
- Шаг 3. Проверьте MP4 в редакторе, ради которого выполнялся remux
- Когда OBS не подходит
- Как проверить, что качество действительно не ухудшилось
- После FFmpeg stream copy
- После ВидеоМАСТЕР, VLC или HandBrake
- Проверьте звук и синхронизацию до конца
- Сравните длительность и перемотку
- Что именно портит картинку при FLV → MP4
- Типичные ошибки и безопасная диагностика
- MP4 получился, но стал заметно размытым
- Размер MP4 в несколько раз больше
- FFmpeg пишет, что кодек не поддерживается контейнером MP4
- После конвертации нет звука
- Звук постепенно уходит от изображения
- MP4 открывается, но плохо перематывается
- VLC завершил процесс, а файл пустой или очень короткий
- HandBrake автоматически обрезал края
- OBS Remux Recordings не помогает со старым FLV
- Файл после обработки выглядит нормально, но редактор его не принимает
- Матрица сохранности: что меняется при каждом способе
- Чек-лист перед окончательным экспортом
- Когда лучше не использовать онлайн-конвертер
- FAQ
- Можно ли просто переименовать .flv в .mp4?
- Почему FFmpeg с -c copy работает за секунды, а HandBrake кодирует долго?
- MP4 всегда означает H.264?
- Нужно ли повышать разрешение при переводе старого FLV в MP4?
- Можно ли сохранить исходный звук, если видео приходится перекодировать?
- Что делать с FLV, в котором есть VP6?
- Почему после remux размер файла немного изменился?
- Нужно ли включать «быстрый старт» MP4?
- Какой способ использовать для сотен FLV?
- Итог: как получить MP4 без лишнего ухудшения
- Предложить модель для рейтинга
Сначала определите: нужен remux или перекодирование
FLV и MP4 — контейнеры. Контейнер задает способ упаковки видеопотока, аудио, временных меток и служебных данных, но сам по себе не определяет качество изображения. Кодек отвечает за то, как сжат видеоряд. Поэтому два файла с разными расширениями могут содержать один и тот же H.264-поток, а два файла с одинаковым расширением — совершенно разные кодеки.
Remux означает перепаковку уже сжатых потоков в другой контейнер. При stream copy кадры H.264 и аудиопакеты копируются без декодирования и повторного кодирования. Это самый короткий путь из FLV в MP4, когда кодеки совместимы с новым контейнером. FFmpeg прямо называет режим streamcopy: опция -c copy не запускает декодирование и кодирование, поэтому качество не теряется.
Перекодирование нужно, когда новый контейнер не принимает исходный видеокодек или когда требуется изменить разрешение, частоту кадров, кадрирование, фильтры либо другие свойства картинки. Здесь исходный поток сначала декодируется, затем сжимается заново. Даже при высоком качестве это уже не идентичная копия исходных видеоданных.
| Что находится внутри FLV | Что делать | Что происходит с качеством |
|---|---|---|
| H.264 + AAC | Сначала пробовать remux в MP4 без перекодирования | Видео и звук можно перенести без потерь |
| H.264 + MP3 | Сначала пробовать копирование потоков; при проблеме со звуком оставить видео без изменений и перекодировать только аудио в AAC | Картинка остается исходной; меняется только звук, если MP3 приходится заменить |
| VP6, Sorenson Spark, FLV1 и другие старые видеокодеки | Перекодировать видео, обычно в H.264, затем сохранить в MP4 | Абсолютно нулевой потери уже нет; качество зависит от настроек кодера |
| Поврежденный или недописанный FLV | Сначала проверить, читаются ли дорожки и временные метки | Обычная конвертация не восстанавливает отсутствующие кадры |
Старые FLV действительно часто содержат On2 VP6 или Sorenson Spark, а аудио — MP3. У записей OBS ситуация другая: для FLV OBS использует очень ограниченный набор — H.264 для видео и AAC для звука. Такая пара одновременно поддерживается MP4, поэтому FLV из OBS особенно хорошо подходит для remux.
Какой способ выбрать
| Способ | Главный сценарий | Строго без перекодирования | Контроль параметров | Ограничение |
|---|---|---|---|---|
| ВидеоМАСТЕР | Нужен понятный русскоязычный интерфейс в Windows | Описанный здесь сценарий использует перекодирование в выбранный профиль | Кодек, разрешение, битрейт, частота кадров, готовые профили | При обычной конвертации видео пересжимается |
| VLC media player | Программа уже установлена и нужно преобразовать один-два файла | Основной графический сценарий Convert рассчитан на конвертацию | Профили контейнера, видео- и аудиокодека | Настройки профилей менее наглядны, чем у специализированного конвертера |
| HandBrake | Старый FLV нужно надежно декодировать и получить совместимый MP4 | Видео кодируется заново; аудио поддерживает passthru для совместимых дорожек | Кодер, качество, частота кадров, аудио, фильтры | Не подходит для побитового копирования видеопотока |
| FFmpeg | Нужно сохранить H.264 без пересжатия, обработать много файлов или точно контролировать потоки | Да, через -c copy, если кодеки совместимы с MP4 | Максимальный: можно копировать или кодировать каждую дорожку отдельно | Работа через терминал |
| OBS Studio | FLV был записан в OBS и нужен MP4 для монтажа или загрузки | Да, встроенная функция Remux Recordings меняет контейнер без обычного повторного кодирования | Минимальный — операция специально сделана как remux | Не стоит использовать как универсальный конвертер произвольных старых FLV |
Если приоритет — именно неизменная видеодорожка, начинайте с FFmpeg. Если FLV создан OBS, сначала используйте встроенный remux самого OBS. ВидеоМАСТЕР, VLC и HandBrake полезнее, когда исходный кодек старый или нужно одновременно привести файл к более совместимому H.264/AAC.
Подготовка перед конвертацией
Перед работой сохраните исходный FLV отдельно и не записывайте новый файл поверх него. Это особенно важно для старых записей: после неудачной обработки повторно получить оригинальный поток уже не получится. Для результата создайте отдельную папку и используйте новое имя, например clip_mp4.mp4.
- Проверьте воспроизведение. Просмотрите начало, середину и конец FLV. Если исходник уже содержит пропуски кадров, длительные зависания или рассинхронизацию, эти дефекты нельзя приписывать конвертеру.
- Зафиксируйте разрешение и частоту кадров. При перекодировании без необходимости не увеличивайте разрешение и не меняйте fps. Апскейл не возвращает деталей, которых нет в исходнике, а изменение кадровой частоты создает лишнюю обработку.
- Сравнивайте одинаковые фрагменты. После преобразования откройте начало, сцену с быстрым движением, темный участок и фрагмент с мелкими деталями. Именно там быстрее заметны блочность, размытие и полосы на градиентах.
- Не ориентируйтесь только на размер. MP4 после remux обычно близок по объему к исходнику, но небольшой разброс из-за устройства контейнера нормален. При перекодировании размер зависит от режима качества и битрейта и сам по себе ничего не говорит о сохранности деталей.
Если FLV важен и единственной копии больше нет, сначала сделайте дубликат на другом носителе. Все действия ниже безопаснее выполнять с копией.
Способ 1. ВидеоМАСТЕР: простой путь для Windows
ВидеоМАСТЕР подходит, когда нужен графический интерфейс на русском языке и важнее получить совместимый MP4 без заметного ухудшения, чем сохранить видеопоток побитово. Актуальная версия 12.8 рассчитана на Windows 11, 10, 8 и 7. Программа обрабатывает несколько файлов в очереди, позволяет выбирать разрешение и битрейт и содержит готовые профили вывода.

Шаг 1. Добавьте FLV и сразу проверьте предпросмотр
Запустите программу и нажмите «Добавить». Выберите FLV на диске. После импорта ролик появляется в списке, а справа доступен предпросмотр. До изменения формата перемотайте запись и убедитесь, что программа читает и картинку, и звук. Если FLV не воспроизводится уже на этом этапе, не запускайте длинную очередь: такой файл лучше сначала проанализировать в FFmpeg.
Шаг 2. Выберите MP4, а не профиль с уменьшением размера
В блоке форматов выберите MP4/MPEG-4. Не используйте профиль устройства только потому, что в названии есть ваш смартфон: такой профиль вправе уменьшить разрешение, частоту кадров или битрейт ради компактности. Для сохранения качества важнее оставить геометрию кадра и fps исходника и настроить кодек без лишнего преобразования.
Шаг 3. Откройте «Параметры»
Перед запуском откройте «Параметры». Для обычного современного MP4 выбирайте H.264. Оставьте исходный размер кадра и исходную частоту кадров, если конечная площадка не требует другого. Не уменьшайте битрейт только ради меньшего файла: именно агрессивное снижение битрейта быстрее всего проявляется в движении, мелкой фактуре, листве, воде, волосах и шумных ночных сценах.

Шаг 4. Укажите отдельную папку и запустите обработку
Выберите каталог в поле папки для сохранения и нажмите «Конвертировать». Для серии роликов сначала обработайте один короткий файл или один типичный клип. После этого сравните результат с исходником и только затем запускайте пакетную очередь. Такой порядок быстрее обнаруживает слишком низкое качество профиля или случайное уменьшение кадра.
Что считать правильным результатом
MP4 должен иметь ту же длительность, те же пропорции и ту же частоту кадров, если вы их не меняли сознательно. Звук не должен сдвигаться к концу ролика. В стоп-кадрах сравните мелкие детали и контрастные границы; при воспроизведении — движение камеры и темные участки. Для этого способа понятие «без потери качества» означает отсутствие заметного дополнительного ущерба при корректных настройках, а не побитовое равенство видеопотока.
Этот вариант рационален для пользователя Windows, которому нужен визуальный контроль и понятная настройка. Если исходник уже H.264/AAC и требуется сохранить поток без единого повторного сжатия, переходите к FFmpeg или к remux в OBS для записей из OBS.
Способ 2. VLC media player: конвертация без отдельного конвертера
VLC полезен, когда плеер уже установлен и нужно обработать один файл без освоения дополнительной программы. В интерфейсе есть отдельный сценарий Convert/Save: пользователь добавляет исходник, выбирает профиль MP4, задает путь и запускает преобразование. Для строгого remux этот путь не так прозрачен, как FFmpeg, поэтому VLC лучше рассматривать как удобное перекодирование в совместимый H.264/AAC.

Шаг 1. Откройте окно Convert/Save
В VLC выберите Media → Convert/Save. На вкладке файла нажмите Add, укажите FLV, затем снова нажмите Convert/Save. На macOS названия и размещение элементов интерфейса отличаются, но логика остается той же: сначала источник, затем профиль и файл назначения.
Шаг 2. Выберите профиль MP4
В окне конвертации выберите профиль Video – H.264 + AAC (MP4), если он доступен в вашей сборке. Этот профиль дает совместимый MP4 с H.264-видео и AAC-аудио. Не включайте деинтерлейсинг без необходимости: фильтр нужен только для действительно чересстрочного материала и означает дополнительную обработку кадра.

Шаг 3. Проверьте настройки профиля
Кнопка редактирования профиля открывает параметры инкапсуляции, видео и аудио. Оставляйте MP4 как контейнер. Если исходник уже имеет нормальное разрешение, не задавайте масштабирование. Не меняйте кадровую частоту только для получения «стандартных» 30 fps: дополнительное приведение fps способно дать повтор или пропуск кадров и изменить характер движения.
Шаг 4. Укажите имя с расширением .mp4
Нажмите Browse, задайте новый файл с расширением .mp4 и вернитесь в окно Convert. После нажатия Start VLC начнет обработку. Прогресс часто отображается не отдельным диалогом, а движением шкалы воспроизведения, поэтому не закрывайте приложение до завершения.
Как оценить результат VLC
Сначала проверьте, что новый MP4 открывается с самого начала и перематывается ближе к концу. Затем сравните длительность, резкость мелких деталей и синхронность речи. При слишком мягкой картинке отредактируйте профиль в сторону более высокого качества вместо повторной конвертации уже полученного MP4. Каждый дополнительный цикл lossy-сжатия увеличивает накопленные артефакты, поэтому все повторные попытки делайте от исходного FLV.
Способ 3. HandBrake: когда старый FLV нужно аккуратно перекодировать
HandBrake стоит выбирать не для буквальной смены контейнера, а для проблемного FLV, который содержит старый видеокодек и все равно требует нового H.264-потока. Программа использует библиотеки FFmpeg для чтения видео и умеет открывать FLV. На выходе доступны MP4, MKV и WebM. При этом видеопоток HandBrake кодирует заново; passthru применяется к поддерживаемым аудиодорожкам, поэтому HandBrake не заменяет FFmpeg в задаче безусловного копирования H.264.

Шаг 1. Откройте FLV через Open Source
Нажмите Open Source и выберите FLV. После сканирования HandBrake показывает длительность, размеры кадра и доступные дорожки. Если приложение не видит видео или длительность определилась явно неверно, не продолжайте вслепую: такой исходник лучше сначала проверить через FFmpeg, где диагностические сообщения точнее.
Шаг 2. Установите контейнер MP4
На вкладке Summary выберите Format: MP4. Не включайте фильтры только ради «улучшения». Шумоподавление, повышение резкости, деинтерлейсинг и другие фильтры полезны для конкретного дефекта, но каждый из них меняет изображение. При задаче «сохранить как есть, но сделать совместимым» лишние фильтры отключают.
Шаг 3. Не меняйте геометрию кадра без причины
Проверьте вкладку размеров. Для сохранения исходной детализации не уменьшайте ширину и высоту. Автоматическое удаление черных полей тоже является изменением кадра: если полосы являются частью нужного изображения или вы хотите сохранить абсолютно одинаковую композицию, отключите нежелательное кадрирование.
Шаг 4. Настройте частоту кадров
На вкладке Video значение Same as Source вместе с Variable Frame Rate сохраняет временную структуру исходника без преобразования частоты кадров. Режим CFR нужен не «для качества», а для совместимости с отдельными монтажными системами и старыми устройствами. Для обычного FLV → MP4 не меняйте VFR на CFR без конкретной причины.
Шаг 5. Выберите режим качества видео
HandBrake предназначен для повторного кодирования видеодорожки. Для H.264 используйте режим постоянного качества и не пытайтесь получить маленький файл за счет сильного сжатия. Сначала сохраните короткий фрагмент или один типичный ролик и оцените движение, текст, волосы, листву и плавные градиенты. Если артефакты заметны, увеличьте качество и повторите кодирование от исходного FLV.
Шаг 6. Сохраните совместимый звук без лишнего пересжатия
На вкладке Audio для AAC или MP3 доступен passthru. Режим Auto Passthru копирует поддерживаемую аудиодорожку, если она совместима с контейнером; иначе HandBrake использует fallback-кодер, по умолчанию AAC. Это позволяет не пересжимать звук там, где в этом нет необходимости, даже когда видео приходится кодировать заново.
Шаг 7. Запустите Start Encode и проверьте Activity Log при ошибке
Укажите файл назначения с расширением MP4 и нажмите Start Encode. При неожиданном завершении откройте журнал работы: там видно, какой декодер прочитал FLV, какие дорожки выбраны и на каком этапе возникла ошибка. Для серийной работы сначала сохраните настройки как собственный preset и проверьте его на нескольких разных роликах.
HandBrake особенно полезен для старого VP6/Sorenson/FLV1, который нельзя просто переложить в MP4. В таком случае цель — не «обмануть» контейнер, а один раз качественно перейти на современный кодек и дальше не пересжимать файл без необходимости.
Способ 4. FFmpeg: настоящий FLV → MP4 без потери качества
FFmpeg — основной инструмент, когда нужно точно разделить две операции: перепаковку потоков и перекодирование. Команда -c copy включает streamcopy — пакеты переносятся в новый контейнер без декодирования и кодирования. Именно этот сценарий дает буквальное отсутствие потерь, если видеокодек и аудиокодек допустимы в MP4.

Шаг 1. Посмотрите, какие кодеки находятся внутри FLV
Откройте терминал в папке с файлом и выполните:
ffprobe -hide_banner -v error -show_entries stream=index,codec_type,codec_name,width,height,r_frame_rate,sample_rate,channels -of default=noprint_wrappers=1 input.flv
В ответе найдите codec_type=video и codec_name. Для видео H.264 обычно отображается имя h264. У аудиодорожки встречаются aac или mp3. Если видео обозначено как vp6f, flv1 или другим старым кодеком, готовьтесь к перекодированию видеодорожки.
Шаг 2. Для H.264/AAC сначала попробуйте stream copy
Команда для типичного FLV с одной видеодорожкой и необязательной аудиодорожкой:
ffmpeg -i input.flv -map 0:v:0 -map 0:a? -c copy output.mp4
-map 0:v:0 берет первую видеодорожку, -map 0:a? добавляет аудио, если оно есть, а -c copy запрещает повторное кодирование. В выводе FFmpeg строка Stream mapping должна показывать copy. Если процесс заканчивается успешно, именно этот MP4 следует считать вариантом без потери качества.
Шаг 3. Проверьте новый MP4, а не только сообщение о завершении
Откройте результат в плеере и выполните для него тот же ffprobe. Название видеокодека, разрешение и частота кадров должны совпасть с исходным потоком. Длительность должна быть той же с учетом особенностей временных меток контейнера. Затем перемотайте файл к концу: корректный индекс MP4 должен позволять нормальный seek без длинной задержки.
Шаг 4. Если не проходит только аудио, не трогайте видео
Иногда видеопоток H.264 подходит для MP4, а аудиодорожку удобнее заменить на AAC. Тогда нет смысла пересжимать изображение:
ffmpeg -i input.flv -map 0:v:0 -map 0:a? -c:v copy -c:a aac output.mp4
Здесь -c:v copy сохраняет видео без изменений, а только аудио декодируется и кодируется в AAC. Для задачи сохранения изображения это намного лучше полного транскодирования обеих дорожек.
Шаг 5. Если видеокодек не поддерживается MP4, перекодируйте только необходимое
Для VP6, Sorenson Spark или FLV1 видеопоток нужно создать заново. Практичный вариант для совместимого MP4:
ffmpeg -i input.flv -map 0:v:0 -map 0:a? -c:v libx264 -preset medium -crf 18 -c:a aac -b:a 192k output.mp4
libx264 кодирует H.264; preset управляет компромиссом между скоростью и эффективностью кодирования; crf задает режим постоянного качества. Значение 18 — высококачественная отправная точка для обычного 8-битного материала, но итог оценивайте на конкретном видео. Такой файл уже не идентичен исходному видеопотоку, поэтому формулировка «без потерь» к нему неприменима.
Шаг 6. Не добавляйте масштабирование и fps без необходимости
В команде выше нет фильтра scale и принудительного -r, поэтому вы не задаете новое разрешение или новую частоту кадров вручную. Если конечное устройство принимает исходные размеры и временную структуру, это правильнее, чем одновременно менять контейнер, размер кадра и fps.
Шаг 7. Для серии файлов сначала отделите remux от transcode
Не запускайте одну команду перекодирования на всю папку, пока не знаете состав файлов. В одной коллекции могут лежать FLV разных поколений: часть с H.264/AAC можно перепаковать без потерь за секунды, а часть с VP6 придется кодировать. Разделение на две группы сохраняет качество там, где пересжатие вообще не требуется, и сокращает время обработки.
При регулярной пакетной работе полезно отдельно изучить принципы работы с кодеками, фильтрами и очередями перекодирования. Это помогает не смешивать смену контейнера с операциями, которые реально требуют пересчета изображения.
Способ 5. OBS Studio: remux FLV, записанного в OBS
OBS Studio имеет отдельную функцию Remux Recordings. Она предназначена именно для превращения записей из одного контейнера в более совместимый MP4 без обычного повторного кодирования. Для FLV из OBS условия особенно удачные: формат FLV в OBS ограничен H.264-видео, AAC-аудио и одной аудиодорожкой, а H.264/AAC совместимы с MP4.

Шаг 1. Откройте File → Remux Recordings
Запустите OBS и выберите File → Remux Recordings. Нажмите кнопку с многоточием и добавьте нужный FLV либо перетащите файл в окно. OBS автоматически формирует путь для целевого MP4; перед запуском убедитесь, что исходник и результат имеют разные имена.
Шаг 2. Нажмите Remux
Нажмите Remux и дождитесь сообщения о завершении. Здесь нет ползунка качества, потому что задача не состоит в выборе нового битрейта или кодера. Потоки переносятся в другой контейнер. Поэтому время операции обычно ограничено скоростью чтения и записи накопителя, а не скоростью видеокодера.
Шаг 3. Проверьте MP4 в редакторе, ради которого выполнялся remux
Откройте MP4 именно в том редакторе или проигрывателе, где FLV не принимался. Проверьте начало, перемотку, звук и конец. Если файл открывается и длительность совпадает, повторное кодирование не нужно. Не запускайте затем конвертацию в H.264 «для надежности»: H.264 уже находится внутри такого FLV.
Когда OBS не подходит
Remux Recordings — отличный путь для собственных записей OBS и файлов с совместимыми потоками. Произвольный FLV из старого сайта, старой камеры или неизвестной программы способен содержать VP6, Sorenson Spark, MP3 и другие комбинации. OBS не следует использовать как универсальный декодер для такой коллекции. Сначала определите кодеки через ffprobe; для несовместимого видео выберите HandBrake, VLC, ВидеоМАСТЕР или перекодирование в FFmpeg.
Как проверить, что качество действительно не ухудшилось
Самая надежная проверка зависит от того, какой путь использовался. После remux не нужно оценивать картинку «на глаз» как единственный критерий: важнее доказать, что видеопоток не кодировался заново. После транскодирования, наоборот, идентичности потока уже нет, поэтому основная задача — обнаружить визуальные и временные дефекты.
После FFmpeg stream copy
- Запустите ffprobe для исходного FLV и нового MP4.
- Сверьте codec_name видеодорожки. H.264 должен остаться H.264.
- Сверьте width, height и частоту кадров.
- Проверьте наличие аудиодорожки и ее кодек.
- Посмотрите строку Stream mapping в логе конвертации: для копируемых дорожек должно быть указано copy.
При таком процессе само изображение не декодировалось и не кодировалось, поэтому оценивать «резкость до и после» уже не требуется для подтверждения качества. Визуальный просмотр нужен для проверки корректности временных меток, перемотки и синхронизации.
После ВидеоМАСТЕР, VLC или HandBrake
Сравните ролики на одном дисплее и в одном плеере. Начните с сцены, где есть движение камеры или объекта: слишком сильное сжатие заметно по распаду текстур на блоки и смазыванию мелких деталей. Затем найдите темный участок — там быстрее проявляются ступени в градиентах и дополнительный шум. На статичном кадре сравните текст, провода, волосы, траву и мелкую фактуру одежды.
Не увеличивайте один ролик сильнее другого при сравнении. Если новый MP4 случайно получил меньшее разрешение, плеер растянет его до размера окна и создаст впечатление размытия, которое на самом деле связано с ресайзом. Сначала сверяйте геометрию файла, затем визуальные детали.
Проверьте звук и синхронизацию до конца
Рассинхронизация часто заметна только через несколько минут. Найдите в конце ролика момент с четким звуковым событием — хлопком, ударом, закрытием двери, началом слова. Сравните с движением в кадре. Если расхождение постепенно растет, причиной обычно является изменение временной базы или кадровой частоты, а не качество аудиокодека.
Сравните длительность и перемотку
Новый MP4 должен нормально перематываться. Ошибка контейнера способна проявиться так: начало играет, но переход к середине занимает много времени или приводит к неправильной позиции. После remux это важнее, чем размер файла. Если MP4 нужен для монтажа, обязательно импортируйте его в целевую программу и переместите курсор по нескольким участкам таймлайна.
Что именно портит картинку при FLV → MP4
Само расширение MP4 качество не ухудшает. Ухудшение появляется из-за операций, которые выполняются вместе со сменой контейнера. Если их отделить друг от друга, результат становится предсказуемым.
- Повторное lossy-кодирование. Уже сжатые блоки декодируются и снова упрощаются новым кодером. Чем ниже выбранное качество, тем сильнее новые артефакты.
- Уменьшение разрешения. Профиль для телефона или сайта нередко уменьшает 1920×1080 до меньшего кадра. Вернуть потерянные детали простым увеличением уже нельзя.
- Принудительное изменение fps. Приведение 25 к 30 или VFR к CFR меняет временную структуру. В зависимости от метода появляются повторенные или отброшенные кадры.
- Фильтры без необходимости. Шумоподавление, резкость, деинтерлейсинг и автоматическое улучшение меняют пиксели. Они оправданы только при конкретном дефекте.
- Слишком низкий битрейт. Особенно заметен на воде, дыме, конфетти, листве, мелком тексте и сценах с быстрым движением.
- Несколько поколений пересжатия. FLV → MP4 → еще один MP4 → экспорт из редактора ухудшает материал сильнее, чем один тщательно настроенный финальный encode.
Поэтому правильная стратегия проста: сначала выяснить, можно ли выполнить remux. Если нельзя — кодировать видео ровно один раз, не меняя остальные свойства без реальной причины.
Типичные ошибки и безопасная диагностика
MP4 получился, но стал заметно размытым
Проверьте разрешение нового файла. Если оно ниже исходного, вернитесь к оригинальному FLV и отключите уменьшение. Если разрешение совпадает, причиной обычно становится слишком сильное сжатие. Увеличьте качество кодирования и повторите процесс от FLV, а не от уже ухудшенного MP4.
Размер MP4 в несколько раз больше
Большой размер не означает автоматического улучшения. При перекодировании кодер мог получить завышенный битрейт или менее эффективные параметры. Сначала сравните кодек, разрешение и длительность. Если качество устраивает, размер можно оптимизировать отдельным encode, но это будет еще одно поколение сжатия. Лучше сразу подобрать настройки на исходнике.
FFmpeg пишет, что кодек не поддерживается контейнером MP4
Это прямой сигнал, что stream copy конкретной дорожки невозможен в выбранной форме. Посмотрите, какой поток указан в ошибке. Если несовместимо только аудио, оставьте -c:v copy и кодируйте только звук в AAC. Если несовместимо видео, создайте новый H.264-поток.
После конвертации нет звука
Сначала убедитесь, что аудиодорожка была в исходнике. В FFmpeg проверьте ffprobe и параметр -map 0:a?. В HandBrake откройте вкладку Audio и убедитесь, что дорожка добавлена. В VLC проверьте аудиокодек профиля. Повторную обработку выполняйте от исходного FLV.
Звук постепенно уходит от изображения
Не пытайтесь исправить это случайным изменением аудиобитрейта. Сначала верните исходную кадровую частоту и уберите ненужный CFR. В HandBrake используйте Same as Source; в других программах не задавайте новое fps, если это не требуется целевой системе. Для проблемного старого FLV полный encode иногда корректнее простого remux, потому что декодер заново формирует временную структуру.
MP4 открывается, но плохо перематывается
Проверьте файл в другом современном плеере и в целевом редакторе. Если проблема сохраняется после stream copy, старые временные метки FLV могли перенестись неудачно. В таком случае перекодирование проблемного файла дает более предсказуемый индекс и тайминг, хотя уже не является способом без потерь.
VLC завершил процесс, а файл пустой или очень короткий
Проверьте путь назначения и профиль. Не сохраняйте результат под тем же именем, что и исходный FLV. Если конкретный файл не декодируется VLC, используйте FFmpeg для диагностики или HandBrake для повторного чтения потока; не запускайте многократно тот же профиль вслепую.
HandBrake автоматически обрезал края
Вернитесь к исходнику и проверьте параметры кадрирования. Автоматический crop удаляет области, которые программа считает черными полями. Для сохранения исходной композиции установите нулевое кадрирование там, где эти полосы должны остаться.
OBS Remux Recordings не помогает со старым FLV
OBS remux особенно подходит своим записям H.264/AAC. Старые FLV другого происхождения часто содержат VP6, Sorenson Spark или FLV1. Определите видеокодек через ffprobe. Если это не H.264, используйте инструмент перекодирования, а не повторяйте remux.
Файл после обработки выглядит нормально, но редактор его не принимает
Совместимость зависит не только от расширения. Редактор проверяет видеокодек, аудиокодек, профиль H.264, пиксельный формат, временные метки и другие параметры. Для проблемного монтажа проще сделать один совместимый H.264/AAC MP4, чем сохранять редкую внутреннюю структуру ценой постоянных ошибок импорта. Дополнительный вариант рабочего процесса с очередями и различными контейнерами разобран в материале о подготовке видео к перекодированию и дальнейшему монтажу.
Матрица сохранности: что меняется при каждом способе
| Операция | Видеоданные | Аудиоданные | Разрешение и fps | Обратимость |
|---|---|---|---|---|
| FFmpeg -c copy | Копируются без повторного кодирования | Копируются без повторного кодирования | Сохраняются | Высокая: исходные потоки остаются теми же, меняется контейнер |
| FFmpeg -c:v copy -c:a aac | Видео не меняется | Аудио кодируется заново | Видео сохраняется | Видео сохраняется полностью; звук уже создан заново |
| OBS Remux Recordings | Перепаковывается для MP4 | Перепаковывается | Не требуется задавать заново | Подходит для исходных записей OBS |
| HandBrake | Кодируется заново | Копируется при совместимом passthru либо кодируется | Можно сохранить или сознательно изменить | Исходный видеопоток восстановить из результата нельзя |
| VLC | В типичном профиле кодируется заново | В типичном профиле кодируется заново | Зависят от профиля | Исходное сжатие не восстанавливается |
| ВидеоМАСТЕР | Кодируется в выбранный профиль | Формируется под параметры профиля | Настраиваются вручную или preset | Исходник нужно хранить отдельно |
Эта таблица объясняет, почему выражение «конвертировать без потери качества» нельзя свести к одной галочке. Нулевая потеря относится к копированию уже сжатого потока. Как только программа меняет кодек видео, результат становится новым encode — даже когда визуально он практически неотличим.
Чек-лист перед окончательным экспортом
- Исходный FLV сохранен отдельно и не будет перезаписан.
- Известно, какой видеокодек находится внутри файла.
- Для H.264/AAC сначала попробован remux без перекодирования.
- При перекодировании оставлено исходное разрешение, если уменьшение не требуется специально.
- Частота кадров не изменена без причины.
- Не включены случайные фильтры, deinterlace, crop или «автоулучшение».
- Для серии файлов сначала проверен один типичный ролик.
- После обработки просмотрены начало, середина и конец.
- Проверена синхронизация речи и движения ближе к концу ролика.
- MP4 импортирован в ту программу или устройство, ради которого выполнялось преобразование.
Если все пункты выполнены, риск ненужного ухудшения заметно ниже. Самое важное решение принимается до нажатия кнопки конвертации: копировать существующий поток или создавать новый.
Когда лучше не использовать онлайн-конвертер
Браузерный сервис подходит для небольшого неважного ролика, когда установка программы нежелательна. Но для задачи без потери качества он дает меньше контроля: пользователь не всегда видит, выполняется remux или полный encode, какие параметры получил H.264 и сохраняется ли исходная частота кадров. Кроме того, файл нужно передать на внешний сервер.
Для длинных записей, материалов с персональными данными, рабочих съемок и больших серий локальная обработка предсказуемее. FFmpeg и OBS позволяют выполнить remux без загрузки файла в сеть; HandBrake, VLC и ВидеоМАСТЕР также работают с локальным исходником. Это упрощает повторную проверку и не привязывает результат к лимитам веб-сервиса.
FAQ
Можно ли просто переименовать .flv в .mp4?
Нет. Переименование меняет только имя файла, а внутренняя структура контейнера остается FLV. Плеер или редактор, который проверяет заголовок и структуру, по-прежнему увидит FLV. Для сохранения качества нужен remux, а не смена расширения.
Почему FFmpeg с -c copy работает за секунды, а HandBrake кодирует долго?
Stream copy не декодирует кадры и не рассчитывает новое сжатие; он переносит готовые пакеты в новый контейнер. HandBrake создает новый видеопоток, поэтому каждый кадр проходит декодирование и кодирование. Разница во времени — следствие разных операций, а не показатель качества программы.
MP4 всегда означает H.264?
Нет. MP4 — контейнер. Он способен содержать разные видеокодеки, включая H.264, H.265/HEVC, MPEG-4 Part 2, VP9 и AV1 в поддерживающих их реализациях. Для максимальной совместимости старого FLV с обычными плеерами и редакторами H.264/AAC остается понятным вариантом, но расширение .mp4 само по себе кодек не определяет.
Нужно ли повышать разрешение при переводе старого FLV в MP4?
Нет, если отдельная задача апскейла не стоит. Простое увеличение, например с 640×360 до 1920×1080, не восстанавливает отсутствующие детали и только увеличивает объем работы кодера. Сохраняйте исходный размер кадра, а отдельное улучшение выполняйте осознанно другим этапом.
Можно ли сохранить исходный звук, если видео приходится перекодировать?
Да, когда аудиокодек совместим с MP4. FFmpeg позволяет кодировать видео и копировать аудио отдельными параметрами. HandBrake поддерживает passthru ряда аудиоформатов, включая AAC и MP3. Такой подход исключает лишнее поколение сжатия звука.
Что делать с FLV, в котором есть VP6?
VP6 нельзя считать готовым видеопотоком для обычного MP4. Его нужно декодировать и создать новый совместимый видеопоток, например H.264. Для этого подходят HandBrake и FFmpeg; графические конвертеры также применимы, если корректно читают исходник. Сохраняйте исходное разрешение и fps и выбирайте высокое качество кодирования.
Почему после remux размер файла немного изменился?
Контейнеры хранят индексы, заголовки и служебные структуры по-разному. Поэтому новый MP4 не обязан иметь байт-в-байт тот же размер, что FLV, даже если медиапотоки скопированы без изменений. Подтверждением отсутствия перекодирования служит stream copy и совпадение параметров потока, а не одинаковый размер файлов.
Нужно ли включать «быстрый старт» MP4?
Fast start переносит служебный индекс MP4 ближе к началу файла, что полезно для прогрессивного воспроизведения по сети. На качество видеопотока эта операция не влияет. Для локального просмотра она не обязательна, но полезна, если MP4 будет отдаваться через веб-сервер.
Какой способ использовать для сотен FLV?
Сначала распределите файлы по кодекам. H.264/AAC выгодно пакетно remux через FFmpeg, потому что это исключает пересжатие и намного быстрее encode. Старые VP6/FLV1 вынесите в отдельную очередь и кодируйте одним проверенным профилем. Не смешивайте обе группы в одну команду полного перекодирования: иначе вы потеряете качество там, где этого можно было полностью избежать.
Итог: как получить MP4 без лишнего ухудшения
Для FLV с H.264/AAC правильное первое действие — не «подобрать высокий битрейт», а вообще отказаться от повторного кодирования. FFmpeg с -c copy переносит медиапотоки в MP4 без потери качества. Если FLV записан в OBS, ту же задачу проще выполнить через File → Remux Recordings.
Если внутри файла VP6, Sorenson Spark или другой старый видеокодек, буквальный remux в совместимый MP4 не решает задачу. Тогда нужен один качественный encode в H.264 с исходным разрешением и без ненужного изменения кадровой частоты. HandBrake дает наиболее прозрачный контроль такого процесса; VLC удобен для разовой конвертации, а ВидеоМАСТЕР — для пользователя Windows, которому нужен русскоязычный графический интерфейс и очередь файлов.
Сохраняйте исходный FLV до полной проверки результата. После конвертации сверяйте кодек, разрешение, fps, длительность, звук и перемотку. Такой порядок позволяет не путать простую смену контейнера с повторным сжатием и сохранять исходное качество везде, где технически возможен remux.








