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

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

Info

Publication number
WO2016041445A1
WO2016041445A1 PCT/CN2015/089042 CN2015089042W WO2016041445A1 WO 2016041445 A1 WO2016041445 A1 WO 2016041445A1 CN 2015089042 W CN2015089042 W CN 2015089042W WO 2016041445 A1 WO2016041445 A1 WO 2016041445A1
Authority
WO
WIPO (PCT)
Prior art keywords
audio data
audio
client
time point
synchronous play
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.)
Ceased
Application number
PCT/CN2015/089042
Other languages
English (en)
French (fr)
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.)
Goertek Inc
Original Assignee
Goertek Inc
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 Goertek Inc filed Critical Goertek Inc
Priority to EP15841146.2A priority Critical patent/EP3118855B1/en
Priority to US15/310,000 priority patent/US10020023B2/en
Priority to DK15841146.2T priority patent/DK3118855T3/en
Publication of WO2016041445A1 publication Critical patent/WO2016041445A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

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
    • 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
    • G06COMPUTING OR 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 OR 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
    • 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/242Synchronisation processes, e.g. processing of PCR [Programme 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 OR 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

Definitions

  • the present invention relates to audio technologies in the field of communications, and in particular, to a method, apparatus and system for audio synchronous playback.
  • the current common practice of audio synchronous playback is to add play timestamp information to the audio data stream. After obtaining the audio stream data and the timestamp information, the audio output terminal outputs the corresponding audio data at the corresponding time point to realize synchronous playback of multiple audio output terminals. the goal of.
  • this current general method has at least the following disadvantages:
  • the audio source needs to be processed to add timestamp information, which is not versatile and lacks flexibility;
  • the audio output terminal analyzes the timestamp information during the entire playback process so that the audio data is output at the corresponding time point, increasing System complexity;
  • the audio output terminal supports multi-channel audio simultaneous output (synchronous channel and non-synchronous channel), that is, the audio output terminal contains a mixer, the synchronous operation of the synchronous playback must be completed before the mixing (the synchronization channel is not Affects the non-synchronous channel.
  • the audio data source does not match the audio data playback hardware sampling frequency, the synchronous operation of the synchronous playback needs to be completed before the audio resampling.
  • the invention provides a method, device and system for audio synchronous playback to solve the existing audio
  • an embodiment of the present invention provides an audio synchronization playing method, where the method includes:
  • the server sends an audio data source path and a prefetch command to each client.
  • Each client obtains audio data from the audio data source path according to the prefetch command, decodes and buffers the obtained audio data in a local synchronization buffer, and sends the buffer to the server after the local synchronization buffer is buffered to the prefetch threshold.
  • Prefetch completion response and prefetch completion time
  • each client After receiving the synchronous play command, each client determines whether the start time point of the synchronous play arrives, and uses the specified data to perform an output operation before the start time point of the synchronous play arrives; when the start time point of the synchronous play arrives Calculating the adjustment amount of the audio data in the local synchronization buffer, adjusting the audio data in the local synchronization buffer according to the adjustment amount, and simultaneously outputting and playing the adjusted audio data.
  • the audio data source path includes an address that can be accessed by the server itself, or an address that can be accessed by a device other than the server in the network.
  • the client obtains the amount of audio data already contained in the current audio output link, the system time to obtain the audio data amount, the start time point of the synchronous play, and the output sampling of the client according to the arrival time point of the above-mentioned synchronous play.
  • Rate and sample rate of the audio data source calculate the amount of audio data that the local sync buffer needs to discard or the amount of data that needs to be inserted.
  • a synchronization buffer for buffering audio data obtained from an audio data source that needs to be played
  • an embodiment of the present invention provides an audio synchronization playing system, where the system includes: a server end, one or more clients as an audio playing terminal, and the server end synchronizes with one or more of the clients. Play, where:
  • the method, device, and system for audio synchronous playback disclosed in the embodiments of the present invention are not based on time stamps, and do not need to add play timestamp information to the audio data stream, and the play terminal does not need to be processed in the entire playback process.
  • Time stamp information which effectively reduces the complexity of synchronous playback and increases the flexibility of synchronous playback.
  • FIG. 2 is a schematic structural diagram of an audio synchronization playing device according to an embodiment of the present invention.
  • FIG. 1 is a schematic flowchart of an audio synchronization playing method according to an embodiment of the present disclosure, where the method includes:
  • the server sends an audio data source path and a prefetch command to each client.
  • the audio data source path includes an address that can be accessed by the server itself, or an address that can be accessed by a device other than the server in the network, such as a network address. That is, the audio data provided by the audio data source path may be local audio data on the server side, or may be audio data on other devices in the network.
  • the prefetch threshold is determined according to the actual situation, and is generally related to the application scenario and the audio communication system platform; for example, when the transmission rate of the client and the server is low, a larger prefetch threshold is set to ensure that it is not The transmission delay causes the audio to be intermittent, thus ensuring the continuity of the audio output.
  • each client After receiving the synchronous play command, each client uses the specified data to perform an output operation before the start time point of the synchronous play.
  • each client determines whether a start time point of the synchronous play arrives by using each of the following methods: each client compares the local current system time with a start time point of the synchronous play every predetermined time; if the local current system time is greater than or It is equal to the start time point of the synchronous play, and it is judged that the start time point of the synchronous play comes, otherwise the start time point of the synchronous play is not arrived.
  • Frames is the calculated result
  • NewNs represents the system time when the BufferFrames data is obtained
  • StartNs represents the start time of the synchronous play
  • HwRate represents the output sampling rate of the client
  • SrcRate represents the sampling rate of the audio data source
  • BufferFrames represents the client.
  • the solution of the embodiment can be applied to an audio output terminal including an operating system or a mixer.
  • it can effectively avoid the impact of operating system scheduling, interrupts, etc. on synchronous playback.
  • the initialization and establishment of the audio link is completed by starting the output of the designated data before the arrival of the play time, so that the audio link is already in a stable state when the play time comes.
  • the effective audio data in the synchronization buffer is output, the amount of data that needs to be discarded or inserted is determined by calculation to realize synchronous playback of the audio.
  • This solution minimizes the impact of process scheduling, interrupts, and system hardware platforms on synchronization operations, and improves the accuracy of synchronous playback.
  • the embodiment of the present invention completes the initialization and establishment of the audio link by outputting the designated data before the arrival of the start time point of the synchronous play, so that the audio link is in a stable state when the start time point of the synchronous play arrives; and the present invention
  • the adjustment amount of the audio data in the synchronization buffer is calculated, the audio data in the local synchronization buffer is adjusted according to the adjustment amount, and the adjusted audio data is output and played.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

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

Description

一种音频同步播放的方法、装置和系统 技术领域
本发明涉及通信领域中的音频技术,特别涉及一种音频同步播放的方法、装置和系统。
发明背景
随着电子信息技术和声学技术的发展,多音频输出终端系统被普遍使用,这就引入了多个音频输出终端之间的播放同步问题。
音频同步播放的现行通用做法是对音频数据流添加播放时间戳信息,音频输出终端在得到音频流数据和时间戳信息后,在相应的时间点输出对应音频数据以实现多个音频输出终端同步播放的目的。但该现行通用方法至少具有如下缺点:
首先需要对音频源进行处理以添加时间戳信息,通用性不高,欠缺灵活性;其次音频输出终端在整个播放过程中都要对时间戳信息进行分析以使音频数据在相应时间点输出,增加了系统复杂性;最后若音频输出终端支持多路音频同时输出(同步通道和非同步通道),即音频输出终端含有混音器,则同步播放的同步操作必须在混音之前完成(同步通道不影响非同步通道),又若音频数据源与音频数据播放硬件采样频率不匹配,则同步播放的同步操作需要在音频重采样之前完成。
上述缺陷都将引入系统的复杂性并导致同步精度不高的问题,并且在含有操作系统的音频输出终端上,由于系统调度、系统中断的随机性导致同步精度的控制更加复杂。
发明内容
本发明提供的一种音频同步播放的方法、装置和系统,以解决现有音频同 步灵活性欠佳、系统复杂度较高、以及音频同步播放精度不够高的问题。
为达到上述目的,本发明的技术方案是这样实现的:
一方面,本发明实施例提供了一种音频同步播放方法,所述方法包括:
服务器端向各个客户端发送音频数据源路径和预取命令;
各个客户端根据该预取命令从该音频数据源路径获得音频数据,将获得的音频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间;
服务器端在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和该同步播放的开始时间点;
各个客户端在收到该同步播放命令后,判断该同步播放的开始时间点是否到来,在上述同步播放的开始时间点到来之前使用指定数据进行输出操作;在上述同步播放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放。
其中,上述音频数据源路径包括服务器自身的可对外访问的地址、或者网络中该服务器之外的设备的可对外访问的地址。
上述技术方案中,服务器端选取所有客户端预取完成后的一个时间点作为该同步播放的开始时间点。
上述技术方案中,各个客户端在收到该同步播放命令后,判断所述同步播放的开始时间点是否到来包括:
各个客户端每隔预定时间,将本地当前系统时间与上述同步播放的开始时间点进行比较;如果本地当前系统时间大于或等于上述同步播放的开始时间点,则判断上述同步播放的开始时间点到来,反之则判断上述同步播放的开始时间点未到来。
上述技术方案中,在所述同步播放的开始时间点到来之前使用指定的数据0进行输出操作。
上述技术方案中,各个客户端在上述同步播放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量包括:
客户端根据在上述同步播放的开始时间点到来时,获得的当前音频输出链路中已经含有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客户端的输出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或者需要插入的指定数据量。
可选的,上述各个客户端根据该调整量调整本地同步缓冲区中的音频数据包括:
各个客户端对本地同步缓冲区的音频数据进行丢弃操作,并且在客户端的输出采样率与音频数据源的采样率一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*HwRate)/109+BufferFrames;
在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*SrcRate)/109+(BufferFrames*SrcRate)/HwRate;
或者,
各个客户端对本地同步缓冲区的音频数据进行插入操作,并且利用下述公式计算本地同步缓冲区需要插入的指定数据量:
Frames=Magic-(((NewNs-StartNS)*HwRate)/109+BufferFrames);
其中,Erames为计算得到的结果,NewNs表示获得BufferFrames数据时的系统时间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
另一方面,本发明实施例提供了一种音频同步播放装置,包括:同步单元、同步缓冲区、指定数据缓冲区、音频输出单元;其中,
同步缓冲区,用于缓冲从音频数据源获得的需要播放的音频数据;
指定数据缓冲区,用于缓冲指定数值的音频数据;
音频输出单元,用于对音频数据进行输出播放;
同步单元,用于接收服务器端发送的音频数据源路径和预取命令,根据该预取命令从该音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在该同步缓冲区中,并在该同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点,在收到上述同步播放命令后,判断上述同步播放的开始时间点是否到来,在上述同步播放的开始时间点到来之前将该指定数据缓冲区的音频数据输出到该音频输出单元,在上述同步播放的开始时间点到来时计算上述同步缓冲区中的音频数据的调整量,并根据该调整量调整本地同步缓冲区中的音频数据,同时将上述同步缓冲区中调整后的音频数据输出到该音频输出单元。
再一方面,本发明实施例提供了一种音频同步播放系统,该系统包括:服务器端、一个或多个作为音频播放终端的客户端,该服务器端与一个或多个该客户端交互完成同步播放,其中:
上述服务器端,用于向各个客户端发送音频数据源路径和预取命令;以及在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和该述同步播放的开始时间点;
上述客户端包括上述的音频同步播放装置。
本发明实施例的有益效果是:
本发明实施例公开的音频同步播放的方法、装置和系统,相比于现有技术,不是基于时间戳,不需要对音频数据流添加播放时间戳信息,播放终端不需要在整个播放过程中处理时间戳信息,从而有效降低了同步播放的复杂度,增加了同步播放的灵活性。
并且,本发明实施例通过在同步播放的开始时间点到来前输出指定数据完 成音频链路的初始化和建立,使得在同步播放的开始时间点到来时,音频链路已处于稳定状态;以及本发明实施例通过在同步播放的开始时间点到来时,计算同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放,从而将影响同步播放精度的因素剥离出来,使同步播放精度更加可控,有效的规避了系统进程调度、中断以及系统硬件等因素对同步播放的影响,提高了同步播放的精度。
附图简要说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的音频同步播放方法的一种流程示意图;
图2为本发明实施例提供的音频同步播放装置的一种结构示意图;
图3为本发明实施例提供的音频同步播放系统的一种结构示意图;
图4为本发明实施例提供的音频同步播放系统的一种操作流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1为本发明实施例提供的音频同步播放方法的一种流程示意图,该方法包括:
S101,服务器端向各个客户端发送音频数据源路径和预取命令。
具体的,音频数据源路径包括服务器自身的可对外访问的地址、或者网络中该服务器之外的设备的可对外访问的地址,典型的例如网络地址。即上述音频数据源路径提供的音频数据可以为服务器端本地的音频数据,也可以为网络中其他设备上的音频数据。
S102,各个客户端根据上述预取命令从音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间。
在实际应用中,预取门限按照实际情况确定,一般与应用场景和音频通信系统平台相关;例如,在客户端和服务器端传输速率较低时,设定较大预取门限以保证不会因为传输延时而导致音频断续,从而保证音频输出的连续性。
S103,服务器端在收到所有客户端(所有需要音频同步的客户端)的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和同步播放的开始时间点。
服务器端收到客户端预取完成应答后,判断是否所有客户端都预取完成,当所有客户端都预取完成,服务器端依据所有客户端预取完成时间得到同步播放的开始时间StartNs,服务器端向各个客户端发送同步播放命令及同步播放的开始时间点StartNs。
需要说明的是,同步播放的开始时间StartNs是在所有客户端预取完成后的一个时间点,比如在所有客户端预取完成后的第5s,StartNs的计算应按照实际情况确定。
S104,各个客户端在收到同步播放命令后,在同步播放的开始时间点到来之前使用指定数据进行输出操作。
可选地,各个客户端采用如下方法判断同步播放的开始时间点是否到来:各个客户端每隔预定时间,将本地当前系统时间与同步播放的开始时间点进行比较;如果本地当前系统时间大于或等于同步播放的开始时间点,则判断同步播放的开始时间点到来,反之则判断同步播放的开始时间点未到来。
需要说明的是,判断同步播放的开始时间点是否到来并不局限于上述方案,因为上述方案是与平台相关的,如果在不含有操作系统的平台上,可以设定硬件定时器,通过定时器来判断同步播放的开始时间点是否已经到来;而在含有操作系统的平台上,可以利用软件定时器的方式来实现,但软件定时器的方法精度不够高。
在一种优选实施例中,同步播放的开始时间点到来之前使用数据0进行输出操作。当然也可以采用数据0之外的其他指定数据,例如1、2等,只要该指定数据不会产生人耳能感知的声音即可。
还需要说明的是,音频链路的初始化和建立受客户端系统的进程调度、中断及系统硬件等因素所影响,各个客户端完成音频链路初始化和建立的时间是不一致的。本实施例在同步播放的开始时间点到来之前使用指定数据(例如数据0)进行输出操作来完成音频链路的初始化和建立,是为了使本地同步缓冲区中的音频数据在开始播放时整个音频链路已经处于稳定状态,也即音频链路中的播放缓冲区处于稳定状态,此时音频硬件能够按照自己的采样率从播放缓冲区中获得数据,而客户端可以按照自身的步调往播放缓冲区中填入数据,并且该音频链路的初始化和建立的稳定过程不会被人耳感知,从而使用户具有良好的使用体验。
S105,各个客户端在同步播放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放。
具体地,客户端根据在同步播放的开始时间点到来时,获得的当前音频输出链路中已经含有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客户端的输出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或者需要插入的指定数据量。
一种可选方案是,各个客户端一致采用对本地同步缓冲区的音频数据进行丢弃操作来调整本地同步缓冲区中的音频数据。其中,
在客户端的输出采样率与音频数据源的采样率一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*HwRate)/109+BufferFrames;
或者,在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*SrcRate)/109+(BufferFrames*SrcRate)/HwRate。
这种方案下,客户端将本地同步缓冲区已存储的音频数据中,从首个数据开始Frames大小的数据量丢弃。该首个数据为在音频数据的播放顺序中位于第 一个的数据。
另一种可选方案是,在客户端不希望丢弃音频数据时,各个客户端可以一致采用对本地同步缓冲区的音频数据进行插入操作来调整本地同步缓冲区中的音频数据。其中,
可以利用下述公式计算本地同步缓冲区需要插入的指定数据量:
Frames=Magic-(((NewNs-StartNS)*HwRate)/109+BufferFrames)。
这种方案下,客户端将本地同步缓冲区中已存储的音频数据中,在首个数据之前添加Frames大小的数据量。该首个数据为在音频数据的播放顺序中位于第一个的数据。
上述公式中,Frames为计算得到的结果,NewNs表示获得BufferFrames数据时的系统时间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
需要说明的是,上述中对音频数据进行输出播放的操作包括:
在含有混音器的系统中各个客户端将本地同步缓冲区中的音频数据先输出到混音器中,混音完成后再输出到播放缓冲区中,最后由音频输出单元进行输出播放;或者,
在不含有混音器的系统中各个客户端将本地同步缓冲区中的音频数据直接输出到播放缓冲区中,然后由音频输出单元进行输出播放;或者,
各个客户端将本地同步缓冲区中的音频数据直接由音频输出单元进行输出播放。
还需要说明的是,此处的数据输出操作是往目标模块输出一段音频数据,等待一段时间(休眠或进行其他操作),再往目标模块输出下一段音频数据,一段音频数据的大小和等待时间长短是和具体平台相关的。
由上,本实施例的方案可以应用在含有操作系统或混音器的音频输出终端 上,能有效的规避操作系统进程调度、中断等对同步播放的影响。利用在播放时间到来前开始指定数据的输出来完成音频链路的初始化和建立,以使播放时间到来时音频链路已经处于稳定状态。并且,在输出同步缓冲区中有效音频数据时通过计算确定需要丢弃或插入的数据量大小以实现音频的同步播放。本方案使进程调度、中断以及系统硬件平台等因素对同步操作影响降到最低,提高了同步播放的精度。
图2为本发明实施例提供的音频同步播放装置的一种结构示意图,该音频同步播放装置20包括:同步单元21、同步缓冲区22、指定数据缓冲区23、音频输出单元24;其中,
同步缓冲区22,用于缓冲从音频数据源获得的需要播放的音频数据;
指定数据缓冲区23,用于缓冲指定数值的音频数据;
音频输出单元24,用于对音频数据进行输出播放;
同步单元21,用于接收服务器端发送的音频数据源路径和预取命令,根据预取命令从音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在同步缓冲区22中,并在同步缓冲区22缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点,在收到同步播放命令后,判断同步播放的开始时间点是否到来,在同步播放的开始时间点到来之前将指定数据缓冲区23的音频数据输出到音频输出单元24,在同步播放的开始时间点到来时计算同步缓冲区22中的音频数据的调整量,并根据该调整量调整本地同步缓冲区22中的音频数据,同时将同步缓冲区22中调整后的音频数据输出到音频输出单元24。
优选地,同步单元21在同步播放的开始时间点到来之前使用数据0进行输出操作。
一种实施例,同步单元21具体是每隔预定时间,将本地当前系统时间与同步播放的开始时间点进行比较;如果本地当前系统时间大于或等于同步播放的开始时间点,则判断同步播放的开始时间点到来,反之则判断同步播放的开始时间点未到来。
在一种优选实施例中,本发明的音频同步播放装置20还包括:
混音器,用于对同步缓冲区或指定数据缓冲区中的音频数据和其他音频模块的音频数据的输出进行混音;和/或,
播放缓冲区,用于缓冲上述混音器、或同步缓冲区或指定数据缓冲区中输出的音频数据。
需要说明的是,在含有混音器的系统中首先将数据输出到混音器中,混音完成后再输出到播放缓冲区中;在不含有混音器的系统中将数据直接输出到播放缓冲区中,音频输出单元24从播放缓冲区中读取音频数据并输出播放。另外在简单的播放系统中可以将音频数据直接输出到音频输出单元24进行播放。
在另一种实施例中,同步单元21具体是根据在同步播放的开始时间点到来时,获得的当前音频输出链路中已经含有的音频数据量、获得该音频数据量的系统时间、同步播放的开始时间点,以及客户端的输出采样率和音频数据源的采样率,计算本地同步缓冲区需要丢弃的音频数据量或者需要插入的指定数据量。
优选地,上述同步单元21可以包括第一计算模块、第二计算模块或第三计算模块。
第一计算模块,用于在客户端的输出采样率与音频数据源的采样率一致时,利用下述公式计算同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*HwRate)/109+BufferFrames;
第二计算模块,用于在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
Frames=((NewNs-StartNS)*SrcRate)/109+(BufferFrames*SrcRate)/HwRate;
第三计算模块,用于在客户端不希望丢弃音频数据时,利用下述公式计算本地同步缓冲区需要插入的指定数据量:
Frames=Magic-(((NewNs-StartNS)*HwRate)/109+BufferFrames);
其中,Erames为计算得到的结果,NewNs表示获得BufferFrames数据时的系统 时间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数,是一个经验常数,用来避免丢弃音频数据。
需要说明的是,BufferFrames指的是NewNs时刻音频通路中已含有的音频数据量,即被同步单元21输出的数据,但还没有被音频硬件最终输出的数据;其中BufferFrames和NewNs的值可以通过编程获得。
图3为本发明实施例提供的音频同步播放系统的一种组成示意图,该系统包括:服务器端31、N个作为音频播放终端的客户端30,服务器端31与与N个客户端30交互完成同步播放,N为大于或等于1的正整数。其中,
服务器端31,用于向各个客户端30发送音频数据源路径和预取命令;以及在收到所有客户端30的预取完成应答后,依据所有客户端30的预取完成时间确定出同步播放的开始时间点,并向各个客户端30发送同步播放命令和该同步播放的开始时间点。
客户端30包括上述音频同步播放装置20中的各单元和模块。
上述中,服务器端31提供的音频数据源路径可以是本地路径,也可以是其他网络路径,此时只需保证整个系统的需要音频同步的各个客户端都能访问网络。
上述中,服务器端31选取所有客户端预取完成后的一个时间点作为同步播放的开始时间点。
在一种优选实施例中,上述服务器端31中可以设置有上述客户端30的音频播放和同步功能等,服务器可以作为音频播放终端使用。此时服务器端31在提供音频数据源路径的同时也作为播放终端。
本发明装置和系统实施例中各单元的具体工作方式,可以参见本发明方法实施例的相关内容,在此不再赘述。
图4为本发明实施例提供的音频同步播放系统的一种操作流程示意图,该操作流程包括:
S401,服务器端向各个客户端发送音频数据源路径和预取命令。
其中音频数据源路径可以为服务器自身的可对外访问的地址,也可以为网络中其他设备的可对外访问的地址。
S402,各个客户端根据预取命令从音频数据源路径获得音频数据。
S403,各个客户端将获得的音频数据解码并缓冲在本地同步缓冲区中。
S404,各个客户端判断本地同步缓冲区是否缓冲到预取门限,若否,则返回S403继续缓冲;若是,则跳转到S405。
S405,各个客户端向服务器端发送预取完成应答和预取完成时间。
S406,服务器端等待客户端预取完成。
S407,服务器端判断是否所有的客户端都预取完成,若否,则返回S406继续等待并接收客户端发送的预取完成应答和预取完成时间,若是,则跳转到S408。
S408,服务器端依据所有客户端的预取完成时间确定出同步播放的开始时间点。
S409,服务器端向各个客户端发送同步播放命令和同步播放的开始时间点。
S410,各个客户端在收到同步播放命令后,在同步播放的开始时间点到来之前使用数据0进行输出操作。
S411,各个客户端每隔预定时间,将获得的系统当前时间与同步播放的开始时间点进行比较,判断同步播放的开始时间点是否到来,如果没有到来则返回S410继续使用数据0进行输出操作,如果到来则跳转到S412。
S412,各个客户端计算本地同步缓冲区需要丢弃的音频数据量或者需要插入的数据0的大小。
S413,各个客户端根据计算得到的结果对本地同步缓冲区进行数据的丢弃或插入操作。
S414,各个客户端对本地同步缓冲区中的音频数据进行输出操作;同时从 音频数据源路径不间断地获得音频数据解码并缓冲在本地同步缓冲区中。
需要说明的是,一旦本地同步缓冲区中的音频数据开始输出,客户端就开始从音频数据源路径不间断地获得音频数据解码并缓冲在本地同步缓冲区中的操作,该操作从S402后一直在执行。
S415,各个客户端判断播放是否完成,如果播放未完成,则返回S414继续对本地同步缓冲区中的音频数据进行输出操作;如果播放完成,则跳转到S416。
其中,播放是否完成可以通过判断同步缓冲区的状态确定,如果同步缓冲区长时间没有数据则认为播放完成,但不局限于此种方法。
S416,各个客户端向服务器端发送播放完成应答。
综上所述,本发明实施例公开的音频同步播放的方法、装置和系统,相比于现有技术,不是基于时间戳,不需要对音频数据流添加播放时间戳信息,播放终端不需要在整个播放过程中处理时间戳信息,从而有效降低了同步播放的复杂度,增加了同步播放的灵活性。
并且,本发明实施例通过在同步播放的开始时间点到来前输出指定数据完成音频链路的初始化和建立,使得在同步播放的开始时间点到来时,音频链路已处于稳定状态;以及本发明实施例通过在同步播放的开始时间点到来时,计算同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放,从而将影响同步播放精度的因素剥离出来,使同步播放精度更加可控,有效的规避了系统进程调度、中断以及系统硬件等因素对同步播放的影响,提高了同步播放的精度。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

  1. 一种音频同步播放方法,其特征在于,所述方法包括:
    服务器端向各个客户端发送音频数据源路径和预取命令;
    各个客户端根据所述预取命令从所述音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在本地同步缓冲区中,并在本地同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间;
    服务器端在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和所述同步播放的开始时间点;
    各个客户端在收到所述同步播放命令后,判断所述同步播放的开始时间点是否到来,在所述同步播放的开始时间点到来之前使用指定数据进行输出播放;在所述同步播放的开始时间点到来时,计算本地同步缓冲区中的音频数据的调整量,根据该调整量调整本地同步缓冲区中的音频数据,同时对调整后的音频数据进行输出播放。
  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表示获得BufferFrames数据时的系统时间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频数据源的采样率,BufferFrames表示客户端判断同步播放的开始 时间点StartNs到来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
  8. 一种音频同步播放装置,其特征在于,包括:同步单元、同步缓冲区、指定数据缓冲区、音频输出单元;其中,
    所述同步缓冲区,用于缓冲从音频数据源获得的需要播放的音频数据;
    所述指定数据缓冲区,用于缓冲指定数值的音频数据;
    所述音频输出单元,用于对音频数据进行输出播放;
    所述同步单元,用于接收服务器端发送的音频数据源路径和预取命令,根据所述预取命令从所述音频数据源路径获得需要播放的音频数据,将获得的音频数据解码并缓冲在所述同步缓冲区中,并在所述同步缓冲区缓冲到预取门限后,向服务器端发送预取完成应答和预取完成时间;以及,接收服务器端发送的同步播放命令和同步播放的开始时间点,在收到所述同步播放命令后,判断所述同步播放的开始时间点是否到来,在所述同步播放的开始时间点到来之前将所述指定数据缓冲区的音频数据输出到所述音频输出单元,在所述同步播放的开始时间点到来时计算所述同步缓冲区中的音频数据的调整量,并根据该调整量调整本地同步缓冲区中的音频数据,同时将所述同步缓冲区中调整后的音频数据输出到所述音频输出单元。
  9. 根据权利要求8所述的音频同步播放装置,其特征在于,所述同步单元包括第一计算模块、第二计算模块或者第三计算模块,其中:
    所述第一计算模块,用于在客户端的输出采样率与音频数据源的采样率一致时,利用下述公式计算同步缓冲区需要丢弃的音频数据量:
    Frames=((NewNs-StartNS)*HwRate)/109+BufferFrames;
    所述第二计算模块,用于在客户端的输出采样率与音频数据源的采样率不一致时,利用下述公式计算本地同步缓冲区需要丢弃的音频数据量:
    Frames=((NewNs-StartNS)*SrcRate)/109+(BufferFrames*SrcRate)/HwRate;
    所述第三计算模块,用于利用下述公式计算本地同步缓冲区需要插入的指 定数据量:
    Frames=Magic-(((NewNs-StartNS)*HwRate)/109+BufferFrames);
    其中,Frames为计算得到的结果,NewNs表示获得BufferFrames数据时的系统时间,StartNs表示同步播放的开始时间点,HwRate表示客户端的输出采样率,SrcRate表示音频数据源的采样率,BufferFrames表示客户端判断同步播放的开始时间点StartNs到来时,获得的当前音频输出链路中已经含有的音频数据量,Magic为常数。
  10. 一种音频同步播放系统,其特征在于,所述系统包括:服务器端、一个或多个作为音频播放终端的客户端,所述服务器端与一个或多个所述客户端交互完成同步播放,其中:
    所述服务器端,用于向各个客户端发送音频数据源路径和预取命令;以及在收到所有客户端的预取完成应答后,依据所有客户端的预取完成时间确定出同步播放的开始时间点,并向各个客户端发送同步播放命令和所述同步播放的开始时间点;
    所述客户端包括如权利要求8或9所述的音频同步播放装置。
