CN1317637C - 声音与影像的同步方法 - Google Patents

声音与影像的同步方法 Download PDF

Info

Publication number
CN1317637C
CN1317637C CNB2004100024445A CN200410002444A CN1317637C CN 1317637 C CN1317637 C CN 1317637C CN B2004100024445 A CNB2004100024445 A CN B2004100024445A CN 200410002444 A CN200410002444 A CN 200410002444A CN 1317637 C CN1317637 C CN 1317637C
Authority
CN
China
Prior art keywords
voice data
image
fragment
write
sound
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
Application number
CNB2004100024445A
Other languages
English (en)
Other versions
CN1648854A (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.)
Inventec Besta Co Ltd
Original Assignee
Inventec Besta Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Besta Co Ltd filed Critical Inventec Besta Co Ltd
Priority to CNB2004100024445A priority Critical patent/CN1317637C/zh
Publication of CN1648854A publication Critical patent/CN1648854A/zh
Application granted granted Critical
Publication of CN1317637C publication Critical patent/CN1317637C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本发明关于一种声音与影像的同步方法,其中所播放的声音数据与影像数据分别由相对应的复数笔声音数据片段与复数笔影像数据片段所组成。该同步方法首先记录声音数据片段中首先写入声音数据缓冲区域的声音数据片段,其次累计声音数据片段中的总写入数据量,接着计算声音数据片段中已写入声音数据缓冲区域中而尚未播放的声音数据片段的总剩余数据量,经过必要的计算步骤,获知其中实际播放位置与目前播放位置之差,最后依据实际播放位置调整影像数据片段的播放,以达到声音与影像的同步。

Description

