CN104269182B - 一种音频同步播放的方法、装置和系统 - Google Patents

一种音频同步播放的方法、装置和系统 Download PDF

Info

Publication number
CN104269182B
CN104269182B CN201410479022.0A CN201410479022A CN104269182B CN 104269182 B CN104269182 B CN 104269182B CN 201410479022 A CN201410479022 A CN 201410479022A CN 104269182 B CN104269182 B CN 104269182B
Authority
CN
China
Prior art keywords
client
beginning
synchronous
voice data
buffering area
Prior art date
Application number
CN201410479022.0A
Other languages
English (en)
Other versions
CN104269182A (zh
Inventor
曾小波
王重乐
高强
Original Assignee
歌尔股份有限公司
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 歌尔股份有限公司 filed Critical 歌尔股份有限公司
Priority to CN201410479022.0A priority Critical patent/CN104269182B/zh
Publication of CN104269182A publication Critical patent/CN104269182A/zh
Application granted granted Critical
Publication of CN104269182B publication Critical patent/CN104269182B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/489Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using time information
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
    • G11B27/323Time code signal, e.g. on a cue track as SMPTE- or EBU-time code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4392Processing of audio elementary streams involving audio buffer management
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10703Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control processing rate of the buffer, e.g. by accelerating the data output
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/1075Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
    • G11B2020/10759Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
    • G11B2020/10768Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data by pre-caching the initial portion of songs or other recorded or downloaded data for starting playback instantly
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/002Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4396Processing of audio elementary streams by muting the audio signal

Abstract

本发明公开了一种音频同步播放的方法、装置和系统。该方法通过在同步播放的开始时间点到来前,利用指定数据缓冲区输出指定数据,使音频链路处于稳定状态,规避系统进程调度、中断以及系统硬件对同步播放的影响,提高同步播放的精度;并且在同步播放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放,以完成音频同步播放。本发明相比于现有技术,不需要对音频数据流添加播放时间戳信息,播放终端不需要在整个播放过程中处理时间戳信息,有效增加了同步播放的灵活性。

Description

一种音频同步播放的方法、装置和系统
技术领域
[0001]本发明涉及通信领域中的音频技术,特别涉及一种音频同步播放的方法、装置和 系统。
背景技术
[0002] 随着电子信息技术和声学技术的发展,多音频输出终端系统被普遍使用,这就引 入了多个音频输出终端之间的播放同步问题。
[0003] 音频同步播放的现行通用做法是对音频数据流添加播放时间戳信息,音频输出终 端在得到音频流数据和时间戳信息后,在相应的时间点输出对应音频数据以实现多个音频 输出终端同步播放的目的。但该现行通用方法至少具有如下缺点:
[0004]首先需要对音频源进行处理以添加时间戳信息,通用性不高,欠缺灵活性;其次音 频输出终端在整个播放过程中都要对时间戳信息进行分析以使音频数据在相应时间点输 出,增加了系统复杂性;最后若音频输出终端支持多路音频同时输出(同步通道和非同步通 道),即首频输出终端含有混首器,则同步播放的同步操作必须在混音之前完成(同步通道 不影响非同步通道),又若音频数据源与音频数据播放硬件采样频率不匹配,则同步播放的 同步操作需要在音频重采样之前完成。
[0005]上述缺陷都将引入系统的复杂性并导致同步精度不高的问题,并且在含有操作系 统的音频输出终端上,由于系统调度、系统中断的随机性导致同步精度的控制更加复杂。
发明内容
[0006] 本发明提供的一种音频同步播放的方法、装置和系统,以解决现有音频同步灵活 性欠佳、系统复杂度较高、以及音频同步播放精度不够高的问题。
[0007] 为达到上述目的,本发明的技术方案是这样实现的:
[0008] —方面,本发明实施例提供了一种音频同步播放方法,所述方法包括:
[0009] 服务器端向各个客户端发送音频数据源路径和预取命令;
[0010]各个客户端根据所述预取命令从所述音频数据源路径获得音频数据,将获得的音 频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取门限后,向服务 器端发送预取完成应答和预取完成时间;
[0011] 服务器端在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间 确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和所述同步播放的开始 时间点;
[0012] 各个客户端在收到所述同步播放命令后,判断所述同步播放的开始时间点是否到 来,在所述同步播放的开始时间点到来之前使用指定数据进行输出操作;在所述同步播放 的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本 地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放。
[0013] 其中,所述音频数据源路径包括服务器自身的可对外访问的地址、或者网络中所 述服务器之外的设备的可对外访问的地址。
[0014]上述技术方案中,服务器端选取所有客户端预取完成后的一个时间点作为所述同 步播放的开始时间点。
[0015]上述技术方案中,所述各个客户端在收到所述同步播放命令后,判断所述同步播 放的开始时间点是否到来包括:
[0016] 各个客户端每隔预定时间,将本地当前系统时间与所述同步播放的开始时间点进 行比较;如果本地当前系统时间大于或等于所述同步播放的开始时间点,则判断所述同步 播放的开始时间点到来,反之则判断所述同步播放的开始时间点未到来。
[0017]上述技术方案中,在所述同步播放的开始时间点到来之前使用指定的数据〇进行 输出操作。
[0018]上述技术方案中,所述各个客户端在所述同步播放的开始时间点到来时,计算本 地同步缓冲区中的音频数据的调整量包括:
[0019] 客户端根据在所述同步播放的开始时间点到来时,获得的当前音频输出链路中已 经含有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客户端 的输出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或者需 要插入的指定数据量。
[0020] 可选的,所述各个客户端根据该调整量调整本地同步缓冲区中的音频数据包括:
[0021] 各个客户端对本地同步缓冲区的音频数据进行丢弃操作,并且在客户端的输出采 样率与音频数据源的采样率一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数 据量:
[0022] Frames= ((NewNs-StartNS) *HwRate) /109+BufferFraraes;
[0023] 在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计算本地 同步缓冲区需要丢弃的音频数据量:
[0024] Frames = ((NewNs-StartNS) *SrcRate) /109+ (BufferFrames*SrcRate) /HwRate;
[0025] 或者,
[0026] 各个客户端对本地同步缓冲区的音频数据进行插入操作,并且利用下述公式计算 本地同步缓冲区需要插入的指定数据量:
[0027] Frames =Magic- (((NewNs-StartNS) *HwRate) /109+BufferFrames);
[0028] 其中,Frames为计算得到的结果,NewNs表不获得BufferFrames数据时的系统时 间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音 频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时, 获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
[0029] 另一方面,本发明实施例提供了一种音频同步播放装置,包括:同步单元、同步缓 冲区、指定数据缓冲区、音频输出单元;其中,
[0030] 所述同步缓冲区,用于缓冲从音频数据源获得的需要播放的音频数据;
[0031]所述指定数据缓冲区,用于缓冲指定数值的音频数据;
[0032] 所述音频输出单元,用于对音频数据进行输出播放;
[0033] 所述同步单元,用于接收服务器端发送的音频数据源路径和预取命令,根据所述 预取命令从所述音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲 在所述同步缓冲区中,并在所述同步缓冲区缓冲到预取门限后,向服务器端发送预取完成 应答和预取完成时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点, 在收到所述同步播放命令后,判断所述同步播放的开始时间点是否到来,在所述同步播放 的开始时间点到来之前将所述指定数据缓冲区的音频数据输出到所述音频输出单元,在所 述同步播放的开始时间点到来时计算所述同步缓冲区中的音频数据的调整量,并根据该调 整量调整本地同步缓冲区中的音频数据,同时将所述同步缓冲区中调整后的音频数据输出 到所述音频输出单元。
[0034] 再一方面,本发明实施例提供了一种音频同步播放系统,所述系统包括:服务器 端、一个或多个作为音频播放终端的客户端,所述服务器端与一个或多个所述客户端交互 完成同步播放,其中:
[0035]所述服务器端,用于向各个客户端发送音频数据源路径和预取命令;以及在收到 所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时 间点,并向各个客户端发送同步播放命令和所述同步播放的开始时间点;
[0036] 所述客户端包括上述的音频同步播放装置。
[0037] 本发明实施例的有益效果是:
[0038] 本发明实施例公开的音频同步播放的方法、装置和系统,相比于现有技术,不是基 于时间戳,不需要对音频数据流添加播放时间戳信息,播放终端不需要在整个播放过程中 处理时间戳信息,从而有效降低了同步播放的复杂度,增加了同步播放的灵活性。
[0039] 并且,本发明实施例通过在同步播放的开始时间点到来前输出指定数据完成音频 链路的初始化和建立,使得在同步播放的开始时间点到来时,音频链路已处于稳定状态;以 及本发明实施例通过在同步播放的开始时间点到来时,计算同步缓冲区中的音频数据的调 整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输 出播放,从而将影响同步播放精度的因素剥离出来,使同步播放精度更加可控,有效的规避 了系统进程调度、中断以及系统硬件等因素对同步播放的影响,提高了同步播放的精度。
附图说明
[0040] 图1为本发明实施例提供的音频同步播放方法的一种流程示意图;
[0041] 图2为本发明实施例提供的音频同步播放装置的一种结构示意图;
[0042] 图3为本发明实施例提供的音频同步播放系统的一种结构示意图;
[0043]图4为本发明实施例提供的音频同步播放系统的一种操作流程示意图。
具体实施方式
[0044]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。
[0045]图1为本发明实施例提供的音频同步播放方法的一种流程示意图,该方法包括: [0046] S101,服务器端向各个客户端发送音频数据源路径和预取命令。
[0047]具体的,音频数据源路径包括服务器自身的可对外访问的地址、或者网络中该服 务器之外的设备的可对外访问的地址,典型的例如网络地址。即上述音频数据源路径提供 的音频数据可以为服务器端本地的音频数据,也可以为网络中其他设备上的音频数据。^
[0048] S102,各个客户端根据所述预取命令从音频数据源路径获得需要播放的音频数 据,将获得的音频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取 门限后,向服务器端发送预取完成应答和预取完成时间。
[0049]在实际应用中,预取门限按照实际情况确定,一般与应用场景和音频通信系统平 台相关;例如,在客户端和服务器端传输速率较低时,设定较大预取门限以保证不会因为传 输延时而导致音频断续,从而保证音频输出的连续性。
[0050] S103,服务器端在收到所有客户端(所有需要音频同步的客户端)的预取完成应答 后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送 同步播放命令和同步播放的开始时间点。
[0051] 服务器端收到客户端预取完成应答后,判断是否所有客户端都预取完成,当所有 客户端都预取完成,服务器端依据所有客户端预取完成时间得到同步播放的开始时间 StartNs,服务器端向各个客户端发送同步播放命令及同步播放的开始时间点StartNs。
[0052] 需要说明的是,同步播放的开始时间StartNs是在所有客户端预取完成后的一个 时间点,比如在所有客户端预取完成后的第5s,StartNS的计算应按照实际情况确定。
[0053] S104,各个客户端在收到同步播放命令后,在同步播放的开始时间点到来之前使 用指定数据进行输出操作。
[00M]可选地,各个客户端采用如下方法判断同步播放的开始时间点是否到来:各个客 户端每隔预定时间,将本地当前系统时间与同步播放的开始时间点进行比较;如果本地当 前系统时间大于或等于同步播放的开始时间点,则判断同步播放的开始时间点到来,反之 则判断同步播放的开始时间点未到来。
[0055]需要说明的是,判断同步播放的开始时间点是否到来并不局限于上述方案,因为 上述方案是与平台相关的,如果在不含有操作系统的平台上,可以设定硬件定时器,通过定 时器来判断同步播放的开始时间点是否已经到来;而在含有操作系统的平台上,可以利用 软件定时器的方式来实现,但软件定时器的方法精度不够高。
[0056] 在一种优选实施例中,同步播放的开始时间点到来之前使用数据〇进行输出操作。 当然也可以采用数据0之外的其他指定数据,例如1、2等,只要该指定数据不会产生人耳能 感知的声音即可。
[0057]还需要说明的是,音频链路的初始化和建立受客户端系统的进程调度、中断及系 统硬件等因素所影响,各个客户端完成音频链路初始化和建立的时间是不一致的。本实施 例在同步播放的开始时间点到来之前使用指定数据(例如数据0)进行输出操作来完成音频 链路的初始化和建立,是为了使本地同步缓冲区中的音频数据在开始播放时整个音频链路 己经处于稳定状态,也即音频链路中的播放缓冲区处于稳定状态,此时音频硬件能够按照 自己的采样率从播放缓冲区中获得数据,而客户端可以按照自身的步调往播放缓冲区中填 入数据,并且该音频链路的初始化和建立的稳定过程不会被人耳感知,从而使用户具有良 好的使用体验。
[0058] Sl〇5,各个客户端在同步播放的开始时间点到来时,计算本地同步缓冲区中的音 频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频 数据进行输出播放。
[0059]具体地,客户端根据在同步播放的开始时间点到来时,获得的当前音频输出链路 中已经含有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客 户端的输出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或 者需要插入的指定数据量。
[0060] 一种可选方案是,各个客户端一致采用对本地同步缓冲区的音频数据进行丢弃操 作来调整本地同步缓冲区中的音频数据。其中,
[0061] 在客户端的输出采样率与音频数据源的采样率一致时,利用下述公式计算本地同 步缓冲区需要丢弃的音频数据量:
[0062] Frames = ((NewNs-StartNS) *HwRate) /109+BufferFrames ;
[0063]或者,在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计 算本地同步缓冲区需要丢弃的音频数据量:
[0064] Frames =( (NewNs-StartNS) *SrcRate) /109+ (BufferFrames*SrcRate) /HwRate。 [0065]这种方案下,客户端将本地同步缓冲区已存储的音频数据中,从首个数据开始 Frames大小的数据量丢弃。该首个数据为在音频数据的播放顺序中位于第一个的数据。 [0066]另一种可选方案是,在客户端不希望丢弃音频数据时,各个客户端可以一致采用 对本地同步缓冲区的音频数据进行插入操作来调整本地同步缓冲区中的音频数据。其中, [0067] 可以利用下述公式计算本地同步缓冲区需要插入的指定数据量:
[0068] Frames=Magic-(((NewNs-StartNS) *HwRate) /109+BufferFrames) 〇
[0069] 这种方案下,客户端将本地同步缓冲区中已存储的音频数据中,在首个数据之前 添加Frames大小的数据量。该首个数据为在音频数据的播放顺序中位于第一个的数据。
[0070] 上述公式中,Frames为计算得到的结果,NewNs表不获得Buff erFrames数据时的系 统时间,StartNs表示同步播放的开始时间点,HwRate表不客户端的输出采样率,SrcRate表 示音频数据源的采样率,BufferFrames表不客户端判断同步播放的开始时间点StartNs到 来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
[0071] 需要说明的是,上述中对音频数据进行输出播放的操作包括:
[0072] 在含有混音器的系统中各个客户端将本地同步缓冲区中的音频数据先输出到混 音器中,混音完成后再输出到播放缓冲区中,最后由音频输出单元进行输出播放;或者,
[0073] 在不含有混音器的系统中各个客户端将本地同步缓冲区中的音频数据直接输出 到播放缓冲区中,然后由音频输出单元进行输出播放;或者,
[0074] 各个客户端将本地同步缓冲区中的音频数据直接由音频输出单元进行输出播放。
[0075] 还需要说明的是,此处的数据输出操作是往目标模块输出一段音频数据,等待一 段时间(休眠或进行其他操作),再往目标模块输出下一段音频数据,一段音频数据的大小 和等待时间长短是和具体平台相关的。
[0076] 由上,本实施例的方案可以应用在含有操作系统或混音器的音频输出终端上,能 有效的规避操作系统进程调度,中断等对同步播放的影响。利用在播放时间到来前开始指 定数据的输出来完成音频链路的初始化和建立,以使播放时间到来时音频链路已经处于稳 定状态。并且,在输出同步缓冲区中有效音频数据时通过计算确定需要丢弃或插入的数据 量大小以实现音频的同步播放。本方案使进程调度、中断,系统硬件平台等因素对同步操作 影响降到最低,提高了同步播放的精度。
[0077] 图2为本发明实施例提供的音频同步播放装置的一种结构示意图,该音频同步播 狀农旦⑶B怔:M步早兀21、同步缓冲区22、指定数据缓冲区23、音频输出单元24;其中, [0078]同步缓冲区22,用于缓冲从音频数据源获得的需要播放的音频数据;
[0079]指定数据缓冲区23,用于缓冲指定数值的音频数据; _〇]音频输出单元24,用于对音频数据进行输出播放;
[0081]同步单元21,用于接收服务器端发送的音频数据源路径和预取命令,根据预取命 令从音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在同步缓冲 区22中,并在同步缓冲区22缓冲到预取门限后,向服务器端发送预取完成应答和预取完成 时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点,在收到同步播放 命令判断同步播放的开始时间点是否到来,在同步播放的开始时间点到来之前将指定 数据缓冲区23的音频数据输出到音频输出单元24,在同步播放的开始时间点到来时计算同 步缓冲区22中的音频数据的调整量,并根据该调整量调整本地同步缓冲区22中的音频数 据,同时将同步缓冲区22中调整后的音频数据输出到音频输出单元24。
[0082]优选地,同步单元21在同步播放的开始时间点到来之前使用数据〇进行输出操作。 [0083] 一种实施例,同步单元21具体是每隔预定时间,将本地当前系统时间与同步播放 的开始时间点进行比较;如果本地当前系统时间大于或等于同步播放的开始时间点,则判 断同步播放的开始时间点到来,反之则判断同步播放的开始时间点未到来。
[0084]在一种优选实施例中,本发明的音频同步播放装置20还包括:
[0085]混音器,用于对同步缓冲区或指定数据缓冲区中的音频数据和其他音频模块的音 频数据的输出进行混音;和/或,
[0086]播放缓冲区,用于缓冲上述混音器、或同步缓冲区或指定数据缓冲区中输出的音 频数据。
[0087]需要说明的是,在含有混音器的系统中首先将数据输出到混音器中,混音完成后 再输出到播放缓冲区中;在不含有混音器的系统中将数据直接输出到播放缓冲区中,音频 输出单元24从播放缓冲区中读取音频数据并输出播放。另外在简单的播放系统中可以将音 频数据直接输出到音频输出单元24进行播放。
[0088] 在另一种实施例中,同步单元21具体是根据在同步播放的开始时间点到来时,获 得的当前音频输出链路中已经含有的音频数据量、获得该音频数据量的系统时间、同步播 放的开始时间点,以及客户端的输出采样率和音频数据源的采样率,计算本地同步缓冲区 需要丢弃的音频数据量或者需要插入的指定数据量。
[0089] 优选地,上述同步单元21可以包括第一计算模块、第二计算模块或第三计算模块。
[0090] 第一计算模块,用于在客户端的输出采样率与音频数据源的采样率一致时,利用 下述公式计算同步缓冲区需要丢弃的音频数据量:
[0091] Frames= ((NewNs-StartNS) *HwRate) /109+BufferFrames;
[0092]第二计算模块,用于在客户端的输出采样率与音频数据源的采样率不一致时,利 用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
[0093] Frames= ((NewNs-StartNS) *SrcRate) /109+ (BufferFrames*SrcRate) /HwRate ;
[0094] 第三计算模块,用于在客户端不希望丢弃音频数据时,利用下述公式计算本地同 步缓冲区需要插入的指定数据量:
[0095] Frames =Magic-(((NewNs-StartNS) *HwRate) /109+BufferFrames);
[0096] 其中,Frames为计算得到的结果,NewNs表示获得BufferFrames数据时的系统时 间,StartNs表示同步播放的开始时间点,HwRate表不客户端的输出米样率,SrcRate表不音 频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时, 获得的当前音频输出链路中已经含有的音频数据量,Magic为常数,是一个经验常数,用来 避免丢弃音频数据。
[0097] 需要说明的是,Buf f erFrame s指的是NewNs时刻音频通路中已含有的首频数据量, 即被同步单元21输出的数据,但还没有被音频硬件最终输出的数据;其中BufferFrames和 NewNs的值可以通过编程获得。
[0098] 图3为本发明实施例提供的音频同步播放系统的一种组成示意图,该系统包括:月艮 务器端31、N个作为音频播放终端的客户端30,服务器端31与与N个客户端30交互完成同步 播放,N为大于或等于1的正整数。其中,
[0099] 服务器端31,用于向各个客户端30发送音频数据源路径和预取命令;以及在收到 所有客户端30的预取完成应答后,依据所有客户端30的预取完成时间确定出同步播放的开 始时间点,并向各个客户端30发送同步播放命令和该同步播放的开始时间点。
[0100] 客户端30包括上述音频同步播放装置20中的各单元和模块。
[0101]上述中,服务器端31提供的音频数据源路径可以是本地路径,也可以是其他网络 路径,此时只需保证整个系统的需要音频同步的各个客户端都能访问网络。
[0102] 上述中,服务器端31选取所有客户端预取完成后的一个时间点作为同步播放的开 始时间点。
[0103] 在一种优选实施例中,上述服务器端31中可以设置有上述客户端30的音频播放和 同步功能等,服务器可以作为音频播放终端使用。此时服务器端31在提供音频数据源路径 的同时也作为播放终端。
[0104] 本发明装置和系统实施例中各单元的具体工作方式,可以参见本发明方法实施例 的相关内容,在此不再赘述。
[0105] 图4为本发明实施例提供的音频同步播放系统的一种操作流程示意图,该操作流 程包括:
[0106] S401,服务器端向各个客户端发送音频数据源路径和预取命令。
[0107] 其中音频数据源路径可以为服务器自身的可对外访问的地址,也可以为网络中其 他设备的可对外访问的地址。
[0108] S402,各个客户端根据预取命令从音频数据源路径获得音频数据。
[0109] S403,各个客户端将获得的音频数据解码并缓冲在本地同步缓冲区中。
[0110] S404,各个客户端判断本地同步缓冲区是否缓冲到预取门限,若否,则返回S403继 续缓冲;若是,则跳转到S405。
[0111] S405,各个客户端向服务器端发送预取完成应答和预取完成时间。
[0112] S406,服务器端等待客户端预取完成。
[0113] S407,服务器端判断是否所有的客户端都预取完成,若否,则返回S406继续等待并 接收客户端发送的预取完成应答和预取完成时间,若是,则跳转到S408。
[0114] S408,服务器端依据所有客户端的预取完成时间确定出同步播放的开始时间点。
[0115] S409,服务器端向各个客户端发送同步播放命令和同步播放的开始时间点。
[0116] S410,各个客户端在收到同步播放命令后,在同步播放的开始时间点到来之前使 用数据0进行输出操作。
[0117] S411,各个客户端每隔预定时间,将获得的系统当前时间与同步播放的开始时间 点进行比较,判断同步播放的开始时间点是否到来,如果没有到来则返回S410继续使用数 据0进行输出操作,如果到来则跳转到S412。
[0118] S412,各个客户端计算本地同步缓冲区需要丢弃的音频数据量或者需要插入的数 据0的大小。
[0119] S413,各个客户端根据计算得到的结果对本地同步缓冲区进行数据的丢弃或插入 操作。
[0120] S414,各个客户端对本地同步缓冲区中的音频数据进行输出操作;同时从音频数 据源路径不间断地获得音频数据解码并缓冲在本地同步缓冲区中。
[0121] 需要说明的是,一旦本地同步缓冲区中的音频数据开始输出,客户端就开始从音 频数据源路径不间断地获得音频数据解码并缓冲在本地同步缓冲区中的操作,该操作从 S402后一直在执行。
[0122] S415,各个客户端判断播放是否完成,如果播放未完成,则返回S414继续对本地同 步缓冲区中的音频数据进行输出操作;如果播放完成,则跳转到S416。
[0123] 其中,播放是否完成可以通过判断同步缓冲区的状态确定,如果同步缓冲区长时 间没有数据则认为播放完成,但不局限于此种方法。
[0124] S416,各个客户端向服务器端发送播放完成应答。
[0125] 综上所述,本发明实施例公开的音频同步播放的方法、装置和系统,相比于现有技 术,不是基于时间戳,不需要对音频数据流添加播放时间戳信息,播放终端不需要在整个播 放过程中处理时间戳信息,从而有效降低了同步播放的复杂度,增加了同步播放的灵活性。
[0126] 并且,本发明实施例通过在同步播放的开始时间点到来前输出指定数据完成音频 链路的初始化和建立,使得在同步播放的开始时间点到来时,音频链路已处于稳定状态;以 及本发明实施例通过在同步播放的开始时间点到来时,计算同步缓冲区中的音频数据的调 整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输 出播放,从而将影响同步播放精度的因素剥离出来,使同步播放精度更加可控,有效的规避 了系统进程调度、中断以及系统硬件等因素对同步播放的影响,提高了同步播放的精度。
[0127] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围 内。

