Tdy95 最近的时间轴更新
Tdy95

Tdy95

V2EX 第 231384 号会员,加入于 2017-05-19 10:00:06 +08:00
今日活跃度排名 11654
根据 Tdy95 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
Tdy95 最近回复了
10 天前
回复了 liufei19740722 创建的主题 杭州 有杭州数字游民,一起玩儿?
报个名 d29zaGl0ZHkxMjM0NTY=
m1 pro 32G 512G 感觉够用
14 天前
回复了 HkMuxxx 创建的主题 生活 恐飞怎么办?
多看《空中浩劫》,可以稍微了解飞机冗余的安全设计,比如驾驶员的双重检查,多套控制系统备份等等

如果真碰上了,那这倒霉的运气早死在其他事情上了
18 天前
回复了 BryanYue 创建的主题 京东 [调查] 你的京东消费情况如何?
4000 天 22W
着急要的可能走京东,其余的能走多多就多多
@waitMeOY 我是使用 web 的 D3 写的,核心原理其实是凸镜算法,来动态计算每个球的半径和坐标。 我发了个视频到 B 站可以看看效果

https://www.bilibili.com/video/BV1BiyTYqEJe/


https://imgur.com/nRAEFFs

是这个效果吗? gif 帧率很低,实际操作很丝滑
37 天前
回复了 Michae1Jacks0n 创建的主题 美酒与美食 你喜欢吃什么汉堡?
第一次吃塔斯汀真不错,面皮很惊艳,很有韧劲 ,19.9 三件套刚好消费降级
@pursuer 我是直接在 message_handle.py 文件创建了一个全局变量。main_loop = asyncio.get_event_loop()
@pursuer 代码乱码了。我贴个图
[Imgur]( https://imgur.com/Y46UeJ4)


[Imgur]( https://imgur.com/2sNE2LK)
@pursuer 我已经修改了,发现 future 一直没变化。
```
def callback_speak_by_audio(code, status, frame_id, client_id):
client_id = client_id.decode('utf-8') # 解码客户端 ID
status = json.loads(status.decode('utf-8')) # 假设 status 是 UTF-8 编码的字符串
print(f"callback_speak_by_audio=====run, {client_id in futures_speak_by_audio_stream}")
if status["data"]["FrameId"] == -1:
if code == MSDKStatus.MSDK_SUCCESS_SPEAK_BY_AUDIO_FINISH.value:
print(f"语音说话: {code}, 客户端 ID: {client_id}")
asyncio.run_coroutine_threadsafe(set_futures_status_async(client_id, futures_speak_by_audio_stream, {"code": 204, "status": status, "name": "speak_by_audio", "success": True, "client_id": client_id}), websocketAll[client_id]['main_loop'])


async def set_futures_status_async(client_id, futures_obj, data):
if client_id in futures_obj:
future = futures_obj.pop(client_id)
if not future.done():
future.set_result(data)


```

外部调用形式为:
```
if connected["audio_future"] is None:
feature = asyncio.Future()
connected["audio_future"] = feature
print("Creating sendAudioEndData task")
asyncio.create_task(sendAudioEndData(connected, feature))

async def sendAudioEndData(connected, feature):
print("发送音频结束数据")
try:
result = await feature # 等待 feature 完成
print(f"发送音频结束数据: {result}")
await connected['websocket'].send(json.dumps(result))
except Exception as e:
print(f"发送数据时发生错误: {e}")
finally:
connected["audio_future"] = None # 确保音频 future 被正确重置

```

麻烦大佬再指点一下,是哪里不对呢?从日志结果看,“语音说话:”的日志已经执行。 但是后续的 sendAudioEndData 的 print(f"发送音频结束数据: {result}")没有执行。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2811 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 14ms · UTC 14:02 · PVG 22:02 · LAX 06:02 · JFK 09:02
Developed with CodeLauncher
♥ Do have faith in what you're doing.