Це має бути досить тривіально, але я не можу знайти спосіб змусити його працювати.
Я хочу, щоб 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
Або я отримую помилки, або отримую відеофайл тривалістю одного кадру.
Я поглянув навколо і знайшов десяток запропонованих рішень (нібито, це саме те питання), жодне з яких не працює.
Чи може хто-небудь запропонувати робочу команду і пояснити обґрунтування, що її лежить
ffmpeg -y -i image.png -i audio.mp3 -c:a copy result.avi