Skip to content

你是否遇到过这样的烦恼?

很多语音转文字工具对英语支持很好,但遇到中文方言(粤语、四川话等)、越南语、菲律宾语等东方语言时,效果就差强人意了。

好消息来了!

Dataocean AI 团队开发并开源了 Dolphin 项目,这是一个专门为东方语言优化的语音转写模型,能更准确地识别这些语言。

为了让不懂技术的朋友也能轻松使用这个强大的工具,我制作了一个简单易用的操作界面和一键整合包


下载地址


主要功能:简单高效

  • • 专注东方语言:  特别优化,支持多种东方语言和方言。
  • • 操作简单:  只需上传音频/视频,选择语言,点击按钮即可。
  • • 输出灵活:  默认生成 SRT 字幕文件,也支持 TXT 文本或 JSON 格式。

如何使用?(图形界面版)

跟着下面的步骤,轻松上手:

  1. 1. 启动工具

    • • 运行程序后,它会自动在浏览器打开一个网页界面,地址通常是 http://127.0.0.1:5080。如果没自动打开,手动输入这个地址就好。
  2. 2. 上传音频或视频文件

    • • 点击界面上的“选择文件”按钮,找到你想转写的音频或视频文件。
    • • 支持多种格式:mp3, mp4, mpeg, mpga, m4a, wav, webm, aac, flac, mov, mkv, avi 等。
  3. 3. 选择语言

    • • 在“语言选择”下拉菜单里,找到文件对应的语言(比如:中文普通话、中文四川话、粤语等)。
    • • 不确定是什么语言?  没关系,选择“自动检测”,让工具来帮你判断。
  4. 4. 选择输出格式

    图片

    • • 默认会生成 SRT 字幕文件。
    • • 你也可以根据需要选择输出 TXT(纯文本)或 JSON(结构化数据)。
  5. 5. 开始转写

    • • 点击“开始转写”按钮。
    • • 工具会在后台自动完成一系列处理:
      • • 将你的文件转换成适合处理的 WAV 音频格式。
      • • 把音频切成小段,提高处理速度和精度。
      • • 利用 Dolphin 模型识别每一段语音。
      • • 最后,把识别结果整理成你选定的格式(如 SRT)。
  6. 6. 获取结果

    • • 转写完成后,结果会直接显示在界面上。
    • • 你可以直接复制文本,或者点击下载按钮,把结果保存为文件,方便用在视频剪辑或其他地方。

给开发者:API 接口调用方法

如果你是开发者,想在自己的程序里集成这个功能,整合包也提供了 API 接口。

  • • 接口地址 (Endpoint)/v1/audio/transcriptions
  • • 请求方法 (Method)POST
  • • 请求格式 (Content-Type)multipart/form-data (注意:不是 application/json,因为要上传文件)
  • • 请求参数:
    • • file: (必需) 音频/视频文件本身。
    • • language: (可选) 目标语言代码 (见下表)。留空则自动检测。
    • • response_format: (可选) 返回格式,支持 "srt""json""txt"。默认为 "srt"
  • • 返回结果:
    • • 成功: 返回指定格式(SRT, JSON 或 TXT)的转写文本。
    • • 失败: 返回包含错误信息的 JSON 对象。

支持的语言代码