PCT/CN2015/089042 2014-09-18 2015-09-07 一种音频同步播放的方法、装置和系统 Ceased WO2016041445A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP15841146.2A EP3118855B1 (en) 2014-09-18 2015-09-07 Audio synchronous playing method, device and system
US15/310,000 US10020023B2 (en) 2014-09-18 2015-09-07 Method, apparatus and system for playing audio synchronously
DK15841146.2T DK3118855T3 (en) 2014-09-18 2015-09-07 Method, device and system for synchronous audio playback

Applications Claiming Priority (2)

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

Publications (1)

Publication Number Publication Date
WO2016041445A1 true WO2016041445A1 (zh) 2016-03-24

Family

ID=52160696

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/089042 Ceased WO2016041445A1 (zh) 2014-09-18 2015-09-07 一种音频同步播放的方法、装置和系统

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)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11172303B2 (en) 2019-07-12 2021-11-09 Airoha Technology Corp. Audio concealment method and wireless audio output device using the same
CN115426561A (zh) * 2022-07-29 2022-12-02 歌尔科技有限公司 耳机的控制方法、装置、耳机及介质
CN115696546A (zh) * 2021-07-26 2023-02-03 炬力(珠海)微电子有限公司 音频信号处理方法、装置、存储介质及电子设备
CN117768993A (zh) * 2023-12-25 2024-03-26 广东保伦电子股份有限公司 一种音频同步方法、音频播放系统和存储介质

