2016-07-14 2 views
0

Я знаю, что он копирует что-то, кроме этого, что он делает (до какой степени он влияет на выходной файл)? Это переключатель или опция? Почему у него нет дефиса перед самим словом?Что делает «копировать» в командной строке ffmpeg?

Я вижу из других вопросов, что он может copy streams without transcode, но что такое другая возможность, что я могу манипулировать им?

Я сделал ffmpeg --help, но я не вижу никакой документации по этому вопросу. Есть ли сайт, на котором я могу больше узнать об этом?

ответ

4

copy не является ни переключателем, ни опцией. Это значение, которое может быть установлено для параметра кодека, и означает, что он предлагает, то есть скопировать кадры вместо того, чтобы проходить процесс декодирования -> фильтр->.

В вопросе, который вы связали, строка -c copy, что означает, что все операции с кодеком копируются, например, видео, аудио, субтитры, данные и вложения, если они есть. -c не подходит для -codec.

Если вы установили -c:v copy, это означает, что нужно копировать любые обрабатываемые видеопотоки. То же самое относится к -c:a или -c:s или -c:d. Конечно, FFmpeg должен поддерживать мультиплексирование целевого потока в выходной контейнер. Если этого не произойдет, команда завершится неудачно.

Вы не можете использовать аудио/видео/мультимедийные фильтры при запросе копирования потока, поскольку фильтры должны декодировать аудио/видео кадры и управлять ими. Поэтому их результат необходимо перекодировать. Однако вы можете использовать битовые потоки с копией, поскольку они не изменяют основную полезную нагрузку, а только связанные метаданные, хранящиеся в потоке.

Смежные вопросы