数据传输方法、装置、电子设备以及存储介质与流程

文档序号:16517366发布日期:2019-01-05 09:43阅读:144来源:国知局
数据传输方法、装置、电子设备以及存储介质与流程

本申请涉及电子设备技术领域,更具体地,涉及一种数据传输方法、装置、电子设备以及存储介质。



背景技术:

随着科学技术的发展,电子设备已经成为人们日常生活中最常用的电子产品之一。并且,用户经常会通过与电子设备连接的音频播放设备接收电子设备的音频信息,但是,音频播放设备接收到的音频数据可能会存在延迟,造成音频数据和电子设备的播放画面不同步,用户体验不佳的问题。



技术实现要素:

鉴于上述问题,本申请提出了一种数据传输方法、装置、电子设备以及存储介质,以解决上述问题。

第一方面,本申请实施例提供了一种数据传输方法,应用于电子设备,所述方法包括:当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放;检测所述电子设备的连接状态;当所述电子设备通过蓝牙连接至音频播放设备时,根据所述当前特征信息,确定将所述音频数据传输给所述音频播放设备的过程中所经过的缓冲节点的缓冲阈值,其中,当所述缓冲节点已经缓冲的音频数据达到所述缓冲阈值时,对所述音频数据进行处理;根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

第二方面,本申请实施例提供了一种数据传输装置,应用于电子设备,所述装置包括:特征信息检测模块,用于当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放;连接状态检测模块,用于检测所述电子设备的连接状态;缓冲阈值获取模块,用于当所述电子设备通过蓝牙连接至音频播放设备时,根据所述当前特征信息,确定将所述音频数据传输给所述音频播放设备的过程中所经过的缓冲节点的缓冲阈值,当所述缓冲节点已经缓冲的音频数据达到所述缓冲阈值时,对所述音频数据进行处理;音频数据缓存模块,用于根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

第三方面,本申请实施例提供了一种电子设备,包括存储器和处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时所述处理器执行上述方法。

第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述方法。

相对于现有技术,本申请提供的方案,当电子设备运行有目标应用程序时,检测目标应用程序的当前特征信息,其中,该目标应用程序至少支持音频数据的播放,检测电子设备的连接状态,当电子设备通过蓝牙连接至音频播放设备时,根据当前特征信息,确定将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,其中,当缓冲节点已经缓冲的音频数据达到缓冲阈值时,对音频数据进行处理,根据该缓冲阈值缓存电子设备传输给音频播放设备的音频数据,从而根据电子设备运行的应用程序的特征信息,获取将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出了一种适用于本申请实施例提供的应用环境示意图;

图2示出了本申请一个实施例提供的数据传输方法的流程示意图;

图3示出了本申请又一个实施例提供的数据传输方法的流程示意图;

图4示出了本申请再一个实施例提供的数据传输方法的流程示意图;

图5示出了本申请图4所示的实施例提供的数据传输方法的步骤s330的流程示意图;

图6示出了本申请图4所示的实施例提供的数据传输方法的步骤s340的流程示意图;

图7示出了本申请实施例提供的数据传输装置的模块框图;

图8示出了本申请实施例用于执行根据本申请实施例的数据传输方法的电子设备的框图;

图9示出了本申请实施例的用于保存或者携带实现根据本申请实施例的数据传输方法的程序代码的存储单元。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

目前的电子设备100一般都有蓝牙(bluetooth,bt)模块和wifi(wirelessfidelity,wifi)模块。其中,蓝牙模块可以是指集成蓝牙功能的芯片基本电路集合,用于无线网络通讯;wi-fi模块可以是将串口或ttl电平转为符合wi-fi无线网络通信标准的嵌入式模块,内置无线网络协议ieee802.11b.g.n协议栈以及tcp/ip协议栈,硬件设备嵌入wi-fi模块可以直接利用wi-fi联入互联网。电子设备100可以通过蓝牙模块与蓝牙设备200(如蓝牙耳机、蓝牙音箱等音频播放设备,投影仪、电视机等视频播放设备)进行蓝牙连接;电子设备100也可以通过wifi模块进行wifi连接,如电子设备100通过wifi模块连接至无线局域网,以与服务器300(如云服务器、手机、计算机以及平板电脑等)进行数据交互,如图1所示。