Families Citing this family (26)

* 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广东移动通信有限公司 一种播放设备的同步播放方法、装置及系统
CN108170398B (zh) * 2016-12-07 2021-05-18 博通集成电路(上海)股份有限公司 用于同步扬声器的装置和方法
US10601914B2 (en) * 2017-04-24 2020-03-24 Phenix Real Time Solutions, Inc. Method and apparatus for synchronizing applications' consumption of remote data
CN109525873B (zh) * 2017-09-18 2022-03-15 炬芯科技股份有限公司 一种音频播放同步方法及装置
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
CN109905752B (zh) * 2019-03-14 2021-06-08 海信视像科技股份有限公司 音频数据处理方法、装置、电子设备和存储介质
CN110134362A (zh) * 2019-05-16 2019-08-16 北京小米移动软件有限公司 音频播放方法、装置、播放设备以及存储介质
US11184729B2 (en) * 2019-05-31 2021-11-23 Knowles Electronics, Llc Synchronization of multiple audio processing chains
CN111556467B (zh) * 2020-03-31 2023-08-08 惠州市德赛西威汽车电子股份有限公司 一种手机互联音频播放处理方法
CN112435649A (zh) * 2020-11-09 2021-03-02 合肥名阳信息技术有限公司 一种多人配音音效混合方法
CN113556292B (zh) * 2021-06-18 2022-09-13 珠海惠威科技有限公司 Ip网络的音频播放方法及系统
CN115119112A (zh) * 2022-07-11 2022-09-27 深圳感臻智能股份有限公司 一种音箱同步播放的方法及装置
CN115632731B (zh) * 2022-10-26 2023-10-13 广东保伦电子股份有限公司 一种多播放终端同步播放策略
TWI893343B (zh) * 2023-01-05 2025-08-11 新加坡商鴻運科股份有限公司 音訊延遲校正方法、電子裝置及電腦可讀儲存媒體
US12284503B2 (en) 2023-01-05 2025-04-22 Ambit Microsystems (Shanghai) Ltd. Audio latency calibration method, electronic device and computer-readable storage medium
CN116260539A (zh) * 2023-03-20 2023-06-13 杭州海康威视数字技术股份有限公司 音频数据同步方法、数字广播系统以及电子设备
CN117687595B (zh) * 2024-01-30 2024-05-28 知鱼智联科技股份有限公司 一种基于物联网的音量调整方法及装置
CN121029438B (zh) * 2025-10-31 2026-01-30 上德联声科技(珠海)有限公司 基于Linux的HIFI音频播放的实时调度系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202568A (zh) * 2006-12-14 2008-06-18 北京三星通信技术研究有限公司 支持联合播放的终端及方法
CN102739661A (zh) * 2012-06-18 2012-10-17 李洋 一种基于数据统计的网络音频同步输出的方法及系统
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
CN103200461A (zh) * 2013-01-14 2013-07-10 易程(苏州)智能系统有限公司 一种多台播放终端同步播放系统及播放方法
CN103198851A (zh) * 2013-03-05 2013-07-10 福建星网视易信息系统有限公司 一种基于时间戳消息的多终端同步播放方法
CN103338204A (zh) * 2013-07-05 2013-10-02 曾德钧 一种音频同步输出方法及系统
US20140132837A1 (en) * 2011-09-05 2014-05-15 Cywee Group Limited Wireless video/audio data transmission system having i-frame only gop structure
CN104269182A (zh) * 2014-09-18 2015-01-07 歌尔声学股份有限公司 一种音频同步播放的方法、装置和系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998044733A1 (en) * 1997-03-31 1998-10-08 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
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
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 삼성전자주식회사 미디어 재생 방법 및 미디어 장치

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202568A (zh) * 2006-12-14 2008-06-18 北京三星通信技术研究有限公司 支持联合播放的终端及方法
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
CN102739661A (zh) * 2012-06-18 2012-10-17 李洋 一种基于数据统计的网络音频同步输出的方法及系统
CN103200461A (zh) * 2013-01-14 2013-07-10 易程(苏州)智能系统有限公司 一种多台播放终端同步播放系统及播放方法
CN103198851A (zh) * 2013-03-05 2013-07-10 福建星网视易信息系统有限公司 一种基于时间戳消息的多终端同步播放方法
CN103338204A (zh) * 2013-07-05 2013-10-02 曾德钧 一种音频同步输出方法及系统
CN104269182A (zh) * 2014-09-18 2015-01-07 歌尔声学股份有限公司 一种音频同步播放的方法、装置和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3118855A4 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11172303B2 (en) 2019-07-12 2021-11-09 Airoha Technology Corp. Audio concealment method and wireless audio output device using the same
CN115696546A (zh) * 2021-07-26 2023-02-03 炬力(珠海)微电子有限公司 音频信号处理方法、装置、存储介质及电子设备
CN115426561A (zh) * 2022-07-29 2022-12-02 歌尔科技有限公司 耳机的控制方法、装置、耳机及介质
CN117768993A (zh) * 2023-12-25 2024-03-26 广东保伦电子股份有限公司 一种音频同步方法、音频播放系统和存储介质
CN117768993B (zh) * 2023-12-25 2024-11-15 广东保伦电子股份有限公司 一种音频同步方法、音频播放系统和存储介质

