sant 加语音合成

This commit is contained in:
whm1216
2025-12-04 21:24:43 +08:00
parent f9536ed279
commit 0c56f02226
6 changed files with 49 additions and 1 deletions

View File

@@ -45,7 +45,29 @@ export const CI130X_OPEN_AND_CLOSE = {
this.setInputsInline(true); this.setInputsInline(true);
} }
} }
export const CI130X_PLAY_SYSTEM_CMD_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_AipSpeech_synthesis);
this.appendValueInput('text')
.appendField(Blockly.Msg.MIXLY_TEXT);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_SPEED)
.appendField(new Blockly.FieldDropdown([
['0', '0'],
['1', '1'],
['2', '2'],
['3', '3'],
['4', '4'],
['5', '5']
]), 'speed');
this.setInputsInline(true);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setTooltip(Blockly.Msg.MIXLY_AipSpeech_synthesis_SANT_TOOLTIP);
}
};
export const CI130X_IDENTIFY_AND_SAVE_SANT = { export const CI130X_IDENTIFY_AND_SAVE_SANT = {
init: function () { init: function () {
this.setColour(AI_LOCAL_VOICE_HUE); this.setColour(AI_LOCAL_VOICE_HUE);

View File

@@ -127,6 +127,17 @@ export const CI130X_BROADCAST_SYSTEM_TIME = function (_, generator) {
return code; return code;
} }
export const CI130X_PLAY_SYSTEM_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_sant_tts'] = 'import sant_tts';
var text = generator.valueToCode(this, 'text', generator.ORDER_ATOMIC) || '"你们,米思齐"';
var speed = this.getFieldValue('speed') || '3';
var code = 'sant_tts.play(' + text + ', speed=' + speed + ')\n';
}
return code;
}
//graph part //graph part
export const CREATE_CAMERA = function (_, generator) { export const CREATE_CAMERA = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2]; var version = Boards.getSelectedBoardKey().split(':')[2];

View File

@@ -2482,6 +2482,14 @@
</shadow> </shadow>
</value> </value>
</block> </block>
<block type="CI130X_PLAY_SYSTEM_CMD_SANT" m-show='micropython:esp32s3:mixgo_sant'>
<value name="text">
<shadow type="text">
<field name="TEXT">你们,米思齐</field>
</shadow>
</value>
<field name="speed">3</field>
</block>
</category> </category>
<category id="catAIgraphsensor" colour="#90A244"> <category id="catAIgraphsensor" colour="#90A244">
<block type="CREATE_CAMERA_SIMPLE"> <block type="CREATE_CAMERA_SIMPLE">

View File

@@ -1076,6 +1076,7 @@ En.MIXLY_MATRIX_NAME = 'Matrix Name';
En.MIXLY_MAX7219_INIT_NUM = 'Num'; En.MIXLY_MAX7219_INIT_NUM = 'Num';
En.MIXLY_MAX7219_PUTSTR = 'Show'; En.MIXLY_MAX7219_PUTSTR = 'Show';
En.MIXLY_SPEED = 'Speed'; En.MIXLY_SPEED = 'Speed';
En.MIXLY_TEXT = 'Text';
En.MIXLY_BRIGHTNESS = 'Brightness'; En.MIXLY_BRIGHTNESS = 'Brightness';
En.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = '' En.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = ''
En.MIXLY_MAX7219_LEDARRAY = 'LED Array'; En.MIXLY_MAX7219_LEDARRAY = 'LED Array';
@@ -2534,6 +2535,7 @@ En.MIXLY_AipSpeech_synthesis = 'speech synthesis';
En.MIXLY_AIP_ATTR = 'Attribute'; En.MIXLY_AIP_ATTR = 'Attribute';
En.MIXLY_AIP_FUNC = 'Function'; En.MIXLY_AIP_FUNC = 'Function';
En.MIXLY_AipSpeech_synthesis_TOOLTIP = 'synthesizes a paragraph of text into speech. The attribute is a dictionary that defaults to empty, including SPD (Speed, 0-9, 5), pit (Tone, 0-9, 5), Vol (Vol, 0-15, 5), per (Pronouncer, 0 is female, 1 is male)'; En.MIXLY_AipSpeech_synthesis_TOOLTIP = 'synthesizes a paragraph of text into speech. The attribute is a dictionary that defaults to empty, including SPD (Speed, 0-9, 5), pit (Tone, 0-9, 5), Vol (Vol, 0-15, 5), per (Pronouncer, 0 is female, 1 is male)';
En.MIXLY_AipSpeech_synthesis_SANT_TOOLTIP = 'Synthesizes text into speech. text is the content to be synthesized';
En.MIXLY_AipImageClassify_advancedGeneral = 'Universal Object'; En.MIXLY_AipImageClassify_advancedGeneral = 'Universal Object';
En.MIXLY_AipImageClassify_dishDetect = 'Vegetable Recognition'; En.MIXLY_AipImageClassify_dishDetect = 'Vegetable Recognition';
En.MIXLY_AipImageClassify_carDetect = 'Vehicle Recognition'; En.MIXLY_AipImageClassify_carDetect = 'Vehicle Recognition';

View File

@@ -1088,6 +1088,7 @@ ZhHans.MIXLY_MATRIX_NAME = '点阵名称';
ZhHans.MIXLY_MAX7219_INIT_NUM = '点阵模块数量'; ZhHans.MIXLY_MAX7219_INIT_NUM = '点阵模块数量';
ZhHans.MIXLY_MAX7219_PUTSTR = '点阵屏幕滚动显示'; ZhHans.MIXLY_MAX7219_PUTSTR = '点阵屏幕滚动显示';
ZhHans.MIXLY_SPEED = '速度'; ZhHans.MIXLY_SPEED = '速度';
ZhHans.MIXLY_TEXT = '文本';
ZhHans.MIXLY_BRIGHTNESS = '亮度'; ZhHans.MIXLY_BRIGHTNESS = '亮度';
ZhHans.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = '亮度范围0~15' ZhHans.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = '亮度范围0~15'
ZhHans.MIXLY_MAX7219_LEDARRAY = '图案变量'; ZhHans.MIXLY_MAX7219_LEDARRAY = '图案变量';
@@ -2555,6 +2556,7 @@ ZhHans.MIXLY_AipSpeech_synthesis = '语音合成';
ZhHans.MIXLY_AIP_ATTR = '属性'; ZhHans.MIXLY_AIP_ATTR = '属性';
ZhHans.MIXLY_AIP_FUNC = '功能'; ZhHans.MIXLY_AIP_FUNC = '功能';
ZhHans.MIXLY_AipSpeech_synthesis_TOOLTIP = '将一段文字合成为语音。属性为一个默认为空的字典包括spd(语速取值为0~9默认为5)、pit(音调取值为0~9默认为5)、vol(音量取值为0~15默认为5)、per(发音人0为女声1为男声)'; ZhHans.MIXLY_AipSpeech_synthesis_TOOLTIP = '将一段文字合成为语音。属性为一个默认为空的字典包括spd(语速取值为0~9默认为5)、pit(音调取值为0~9默认为5)、vol(音量取值为0~15默认为5)、per(发音人0为女声1为男声)';
ZhHans.MIXLY_AipSpeech_synthesis_SANT_TOOLTIP = '将一段文字合成为语音';
ZhHans.MIXLY_AipImageClassify_advancedGeneral = '通用物体'; ZhHans.MIXLY_AipImageClassify_advancedGeneral = '通用物体';
ZhHans.MIXLY_AipImageClassify_dishDetect = '菜品识别'; ZhHans.MIXLY_AipImageClassify_dishDetect = '菜品识别';
ZhHans.MIXLY_AipImageClassify_carDetect = '车辆识别'; ZhHans.MIXLY_AipImageClassify_carDetect = '车辆识别';
@@ -4290,4 +4292,5 @@ ZhHans.MIXLY_SOUND_VOLUME_ADD_TOOLTIP='增加音量';
ZhHans.MIXLY_SOUND_EFFECT_SET_TOOLTIP='将音效设为'; ZhHans.MIXLY_SOUND_EFFECT_SET_TOOLTIP='将音效设为';
ZhHans.MIXLY_SOUND_EFFECT_CLEAR_TOOLTIP='清除音效'; ZhHans.MIXLY_SOUND_EFFECT_CLEAR_TOOLTIP='清除音效';
ZhHans.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='将音效增加'; ZhHans.MIXLY_SOUND_EFFECT_ADD_TOOLTIP='将音效增加';
})(); })();