随着用户的对电子设备的要求越来越高,因此,电子设备为了满足用户的需求以及为用户提供方便,开始支持播放音频数据,其中,电子设备的音频架构和计算机的音频架构类似,主要是由处理器和内置音频codec(编解码器)来完成。具体地,处理器接收音频数据的输入后,转化成i2s信号,并传输至codec转换成模拟信号,然后进行播放。

进一步地,电子设备可以与外接音频播放设备连接,通过所述音频播放设备播放音频数据,具体地,该音频播放设备可以接收移动终端传输过来的音频数据,并将音频数据进行播放,其中,该音频播放设备可以包括耳机、音箱以及车载设备等。而在诸多情况下,电子设备与外接的音频播放设备需要使用网络才能进行数据传输,例如,电子设备与音频播放设备需要使用无线保真(wirelessfidelity,wifi)连接进行数据传输,或电子设备与音频播放设备需要使用蓝牙(bluetooth,bt)连接进行数据传输等,可选的,在通常情况下,电子设备可以通过蓝牙与音频播放设备连接,并通过蓝牙将音频数据传输至音频播放设备进行播放。但是,当网络不稳定时,对网络延迟敏感的包括音频数据的应用程序容易出现网络延迟,如果出现网络延迟的应用程序正处于前台运行,则该前台运行的应用程序则会出现声音延迟,例如,当用户正在使用游戏类应用程序玩网游,由于该游戏类应用程序对网络延迟比较敏感,因此,如果网络质量较差,则游戏画面容易出现卡顿或游戏画面与音频不同步的问题。

其中,造成上述情况的一个原因是音频数据的缓冲处理问题。具体地,电子设备在将音频数据传输给音频播放设备进行播放的过程中,音频数据会经过电子设备的音频解码模块、音频处理模块以及蓝牙的codec编码模块,然后输出到音频播放设备后,又会经过蓝牙codec解码模块(在音频播放设备上),而在上述处理流程中,为了协调相邻模块之间的数据处理速度,可以在相邻模块之间都配置一个缓冲节点,该缓冲节点可以将音频数据处理的流程中前一模块处理后的音频数据进行缓冲,然后前一模块的相邻下一模块再从缓冲节点中读取数据进行处理。而电子装置通常配置的缓冲节点的最大缓冲数据是固定的,且当缓冲节点缓冲的数据量达到该最大缓冲数据时,下一缓冲节点才开始处理,从而会造成音频数据延迟的问题。

针对上述问题,发明人经过长期的研究发现,并提出了本申请实施例提供的数据传输方法、装置、电子设备以及存储介质,根据电子设备运行的应用程序的特征信息,确定将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。其中,具体的数据传输方法在后续的实施例中进行详细的说明。

实施例

请参阅图2,图2示出了本申请一个实施例提供的数据传输方法的流程示意图。所述数据传输方法用于根据电子设备运行的应用程序的特征信息,确定将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。在具体的实施例中,所述数据传输方法应用于如图7所示的数据传输装置400以及配置有所述数据传输装置400的电子设备100(图8)。下面将以电子设备为例说明本实施例的具体流程,当然,可以理解的,本实施例所应用的电子设备可以为智能手机、平板电脑、穿戴式电子设备、车载设备、网关等,在此不做具体的限定。下面将针对图2所示的流程进行详细的阐述,所述数据传输方法具体可以包括以下步骤:

步骤s110:当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放。

在本实施例中,电子设备运行的应用程序可以包括在电子设备前台运行的应用程序、在电子设备后台运行的应用程序或在电子设备的前台和后台切换运行的应用程序。具体地,前台应用程序是指通常可以和用户进行交互,能运行在前台的应用程序,当它不可见时就会被挂起(比如:游戏);后台应用程序是指和用户交互非常有限,除了配置期间,其生存期的其他时间都是隐藏的(比如:sms自动回复程序和闹钟程序);在电子设备的前台和后台切换运行的应用程序是指可以在前台以及后台之间随意切换的应用程序。可以理解的,当应用程序没有被杀掉(kill)时,表征该应用程序在电子设备上运行。

