CN104834623B - 音频播放方法及装置 - Google Patents

音频播放方法及装置 Download PDF

Info

Publication number
CN104834623B
CN104834623B CN201510209738.3A CN201510209738A CN104834623B CN 104834623 B CN104834623 B CN 104834623B CN 201510209738 A CN201510209738 A CN 201510209738A CN 104834623 B CN104834623 B CN 104834623B
Authority
CN
China
Prior art keywords
audio
source
usb
data
frequency decoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510209738.3A
Other languages
English (en)
Other versions
CN104834623A (zh
Inventor
王宇飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN201510209738.3A priority Critical patent/CN104834623B/zh
Publication of CN104834623A publication Critical patent/CN104834623A/zh
Application granted granted Critical
Publication of CN104834623B publication Critical patent/CN104834623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种音频播放方法及装置,属于音频播放技术领域。所述方法包括:通用串行总线USB数字音频解码器作为USB连接中的主设备与音频源建立所述USB连接;所述USB数字音频解码器接收所述音频源通过块传输模式发送的音频数据,所述块传输模式是USB数据传输模式中的一种;所述USB数字音频解码器生成时钟信号,并根据所述时钟信号控制所述音频数据的播放。本发明解决了需要在音频源中安装与USB解码器配套的驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;还解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。

Description

音频播放方法及装置
技术领域
本发明涉及音频播放技术领域,特别涉及一种音频播放方法及装置。
背景技术
由于智能设备的普及,越来越多的用户已经将个人娱乐放在了智能手机、平板电脑等智能设备上,而随着智能设备功能的增加和体积的缩小,音频回放性能便成了所有智能设备的短板。由于一些用户对音频回放的性能要求较高,此时不仅音频源的模拟音频输出失真较大,而且输出功率极为有限,因此,需要在音频源后接驳一个USB(UniversalSerial Bus,通用串行总线)解码器。
USB数据传输共有4种模式,分别是块传输(Bulk Transfer)模式、控制传输(Control Transfer)模式、中断传输(Interrupt Transfer)模式和同步传输(IsochronousTransfer)模式。块传输模式主要用于如大容量存储、MTP(Media Transfer Protocol,媒体传输协议)、主从机数据同步等,该模式的特点为数据分包传输、传输速度快、传输前有握手交互(包括确认ACK和未确认NAK信号)、有丢包重发机制、有数据校验机制,传输可靠。控制传输主要用于传输USB的配置信息,该模式的特点为传输速度慢、有握手交互、有数据重发和校验机制,传输可靠。中断传输模式主要用于HID(Human Interface Device,人机交互设备)等,如鼠标、键盘等,该模式的特点为传输速度慢、有握手交互、有数据重发和校验机制,传输可靠。同步传输模式主要用于音视频设备,如USB声卡、USB摄像头、视频采集卡等,该模式的特点为传输速度快、传输速率恒定、数据传输实时性高、数据根据时钟信号同步传输、没有握手交互、有一定的误码率,传输不可靠。
通常,USB解码器通过USB接口分别与音频源和耳机相连,此时,音频源作为主设备,USB解码器作为从设备,且音频源通过USB数据传输模式中的同步传输模式向USB解码器发送音频数据。具体地,音频源向USB解码器发送音频流数据和对应的时钟信号,USB解码器根据接收的时钟信号控制音频流数据的播放,该过程中数字音频信号将被转换为模拟音频信号。
由于同步传输模式没有握手交互,且传输不可靠,有一定的误码率,因此USB解码器收到的音频流数据中会有一部分的错误数据。此外,需要在音频源中安装与USB解码器配套的驱动程序,以保证USB解码器的正常工作。
发明内容
为了解决采用同步传输模式传输音频数据流和时钟信号时,无法重新传输出错的音频流数据的问题和需要在音频源中安装与USB解码器配套的驱动程序的问题,本发明实施例提供了一种音频播放方法及装置。所述技术方案如下:
第一方面,提供了一种音频播放方法,所述方法包括:
通用串行总线USB数字音频解码器作为USB连接中的主设备与音频源建立所述USB连接;
所述USB数字音频解码器接收所述音频源通过块传输模式发送的音频数据,所述块传输模式是USB数据传输模式中的一种;
所述USB数字音频解码器生成时钟信号,并根据所述时钟信号控制所述音频数据的播放。
第二方面,提供了一种音频播放方法,所述方法包括:
音频源作为通用串行总线USB连接中的从设备与USB数字音频解码器建立所述USB连接;
所述音频源获取音频数据;
所述音频源通过块传输模式将所述音频数据发送给所述USB数字音频解码器,所述块传输模式是USB数据传输模式中的一种,所述USB数字音频解码器用于生成时钟信号,并根据所述时钟信号控制所述音频数据的播放。
第三方面,提供了一种音频播放装置,用于作为通用串行总线USB连接中的主设备的USB数字音频解码器中,所述装置包括:
连接建立模块,用于与音频源建立所述USB连接;
数据接收模块,用于接收所述音频源通过块传输模式发送的音频数据,所述块传输模式是USB数据传输模式中的一种;
音频播放模块,用于生成时钟信号,并根据所述时钟信号控制所述数据接收模块接收的所述音频数据的播放。
第四方面,提供了一种音频播放装置,用于作为通用串行总线USB连接中的从设备的音频源中,所述装置包括:
连接建立模块,用于与USB数字音频解码器建立所述USB连接;
数据获取模块,用于获取音频数据;
第一发送模块,用于通过块传输模式将所述数据获取模块获取的所述音频数据发送给所述USB数字音频解码器,所述块传输模式是USB数据传输模式中的一种,所述USB数字音频解码器用于生成时钟信号,并根据所述时钟信号控制所述音频数据的播放。
本发明实施例提供的技术方案的有益效果是:
通过作为USB连接中的主设备的USB数字音频解码器与音频源建立USB连接;接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明各个实施例涉及的音频播放方法的实施场景图;
图2是本发明一个实施例提供的音频播放方法的方法流程图;
图3是本发明一个实施例提供的音频播放方法的方法流程图;
图4是本发明另一实施例提供的音频播放方法的方法流程图;
图5是本发明一个实施例提供的音频播放装置的结构框图;
图6是本发明再一实施例提供的音频播放装置的结构框图;
图7是本发明一个实施例提供的音频播放装置的结构框图;
图8是本发明再一实施例提供的音频播放装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明各个实施例所涉及的音频播放方法的实施场景图,图1的上侧图中包括音频源110、USB数字音频解码器120和发声设备130。音频源110可以是具有音频播放能力且能够作为USB连接中的从设备的设备,比如,音频源110可以是智能电视、智能手机或者平板电脑或DVD(Digital Video Disc,数字化视频光碟)播放器或MP3(Moving Picture Experts Group Audio Layer 3,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer 4,动态影像专家压缩标准音频层面4)播放器等等。USB数字音频解码器120是具有USB接口且能够处理数字音频的设备。发声设备130可以是耳机、音箱等,当发声设备130是耳机时,可以是头戴式耳机、入耳式耳机、耳挂式耳机等,本发明不限定耳机的类型。其中,音频源110通过USB数据线与USB数字音频解码器120中的USB接口121相连,发声设备130通过接口插入到USB数字音频解码器120中的接口122。
图1的下侧图中包括通过USB接口相连的音频源110和USB数字音频解码器120,音频源110可以是具有音频播放能力且能够作为USB连接中的从设备的设备,比如,音频源110可以是智能电视、智能手机或者平板电脑或DVD播放器或MP3播放器、MP4播放器等等。USB数字音频解码器120是具有USB接口和扬声器且能够处理数字音频的设备。此时,USB数字音频解码器120可以直接通过扬声器播放音频源110发送的音频数据。其中,音频源110通过USB数据线与USB数字音频解码器120中的USB接口121相连。
或者,USB数字音频解码器120可以既包括连接发声设备130的接口122,也可以包括扬声器,此时,用户可以选择使用发声设备130播放音频数据,也可以选择使用扬声器播放音频数据。
需要说明的是,由于本发明中的USB数字音频解码器120作为USB连接中的主设备,且音频源110作为USB连接中的从设备,因此,USB数字音频解码器120还可以根据主设备的身份为作为从设备的音频源110提供其他服务,本发明不限定其他服务的具体内容。在一种可能的场景中,主设备可以给从设备供电,此时,可以将USB数字音频解码器120与音频源110的充电器相结合。这样,USB数字音频解码器120在与音频源110相连后,既可以播放音频源110发送的音频数据,也可以给音频源110供电。
请参考图2,其示出了本发明一个实施例提供的音频播放方法的方法流程图,该音频播放方法可以应用于USB数字音频解码器中。该音频播放方法,包括:
步骤201,USB数字音频解码器作为USB连接中的主设备与音频源建立USB连接。
步骤202,USB数字音频解码器接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种。
步骤203,USB数字音频解码器生成时钟信号,并根据时钟信号控制音频数据的播放。
综上所述,本发明实施例提供的音频播放方法,通过作为USB连接中的主设备的USB数字音频解码器与音频源建立USB连接;接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
请参考图3,其示出了本发明一个实施例提供的音频播放方法的方法流程图,该音频播放方法可以应用于音频源中,该音频源可以是智能电视、智能手机或者平板电脑等等。该音频播放方法,包括:
步骤301,音频源作为USB连接中的从设备与USB数字音频解码器建立USB连接。
步骤302,音频源获取音频数据。
步骤303,音频源通过块传输模式将音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,该USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放。
综上所述,本发明实施例提供的音频播放方法,通过作为USB连接中的从设备的音频源与USB数字音频解码器建立USB连接,通过块传输模式将音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,该USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
请参考图4,其示出了本发明另一实施例提供的音频播放方法的方法流程图,该音频播放方法可以应用于包括USB数字音频解码器和音频源的系统中。该音频播放方法,包括:
步骤401,USB数字音频解码器与音频源之间建立USB连接。
USB数字音频解码器与音频源之间建立USB连接,从USB数字音频解码器侧来说,是USB数字音频解码器作为USB连接中的主设备与音频源建立USB连接,从音频源侧来说,是音频源作为USB连接中的从设备与USB数字音频解码器建立USB连接。
具体地,用户可以将USB数据线的两个接口分别插入USB数字音频解码器和音频源中,使得USB数字音频解码器和音频源之间通过USB数据线相连,再基于USB数据线在USB数字音频解码器和音频源之间建立USB连接。
本实施例以音频源为Android(安卓)操作系统和iOS(苹果操作系统)为例,对USB数字音频解码器和音频源之间的USB连接建立过程进行说明,则USB数字音频解码器作为USB连接中的主设备与音频源建立USB连接,包括:
1)当音频源是Android操作系统时,作为主设备的USB数字音频解码器向音频源发送模式进入指令,模式进入指令用于指示音频源进入AoA(Android Open Accessory,安卓开放配件)模式,USB数字音频解码器将AoA模式所对应的原始数据通道确定为USB数字音频解码器与音频源之间的数据传输通道;
2)当音频源是iOS时,作为主设备的USB数字音频解码器通过基于USB的TCP(Transmission Control Protocol,传输控制协议)隧道Tunnel连接音频源中被监听的预定端口,USB数字音频解码器将TCP Tunnel确定为USB数字音频解码器与音频源之间的数据传输通道。
对应的,音频源作为USB连接中的从设备与USB数字音频解码器建立USB连接,包括:
1)当音频源是Android操作系统时,作为从设备的音频源接收USB数字音频解码器发送的模式进入指令,根据模式进入指令进入AoA模式,将AoA模式所对应的原始数据通道确定为USB数字音频解码器与音频源之间的数据传输通道;
2)当音频源是iOS时,作为从设备的音频源监听预定端口,通过预定端口与USB数字音频解码器建立基于USB的TCP Tunnel的连接,将TCP Tunnel确定为USB数字音频解码器与音频源之间的数据传输通道。
第一,当音频源是Android操作系统时,USB数字音频解码器确定本端是USB连接中的主设备,向音频源发送模式进入指令,音频源确定本端是USB连接中的从设备,根据该模式进入指令进入AoA模式。进入AoA模式的音频源自动启动本端中安装的且与USB数字音频解码器配套使用的应用程序,此时USB数字音频解码器和该应用程序可以在与AoA模式对应的原始数据通道上进行数据传输。即,将该原始数据通道确定为USB数字音频解码器与音频源之间的数据传输通道。
AoA又名ADK(Android Accessory Development Kit,安卓配件开发平台)。本实施例中的AoA模式是基于AoA协议(Android Open Accessory Protocol,安卓开放配件协议)的模式。需要说明的是,目前AoA协议是2.0版本的,且本实施例提供的AoA模式兼容目前以及未来的所有版本的AoA协议。
第二,当音频源是iOS时,音频源确定本端是USB连接中的从设备,先开启本端安装的且与USB数字音频解码器配套使用的应用程序,控制该应用程序使用TCP/IP(InternetProtocol,因特网协议)监听预定端口。USB数字音频解码器确定本端是USB连接中的主设备,通过块传输模式向音频源发送主机说明符,该主机说明符中包括USB数字音频解码器的标识、苹果设备通讯协议头和协议版本等信息,USB数字音频解码器的标识包括PID(Product ID,产品标识)和VID(Vender ID,供应商标识)中的至少一种。苹果设备通讯协议头和协议版本可以从苹果公司取得认证或使用网络提供的开源程序,如libiphone。
音频源根据主机说明符验证出USB数字音频解码器是安全的且支持该通讯协议时,USB数字音频解码器再使用基于USB的TCP Tunnel连接音频源中被监听的预定端口,USB数字音频解码器和该应用程序可以在TCP Tunnel上进行数据传输。即,将TCP Tunnel确定为USB数字音频解码器与音频源之间的数据传输通道。其中,基于USB的TCP Tunnel可以使用苹果公司提供的SDK(Software Development Kit,软件开发包)或使用网络提供的开源程序,如libiphone。
需要说明的是,相关技术中,USB数字音频解码器将本端确定为从设备,音频源将本端确定为主设备;而本实施例中,USB数字音频解码器需要将本端确定为主设备,音频源需要将本端确定为从设备,以便于后续的数据通信。此时,作为从设备的音频源中不需要安装与USB数字音频解码器配套的驱动程序,提高了USB数字音频解码器的兼容性和易用性。
由于将本端确定为主设备还是从设备是由USB接口中的标识ID端的电平值决定的,即,当USB接口中的ID端为高电平时,确定本端为从设备,当USB接口中的ID端口为低电平时,确定本端为主设备,因此,本实施例中的USB数据线中ID端口的电平值与相关技术中USB数据线中ID端口的电平值相反。
为了便于理解,本实施例以插入音频源中的USB接口为第一接口,插入USB数字音频解码器中的USB接口为第二接口为例进行说明,则相关技术中,第一接口中ID端的电平值为低电平,第二接口中ID端的电平值为高电平;而本实施例中,第一接口中ID端的电平值为高电平,第二接口中ID端的电平值为低电平。
步骤402,音频源获取音频数据。
音频数据是音频片段中的数据,比如,音频片段是一首歌曲、一段语音等等。
在实际使用时,音频源可以将各个音频片段的信息显示给用户,用户从中选择中想要播放的音频片段,音频源再从选择的音频片段中获取音频数据。
步骤403,音频源通过块传输模式将音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种。
音频源将音频数据封装成数据包后,通过块传输模式发送给USB数字音频解码器。其中,USB数字音频解码器会对块传输模式传输的音频数据进行校验,并在发现音频数据出错时,要求音频源重新发送音频数据,从而解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频数据的发送准确性的效果。
步骤404,USB数字音频解码器接收音频源通过块传输模式发送的音频数据。
由于USB数字音频解码器需要对接收到的音频数据进行缓存,因此,在接收音频数据之前,USB数字音频解码器需要预先设置总存储空间值,再根据该总存储空间值设置缓存。其中,当总存储空间值太小时,播放的音频数据可能不连续,影响播放流畅性。通常,将总存储空间值设置为256K。
由于缓存的音频数据所占用的存储空间值不能超过总存储空间值,因此,USB数字音频解码器还需要获取缓存的剩余存储空间值,并将该剩余存储空间值通知给音频源,音频源再根据该剩余存储空间值控制剩余的音频数据的发送。
具体地,在USB数字音频解码器接收音频源通过块传输模式发送的音频数据之后,还包括:
1)USB数字音频解码器对音频数据进行缓存;
2)在音频数据所占用的存储空间值等于缓存的总存储空间值后,USB数字音频解码器向音频源发送第一通知消息,第一通知消息用于指示音频源暂停发送剩余的音频数据;或者,USB数字音频解码器接收音频源发送的中断信号,中断信号用于指示USB数字音频解码器等待接收音频源将要发送的信息,USB数字音频解码器接收音频源发送的空间值查询指令,根据空间值查询指令将缓存的剩余存储空间值发送给音频源,音频源用于根据剩余存储空间值确定是否继续发送剩余的音频数据。
本实施例提供了两种USB数字音频解码器向音频源通知剩余存储空间值的实现方式,具体如下:
在第一种实现方式中,USB数字音频解码器可以主动将剩余存储空间值通知给音频源。此时,音频源接收USB数字音频解码器发送的第一通知消息,根据第一通知消息暂停发送剩余的音频数据,第一通知消息是USB数字音频解码器在确定音频数据所占用的存储空间值等于缓存的总存储空间值后发送的。
具体地,USB数字音频解码器统计剩余存储空间值,当剩余存储空间值为0或小于一个数据包的长度时,确定缓存已满,此时向音频源发送第一通知消息,音频源根据第一通知消息暂停发送剩余的音频数据。
在第二种实现方式中,音频源可以主动向USB数字音频解码器查询剩余存储空间值。此时,音频源向USB数字音频解码器发送中断信号,再向USB数字音频解码器发送空间值查询指令,接收USB数字音频解码器根据空间值查询指令发送的缓存的剩余存储空间值,根据剩余存储空间值确定是否继续发送剩余的音频数据,中断信号用于指示USB数字音频解码器等待接收音频源将要发送的信息。
具体地,音频源可以每隔预定时间间隔或每发送预定个数数据包后,主动向USB数字音频解码器发送中断信号,USB数字音频解码器在接收到中断信号后,确定音频源将要发送信息,此时等待接收音频源将要发送的信息;音频源再向USB数字音频解码器发送空间值查询指令,USB数字音频解码器根据空间值查询指令统计剩余存储空间值,将剩余存储空间值发送给音频源。当音频源根据剩余存储空间值确定缓存未满时,继续向USB数字音频解码器发送剩余的音频数据;当音频源根据剩余存储空间值确定缓存已满时,暂停向USB数字音频解码器发送剩余的音频数据。
步骤405,USB数字音频解码器生成时钟信号,并根据时钟信号控制音频数据的播放。
USB数字音频解码器可以通过本端的时钟模块生成时钟信号,再根据时钟信号控制音频数据的播放。其中,USB数字音频解码器可以在启动时开始调用时钟模块生成时钟信号,当缓存中的音频数据为空时,无音频输出;当缓存中的音频数据非空时,有音频输出。由于缓存中的音频数据为空时,持续生成时钟信号会导致资源浪费,因此,优选的,USB数字音频解码器可以在接收到音频数据时开始调用时钟模块生成时钟信号。
需要说明的是,USB数字音频解码器可以在缓存已满后,开始播放音频数据,由于这样导致的播放延时较长,因此,USB数字音频解码器还可以在缓存中的音频数据的数据量达到预定阈值时开始播放音频数据,该预定阈值小于总存储空间值,以减少播放延时。
具体地,根据时钟信号控制音频数据的播放,包括:
1)当音频数据是音频源对封装格式的音频片段中的部分片段进行解码后发送的PCM(Pulse Code Modulation,脉冲编码调制)格式或DSD(Direct Stream Digital,直接比特流数字)格式的音频数据时,USB数字音频解码器接收音频源发送的配置参数,根据配置参数和时钟信号控制音频数据的播放,配置参数位于封装格式的音频片段中;
2)当音频数据是基于PCM格式或DSD格式的音频数据进行封装得到的封装格式的音频片段中的部分片段时,USB数字音频解码器从音频数据中读取配置参数,根据配置参数和时钟信号控制音频数据的播放。
其中,封装格式的音频片段是对PCM格式或DSD格式的音频数据进行封装得到的,比如,封装格式可以是MP3格式、WMA(Windows Media Audio,windows媒体音频)格式等。封装格式的音频片段中还包括播放该音频片段所需要的配置参数,比如,采样率、频道、频率等,本实施例不对配置参数作限定。
在播放音频片段时,首先需要将封装格式的音频片段转换为PCM格式或DSD格式的音频数据,USB数字音频解码器再对PCM格式或DSD格式的音频数据进行播放。
在第一种播放方式中,音频源对封装格式的音频片段中的部分片段进行解码,此时,音频源需要将解码得到的PCM格式或DSD格式的音频数据以及配置参数发送给USB数字音频解码器,USB数字音频解码器根据时钟信号和配置参数控制音频数据的播放。
对应的,该方法还包括:
当音频数据是音频源对封装格式的音频片段中的部分进行解码后发送的PCM格式或DSD格式的音频数据时,音频源从封装格式的音频片段中获取配置参数,向USB数字音频解码器发送配置参数,USB数字音频解码器用于根据配置参数和时钟信号控制音频数据的播放。
由于不同封装格式对应于不同的配置参数,因此,音频源可以在首次发送一种封装格式的音频片段时,获取该种封装格式对应的配置参数,将该配置参数发送给USB数字音频解码器。即,音频源从封装格式的音频片段中获取配置参数,包括:在首次发送封装格式的音频片段中的音频数据时,音频源从封装格式的音频片段中获取配置参数。
比如,音频片段是一首MP3格式的歌曲,音频源可以在用户点击播放该歌曲时,获取MP3格式的配置参数,将该配置参数和对该歌曲的片段解码得到的PCM格式或DSD格式的音频数据发送给USB数字音频解码器,此后,USB数字音频解码器可以根据该配置参数对后续接收到的且属于该歌曲的音频数据进行播放。
由于音频源发送的音频数据可能属于不同封装格式的音频片段,因此,需要多次发送配置参数,导致资源浪费,因此,音频源还可以将本端存储的所有音频片段转换为统一的预定封装格式的音频片段,此时,音频源只需要在首次发送其中任意一个预定封装格式的音频片段中的音频数据时发送配置参数。即,音频源从封装格式的音频片段中获取配置参数,包括:音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,音频源从预定封装格式的音频片段中获取配置参数。
比如,音频源存储的音频片段包括MP3格式的歌曲和WMA格式的歌曲,可以将所有WMA格式的歌曲转换为MP3格式的歌曲,音频源可以在用户点击播放任一歌曲时,获取MP3格式的配置参数,将该配置参数和对该歌曲的片段解码得到的PCM格式或DSD格式的音频数据发送给USB数字音频解码器,此后,USB数字音频解码器可以根据该配置参数对后续接收到的且属于任一歌曲的音频数据进行播放。
需要说明的是,音频源可以将配置参数和音频数据一起发送给USB数字音频解码器,或者,音频源可以在发送音频数据之前,将配置参数发送给USB数字音频解码器,或者,音频源还可以通过独立于音频数据传输通道的控制数据传输通道发送配置参数,本实施例不限定配置参数的发送时机以及发送方式。
在第二种播放方式中,音频源直接将封装格式的音频片段中的部分音频片段发送给USB数字音频解码器,USB数字音频解码器对该部分的音频片段进行解码,得到PCM格式或DSD格式的音频数据,再读取该部分的音频片段中的配置参数,根据时钟信号和配置参数控制音频数据的播放。
步骤406,USB数字音频解码器对缓存中已经播放部分的音频数据进行删除;向音频源发送携带有缓存的剩余存储空间值的第二通知消息。
本实施例中,USB数字音频解码器可以在播放完缓存中的音频数据后,通知音频源继续发送剩余的音频数据,由于音频源发送剩余的音频数据会产生时延,因此,这种播放方式可能会影响音频播放的流畅性。优选的,USB数字音频解码器还可以实时对缓存中已经播放部分的音频数据进行删除,并通知音频源发送剩余的音频数据,从而保证缓存中一直缓存有未播放的音频数据,从而保证USB数字音频解码器持续播放缓存中的音频数据。
由于音频源发送的剩余的音频数据所占用的存储空间值需要不超过缓存的剩余存储空间值,因此,USB数字音频解码器还需要统计缓存的剩余存储空间值,并将该剩余存储空间值携带在第二通知消息中发送给音频源。
步骤407,音频源接收USB数字音频解码器发送的携带有缓存的剩余存储空间值的第二通知消息,继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过剩余存储空间值。
比如,第二通知消息中携带的剩余存储空间值为128k,此时,音频源可以从剩余的音频数据中获取数据量小于或等于128k的音频数据,将该音频数据发送给USB数字音频解码器。
综上所述,本发明实施例提供的音频播放方法,通过作为USB连接中的主设备的USB数字音频解码器与音频源建立USB连接;接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
另外,通过将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从预定封装格式的音频片段中获取配置参数,可以将音频片段统一转换成预定封装格式的音频片段,这样,只需要在首次发送该预定封装格式的音频片段中的音频数据时发送配置参数,USB数字音频解码器可以根据该配置参数配置所播放的所有音频数据,解决了音频片段的封装格式不同时,需要多次发送配置参数的问题,达到了节省传输资源的效果。
另外,通过对缓存中已经播放部分的音频数据进行删除;向音频源发送携带有缓存的剩余存储空间值的第二通知消息,使得音频源继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过剩余存储空间值,可以实时发送剩余的音频数据来替换已经播放部分的音频数据,保证了音频播放过程中的流畅性。
请参考图5,其示出了本发明一个实施例提供的音频播放装置的结构框图,该音频播放装置可以应用于作为USB连接中的主设备的USB数字音频解码器中。该音频播放装置,包括:
连接建立模块510,用于与音频源建立USB连接;
数据接收模块520,用于接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;
音频播放模块530,用于生成时钟信号,并根据时钟信号控制数据接收模块520接收的音频数据的播放。
综上所述,本发明实施例提供的音频播放装置,通过作为USB连接中的主设备的USB数字音频解码器与音频源建立USB连接;接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
请参考图6,其示出了本发明再一实施例提供的音频播放装置的结构框图,该音频播放装置可以应用于作为USB连接中的主设备的USB数字音频解码器中。该音频播放装置,包括:
连接建立模块610,用于与音频源建立USB连接;
数据接收模块620,用于接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;
音频播放模块630,用于生成时钟信号,并根据时钟信号控制数据接收模块620接收的音频数据的播放。
可选的,该装置还包括:
数据缓存模块640,用于在数据接收模块620接收音频源通过块传输模式发送的音频数据之后,对音频数据进行缓存;
缓存控制模块650,用于在音频数据所占用的存储空间值等于缓存的总存储空间值后,向音频源发送第一通知消息,第一通知消息用于指示音频源暂停发送剩余的音频数据;或者,接收音频源发送的中断信号,中断信号用于指示USB数字音频解码器等待接收音频源将要发送的信息,接收音频源发送的空间值查询指令,根据空间值查询指令将缓存的剩余存储空间值发送给音频源,音频源用于根据剩余存储空间值确定是否继续发送剩余的音频数据。
可选的,该装置还包括:
数据删除模块660,用于在音频播放模块630根据时钟信号控制音频数据的播放之后,对缓存中已经播放部分的音频数据进行删除;
消息通知模块670,用于向音频源发送携带有缓存的剩余存储空间值的第二通知消息,第二通知消息用于指示音频源继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过剩余存储空间值。
可选的,音频播放模块630,包括:
第一播放单元631,用于当音频数据是音频源对封装格式的音频片段中的部分片段进行解码后发送的PCM格式或DSD格式的音频数据时,接收音频源发送的配置参数,根据配置参数和时钟信号控制音频数据的播放,配置参数位于封装格式的音频片段中;
第二播放单元632,用于当音频数据是基于PCM格式或DSD格式的音频数据进行封装得到的封装格式的音频片段中的部分片段时,从音频数据中读取配置参数,根据配置参数和时钟信号控制音频数据的播放。
可选的,配置参数是音频源首次发送封装格式的音频片段中的音频数据时,从封装格式的音频片段中获取到的,或者,
配置参数是音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从预定封装格式的音频片段中获取到的。
可选的,连接建立模块610,包括:
第一建立单元611,用于当音频源是Android操作系统时,向音频源发送模式进入指令,模式进入指令用于指示音频源进入AoA模式,USB数字音频解码器将AoA模式所对应的原始数据通道确定为USB数字音频解码器与音频源之间的数据传输通道;
第二建立单元612,用于当音频源是iOS时,通过基于USB的TCP Tunnel连接音频源中被监听的预定端口,USB数字音频解码器将TCP Tunnel确定为USB数字音频解码器与音频源之间的数据传输通道。
综上所述,本发明实施例提供的音频播放装置,通过作为USB连接中的主设备的USB数字音频解码器与音频源建立USB连接;接收音频源通过块传输模式发送的音频数据,块传输模式是USB数据传输模式中的一种;生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
另外,配置参数是音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从预定封装格式的音频片段中获取到的,可以将音频片段统一转换成预定封装格式的音频片段,这样,只需要在首次发送该预定封装格式的音频片段中的音频数据时发送配置参数,USB数字音频解码器可以根据该配置参数配置所播放的所有音频数据,解决了音频片段的封装格式不同时,需要多次发送配置参数的问题,达到了节省传输资源的效果。
另外,通过对缓存中已经播放部分的音频数据进行删除;向音频源发送携带有缓存的剩余存储空间值的第二通知消息,使得音频源继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过剩余存储空间值,可以实时发送剩余的音频数据来替换已经播放部分的音频数据,保证了音频播放过程中的流畅性。
请参考图7,其示出了本发明一个实施例提供的音频播放装置的结构框图,该音频播放装置可以应用于作为USB连接中的从设备的音频源中。该音频播放装置,包括:
连接建立模块710,用于与USB数字音频解码器建立USB连接;
数据获取模块720,用于获取音频数据;
第一发送模块730,用于通过块传输模式将数据获取模块720获取的音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放。
综上所述,本发明实施例提供的音频播放装置,通过作为USB连接中的从设备的音频源与USB数字音频解码器建立USB连接,通过块传输模式将音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,该USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
请参考图8,其示出了本发明再一实施例提供的音频播放装置的结构框图,该音频播放装置可以应用于作为USB连接中的从设备的音频源中。该音频播放装置,包括:
连接建立模块810,用于与USB数字音频解码器建立USB连接;
数据获取模块820,用于获取音频数据;
第一发送模块830,用于通过块传输模式将数据获取模块820获取的音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放。
可选的,该装置还包括:
第一控制模块840,用于在第一发送模块830通过块传输模式将音频数据发送给USB数字音频解码器之后,接收USB数字音频解码器发送的第一通知消息,根据第一通知消息暂停发送剩余的音频数据,第一通知消息是USB数字音频解码器在确定音频数据所占用的存储空间值等于缓存的总存储空间值后发送的;或者,
第二控制模块850,用于在第一发送模块830通过块传输模式将音频数据发送给USB数字音频解码器之后,向USB数字音频解码器发送中断信号,再向USB数字音频解码器发送空间值查询指令,接收USB数字音频解码器根据空间值查询指令发送的缓存的剩余存储空间值,根据剩余存储空间值确定是否继续发送剩余的音频数据,中断信号用于指示USB数字音频解码器等待接收音频源将要发送的信息。
可选的,该装置还包括:
消息接收模块860,用于在第一发送模块830通过块传输模式将音频数据发送给USB数字音频解码器之后,接收USB数字音频解码器发送的携带有缓存的剩余存储空间值的第二通知消息,第二通知消息是USB数字音频解码器对缓存中已经播放部分的音频数据进行删除后发送的;
第二发送模块870,用于继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过消息接收模块接收的剩余存储空间值。
可选的,该装置还包括:
参数配置模块880,用于当音频数据是音频源对封装格式的音频片段中的部分进行解码后发送的PCM格式或DSD格式的音频数据时,从封装格式的音频片段中获取配置参数,向USB数字音频解码器发送配置参数,USB数字音频解码器用于根据配置参数和时钟信号控制音频数据的播放。
可选的,参数配置模块880,包括:
第一获取单元881,用于在首次发送封装格式的音频片段中的音频数据时,从封装格式的音频片段中获取配置参数;或者,
第二获取单元882,用于将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从预定封装格式的音频片段中获取配置参数。
可选的,连接建立模块810,包括:
第一建立单元811,用于当音频源是Android操作系统时,接收USB数字音频解码器发送的模式进入指令,根据模式进入指令进入AoA模式,将AoA模式所对应的原始数据通道确定为USB数字音频解码器与音频源之间的数据传输通道;
第二建立单元812,用于当音频源是iOS时,监听预定端口,通过预定端口与USB数字音频解码器建立基于USB的TCP Tunnel的连接,将TCP Tunnel确定为USB数字音频解码器与音频源之间的数据传输通道。
综上所述,本发明实施例提供的音频播放装置,通过作为USB连接中的从设备的音频源与USB数字音频解码器建立USB连接,通过块传输模式将音频数据发送给USB数字音频解码器,块传输模式是USB数据传输模式中的一种,该USB数字音频解码器用于生成时钟信号,并根据时钟信号控制音频数据的播放,由于USB数字音频解码器作为USB连接中的主设备时,不需要在音频源中安装与USB解码器配套的驱动程序,因此,解决了需要在音频源中安装驱动程序的问题,达到了提高USB数字音频解码器的兼容性和易用性的效果;另外,由于USB数字音频解码器生成时钟信号,当音频源发送的音频数据出错时,音频源可以重新发送音频数据,USB数字音频解码器在接收到正确的音频数据后再生成时钟信号,从而根据时钟信号控制该正确的音频数据的播放,解决了采用同步传输模式传输音频流数据和时钟信号时,无法重新传输出错的音频流数据的问题,达到了提高音频播放的准确性的效果。
另外,配置参数是音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从预定封装格式的音频片段中获取到的,可以将音频片段统一转换成预定封装格式的音频片段,这样,只需要在首次发送该预定封装格式的音频片段中的音频数据时发送配置参数,USB数字音频解码器可以根据该配置参数配置所播放的所有音频数据,解决了音频片段的封装格式不同时,需要多次发送配置参数的问题,达到了节省传输资源的效果。
另外,通过接收USB数字音频解码器发送的携带有缓存的剩余存储空间值的第二通知消息,继续通过块传输模式向USB数字音频解码器发送剩余的音频数据,且所发送的剩余的音频数据所占用的存储空间值不超过剩余存储空间值,可以实时发送剩余的音频数据来替换已经播放部分的音频数据,保证了音频播放过程中的流畅性。
需要说明的是:上述实施例提供的音频播放装置在进行音频播放时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将音频播放装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的音频播放装置与音频播放方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (24)

