Вопрос или проблема
Когда я ищу информацию на эту тему, я нахожу много информации о преобразовании 3D в 2D или о преобразовании 3D в форматы side-by-side или top/bottom. Я не хочу менять тип используемого 3D (MVC — стандарт для 3D Blu-ray), однако. Я просто хочу более агрессивно сжать видео, чтобы сделать файл меньше, возможно, использовать H.265 вместо H.264, если H.265 поддерживает 3D.
Вот информация из mediainfo о видео:
Видео
ID : 1
Формат : AVC
Формат/Инфо : Advanced Video Codec
Профиль формата : Stereo [email protected] / [email protected]
Количество просмотров : 2
Макет MultiView : Оба глаза сплетены в одном блоке (левый глаз первый)
Настройки формата : CABAC / 2 Ref Frames
Настройки формата, CABAC : Да
Настройки формата, эталонные кадры : 2 кадра
Настройки формата, GOP : M=1, N=10
Настройки формата, количество срезов : 6 срезов на кадр
ID кодека : V_MPEG4/ISO/AVC
Продолжительность : 1 ч 36 мин
Режим битрейта : Переменный
Битрейт : 35,6 Мбит/с
Ширина : 1 920 пикселей
Высота : 1 080 пикселей
Соотношение сторон : 16:9
Режим частоты кадров : Постоянный
Частота кадров : 23,976 (24000/1001) FPS
Цветовое пространство : YUV
Хроминанс субдискретизация : 4:2:0
Глубина цвета : 8 бит
Тип сканирования : Прогрессивное
Биты/(Пиксель*Кадр) : 0,717
Размер потока : 24,0 ГиБ (83%)
Язык : Английский
По умолчанию : Нет
Принудительно : Нет
Какие-нибудь предложения? Обычно я использую HandBrake для таких вещей, но я также выполнял некоторую конвертацию видео и аудио с помощью FFmpeg, обычно когда автоматизировал задачи.
Предпочтительным результатом будет, если также будет “Оба глаза сплетены в одном блоке (левый глаз первый)”.
Обновление:
Если я сделаю это, используя последнюю версию ffmpeg (2025-01-05-git-19c95ecbff-full_build-www.gyan.dev):
ffmpeg -i input.mkv -vcodec libx265 -crf 15 output.mkv
…я получаю постоянный поток предупреждений и ошибок, таких как:
[h264 @ 00000137dd9b85c0] Late SEI is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[h264 @ 00000137dd9b85c0] If you want to help, upload a sample of this file to https://streams.videolan.org/upload/ and contact the ffmpeg-devel mailing list. ([email protected])
[h264 @ 00000137dda71140] sps_id 1 out of range
Выход все равно есть, несмотря на все эти ошибки, и mediainfo
говорит, что выход – это “Оба глаза сплетены в одном блоке (левый глаз первый)”, но он воспроизводится как 2D, а не 3D.
Обновление 2:
Уточнил, что речь идет конкретно о MVC 3D… но, к сожалению, это уточнение, вероятно, означает, что на данный момент нет решения для моего вопроса с помощью ffmpeg и, возможно, никогда не будет.
Ответ или решение
Конвертация и сжатие видеофайлов, особенно в формате MVC 3D, требует тщательного подхода, учитывая специфику формата и желаемое качество конечного продукта. Вы пытаетесь сжать 3D-видео, сохранив формат MVC без преобразования в 2D или в стереоскопические представления, такие как side-by-side или top/bottom. Проблема заключается в том, что поддержка MVC в FFmpeg ограничена, и для полноценной работы могут потребоваться специфические решения.
Что представляет собой MVC 3D?
MVC (Multiview Video Coding) — это расширение H.264/AVC, которое поддерживает кодировку стереоскопического 3D-контента. Этот формат позволяет хранить две проекции (левый и правый канал) в одном потоке, что характерно для 3D Blu-ray дисков.
Использование FFmpeg для сжатия MVC 3D
На данный момент FFmpeg не имеет полной поддержки для сжатия и кодировки файлов MVC 3D в современных кодеках, таких как H.265 (HEVC). Проблемы, с которыми вы столкнулись, вероятно, связаны с отсутствием поддержки или полной реализации некоторых функций MVC в FFmpeg.
Решения и рекомендации
-
Обновление FFmpeg: Убедитесь, что вы используете самую последнюю версию FFmpeg. Однако, как вы уже отметили, даже в последней версии могут быть недостатки в поддержке MVC.
-
Альтернативные инструменты: Рассмотрение использования сторонних инструментов, которые могут обеспечить лучшее сжатие MVC 3D. Например, некоторые коммерческие программы или специализированные утилиты могут иметь более полную поддержку таких форматов.
-
Сжатие без изменения формата: Если основная задача — это сжатие без изменения формата, можно попробовать использовать настройки кодека H.264 с более агрессивными параметрами сжатия, сохраняя при этом изначальный формат.
-
Использование оболочки скриптов: При необходимости автоматизации можно написать скрипты, которые будут использовать дополнительное программное обеспечение для работы с MVC вместе с FFmpeg.
-
Профессиональная помощь и сообщества: Обратитесь к форумам и сообществам, связанным с видеокодированием, для получения советов и рекомендаций от профессионалов, которые могли сталкиваться с аналогичными задачами.
Заключение
Пока поддержка MVC 3D в FFmpeg остаётся неоптимальной, вам, возможно, придётся искать альтернативные решения или использовать гибридный подход, сочетая различные инструменты для достижения необходимого качества и сжатия. Следите за новыми релизами FFmpeg и другими инструментами, которые могут предложить улучшенную поддержку этого формата в будущем.