进一步地,从电子设备运行的应用程序中确定目标应用程序,其中,该目标应用程序可以包括单个应用程序,也可以包括多个应用程序,在此不做限定。在本实施例中,所述目标应用程序至少支持音频数据的播放,也就是说,该目标应用程序至少有音频输出,例如,该目标应用程序可以包括音乐播放类应用程序,视频播放类应用程序,通话类应用程序,游戏类应用程序等,该应用程序可以输出音频数据,也可以同时输出音频数据和图像数据等。

进一步地,在确定目标应用程序后,对所述目标应用程序的特征信息进行检测,其中,可以理解的,由于随着时间等参数的改变,该目标应用程序的特征信息也可能发生改变,因此,可以实时对目标应用程序的特征信息进行检测,以获取该目标应用程序的当前特征信息。其中,该当前特征信息可以包括该目标应用程序的类型、运行状态等,在此不做具体的限定。

步骤s120:检测所述电子设备的连接状态。

在本实施例中,对电子设备的连接状态进行检测,可以理解的,该电子设备的连接状态包括已连接、正在连接以及未连接三个状态,其中,当该电子设备处于已连接状态时,该电子设备可以处于移动网络连接状态,例如:处于4g网络连接状态、处于3g网络连接状态或处于2g网络连接状态;该电子设备可以处于无线网络连接状态,例如:处于wifi连接状态或处于mifi连接状态等;该电子设备还可以处于蓝牙连接状态等,在此不做限定。

步骤s130:当所述电子设备通过蓝牙连接至音频播放设备时,根据所述当前特征信息,确定将所述音频数据传输给所述音频播放设备的过程中所经过的缓冲节点的缓冲阈值,其中,所述缓冲阈值表征触发开始对所述缓冲节点已经缓冲的音频数据进行处理的参数。

作为一种方式,在本实施例中,所述音频播放设备包括蓝牙模块,且该音频播放设备可以通过所述蓝牙模块与所述电子设备进行蓝牙连接。其中,当检测到所述电子设备通过蓝牙连接至音频播放设备时,例如,当检测到电子设备和音频播放设备均开启蓝牙,且该电子设备与音频播放设备配对成功时,可以表征该电子设备通过蓝牙连接至音频播放设备。

可以理解的,在本实施例中,还可以对电子设备通过蓝牙连接的设备是否为音频播放设备进行检测,其中,在基于android操作系统的电子设备中,可以通过基于实例化bluetoothclass.device类所得到的返回值来确定当前通过蓝牙连接的设备类型。若返回的值为audio_video_camcorder,则表征为图像采集设备;若返回的值为audio_video_car_audio,则表征为车载设备;若返回的值为audio_video_hifi_audio,则表征为音频播放设备或者视频播放设备,例如,蓝牙耳机;若返回的值为audio_video_microphone,则表征其为麦克风。

其中,电子设备输出的音频数据可以是从所述电子设备的本地获取,也可以是通过网络从服务器获取,在此不做限定。当所述电子设备在从所述本地或所述服务器中获取所述音频数据后,会先对该音频数据进行音频解码、音频处理以及蓝牙codec编码处理。例如,在电子设备中,音频解码模块和音频处理模块之间可以有缓冲节点,而音频处理模块以及蓝牙codec编码模块之间也可以设置缓冲节点,而蓝牙codec编码模块和执行将音频数据发送给音频播放设备的模块之间也可以设置有缓冲节点。又例如,在音频播放设备中也可以设置有缓冲节点,且该音频播放设备中设置的缓冲节点的缓冲buffer小于该电子设备设置的缓冲节点的缓冲buffer。

其中,每个缓冲节点预先设置缓冲buffer,其中,该缓冲buffer的大小固定不变,但是,每个缓冲buffer中的缓冲阈值可以设置为不同,也就是说,每个缓冲节点的缓冲阈值可以通过软件动态控制其改变,可以理解的,通过软件控制的缓冲阈值可以小于或等于缓冲buffer,例如,假设某个缓冲节点的缓冲buffer为3k,其缓冲阈值可以设置为2k、1k等。因此,在本实施例中,可以根据当前特征信息,确定与该当前特征信息对应的电子设备将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,也就是说,可以分别确定每个缓冲节点的缓冲阈值,其中,该缓冲阈值用于当该缓冲节点已经缓冲的音频数据达到该缓冲阈值时,则下一模块对该音频数据进行处理。

步骤s140:根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

作为一种方式,在确定各个缓冲节点的缓冲阈值后,根据该缓冲阈值缓存传输经过该缓冲节点的音频数据,并在缓存的音频数据达到该缓冲阈值时,将所述音频数据继续往下一缓冲节点传输,直到所述音频数据传输至所述音频播放设备输出。可以理解的,针对目标应用程序的不同特征信息,即针对目标应用程序对应声音延迟的不同要求,设置不同的缓冲阈值,从而可以有效的减小音频数据延迟和cpu功耗的问题,以提升音频输出效果和用户体验。

作为另一种方式,还可以在获取目标应用程序的当前特征信息后,根据该当前特征信息获取与该当前特征信息对应的电子设备的cpu频率,并基于该cpu频率对音频数据进行处理。可以理解的,cpu频率越高,电子设备的代码执行越快,声音延迟越低,cpu频率越低,电子设备的代码执行越慢,声音延迟越高,因此,可以根据该目标应用程序的特征信息判断该目标应用程序对于声音延迟的要求,对于声音延迟要求较高的,可以提高该cpu频率,而对于声音延迟要求较低的,可以适当降低cpu频率。

本申请一个实施例提供的数据传输方法,当电子设备运行有目标应用程序时,检测目标应用程序的当前特征信息,检测电子设备的连接状态,当电子设备通过蓝牙连接至音频播放设备时,根据当前特征信息,确定将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,根据该缓冲阈值缓存电子设备传输给音频播放设备的音频数据,从而根据电子设备运行的应用程序的特征信息,获取将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。

请参阅图3,图3示出了本申请又一个实施例提供的数据传输方法的流程示意图。所述方法应用于上述电子设备,下面将针对图3所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:

步骤s210:当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放。

步骤s220:检测所述电子设备的连接状态。

步骤s230:当所述电子设备通过蓝牙连接至音频播放设备,且所述目标应用程序在所述电子设备的后台运行时,将所述第二缓冲阈值作为所述缓冲节点的缓冲阈值。

在本实施例中,所述缓冲阈值包括第一缓冲阈值和第二缓冲阈值,其中,该第一缓冲阈值小于该第二缓冲阈值,例如,该第一缓冲阈值为1k,该第二缓冲阈值为2k。

作为一种方式,当电子设备通过蓝牙连接至音频播放设备时,对该目标应用程序的运行状态进行检测,具体地,对所述目标应用程序当前运行于电子设备的前台或运行于电子设备的后台进行检测。其中,当检测到该目标应用程序在电子设备的后台运行时,此时,所述目标应用程序不需要实时显示画面或响应用户的操作,因此,可以选择相对较大的第二缓冲阈值作为此时缓冲节点的缓冲阈值,可以理解的,当选择相对较大的第二缓冲阈值时,可以在提升该缓冲节点缓存的数据量的同时降低cpu的功耗,其中,当所述目标应用程序从后台运行切换到前台运行时,由于缓存的数据量大,因此,在网络较差时,可以进一步减小音频数据的延迟。

步骤s240:当所述电子设备通过蓝牙连接至音频播放设备,且所述目标应用程序在所述电子设备的前台运行时,将所述第一缓冲阈值作为所述缓冲节点的缓冲阈值。

