Как склеить картинки в видео ffmpeg?

Ikigai

Client
Регистрация
13.12.2016
Сообщения
276
Благодарностей
27
Баллы
28
В моем примере :
C#:
string pathToPreview = project.Directory + @"\input.txt";//путь к обработанному превью
if(!File.Exists(pathToPreview))//проверяем наличие файла с превью
    throw new Exception("Файл input.txt не найден!");


string pathToOut = project.Directory + @"\out.mpg";//путь к выходному файлу

string arguments = String.Format(@"-y-f concat -i {0} -vsync vfr -pix_fmt yuv420p {1}", pathToPreview,  pathToOut);
в файле:
file '\img001.png'
duration 5
file '\img002.png'
duration 1
file '\img003.png'
(Пробовал и полный путь прописывать
file 'd:\!ZennoNew\Groups\ffmpeg\img001.png'
file 'd:\!ZennoNew\Groups\ffmpeg\img002.png'
file 'd:\!ZennoNew\Groups\ffmpeg\img003.png')


Но ничего не происходит. Загвоздка где-то здесь, так как весь код работает.

Если смотреть документацию , то там следующий пример :



You can use the concat demuxer to manually order images and to provide a specific duration for each image.

First, make a text file with the appropriate info

file '/path/to/dog.png'
duration 5
file '/path/to/cat.png'
duration 1
file '/path/to/rat.png'
duration 3
file '/path/to/tapeworm.png'
duration 2
file '/path/to/tapeworm.png'

Due to a quirk, the last image has to be specified twice - the 2nd time without any duration directive)
Then run the ffmpeg command:


C#:
ffmpeg -f concat -i input.txt -vsync vfr -pix_fmt yuv420p output.mp4
 
Последнее редактирование:

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 991
Благодарностей
4 457
Баллы
113
Код в картинке постите, чтобы сложнее было скопировать?
 
  • Спасибо
Реакции: eee

Ikigai

Client
Регистрация
13.12.2016
Сообщения
276
Благодарностей
27
Баллы
28

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 991
Благодарностей
4 457
Баллы
113
1. Запустить команду руками в консоли.
2. Попробовать в input.txt слэши поменять на обратные.
 

daVinchi

Client
Регистрация
11.01.2019
Сообщения
60
Благодарностей
68
Баллы
18
Переведи эту фразу из документации: "Due to a quirk, the last image has to be specified twice - the 2nd time without any duration directive)"
и сравни содержание своего файла с примером из документации.
 
  • Спасибо
Реакции: Astraport

Ikigai

Client
Регистрация
13.12.2016
Сообщения
276
Благодарностей
27
Баллы
28
1. Запустить команду руками в консоли.
2. Попробовать в input.txt слэши поменять на обратные.
57424

Переведи эту фразу из документации: "Due to a quirk, the last image has to be specified twice - the 2nd time without any duration directive)"
и сравни содержание своего файла с примером из документации.
Да дописал файл но ошибка всеравно проходила.

В итоге пришлось добавить -safe 0 ( почему этого в документации нет я так и не понял)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)