设为首页收藏本站
查看: 1007|回复: 0

【米尔瑞萨RZ/G2L开发板-创新应用】使用MQTT协议+Python开发远程控制音频播放

[复制链接]

1

主题

0

回帖

23

积分

新手上路

积分
23
选择困难症 发表于 2023-8-23 16:47:22 | 显示全部楼层 |阅读模式
本帖最后由 选择困难症 于 2023-8-24 08:15 编辑

根据之前大佬们的帖子,成功连接wifi+安装pip3

在安装paho-mqtt-1.6.1时出现
  1. raise ValueError('ZIP does not support timestamps before 1980')
  2. ValueError: ZIP does not support timestamps before 1980
复制代码
文件未设置时间,无法正确安装

  1. tar -zxvf paho-mqtt-1.6.1.tar.gz

  2. cd paho-mqtt-1.6.1

  3. find ./ -type f

  4. find ./ -type f -exec touch -d "2023-08-23" {} +
复制代码
对文件夹下所有时间进行修改,成功进行安装。

根据文档中的播放音频命令
  1. import paho.mqtt.client as mqtt
  2. import subprocess


  3. # MQTT代理配置
  4. broker_address = "broker.emqx.io"  # 请用您的MQTT代理地址替换
  5. broker_port = 1883  # 默认MQTT端口
  6. music_file = "/usr/share/myir/Music/The promise.mp3"
  7. cmd = ["gst-play-1.0", music_file]

  8. # 回调函数
  9. def on_connect(client, userdata, flags, rc):
  10.     if rc == 0:
  11.         print("已连接到MQTT代理!")
  12.         # 连接后订阅一个主题
  13.         client.subscribe("xzknz321")
  14.     else:
  15.         print(f"连接失败,返回代码:{rc}")

  16. def on_message(client, userdata, message):
  17.     print(f"接收到主题 '{message.topic}' 的消息:{message.payload.decode()}")
  18.     a = message.payload.decode()
  19.     if a == "play_music":
  20.         print(a)
  21.         subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

  22. # 创建MQTT客户端实例
  23. client = mqtt.Client()

  24. # 设置回调函数
  25. client.on_connect = on_connect
  26. client.on_message = on_message

  27. # 连接到MQTT代理
  28. client.connect(broker_address, broker_port, keepalive=60)

  29. # 启动循环,处理网络数据,回调和保持连接
  30. client.loop_start()

  31. try:
  32.     # 发布一条消息到主题
  33.     client.publish("xzknz321", "你好,MQTT!")

  34.     # 让程序保持运行以接收消息
  35.     while True:
  36.         pass

  37. except KeyboardInterrupt:
  38.     # 在程序被中断时(Ctrl+C),优雅地断开MQTT客户端连接
  39.     client.disconnect()
  40.     client.loop_stop()
  41.     print("已从MQTT代理断开连接。")
复制代码

1692779432023.png 1692779379186.png




回复

使用道具 举报

您需要登录后才可以回帖 登录

本版积分规则

Archiver|手机版|小黑屋|米尔科技论坛   

GMT+8, 2024-12-22 11:48 , Processed in 0.168321 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表