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
beginning
client
voice data
synchronous
buffering area
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
CN201410479022.0A
Other languages
English (en)
Other versions
CN104269182A (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.)
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 CN201410479022.0A priority Critical patent/CN104269182B/zh
Publication of CN104269182A publication Critical patent/CN104269182A/zh
Priority to EP15841146.2A priority patent/EP3118855B1/en
Priority to PCT/CN2015/089042 priority patent/WO2016041445A1/zh
Priority to US15/310,000 priority patent/US10020023B2/en
Priority to DK15841146.2T priority patent/DK3118855T3/en
Application granted granted Critical
Publication of CN104269182B publication Critical patent/CN104269182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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 OR 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 OR 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/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 OR 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

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);
其中,Frames为计算得到的结果,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);
其中,Frames为计算得到的结果,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所述的音频同步播放装置。
CN201410479022.0A 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统 Active CN104269182B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201410479022.0A CN104269182B (zh) 2014-09-18 2014-09-18 一种音频同步播放的方法、装置和系统
EP15841146.2A EP3118855B1 (en) 2014-09-18 2015-09-07 Audio synchronous playing method, device and system
PCT/CN2015/089042 WO2016041445A1 (zh) 2014-09-18 2015-09-07 一种音频同步播放的方法、装置和系统
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 (1)

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

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 Active 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 (23)

* 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
CN112218197B (zh) 2019-07-12 2023-03-21 达发科技股份有限公司 音频补偿方法及对应使用此方法的无线音频输出装置
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网络的音频播放方法及系统
CN115632731B (zh) * 2022-10-26 2023-10-13 广东保伦电子股份有限公司 一种多播放终端同步播放策略
CN117768993A (zh) * 2023-12-25 2024-03-26 广东保伦电子股份有限公司 一种音频同步方法、音频播放系统和存储介质
CN117687595B (zh) * 2024-01-30 2024-05-28 知鱼智联科技股份有限公司 一种基于物联网的音量调整方法及装置

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
EP1021917A4 (en) * 1997-03-31 2002-05-15 Broadband Associates METHOD AND SYSTEM FOR DELIVERING A DISPLAY 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
WO2016041445A1 (zh) 2016-03-24
US10020023B2 (en) 2018-07-10
CN104269182A (zh) 2015-01-07
US20170270962A1 (en) 2017-09-21
EP3118855A4 (en) 2017-05-10
DK3118855T3 (en) 2018-10-29
EP3118855B1 (en) 2018-08-01
EP3118855A1 (en) 2017-01-18

Similar Documents

Publication Publication Date Title
CN104269182B (zh) 一种音频同步播放的方法、装置和系统
CN105992025B (zh) 基于音频同步播放的系统时间校准方法、音频同步播放方法及装置
CN103888818B (zh) 一种电视节目播放方法、设备和系统
CN103338204B (zh) 一种音频同步输出方法及系统
CN111010614A (zh) 一种显示直播字幕的方法、装置、服务器及介质
CN113225598B (zh) 移动端音视频同步的方法、装置、设备及存储介质
CN104254007B (zh) 一种音频处理方法及装置
CN105448312B (zh) 音频同步播放方法、装置及系统
CN109565466A (zh) 多设备间唇音同步方法及设备
CN105025351A (zh) 流媒体播放器缓冲的方法及装置
WO2010019165A1 (en) Methods and apparatus for providing modified timestamps in a communication system
RU2008114358A (ru) Устройство и способ для приема многочисленных потоков в системе мобильной трансляции
CN101710997A (zh) 基于mpeg-2系统实现视、音频同步的方法及系统
CN105611381A (zh) 一种基于无线网络的多设备音频同步播放系统及方法
CN112261445B (zh) 流媒体播放方法、装置、设备及计算机可读存储介质
CN106331820B (zh) 音视频的同步处理方法和装置
CN105049906A (zh) 一种数据处理方法及电子设备
CN112201264A (zh) 音频处理方法、装置、电子设备、服务器及存储介质
CN108882010A (zh) 一种多屏播放的方法及系统
CN113194335B (zh) 流媒体传输方法、传输设备和播放设备
CN103354588A (zh) 录放音采样率的确定方法、装置及系统
CN106303754A (zh) 一种音频数据播放方法及装置
CN110177294A (zh) 播放器音视频同步方法及系统、存储介质及终端
CN103794216A (zh) 一种语音混音处理方法及装置
WO2013142705A1 (en) Voice communication method and apparatus and method and apparatus for operating jitter buffer

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for 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