CN100339906C - 控制音频流缓冲的方法和装置 - Google Patents
控制音频流缓冲的方法和装置 Download PDFInfo
- Publication number
- CN100339906C CN100339906C CNB021608881A CN02160888A CN100339906C CN 100339906 C CN100339906 C CN 100339906C CN B021608881 A CNB021608881 A CN B021608881A CN 02160888 A CN02160888 A CN 02160888A CN 100339906 C CN100339906 C CN 100339906C
- Authority
- CN
- China
- Prior art keywords
- impact damper
- time
- buffering
- duration
- decoding
- 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.)
- Expired - Fee Related
Links
- 230000003139 buffering effect Effects 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims abstract description 21
- 239000002131 composite material Substances 0.000 claims description 25
- 238000003860 storage Methods 0.000 claims description 9
- 238000005215 recombination Methods 0.000 claims description 7
- 230000006798 recombination Effects 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims 1
- 230000015654 memory Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012857 repacking Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种控制音频流缓冲以便用最少的缓冲连续无中断地播放音频的方法和装置。该控制数据缓冲的方法包括步骤:(a)考虑到网络的状态,基于对应于数据包划分单元的时间标记,确定压缩音频数据的缓冲时长;(b)基于步骤(a)中确定的缓冲时间,计算压缩音频数据在缓冲器中存储的时长;(c)在解码缓冲器中将输入的压缩音频数据缓冲步骤(b)中计算出的时长;以及(d)当步骤(c)中的缓冲时长结束时,将解码缓冲器中存储的压缩音频数据解码,并将已解码的音频数据存储在复合缓冲器中,以与视频数据同步。
Description
技术领域
本发明涉及一种控制数字音频缓冲的系统,特别涉及一种控制音频流缓冲以便用最少的缓冲连续无中断地播放音频的方法和装置。
背景技术
一般说来,人类的耳朵对音频录音重现时的音频流中断很敏感。为防止音频流的中断,音频播放器在缓冲终端执行缓冲。
传统音频播放器在复合缓冲器控制音频数据缓冲以存储已还原的音频数据。
然而,由于控制由传统复合缓冲器执行的缓冲的方法涉及已解码的音频数据,需要大量的内存,从而大量内存引起的信号延迟时间增加。
发明内容
为解决上述及其它问题,本发明的一个方面是提供一种控制音频流缓冲的方法和装置,该方法和装置能够使用最少的内存减少音频的中断,其中,由传统复合缓冲器控制的、用于存储已还原的音频数据的缓冲,为存储压缩音频数据的解码缓冲器所控制。
因此,为实现上述方面,根据本发明的一个方面,提供了一种控制数据缓冲的方法。该方法包括:(a)考虑到网络的状态,基于对应于数据包划分单元的时间标记,确定压缩音频数据的缓冲时长;(b)基于步骤(a)中确定的缓冲时间,计算压缩音频数据在缓冲器中存储的时长;(c)在解码缓冲器中将输入的压缩音频数据缓冲步骤(b)中计算出的时长;以及(d)当步骤(c)中的缓冲时长结束时,将解码缓冲器中存储的压缩音频数据解码,并将已解码的音频数据存储在复合缓冲器中,以与视频数据同步。
为实现上述方面,根据本发明的另一个方面,提供了一种控制数据缓冲的装置。改装置包括:分析单元,用于从网络接收音频流,并将接收到的音频流划分为首标和压缩音频数据;解码缓冲器,用于存储已在分析单元中分离出来的压缩音频数据;解码器,用于还原存储在解码缓冲器的音频数据;复合缓冲器,用于存储已由解码器解码的音频数据;声卡缓冲器,用于存储原来存储在复合缓冲器中的音频数据,以播放该音频数据;以及控制器,用于以基于时间标记确定的缓冲时长为基础,计算存储在解码缓冲器中的时长,将解码缓冲器中的音频数据缓冲该时长,当解码缓冲器的缓冲时长结束时,将音频数据解码并存储到在复合缓冲器中,并且参考分析单元分离出的首标信息中的时间标记,将存储在复合缓冲器中的音频数据输出到声卡缓冲器。
附图说明
通过结合附图对本发明的优选实施例进行详细描述,本发明的上述目的和优点将会变得更加清楚,其中:
图1给出根据本发明的控制音频流缓冲的装置的方框图;而
图2给出图解根据本发明的控制音频流缓冲的方法的流程图。
具体实施方式
下面将参考附图详细描述本发明的结构和操作。
图1给出根据本发明的控制音频流缓冲的装置的方框图。参考图1,控制音频流缓冲的装置包括分析单元110、解码缓冲器120、解码器130、复合缓冲器140、控制器150、声卡缓冲器160、扬声器170。
下面参考附图1描述控制音频流缓冲的装置。
首先,程序提供者通过网络或文件提供AC3或MP3格式的压缩包单元作为音频流。音频流由首标和音频数据组成。而首标中包含同步信息如时间标记。所有音频包都是具有相同时间单位的存取单元,并被划分成复合时间标记。
分析单元110从网络接收音频流,并将接收到的音频流划分为首标和压缩音频数据。
解码缓冲器120将已在分析单元110中分离出来的压缩音频数据缓冲预定的时长。该预定的时长通过从缓冲时长中减去解码器的解码时间和声卡缓冲器的延迟时间得到。
解码器130将存储在解码缓冲器120中的压缩音频数据解码。
复合缓冲器140存储从解码器130接收的已解码的音频数据,以与视频数据和其它源数据同步。
基于控制器150产生的时间标记信息,声卡缓冲器160存储原来存储在复合缓冲器140中的音频数据。
控制器150以基于分析单元110检测到的时间标记确定的缓冲时长为基础,计算存储在解码缓冲器120中的时长;将解码缓冲器120中的音频数据缓冲该时长;当解码缓冲器120的数据存储时间结束时,将音频数据输出到解码器130;执行解码;将已解码的音频数据缓冲在复合缓冲器140中;并且参考分析单元110检测到的时间标记,将存储在复合缓冲器140中的音频数据输出到声卡缓冲器160
最后,存储在声卡缓冲器160中的音频数据被传送到声卡,并通过扬声器170播放。
图2给出图解根据本发明的控制音频流缓冲的方法的流程图。
假设复合时间标记为Tcts,缓冲时长为Tdelay,声卡缓冲器160中延迟的时间为Tdelta,而最大解码时间为Tdecoding。在所有数字音频压缩方法中,抽样数据以预定的时长压缩。因此,重放时间可以通过存取单元数乘以它们的持续时间计算。另外,因为解码缓冲器120存储压缩音频数据,所以就同样的时长而言,解码缓冲器120的长度远比复合缓冲器140的长度小。
在步骤210中,考虑到网络的状态,基于对应于复合时间标记Tcts的时间中的一点,确定缓冲时长Tdelay。结果,确定了将由解码缓冲器120缓冲的存取单元数。
随后,在步骤220中,基于已确定的缓冲时长Tdelay,计算在解码缓冲器120中存储音频数据的时长。更确切的说,通过从缓冲时长中减去解码器130的解码时间和声卡缓冲器160的延迟时间,得到在解码缓冲器120中存储的时长。
随后,在步骤225和230中,解码缓冲器120缓冲通过网络输入的压缩音频数据,直到该计算出的时长结束。
随后,当由解码缓冲器120缓冲的压缩音频数据的缓冲时间超过上述计算出的时长时,将压缩音频数据输出到解码器130。
随后,在步骤240中,解码器130将从解码缓冲器120输入的压缩音频数据解码。
随后,在步骤250中,在复合缓冲器140中存储已解码的音频数据,以与其它数据如视频数据同步。在这种情况下,在复合缓冲器140中存储的时间是实际时间与((Tdecoding-actual decoding time)+Tdelta)之和,所述实际时间对应于复合时间标记。
随后,在步骤260中,检查复合缓冲器140的音频数据存储时间是否超过了复合时间标记Tcts减去声卡缓冲器160的延迟时间Tdelta得到的时间。
在这种情况下,当复合缓冲器140的音频数据存储时间超过了复合时间标记的时间Tcts减去声卡缓冲器160的延迟时间Tdelta得到的时间时,将音频数据传送到声卡缓冲器160。
随后,在步骤280中,根据抽样率重现存储在声卡缓冲器160中音频数据。在这种情况下,一旦有一个存取单元处于备用状态,而且当前正在播放的存取单元结束,就可播放存储在声卡缓冲器160中音频数据,因此,需要至少能够容纳两个存取单元的缓冲器。
如上所述,在这种根据本发明的控制音频流缓冲的方法和装置中,由传统复合缓冲器控制的、用于存储已还原的音频数据的缓冲,为存储压缩音频数据的解码缓冲器所控制,由此使用最少的内存减少了音频的中断。
本发明不只限于上述实施例,但是本领域的技术人员应该理解,在不脱离本发明的精神和范围的情况下,可以对其进行形式和细节的各种修改。换句话说,本发明可以被用于控制视频流的缓冲。
Claims (5)
1.一种控制数据缓冲的方法,该方法包括:
(a)考虑到网络的状态,基于对应于数据包划分单元的时间标记,确定压缩音频数据的缓冲时长;
(b)基于步骤(a)中确定的缓冲时长,通过从缓冲时长中减去解码器的解码时间和声卡缓冲器的延迟时间来计算压缩音频数据在解码缓冲器中存储的时长;
(c)在解码缓冲器中将输入的压缩音频数据缓冲步骤(b)中计算出的时长;以及
(d)当步骤(c)中的缓冲时长结束时,将解码缓冲器中存储的压缩音频数据解码,并将已解码的音频数据存储在复合缓冲器中,以与视频数据同步。
2.如权利要求1中的方法,其中在步骤(d)中的解码数据存储时间是对应于时间标记的时间与((最大解码时间-实际解码时间)+声卡缓冲器的延迟时间)之和。
3.如权利要求1中的方法,进一步包括当复合缓冲器的音频数据存储时间超过复合时间标记的时间减去声卡缓冲器的延迟时间得到的时间时,,将步骤(d)中存储的音频数据存储到声卡缓冲器中。
4.如权利要求3中的方法,其中存储到声卡缓冲器中的时间是时间标记减去声卡缓冲器的延迟时间得到的时间。
5.一种控制数据缓冲的装置,该装置包括:
分析单元,用于从网络接收音频流,并将接收到的音频流划分为首标和压缩音频数据;
解码缓冲器,用于存储已在分析单元中分离出来的压缩音频数据;
解码器,用于还原存储在解码缓冲器中的音频数据;
复合缓冲器,用于存储已由解码器还原的音频数据;
声卡缓冲器,用于存储原来存储在复合缓冲器中的音频数据,以播放该音频数据;以及
控制器,用于以基于时间标记确定的缓冲时长为基础,计算存储在解码缓冲器中的时长,将解码缓冲器中的音频数据缓冲该时长,当解码缓冲器的缓冲时长结束时,将音频数据解码并存储到在复合缓冲器中,并且参考分析单元分离出的首标信息中的时间标记,将存储在复合缓冲器中的音频数据输出到声卡缓冲器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR24600/2002 | 2002-05-04 | ||
KR24600/02 | 2002-05-04 | ||
KR10-2002-0024600A KR100490403B1 (ko) | 2002-05-04 | 2002-05-04 | 오디오 스트림의 버퍼링 제어 방법 및 그 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1455408A CN1455408A (zh) | 2003-11-12 |
CN100339906C true CN100339906C (zh) | 2007-09-26 |
Family
ID=29267933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB021608881A Expired - Fee Related CN100339906C (zh) | 2002-05-04 | 2002-12-31 | 控制音频流缓冲的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7240013B2 (zh) |
JP (1) | JP2003330496A (zh) |
KR (1) | KR100490403B1 (zh) |
CN (1) | CN100339906C (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050096918A1 (en) * | 2003-10-31 | 2005-05-05 | Arun Rao | Reduction of memory requirements by overlaying buffers |
US7660366B2 (en) | 2004-08-30 | 2010-02-09 | Harmonic Inc. | Message synchronization over a stochastic network |
US7640352B2 (en) * | 2004-09-24 | 2009-12-29 | Microsoft Corporation | Methods and systems for presentation of media obtained from a media stream |
JP4511952B2 (ja) * | 2005-01-07 | 2010-07-28 | 日本放送協会 | メディア再生装置 |
US7613112B2 (en) | 2005-06-28 | 2009-11-03 | Nokia Corporation | Optimizing playback startup time of bursty real-time streams |
CN100442858C (zh) * | 2005-10-11 | 2008-12-10 | 华为技术有限公司 | 分组网络中多媒体实时传输的唇同步方法及其装置 |
US8199618B2 (en) * | 2006-02-22 | 2012-06-12 | Mediatek Inc. | Buffer control system for reducing buffer delay time between the playback of tracks and method thereof |
US9135951B2 (en) * | 2006-10-10 | 2015-09-15 | Qualcomm Incorporated | System and method for dynamic audio buffer management |
KR101275084B1 (ko) * | 2011-06-03 | 2013-06-17 | 주식회사 파인디지털 | 스트리밍 데이터 재생방법 및 이를 적용한 단말기 |
KR102393798B1 (ko) | 2015-07-17 | 2022-05-04 | 삼성전자주식회사 | 오디오 신호 처리 방법 및 장치 |
US9880803B2 (en) | 2016-04-06 | 2018-01-30 | International Business Machines Corporation | Audio buffering continuity |
KR102411811B1 (ko) * | 2018-02-26 | 2022-06-23 | 한국전자통신연구원 | 오디오 입력 처리 지연 축소를 위한 버퍼 컨트롤 장치 및 방법 |
CN109714634B (zh) * | 2018-12-29 | 2021-06-29 | 海信视像科技股份有限公司 | 一种直播数据流的解码同步方法、装置及设备 |
US10817190B1 (en) * | 2019-07-15 | 2020-10-27 | Amazon Technologies, Inc. | System and method for managing memory compression security |
CN112764709B (zh) * | 2021-01-07 | 2021-09-21 | 北京创世云科技股份有限公司 | 一种声卡数据的处理方法、装置及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5502573A (en) * | 1992-12-18 | 1996-03-26 | Sony Corporation | Apparatus for reproducing and decoding multiplexed data from a record medium with means for controlling data decoding as a function of synchronization errors |
JP2000308012A (ja) * | 1999-04-22 | 2000-11-02 | Mitsubishi Electric Corp | 映像音声再生装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3552249B2 (ja) | 1993-07-09 | 2004-08-11 | ソニー株式会社 | 画像および音声信号処理方法とその装置 |
JP3364281B2 (ja) | 1993-07-16 | 2003-01-08 | パイオニア株式会社 | 時分割ビデオ及びオーディオ信号の同期方式 |
JP3197766B2 (ja) * | 1994-02-17 | 2001-08-13 | 三洋電機株式会社 | Mpegオーディオデコーダ、mpegビデオデコーダおよびmpegシステムデコーダ |
KR100238261B1 (ko) * | 1994-12-31 | 2000-01-15 | 윤종용 | 가변 비트율 복호화장치 |
KR100188946B1 (ko) * | 1996-01-24 | 1999-06-01 | 김광호 | 엠펙 복호기의 오디오/비디오 복호지연 보상 장치 및방법 |
JPH1098681A (ja) * | 1996-09-24 | 1998-04-14 | Ekushingu:Kk | デコード装置 |
JPH10271482A (ja) * | 1997-03-27 | 1998-10-09 | Nippon Telegr & Teleph Corp <Ntt> | 符号化映像の同期再生制御方法およびシステム |
JP3422686B2 (ja) * | 1998-06-12 | 2003-06-30 | 三菱電機株式会社 | データ復号装置及びデータ復号方法 |
JP3895066B2 (ja) | 1999-01-28 | 2007-03-22 | 三菱電機株式会社 | メディア間同期装置及びメディア間同期方法 |
-
2002
- 2002-05-04 KR KR10-2002-0024600A patent/KR100490403B1/ko not_active IP Right Cessation
- 2002-12-31 CN CNB021608881A patent/CN100339906C/zh not_active Expired - Fee Related
-
2003
- 2003-01-07 US US10/337,278 patent/US7240013B2/en not_active Expired - Fee Related
- 2003-01-27 JP JP2003017986A patent/JP2003330496A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5502573A (en) * | 1992-12-18 | 1996-03-26 | Sony Corporation | Apparatus for reproducing and decoding multiplexed data from a record medium with means for controlling data decoding as a function of synchronization errors |
JP2000308012A (ja) * | 1999-04-22 | 2000-11-02 | Mitsubishi Electric Corp | 映像音声再生装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20030086376A (ko) | 2003-11-10 |
CN1455408A (zh) | 2003-11-12 |
JP2003330496A (ja) | 2003-11-19 |
US20030208359A1 (en) | 2003-11-06 |
US7240013B2 (en) | 2007-07-03 |
KR100490403B1 (ko) | 2005-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100339906C (zh) | 控制音频流缓冲的方法和装置 | |
CN1564984A (zh) | 网络媒体播放 | |
US20090007208A1 (en) | Program, data processing method, and system of same | |
CN1873821A (zh) | 用于同步回放的装置和方法 | |
US7840290B2 (en) | Encoded digital audio reproducing apparatus | |
CN1463441A (zh) | Mp3的特技播放 | |
CN101022523A (zh) | 移动通信终端影音文件录制和播放方法和设备 | |
US20060093331A1 (en) | Audio decoding system with a ring buffer and its audio decoding method | |
WO2004071085A1 (ja) | コード変換方法及びその装置 | |
KR101411197B1 (ko) | 패킷 스트림 내의 지터 보상 방법 | |
US8369456B2 (en) | Data processing apparatus and method and encoding device | |
EP1455360A2 (en) | Disc apparatus, disc recording method, disc playback method, recording medium, and program | |
US7324858B2 (en) | Replay apparatus, replay method, recording medium, and computer program | |
US7664373B2 (en) | Program, data processing method, and system of same | |
US20110022400A1 (en) | Audio resume playback device and audio resume playback method | |
US7773476B2 (en) | Apparatus for reproducing encoded data | |
US20090257484A1 (en) | Method for audio-video encoding and apparatus for multimedia storage | |
US8891945B2 (en) | Recording/reproducing method and recording/reproducing device | |
CN1647026A (zh) | 用于存储视听数据的电路、设备和方法 | |
JP2002238050A (ja) | データ変換装置、データ符号化装置、及びデータ記録装置 | |
JP4484220B2 (ja) | 映像配信装置 | |
US20060114945A1 (en) | Signal output device and signal output method | |
JP4862136B2 (ja) | 音声信号処理装置 | |
JP2004101638A (ja) | 信号処理装置 | |
JP2002108399A (ja) | 音声編集システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070926 Termination date: 20141231 |
|
EXPY | Termination of patent right or utility model |