1.一种音频播放方法,其特征在于,所述方法包括:
通用串行总线USB数字音频解码器作为USB连接中的主设备与音频源建立所述USB连接,所述音频源是具有音频播放能力且能够作为USB连接中的从设备的设备,所述USB数字音频解码器和所述音频源之间通过USB数据线相连,所述USB数据线的两个接口分别插入所述USB数字音频解码器和所述音频源中,所述音频源中无需安装与所述USB数字音频解码器配套的驱动程序;
所述USB数字音频解码器接收所述音频源通过块传输模式发送的音频数据,所述块传输模式是USB数据传输模式中的一种;
所述USB数字音频解码器对所述音频数据进行校验,当所述音频数据出错时,要求所述音频源重新发送音频数据;
所述USB数字音频解码器在接收到正确的音频数据后生成时钟信号,并根据所述时钟信号控制所述正确的音频数据的播放。
2.根据权利要求1所述的方法,其特征在于,在所述USB数字音频解码器接收所述音频源通过块传输模式发送的音频数据之后,还包括:
所述USB数字音频解码器对所述音频数据进行缓存;
在所述音频数据所占用的存储空间值等于所述缓存的总存储空间值后,所述USB数字音频解码器向所述音频源发送第一通知消息,所述第一通知消息用于指示所述音频源暂停发送剩余的音频数据;或者,所述USB数字音频解码器接收所述音频源发送的中断信号,所述中断信号用于指示所述USB数字音频解码器等待接收所述音频源将要发送的信息,所述USB数字音频解码器接收所述音频源发送的空间值查询指令,根据所述空间值查询指令将所述缓存的剩余存储空间值发送给所述音频源,所述音频源用于根据所述剩余存储空间值确定是否继续发送剩余的音频数据。
3.根据权利要求2所述的方法,其特征在于,在所述根据所述时钟信号控制所述音频数据的播放之后,还包括:
所述USB数字音频解码器对所述缓存中已经播放部分的音频数据进行删除;
所述USB数字音频解码器向所述音频源发送携带有所述缓存的剩余存储空间值的第二通知消息,所述第二通知消息用于指示所述音频源继续通过所述块传输模式向所述USB数字音频解码器发送所述剩余的音频数据,且所发送的所述剩余的音频数据所占用的存储空间值不超过所述剩余存储空间值。
4.根据权利要求1所述的方法,其特征在于,所述根据所述时钟信号控制所述音频数据的播放,包括:
当所述音频数据是所述音频源对封装格式的音频片段中的部分片段进行解码后发送的脉冲编码调制PCM格式或直接比特流数字DSD格式的音频数据时,所述USB数字音频解码器接收所述音频源发送的配置参数,根据所述配置参数和所述时钟信号控制所述音频数据的播放,所述配置参数位于所述封装格式的音频片段中;
当所述音频数据是基于PCM格式或DSD格式的音频数据进行封装得到的封装格式的音频片段中的部分片段时,所述USB数字音频解码器从所述音频数据中读取所述配置参数,根据所述配置参数和所述时钟信号控制所述音频数据的播放。
5.根据权利要求4所述的方法,其特征在于,
所述配置参数是所述音频源首次发送所述封装格式的音频片段中的音频数据时,从所述封装格式的音频片段中获取到的,或者,
所述配置参数是所述音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从所述预定封装格式的音频片段中获取到的。
6.根据权利要求1至5任一所述的方法,其特征在于,所述通用串行总线USB数字音频解码器作为USB连接中的主设备与音频源建立所述USB连接,包括:
当所述音频源是安卓Android操作系统时,作为主设备的所述USB数字音频解码器向所述音频源发送模式进入指令,所述模式进入指令用于指示所述音频源进入安卓开放配件AoA模式,所述USB数字音频解码器将所述AoA模式所对应的原始数据通道确定为所述USB数字音频解码器与所述音频源之间的数据传输通道;
当所述音频源是苹果操作系统iOS时,作为主设备的所述USB数字音频解码器通过基于USB的传输控制协议隧道TCP Tunnel连接所述音频源中被监听的预定端口,所述USB数字音频解码器将所述TCP Tunnel确定为所述USB数字音频解码器与所述音频源之间的数据传输通道。
7.一种音频播放方法,其特征在于,所述方法包括:
音频源作为通用串行总线USB连接中的从设备与USB数字音频解码器建立所述USB连接,所述音频源是具有音频播放能力且能够作为USB连接中的从设备的设备,所述USB数字音频解码器和所述音频源之间通过USB数据线相连,所述USB数据线的两个接口分别插入所述USB数字音频解码器和所述音频源中,所述音频源中无需安装与所述USB数字音频解码器配套的驱动程序;
所述音频源获取音频数据;
所述音频源通过块传输模式将所述音频数据发送给所述USB数字音频解码器,所述块传输模式是USB数据传输模式中的一种,所述USB数字音频解码器用于对所述音频数据进行校验,当所述音频数据出错时,要求所述音频源重新发送音频数据,在接收到正确的音频数据后生成时钟信号,并根据所述时钟信号控制所述正确的音频数据的播放。
8.根据权利要求7所述的方法,其特征在于,在所述音频源通过块传输模式将所述音频数据发送给所述USB数字音频解码器之后,还包括:
所述音频源接收所述USB数字音频解码器发送的第一通知消息,根据所述第一通知消息暂停发送剩余的音频数据,所述第一通知消息是所述USB数字音频解码器在确定音频数据所占用的存储空间值等于缓存的总存储空间值后发送的;或者,
所述音频源向所述USB数字音频解码器发送中断信号,再向所述USB数字音频解码器发送空间值查询指令,接收所述USB数字音频解码器根据所述空间值查询指令发送的缓存的剩余存储空间值,根据所述剩余存储空间值确定是否继续发送剩余的音频数据,所述中断信号用于指示所述USB数字音频解码器等待接收所述音频源将要发送的信息。
9.根据权利要求8所述的方法,其特征在于,在所述音频源通过块传输模式将所述音频数据发送给所述USB数字音频解码器之后,还包括:
所述音频源接收所述USB数字音频解码器发送的携带有所述缓存的剩余存储空间值的第二通知消息,所述第二通知消息是所述USB数字音频解码器对所述缓存中已经播放部分的音频数据进行删除后发送的;
所述音频源继续通过所述块传输模式向所述USB数字音频解码器发送所述剩余的音频数据,且所发送的所述剩余的音频数据所占用的存储空间值不超过所述剩余存储空间值。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
当所述音频数据是所述音频源对封装格式的音频片段中的部分进行解码后发送的脉冲编码调制PCM格式或直接比特流数字DSD格式的音频数据时,所述音频源从所述封装格式的音频片段中获取配置参数,向所述USB数字音频解码器发送所述配置参数,所述USB数字音频解码器用于根据所述配置参数和所述时钟信号控制所述音频数据的播放。
11.根据权利要求10所述的方法,其特征在于,所述音频源从所述封装格式的音频片段中获取配置参数,包括:
在首次发送所述封装格式的音频片段中的音频数据时,所述音频源从所述封装格式的音频片段中获取所述配置参数;或者,
所述音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,所述音频源从所述预定封装格式的音频片段中获取所述配置参数。
12.根据权利要求7至11任一所述的方法,其特征在于,所述音频源作为通用串行总线USB连接中的从设备与USB数字音频解码器建立所述USB连接,包括:
当所述音频源是安卓Android操作系统时,作为从设备的所述音频源接收所述USB数字音频解码器发送的模式进入指令,根据所述模式进入指令进入安卓开放配件AoA模式,将所述AoA模式所对应的原始数据通道确定为所述USB数字音频解码器与所述音频源之间的数据传输通道;
当所述音频源是苹果操作系统iOS时,作为从设备的所述音频源监听预定端口,通过所述预定端口与所述USB数字音频解码器建立基于USB的传输控制协议隧道TCP Tunnel的连接,将所述TCP Tunnel确定为所述USB数字音频解码器与所述音频源之间的数据传输通道。
13.一种音频播放装置,用于作为通用串行总线USB连接中的主设备的USB数字音频解码器中,其特征在于,所述装置包括:
连接建立模块,用于与音频源建立所述USB连接,所述音频源是具有音频播放能力且能够作为USB连接中的从设备的设备,所述USB数字音频解码器和所述音频源之间通过USB数据线相连,所述USB数据线的两个接口分别插入所述USB数字音频解码器和所述音频源中,所述音频源中无需安装与所述USB数字音频解码器配套的驱动程序;
数据接收模块,用于接收所述音频源通过块传输模式发送的音频数据,所述块传输模式是USB数据传输模式中的一种,对所述音频数据进行校验,当所述音频数据出错时,要求所述音频源重新发送音频数据;
音频播放模块,用于在接收到正确的音频数据后生成时钟信号,并根据所述时钟信号控制所述数据接收模块接收的所述正确的音频数据的播放。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
数据缓存模块,用于在所述数据接收模块接收所述音频源通过块传输模式发送的音频数据之后,对所述音频数据进行缓存;
缓存控制模块,用于在所述音频数据所占用的存储空间值等于所述缓存的总存储空间值后,向所述音频源发送第一通知消息,所述第一通知消息用于指示所述音频源暂停发送剩余的音频数据;或者,接收所述音频源发送的中断信号,所述中断信号用于指示所述USB数字音频解码器等待接收所述音频源将要发送的信息,接收所述音频源发送的空间值查询指令,根据所述空间值查询指令将所述缓存的剩余存储空间值发送给所述音频源,所述音频源用于根据所述剩余存储空间值确定是否继续发送剩余的音频数据。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
数据删除模块,用于在所述音频播放模块根据所述时钟信号控制所述音频数据的播放之后,对所述缓存中已经播放部分的音频数据进行删除;
消息通知模块,用于向所述音频源发送携带有所述缓存的剩余存储空间值的第二通知消息,所述第二通知消息用于指示所述音频源继续通过所述块传输模式向所述USB数字音频解码器发送所述剩余的音频数据,且所发送的所述剩余的音频数据所占用的存储空间值不超过所述剩余存储空间值。
16.根据权利要求13所述的装置,其特征在于,所述音频播放模块,包括:
第一播放单元,用于当所述音频数据是所述音频源对封装格式的音频片段中的部分片段进行解码后发送的脉冲编码调制PCM格式或直接比特流数字DSD格式的音频数据时,接收所述音频源发送的配置参数,根据所述配置参数和所述时钟信号控制所述音频数据的播放,所述配置参数位于所述封装格式的音频片段中;
第二播放单元,用于当所述音频数据是基于PCM格式或DSD格式的音频数据进行封装得到的封装格式的音频片段中的部分片段时,从所述音频数据中读取所述配置参数,根据所述配置参数和所述时钟信号控制所述音频数据的播放。
17.根据权利要求16所述的装置,其特征在于,
所述配置参数是所述音频源首次发送所述封装格式的音频片段中的音频数据时,从所述封装格式的音频片段中获取到的,或者,
所述配置参数是所述音频源将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从所述预定封装格式的音频片段中获取到的。
18.根据权利要求13至17任一所述的装置,其特征在于,所述连接建立模块,包括:
第一建立单元,用于当所述音频源是安卓Android操作系统时,向所述音频源发送模式进入指令,所述模式进入指令用于指示所述音频源进入安卓开放配件AoA模式,所述USB数字音频解码器将所述AoA模式所对应的原始数据通道确定为所述USB数字音频解码器与所述音频源之间的数据传输通道;
第二建立单元,用于当所述音频源是苹果操作系统iOS时,通过基于USB的传输控制协议隧道TCP Tunnel连接所述音频源中被监听的预定端口,所述USB数字音频解码器将所述TCP Tunnel确定为所述USB数字音频解码器与所述音频源之间的数据传输通道。
19.一种音频播放装置,用于作为通用串行总线USB连接中的从设备的音频源中,所述音频源是具有音频播放能力且能够作为USB连接中的从设备的设备,其特征在于,所述装置包括:
连接建立模块,用于与USB数字音频解码器建立所述USB连接,所述USB数字音频解码器和所述音频源之间通过USB数据线相连,所述USB数据线的两个接口分别插入所述USB数字音频解码器和所述音频源中,所述音频源中无需安装与所述USB数字音频解码器配套的驱动程序;
数据获取模块,用于获取音频数据;
第一发送模块,用于通过块传输模式将所述数据获取模块获取的所述音频数据发送给所述USB数字音频解码器,所述块传输模式是USB数据传输模式中的一种,所述USB数字音频解码器用于对所述音频数据进行校验,当所述音频数据出错时,要求所述音频源重新发送音频数据,在接收到正确的音频数据后生成时钟信号,并根据所述时钟信号控制所述正确的音频数据的播放。
20.根据权利要求19所述的装置,其特征在于,所述装置还包括:
第一控制模块,用于在所述第一发送模块通过块传输模式将所述音频数据发送给所述USB数字音频解码器之后,接收所述USB数字音频解码器发送的第一通知消息,根据所述第一通知消息暂停发送剩余的音频数据,所述第一通知消息是所述USB数字音频解码器在确定音频数据所占用的存储空间值等于缓存的总存储空间值后发送的;或者,
第二控制模块,用于在所述第一发送模块通过块传输模式将所述音频数据发送给所述USB数字音频解码器之后,向所述USB数字音频解码器发送中断信号,再向所述USB数字音频解码器发送空间值查询指令,接收所述USB数字音频解码器根据所述空间值查询指令发送的缓存的剩余存储空间值,根据所述剩余存储空间值确定是否继续发送剩余的音频数据,所述中断信号用于指示所述USB数字音频解码器等待接收所述音频源将要发送的信息。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
消息接收模块,用于在所述第一发送模块通过块传输模式将所述音频数据发送给所述USB数字音频解码器之后,接收所述USB数字音频解码器发送的携带有所述缓存的剩余存储空间值的第二通知消息,所述第二通知消息是所述USB数字音频解码器对所述缓存中已经播放部分的音频数据进行删除后发送的;
第二发送模块,用于继续通过所述块传输模式向所述USB数字音频解码器发送所述剩余的音频数据,且所发送的所述剩余的音频数据所占用的存储空间值不超过所述消息接收模块接收的所述剩余存储空间值。
22.根据权利要求19所述的装置,其特征在于,所述装置还包括:
参数配置模块,用于当所述音频数据是所述音频源对封装格式的音频片段中的部分进行解码后发送的脉冲编码调制PCM格式或直接比特流数字DSD格式的音频数据时,从所述封装格式的音频片段中获取配置参数,向所述USB数字音频解码器发送所述配置参数,所述USB数字音频解码器用于根据所述配置参数和所述时钟信号控制所述音频数据的播放。
23.根据权利要求22所述的装置,其特征在于,所述参数配置模块,包括:
第一获取单元,用于在首次发送所述封装格式的音频片段中的音频数据时,从所述封装格式的音频片段中获取所述配置参数;或者,
第二获取单元,用于将各个音频片段转换成预定封装格式的音频片段,且首次发送其中任意一个预定封装格式的音频片段中的音频数据时,从所述预定封装格式的音频片段中获取所述配置参数。
24.根据权利要求19至23任一所述的装置,其特征在于,所述连接建立模块,包括:
第一建立单元,用于当所述音频源是安卓Android操作系统时,接收所述USB数字音频解码器发送的模式进入指令,根据所述模式进入指令进入安卓开放配件AoA模式,将所述AoA模式所对应的原始数据通道确定为所述USB数字音频解码器与所述音频源之间的数据传输通道;
第二建立单元,用于当所述音频源是苹果操作系统iOS时,监听预定端口,通过所述预定端口与所述USB数字音频解码器建立基于USB的传输控制协议隧道TCP Tunnel的连接,将所述TCP Tunnel确定为所述USB数字音频解码器与所述音频源之间的数据传输通道。
CN201510209738.3A 2015-04-28 2015-04-28 音频播放方法及装置 Active CN104834623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510209738.3A CN104834623B (zh) 2015-04-28 2015-04-28 音频播放方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510209738.3A CN104834623B (zh) 2015-04-28 2015-04-28 音频播放方法及装置

