编写项目基本架构
广告
{{v.name}}
📋 原始需求(task.md):
本项目是一个音频剪辑项目,该项目旨在将用户上传的原始音频根据PCM波形进行剪辑。以下是该项目的基本架构和实现步骤: 1. **项目概述** - **目的**:开发一个基于Web的音频剪辑工具,允许用户上传原始音频并进行剪辑、下载剪辑后的音频。 2. **技术栈** - 后端:使用Python语言,配合FastAPI框架。所有的api均写到api.py文件中,端口用8030。 - 前端:使用vue3 cdn版本。前端使用axios进行数据请求,网址用http://localhost:8030。index.html是主页,主业是剪辑页面,点击上传音频按钮上传音频文件,上传后,在PCM波形上选择剪辑区域,选择剪辑区域的开头或结尾各由1条波形区域上的细线加上小圆点组成,小圆点用于拖拽的方式改变细线的位置,默认的剪辑区域的起点是音乐的开头,默认的剪辑区域的终点是音乐的末尾,再设置两个输入框,用于精确设置剪辑区域的起点和终点,点击设置剪辑区域按钮后将实际的剪辑区域设置为输入框中的内容,点击预览按钮后剪辑音频并在前端播放剪辑后的片段,可以点击播放或暂停按钮控制播放进度,点击保存按钮后,将剪辑后的音频下载到本地。 必须实现的模块: - 编写api.py文件 - 编写前端页面
本项目是一个音频剪辑项目,该项目旨在将用户上传的原始音频根据PCM波形进行剪辑。以下是该项目的基本架构和实现步骤: 1. **项目概述** - **目的**:开发一个基于Web的音频剪辑工具,允许用户上传原始音频并进行剪辑、下载剪辑后的音频。 2. **技术栈** - 后端:使用Python语言,配合FastAPI框架。所有的api均写到api.py文件中,端口用8030。 - 前端:使用vue3 cdn版本。前端使用axios进行数据请求,网址用http://localhost:8030。index.html是主页,主业是剪辑页面,点击上传音频按钮上传音频文件,上传后,在PCM波形上选择剪辑区域,选择剪辑区域的开头或结尾各由1条波形区域上的细线加上小圆点组成,小圆点用于拖拽的方式改变细线的位置,默认的剪辑区域的起点是音乐的开头,默认的剪辑区域的终点是音乐的末尾,再设置两个输入框,用于精确设置剪辑区域的起点和终点,点击设置剪辑区域按钮后将实际的剪辑区域设置为输入框中的内容,点击预览按钮后剪辑音频并在前端播放剪辑后的片段,可以点击播放或暂停按钮控制播放进度,点击保存按钮后,将剪辑后的音频下载到本地。 必须实现的模块: - 编写api.py文件 - 编写前端页面
本项目是一个基于 Web 的音频剪辑工具:用户上传原始音频后,在 PCM 波形上选择剪辑区域(开头/结尾各由一条细线加小圆点组成,可拖拽改变位置),也可用输入框精确设置起点与终点;点击预览按钮剪辑音频并在前端播放(可播放/暂停),点击保存按钮将剪辑后的音频下载到本地。
技术栈
- 后端:Python + FastAPI,所有 API 写在 api.py 文件中,端口 8030
- 前端:Vue 3 CDN + axios,请求地址 http://localhost:8030,index.html 为剪辑页面(PCM 波形 + 拖拽手柄 + 精确时间输入框 + 预览/保存)
必须实现的模块
- 编写 api.py 文件(上传、PCM 波形、剪辑、预览、下载接口)
- 编写前端页面(index.html,Vue 3 CDN + axios 的剪辑页面)