Also Published As

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

Similar Documents

Publication Publication Date Title
WO2016041445A1 (zh) 一种音频同步播放的方法、装置和系统
CN113225598B (zh) 移动端音视频同步的方法、装置、设备及存储介质
CN105992025B (zh) 基于音频同步播放的系统时间校准方法、音频同步播放方法及装置
CN104254007B (zh) 一种音频处理方法及装置
CN102739661B (zh) 一种基于数据统计的网络音频同步输出的方法及系统
WO2017166497A1 (zh) 一种多媒体数据的同步播放方法及装置
US9837093B2 (en) Packet based delivery of multi-channel audio over wireless links
EP2332274A1 (en) Methods and apparatus for providing modified timestamps in a communication system
US10587954B2 (en) Packet based delivery of multi-channel audio over wireless links
JP2007511939A5 (zh)
JP2023508945A (ja) 無線オーディオのビデオとの同期
CN104683866A (zh) 一种接收视频流的播放处理方法
CN110177294A (zh) 播放器音视频同步方法及系统、存储介质及终端
CN105049906A (zh) 一种数据处理方法及电子设备
CN106331820B (zh) 音视频的同步处理方法和装置
CN103797809B (zh) 对媒体流进行处理以便在多个端点同步输出
CN107710754B (zh) 音视频数据同步方法和装置
CN114710687A (zh) 音视频同步方法、装置、设备及存储介质
CN113382300A (zh) 一种音视频播放方法和装置
CN105721920A (zh) 一种媒体在多设备上协同播放的方法、装置及终端
CN111862912B (zh) 曲谱显示方法、装置、服务器及存储介质
US10263717B1 (en) Method of synchronizing pause process and system of synchronizing pause process
CN115913431B (zh) 主从播放设备同步播放的方法、从播放设备及播放系统
CN119943070A (zh) 一种基于动态决策的音频时钟偏差补偿方法和装置
CN119012329A (zh) 一种音频数据的处理方法、处理装置及处理系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15841146

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2015841146

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015841146

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 15310000

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE