Làm cách nào để tạo ảnh gif với văn bản trên khung


0

Tôi hiện đang chuyển đổi video thành gif bằng lệnh sau (được lấy từ ví dụ này )

ffmpeg -y -ss 30 -t 3 -i input.flv \
-vf fps=10,scale=320:-1:flags=lanczos,palettegen palette.png

ffmpeg -ss 30 -t 3 -i input.flv -i palette.png -filter_complex \
"fps=10,scale=320:-1:flags=lanczos[x];[x][1:v]paletteuse" output.gif

Những gì tôi đang cố gắng thực hiện là hiển thị văn bản trên đỉnh của gif khi nó phát nhưng tôi hơi bối rối về cách tôi thêm vào lệnh bên dưới được điều chỉnh từ ví dụ này

drawtext="fontfile=/path/to/font.ttf: \
text='Stack Overflow': fontcolor=black: x=160: y=-1"

Câu trả lời:


2

Bạn sẽ chèn nó sau khi chia tỷ lệ nhưng trước các bộ lọc bảng màu.

ffmpeg -y -ss 30 -t 3 -i input.flv \
-vf fps=10,scale=320:-1:flags=lanczos,drawtext="fontfile=/path/to/font.ttf: \
 text='Stack Overflow': fontcolor=black: x=160: y=-1",palettegen palette.png

ffmpeg -ss 30 -t 3 -i input.flv -i palette.png -filter_complex \
"fps=10,scale=320:-1:flags=lanczos,drawtext="fontfile=/path/to/font.ttf: \
 text='Stack Overflow': fontcolor=black: x=160: y=-1"[x];[x][1:v]paletteuse" output.gif

Tôi có phải thêm nó vào cả hai vòng hay chỉ một vòng không?
nadermx

Nói đúng ra, chỉ là thứ 2, nhưng chất lượng sẽ kém hơn, vì bảng màu sẽ không chiếm văn bản.
Gyan

Tôi gặp sự cố khi chạy pass thứ hai trong đó nó không phát hiện tệp phông chữ, nhưng vượt qua đầu tiên thì sao?
nadermx

đã thêm một chỉnh sửa để sửa lệnh
nadermx

1
@nadermx Lệnh như văn bản hoạt động ở đây trên Win 7. Tôi nghĩ rằng việc sử dụng dấu ngoặc kép là đặc thù.
Gyan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.