send2tv
Push text, images, or audio to Huawei Smart Screen V75 (or other DLNA-compatible TVs) via UPnP AVTransport protocol.
Quick Usage
CODEBLOCK0
How It Works
Image/Text mode:
- 1. Renders text to 1920x1080 black image (or serves image directly)
- Starts local HTTP server on port 8082
- Sends DLNA/UPnP SOAP SetAVTransportURI + Play commands to TV
- TV downloads image via HTTP and displays it
Audio mode:
- 1. Prepares audio file (converts to MP3 if needed)
- Starts local HTTP server on port 8082
- Sends DLNA/UPnP SOAP commands to TV
- TV streams audio via HTTP and plays it
TTS mode:
- 1. Uses edge-tts to convert text to speech
- Pushes audio to TV via DLNA
TV Configuration
- - IP: 192.168.3.252
- UPnP Port: 25826
- HTTP Server Port: 8082
- UPnP Service: urn:schemas-upnp-org:service:AVTransport:1
Font Notes
- - Chinese text uses WenQuanYi Zen Hei (文泉驿正黑), auto-detected
- English text uses DejaVu Sans Bold
- Font auto-scales to fit 1920x1080 (90% width max)
TTS Voices (for --tts mode)
Chinese:
- -
zh-CN-XiaoxiaoNeural - female, natural (default) - INLINECODE1 - male, natural
- INLINECODE2 - female, sweet
- INLINECODE3 - male, mature
English:
- -
en-US-MichelleNeural - female, natural - INLINECODE5 - female, natural
- INLINECODE6 - male, natural
See full list: https://speech.microsoft.com/portal/voicegallery
Troubleshooting
TV转圈不显示: 端口8082被防火墙拦。需要在Windows防火墙添加入站规则允许8080-8090端口。
文字太小/太大: 用 --font-size 调整,默认200像素。
图片推送失败: 确认图片路径存在且为有效图片文件。
音频不播放: 确认电视支持MP3格式,检查DLNA服务是否开启。
TTS失败: 确认已安装 edge-tts skill (skillhub install openclaw/skills/edge-tts)
send2tv
通过UPnP AVTransport协议,将文本、图片或音频推送到华为智慧屏V75(或其他支持DLNA的电视)。
快速使用
bash
文本(支持中文)
python3 scripts/send2tv.py 快去写作业!
自定义字体大小的文本
python3 scripts/send2tv.py Warning! --font-size 300
图片文件
python3 scripts/send2tv.py --image /path/to/photo.jpg
带文字叠加的图片
python3 scripts/send2tv.py --image /path/to/photo.jpg --text Hello!
音频文件
python3 scripts/send2tv.py --audio /path/to/music.mp3
TTS - 文本转语音(需要edge-tts技能)
python3 scripts/send2tv.py --tts 这是一段要朗读的文字
python3 scripts/send2tv.py --tts Hello world --voice en-US-MichelleNeural
python3 scripts/send2tv.py --tts 快点! --rate +20%
工作原理
图片/文本模式:
- 1. 将文本渲染为1920x1080黑色背景图片(或直接提供图片)
- 在8082端口启动本地HTTP服务器
- 向电视发送DLNA/UPnP SOAP SetAVTransportURI + Play命令
- 电视通过HTTP下载图片并显示
音频模式:
- 1. 准备音频文件(如有需要则转换为MP3格式)
- 在8082端口启动本地HTTP服务器
- 向电视发送DLNA/UPnP SOAP命令
- 电视通过HTTP流式传输音频并播放
TTS模式:
- 1. 使用edge-tts将文本转换为语音
- 通过DLNA将音频推送到电视
电视配置
- - IP地址:192.168.3.252
- UPnP端口:25826
- HTTP服务器端口:8082
- UPnP服务:urn:schemas-upnp-org:service:AVTransport:1
字体说明
- - 中文文本使用文泉驿正黑(WenQuanYi Zen Hei),自动检测
- 英文文本使用DejaVu Sans Bold
- 字体自动缩放以适应1920x1080分辨率(最大宽度90%)
TTS语音(用于--tts模式)
中文:
- - zh-CN-XiaoxiaoNeural - 女声,自然(默认)
- zh-CN-YunyangNeural - 男声,自然
- zh-CN-XiaoyiNeural - 女声,甜美
- zh-CN-YunjianNeural - 男声,成熟
英文:
- - en-US-MichelleNeural - 女声,自然
- en-US-AriaNeural - 女声,自然
- en-US-GuyNeural - 男声,自然
查看完整列表:https://speech.microsoft.com/portal/voicegallery
故障排除
电视转圈不显示:端口8082被防火墙拦截。需要在Windows防火墙添加入站规则,允许8080-8090端口。
文字太小/太大:使用 --font-size 调整,默认200像素。
图片推送失败:确认图片路径存在且为有效图片文件。
音频不播放:确认电视支持MP3格式,检查DLNA服务是否开启。
TTS失败:确认已安装edge-tts技能(skillhub install openclaw/skills/edge-tts)