View File

@@ -1087,6 +1087,7 @@ ZhHant.MIXLY_MATRIX_NAME = '點陣名稱';
ZhHant.MIXLY_MAX7219_INIT_NUM = '點陣模組數量'; ZhHant.MIXLY_MAX7219_INIT_NUM = '點陣模組數量';
ZhHant.MIXLY_MAX7219_PUTSTR = '點陣屏幕滾動顯示'; ZhHant.MIXLY_MAX7219_PUTSTR = '點陣屏幕滾動顯示';
ZhHant.MIXLY_SPEED = '速度'; ZhHant.MIXLY_SPEED = '速度';
ZhHant.MIXLY_TEXT = '文本';
ZhHant.MIXLY_BRIGHTNESS = '亮度'; ZhHant.MIXLY_BRIGHTNESS = '亮度';
ZhHant.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = '亮度範圍0~15' ZhHant.MIXLY_MAX7219_BRIGHTNESS_TOOLTIP = '亮度範圍0~15'
ZhHant.MIXLY_MAX7219_LEDARRAY = '圖案變量'; ZhHant.MIXLY_MAX7219_LEDARRAY = '圖案變量';
@@ -2555,6 +2556,7 @@ ZhHant.MIXLY_AipSpeech_synthesis = '語音合成';
ZhHant.MIXLY_AIP_ATTR = '屬性'; ZhHant.MIXLY_AIP_ATTR = '屬性';
ZhHant.MIXLY_AIP_FUNC = '功能'; ZhHant.MIXLY_AIP_FUNC = '功能';
ZhHant.MIXLY_AipSpeech_synthesis_TOOLTIP = '將一段文字合成為語音。屬性為一個默認為空的字典包括spd(語速取值為0~9默認為5)、pit(音調取值為0~9默認為5)、vol(音量取值為0~15默認為5)、per(發音人0為女聲1為男聲)'; ZhHant.MIXLY_AipSpeech_synthesis_TOOLTIP = '將一段文字合成為語音。屬性為一個默認為空的字典包括spd(語速取值為0~9默認為5)、pit(音調取值為0~9默認為5)、vol(音量取值為0~15默認為5)、per(發音人0為女聲1為男聲)';
ZhHant.MIXLY_AipSpeech_synthesis_SANT_TOOLTIP = '將一段文字合成為語音';
ZhHant.MIXLY_AipImageClassify_advancedGeneral = '通用物體'; ZhHant.MIXLY_AipImageClassify_advancedGeneral = '通用物體';
ZhHant.MIXLY_AipImageClassify_dishDetect = '菜品識別'; ZhHant.MIXLY_AipImageClassify_dishDetect = '菜品識別';
ZhHant.MIXLY_AipImageClassify_carDetect = '車輛識別'; ZhHant.MIXLY_AipImageClassify_carDetect = '車輛識別';