Claims (10)

1. 一种音频同步播放方法,其特征在于,所述方法包括: 服务器端向各个客户端发送音频数据源路径和预取命令; 各个客户端根据所述预取命令从所述音频数据源路径获得需要播放的音频数据,将获 得的音频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取门限后, 向服务器端发送预取完成应答和预取完成时间; 服务器端在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定 出同步播放的开始时间点,并向各个客户端发送同步播放命令和所述同步播放的开始时间 占. ^\\\ 9 各个客户端在收到所述同步播放命令后,判断所述同步播放的开始时间点是否到来, 在所述同步播放的开始时间点到来之前使用指定数据进行输出播放;在所述同步播放的开 始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本地同 步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放。
2.根据权利要求1所述的方法,其特征在于,所述音频数据源路径包括服务器自身的可 对外访问的地址、或者所述服务器之外的设备的可对外访问的网络地址。
3.根据权利要求1所述的方法,其特征在于,所述服务器端依据所有客户端的预取完成 时间确定出同步播放的开始时间点包括: 服务器端选取所有客户端预取完成后的一个时间点作为所述同步播放的开始时间点。
4.根据权利要求1所述的方法,其特征在于,所述各个客户端在收到所述同步播放命令 后,判断所述同步播放的开始时间点是否到来包括: 各个客户端每隔预定时间,将本地当前系统时间与所述同步播放的开始时间点进行比 较;如果本地当前系统时间大于或等于所述同步播放的开始时间点,则判断所述同步播放 的开始时间点到来,反之则判断所述同步播放的开始时间点未到来。
5.根据权利要求1所述的方法,其特征在于,在所述同步播放的开始时间点到来之前使 用数据0进行输出操作。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述各个客户端在所述同步播 放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量包括: 客户端根据在所述同步播放的开始时间点到来时,获得的当前音频输出链路中己经含 有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客户端的输 出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或者需要插 入的指定数据量。
7.根据权利要求6所述的方法,其特征在于,所述各个客户端根据该调整量调整本地同 步缓冲区中的音频数据包括: 各个客户端对本地同步缓冲区的音频数据进行丢弃操作,并且在客户端的输出采样率 与音频数据源的采样率一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据 量: Frames = ((NewNs-StartNS) *HwRate) /109+BufferFrames; 在客户端的输出米样率与音频数据源的采样率不一'致时,利用下述公式计算本地同步 缓冲区需要丢弃的音频数据量: Frames= ((NewNs-StartNS) *SrcRate) /109+ (BufferFrames*SrcRate) /HwRate; 或者, 各个客户端对本地同步缓冲区的音频数据进行插入操作,并且利用下述公式计算本地 同步缓冲区需要插入的指定数据量: Frames=Magic- (((NewNs-StartNS) *HwRate) /109+BufferFrames); 其中,Frames为计算得到的结果,NewNs表不获得Buff erFrames数据时的系统时间, StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频 数据源的采样率,Buf f erFrame s表示客户端判断同步播放的开始时间点S tar tNs到来时,获 得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
8.—种音频同步播放装置,其特征在于,包括:同步单元、同步缓冲区、指定数据缓冲 区、音频输出单元;其中, 所述同步缓冲区,用于缓冲从音频数据源获得的需要播放的音频数据; 所述指定数据缓冲区,用于缓冲指定数值的音频数据; 所述音频输出单元,用于对音频数据进行输出播放; 所述同步单元,用于接收服务器端发送的音频数据源路径和预取命令,根据所述预取 命令从所述音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在所 述同步缓冲区中,并在所述同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答 和预取完成时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点,在收 到所述同步播放命令后,判断所述同步播放的开始时间点是否到来,在所述同步播放的开 始时间点到来之前将所述指定数据缓冲区的音频数据输出到所述音频输出单元,在所述同 步播放的开始时间点到来时计算所述同步缓冲区中的音频数据的调整量,并根据该调整量 调整本地同步缓冲区中的音频数据,同时将所述同步缓冲区中调整后的音频数据输出到所 述音频输出单元。
9.根据权利要求8所述的音频同步播放装置,其特征在于,所述同步单元包括第一计算 模块、第二计算模块或者第三计算模块,其中: 所述第一计算模块,用于在客户端的输出采样率与音频数据源的采样率一致时,利用 下述公式计算同步缓冲区需要丢弃的音频数据量: Frames= ((NewNs-StartNS) *HwRate) /109+BufferFrames; 所述第二计算模块,用于在客户端的输出采样率与音频数据源的采样率不一致时,利 用下述公式计算本地同步缓冲区需要丢弃的音频数据量: Frames = ((NewNs-StartNS) *SrcRate) /109+ (BufferFraraes*SrcRate) /HwRate; 所述第三计算模块,用于利用下述公式计算本地同步缓冲区需要插入的指定数据量: Frames=Magic- (((NewNs-StartNS) *HwRate) /109+BufferFrames); 其中,Frames为计算得到的结果,NewNs表示获得Buff erFrames数据时的系统时间, StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频 数据源的采样率,Buf f erFrames表示客户端判断同步播放的开始时间点StartNs到来时,获 得的当前音频输出链路中已经含有的音频数据量,Magi c为常数。
10.—种音频同步播放系统,其特征在于,所述系统包括:服务器端、一个或多个作为音 频播放终端的客户端,所述服务器端与一个或多个所述客户端交互完成同步播放,其中: 所述服务器端,用于向各个客户端发送音频数据源路径和预取命令;以及在收到所有 客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间 点,并向各个客户端发送同步播放命令和所述同步播放的开始时间点; 卜所述客户端包括如权利要求8或9所述的音频同步播放装置。
CN201410479022.0A 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统 CN104269182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410479022.0A CN104269182B (zh) 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201410479022.0A CN104269182B (zh) 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统
US15/310,000 US10020023B2 (en) 2014-09-18 2015-09-07 Method, apparatus and system for playing audio synchronously
EP15841146.2A EP3118855B1 (en) 2014-09-18 2015-09-07 Audio synchronous playing method, device and system
DK15841146.2T DK3118855T3 (en) 2014-09-18 2015-09-07 Method, device and system for synchronous audio playback
PCT/CN2015/089042 WO2016041445A1 (zh) 2014-09-18 2015-09-07 一种音频同步播放的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN104269182A CN104269182A (zh) 2015-01-07
CN104269182B true CN104269182B (zh) 2017-05-31

