当前位置: 首页 > news >正文

超好用的PC端语音转文字工具CapsWriter-Offline结合内网穿透实现远程使用

文章目录

    • 前言
    • 1. 软件与模型下载
    • 2. 本地使用测试
    • 3. 异地远程使用
      • 3.1 内网穿透工具下载安装
      • 3.2 配置公网地址
      • 3.3 修改config文件
      • 3.4 异地远程访问服务端
    • 4. 配置固定公网地址
      • 4.1 修改config文件
    • 5. 固定tcp公网地址远程访问服务端

前言

本文主要介绍如何在Windows系统电脑端使用这款超好用的PC端语音转文字工具CapsWriter-Offline,并结合cpolar内网穿透轻松实现使用客户端异地远程访问本地服务端使用语音转文字功能。

如今,语音转文字技术已经与我们日常生活和工作息息相关了,比如整理会议录音纪要,日常使用聊天软件时通过说话来输出文字等等。现在电脑端的语音转文字软件很多,今天要分享的这款CapsWriter-Offline在github已经收获了2K多星,它的特点是完全离线,支持无限时长,连标点符号的准确率都非常高。

虽然它使用的模型有些大,但它还具有服务端、客户端分离的特性,客户端可以通过连接到局域网内其它机器上正在运行的服务端使用。这种情况下,我们可以使用内网穿透工具轻松实现在其他电脑上通过很小的客户端异地远程连接本地运行的服务端进行语音转文字工作。

image-20240910164231263

1. 软件与模型下载

本例演示环境为Windows11,另外需要准备一个麦克风。

首先,我们需要下载CapsWriter-Offline的64位版本,可以使用服务端、客户端。然后需要下载models.zip模型文件。

下载地址:Releases · HaujetZhao/CapsWriter-Offline (github.com)

image-20240910164525004

将软件和模型下载好后进行解压,然后将解压好的模型文件夹models复制到解压好的CapsWriter-Offline的文件夹中并替换原有的同名文件夹。

image-20240910164649325

2. 本地使用测试

现在我们首先双击打开服务端(start_server),会弹出窗口对模型进行加载,加载完成后会提示开始服务:

image-20240910164924307

这时我们在双击打开客户端(start_client),会弹出窗口连接服务端并检测音频输入设备:

image-20240910165106716

显示连接成功即可开始使用了。

软件在Windows系统中默认使用大小写切换键caps lock进行语音输入(可以在配置文件中进行修改),一直按住说话,松手即可识别语音并在聊天软件对话窗口等界面进行输出:

image-20240910165630286

可以看到对语音的识别非常准确,连标点符号也是。

除了支持无限时长语音的转写,作者在更新后,软件现在还支持文件转录字幕。即在客户端可以转写音视频文件为 srt 字幕了,只需将音视频文件拖动到客户端 exe 上打开即可。大家感兴趣的话,可以自行尝试。

3. 异地远程使用

此时,我们已经可以在本地的Windows系统电脑中使用CapsWriter-Offline进行语音转文字了,但也仅能在本地局域网中的设备上使用,如果想在异地也能远程使用在本地部署的工具应该怎么办呢?

很简单,只要在本地电脑上安装一个cpolar内网穿透工具就能轻松实现公网环境远程访问内网部署的服务了,无需公网IP,也不用设置路由器那么麻烦,接下来就介绍一下如何安装cpolar内网穿透!

3.1 内网穿透工具下载安装

安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

点击进入cpolar官网,点击免费使用注册一个账号,并下载最新版本的Cpolar

img

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

image-20240319175308664

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

img

3.2 配置公网地址

接下来配置一下修改CapsWriter-Offline客户端文件需要用到的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,

创建一个 CapsWriter-Offline 的公网TCP地址隧道

  • 隧道名称:可自定义命名,本例中使用123
  • 协议:选择tcp
  • 本地地址:6016
  • 端口类型:选择随机临时TCP端口
  • 地区:选择China VIP

点击创建

image-20240910170829126

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,可以看到生成了tcp公网地址,复制即可。

image-20240910172519802

3.3 修改config文件

现在我们可以在异地使用另一台Windows系统电脑,下载好CapsWriter-Offline软件(无需下载模型文件)。

进入CapsWriter-Offline文件夹,使用vscode打开config文件对客户端配置进行修改:

image-20240910171815011

我们需要对客户端配置中的地址和端口进行修改,使用刚才cpolar生成的公网地址7.tcp.vip.cpolar.cn替换127.0.0.1,使用公网地址后的端口10906替换6016,保存文件即可。

image-20240910172026442

1725960417305

3.4 异地远程访问服务端

在本地电脑服务端(start_server)运行的前提下,现在使用这台异地电脑双击打开客户端(start_client),可以看到通过使用cpolar生成的公网地址异地也能远程访问本地服务端,使用它进行语音转文字啦!

image-20240910173355703

小结

如果我们需要经常异地远程访问本地配置的服务,由于刚才创建的是随机的公网地址,24小时会发生变化。可以把地址设置成固定的TCP地址,不仅能够享受更多功能和更快的带宽,而且不用每次都重新创建隧道来访问,下面演示一下如何创建一个固定的tcp公网地址来解决这个问题。

4. 配置固定公网地址

我们接下来为CapsWriter-Offline配置固定的TCP公网地址,该地址不会变化,方便查看且无需每天重复修改访问地址。

配置固定TCP地址需要将cpolar升级到专业版套餐或以上。

登录cpolar官网,点击左侧的预留,选择保留的TCP地址,地区选择China VIP,填写一个备注(自己能记住就行)点击保留

image-20240910173831545

保留成功后复制这个tcp地址:

image-20240910173928682

返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道:123,点击右侧的编辑:

image-20240910174033107

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 端口类型:选择固定TCP端口
  • 预留的TCP地址:填写刚才保留成功的tcp地址:3.tcp.vip.cpolar.cn:12635

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20240910174221000

4.1 修改config文件

然后我们需要再次对客户端配置中的地址和端口进行修改,使用刚才配置的固定tcp公网地址3.tcp.vip.cpolar.cn替换7.tcp.vip.cpolar.cn,使用固定公网地址后的端口12635替换10906,保存文件即可。

image-20240910174459160

5. 固定tcp公网地址远程访问服务端

同样在本地电脑服务端(start_server)运行的前提下,现在使用这台异地电脑双击打开客户端(start_client),现在就可以通过使用cpolar配置的固定tcp公网地址远程访问本地服务端使用它进行语音转文字啦!不用每天修改公网地址,也能获得更快的访问速度。

891e7db64b7693d85f1ae5d0e056ef7
以上就是如何在Windows系统电脑本地使用PC端语音转文字工具CapsWriter-Offline,并结合cpolar内网穿透工具实现远程访问与使用的全部流程,如果你也有远程访问本地部署的服务或远程连接测试的需求,可以体验一下cpolar的简单与快捷。感谢您的观看,有任何问题欢迎留言交流。

相关文章:

超好用的PC端语音转文字工具CapsWriter-Offline结合内网穿透实现远程使用

文章目录 前言1. 软件与模型下载2. 本地使用测试3. 异地远程使用3.1 内网穿透工具下载安装3.2 配置公网地址3.3 修改config文件3.4 异地远程访问服务端 4. 配置固定公网地址4.1 修改config文件 5. 固定tcp公网地址远程访问服务端 前言 本文主要介绍如何在Windows系统电脑端使用…...

1、https的全过程

目录 一、概述二、SSL过程如何获取会话秘钥1、首先认识几个概念:2、没有CA机构的SSL过程:3、没有CA机构下的安全问题4、有CA机构下的SSL过程 一、概述 https是非对称加密和对称加密的过程,首先建立https链接需要经过两轮握手: T…...

抢鲜体验 PolarDB PG 15 开源版

unsetunsetPolarDB 商业版unsetunset 8 月,PolarDB PostgreSQL 版兼容 PostgreSQL 15 版本(商业版)正式发布上线。 当前版本主要增强优化了以下方面: 改进排序功能:改进内存和磁盘排序算法。 增强SQL功能:支…...

UEFI——使用标准C库

一、C标准库 C标准库是ANSL C标准为C语言定义的标准库。C标准库包含15个头文件:assert.h ctype.h error.h float.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h。标准库函数与C语言的紧密结合给我们开发程序带…...

[全网首发]怎么让国行版iPhone使用苹果Apple Intelligence

全文共分为两个部分:第一让苹果手机接入AI,第二是让苹果手机接入ChatGPT 4o功能。 一、国行版iPhone开通 Apple Intelligence教程 打破限制:让国行版苹果手机也能接入AI 此次发布会上,虽然国行 iPhone16 系列不支持 GPT-4o&…...

C语言-综合案例:通讯录

传送门:C语言-第九章-加餐:文件位置指示器与二进制读写 目录 第一节:思路整理 第二节:代码编写 2-1.通讯录初始化 2-2.功能选择 2-3.增加 和 扩容 2-4.查看 2-5.查找 2-6.删除 2-7.修改 2-8.退出 第三节:测试 下期…...

XWiki中添加 html 二次编辑失效

如果直接在 XWiki 中添加 html, 例如 修改颜色, 新窗口打开主页面等功能, 首次保存是生效的. 如果再次编辑, 则失效, 原因是被转换成了 Markdown 的代码, 而 Markdown 不支持. 解决这个问题可以使用 HTML 宏. 在 XWiki 中使用 Markdown 1.2 语法时,默认 Markdown …...

外贸|基于Java+vue的智慧外贸平台系统(源码+数据库+文档)

外贸|智慧外贸平台|外贸服务系统 目录 基于Javavue的智慧外贸平台系统 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取: 博主介绍:✌️大厂码农|毕设布道师&…...

Elasticsearch:无状态世界中的数据安全

作者:来自 Elastic Henning Andersen 在最近的博客文章中,我们宣布了支持 Elastic Cloud Serverless 产品的无状态架构。通过将持久性保证和复制卸载到对象存储(例如 Amazon S3),我们获得了许多优势和简化。 从历史上…...

动手学习RAG:迟交互模型colbert微调实践 bge-m3

动手学习RAG: 向量模型动手学习RAG: BGE向量模型微调实践]()动手学习RAG: BCEmbedding 向量模型 微调实践]()BCE ranking 微调实践]()GTE向量与排序模型 微调实践]()模型微调中的模型序列长度]()相似度与温度系数 本文我们来进行ColBERT模型的实践,按惯例&#xff…...

springboot 整合quartz定时任务

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pom的配置1.加注解 二、使用方法1.工程图2.创建工具类 三、controller 实现 前言 提示:这里可以添加本文要记录的大概内容: 提示&a…...

erlang学习: Mnesia Erlang数据库3

Mnesia数据库删除实现和事务处理 -module(test_mnesia). -include_lib("stdlib/include/qlc.hrl").-record(shop, {item, quantity, cost}). %% API -export([insert/3, select/0, select/1, delete/1, transaction/1,start/0, do_this_once/0]). start() ->mnes…...

善于善行——贵金属回收

在当今社会,贵金属回收已成为一项日益重要的产业。随 着科技的不断进步和人们对资源可持续利用的认识逐渐提高,贵金属回收的现状也备受关注。 目前,贵金属回收市场呈现出蓬勃发展的态势。一方面,贵金属如金、银、铂、钯等在众多领…...

用CSS 方式设置 table 样式

在现代Web开发中,使用CSS来设置table的样式是一种常见且强大的方法,它能让你的表格数据既美观又易于阅读。下面我将通过一个示例来展示如何使用现代CSS技巧来美化表格。 效果图 HTML 结构 首先,我们定义一个基本的HTML表格结构:…...

Elasticsearch7.x 集群迁移文档

一、集群样例信息 集群名称:escluster-ali-test 1、源集群:(source_cluster) 节点IP节点名称节点角色是否为master节点10.200.112.149es2.gj1.china-job.cndata,master是10.200.112.151es1.gj1.china-job.cndata,master否10.200.112.153es…...

高空抛物检测算法的应用场景解析

高空抛物事件频发,对公众安全构成严重威胁。无论是居民区还是商业中心,从高层建筑中丢弃物品都可能导致人员伤亡和财产损失。传统的监控手段多以事后追溯为主,无法在事发时及时预警和干预。为应对这一难题,视觉分析技术的发展为高…...

Leetcode 无重复字符的最长子串

算法思想: 滑动窗口:通过 start 和 end 来维护一个滑动窗口,start 指向当前窗口的起点,end 是当前窗口的末尾。滑动窗口中的字符都是无重复的。哈希表 charIndexMap:用于存储每个字符及其最近一次出现的位置。更新起始…...

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为: dotnet 项目启动文件.dll --urls"ht…...

Spring6详细学习笔记(IOC+AOP)

一、Spring系统架构介绍 1.1、定义 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。Spring官网 Spring是一款主流的Java EE 轻量级开源框架,目的是用于简化Java企业级引用的开发难度和开发周期。从简单性、可测试性和松耦…...

@RequestMapping 基于哪个库进行通信

RequestMapping 是 Spring Framework 中用于处理 HTTP 请求的注解,主要用于定义控制器方法的请求映射。它并不直接基于某个特定的通信库,而是依赖于 Spring MVC 框架的核心功能。 1. Spring MVC RequestMapping 是 Spring MVC 的一部分,Spr…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 ​ 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...