Publications (2)

Publication Number Publication Date
CN104834623A CN104834623A (zh) 2015-08-12
CN104834623B true CN104834623B (zh) 2019-06-11

Family

ID=53812524

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510209738.3A Active CN104834623B (zh) 2015-04-28 2015-04-28 音频播放方法及装置

Country Status (1)

Country Link
CN (1) CN104834623B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017028022A1 (en) * 2015-08-14 2017-02-23 SZ DJI Technology Co., Ltd. System and method for supporting data communication in heterogeneous environment
CN105847910A (zh) * 2016-04-28 2016-08-10 乐视控股(北京)有限公司 终端控制方法及装置
CN106648085A (zh) * 2016-12-12 2017-05-10 上海拆名晃信息科技有限公司 一种虚拟现实设备姿态信息的捕捉方法
CN106844275A (zh) * 2016-12-30 2017-06-13 百度在线网络技术(北京)有限公司 数据传输方法及装置
CN107894883B (zh) * 2017-11-22 2023-11-28 广州艾美网络科技有限公司 音频流传输方法和声卡音频转换电路
CN108712669A (zh) * 2018-07-10 2018-10-26 冠捷显示科技(厦门)有限公司 一种便捷的电视软件升级方法
CN109741756B (zh) * 2018-12-29 2021-01-15 苏州思必驰信息科技有限公司 基于usb外接设备传输操作信号的方法及系统
CN111163450A (zh) * 2019-12-26 2020-05-15 重庆物奇科技有限公司 一种用于无线通信系统的设备通信方法及系统
CN112929114B (zh) * 2021-01-26 2022-12-13 广州市保伦电子有限公司 一种基于网卡的低延时音频分发方法、模块和装置
CN113076278A (zh) * 2021-04-02 2021-07-06 深圳市航顺芯片技术研发有限公司 Usb设备时钟校准方法、装置、系统及计算机可读存储介质
CN116578520B (zh) * 2023-07-14 2023-09-08 江苏游隼微电子有限公司 一种适用于图像的编码计数型usb可靠传输方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201829194U (zh) * 2009-09-29 2011-05-11 爱国者电子科技有限公司 一种带存储容量的多媒体播放装置
CN102665240A (zh) * 2012-03-29 2012-09-12 钱袋网(北京)信息技术有限公司 数据发送及接收方法、装置和系统
CN104007977A (zh) * 2014-06-09 2014-08-27 威盛电子股份有限公司 电子装置及音频播放方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110268035A1 (en) * 2009-01-09 2011-11-03 Kazunori Ozawa Gateway apparatus, gateway method, and program
CN102421040B (zh) * 2011-12-15 2015-06-17 上海山景集成电路股份有限公司 一种基于usb的无线音箱装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201829194U (zh) * 2009-09-29 2011-05-11 爱国者电子科技有限公司 一种带存储容量的多媒体播放装置
CN102665240A (zh) * 2012-03-29 2012-09-12 钱袋网(北京)信息技术有限公司 数据发送及接收方法、装置和系统
CN104007977A (zh) * 2014-06-09 2014-08-27 威盛电子股份有限公司 电子装置及音频播放方法

