公司电脑无录屏软件,用免费在线录屏 (lupingwang.com)最后得到的是webp视频,转MP4代码不怎么容易,发现转GIF也挺不错的
此用于批量将WebM视频文件转换为GIF格式的工具,使用了MoviePy库来处理视频文件,需要的自己取
代码主要包含以下几个部分:
-
convert_webm_to_gif(input_file, output_file, fps=10, duration=None)
函数:将单个WebM视频文件转换为GIF格式。input_file
:输入的WebM视频文件路径。output_file
:输出的GIF文件路径。fps
:GIF的帧率,默认为10。duration
:GIF的持续时间,如果设置了该参数,则会截取视频的前duration
秒作为GIF,默认为None
,表示使用整个视频。
-
batch_convert_webm_to_gif(input_dir, output_dir, fps=10, duration=None)
函数:批量处理指定目录下的所有WebM视频文件。input_dir
:输入的WebM视频文件所在目录。output_dir
:输出的GIF文件存放目录。fps
:GIF的帧率,默认为10。duration
:GIF的持续时间,参考上述函数说明。
-
if __name__ == "__main__":
条件判断:当脚本被直接运行时执行以下代码。- 获取当前目录路径作为输入目录。
- 创建一个名为 "output_gifs" 的目录作为输出目录。
- 调用
batch_convert_webm_to_gif()
函数,将输入的WebM视频文件转换为GIF,并保存到输出目录中。 - 打印 "Conversion completed." 提示转换完成。 需要注意的是,在运行之前,你需要先安装
moviepy
库。 希望以上解释对你有帮助。如有其他问题,请随时提问。
代码:
import os
from moviepy.editor import VideoFileClipdef convert_webm_to_gif(input_file, output_file, fps=10, duration=None):clip = VideoFileClip(input_file)if duration:clip = clip.set_end(duration)clip.write_gif(output_file, fps=fps)clip.close()def batch_convert_webm_to_gif(input_dir, output_dir, fps=10, duration=None):if not os.path.exists(output_dir):os.makedirs(output_dir)for filename in os.listdir(input_dir):if filename.endswith(".webm"):input_file_path = os.path.join(input_dir, filename)output_file_path = os.path.join(output_dir, os.path.splitext(filename)[0] + ".gif")convert_webm_to_gif(input_file_path, output_file_path, fps=fps, duration=duration)if __name__ == "__main__":current_dir = os.getcwd()input_directory = current_diroutput_directory = os.path.join(current_dir, "output_gifs")batch_convert_webm_to_gif(input_directory, output_directory, duration=5)print("Conversion completed.")