ffmpeg выводит имя файла из нескольких источников - PullRequest
0 голосов
/ 21 мая 2019

Я хочу, чтобы выходной файл имел то же имя из источника (например, первое имя файла из list.txt), как я могу это сделать?

Это код, который у меня есть, который преобразует все.avi в папке с отдельными файлами и переименовывает его в output.avi.

Вместо output.avi Я хочу, чтобы имя файла совпадало с первым именем файла из исходной папки или первым именем файла из list.txt.

for %%f in (*.avi) do (
    echo file %%f >> list.txt
)
ffmpeg -f concat -safe 0 -i list.txt -c copy output.avi
del list.txt

Еще одна вещь, которую я хочу знать, можно ли перевернуть видео по горизонтали или отразить его без перекодирования?

Ответы [ 2 ]

1 голос
/ 21 мая 2019

Можно ли перевернуть видео по горизонтали или отразить его без перекодирования?

Нет, не при использовании фильтров (таких как hflip, vflip, rotate и т. Д.). Фильтрация требует перекодирования.

Метаданные ротации, упомянутые в другом ответе, могут быть достаточными для этого варианта использования, но поддержка среди игроков не является универсальной. Нет метаданных для зеркального отображения или перелистывания: только вращение.

Если это не приемлемо, то у самого плеера могут быть возможности зеркального отражения / переворачивания. Пример:

mpv -vf hflip video.mp4
1 голос
/ 21 мая 2019

Я не думаю, что ffmpeg поддерживает "обратную ссылку" на входные имена файлов.Я предлагаю обрабатывать это в bash или некоторых других средствах написания сценариев.Например, вы можете использовать первую строку list.txt в качестве имени выходного файла, как это (не проверено):

ffmpeg -f concat -i list.txt -c copy output/$(head -1 list.txt)

В этом примере, если первая строка - foo.avi, выходные данные будут сохранены на output/foo.avi.

возможно ли перевернуть видео по горизонтали или отразить его без перекодирования

Очевидно, вы можете установить метаданные поворота без перекодированияподсказывать видеоплееры для воспроизведения с заданным поворотом.Может быть, есть флаги метаданных для зеркального отображения или перелистывания, но я не смог их найти.

Если это не сработает для вас, я не верю, что есть встроенное решение для этого без повторногокодирование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...