语言代码中文名字
zh-CN中文(普通话)
zh-TW中文(台湾)
zh-WU中文(吴语)
zh-SICHUAN中文(四川话)
zh-SHANXI中文(山西话)
zh-ANHUI中文(安徽话)
zh-TIANJIN中文(天津话)
zh-NINGXIA中文(宁夏话)
zh-SHAANXI中文(陕西话)
zh-HEBEI中文(河北话)
zh-SHANDONG中文(山东话)
zh-GUANGDONG中文(广东话)
zh-SHANGHAI中文(上海话)
zh-HUBEI中文(湖北话)
zh-LIAONING中文(辽宁话)
zh-GANSU中文(甘肃话)
zh-FUJIAN中文(福建话)
zh-HUNAN中文(湖南话)
zh-HENAN中文(河南话)
zh-YUNNAN中文(云南话)
zh-MINNAN中文(闽南语)
zh-WENZHOU中文(温州话)
ja-JP日语
th-TH泰语
ru-RU俄语
ko-KR韩语
id-ID印度尼西亚语
vi-VN越南语
ct-NULL粤语(未知)
ct-HK粤语(香港)
ct-GZ粤语(广东)
hi-IN印地语
ur-IN乌尔都语(印度)
ur-PK乌尔都语
ms-MY马来语
uz-UZ乌兹别克语
ar-MA阿拉伯语(摩洛哥)
ar-GLA阿拉伯语
ar-SA阿拉伯语(沙特)
ar-EG阿拉伯语(埃及)
ar-KW阿拉伯语(科威特)
ar-LY阿拉伯语(利比亚)
ar-JO阿拉伯语(约旦)
ar-AE阿拉伯语(阿联酋)
ar-LVT阿拉伯语(黎凡特)
fa-IR波斯语
bn-BD孟加拉语
ta-SG泰米尔语(新加坡)
ta-LK泰米尔语(斯里兰卡)
ta-IN泰米尔语(印度)
ta-MY泰米尔语(马来西亚)
te-IN泰卢固语
ug-NULL维吾尔语
ug-CN维吾尔语
gu-IN古吉拉特语
my-MM缅甸语
tl-PH塔加洛语
kk-KZ哈萨克语
or-IN奥里亚语
ne-NP尼泊尔语
mn-MN蒙古语
km-KH高棉语
jv-ID爪哇语
lo-LA老挝语
si-LK僧伽罗语
fil-PH菲律宾语
ps-AF普什图语
pa-IN旁遮普语
kab-NULL卡拜尔语
ba-NULL巴什基尔语
ks-IN克什米尔语
tg-TJ塔吉克语
su-ID巽他语
mr-IN马拉地语
ky-KG吉尔吉斯语
az-AZ阿塞拜疆语

API 调用示例 (使用 curl)

curl -X POST http://127.0.0.1:5080/v1/audio/transcriptions \
  -F "file=@/你的路径/你的音频.mp3" \
  -F "language=zh-CN" \
  -F "response_format=srt"

API 调用示例 (使用 Python openai 库)
(这个库可以方便地调用兼容 OpenAI API 格式的接口)

from openai import OpenAI

# 配置客户端,指向本地服务地址
client = OpenAI(base_url='http://127.0.0.1:5080/v1', api_key='任意字符串即可') # api_key 在此场景下不重要

audio_file_path = "你的音频.wav"# 替换成你的文件路径

withopen(audio_file_path, 'rb') as file_handle:
    # 发起转写请求
    transcript = client.audio.transcriptions.create(
        file=(audio_file_path, file_handle), # 传递文件名和文件内容
        model='base', # 模型名称,这里固定为 'base' 或根据实际情况调整
        language='zh-CN', # 指定语言
        response_format="srt"# 指定返回格式
    )
    # 打印转写结果 (SRT 格式文本)
    print(transcript)

返回结果示例 (SRT 格式)

1
00:00:00,000 --> 00:00:02,500
你好,这是一段测试音频。

2
00:00:02,500 --> 00:00:05,000
希望转写结果准确无误。

想更快?启用 GPU 加速 (可选)

  • • 为什么需要 GPU?  如果你有合适的 NVIDIA 显卡并配置好了环境,使用 GPU 可以大幅提高转写速度,尤其处理长音频时效果更明显。
  • • 如何启用?
    1. 1. 前提:  确保你的电脑已正确安装 NVIDIA 显卡驱动和 CUDA 12.x 环境。
    2. 2. 安装支持:  在整合包的文件夹里,找到并双击运行 安装GPU支持.bat 文件,它会自动完成相关设置。
  • • 注意:  默认整合包不包含 GPU 支持,以减小体积。

几点小提示

  1. 1. 文件大小与时长:  建议单个文件不要太大(比如不超过 1GB),时长最好控制在 1 小时内。太大的文件可能处理起来非常慢。
  2. 2. 音频质量:  音频越清晰、背景噪音越少,转写效果就越好。尽量使用高质量的音源。
  3. 3. 首次使用需要联网:  第一次转写某个语言时,程序需要联网下载该语言所需的一些数据。建议把常用语言都成功转写一次(即使是很短的测试音频),之后就可以离线使用了。