一种可辨别方向的耳机及其实现方法与流程

文档序号:11139481阅读:699来源:国知局
一种可辨别方向的耳机及其实现方法与制造工艺

本发明涉及数字音频处理技术领域,尤其涉及一种可辨别方向的耳机及其实现方法。



背景技术:

当今社会发展越来越快,互联网技术以及与电子技术的结合程度越来越高。智能化,人性化的要求也越来越高。移动消费电子产品所附带的功能涵盖生活生产的各个方面,多媒体功能也是消费电子设备用户使用最多的一种应用,怎么提高用户体验,以及用户感受成为了每个厂家都需要考虑的问题。

目前业内更多将音效设置的功能放置在多媒体终端设备上,很多厂家只限于在自己本产品的基础上使用更加好的器件,花更高成本的配件进行提高听赏感受,改善音质,提高音频测试各种指标都是后端设计非常复杂的系统工程。但是耳机还是属于传统耳机的范畴。而当音源位于用户不同位置时,如头部的前方或者侧方,声音的大小和声场均会有不同,从而降低用户的听觉体验。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足之处,本发明的目的在于提供一种可辨别方向的耳机及其实现方法,解决现有技术中耳机在使用过程中,音源位于不同位置时,声音不会随着音源位置变化进行变化,降低环绕声效果,令用户体验感较差。

为了达到上述目的,本发明采取了以下技术方案:

一种可辨别方向的耳机,包括耳机本体,所述耳机本体上设置有用于与移动终端相连接的音频连接器;其中,所述耳机本体还包括:控制模块、信号转换模块、方向传感器、存储模块、数字信号处理模块和耳机扬声器;

所述音频连接器将移动终端发送的模拟信号发送至信号转换模块中,由信号转换模块将模拟信号转换成对应的数字信号后,再把数字信号发送至存储模块中;方向传感器将捕捉到的位置信号保存在存储单元中;

所述控制模块将位置信号以及数字信号一并发送至数字信号处理模块中进行解析,由数字信号处理模块转换成数字虚拟环绕立体声数据,并将数字虚拟环绕立体声数据发送至信号转换模块中;

所述信号转换模块将数字虚拟环绕立体声数据转换成相应的模拟虚拟环绕立体声数据后,送至耳机扬声器中。

所述的可辨别方向的耳机,其中,所述耳机本体上还设置有用于为耳机中各个模块进行供电的电源管理模块。

所述的可辨别方向的耳机,其中,所述耳机本体上还设置有麦克风和音量调节按键;所述麦克风和音量调节按键分别连接控制模块。

所述的可辨别方向的耳机,其中,所述方向传感器进一步包括加速度传感器和地磁场传感器;所述方向传感器通过I2C总线与控制模块连接。

一种上述的可辨别方向的耳机的实现方法,其中,包括以下步骤:

S1、音频连接器将移动终端发送的模拟信号发送至信号转换模块中,由信号转换模块将模拟信号转换成对应的数字信号后,再把数字信号发送至存储模块中;同时,方向传感器将捕捉到的位置信号保存在存储单元中;

S2、控制模块将位置信号以及数字信号一并发送至数字信号处理模块中进行解析,转换成数字虚拟环绕立体声数据,并将数字虚拟环绕立体声数据发送至信号转换模块中;

S3、信号转换模块将数字虚拟环绕立体声数据转换成相应的模拟虚拟环绕立体声数据后,送至耳机扬声器中。

所述的可辨别方向的耳机的实现方法,其中,所述步骤S2具体包括:

S21、数字信号处理模块对接收到的位置信号进行判断,根据预先设置的规则,判断是否为有效数据:若为有效数据则结合数字信号进行解析,转换成数字虚拟环绕立体声数据;否则提示用户数据误差,重新调整进行位置信号采集;

S22、数字信号处理模块将数字虚拟环绕立体声数据发送至控制模块和存储模块中,由控制模块根据数字虚拟环绕立体声数据来控制麦克风的端口电压;

S23、控制模块将存储模块中的数字虚拟环绕立体声数据的数据发送至信号转换模块中。