作为另一种方式,当检测到该目标应用程序在电子设备的前台运行时,此时,所述目标应用程序需要实时显示画面或响应用户的操作,因此,可以选择相对较小的第一缓冲阈值作为此时缓冲节点的缓冲阈值,可以理解的,当选择相对较小的第一缓冲阈值时,可以提升各个缓冲节点将音频数据传输到下一节点的速率,以便所述音频数据尽快的传输至所述音频播放设备输出,减小音频数据的延迟。

步骤s250:当所述目标应用程序从所述前台运行切换至所述后台运行时,控制所述缓冲节点的缓冲阈值从所述第一缓冲阈值增大到所述第二缓冲阈值。

在本实施例中,当所述目标应用从前台运行切换至后台运行时,表征此时所述目标应用程序不需要实时显示画面,因此,可以将各个缓冲节点的缓冲阈值从第一缓冲阈值增大到第二缓冲阈值;同样的,当所述目标应用程序从后台运行切换至前台运行时,表征此时所述目标应用程序需要实时显示画面,因此,可以将各个缓冲节点的缓冲阈值从第二缓冲阈值减小到第一缓冲阈值,从而降低应用程序在前后台切换时音频数据出现延迟的问题。

步骤s260:根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

本申请又一个实施例提供的数据传输方法,当电子设备运行有目标应用程序时,检测该目标应用程序的当前特征信息,检测电子设备的连接状态,当该电子设备通过蓝牙连接至音频播放设备,且目标应用程序在电子设备的后台运行时,将第二缓冲阈值作为缓冲节点的缓冲阈值,当电子设备通过蓝牙连接至音频播放设备,且目标应用程序在电子设备的前台运行时,将第一缓冲阈值作为缓冲节点的缓冲阈值,当该目标应用程序从前台运行切换至后台运行时,控制该缓冲节点的缓冲阈值从第一缓冲阈值增大到第二缓冲阈值,根据该缓冲阈值缓存电子设备传输给音频播放设备的音频数据,相较于第一种数据传输方法,本方法能够根据应用程序在前台运行或后台运行获取不同的缓冲阈值,以减少音频数据的延迟和降低cpu的功耗。

请参阅图4,图4示出了本申请再一个实施例提供的数据传输方法的流程示意图。下面将针对图4所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:

步骤s310:当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放。

步骤s320:检测所述电子设备的连接状态。

步骤s330:获取所述目标应用程序的类型。

作为一种方式,可以在电子设备预先对所有可以支持音频数据的播放的应用程序进行分类,并将分类后的各个应用程序对应在不同的类型下进行存储。在确定目标应用程序后,可以将所述目标应用程序与存储的各个应用程序进行一一匹配,以获取与该目标应用程序匹配的应用程序以及该应用程序所在的类型,从而可以获取所述目标应用程序的类型。

作为另一种方式,还可以通过识别所述目标应用程序所输出的音频数据的方式,获取该目标应用程序的类型。

请参阅图5,图5示出了本申请图4所示实施例提供的数据传输方法的步骤s330的流程示意图。下面将针对图5所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:

步骤s331:获取所述电子设备传输给所述音频播放设备的数据内容。

具体地,对电子设备传输给音频播放设备的数据内容进行识别,其中,通过对所述数据内容的识别,可以获取所述数据内容是语音信息或音乐信息;或者通过对所述数据内容的识别,获取该数据内容对应文本信息,基于该文本信息获取该数据内容的具体信息,例如,获取该数据内容为歌词,或交流语音。

步骤s332:基于所述数据内容获取所述目标应用程序的类型。

进一步对,基于该数据内容获取该目标应用程序的类型,可以理解的,当通过识别所述数据内容获取到该数据内容是语音信息时,则可以认为其对应的目标应用程序为通话类或语音类应用程序等;而当通过识别所述数据内容获取该数据内容是音乐信息时,则可以认为其对应的目标应用程序为音乐播放类应用程序等。

步骤s340:基于所述目标应用程序的类型确定所述缓冲节点的缓冲阈值。

