Ini seharusnya cukup sepele, tetapi saya tidak dapat menemukan cara untuk membuatnya bekerja.
Saya ingin FFmpeg mengambil satu gambar JPEG dan file audio sebagai input dan menghasilkan file video dengan durasi yang sama dengan file audio (dengan merentangkan gambar diam untuk seluruh durasi).
Saya tidak terlalu peduli tentang apa codec video yang digunakan untuk output, tetapi sangat penting bahwa saya dapat menggunakan "copy" sebagai codec audio (yaitu menyalin aliran audio tanpa transcoding itu).
Apa baris perintah yang tepat yang akan melakukan itu?
Saya mencoba:
ffmpeg -i image8.jpg -i sound11.amr -acodec copy test.avi
dan mencoba banyak kombinasi dengan dan tanpa -s 640x360
, -loop_input
, -shortest
, -t xxx
, -r 0.1
(frame rate artifisial rendah dengan harapan bahwa video akan lebih lama) dan-f image2
Entah saya mendapatkan kesalahan atau saya mendapatkan file video dengan durasi satu frame.
Saya telah mencari-cari di sekitar dan menemukan selusin solusi yang diusulkan (seharusnya untuk pertanyaan yang sama) tidak ada yang berhasil.
Adakah yang bisa menyarankan perintah yang berfungsi dan menjelaskan alasan di baliknya?
ffmpeg -y -i image.png -i audio.mp3 -c:a copy result.avi