[英]Extract WAV audio file from video after uploading on web, using FFMPEG in django
我正在尝试找到一种方法,可以从ffmpeg
使用Django的网络用户上传的mp4视频文件中提取音频wav文件。
如果我发现要提取音频,那么应该将其保存在项目中的什么位置?
然后我尝试了:
import subprocess subprocess.call('ffmpeg -i filename.mp4 filename.wav')
def validate_file_extension(value):从django.core.exceptions导入os导入ValidationError ext = os.path.splitext(value.name) 1 #[0]返回路径+文件名filename = os.path.splitext(value.name) 1 #[0]返回路径+文件名valid_extensions = ['.mp4'],如果不是在valid_extensions中的ext.lower():引发ValidationError(u'不支持的文件扩展名。')否则:import subprocess subprocess.call('ffmpeg -i filename .mp4 filename.wav')
解决方案:-您可以通过以下方式在Django中提取wav音频文件:
def extract_audio(videofile,channels=1, rate=16000):
your_media_root = settings.MEDIA_ROOT
path_to_user_folder = your_media_root + videofile.name
inFile = path_to_user_folder
temp = tempfile.NamedTemporaryFile(suffix='.wav', delete=False)
command = ["ffmpeg", "-y", "-i", inFile,
"-ac", str(channels), "-ar", str(rate),
"-loglevel", "error", temp.name]
subprocess.check_output(command)
print(temp.name)
return temp.name
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.