Family

ID=52160696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410479022.0A CN104269182B (zh) 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统

Country Status (5)

Country Link
US (1) US10020023B2 (zh)
EP (1) EP3118855B1 (zh)
CN (1) CN104269182B (zh)
DK (1) DK3118855T3 (zh)
WO (1) WO2016041445A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104269182B (zh) * 2014-09-18 2017-05-31 歌尔股份有限公司 一种音频同步播放的方法、装置和系统
US10225814B2 (en) * 2015-04-05 2019-03-05 Qualcomm Incorporated Conference audio management
CN105491230B (zh) * 2015-11-25 2019-04-16 Oppo广东移动通信有限公司 一种歌曲播放时间同步的方法及装置
CN105430486B (zh) * 2015-11-27 2019-06-07 北京小鸟听听科技有限公司 音频或视频播放的方法和装置
CN105592568A (zh) * 2015-12-22 2016-05-18 Tcl通力电子(惠州)有限公司 音频播放方法及系统
CN105611381A (zh) * 2015-12-29 2016-05-25 深圳市民展科技开发有限公司 一种基于无线网络的多设备音频同步播放系统及方法
CN106448714B (zh) * 2016-10-08 2019-05-03 Oppo广东移动通信有限公司 一种播放设备的同步播放方法、装置及系统
CN108170398A (zh) * 2016-12-07 2018-06-15 博通集成电路(上海)股份有限公司 用于同步扬声器的装置和方法
EP3616398A4 (en) * 2017-04-24 2020-12-23 Phenix Real Time Solutions, Inc. METHOD AND APPARATUS FOR SYNCHRONIZING THE CONSUMPTION OF DATA AT A DISTANCE BY APPLICATIONS
CN108271095A (zh) * 2017-12-20 2018-07-10 建荣半导体(深圳)有限公司 一种主、副蓝牙音频设备及其同步播放系统和方法
CN109378019B (zh) * 2018-10-31 2020-12-08 成都极米科技股份有限公司 音频数据读取方法及处理系统
US10945101B2 (en) * 2018-11-02 2021-03-09 Zgmicro Nanjing Ltd. Method, device and system for audio data communication
CN109905752A (zh) * 2019-03-14 2019-06-18 青岛海信电器股份有限公司 音频数据处理方法、装置、电子设备和存储介质
CN110134362A (zh) 2019-05-16 2019-08-16 北京小米移动软件有限公司 音频播放方法、装置、播放设备以及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739661A (zh) * 2012-06-18 2012-10-17 李洋 一种基于数据统计的网络音频同步输出的方法及系统
CN103198851A (zh) * 2013-03-05 2013-07-10 福建星网视易信息系统有限公司 一种基于时间戳消息的多终端同步播放方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU6882998A (en) * 1997-03-31 1998-10-22 Broadband Associates Method and system for providing a presentation on a network
JP4766440B2 (ja) * 2001-07-27 2011-09-07 日本電気株式会社 携帯端末装置及び携帯端末装置の音響再生システム
US8086752B2 (en) * 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
CN101202568B (zh) 2006-12-14 2012-01-25 北京三星通信技术研究有限公司 支持联合播放的终端及方法
JP5151211B2 (ja) * 2007-03-30 2013-02-27 ソニー株式会社 多画面同期再生システム、表示制御端末、多画面同期再生方法、及びプログラム
US8639830B2 (en) * 2008-07-22 2014-01-28 Control4 Corporation System and method for streaming audio
EP2448265A1 (en) * 2010-10-26 2012-05-02 Google, Inc. Lip synchronization in a video conference
US20140132837A1 (en) * 2011-09-05 2014-05-15 Cywee Group Limited Wireless video/audio data transmission system having i-frame only gop structure
US20130077699A1 (en) * 2011-09-23 2013-03-28 Prime Image Methods and systems for control, management and editing of digital audio/video segment duration with remapped time code
US8997169B2 (en) * 2012-03-23 2015-03-31 Sony Corporation System, method, and infrastructure for synchronized streaming of content
KR101987756B1 (ko) * 2012-07-24 2019-06-11 삼성전자주식회사 미디어 재생 방법 및 미디어 장치
CN103200461B (zh) * 2013-01-14 2016-03-02 苏州华启智能科技有限公司 一种多台播放终端同步播放系统及播放方法
CN103338204B (zh) * 2013-07-05 2016-12-28 深圳市云动创想科技有限公司 一种音频同步输出方法及系统
CN104269182B (zh) 2014-09-18 2017-05-31 歌尔股份有限公司 一种音频同步播放的方法、装置和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739661A (zh) * 2012-06-18 2012-10-17 李洋 一种基于数据统计的网络音频同步输出的方法及系统
CN103198851A (zh) * 2013-03-05 2013-07-10 福建星网视易信息系统有限公司 一种基于时间戳消息的多终端同步播放方法

Also Published As

Publication number Publication date
EP3118855A4 (en) 2017-05-10
EP3118855B1 (en) 2018-08-01
WO2016041445A1 (zh) 2016-03-24
CN104269182A (zh) 2015-01-07
US20170270962A1 (en) 2017-09-21
DK3118855T3 (en) 2018-10-29
US10020023B2 (en) 2018-07-10
EP3118855A1 (en) 2017-01-18

Similar Documents

Publication Publication Date Title
US10171539B2 (en) Method and apparatus for time stretching to hide data packet pre-buffering delays
US9369670B2 (en) Audio video streaming system and method
TWI475855B (zh) 同步無線顯示裝置
Rangan et al. Continuity and synchronization in MPEG
CN1574770B (zh) 内容投递服务器和终端装置
US8639830B2 (en) System and method for streaming audio
KR101655456B1 (ko) 애드혹 적응형 무선 이동 사운드 시스템 및 그 방법
CN101271720B (zh) 一种手机流媒体音视频的同步方法
US7936790B2 (en) Synchronizing related data streams in interconnection networks
US8245262B2 (en) System and method for synchronization of television signals associated with multiple broadcast networks
CN104137488B (zh) 具有时间认知介质访问控制器的网络设备
CN101682562B (zh) 用于修改句子内的话音突峰的回放时序而不影响可懂度的方法和设备
KR20060052323A (ko) 방송국 동기 방법 및 휴대 단말기
JP2004525545A (ja) 複数の独立したメディア・ストリームを時間軸で同期するウェブキャスト方法及びシステム
CN102891984B (zh) 发送设备、接收系统、通信系统、发送方法、接收方法和程序
EP2193645B1 (en) Communication technique able to synchronise the received stream with that sent to another device
EP2733936A1 (en) Transmission device, method for controlling transmission device, control program, and recording medium
US7243150B2 (en) Reducing the access delay for transmitting processed data over transmission data
EP3056014A1 (en) Method and apparatus for content delivery
JP4099494B2 (ja) 移動通信端末機のビデオ・オーディオのデータ同期化方法
CN104584567A (zh) 音频转发设备和对应的方法
KR101590972B1 (ko) 통신 네트워크에서의 전송 스케줄링 방법, 해당 통신 노드 및 컴퓨터 프로그램 생성물
CN105959772B (zh) 流媒体与字幕即时同步显示、匹配处理方法、装置及系统
US9521366B2 (en) Method and apparatus for playing conference signal, video conference terminal, and mobile device
US8813160B2 (en) Method, system and user device for obtaining a key frame in a streaming media service

Legal Events

Date Code Title Description
PB01 Publication
C06 Publication
SE01 Entry into force of request for substantive examination
C10 Entry into substantive examination
CB02 Change of applicant information

Address after: 261031 Dongfang Road, Weifang high tech Industrial Development Zone, Shandong, China, No. 268

Applicant after: Goertek Inc.

Address before: 261031 Dongfang Road, Weifang high tech Industrial Development Zone, Shandong, China, No. 268

Applicant before: Goertek Inc.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant