例子如下:(红色字体是关键代码)
def handle_video(video_file, video_id, number):
in_path = os.path.join(settings.BASE_DIR, 'app/dashboard/temp_in')
out_path = os.path.join(settings.BASE_DIR, 'app/dashboard/temp_out')
name = '{}_{}'.format(int(time.time()), video_file.name)
path_name = os.path.join(in_path, name)
temp_path = video_file.temporary_file_path()
shutil.copyfile(temp_path, path_name)
out_path = '/'.join([out_path, video_file.name.split('.')[0]])
command = 'ffmpeg -i {} -c copy {}.mp4'.format(path_name, out_path)
os.system(command)
return True
笔者在安装ffmpeg的时候,遇到了问题,报错信息是:sh: 1: ffmpeg: not found
发现安装出错,笔者使用pip install ffmpeg安装的
正确的应该是apt install ffmpeg
原因可能如下:(原文链接:https://blog.csdn.net/rona_lin/article/details/45028277)
pip用来安装来自PyPI的python所有的依赖包,并且可以选择安装任何在PyPI上已上传的先前版本的依赖包;
apt-get可以用来安装软件、更新源、也可以用来更新自Ubuntu的典型依赖包,典型安装即意味着它只是安装(最新发布的,或最近一个的)单一版本,并且我们不能决定我们要安装的依赖包的版本或选择它之前的版本。
关于ffmpeg的安装和使用:https://eyehere.net/2019/the-complete-guide-for-using-ffmpeg-in-linux/