Also Published As

Publication number Publication date
CN104834623A (zh) 2015-08-12

Similar Documents

Publication Publication Date Title
CN104834623B (zh) 音频播放方法及装置
CN103888818B (zh) 一种电视节目播放方法、设备和系统
CN102572520B (zh) 图像处理设备、图像再现设备以及图像再现系统
CN109906613A (zh) 音频和视频的多模式同步渲染
KR102569374B1 (ko) 블루투스 장치 동작 방법
TWI501673B (zh) 無線音訊與視訊同步播放的方法及其播放系統
CN106686438B (zh) 一种跨设备的音频图像同步播放的方法、装置及系统
EP1855483A2 (en) Apparatus and method for transmitting and receiving moving pictures using near field communication
CN106165368A (zh) 实时传输协议的流送控制
CN109495761A (zh) 视频切换方法及装置
KR20100083233A (ko) 휴대용 단말기에서 멀티미디어 파일 스트리밍을 위한 장치 및 방법
CN105743549A (zh) 用户终端及其音频蓝牙播放方法、数字信号处理器
CN106941629A (zh) 基于sip+rtp与rtmp协议互通的实时直播方法
US9788140B2 (en) Time to play
CN107438990B (zh) 用于递送定时信息的方法和设备
KR20150047459A (ko) 멀티-미디어 파일 에뮬레이션 디바이스
JP2015065488A (ja) 生成装置、再生装置、データ構造、生成方法、再生方法、制御プログラム、および記録媒体
CN111885412B (zh) Hdmi信号传屏方法及无线传屏器
CN201663666U (zh) 网络视频装置
WO2017008203A1 (zh) 一种协议帧传输方法、装置、节点设备以及系统
JP2006319851A (ja) 携帯端末、ストリーミング通信システム、ストリーミング通信方法及びストリーミング通信プログラム
CN115065669A (zh) 音频传输方法、装置、电子设备及存储介质
CN114979793A (zh) 一种直播数据传输方法、装置、系统、设备和介质
US10623872B1 (en) Systems and methods for audio rendering control in a hearing system
CN107371069B (zh) 一种音视频容错方法及其系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20170222

Address after: 510000 B1, building, No. 16, rhyme Road, Guangzhou, Guangdong, China 13F

Applicant after: Guangzhou KuGou Networks Co., Ltd.

Address before: Wujin District of Jiangsu city in Changzhou province 213164 Chang Wu Road No. 18 building 328 north and public records

Applicant before: CHANGZHOU HEARING WORKSHOP INTELLIGENT TECHNOLOGY CO., LTD.

CB02 Change of applicant information

Address after: 510660 Guangzhou City, Guangzhou, Guangdong, Whampoa Avenue, No. 315, self - made 1-17

Applicant after: Guangzhou KuGou Networks Co., Ltd.

Address before: 510000 B1, building, No. 16, rhyme Road, Guangzhou, Guangdong, China 13F

Applicant before: Guangzhou KuGou Networks Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant