update build config

This commit is contained in:
himeditator
2025-06-12 23:03:51 +08:00
parent 4968cd597e
commit d6ae8d51dd
3 changed files with 106 additions and 86 deletions

View File

@@ -1,6 +1,6 @@
{
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"

View File

@@ -18,6 +18,9 @@ nsis:
shortcutName: ${productName}
uninstallDisplayName: ${productName}
createDesktopShortcut: always
oneClick: false
perMachine: true
allowToChangeInstallationDirectory: true
mac:
entitlementsInherit: build/entitlements.mac.plist
extendInfo:
@@ -30,9 +33,10 @@ dmg:
artifactName: ${name}-${version}.${ext}
linux:
target:
- AppImage
- snap
- deb
# - AppImage
# - snap
# - deb
- tar.gz
maintainer: electronjs.org
category: Utility
appImage:

View File

@@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 21,
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
@@ -98,7 +98,7 @@
},
{
"cell_type": "code",
"execution_count": 22,
"execution_count": 2,
"metadata": {},
"outputs": [
{
@@ -107,7 +107,7 @@
"text": [
"\n",
"采样输入设备:\n",
" - 序号:27\n",
" - 序号:37\n",
" - 名称:耳机 (HUAWEI FreeLace 活力版) [Loopback]\n",
" - 最大输入通道数2\n",
" - 默认低输入延迟0.003s\n",
@@ -156,7 +156,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 5,
"metadata": {},
"outputs": [
{
@@ -166,84 +166,99 @@
"\n",
"流式翻译开始...\n",
"\n",
"#0: 优惠依据前后\n",
"#en: Before the trial\n",
"#0: 最后会根据前后逻辑的数据。\n",
"#en: And then we'll use the data from\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效\n",
"#en: And then we'll use the data from both\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个是查\n",
"#en: And then we'll use the data from both ends to calculate what's in between, which is\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在这些网游中\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is called a difference.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, clients\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client needs to adjust\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, even through\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出原大\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to paint out\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出原大于逻辑的画面。\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to paint out\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture to make it smoother.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many big things\n",
"#0: 最后会根据前后逻辑上的数据计算出中间阶段的效果这个就是差值。在一些网游中客户端为了协调服务器本身的递增率甚至会通过差值渲染出远大于逻辑的画面来让画面更流畅。除此之外游戏工程师们还发明出了许多大hoffout\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just for\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all before the real world.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的原生\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all in the pre-real world.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的原生环境下的技术。\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all in the pre-real world, under original environment.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的原生管\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all in the pre-real world, under original environment.\n",
"#0: 最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的原生环境下的技术,这样渲染出来画面也很难算上真实。\n",
"#en: And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all in the pre-real world era, and the technology under original sound control. It's hard to say that the picture is real.\n",
"#1: 然后许多玩家有\n",
"#en: Then many players have\n",
"#1: 然而,许多玩家有请在意的是真实\n",
"#en: However, what many players are concerned about is the truth of technology.\n",
"#1: 然而,许多玩家有请在意的是真实性的技术额外创造。\n",
"#en: However, what many players are concerned about is the authenticity technology that creates a sense of reality.\n",
"#1: 然而,许多玩家有请在意的是真实性和额外创造真实。\n",
"#en: However, what many players are concerned about is the authenticity technology that creates a sense of reality.\n",
"#1: 然而,许多玩家有请在意的是真实性和额外创造的真。\n",
"#en: However, what many players are concerned about is the authenticity technology that creates authenticity and adds a premium.\n",
"#2: 我们先看原理。\n",
"#en: Let's start with the.\n",
"#3: 啊,辛苦。\n",
"#en: It's good.\n",
"\n",
"Tokens消耗145\n",
"流式翻译结束...\n",
"\n",
"\n",
"最后会根据前后逻辑上的数据,计算出中间阶段的效果,这个就是差值。在一些网游中,客户端为了协调服务器本身的递增率,甚至会通过差值渲染出远大于逻辑的画面,来让画面更流畅。除此之外,游戏工程师们还发明出了许多大混动处,只为呈现一个看似真实的世界。严格来讲,这些都是在真实时代之前的原生环境下的技术,这样渲染出来画面也很难算上真实。\n",
"And then we'll use the data from both ends to calculate what's in the middle, which is the difference. In some online games, the client will adjust the server's drop rate, and even use the difference to render a picture that's much larger than the logic picture, to make the picture smoother. In addition, game engineers have also invented many large areas, just to present a seemingly real world. Strictly speaking, these are all in the pre-real world era, and the technology under original sound control. It's hard to say that the picture is real.\n",
"\n",
"\n",
"然而,许多玩家有请在意的是真实性和额外创造的真。\n",
"However, what many players are concerned about is the authenticity technology that creates authenticity and adds a premium.\n",
"\n",
"\n",
"我们先看原理。\n",
"Let's start with the.\n",
"\n",
"\n",
"啊,辛苦。\n",
"It's good.\n",
"\n"
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n",
"(4410, 2)\n"
]
},
{
"ename": "KeyboardInterrupt",
"evalue": "",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)",
"\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_29036\\3259296939.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m 21\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 22\u001b[0m \u001b[1;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mrange\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mRATE\u001b[0m \u001b[1;33m/\u001b[0m \u001b[0mCHUNK\u001b[0m \u001b[1;33m*\u001b[0m \u001b[0mRECORD_SECONDS\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 23\u001b[1;33m \u001b[0mdata\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mstream\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mCHUNK\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 24\u001b[0m \u001b[0mdata_np\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfrombuffer\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdtype\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mnp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mint16\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 25\u001b[0m \u001b[0mdata_np_r\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mdata_np\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mreshape\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mCHANNELS\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;32md:\\ML\\anaconda3\\envs\\mystd\\lib\\site-packages\\pyaudiowpatch\\__init__.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, num_frames, exception_on_overflow)\u001b[0m\n\u001b[0;32m 638\u001b[0m paCanNotReadFromAnOutputOnlyStream)\n\u001b[0;32m 639\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 640\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mpa\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread_stream\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_stream\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnum_frames\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mexception_on_overflow\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 641\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 642\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mget_read_available\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;31mKeyboardInterrupt\u001b[0m: "
]
}
],
@@ -273,6 +288,7 @@
" data = stream.read(CHUNK)\n",
" data_np = np.frombuffer(data, dtype=np.int16)\n",
" data_np_r = data_np.reshape(-1, CHANNELS)\n",
" print(data_np_r.shape)\n",
" mono_data = np.mean(data_np_r.astype(np.float32), axis=1)\n",
" mono_data = mono_data.astype(np.int16)\n",
" mono_data_bytes = mono_data.tobytes()\n",