进一步地,在本实施例中,所述目标应用程序的特征信息包括该目标应用程序的类型,在获取所述目标应用程序的类型后,可以基于该类型确定缓冲节点的缓冲阈值。

作为一种方式,所述电子设备预先设置并存储有映射关系表,记为预设映射关系表,其中,该预设映射关系表包括类型和缓冲阈值之间的映射关系,因此,在获取所述目标应用程序的类型后,基于该类型在所述预设映射关系表中可以查找该类型对应的缓冲阈值,则将所述缓冲阈值作为所述缓冲节点的缓冲阈值。

请参阅图6,图6示出了本申请图4所示实施例提供的数据传输方法的步骤s340的流程示意图。下面将针对图6所示的流程进行详细的阐述,所述方法具体可以包括以下步骤:

步骤s341:当所述类型为第一类型时,将所述第三缓冲阈值作为所述缓冲节点的缓冲阈值。

步骤s342:当所述类型为第二类型时,将所述第四缓冲阈值作为所述缓冲节点的缓冲阈值,其中,所述第一类型的即时性要求高于所述第二类型的即时性要求。

在本实施例中,所述缓冲阈值还包括第三缓冲阈值和第四缓冲阈值,且该第三缓冲阈值小于第四缓冲阈值,例如,该第三缓冲阈值为3k,该第四缓冲阈值为4k。

作为一种方式,当检测到该目标应用程序的类型为第一类型时,将所述第三缓冲阈值作为该缓冲节点的缓冲阈值,当检测到该目标应用程序的类型为即时性要求高于第一类型的即时性要求的第二类型时,则将大于所述第三缓冲阈值的第四缓冲阈值作为该缓冲节点的缓冲阈值。可以理解的,在本实施例中,当所述目标应用程序的即时性要求高时,如通话类应用程序、语音类应用程序、视频类应用程序以及视频播放类应用程序中的一种或几种,可以认为该类目标应用程序对于声音延迟比较敏感,因此,可以适当选择较小的第三缓冲阈值作为缓冲节点的缓冲阈值,可以提升各个缓冲节点将音频数据传输到下一节点的速率,以便所述音频数据尽快的传输至所述音频播放设备输出,减小音频数据的延迟。而当所述目标应用程序的即时性要求低时,如音乐播放类应用程序,可以认为该类应用程序对应声音延迟比较不敏感,因此,可以选择较大的第四缓冲阈值作为缓冲节点的缓冲阈值,可以提升该缓冲节点缓存的数据量的同时降低cpu的功耗。

进一步地,假设所述目标应用程序同时支持音乐播放、视频播放以及语音通话等,例如,当所述目标应用程序为微信、qq等,其中,可以理解的,视频播放以及语音通话对于即时性要求较高,而音乐播放对于即时性要求较低。作为一种方式,由于该目标应用程序包括有对于即时性要求较高的视频播放功能和语音通话功能,因此,即使所述目标应用程序同时包括有对于即时性要求较低的音乐播放功能,但是,为了减少该目标应用程序在进行音频播放时出现卡顿的情况,可以将所述目标应用程序划分为第一类型,即将所述目标应用程序划分为对即时性要求较高的类型,此时,所述目标应用程序可对应较小的第三缓冲阈值,以便音频数据可以尽快的传输至音频播放设备输出。

作为另一种方式,分别获取该目标应用程序进行音乐播放、视频播放以及语音通话的历史数据,具体地,可以分别获取所述目标应用程序在预设时间段内进行音乐播放、视频播放以及语音通话的次数,例如,分别获取所述目标应用程序在过去一个月内进行音乐播放、视频播放以及语音通话的次数,当然,该历史时间还可以为过去两个月,过去三个月等,在此不做限定。进一步地,基于该目标应用程序的历史数据对所述目标应用程序进行分类,例如,基于该目标应用程序进行音乐播放、视频播放以及语音通话的次数对该目标应用程序进行分类,其中,当该目标应用程序进行视频播放以及语音通话的次数远低于音乐播放的次数,可以认为该目标应用程序主要用于进行音乐播放,此时,可以将所述目标应用程序划分为第二类型,即将所述目标应用程序划分为对即时性要求较低的类型,此时,所述目标应用程序可对应较大的第四缓冲阈值,提升该缓冲节点缓存的数据量的同时降低cpu功耗;相反的,当该目标应用程序进行视频播放以及语音通话的次数与进行音乐播放的次数相当或远高于音乐播放的次数,此时,可以将所述目标应用程序划分为第一类型,即将所述目标应用程序划分为对即时性要求较高的类型,此时,所述目标应用程序可对应较小的第三缓冲阈值,以便音频数据可以尽快的传输至音频播放设备输出。

