英汉字典架构设计

一、数据文件

字典数据文件有两个:DictSpch.bin和DictSnd.bin

数据与声音

(文件名有点混,太相近了,不易区分具体内容。因为最初我们 V1版本字典只有词头和解释,当时就一个文件,名叫Dict.bin;后来V2版要加发音功能 ,文件名改为DictSpch.bin,结果又发现声音数据太大,在sd文件系统中放不下,声音数据又被单独抽出来放到隐藏盘,名叫DictSnd.bin)

  1. DictSpch.bin,字典数据(词头、词义)部份,是必须的,缺少的话,字典没法运行;

  2. DictSnd.bin,声音数据部份,可选,缺少的话,只是无发声,但字典可正常查阅词义;

  3. DictSpch.bin和DictSnd.bin必须配套使用,即它们ID必须相同,否则不会发声;

二、声音数据的结构

在这里插入图片描述
声音数据,即DictSnd.bin文件中存储的数据

1.数据标识ID

ID区域是为了与词头数据相匹配而加的数据区域,避免不同版本的词头与发声的混用造成错误而加入的。

ID区的数据结构:

在这里插入图片描述

实例

在这里插入图片描述

2.wav 参数

wav参数包括:通道数、采样率、采样宽度,这是发声函数需要的重要参数。所有词头使用相同参数。

wav参数结构

在这里插入图片描述

实例

在这里插入图片描述

可以看出:
通道数:0x0001,即1个通道(单通道)
采样率:0x3E80 =
16000,即16K
采样宽度:0x0020,2字节,即16bit

3.发声数据

发声数据结构很简单,就是各个单词的wav声音数据,一个一个的顺序排列。

单条数据结构

在这里插入图片描述

实例

在这里插入图片描述

长度:0x00004B1A
= 19226,即从0x10开始,19226字节的数据都是同一个单词的声音数据。

在词头的信息(DictSpch.bin)中,会保存该词头对应声音数据的偏移地址,如0x12,则可跳到D

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个专研技术的小蜜蜂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值