声音与影像的同步方法
技术领域
本发明关于一种声音与影像的同步方法,特别涉及一种通过估算声音数据的实际播放位置调整影像数据的播放的声音与影像的同步方法。
背景技术
在现今的计算机应用中,多媒体无疑是最热门与最重要的领域之一,藉由多媒体丰富的影像与声音的效果,所传播的内容可以生动地呈现,并轻易地深入广大听众的心中。
在某些特定作业环境下播放多媒体资料时,有时会出现声音与影像无法同步的情形,这种情形在播放随字幕发音的多媒体内容时尤其显得严重。其原因在于播放声音数据时,数据片段经解压缩等预先处理后,是先行储存于缓冲器中,再由数字模拟转换器(DAC,Digital toAnalog Converter)输出。而某些多媒体播放程序在计算所输出声音数据的数据量时,以传送至缓冲器有多少数据为准,但此时缓冲器中可能存有尚未输出的数据片段,造成实际输出的声音数据较多媒体播放程序所估算的为少,进而导致影像的显示比声音的输出还快,因而出现声音与影像无法同步的情形。
为解决上述问题,即需要正确估算实际上输出了多少声音数据,在其它作业环境中有两种作法,其一为由系统在前次写入的数据片段输出结束后自动呼叫一函数指针,使用者端可将此函数指针指向自己的程序函数,并于此程序函数中计算已经播放的数据片段的长度;其二为由系统端提供一返回长度函数,此函数可于被呼叫时回传缓冲器中剩余的数据量大小。
但以上两种解决方式均需要由系统端提供特定的函数,在未提供该笔函数的作业环境下,相对于系统开发端的使用者难以自行操作,故如何在无需改变系统程序的情况下,改善声音与影像无法同步的情形,实为一急需解决的问题。
发明内容
针对上述问题,本发明的目的为提供一种声音与影像的同步方法,该方法可以在未提供上述特定函数的作业环境下,无需改变系统程序,而能够改善声音与影像无法同步的情形。
为达上述目的,本发明所提供一种声音与影像的同步方法,其中所播放的声音数据与影像数据分别由相对应的复数声音数据片段与复数笔影像数据片段所组成,上述声音数据片段与影像数据片段于播放前需经预先处理并分别暂存于一声音数据缓冲区域与一影像数据缓冲区域中,而代表所处理的声音数据片段相对于声音数据片段的相对位置一目前播放位置,其可于预先处理时由声音数据片段中取得。该声音与影像的同步方法有以下特征,
首先写入声音数据片断;
然后将记录声音数据片段中写入声音数据缓冲区域的声音数据片段的一起始写入时间;
其次累计声音数据片段中已写入声音数据缓冲区域中的声音数据片段的一总写入数据量;
判断是否显示影像,在需要显示影像的情况下,
接着计算声音数据片段中已写入声音数据缓冲区域中而尚未播放的声音数据片段的一总剩余数据量;其中上述总剩余数据量为总写入数据量扣除一取样频率与一经过时间二者的乘积后所得的差,而取样频率为每单位时间的欲播出的声音数据片段的数据量大小,经过时间则为一现在时间扣除起始写入时间;
再接着计算一实际播放位置,其中实际播放位置为目前播放位置扣除总剩余数据量后所得的差;
最后依据实际播放位置调整影像数据片段的播放;
在不显示影像的情况下,判断是否尚有声音数据片断,如有声音数据片断,对剩余的声音数据片断重复上述过程;
在判断没有任何声音数据片断后,播放已写入声音缓冲器中尚未播放的声音数据片断。
由于本发明的声音与影像的同步方法通过估算声音数据的实际播放位置调整影像数据的播放,故无需系统端提供特定的函数,亦无需改变系统程序,因而本发明的声音与影像的同步方法不受特定作业环境的限制,而适用于所有作业环境。因而彻底解决了在系统端未提供特定函数的情形下,使用者端难以自行解决声音与影像不同步的情形问题。
附图说明
图1显示多媒体数据输出流程的示意图;
图2显示本发明的声音与影像的同步方法的流程图;
图3显示目前播放位置与实际播放位置误差的示意图。
图中符号说明
S201  判断是否写入声音数据片段
S202  记录声音数据片段首先写入声音数据输出缓冲器的起始写入时间
S203  累计已写入声音数据输出缓冲器中的声音数据片段的总写入数据量
S204  判断是否暂停、跳跃或重新播放
S205  判断是否显示影像
S206  计算已写入声音数据输出缓冲器中而尚未播放的声音数据片段的总剩余数据量
S207  计算实际播放位置
S208  依据实际播放位置调整影像数据片段的播放
S209  播放已写入声音数据输出缓冲器中而尚未播放的声音数据片段
S210  将总写入数据量归零
S211  判断是否尚有声音数据片段
S212  播放已写入声音数据缓冲器中而尚未播放的声音数据片段
具体实施方式
以下将参照附图,说明本发明较佳实施例的声音与影像的同步方法与计算机可读取的记录媒体。其中相同的组件将以相同的参照符号加以说明。
请参照图1所示,本发明的声音与影像的同步方法用于处理多媒体数据在播放时所产生的不同步的情形。上述多媒体数据同时包含声音与影像数据,通常以压缩格式加以储存,于播放前需经如解压缩等的预先处理,且声音与影像数据可依据单位时间输出的数据量分割为相对应的复数笔声音数据片段与影像数据片段。预先处理完成后的声音与影像数据片段在实际播放前,将分别储存于声音数据输出缓冲器与影像数据输出缓冲器中,而后再由数字模拟转换器(DAC,Digital toAnalog Converter)输出声音数据片段以及由屏幕显示影像数据片段。
需要指出的是,以压缩格式储存上述声音与影像数据并非本发明的要求,未经压缩的声音与影像数据亦可适用本发明的同步方法。
请参照图2所示,本发明的声音与影像的同步方法通过计算声音数据输出缓冲器中剩余的声音数据的数据量,间接估算实际输出的声音数据的数据量,避免以传送至缓冲器中的声音数据的数据量作为实际输出的声音数据的数据量而产生的误差,进而达成声音与影像同步的效果。本发明的声音与影像的同步方法的步骤包含:判断是否写入声音数据片段(S201)、记录声音数据片段首先写入声音数据输出缓冲器的起始写入时间(S202)、累计已写入声音数据输出缓冲器中的声音数据片段的总写入数据量(S203)、判断是否暂停、跳跃或重新播放(S204)、判断是否显示影像(S205)、计算已写入声音数据输出缓冲器中而尚未播放的声音数据片段的总剩余数据量(S206)、计算实际播放位置(S207)、依据实际播放位置调整影像数据片段的播放(S208)、播放已写入声音数据输出缓冲器中而尚未播放的声音数据片段(S209)、将总写入数据量归零(S210)、判断是否尚有声音数据片段(S211)以及播放已写入声音数据缓冲器中而尚未播放的声音数据片段(S212),以下将详细说明本发明的声音与影像的同步方法的各个步骤。
于步骤S201,首先判断是否写入声音数据片段,在后续流程中,回头执行本步骤意在判断是否还有声音数据片段等待输出,若否,则结束本流程,若是,则继续执行步骤S202。
于步骤S202,将记录声音数据片段首先写入声音数据输出缓冲器的起始写入时间,以供其后的步骤在估算实际输出的声音数据的数据量时计算已经过的时间长度,其中上述起始写入时间取自于当时的系统时间。
于步骤S203,累计已写入声音数据输出缓冲器中的声音数据片段的总写入数据量,其中总写入数据量的初始值为零,随着声音数据片段的写入,总写入数据量亦随之累计。
需要指出的是,总写入数据量与声音数据输出缓冲器中现存的声音数据片段的数据量无关,亦不会随着声音数据片段实际由数字模拟转换器输出而减少。此外,写入声音数据输出缓冲器中的各笔声音数据片段在一般情形下具有相同的数据量大小,但即便声音数据片段彼此间数据量大小不同亦无碍于本发明的实施。
于步骤S204,将判断是否暂停、跳跃或重新播放,若是,则执行步骤S209,播放已写入声音数据缓冲器中而尚未播放的声音数据片段,接着再执行步骤S210,将总写入数据量归零,以便以暂停、跳跃或重新播放的目标始点为准,重新累计写入声音数据输出缓冲器中的声音数据片段的总写入数据量,再接着执行步骤S201及其后续步骤。若于步骤S204的判断结果为否,则继续执行步骤S205。
于步骤S205,将判断此时是否显示影像,若否,则执行步骤S211,判断是否还有声音数据片段等待输出,若是,则回到步骤S203,继续于声音数据片段写入声音数据输出缓冲器时累计总写入数据量,若否,则执行步骤S212,播放已写入声音数据缓冲器中而尚未播放的声音数据片段,然后结束本流程。
若于步骤S205的判断结果为是,则继续执行步骤S206,进行下述计算声音数据输出缓冲器中尚未播放的声音数据片段的总剩余数据量的步骤。
于步骤S206,将计算已写入声音数据输出缓冲器中而尚未播放的声音数据片段的总剩余数据量,其计算方式为首先计算已经过的时间长度,此经过时间长度可由现在时间扣除步骤S202所记录的起始写入时间而得,其中上述现在时间亦为系统时间;其次将经过时间乘以取样频率,即可取得于此经过时间内实际播出的声音数据片段的数据量,其中上述取样频率为每单位时间的欲播出的该笔声音数据片段的数据量大小;最后将步骤S203累计所得的总写入数据量扣除在经过时间内实际播出的声音数据片段的数据量即为写入声音数据输出缓冲器中而尚未播放的声音数据片段的总剩余数据量。
于步骤S207,将计算实际播放位置,其可由目前播放位置扣除该总剩余数据量后而得。其中上述目前播放位置代表经预先处理的声音数据片段中其处理时间与目前时间最相近的声音数据片段相对于整体声音数据的相对位置为何。而由于声音数据输出缓冲器中可能尚有未播放的声音数据片段,故目前播放位置与实际播放位置具有误差,其误差即为声音数据输出缓冲器中尚未播放的声音数据片段的数据量。
举例而言,请参照图3所示,假设声音数据包含A、B、C、D、E等五笔声音数据片段,依照前段目前播放位置的定义,目前播放位置为C、D二声音数据片段之间,但由于尚有B、C等二声音数据片段暂存于声音数据输出缓冲器中尚未播放,故实际播放位置应为A、B二声音数据片段之间,B、C等二声音数据片段的数据量即为目前播放位置与实际播放位置间的误差。
在从头播放多媒体数据且于播放过程中并无暂停、跳跃或重新播放的情形之下,实际播放位置可由经过时间乘以取样频率而直接求得,但于多媒体数据并非从头播放或于播放过程中有暂停、跳跃或重新播放的情形时,仍须依据上述步骤S207的方式求取实际播放位置。
在求得实际播放位置后,于步骤S208将依据实际播放位置调整影像数据片段的播放,此时若影像数据缓冲器中的影像数据片段并非与声音数据实际播放位置相对应的影像数据片段,则将其舍弃不用,径行将相对应的影像数据片段加以预先处理并输出。完成本步骤后,便回到步骤S211,判断是否还有声音数据片段等待输出,以决定结束本流程或循环执行上述步骤S203至步骤S208的流程。
由于本方法预先在声音数据开始播放时,记录下起始写入时间,并于播放流程中累计已写入声音数据输出缓冲器中的声音数据片段的总写入数据量,而在显示影像数据时,得以依据经过时间及取样频率,计算出经过时间内实际播出的声音数据片段的数据量,再间接计算出声音数据输出缓冲器中剩余的声音数据的数据量,进而通过声音数据输出缓冲器中剩余的声音数据的数据量得以将目前播放位置校正为实际播放位置,最后依据实际播放位置调整影像数据片段的播放,达成声音与影像同步的效果。
又由于,本发明在应用程序端实际操作时,无需系统端提供特定的函数,亦无需改变系统程序,故本发明的声音与影像的同步方法不受特定作业环境的限制,而适用于所有作业环境。因而彻底解决了在系统端未提供特定函数的情形下,使用者端难以自行解决声音与影像不同步的情形问题。

Claims (5)

1.一种声音与影像的同步方法,其中所播放的声音数据与影像数据分别由相对应的复数笔声音数据片段与复数笔影像数据片段所组成,该笔声音数据片段与该笔影像数据片段于播放前需经预先处理并分别暂存于一声音数据缓冲区域与一影像数据缓冲区域中,而代表所处理的声音数据片段相对于该笔声音数据片段的相对位置为一目前播放位置,其可于预先处理时由声音数据片段中取得,声音与影像的同步方法包含:
首先写入声音数据片断(201);
然后记录该笔声音数据片段中首先写入该声音数据缓冲区域的声音数据片段的一起始写入时间(202);
累计该笔声音数据片段中已写入该声音数据缓冲区域中的声音数据片段的一总写入数据量(203);
判断是否显示影像(205),在需要显示影像的情况下,
计算该笔声音数据片段中已写入该声音数据缓冲区域中而尚未播放的声音数据片段的一总剩余数据量,其中该总剩余数据量为该总写入数据量扣除一取样频率与一经过时间二者的乘积后所得的差,而该取样频率为每单位时间的欲播出的该笔声音数据片段的数据量大小,该经过时间为一现在时间扣除该起始写入时间(206);
计算一实际播放位置,其中该实际播放位置为该目前播放位置扣除该总剩余数据量后所得的差(207);依据该实际播放位置调整该笔影像数据片段的播放(208);
在不显示影像的情况下(205),判断是否尚有声音数据片断(211),如有声音数据片断,对剩余的声音数据片断重复(206)至(208)过程;
在判断没有任何声音数据片断后(211),播放已写入声音缓冲器中尚未播放的声音数据片断(212)。
2.如权利要求1所述的声音与影像的同步方法,其中该声音数据缓冲区域为声音数据输出缓冲器。
3.如权利要求1所述的声音与影像的同步方法,其中该起始写入时间及现在时间均取自于系统时间。
4.如权利要求1所述的声音与影像的同步方法,更包含播放该笔声音数据片段中已写入该声音数据缓冲区域中而尚未播放的声音数据片段,且更包含在该笔声音数据片段中已写入该声音数据缓冲区域中而尚未播放的声音数据片段播放完毕后,将该笔声音数据片段中首先写入该声音数据缓冲区域的声音数据片段的写入时间设定为该起始写入时间,并将该总写入数据量归零。
5.如权利要求1所述的声音与影像的同步方法,更包含清除该笔影像数据片段中已写入该影像数据缓冲区域中而尚未播放的影像数据片段。
CNB2004100024445A 2004-01-20 2004-01-20 声音与影像的同步方法 Expired - Fee Related CN1317637C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100024445A CN1317637C (zh) 2004-01-20 2004-01-20 声音与影像的同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100024445A CN1317637C (zh) 2004-01-20 2004-01-20 声音与影像的同步方法

Publications (2)

Publication Number Publication Date
CN1648854A CN1648854A (zh) 2005-08-03
CN1317637C true CN1317637C (zh) 2007-05-23

Family

ID=34867387

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100024445A Expired - Fee Related CN1317637C (zh) 2004-01-20 2004-01-20 声音与影像的同步方法

Country Status (1)

Country Link
CN (1) CN1317637C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070223875A1 (en) * 2006-03-21 2007-09-27 Tsung-Ning Chung Storage device and method of accessing storage device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020041336A1 (en) * 2000-10-05 2002-04-11 Kabushiki Kaisha Toshiba Moving image decoding and reproducing apparatus, moving image decoding and reproducing method, time control method, computer program product for decoding and reproducing moving image and multimedia information receiving apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020041336A1 (en) * 2000-10-05 2002-04-11 Kabushiki Kaisha Toshiba Moving image decoding and reproducing apparatus, moving image decoding and reproducing method, time control method, computer program product for decoding and reproducing moving image and multimedia information receiving apparatus

Also Published As

Publication number Publication date
CN1648854A (zh) 2005-08-03

Similar Documents

Publication Publication Date Title
US7817900B2 (en) GPU timeline with render-ahead queue
US8473628B2 (en) Dynamically altering playlists
CN101042752A (zh) 用于电子邮件管理的方法和系统
US20120269364A1 (en) Composite audio waveforms
US6784354B1 (en) Generating a music snippet
CN1934646A (zh) 使音频处理模块同步的方法和系统
CN1848691A (zh) 声信号处理装置和方法
CN1507731A (zh) 演示内容重放速率的实时控制技术
CN1705363A (zh) 图像处理装置和图像处理方法
CN101046742A (zh) 一种实时获取多媒体图像的方法以及设备
US20140355786A1 (en) Sound synthesis with fixed partition size convolution of audio signals
CN101034346A (zh) 一种循环队列的数据存储方法
CN1141695C (zh) 产生乐音的方法和装置
CN100339906C (zh) 控制音频流缓冲的方法和装置
CN109858005B (zh) 基于语音识别的文档更新方法、装置、设备及存储介质
CN1317637C (zh) 声音与影像的同步方法
CN1902935A (zh) 用于搜索视频剪辑的设备和方法
CN1703738A (zh) 具有用于实时时间定标的参数的数字音频
CN1913627A (zh) 解码装置
CN1269034C (zh) 一种嵌入式系统中可执行文件的压缩及其加载方法
CN1194539C (zh) 数据率转换装置
CN1781121A (zh) 分段精化
CN1732439A (zh) 音频处理系统
CN102543126A (zh) 一种基于金字塔式多分辨率的音频波形绘制方法
CN1320818C (zh) 确定入口点的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070523

Termination date: 20110120