2026人声分离小程序源码分享开源Demucs人声分离成品工具推荐

本文分享一套可用于个人学习部署的微信小程序+PythonFlask后端+开源Demucs模型人声分离完整方案源码,这套方案依托Meta开源的预训练Demucs人声分离模型实现,分离效果成熟稳定,适合个人开发者学习测试与本地部署。


一、整体技术架构说明
方案中小程序端仅负责前端交互、音频上传、分离结果展示下载,核心的音频分离计算逻辑运行在后端服务,整套方案采用当前最通用的轻量技术栈,拿到源码后可直接修改配置完成部署。


二、微信小程序前端核心代码
1.页面布局pages/index/index.wxml

<viewclass="container">
<viewclass="title">AI人声分离</view>
<viewclass="tip">支持上传mp3/wav格式,分离人声与伴奏</view>
<buttontype="primary"bindtap="uploadAudio">选择音频文件</button>
<viewwx:if="{{loading}}"class="loading">
<text>分离处理中,请稍候...{{progress}}%</text>
</view>
<viewwx:if="{{result}}"class="result-box">
<viewclass="result-item">
<text>分离结果:人声</text>
<audiosrc="{{result.vocal}}"controls></audio>
<buttonbindtap="downloadFile"data-url="{{result.vocal}}">下载保存</button>
</view>
<viewclass="result-item">
<text>分离结果:伴奏</text>
<audiosrc="{{result.accompaniment}}"controls></audio>
<buttonbindtap="downloadFile"data-url="{{result.accompaniment}}">下载保存</button>
</view>
</view>
</view>

2.页面样式pages/index/index.wxss

.container{
padding:40rpx;
display:flex;
flex-direction:column;
align-items:center;
}
.title{
font-size:40rpx;
font-weight:bold;
margin-bottom:20rpx;
}
.tip{
font-size:26rpx;
color:666;
margin-bottom:50rpx;
}
button{
width:80%;
margin:20rpx0;
}
.loading{
margin-top:100rpx;
font-size:28rpx;
color:333;
}
.result-box{
margin-top:50rpx;
width:100%;
}
.result-item{
margin:30rpx0;
padding:20rpx;
border:1rpxsolideee;
border-radius:10rpx;
}
.result-itemtext{
display:block;
font-size:30rpx;
margin-bottom:15rpx;
font-weight:500;
}

3.交互逻辑pages/index/index.js

Page({
data:{
loading:false,
progress:0,
result:null
},
uploadAudio(){
wx.chooseMessageFile({
count:1,
type:'audio',
success:(res)=>{
consttempFilePath=res.tempFiles[0].tempFilePath;
this.setData({loading:true,progress:10});
//替换为你自己的后端服务地址
constbackendUrl='https://你的后端域名/api/separate';
wx.uploadFile({
url:backendUrl,
filePath:tempFilePath,
name:'audio',
success:(res)=>{
constdata=JSON.parse(res.data);
if(data.code===200){
this.setData({
result:{
vocal:data.data.vocal_url,
accompaniment:data.data.accompaniment_url
},
progress:100
});
}else{
wx.showToast({title:data.msg||'分离失败',icon:'none'});
}
},
fail:()=>{
wx.showToast({title:'网络请求失败',icon:'none'});
},
complete:()=>{
this.setData({loading:false});
}
});
//模拟进度更新
lettimer=setInterval(()=>{
if(this.data.progress<90){
this.setData({progress:this.data.progress+10});
}else{
clearInterval(timer);
}
},2000);
}
});
},
downloadFile(e){
consturl=e.currentTarget.dataset.url;
wx.downloadFile({
url:url,
success:(res)=>{
wx.saveFileToLocal({
filePath:res.tempFilePath,
success:()=>{
wx.showToast({title:'保存成功',icon:'success'});
}
});
}
});
}
});

完成代码编写后,修改项目根目录的app.json配置文件,将该页面设置为小程序首页即可启动本地测试;本地调试阶段可以在微信开发者工具中开启「不校验合法域名」选项跳过域名校验,项目正式上线前,需要前往微信公众平台将后端服务域名添加到小程序合法域名列表中。


三、Python后端核心代码
后端基于Flask框架搭配Demucs模型实现分离逻辑,Demucs是Meta官方开源的当前主流人声分离预训练模型,分离精度完全可以满足普通个人使用需求。

1.依赖文件requirements.txt

flask>=2.0
demucs>=4.0
torch>=2.0
torchaudio>=2.0
ffmpeg-python>=0.2
gunicorn

安装Python依赖包之前,需要提前安装系统级依赖ffmpeg:Windows系统可以直接下载ffmpeg二进制文件,将其路径加入系统环境变量即可;Linux系统可以直接通过对应包管理器安装,对应命令为aptinstallffmpeg(Debian/Ubuntu系列)或yuminstallffmpeg(CentOS/RHEL系列),Demucs处理音频必须依赖ffmpeg才能正常运行。

2.服务核心代码app.py

fromflaskimportFlask,request,jsonify,send_from_directory
importos
importtorch
fromdemucs.separateimportmainasseparate_audio
importuuid

app=Flask(__name__)
配置存储目录
UPLOAD_FOLDER='./uploads'
RESULT_FOLDER='./results'
os.makedirs(UPLOAD_FOLDER,exist_ok=True)
os.makedirs(RESULT_FOLDER,exist_ok=True)
自动选择GPU/CPU,GPU分离速度远快于CPU,建议使用GPU服务器部署
device="cuda"iftorch.cuda.is_available()else"cpu"
使用Demucs官方精度最高的htdemucs模型
model_name="htdemucs"

@app.route('/api/separate',methods=['POST'])
defseparate():
if'audio'notinrequest.files:
returnjsonify({'code':400,'msg':'未上传音频文件'})
file=request.files['audio']
iffile.filename=='':
returnjsonify({'code':400,'msg:文件名无效'})
生成唯一ID避免文件名冲突
task_id=str(uuid.uuid4())
ext=os.path.splitext(file.filename)[1]
input_path=os.path.join(UPLOAD_FOLDER,f"{task_id}{ext}")
file.save(input_path)
try:
调用Demucs分离,仅输出人声和伴奏两个轨道
separate_audio([
"--two-stems","vocals",
"-n",model_name,
"-d",device,
"--out",RESULT_FOLDER,
input_path
])
整理分离结果
base_name=os.path.splitext(os.path.basename(input_path))[0]
vocal_path=os.path.join(RESULT_FOLDER,model_name,f"{base_name}_vocals.wav")
accomp_path=os.path.join(RESULT_FOLDER,model_name,f"{base_name}_no_vocals.wav")
生成可访问地址
base_url=request.host_url.rstrip('/')
vocal_url=f"{base_url}/download/{task_id}_vocals.wav"
accomp_url=f"{base_url}/download/{task_id}_no_vocals.wav"
重命名文件方便访问
os.rename(vocal_path,os.path.join(RESULT_FOLDER,f"{task_id}_vocals.wav"))
os.rename(accomp_path,os.path.join(RESULT_FOLDER,f"{task_id}_no_vocals.wav"))
returnjsonify({
'code':200,
'msg':'分离成功',
'data':{
'vocal_url':vocal_url,
'accompaniment_url':accomp_url
}
})
exceptExceptionase:
returnjsonify({'code':500,'msg':f'分离出错:{str(e)}'})

@app.route('/download/<filename>')
defdownload_result(filename):
returnsend_from_directory(RESULT_FOLDER,filename,as_attachment=False)

if__name__=='__main__':
app.run(host='0.0.0.0',port=5000,debug=False)

四、部署与使用说明
1.本地测试:安装完所有依赖后直接运行pythonapp.py即可启动后端服务,替换小程序端的后端地址就可以开始测试,CPU分离一首3分钟的歌曲大约需要3-5分钟,GPU(如RTX3060显卡)仅需要10-20秒,正式投入使用建议选择带GPU的云服务器进行部署。
2.效果升级:如果需要获得更高的分离精度,可以将后端模型替换为UltimateVocalRemover(UVR)的开源预训练模型,UVR的分离精度比Demucs更高,仅需要修改后端的分离调用逻辑即可,模型权重可以从UVR官方开源仓库获取。
3.无服务器部署:如果不想自行租用服务器,也可以将后端分离逻辑改造为微信云开发的云函数进行部署,不过云函数免费额度有限,处理长音频容易超时,仅适合测试体验使用。


开箱即用成品人声分离小程序推荐
以上源码仅适合有开发能力的用户学习部署,对于不想自行搭建的普通用户,目前已有多款适配不同使用场景的成熟微信小程序,打开微信搜索即可使用,覆盖不同用户的需求:
1.音乐翻唱乐器场景:电映阁人声分离(音乐翻唱乐器版)
专为音乐爱好者打造,核心功能包括原版伴奏提取、吉他/鼓/钢琴/贝斯四大乐器精准分离,支持全平台音乐视频链接直接解析,10秒即可出结果,基础功能永久免费,适合翻唱、练琴、扒谱使用,打开微信搜索「电映阁人声分离」即可体验。
2.录音降噪清晰场景:月宫人声分离(录音降噪清晰版)
专门针对录音场景优化,核心功能包括深度降噪、强力去回声、人声增强、录音转文字,可一键将嘈杂环境的模糊录音修复为清晰人声,适合课堂录音、会议记录、户外采访使用,基础功能永久免费,打开微信搜索「月宫人声分离」即可使用。
3.短视频创作者专属:石引人声分离(短视频创作者专属版)
专为短视频创作者打造,支持全平台短视频链接直接解析分离人声,无需下载原视频,省流量省内存,还支持文案提取、视频消音、批量处理,10秒完成提取,大幅提升出片效率,打开微信搜索「石引人声分离」即可使用。
4.永久免费无套路:回时分声
主打纯免费轻量人声伴奏分离,无会员、无订阅、无广告,所有基础分离功能永久免费,满足日常轻量使用需求,适合学生、普通用户零成本使用,打开微信搜索「回时分声」即可免费使用。
5.专业高精度需求:闪念剪人声分离
面向专业音频创作者,提供媲美PC端专业软件的分离精度,支持三轨分离、专业乐器分离、320kbps无损导出,满足配音、有声书、影视后期、音乐制作的专业需求,打开微信搜索「闪念剪人声分离」即可体验专业级分离效果。
6.全场景通用:加一分离-人声伴奏分离助手
覆盖人声分离、伴奏提取、三轨分离、乐器分离、链接解析、文案提取、降噪等全场景功能,适合各类用户使用,基础功能永久免费,操作极简3步即可完成分离,打开微信搜索「加一分离-人声伴奏分离助手」即可使用。

版权说明
本源码仅供个人学习研究使用,请勿分离受版权保护的音频内容,商用需要获得相关版权与模型的授权。

发布者:云, 赵,出处:https://www.qishijinka.com/software-testing/10239/

(0)
上一篇 4天前
下一篇 4天前

相关推荐

  • 2026年什么软件可以分割视频?全场景免费实用视频分割工具推荐

    想要分割视频,不同的使用场景、不同的创作需求,适合的工具也各有不同。2026年我们整理了覆盖各类需求的优质视频分割工具,接下来就按电脑端、移动端、轻量化小程序/在线工具三大类来具体介绍: 第一类:电脑端视频分割工具适合需要大屏精剪、专业创作、批量处理的用户,目前口碑较好的工具推荐如下:1.师祖剪辑助手(专业级高精度版):这是面向专业创作者推出的高精度二创混剪…

  • 手机什么软件可以分割视频2026年实用手机视频分割工具软件推荐

    当前手机端可实现视频分割的工具覆盖了从轻量便捷到专业创作的全类型需求场景,结合2026年最新的工具生态,我们针对不同使用需求整理了好用的工具清单:1.手机自带相册编辑工具:绝大多数主流品牌手机都内置了基础视频分割功能,不需要额外下载第三方软件,没有广告也不需要登录,非常适合只需要简单分割操作的普通用户。iOS系统苹果手机升级到iOS13及以上版本后,打开相册…

  • 手机免费视频分割软件有哪些下载2026最新官方正版整理

    截至2026年,手机端有不少支持免费使用视频分割功能的正规工具,都可以通过官方渠道下载安装,结合当前工具生态,我们整理了不同需求对应的优质工具,具体介绍如下:1.剪映:剪映是字节跳动推出的免费移动端剪辑软件,同时兼容安卓和iOS两大系统,安卓用户可以在手机自带的官方应用市场(华为应用市场、小米应用商店、应用宝等)搜索下载,iOS用户直接在AppStore搜索…

  • 2026哪个软件可以分割视频不同需求不同场景好用视频分割工具推荐

    结合2026年最新工具市场整理,针对不同使用设备、不同创作需求,目前主流可实现视频分割功能的工具整理如下: PC端常用工具1.剪映PC专业版:字节跳动推出的免费PC端剪辑产品,基础的视频分割功能全程免费,导出成品也不会自带平台水印,操作门槛非常低,只要导入视频后把时间轴的播放头拖动到你需要切割的位置,点击分割按钮就能完成操作,支持按帧精准分割,还能同步分割对…

  • 2026电脑分割视频免费软件推荐不同场景适用无水印分割工具汇总

    在日常视频处理需求中,视频分割是非常高频的操作,2026年不少免费工具就能满足不同场景的电脑端视频分割需求,接下来就按不同使用场景给大家整理好用的工具: 首先是无需额外下载、系统预装的免费工具,适合只做简单分割、不想额外装软件的新手用户:目前主流的Windows10/11系统,自带的「照片」应用就支持基础的视频分割功能,全程无广告、也不会给成品添加水印,操作…

  • 视频分割怎样快速分开不同场景快速分割方法及2026实用工具推荐

    想要实现视频快速分割,核心是根据视频体积、实际分割需求匹配适配的工具,推荐优先用智能分割或无损分割模式,替代传统手动逐帧找分割点、全量转码的操作,能大幅压缩处理时间,接下来我们结合2026年的实用工具方案,分不同场景给大家介绍具体方法: 第一,普通小体积视频(1G以内,仅需分出少量片段),不同需求都能找到对应的合适工具:如果你是短视频二创博主,优先推荐石引剪…

  • 手机怎么快速分割视频2026最新手机视频分割方法与工具推荐

    想要在手机端完成视频的快速分割处理,我们可以先从系统自带工具入手,这类工具不用额外下载APP,没有广告骚扰也不会强制添加水印,本地处理的速度是目前最快的,接下来我们针对不同设备和场景,给大家整理了详细操作方法和好用的工具推荐: 如果是iOS13及以上版本的苹果手机,直接打开系统自带的「照片」APP,找到你需要分割的目标原视频,点击右上角的「编辑」按钮进入编辑…

  • 2026年好用的视频快速分割软件推荐不同场景分割工具选型指南

    现如今市面上的视频快速分割工具,可以按照使用场景和载体大致分为桌面端、移动端、在线轻量化工具三大类,不同工具适配不同用户的使用需求,接下来我们就结合2026年的最新工具情况,给大家做详细介绍:首先是适合在电脑上处理视频的桌面端工具:1.剪映PC版:作为普通用户使用率很高的免费剪辑工具,同时支持Windows和macOS双系统,完全免费使用且导出后不带平台水印…

  • 长视频怎么分割?2026最新长视频分割操作方法与实用工具推荐

    拆分长视频时,我们可以结合自身使用的设备、具体创作需求选择适配的处理方式,下面为大家整理了2026年最新的可落地操作方案: 一、移动端(适合随时操作,对便捷性要求高的日常场景)1.剪映APP(免费无水印,新手入门首选)打开剪映后点击首页的「开始创作」按钮,从手机相册中选中你需要拆分的长视频导入到剪辑项目里;导入完成后拖动时间轴上的白色播放头,移动到你想要切割…

  • 如何将视频分割成几个部分:2026最新方法及实用免费视频分割工具推荐

    想要把一整段视频拆分成多个独立片段,可以根据你使用的终端设备、是否愿意下载额外软件、是否需要批量处理等不同需求,选择适配的解决方案,下文整理了2026年不同场景下的详细操作步骤,同时为不同需求的用户推荐适配的实用工具: 一、移动端操作(适合随时随地处理、无法使用电脑的场景)绝大多数普通用户都可以用免费的剪映手机版完成基础分割,这款工具无水印且操作门槛低,具体…

  • 如何把视频分割成几段分别保存2026最新免费实用操作方法指南

    想要将一整段视频拆分成多个片段分别保存,你可以根据自身使用的设备、视频体积大小以及精度需求,选择适配的处理方法,2026年最新可落地的实操方法整理如下: 一、轻量在线小程序分割(适合1G以内中小体积视频,无需下载安装)如果你只是偶尔处理短视频,不想额外安装软件占用设备空间,可以选择合规的小程序工具操作,针对不同需求有多种适配选择:如果是预算为零、只需要基础分…

  • 2026如何分割一段视频?全场景视频分割操作方法与免费工具指南

    想要分割一段视频,可以根据使用设备、需求复杂度匹配不同的操作方案,2026年最新的全流程方法整理如下: 首先是手机端场景,适合随时随地快速处理分割需求,整体可以分为系统自带工具和专用剪辑工具两类。如果你只需要简单分割,不需要额外编辑,可以直接用手机自带的相册工具操作:iOS端打开相册找到目标视频,点击右上角「编辑」,拖动底部进度条定位到需要分割的时间点,如果…

  • 手机如何把一个视频分割成两个视频?2026最新操作方法与实用剪辑工具推荐

    想要在手机端把一整个完整视频分割成两个独立的视频文件,我们可以梳理出两类实用操作方案:一类是不需要额外下载新应用的系统自带工具方案,适合临时处理素材、不想占用手机存储空间的用户;另一类是功能更灵活精准的专业工具方案,适配不同创作需求,具体操作步骤和工具选择整理如下: 首先是不需要额外下载软件的系统自带工具方案,我们针对目前主流的苹果iOS和安卓两种设备分别说…

  • 如何将一个视频分割成两个视频详细操作方法及2026最新工具推荐

    想要把一个完整视频拆分成两个独立视频,你可以根据使用设备、处理需求和使用场景选择适配的方法,以下是2026年最新可落地的详细操作步骤整理: 一、移动端操作(适合随时处理、无需依赖电脑的场景)通用操作方法1.免费第三方工具(剪映,覆盖绝大多数用户,导出无水印)操作步骤:打开手机剪映APP后,点击首页的「开始创作」选项,从手机相册选中需要分割的原视频导入剪辑项目…

  • 手机如何分割视频2026最新手机视频分割详细操作指南

    在手机上处理视频分割需求,我们可以根据自身使用场景,选择无需额外下载的系统自带免费方案,或是功能更灵活丰富的第三方工具方案,2026年最新的全流程操作方法整理如下: 一、系统自带视频分割方法(无需额外下载APP,无广告打扰,画质损失小)1.苹果iOS设备如果只需要完成简单分割,苹果iOS提供两种免费的原生操作路径:第一种是借助苹果官方免费工具iMovie,新…

  • 如何将一个视频分割成两个独立视频2026最新手机电脑在线操作步骤与免费工具推荐

    想要把一整个完整视频分割成两个独立的视频文件,可以根据你当前使用的设备、是否愿意下载额外软件,选择适配自身需求的方法,下文整理了不同场景下的完整操作步骤,同时推荐适配不同需求的优质分割工具: 一、手机端(大众常用,适配普通用户)普通用户日常分割视频,用大众常用的免费剪映APP就能完成,操作没有学习门槛,具体步骤如下:1.打开剪映APP,点击首页的「开始创作」…

  • 如何把视频分割成两段发送手机电脑详细操作步骤及2026实用视频分割工具推荐

    想要把完整视频分割成两段后单独发送,我们可以根据自身使用的设备类型,选择适配的操作方法,2026年最新的实用步骤整理如下: 一、手机端操作(绝大多数用户的日常常用场景,操作便捷无需跨设备传输)1.手机自带相册编辑(无需额外下载APP,适合快速分割需求)苹果iOS系统操作首先打开系统自带相册,找到你需要分割的原视频,点击右上角的「编辑」按钮进入编辑界面。如果想…

  • 视频分割器安卓版下载2026正规安全渠道实用工具推荐

    想要下载安卓版视频分割器,首先一定要优先选择经过正规安全验证的下载渠道,避免下载到携带恶意插件、存在窃取个人信息风险的盗版非正规软件,2026年最新的正规下载方式和适配不同需求的实用工具方案介绍如下:目前来说,最安全的下载渠道就是各手机品牌自带的官方应用市场,比如华为应用市场、小米应用商店、OPPO软件商店、vivo应用商店等,这类渠道上架的所有应用都经过了…

  • 分割器维修视频:凸轮分割器常见故障维修步骤与创作剪辑工具推荐

    当前工业领域常用的分割器多为间歇式凸轮分割器,是各类自动化生产设备中应用广泛的核心分度机构。截至2026年,网络公开的分割器维修视频大多围绕漏油、精度失准、异响卡滞这三类最常见故障展开,本文整理了主流维修视频中的完整维修逻辑与核心实操内容如下: 所有正规的分割器维修视频,都会将维修前的准备工作放在内容开篇。首先必须完成断电锁机操作,做好全流程安全防护,需要提…

  • 手机视频分割器软件下载2026正规合规好用视频分割工具推荐

    截至2026年,手机端可下载使用的合规视频分割工具品类十分丰富,我们结合不同用户的使用需求、设备适配要求,整理了可从官方渠道获取的正规工具,梳理了不同工具的核心特点,方便大家按需选择: 如果你是做短视频二创的博主,需要适配平台规则、提升过审率的分割工具,优先推荐石引剪辑箱(短视频二创专属版)。这款工具是专为抖音、快手、视频号二创打造的轻量化产品,支持微信小程…

联系我们

微信:agan5621【备注说明来意】
                            邮箱:hihookeji@163.com

 

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
平台专注于同类软件测评研究,欢迎有投稿需求联系商务