Как объединить/объединить видео и gif с помощью FFMPEG?
Я хочу объединить видео и Gif.
Мое видео-это картинка и песня в течение 45 секунд, а мой Gif-анимация эквалайзера.
Я хочу совместить видео и GIF , гиф прозрачность быть 50%.
Я не могу найти никакого решения, но я пытаюсь сделать это с помощью C#, это тоже не работает.
Большое спасибо.
Что я уже пробовал:
private void button2_Click(object sender, EventArgs e) { string[] files = Directory.GetFiles(@"D:\Temp\tmp"); //combine them into one image System.Drawing.Bitmap stitchedImage = Combine(files); //save the new image stitchedImage.Save(@"D:\stitchedImage.gif", System.Drawing.Imaging.ImageFormat.Gif); } public static System.Drawing.Bitmap Combine(string[] files) { //read all images into memory List<System.Drawing.Bitmap> images = new List<System.Drawing.Bitmap>(); System.Drawing.Bitmap finalImage = null; try { int width = 0; int height = 0; foreach (string image in files) { //create a Bitmap from the file and add it to the list System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(image); //update the size of the final bitmap width += bitmap.Width; height = bitmap.Height > height ? bitmap.Height : height; images.Add(bitmap); } //create a bitmap to hold the combined image finalImage = new System.Drawing.Bitmap(width, height); //get a graphics object from the image so we can draw on it using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(finalImage)) { //set background color g.Clear(System.Drawing.Color.Black); //go through each image and draw it on the final image int offset = 0; foreach (System.Drawing.Bitmap image in images) { g.DrawImage(image, new System.Drawing.Rectangle(offset, 0, image.Width, image.Height)); offset += image.Width; } } return finalImage; } catch (Exception ex) { if (finalImage != null) finalImage.Dispose(); throw ex; } finally { //clean up memory foreach (System.Drawing.Bitmap image in images) { image.Dispose(); } } }