所述的可辨别方向的耳机的实现方法,其中,所述步骤S1之前还包括步骤S0、控制模块、数字信号处理模块和方向传感器进行初始化操作。

所述的可辨别方向的耳机的实现方法,其中,所述步骤S0还包括检测音频连接器是否接收到移动终端发送的模拟信号,若是则进行步骤S1,否则控制模块由工作状态转为待机状态,并提示用户。

有益效果:本发明提供的可辨别方向的耳机及其实现方法,通过位置传感器来判断头部的摆动的方位如左右的方位信息,对音源信号进行处理,将声音中各个发音源方位分离结合头部转动的角度来改变声音的声场以及声音大小随角度而逐渐变化,从而让用户在转动自己头部的角度的时候能够很清楚听到音源中发声体的方位和感受到声音的声场偏差,从而获取到真实感觉的耳机。

附图说明

图1为本发明的可辨别方向的耳机的结构框图。

图2为本发明可辨别方向的耳机的实现方法的流程图。

具体实施方式

本发明提供一种可辨别方向的耳机及其实现方法。为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

首先介绍一下人耳的听音原理:

人耳只有两个,但却能在所有角度上大概分辨出声音到底来自于哪个方向。这是因为人对声音音源的定位方法非常复杂,其由以下效应组成:

1.简单的“左-右”信息可以通过相对电平的不同和每只耳朵接收到的不同而获得。

2.对于打击乐器的声音,皮肤可以感受到声波的冲击。

3.声波在进入鼓膜时,受人体的反射、折射和衍射而扭曲变形,大脑能根据经验判断出声源的方位和距离。此一研究领域为头部相关传输函数(Head-related transfer function,HRTF)。

这些原理开发出了数种录音方式,随着技术的进步,其录音效果也在逐渐改善中,方法主要有以下几种:

(1)听觉传输立体声系统。它是根据听觉传输技术的原理,通过人工假头进行捡拾,或者用信号处理的方法模拟出声源到双耳的传输函数HRTF,从 而得到含有3D空间环绕声信息的双耳信号。所得到的两声道信号经放大、记录、传输后,在经耳机重放,或由扬声器重放。这种方法的优点是声像逼真自然,且只 需两个独立的重放声道就可以再现三维空间的声像。

(2)3D“准”虚拟环绕声系统。这类系统是在听觉传输立体声技术的基础上,从双声道信号提取出空间信息并予以增强,或者通过模拟空寂不同方向 上的HRTF来模拟发射声与混响声,进而增加主观听觉上的空间感与包围感,达到模拟3D环绕声的目的,是普通双声道节目源的后期处理系统。这类系统所起到 的是模拟环绕声信息的作用,也就是“准”环绕声系统。本发明用的就是此算法来进行的。

多通道虚拟环绕声系统。这类系统多采用听觉传输技术的虚拟声源的方法,通过HRTF的模拟。利用一对前方扬声器虚拟出部分扬声器,从而实现环绕声的效果。值得一提的是,这类系统也存在听音域窄和声像前后倒置的缺陷。

请参阅图1,其为本发明的可辨别方向的耳机的结构框图。如图所示,所述可辨别方向的耳机,包括耳机本体10,所述耳机本体10上设置有用于与移动终端20相连接的音频连接器100;所述耳机本体还包括:控制模块200、信号转换模块300、方向传感器400、存储模块500、数字信号处理模块600和耳机扬声器700;所述控制模块200分别连接信号转换模块300、方向传感器400、存储模块500、数字信号处理模块600和耳机扬声器700;所述数字信号处理模块600、方向传感器400、信号转换模块300连接存储模块500,信号转换模块300连接耳机扬声器700。

其中,所述音频连接器将移动终端发送的模拟信号发送至信号转换模块中,由信号转换模块将模拟信号转换成对应的数字信号后,再把数字信号发送至存储模块中;方向传感器将捕捉到的位置信号保存在存储单元中;所述控制模块将位置信号以及数字信号一并发送至数字信号处理模块中进行解析,由数字信号处理模块转换成数字虚拟环绕立体声数据,并将数字虚拟环绕立体声数据发送至信号转换模块中;所述信号转换模块将数字虚拟环绕立体声数据转换成相应的模拟虚拟环绕立体声数据后,送至耳机扬声器中。