步骤s350:根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

本申请再一个实施例提供的数据传输方法,当电子设备运行有目标应用程序时,检测该目标应用程序的当前特征信息,检测电子设备的连接状态,获取目标应用程序的类型,基于该目标应用程序的类型获取电子设备将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,根据该缓冲阈值缓存电子设备传输给音频播放设备的音频数据,相较于第一种数据传输方法,本方法能够根据应用程序的类型获取不同的缓冲阈值,以满足不同应用程序对于即时性的需求。

请参阅图7,图7示出了本申请实施例提供的数据传输装置400的模块框图。该数据传输装置400应用于电子设备,下面将针对图7所示的框图进行阐述,所述数据传输装置400包括:特征信息检测模块410、连接状态检测模块420、缓冲阈值获取模块430以及音频数据缓存模块440,其中:

特征信息检测模块410,用于当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,其中,所述目标应用程序至少支持音频数据的播放。

连接状态检测模块420,用于检测所述电子设备的连接状态。

缓冲阈值获取模块430,用于当所述电子设备通过蓝牙连接至音频播放设备时,根据所述当前特征信息,确定将所述音频数据传输给所述音频播放设备的过程中所经过的缓冲节点的缓冲阈值,其中,当所述缓冲节点已经缓冲的音频数据达到所述缓冲阈值时,对所述音频数据进行处理。

进一步地,所述缓冲阈值包括第一缓冲阈值和第二缓冲阈值,所述第一缓冲阈值小于第二缓冲阈值,所述缓冲阈值获取模块430包括:缓冲阈值获取子模块和缓冲阈值调整子模块,其中:

缓冲阈值获取子模块,用于当所述目标应用程序在所述电子设备的后台运行时,将所述第二缓冲阈值作为所述缓冲节点的缓冲阈值。

所述缓冲阈值获取子模块,还用于当所述目标应用程序在所述电子设备的前台运行时,将所述第一缓冲阈值作为所述缓冲节点的缓冲阈值。

缓冲阈值调整子模块,用于当所述目标应用程序从所述前台运行切换至所述后台运行时,控制所述缓冲节点的缓冲阈值从所述第一缓冲阈值增大到所述第二缓冲阈值。

进一步地,所述缓冲阈值获取模块430还包括:类型获取子模块和缓冲阈值获取子模块,其中:

类型获取子模块,用于获取所述目标应用程序的类型。

进一步地,所述类型获取子模块包括:数据内容获取单元和内容获取单元,其中:

数据内容获取单元,用于获取所述电子设备传输给所述音频播放设备的数据内容。

类型获取单元,用于基于所述数据内容获取所述目标应用程序的类型。

缓冲阈值获取子模块,用于基于所述目标应用程序的确定获取所述缓冲节点的缓冲阈值。

进一步地,所述缓冲阈值还包括第三缓冲阈值和第四缓冲阈值,所述第三缓冲阈值小于所述第四缓冲阈值,所述缓冲阈值获取子模块,包括:缓冲阈值获取单元,其中:

缓冲阈值获取单元,用于根据预设映射关系表,确定所述类型对应的缓冲阈值为所述缓冲节点的缓冲阈值,其中,所述预设映射关系表中包括类型和缓冲阈值之间的映射关系。

缓冲阈值获取单元,还用于当所述类型为第一类型时,将所述第三缓冲阈值作为所述缓冲节点的缓冲阈值。

