import requests from django.http import JsonResponse, HttpResponse from django.views.decorators.csrf import csrf_exempt from django.views.decorators.http import require_http_methods import json # 配置Azure TTS的API密钥和区域 API_KEY = 'be13f9fbf56446bdbaa16e986bb0771b' REGION = 'eastus' ENDPOINT = f'https://{REGION}.tts.speech.microsoft.com/cognitiveservices/v1' # 读取 JSON 文件并将其转换为字典 list_data = [ { "国家": "中国", "语言参数": "zh-CN", "语言": "中文(普通话,简体)", "讲话人": [ { "讲话人中文名": "晓晓", "讲话人英文参数": "zh-CN-XiaoxiaoNeural", "风格列表": [], }, { "讲话人中文名": "云希", "讲话人英文参数": "zh-CN-YunxiNeural", "风格列表": [], }, { "讲话人中文名": "云健", "讲话人英文参数": "zh-CN-YunjianNeural", "风格列表": [], }, { "讲话人中文名": "晓艺", "讲话人英文参数": "zh-CN-XiaoyiNeural", "风格列表": [], }, { "讲话人中文名": "云阳", "讲话人英文参数": "zh-CN-YunyangNeural", "风格列表": [], }, { "讲话人中文名": "晓晨", "讲话人英文参数": "zh-CN-XiaochenNeural", "风格列表": [{"中文参数": "默认", "英文参数": "general"}], }, { "讲话人中文名": "晓涵", "讲话人英文参数": "zh-CN-XiaohanNeural", "风格列表": [], }, { "讲话人中文名": "晓萌", "讲话人英文参数": "zh-CN-XiaomengNeural", "风格列表": [], }, { "讲话人中文名": "晓陌", "讲话人英文参数": "zh-CN-XiaomoNeural", "风格列表": [], }, { "讲话人中文名": "晓秋", "讲话人英文参数": "zh-CN-XiaoqiuNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "晓蕊", "讲话人英文参数": "zh-CN-XiaoruiNeural", "风格列表": [], }, { "讲话人中文名": "晓双", "讲话人英文参数": "zh-CN-XiaoshuangNeural", "风格列表": [], }, { "讲话人中文名": "晓妍", "讲话人英文参数": "zh-CN-XiaoyanNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "晓优", "讲话人英文参数": "zh-CN-XiaoyouNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "晓真", "讲话人英文参数": "zh-CN-XiaozhenNeural", "风格列表": [], }, { "讲话人中文名": "云峰", "讲话人英文参数": "zh-CN-YunfengNeural", "风格列表": [], }, { "讲话人中文名": "云浩", "讲话人英文参数": "zh-CN-YunhaoNeural", "风格列表": [{"中文参数": "默认", "英文参数": "general"}], }, { "讲话人中文名": "云霞", "讲话人英文参数": "zh-CN-YunxiaNeural", "风格列表": [], }, { "讲话人中文名": "云烨", "讲话人英文参数": "zh-CN-YunyeNeural", "风格列表": [], }, { "讲话人中文名": "云泽", "讲话人英文参数": "zh-CN-YunzeNeural", "风格列表": [], } ] }, { "国家": "香港特别行政区", "语言参数": "zh-HK", "语言": "中文(粤语,繁体)", "讲话人": [ { "讲话人中文名": "晓文", "讲话人英文参数": "zh-HK-HiuMaanNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "云龙", "讲话人英文参数": "zh-HK-WanLungNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "晓佳", "讲话人英文参数": "zh-HK-HiuGaaiNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], } ] }, { "国家": "台湾", "语言参数": "zh-TW", "语言": "中文(台湾普通话,繁体)", "讲话人": [ { "讲话人中文名": "晓晨", "讲话人英文参数": "zh-TW-HsiaoChenNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "云哲", "讲话人英文参数": "zh-TW-YunJheNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "晓语", "讲话人英文参数": "zh-TW-HsiaoYuNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], } ] }, { "国家": "美国", "语言参数": "en-US", "语言": "英语(美国)", "讲话人": [ { "讲话人中文名": "Ava", "讲话人英文参数": "en-US-AvaNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Andrew", "讲话人英文参数": "en-US-AndrewNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Emma", "讲话人英文参数": "en-US-EmmaNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Brian", "讲话人英文参数": "en-US-BrianNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Jenny", "讲话人英文参数": "en-US-JennyNeural", "风格列表": [], }, { "讲话人中文名": "Guy", "讲话人英文参数": "en-US-GuyNeural", "风格列表": [], }, { "讲话人中文名": "Aria", "讲话人英文参数": "en-US-AriaNeural", "风格列表": [], }, { "讲话人中文名": "Davis", "讲话人英文参数": "en-US-DavisNeural", "风格列表": [], }, { "讲话人中文名": "Jane", "讲话人英文参数": "en-US-JaneNeural", "风格列表": [], }, { "讲话人中文名": "Jason", "讲话人英文参数": "en-US-JasonNeural", "风格列表": [], }, { "讲话人中文名": "Sara", "讲话人英文参数": "en-US-SaraNeural", "风格列表": [], }, { "讲话人中文名": "Tony", "讲话人英文参数": "en-US-TonyNeural", "风格列表": [], }, { "讲话人中文名": "Nancy", "讲话人英文参数": "en-US-NancyNeural", "风格列表": [], }, { "讲话人中文名": "Amber", "讲话人英文参数": "en-US-AmberNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Ana", "讲话人英文参数": "en-US-AnaNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Ashley", "讲话人英文参数": "en-US-AshleyNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Brandon", "讲话人英文参数": "en-US-BrandonNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Christopher", "讲话人英文参数": "en-US-ChristopherNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Cora", "讲话人英文参数": "en-US-CoraNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Elizabeth", "讲话人英文参数": "en-US-ElizabethNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Eric", "讲话人英文参数": "en-US-EricNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Jacob", "讲话人英文参数": "en-US-JacobNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Jenny", "讲话人英文参数": "en-US-JennyMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Michelle", "讲话人英文参数": "en-US-MichelleNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Monica", "讲话人英文参数": "en-US-MonicaNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Roger", "讲话人英文参数": "en-US-RogerNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Ryan", "讲话人英文参数": "en-US-RyanMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Steffan", "讲话人英文参数": "en-US-SteffanNeural", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "AIGenerate1", "讲话人英文参数": "en-US-AIGenerate1Neural1", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "AIGenerate2", "讲话人英文参数": "en-US-AIGenerate2Neural1", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Andrew", "讲话人英文参数": "en-US-AndrewMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Ava", "讲话人英文参数": "en-US-AvaMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Blue", "讲话人英文参数": "en-US-BlueNeural1", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Kai", "讲话人英文参数": "en-US-KaiNeural1", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Luna", "讲话人英文参数": "en-US-LunaNeural1", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Brian", "讲话人英文参数": "en-US-BrianMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Emma", "讲话人英文参数": "en-US-EmmaMultilingualNeural3", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Alloy", "讲话人英文参数": "en-US-AlloyMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Echo", "讲话人英文参数": "en-US-EchoMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Fable", "讲话人英文参数": "en-US-FableMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Onyx", "讲话人英文参数": "en-US-OnyxMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Nova", "讲话人英文参数": "en-US-NovaMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Shimmer", "讲话人英文参数": "en-US-ShimmerMultilingualNeural4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Alloy", "讲话人英文参数": "en-US-AlloyMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Echo", "讲话人英文参数": "en-US-EchoMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Fable", "讲话人英文参数": "en-US-FableMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Onyx", "讲话人英文参数": "en-US-OnyxMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Nova", "讲话人英文参数": "en-US-NovaMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Shimmer", "讲话人英文参数": "en-US-ShimmerMultilingualNeuralHD4", "风格列表": [ { "中文参数": "默认", "英文参数": "general" }], } ] }, { "国家": "西班牙", "语言参数": "es-ES", "语言": "西班牙语(西班牙)", "讲话人": [ { "讲话人中文名": "Elvira", "讲话人英文参数": "es-ES-ElviraNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Alvaro", "讲话人英文参数": "es-ES-AlvaroNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Abril", "讲话人英文参数": "es-ES-AbrilNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Arnau", "讲话人英文参数": "es-ES-ArnauNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Dario", "讲话人英文参数": "es-ES-DarioNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Elias", "讲话人英文参数": "es-ES-EliasNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Estrella", "讲话人英文参数": "es-ES-EstrellaNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Irene", "讲话人英文参数": "es-ES-IreneNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Laia", "讲话人英文参数": "es-ES-LaiaNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Lia", "讲话人英文参数": "es-ES-LiaNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Nil", "讲话人英文参数": "es-ES-NilNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Saul", "讲话人英文参数": "es-ES-SaulNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Teo", "讲话人英文参数": "es-ES-TeoNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Triana", "讲话人英文参数": "es-ES-TrianaNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Vera", "讲话人英文参数": "es-ES-VeraNeural", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Ximena", "讲话人英文参数": "es-ES-XimenaNeural1", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Arabella", "讲话人英文参数": "es-ES-ArabellaMultilingualNeural1", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], }, { "讲话人中文名": "Isidora", "讲话人英文参数": "es-ES-IsidoraMultilingualNeural1,3", "风格列表": [{ "中文参数": "默认", "英文参数": "general" }], } ] } ] list_style = { "de-DE-ConradNeural1": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "愉快", "英文参数": "cheerful"} ], "en-GB-SoniaNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "悲伤", "英文参数": "sad"} ], "en-US-AriaNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "客服", "英文参数": "customerservice"}, {"中文参数": "富有同情心", "英文参数": "empathetic"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "专业叙述", "英文参数": "narration-professional"}, {"中文参数": "新闻随意", "英文参数": "newscast-casual"}, {"中文参数": "新闻正式", "英文参数": "newscast-formal"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-DavisNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-GuyNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "新闻", "英文参数": "newscast"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-JaneNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-JasonNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-JennyNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "助理", "英文参数": "assistant"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "客服", "英文参数": "customerservice"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "新闻", "英文参数": "newscast"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-NancyNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-SaraNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "en-US-TonyNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "兴奋", "英文参数": "excited"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "充满希望", "英文参数": "hopeful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "大喊", "英文参数": "shouting"}, {"中文参数": "害怕", "英文参数": "terrified"}, {"中文参数": "不友好", "英文参数": "unfriendly"}, {"中文参数": "耳语", "英文参数": "whispering"} ], "es-MX-JorgeNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"} ], "fr-FR-DeniseNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "悲伤", "英文参数": "sad"} ], "fr-FR-HenriNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "悲伤", "英文参数": "sad"} ], "it-IT-IsabellaNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"} ], "ja-JP-NanamiNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "客服", "英文参数": "customerservice"} ], "pt-BR-FranciscaNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "冷静", "英文参数": "calm"} ], "zh-CN-XiaohanNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "温柔", "英文参数": "affectionate"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "尴尬", "英文参数": "embarrassed"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "温柔", "英文参数": "gentle"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-XiaomengNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "聊天", "英文参数": "chat"} ], "zh-CN-XiaomoNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "温柔", "英文参数": "affectionate"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "沮丧", "英文参数": "depressed"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "尴尬", "英文参数": "embarrassed"}, {"中文参数": "嫉妒", "英文参数": "envious"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "温柔", "英文参数": "gentle"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-XiaoruiNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"} ], "zh-CN-XiaoshuangNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "聊天", "英文参数": "chat"} ], "zh-CN-XiaoxiaoNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "温柔", "英文参数": "affectionate"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "助理", "英文参数": "assistant"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "聊天随意", "英文参数": "chat-casual"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "客服", "英文参数": "customerservice"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "友好", "英文参数": "friendly"}, {"中文参数": "温柔", "英文参数": "gentle"}, {"中文参数": "抒情", "英文参数": "lyrical"}, {"中文参数": "新闻", "英文参数": "newscast"}, {"中文参数": "诗歌朗诵", "英文参数": "poetry-reading"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"}, {"中文参数": "抱歉", "英文参数": "sorry"}, {"中文参数": "耳语", "英文参数": "whisper"} ], "zh-CN-XiaoyiNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "温柔", "英文参数": "affectionate"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "尴尬", "英文参数": "embarrassed"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "温柔", "英文参数": "gentle"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-XiaozhenNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-YunfengNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "沮丧", "英文参数": "depressed"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-YunhaoNeural2": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "广告-欢快", "英文参数": "advertisement-upbeat"} ], "zh-CN-YunjianNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "沮丧", "英文参数": "depressed"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "纪录片叙述", "英文参数": "documentary-narration"}, {"中文参数": "叙述放松", "英文参数": "narration-relaxed"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"}, {"中文参数": "体育解说", "英文参数": "sports-commentary"}, {"中文参数": "体育解说-兴奋", "英文参数": "sports-commentary-excited"} ], "zh-CN-YunxiaNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"} ], "zh-CN-YunxiNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "助理", "英文参数": "assistant"}, {"中文参数": "聊天", "英文参数": "chat"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "沮丧", "英文参数": "depressed"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "尴尬", "英文参数": "embarrassed"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "叙述放松", "英文参数": "narration-relaxed"}, {"中文参数": "新闻", "英文参数": "newscast"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-YunyangNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "客服", "英文参数": "customerservice"}, {"中文参数": "专业叙述", "英文参数": "narration-professional"}, {"中文参数": "新闻随意", "英文参数": "newscast-casual"} ], "zh-CN-YunyeNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "尴尬", "英文参数": "embarrassed"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ], "zh-CN-YunzeNeural": [ {"中文参数": "默认", "英文参数": "general"}, {"中文参数": "生气", "英文参数": "angry"}, {"中文参数": "冷静", "英文参数": "calm"}, {"中文参数": "愉快", "英文参数": "cheerful"}, {"中文参数": "沮丧", "英文参数": "depressed"}, {"中文参数": "不满", "英文参数": "disgruntled"}, {"中文参数": "纪录片叙述", "英文参数": "documentary-narration"}, {"中文参数": "害怕", "英文参数": "fearful"}, {"中文参数": "悲伤", "英文参数": "sad"}, {"中文参数": "严肃", "英文参数": "serious"} ] } # 将风格映射到讲话人列表中 def map_styles_to_speakers(list_data, list_style): for country in list_data: for speaker in country['讲话人']: speaker_name = speaker['讲话人英文参数'] if speaker_name in list_style: speaker['风格列表'] = list_style[speaker_name] return list_data # 获取映射后的讲话人列表 mapped_data = map_styles_to_speakers(list_data, list_style) # 获取讲话人列表的视图 @require_http_methods(["GET"]) def get_speakers(request): return JsonResponse({"code": 200, "message":"获取成功", "data": mapped_data}) # 合成语音的视图 @csrf_exempt @require_http_methods(["POST"]) def synthesize_speech(request): try: # 从请求体中获取数据 data = json.loads(request.body) # 要合成的文本内容 text = data['text'] # 选择的讲话人 voice_name = data['voice'] # 选择的讲话风格,默认为 'general' style = data.get('style', 'general') # 语速,整数格式,默认值为 0 rate = data.get('rate', 0) # 合成语音的版本,'neural' 或 'standard',默认为 'neural' version = data.get('version', 'neural') # 语言参数,从讲话人英文参数中提取,例如 'en-US', 'zh-CN' language = voice_name.split('-')[0] + '-' + voice_name.split('-')[1] # 将语速转换为字符串并添加百分号 rate_str = f"{rate}%" # 根据版本选择输出格式 if version == 'neural': output_format = 'audio-16khz-32kbitrate-mono-mp3' else: output_format = 'audio-16khz-128kbitrate-mono-mp3' headers = { 'Ocp-Apim-Subscription-Key': API_KEY, 'Content-Type': 'application/ssml+xml', 'X-Microsoft-OutputFormat': output_format, 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0;' } # 构建SSML请求体 ssml = f""" {text} """ print(ENDPOINT) print(headers) print(ssml) # 发送POST请求以合成语音 response = requests.post(ENDPOINT, headers=headers, data=ssml) if response.status_code == 200: return HttpResponse(response.content, content_type='audio/mp3') else: return JsonResponse({'error': 'Unable to synthesize speech'}, status=response.status_code) except Exception as e: return JsonResponse({'error': str(e)})