展示视频
粤言粤语小程序演示视频
1 项目简介
1.1 项目背景
1.1.1 创意来源
根据中共中央办公厅、国务院办公厅印发的《关于实施中华优秀传统文化传承发展工程的意见》,我小组计划开发一款推广中国部分地区传统文化的可广泛推广的软件。为紧贴国家计划在2025年前全面复兴传统文化的重大国策,我小组计划从语言出发,以语言为媒介宣传当地的传统文化。语言是文化的载体,语言作为文化的一部分,它不仅仅是一种现象,更是文化的传播途径。千百年来,中华民族衍生出了许许多多的地方语言。这些方言各具特色,不论是温文尔雅的苏州方言还是粗狂豪放的陕西方言都可以表现出当地的文化内涵。
本世纪初,粤语流行文化席卷内地,粤语流行乐也传至大街小巷。随着欧美流行文化的引进,国人对粤语流行文化似乎失去了兴趣。除此之外,粤语地区的传统文化更是无人问津。面对这一现象,我小组计划实施的语言对象为粤语,宣传粤语地区的传统文化。
确定主题后,为使项目有更好的宣传度,计划以微信小程序为载体。小组根据需求分析规划出了小程序五大模块,以粤语教学为主要功能,分为听力教学与跟读教学。除此之外,小程序也有介绍粤语地区传统文化的部分。通过小程序向用户介绍粤语文化,让用户深刻地体会到粤语之美!
1.1.2选题意义
粤语,又称广东话,是一种声调语言,属于汉族方言。目前使用粤语的地区主要为中国华南的广东省中部和西部、广西东南部、香港特别行政区、澳门特别行政区、海南省个别地区。这些地方有着非常优秀的传统文化,并且粤语流行文化传播的也是非常广泛。通过小程序将粤语文化再次传播至中华大地,同时也鼓励粤语地区的人们在讲好普通话的同时不要忘记本地区的方言传播。
2 总体设计
2.1 系统功能
2.1.1 功能概述
系统以微信小程序为载体,名为“粤言粤语”。粤言粤语主要实现五大功能模块,分别是听力练习模块、发音练习模块、粤语翻译模块、知识科普模块、账户管理模块。
听力练习模块:通过选择题的训练模式让用户练习粤语听力,用户可以根据自身的学习能力设置每日学习词组个数。
发音练习模块:通过让用户跟读的方式训练用户的粤语发音,其中包含粤语电影片段跟读以及日常情境跟读。除此之外,系统会对用户跟读情况进行评分,由此用户可以通过评分判断自己跟读的好坏。
粤语翻译模块:这部分用户可以输入自己期望学习的句子,系统会自动将该句子翻译成粤语并发音。
知识科普模块:这部分通过三个方面介绍粤语相关文化,分别是粤剧文化专栏、粤语歌曲专栏、粤语音韵专栏。
账户管理模块:这部分可让用户进行登录。除此之外,用户可在此查看自己某一天的学习记录。
2.1.2 功能说明
为便于理解需求,这里采用用例图对系统的功能进行概述,用例图如下:
2.2 系统软硬件平台
粤言粤语的运行载体是微信小程序,前端界面设计以及开发使用微信开发者工具。微信开发者工具是为了帮助开发者简单和高效地开发和调试微信小程序,微信在原有的公众号页面调试工具的基础上,推出了全新的微信开发者工具,集成了公众号网页调试和小程序调试两种开发模式。
后端使用微信云开发完成,微信云开发是微信团队联合腾讯云推出的专业的小程序开发服务。开发者可以使用云开发快速开发小程序、小游戏、公众号网页等,并且原生打通微信开放能力。开发者无需搭建服务器,可免鉴权直接使用平台提供的 API 进行业务开发。
粤言粤语的数据存储、数据交互以及相关的操作逻辑分别使用云开发中的存储、数据库以及云函数解决。
2.3 关键接口技术
粤言粤语使用腾讯云的语音合成TTS和语音识别ASR,来生成粤语语音和识别用户录音。
所有调用的API均在微信小程序的云函数中调用。即节省了本地的代码量,同时也方便后期小程序发布之后的调试、修改等工作。
腾讯云语音合成TTS满足将文本转化成拟人化语音的需求,支持自定义音量、语速等参数。粤言粤语小程序在翻译页面使用了语音合成API接口。在翻译页面,用户可以通过文字输入普通话,点击翻译按钮,获取生成的粤语音频。
同时,粤言粤语中朗读页面的所有音频素材,都是通过腾讯云语音合成TTS生成的,并且存储在微信小程序数据库中。
腾讯云录音文件识别ASR可以将用户的录音文件识别为文字。粤言粤语的朗读页面中的电影情节调用了录音文件识别ASR的API,可以识别用户朗读电影粤语片段的文字,并且通过准确度识别的算法,计算出用户朗读粤语片段的准确度。
2.4 作品特色
本小组分析并汇总了用户对学习粤语的需求,根据用户的需求,设计并搭建了粤言粤语小程序。粤言粤语小程序的具体特点如下:
小程序搭建了粤语听力练习模块,以答题的形式来帮助用户练习粤语听力能力,用户可以自定义每天学习的粤语句子数量。
朗读模块,为用户提供了日常用语的听力和朗读练习,用户可以选择多个日常生活中常见的语音对话练习粤语,或是学习经典粤语电影中的对话。朗读模块中使用了语音识别的API,并且可以通过准确率识别的算法,计算出用户朗读粤语片段的正确率,为用户学习粤语提供辅助。
翻译页面,调用了语音合成的API,为用户提供了将普通话翻译为粤语语音的功能,提供了快捷翻译选项,并且用户可以查看自己的翻译记录。
文化页面,为用户提供了了解粤语文化知识的渠道,包括粤语发音、粤剧文化、粤语歌曲。用户可以了解经典的粤剧,粤语歌曲,并可以进行粤语拼音的发音练习。
3 详细设计
3.1 系统结构设计
3.1.1 技术架构
本项目使用微信小程序开发,从小程序的特点来看,⼩程序都⾮常类似于⽹页:主要的业务逻辑在服务端、客户端无需安装应用程序、⼩程序的开发采用的HTML+JS+CSS技术。
所以,可以把小程序看成⼿机端的Web页,采用B/S架构,其优点是,用户不需要安装客户端,只要有网络、浏览器,可以随时随地访问网页,进行查询、浏览等操作。 并且方便维护,业务扩展简单方便且共享性强。
3.1.2 功能模块设计
小程序模块的划分按照“高内聚,低耦合”即尽可能使每一个模块只完成一件事,并且减少类内部,对其他类的调用的原则来进行划分。
系统的功能划分将由SC图来展示。
3.1.3 关键功能设计
3.2 数据存储设计
粤言粤语小程序所采用的存储方式是微信小程序自带的云数据库,该数据库是一个既可以在小程序端操作,也可以在云函数中操作的json类型的非关系型数据库(基于MongoDB)。所以在数据存储设计中,我们也采用了集合存储数据的形式来减少时间的损耗。以下一一介绍创建的数据库集合字段含义。
1、userlnfo(用于整个使用过程)
当用户点击登录时,如果用户允许使用微信登录,小程序会记录用户的_openid、avatarUrl、name、sex。
2、listen_text(存储用于听力练习的内容)
文本的音频数据没有存储在数据库中,当用户点击播放按钮,小程序会根据文本编号从云存储中获取文本音频。
3、listen_record(用户听力记录)
该部分用于个人中心中学习记录的使用,当用户选择相应的日期后,小程序会根据日期和个人的——openid来获取当天的数据。包括:用户当天的学习计划、用户的学习内容。
4、life_text(用于朗读中的日常情况)
该部分存储了不同场景下的不同片段,同时每句话中也通过集合存储了用户在该句话的读音数据和评分数据。
5、movies(用于朗读中的电影片段)
该部分存储了不同电影场景下的不同片段,同时每句话中也通过集合存储了用户在该句话的读音数据和评分数据。
6、transition(用于记录用户翻译数据)
该数据主要用于翻译模块,小程序记录每个人用户翻译的文本,然后在页面展示用户最近几次翻译的内容,通过这种方式可以方便用户查找最近的翻译记录。
3.3 界面设计
我们的小程序主要才用蓝色作为主色调,内部的一些组件采用渐变的形式展示,整个布局看上去虽然朴素但内容丰富。以下具体介绍我们小程序的主要界面设计风格。
3.3.1 界面设计风格
该部分我将从以下几个方面介绍:整体色调、初次进入的动画、各个页面的跳转以及页面内部的细节展示。
整体色调:粤言粤语小程序使用最多的颜色是蓝白。蓝白搭配是自然界最经典的搭配之一,这是蓝天白云的缩影,这是天空的颜色,白色能让整个页面显的不那么拥挤。而蓝色调能够带来一种宁静的感觉,让人感到放松和舒适。蓝与白的配色组合,会有种在云层里的感觉。总能给人一种浩瀚无垠的包容之感,又有流动的柔和与不可破坏的洁净感。同时,小程序的按钮大多采用渐变色的形式来展示。我们希望用户在学习粤语的同时能够放松心情,快乐的学习粤语、了解粤语文化与特色。
初次进入的动画:我们希望用户在第一次进入小程序的时候能够大致了解粤言粤语的主要功能。同时,为了使小程序更具有美感,我们采用轮播的方式在主要功能页面之前让用户提前了解小程序主要功能。
各个页面的跳转:我们小组采用最常见的导航栏的方式来展示主要功能,导航栏固定在页面的底部方便用户点击。同时,当用户停留在对应页面的图标下时,对应的图标也会以蓝色来高亮显示。
页面内部的细节展示:小程序的整个页面布局中我们都加入了一些关于粤语的小细节。广东塔的添加、粤剧文化、粤语歌曲代表人物等等。最后适当添加了一些繁体字让整个小程序充斥着粤语文化。
总的来说,整个界面风格比较朴素而不累赘,尽量给用户粤语文化的熏陶感。接下来是主要功能界面的介绍。
3.3.2 主要功能界面
1、听力练习界面:
该界面主要让用户以答题的形式来帮助用户练习粤语听力能力,该界面记录用户当天的学习记录以及登录的天数。用户可以根据自己的学习能力来修改每天的学习计划,用户也可以对今天的学习成果进行打卡生成海报分享到朋友圈。该页面添加了搜索功能,用户可以搜索想要翻译的汉语,然后页面会跳转到翻译页面进行翻译。
2、发音练习界面:
该界面主要让用户学习一些粤语的常用语,我们针对每一种场景用情景对话的方式来帮助用户学习。该界面提供了生活中常见用语以及26个电影片段。用户可以根据自己的需要和喜好点击进入详情页面。同时页面顶部的轮播图也可以点击,用户点击可以跳转到粤语文化的详情页。
在日常情景的详情页中,用户可以听到每一个场景的所有对话,也可以进行跟读来学习,我们通比对用户读的音频与标准音频给出比较科学的评分。
在电影情景中,26个电影片段是我们团队精心挑选的比较经典的粤语电影。用户可以观看我们截取的片段来学习,也可以进行跟读训练。
3、粤语翻译界面:
在粤语翻译界面,我们运用常见的翻译网站的设计风格,用文本框来让用户输入汉语,然后点击翻译便可以在几秒钟给出粤语的发音。我们也在翻译的下面给出了用户可能想要搜索的建议。在界面的剩余部分给出了该用户的最近翻译记录。整个界面布局内容充裕而不繁杂,基本可以满足用户的所有要求。
4、知识科普界面:
知识科普界面算是我们小程序的一个特点,我们在给用户提供学习平台的同时也让用户了解了一些关于粤语的文化。包括:粤剧、粤语歌曲以及粤语的发音。
用户可以根据自己的喜好点击相应版块,然后通过一边浏览文章一边观看相关例子的方式了解相关内容。在粤剧版块,我们提供了几个比较经典的粤剧片段。在粤语歌曲版块,我们选取了大众比较喜欢的几首经典粤语歌曲。在粤语发音版块,我们的小程序介绍了粤语的声母、韵母以及声调。用户可以根据我们提供的发音标准来练习。同时我们也会给出发音的小技巧。
5、账户管理界面:
该页面主要为用户个人学习记录以及客服两大功能。在个人学习记录中,用户可以查询某一天自己听力学习的内容。如果用户对小程序的使用有一些建议和不满意的地方,用户可以通过点击右下方的耳机按钮来向我们反馈。最后,我们给出关于该小程序的简单介绍和使用帮助。
4 总结
4.1 功能总结
粤言粤语以微信小程序为载体,目标是宣传粤语与粤语地区的文化。粤言粤语有五大功能模块,分别是听力练习模块、发音练习模块、粤语翻译模块、知识科普模块以及账号管理模块。用户可以在粤言粤语中练习粤语听力、观看粤语电影片段、跟读粤语语句、普通话翻译为粤语、了解粤语地区文化以及查看学习记录等。
除此之外,美化的UI设计可以提高用户的学习兴趣。用户在学习完成后可以生成学习记录海报,并将该海报发布至朋友圈以及其他社交平台展示自己的学习成果。
4.2技术总结
粤语粤语小程序调用了腾讯云的asr语音识别API和tts语音合成API,来应对小程序中的粤语发音练习和粤语翻译的场景。调用外部的API可以节省本地的代码量,同时也方便后期小程序发布之后的调试、修改等工作。
同时,使用了小程序提供的云存储和云数据库,在数据库中建立了表,存储用户的信息,并且通过用户的openid作为唯一的用户标识,创建了用户翻译历史记录表,用户朗读历史记录表,用户听力练习历史记录表。通过这些数据库表,建立了完善的用户信息储存机制,保障小程序的正常运行。
在朗读模块中,本小组添加了智能的跟读准确率识别系统。通过调用asr语音识别API来对用户输入的粤语语音进行识别,通过对比用户朗读的字符串和标准答案字符串,来计算用户朗读粤语的准确率,为用户跟读朗读粤语提供参的考依据。
4.3 改进方向与后期维护
在功能模块上,粤言粤语计划在获得企业类目后添加论坛模块,允许用户在其中交流粤语知识与文化。除此之外,开发小组正在收集大量粤语文化相关数据,建立图数据库(Neo4j)。通过该图数据库可开发智能问答机器人,供用户交流使用。
目前小组正在开发后端数据管理平台,计划在论坛模块发布后一起发布。届时粤言粤语会创立官方账号在论坛中发布信息。除此之外,粤言粤语管理员可通过后端数据管理平台发布科普发文章,科普视频等粤语相关内容。