Это должно быть довольно тривиально, но я не могу найти способ заставить его работать.
Я хочу, чтобы FFmpeg взял одно изображение JPEG и аудиофайл в качестве входных данных и сгенерировал видеофайл той же длительности, что и аудиофайл (растягивая неподвижное изображение на всю длительность).
Меня не очень волнует, какой видеокодек используется для вывода, но очень важно, чтобы я мог использовать "копировать" в качестве аудиокодека (т.е. копировать аудиопоток без его перекодирования).
Какова правильная командная строка, которая сделала бы это?
Я старался:
ffmpeg -i image8.jpg -i sound11.amr -acodec copy test.avi
и перепробовал множество комбинаций с и без -s 640x360
, -loop_input
, -shortest
, -t xxx
, -r 0.1
(искусственно низкая частота кадров в надежде, что видео будет длиннее) и -f image2
Либо я получаю ошибки, либо получаю видеофайл продолжительностью один кадр.
Я погуглил и нашел дюжину предложенных решений (предположительно по этому же вопросу), ни одно из которых не работает.
Кто-нибудь может предложить рабочую команду и объяснить обоснование этого?