缓冲阈值获取单元,还用于当所述类型为第二类型时,将所述第四缓冲阈值作为所述缓冲节点的缓冲阈值,其中,所述第一类型的即时性要求高于所述第二类型的即时性要求。

音频数据缓存模块440,用于根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

本申请实施例提供的数据传输装置包括特征信息检测模块、连接状态检测模块、缓冲阈值获取模块以及音频数据缓存模块,其中,特性信息检测模块用于当所述电子设备运行有目标应用程序时,检测所述目标应用程序的当前特征信息,连接状态检测模块用于检测所述电子设备的连接状态,缓冲阈值获取模块用于当所述电子设备通过蓝牙连接至音频播放设备时,根据所述当前特征信息,确定将所述音频数据传输给所述音频播放设备的过程中所经过的缓冲节点的缓冲阈值,音频数据缓存模块用于根据所述缓冲阈值缓存所述电子设备传输给所述音频播放设备的所述音频数据,从而根据电子设备运行的应用程序的特征信息,获取将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。

请参阅图8,其示出了本申请实施例提供的一种电子设备100的结构框图。该电子设备100可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本申请中的电子设备100可以包括一个或多个如下部件:处理器110、存储器120、蓝牙模块130、wifi模块140以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。

处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器110可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。

存储器120可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。

蓝牙模块130用于实现电子设备与蓝牙设备之间的蓝牙连接,以及与蓝牙设备之间的数据交互。具体地,可以与蓝牙设备通过蓝牙协议5.0/4.2/4.1/2.1/2.0,也可以通过蓝牙低能耗技术(bluetoohlowenergy,ble)、蓝牙增强速率技术(enhanceddatarate,edr)或者蓝牙基本速率(baserate,br)等。其基本电路构成与wifi模块类似,也可以由功率放大器、无线收发器、收发切换器、低噪声放大器以及天线等组成。该蓝牙模块130可以使用第一通信频段,其中,该第一通信频段可以是2.4ghz。

wifi模块140用于实现与wifi接入点之间的连接,以及与wifi接入点之间的数据交互。具体地,可以与外设设备通过无线保真技术(wireless,fidelity,wifi)(如美国电气和电子工程师协会标准ieee802.10a,ieee802.11b,ieee802.11g和/或ieee802.11n)协议建立通信连接,则wifi模块可以包括功率放大器、无线收发器、收发切换器、低噪声放大器以及天线等。发送信号时,收发器本身会直接输出小功率的微弱的射频信号,送至功率放大器(poweramplifier,pa)进行功率放大,然后通过收发切换器(transmit/receiveswitch)经由天线(antenna)辐射至空间。接收信号时,天线会感应到空间中的电磁信号,通过切换器之后送至低噪声放大器(lownoiseamplifier,lna)进行放大,这样,放大后的信号就可以直接送给收发器进行处理,进行解调。该wifi模块140可以使用第一通信频段和第二通信频段,其中,第一通信频段可以是2.4ghz,第二通信频段可以是5ghz。

请参阅图9,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质500中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。

计算机可读存储介质500可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质500包括非易失性计算机可读介质(non-transitorycomputer-readablestoragemedium)。计算机可读存储介质500具有执行上述方法中的任何方法步骤的程序代码510的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码510可以例如以适当形式进行压缩。

综上所述,本申请实施例提供的数据传输方法、装置、电子设备以及存储介质,当电子设备运行有目标应用程序时,检测目标应用程序的当前特征信息,其中,该目标应用程序至少支持音频数据的播放,检测电子设备的连接状态,当电子设备通过蓝牙连接至音频播放设备时,根据当前特征信息,确定将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,其中,当缓冲节点已经缓冲的音频数据达到缓冲阈值时,对音频数据进行处理,根据该缓冲阈值缓存电子设备传输给音频播放设备的音频数据,从而根据电子设备运行的应用程序的特征信息,获取将音频数据传输给音频播放设备的过程中所经过的缓冲节点的缓冲阈值,以减少音频数据的延迟和增加数据缓冲的灵活性。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

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