具体来说,所述移动终端20包括手机:所述移动终端20有操作系统支持,基于操作系统上安装音乐播放器软件应用,在本实施例中,通过3.5MM 的耳机线与耳机本体进行连接。所述控制模块200的主要作用包括:进行音乐信号和通话语音信号的音量大小调节;麦克通路切换从充电模式转成输入通路控制;控制其他几个核心单元的硬件初始化;接收数字信号处理模块中断信号,主动对麦克风的端口电压进行升压(1.8V升到2.5V,1.8V为麦克风的额定工作电压)等。信号转换模块300是将移动终端发送的模拟信号转换成对应的数字信号后并暂时存储在存储模块500中,并通过控制模块中启动的数据将转换后的数字信号混音操作,结合方向传感器传输过来的数据一并传递给数字信号处理模块600进行音效处理。在本实施例中,方向传感器400通过I2C总线与控制模块200进行连接,整个耳机端通电之后方向传感器400进行初始化,并开始捕捉为之数据并保存在存储模块中。

方向传感器400是本发明的关键所在,在本实施例中,方向传感器400通过2个传感器用于判断设备的位置:分别是地磁场传感器和加速度传感器。方向传感器是基于软件的,并且它的数据是通过加速度传感器和磁场传感器共同获得的。传感器框架通常是使用一个标准的三维坐标系去表示一个值的。以方向传感器为例,确定一个方向当然也需要一个三维坐标,毕竟设备不可能永远水平,准确的说设备返回的方向值就是一个长度为3的float数组,包含三个方向的值:x、y和z,其中,z是指向地心的方位角,x轴是仰俯角(由静止状态开始前后反转),y轴是翻转角(由静止状态开始左右反转)。

传感器的实现原理:方向感应器的实现靠的是加速计。所采用的加速计是三轴加速计,分为X轴、Y轴和Z轴。这三个轴所构成的立体空间足以 侦测到你设备上各种动作。在实际应用时通常是以这三个轴(或任意两个轴)所构成的角度来计算iPhone倾斜的角度,从而计算出重力加速度的 值。通过感知特定方向的惯性力总量,加速计可以测量出加速度和重力。三轴加速计意味着它能够检测到 三维空间中的运动或重力引力。因此,加速计可以检测设备处于正竖、倒竖、左横、右横,仰、俯状态。感应水平面上的方位角、旋转角和倾斜角,具有方向检测功能的设备具有使用更方便、更具人性化的特点。加 速计可以测量重力引力(g),因此当加速计返回值为1.0时,表示在特定方向上感知到1g.如果是静止握持iPhone而没有任何动作,那么地球引力对其 施加的力大约为1g.如果是纵向竖直,那么设备会检测并报告在其y轴上施加的力大约为1g。如果是以一定角度握持,设备那么这1g的力会分布到不同的轴上,这取决于设备的位置方式。当以45度角位置的设备时,1g的力会均匀的分解到两个轴上。正常使用时,加速计在任一轴上都不会检测到远大于1g的值。如果检测到的加速计值远大于1g,那么即可判断这是突然动作。如果突然转动头部向左右,那么加速计便会在一个或多个轴上检测到很大的力。

本发明的关键就是运行虚拟环绕立体声解析算法,结合方向传感器所返回的转动夹角度数,结合实时音源信号,获取与夹角度数相吻合的解析后的声音效果。

其中,获取传感器X,Y,Z轴数据在控制模块启动的方向传感器进程中进行算法解析获取到角度数据,算法解析如下:

getRotationMatrix(float[] R, float[] I,

float[] gravity, float[] geomagnetic) {

// TODO: move this to native code for efficiency

float Ax = gravity[0];

float Ay = gravity[1];

float Az = gravity[2];

final float Ex = geomagnetic[0];

final float Ey = geomagnetic[1];

final float Ez = geomagnetic[2];

float Hx = Ey*Az - Ez*Ay;

float Hy = Ez*Ax - Ex*Az;

float Hz = Ex*Ay - Ey*Ax;

final float normH = (float)Math.sqrt(Hx*Hx + Hy*Hy + Hz*Hz);

if (normH < 0.1f) {

// device is close to free fall (or in space), or close to

// magnetic north pole. Typical values are > 100.

return false;

}

final float invH = 1.0f / normH;

Hx *= invH;

Hy *= invH;

Hz *= invH;

final float invA = 1.0f / (float)Math.sqrt(Ax*Ax + Ay*Ay + Az*Az);

Ax *= invA;

Ay *= invA;

Az *= invA;

final float Mx = Ay*Hz - Az*Hy;

final float My = Az*Hx - Ax*Hz;

final float Mz = Ax*Hy - Ay*Hx;

if (R != null) {

if (R.length == 9) {

R[0] = Hx; R[1] = Hy; R[2] = Hz;

R[3] = Mx; R[4] = My; R[5] = Mz;

R[6] = Ax; R[7] = Ay; R[8] = Az;

} else if (R.length == 16) {

R[0] = Hx; R[1] = Hy; R[2] = Hz; R[3] = 0;

R[4] = Mx; R[5] = My; R[6] = Mz; R[7] = 0;

R[8] = Ax; R[9] = Ay; R[10] = Az; R[11] = 0;

R[12] = 0; R[13] = 0; R[14] = 0; R[15] = 1;

}

}

if (I != null) {

// compute the inclination matrix by projecting the geomagnetic

// vector onto the Z (gravity) and X (horizontal component

// of geomagnetic vector) axes.

final float invE = 1.0f / (float)Math.sqrt(Ex*Ex + Ey*Ey + Ez*Ez);

final float c = (Ex*Mx + Ey*My + Ez*Mz) * invE;

final float s = (Ex*Ax + Ey*Ay + Ez*Az) * invE;

if (I.length == 9) {

I[0] = 1; I[1] = 0; I[2] = 0;

I[3] = 0; I[4] = c; I[5] = s;

I[6] = 0; I[7] =-s; I[8] = c;

} else if (I.length == 16) {

I[0] = 1; I[1] = 0; I[2] = 0;

I[4] = 0; I[5] = c; I[6] = s;

I[8] = 0; I[9] =-s; I[10]= c;

I[3] = I[7] = I[11] = I[12] = I[13] = I[14] = 0;

I[15] = 1;

}

}

return true;

}

计算出角度数据的函数实现,并将角度数据保存在存储模块中,控制模块发送命令将方向角度以及实时的数字音频数据一并传送至数字信号处理模块进行虚拟环绕声的算法解析操作。

calculateOrientation() {

float[] values = new float[3];

float[] R = new float[9];

SensorManager.getRotationMatrix(R, null, accelerometerValues,

magneticFieldValues);

SensorManager.getOrientation(R, values);

values[0] = (float) Math.toDegrees(values[0]);

Log.i(TAG, values[0] + "");

if (values[0] >= -5 && values[0] < 5) {

} else if (values[0] >= 5 && values[0] < 85) {

} else if (values[0] >= 85 && values[0] <= 95) {

} else if (values[0] >= 95 && values[0] < 175) {

} else if ((values[0] >= 175 && values[0] <= 180)

|| (values[0]) >= -180 && values[0] < -175) {

} else if (values[0] >= -175 && values[0] < -95) {

} else if (values[0] >= -95 && values[0] < -85) {

} else if (values[0] >= -85 && values[0] < -5) {

}

}

具体来说,本发明通过位置传感器来判断头部的摆动的方位如左右的方位信息,对音源信号进行处理,将声音中各个发音源方位分离结合头部转动的角度来改变声音的声场以及声音大小随角度而逐渐变化,从而让用户在转动自己头部的角度的时候能够很清楚听到音源中发声体的方位和感受到声音的声场偏差,从而获取到真实感觉的耳机。

下面介绍下普通立体声输出与虚拟环绕立体声输出的差别:

双声道是音频领域的一项革命性的进步,它的出现让用户从耳机/扬声器中听到的声音的“场”从一个单薄的“点”扩宽到了一个“面”,通过两个声道 发出的音量和音色细节与播放出来的时间的细微差距,已经可以分辨出一束声音来自左边还是右边,用户现在听到的大多数音乐都是基于这种技术制作的。而在欣赏 音乐和大多数电影的时候,双声道音频已经能给予用户需要的足够的空间感和立体感。在这个世界里声音当然不可能是只来自于用户的左边和右边的。想象一下,如果用户处在一个看起来一切都很像真实世界的地方,但用户听到的声音只会从左边或右边传来,那会是一件多荒谬的事,视觉上营造的逼真观感会 被听觉上的异样毁得荡然无存。那么需要一项更加先进的技术来给听众提供更逼真的听觉体验了。最终声音的模拟立体化是靠头盔内的数组微型扬声器来实现的,他们或许没想到最终的技术竟然可以实现在任何一副 只有两个音响的普通耳机上,都能实现真正的环绕声效果。这就是虚拟环绕声技术。

进一步的,所述的可辨别方向的耳机中,所述耳机本体10上还设置有用于为耳机中各个模块进行供电的电源管理模块。另外,所述耳机本体上还可以设置有麦克风和音量调节按键;所述麦克风和音量调节按键分别连接控制模块。

本发明还提供了一种上述的可辨别方向的耳机的实现方法,如图2所示,包括以下步骤:

S100、音频连接器将移动终端发送的模拟信号发送至信号转换模块中,由信号转换模块将模拟信号转换成对应的数字信号后,再把数字信号发送至存储模块中;同时,方向传感器将捕捉到的位置信号保存在存储单元中;

S200、控制模块将位置信号以及数字信号一并发送至数字信号处理模块中进行解析,转换成数字虚拟环绕立体声数据,并将数字虚拟环绕立体声数据发送至信号转换模块中;

S300、信号转换模块将数字虚拟环绕立体声数据转换成相应的模拟虚拟环绕立体声数据后,送至耳机扬声器中。

进一步的,所述的可辨别方向的耳机的实现方法中,所述步骤S200具体包括:

S21、数字信号处理模块对接收到的位置信号进行判断,根据预先设置的规则,判断是否为有效数据:若为有效数据则结合数字信号进行解析,转换成数字虚拟环绕立体声数据;否则提示用户数据误差,重新调整进行位置信号采集;例如:发送中断信号给控制模块,进行闪灯或者其他文字提醒告知用户使用方法或者环境不够可能造成数据误差,帮忙用户重新调整进行数据采集。

S22、数字信号处理模块将数字虚拟环绕立体声数据发送至控制模块和存储模块中,由控制模块根据数字虚拟环绕立体声数据来控制麦克风的端口电压:可以将麦克风的端口电压升压至2.5V,也可以保持在1.8V。

S23、控制模块将存储模块中的数字虚拟环绕立体声数据的数据发送至信号转换模块中。

进一步的,所述的可辨别方向的耳机的实现方法中,所述步骤S100之前还包括步骤S0、控制模块、数字信号处理模块和方向传感器进行初始化操作。

进一步的,所述的可辨别方向的耳机的实现方法中,所述步骤S0还包括检测音频连接器是否接收到移动终端发送的模拟信号,若是则进行步骤S100,否则控制模块由工作状态转为待机状态,并提示用户:设备故障,需要重新插拔或者启动。

综上所述,本发明提供的可辨别方向的耳机及其实现方法,其中,可辨别方向的耳机包括耳机本体、音频连接器、控制模块、信号转换模块、方向传感器、存储模块、数字信号处理模块和耳机扬声器;所述控制模块分别连接、信号转换模块、方向传感器、存储模块、数字信号处理模块和耳机扬声器;所述方向传感器、信号转换模块连接存储模块,信号转换模块连接耳机扬声器。通过位置传感器来判断头部的摆动的方位如左右的方位信息,对音源信号进行处理,将声音中各个发音源方位分离结合头部转动的角度来改变声音的声场以及声音大小随角度而逐渐变化,从而让用户在转动自己头部的角度的时候能够很清楚听到音源中发声体的方位和感受到声音的声场偏差,从而获取到真实感觉的耳机。

可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及本发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1