Tôi đang cố gắng đặt nhiều lớp phủ lên nhau và mờ dần trên cùng sau một số khung. Do đó, tôi đang sử dụng 2 tệp .png nên được đặt trên video cuối cùng theo thứ tự sau:
fademe.png & lt; - Lớp phủ trên cùng, nên được làm mờ sau một số khung
overlay.png & lt; - lớp phủ thứ hai, luôn hiển thị
movie.mov & lt; - một bộ phim làm lớp dưới cùng
Tôi đang sử dụng mã này để tạo .mov được mã hóa PNG từ các lớp phủ:
ffmpeg -y -loop 1 -i fademe.png -loop 1 -i overlay.png -filter_complex "[0:0]fade=out:25:25[fad];[1:0][fad] overlay" -vframes 55 -vcodec png overlay.mov
Sau đó, tôi đang sử dụng ffmbc để đặt lớp phủ lên trên một video khác.
(Tôi đang sử dụng ffmbc vì đầu ra cuối cùng sẽ là ProRes4444)
ffmbc -y -threads 0 -i movie.mov -vf "movie=overlay.mov [watermark]; [in][watermark] overlay [out]" -vcodec libx264 faded.mp4
Video đầu ra trông đẹp cho đến khi bắt đầu mờ dần và fademe.png [fad]
dường như bị mờ dần thành màu trắng và làm một số điều kỳ lạ với màu sắc bên dưới cho đến khi nó biến mất.
Khi tôi thay đổi thứ tự cuối cùng overlay
từ [1:0][fad] overlay
đến [fad][1:0] overlay
vì vậy nó trông như thế này:
ffmpeg -y -loop 1 -i fademe.png -loop 1 -i overlay.png -filter_complex "[0:0]fade=out:25:25[fad];[fad][1:0] overlay" -vframes 55 -vcodec png overlay.mov
sự mờ dần có vẻ đúng, nhưng overlay.png [1:0]
không nên là lớp trên cùng.
Tôi đoán là có điều gì đó không ổn xảy ra với kênh alpha trong lần thử đầu tiên của tôi.
Bất kỳ đề xuất làm thế nào để giải quyết vấn đề này?