JP2004254186A - オーディオ・ビデオ同期制御方法及び装置 - Google Patents
オーディオ・ビデオ同期制御方法及び装置 Download PDFInfo
- Publication number
- JP2004254186A JP2004254186A JP2003044337A JP2003044337A JP2004254186A JP 2004254186 A JP2004254186 A JP 2004254186A JP 2003044337 A JP2003044337 A JP 2003044337A JP 2003044337 A JP2003044337 A JP 2003044337A JP 2004254186 A JP2004254186 A JP 2004254186A
- Authority
- JP
- Japan
- Prior art keywords
- audio
- video
- data
- buffer
- synchronization control
- 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.)
- Granted
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【解決手段】圧縮符号化されたオーディオ・ビデオデータを含む入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔におけるデータ量を算出する。算出した時間間隔にしたがって、前記データ量をもつオーディオデータとビデオデータをオーディオバッファとビデオバッファにそれぞれ格納する。タイムスタンプ情報に基づいてデータ転送回数を算出する。算出したデータ転送回数にしたがって、前記オーディオデータと前記ビデオデータをオーディオデコーダとビデオデコーダへ転送する。
【選択図】 図2
Description
【発明の属する技術分野】
本発明は、MPEG4(Moving Picture Experts Group4)システムに規定されるMP4ファイルにおけるオーディオ・ビデオストリームのように、予め圧縮符号化されたオーディオ・ビデオストリームを同期再生するオーディオ・ビデオ同期制御方法及びその装置に関するものである。
【0002】
【従来の技術】
従来のオーディオ・ビデオ同期制御方式では、あるタイムベースに基づいて圧縮符号化されたオーディオ・ビデオストリームにおけるアクセスユニット(AU)ごとにデコードタイムスタンプ(DTS)を記述し、そのデコードタイムスタンプに従って同期再生を行う方式が利用されている。
【0003】
アクセスユニット(AU)とは、オーディオ・ビデオストリームにおいて独立にアクセスできるデータ単位である。たとえば、ビデオの場合はVOP(ビデオオブジェクトプレーン)の符号化データに相当する。MPEG4では、圧縮符号化されたオーディオ・ビデオストリームの同期制御はアクセスユニット(AU)単位で行われる。
【0004】
図1は、従来のオーディオ・ビデオ同期制御装置の一例を示す。
【0005】
図1のオーディオ・ビデオ同期制御装置において、MP4ファイル10は、MP4ファイルフォーマットで圧縮符号化されたオーディオ・ビデオストリームを含み、AU/DTS分離回路12に入力される。AU/DTS分離回路12は入力ファイル10を、オーディオストリームのアクセスユニット(AU)と、ビデオストリームのアクセスユニット(AU)とに分離して、オーディオAUバッファ14とビデオAUバッファ18にそれぞれ格納する。
【0006】
オーディオAUバッファ14に格納された各アクセスユニット(AU)のオーディオデータ(au_data)は、オーディオデコーダ16へ転送され、オーディオデコーダ16で復号化(デコード)される。ビデオAUバッファ18に格納された各アクセスユニット(AU)のビデオデータ(au_data)は、ビデオデコーダ20へ転送され、ビデオデコーダ20で復号化(デコード)される。 オーディオデコーダ16が復号化したオーディオデータはスピーカで再生されると同時に、ビデオデコーダ20が復号化したビデオデータは表示モニタ上に表示される。
【0007】
また、図1の従来の構成において、AU/DTS分離回路12は、入力ファイル10から、オーディオストリームの各アクセスユニットのDTS時間間隔(au_dts_delta)とビデオストリームの各アクセスユニットのDTS時間間隔(au_dts_delta)とを分離して、オーディオDTSバッファ22とビデオDTSバッファ24にそれぞれ格納する。
【0008】
図1の従来のオーディオ・ビデオ同期制御装置において、同期制御回路26は、オーディオ・ビデオストリームの各DTA時間間隔を監視して、オーディオデータについての復号化処理開始を指示する制御信号a_dec_startと、ビデオデータについての復号化処理開始を指示する制御信号v_dec_startを、オーディオデコーダ16とビデオデコーダ20へそれぞれ出力する。従って、同期制御回路26は、DTS時間間隔にしたがって、対応するデコーダがアクセスユニット単位で復号化処理を開始するように同期制御を行っている。
【0009】
ここで、MP4ファイルは、各エレメントストリームに対して、該当アクセスユニットのDTSとその次のアクセスユニットのDTS間の時間間隔(au_dts_delta)を記述するテーブルを有する。このDTS時間間隔(au_dts_delta)は、各エレメントストリームに対して、次式(1)のように算出される。
【0010】
【数1】
ここで、pはそのストリームにおける該当アクセスユニットを識別する番号である。p=0のときDTS(0)=0とする。DTS時間間隔(au_dts_delta)の時間単位は、(1/time_scale)秒である。
【0011】
DTS時間間隔のテーブルは、図7に示したような構造を有する。図7は、あるMP4ファイルにおけるビデオストリームのアクセスユニット(AU)のDTSテーブルの一例である。図7において、au_countは、同一のDTS時間間隔(au_dts_delta)を有するアクセスユニットの個数を示す。
【0012】
従来のオーディオ・ビデオ同期制御方式では、テーブルに記述したDTS時間間隔に従ってアクセスユニット(AU)を復号化することで同期を確立している。
【0013】
なお、本発明に関連する従来の技術として、特開平11−164256号公報には、オーディオとビデオの処理を独立して行い、基準となる処理時間が異なるオーディオデータとビデオデータの同期再生を行うためのオーディオ・ビデオ同期再生方法が示されている。
【0014】
【特許文献1】
特開平11−164256号公報
【0015】
【発明が解決しようとする課題】
従来のオーディオ・ビデオ同期制御方式では、アクセスユニット単位で同期を制御するため、復号化用バッファをアクセスユニット単位で用意する必要がある。しかし、アクセスユニットの大きさ(au_size)は、様々な要因(例えば、ビットレート)により変化するものである。ディジタルビデオカメラへ適用する場合、例えば、8MbpsVGAのIVOPでは、1つのアクセスユニットの大きさが数百Kバイトになることが頻繁にある。一方、携帯用オーディオ・ビデオ機器では、大容量のバッファを設けることは望ましくない。
【0016】
よって、従来のオーディオ・ビデオ同期制御方式では、復号化用バッファをアクセスユニット単位で用意する必要がため、同期制御回路の規模も大きくなる傾向がある。
【0017】
また、オーディオ・ビデオストリームを同期再生する際に、時間ずれが発生した場合、ビデオアクセスユニットをスキップしたり、リピート表示したりすることにより、時間ずれを補償する必要がある。従来のオーディオ・ビデオ同期制御方式では、時間ずれを効率よく補償するための方法が考慮されていない。
【0018】
本発明は、上記の点に鑑みてなされたものであり、入力ファイルのアクセスユニットの大きさに依存しない小さなサイズの復号化用バッファを用いて、オーディオ・ビデオ同期制御回路の規模を削減することが可能なオーディオ・ビデオ同期制御方法及び装置を提供することを目的とする。
【0019】
【課題を解決するための手段】
上記課題を解決するため、本発明になるオーディオ・ビデオ同期制御方法は、圧縮符号化されたオーディオ・ビデオデータを含む入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔におけるデータ量を算出する手順と、前記時間間隔にしたがって、前記データ量をもつオーディオデータとビデオデータをオーディオバッファとビデオバッファにそれぞれ格納する手順と、前記タイムスタンプ情報に基づいてデータ転送回数を算出する手順と、前記データ転送回数にしたがって、前記オーディオデータと前記ビデオデータをオーディオデコーダとビデオデコーダへ転送する手順とを有することを特徴とする。
【0020】
また、上記課題を解決するため、本発明になるオーディオ・ビデオ同期制御装置は、入力ファイルからの圧縮符号化されたオーディオ・ビデオデータをオーディオデータとビデオデータに分離するとともに、オーディオ・ビデオ同期制御を行う分離部と、分離されたオーディオデータを格納するオーディオバッファと、格納されたオーディオデータを復号化するオーディオデコーダと、分離されたビデオデータを格納するビデオバッファと、格納されたビデオデータを復号化するビデオデコーダとを有するオーディオ・ビデオ同期制御装置であって、前記分離部が、前記入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔のデータ量を算出する手段と、算出された時間間隔にしたがって、算出されたデータ量をもつオーディオデータとビデオデータを前記オーディオバッファと前記ビデオバッファにそれぞれ格納する手段と、前記タイムスタンプ情報に基づいてデータ転送回数を算出する手段と、算出されたデータ転送回数にしたがって、格納された前記オーディオデータと前記ビデオデータを、前記オーディオデコーダと前記ビデオデコーダへそれぞれ転送する手段とを備えることを特徴とする。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて説明する。
【0022】
まず、本発明のオーディオ・ビデオ同期制御方式の基本原理について説明する。
【0023】
前述したように、従来のオーディオ・ビデオ同期制御方式では、MP4ファイルに記述された各アクセスユニットの大きさ(au_size)をもつAUデータを復号化用バッファに格納して、DTS時間間隔(au_dts_delta)で同期を制御している。この代わりに、本発明のオーディオ・ビデオ同期制御方式では、MP4ファイルに記述された、各アクセスユニットの大きさ(au_size)と各アクセスユニットのDTS時間間隔(au_dts_delta)から、算出される一定の時間間隔(Δt)のデータ量(Δdata)をもつオーディオ・ビデオデータを復号化用バッファに格納して、算出される転送回数(scnt)でデコーダへ転送することにより、同期を確立する。
【0024】
データ量(Δdata)と一定の時間間隔(Δt)は、MP4ファイルに記述されたau_sizeとau_dts_deltaから、次式(2)と(3)に従って算出される。
【0025】
【数2】
【0026】
【数3】
ここで、nは任意の整数である(以下、このnをタイムスケール定数という)。また、転送回数(scnt)は、次式(4)に従って算出される。
【0027】
【数4】
図2は、本発明の第1の実施の形態に係るオーディオ・ビデオ同期制御装置を示す。図2のオーディオ・ビデオ同期制御装置は、Δdata/Δt分離回路32と、一対のバッファスイッチ33、43と、一対のオーディオバッファ34、38と、一対のビデオバッファ42、44と、一対のバッファスイッチ35、45と、オーディオデコーダ16と、ビデオデコーダ20とを含む。
【0028】
図2のオーディオ・ビデオ同期制御装置において、バッファスイッチ33、43とバッファスイッチ35、45の切り替え動作は、Δdata/Δt分離回路32の制御部から出力される制御信号により制御される。
【0029】
また、Δdata/Δt分離回路32の制御部からバッファスイッチ33、43への制御信号は、オーディオバッファ34、38と、ビデオバッファ42、44に対して、バッファスイッチ33、43の切り替え動作が交互に行われるように出力される。すなわち、図2に示したように、ある時点でバッファスイッチ33がオーディオバッファ38側と導通する状態であるとき、バッファスイッチ43はビデオバッファ44側と導通する状態になる。次の時点でバッファスイッチ33、43の切り替え動作が行われると、バッファスイッチ33はオーディオバッファ34側と導通する状態となり、同時に、バッファスイッチ43はビデオバッファ42側と導通する状態になる。
【0030】
同様に、Δdata/Δt分離回路32の制御部からバッファスイッチ35、45への制御信号は、オーディオバッファ34、38と、ビデオバッファ42、44に対して、バッファスイッチ35、45の切り替え動作が交互に行われるように出力される。すなわち、図2に示したように、ある時点でバッファスイッチ35がオーディオバッファ34側と導通する状態であるとき、バッファスイッチ45はビデオバッファ42側と導通する状態になる。次の時点でバッファスイッチ35、45の切り替え動作が行われると、バッファスイッチ35はオーディオバッファ38側と導通する状態となり、同時に、バッファスイッチ45はビデオバッファ44側と導通する状態になる。
【0031】
図2に示したように、図1の従来構成におけるAU/DTS分離回路12の代わりに、この実施形態のオーディオ・ビデオ同期制御装置では、Δdata/Δt分離回路32を設けている。MP4ファイル10は、MP4ファイルフォーマットで圧縮符号化されたオーディオ・ビデオストリームを含み、Δdata/Δt分離回路32に入力される。
【0032】
Δdata/Δt分離回路32は、MP4ファイル10から得られる各アクセスユニットについてのau_sizeとau_dts_deltaを用いて、上式(2)と(3)にしたがい一定の時間間隔(Δt)のデータ量(Δdata)を算出する。また、Δdata/Δt分離回路32は、上式(4)にしたがい転送回数(scnt)を算出する。
【0033】
Δdata/Δt分離回路32は、入力ファイル10を、算出した一定の時間間隔(Δt)のデータ量(Δdata)をもつオーディオデータとビデオデータとに分離して、オーディオバッファ34、38のいずれか一方とビデオバッファ42、44のいずれか一方にそれぞれ格納する。
【0034】
図2のオーディオ・ビデオ同期制御装置においては、Δdata/Δt分離回路32が、一定の時間間隔(Δt)でバッファスイッチ33、43の切り替え動作を制御して、データ量(Δdata)の大きさをもつオーディオデータをオーディオバッファ34、38のいずれか一方に、データ量(Δdata)の大きさをもつビデオデータをビデオバッファ42、44のいずれか一方に格納する。
【0035】
また同時に、Δdata/Δt分離回路32は、算出した転送回数(scnt)に基づいてバッファスイッチ35、45の切り替え動作を制御して、オーディオバッファ34、38の他方のバッファにすでに格納されたオーディオデータをオーディオデコーダ16へ転送すると共に、ビデオバッファ42、44の他方のバッファにすでに格納されたビデオデータをビデオデコーダ20へ転送する。
【0036】
上記の実施形態によれば、従来の構成に比べて小さなサイズの復号化用バッファを用いてオーディオ・ビデオ同期制御装置を構成することができ、入力ファイルのアクセスユニットの大きさに依存しないサイズをもつ復号化用バッファを用いることで、オーディオ・ビデオ同期制御回路の規模を削減することが可能である。
【0037】
また、上記の実施形態のオーディオ・ビデオ同期制御装置においては、適用される製品に使用されるビットレート(bitrate)に基づいて、復号化用バッファの大きさ(buffer_size)を近似的に求めることが可能である。その場合には、次式(5)に従って、復号化用バッファの大きさ(buffer_size)を算出することで、図2の構成におけるバッファ34、38、42、44の各バッファサイズを決定すればよい。
【0038】
【数5】
上記のバッファサイズ決定方法によれば、適用される製品のビットレート(bitrate)が非常に大きい場合であっても、上式(5)におけるタイムスケール定数nの値を大きな値に設定することにより、バッファサイズが増大してしまうことを回避することができる。
【0039】
さらに、図2の構成のオーディオ・ビデオ同期制御装置は、Δdata/Δt分離回路32が図6の時間ずれ補償回路(後述する)を含むよう構成することで、Δdata/Δt分離回路32の制御部によるバッファスイッチ切り替え動作における時間ずれを検知して、その時間ずれを補正することができる。
【0040】
以下、この時間ずれの補正方式の原理について説明する。
【0041】
まず、上式(1)を変形することで、次式(6)が得られる。
【0042】
【数6】
上式(6)から明らかなように、p番目のアクセスユニットのデコードタイムスタンプdts(p)とDTS時間間隔au_dts_deltaを加算すれば、(p+1)番目のアクセスユニットのデコードタイムスタンプdts(p+1)が求まる。
【0043】
次式(8)で算出される、p番目のアクセスユニットについてのデータ転送累積時間t_pastの値と、p番目のアクセスユニットのデコードタイムスタンプdts(p)の値とを比較することで、時間ずれが発生したか否かを検知できる。すなわち、次式(7)で算出される、時間ずれt_diffの値がゼロに等しくなければ、時間ずれが発生したと判定する。時間ずれt_diffの算出値が正であれば、データ転送累積時間t_pastの値が大きすぎる場合であり、時間ずれt_diffの算出値が負であれば、データ転送累積時間t_pastの値が小さすぎる場合である。
【0044】
【数7】
【0045】
【数8】
ここで、Δtiは各アクセスユニットの一定時間間隔((3)式)の値を示す。
【0046】
さらに、次式(9)にしたがって、時間ずれt_diffを補正することができる。
【0047】
【数9】
この例では、式(9)に従って修正されたau_dts_delta(p)を、図2の構成におけるΔdata/Δt分離回路32の制御部内の、DTS時間間隔を格納するためのレジスタに転送して、前回算出した時間間隔(Δt)の値が調整されることで、時間ずれの補正が行われる。
【0048】
次に、本発明のオーディオ・ビデオ同期制御方式を実際の場合に適用した例について説明する。
【0049】
図8は、図7と同じMP4ファイルに記述される各アクセスユニットのデータ量(au_size)の一例を示す。この例では、time_scale=1000、n=1、bitrate=2Mbps、buffer_size=0X160バイトに設定している。
【0050】
図9は、図7のデコードタイムスタンプ時間間隔(au_dts_delta)と、図8の各アクセスユニットのデータ量(au_size)とに基づき算出されるデータ量(Δdata)の一例を示す。
【0051】
図9の例において、4番目のアクセスユニットについてデコードタイムスタンプDTS(4)=0X85,データ転送累積時間t_pass=0X83とすると、上式(7)及び(8)により、au_dts_delta(5)=0X22−(0X85−0X83)=0X18となる。
【0052】
上記の例で説明したように、従来のオーディオ・ビデオ同期制御方式では、同期を確立するため、10Kバイト以上の容量のバッファを用意する必要がある。しかし、本発明のオーディオ・ビデオ同期制御方式を適用すれば、10パーセント以上のバッファを削減することができる。
【0053】
図3は、図2のオーディオ・ビデオ同期制御装置が実行する同期制御方法の一例を説明するためのフロー図である。とくに、図3の同期制御フローは、図2の構成におけるΔdata/Δt分離回路32の制御部(以下、制御部という)がバッファスイッチ35、45の切り替え動作を制御するために実行される。
【0054】
図3の同期制御フローが開始すると、制御部は、ステップS1において、カウンタのカウント値cntをゼロにリセットして、カウント動作を開始する。
【0055】
ステップS2において、制御部は、経過時間t_intが算出したΔtの時間間隔に達したか否かを判定する。ステップS2は、経過時間t_intがΔtの時間間隔に達するまでくりかえし実行される。
【0056】
ステップS2でΔtの時間間隔に達すると、ステップS3において、制御部は、制御信号switch_on(=1)をバッファスイッチ35、45へ出力するとともに、カウンタのカウント値cntをインクリメントする。
【0057】
ステップS3が完了すると、ステップS4において、制御部は、カウンタのカウント値cntが算出したデータ転送回数scntに達したか否かを判定する。データ転送回数scntに達した場合には、次のアクセスユニットのデータの復号化処理を開始するため、上記ステップS1へ戻って上記処理を繰り返す。
【0058】
データ転送回数scntにまだ達しない場合には、同一アクセスユニットの残りのデータの復号化処理を継続するため、上記ステップS2へ戻って上記処理を繰り返す。
【0059】
図2の構成では、復号化用バッファのオーバフローやアンダーフローを回避するために、ダブルバッファ(オーディオバッファ34、38、及びビデオバッファ42、44)を設けている。入力ファイル10の先頭のアクセスユニットのデータについては、算出したデータ量Δdataをもつデータを、オーディオバッファ34とビデオバッファ42に格納する。次のアクセスユニット以降のデータについては、バッファスイッチ制御によって、交互に、オーディオバッファ34と38のいずれか一方とビデオバッファ42、44のいずれか一方に格納していく。
【0060】
図4は、図2のオーディオ・ビデオ同期制御装置に用いられるバッファスイッチ制御回路を示す。
【0061】
図4のバッファスイッチ制御回路は、図2の構成におけるΔdata/Δt分離回路32内に設けられ、その動作はΔdata/Δt分離回路32の制御部によって制御される。とくに、図4のバッファスイッチ制御回路は、バッファスイッチ33、43の切り替え動作を制御するための制御信号switch_onを出力する。
【0062】
図4において、このバッファスイッチ制御回路50は、クロック生成部(CLK)51と、カウンタ(cnt)52と、クロック数算出部(clk_num)53と、コンパレータ(COMP)54とを含む。
【0063】
クロック生成部51は、所定の周波数(CLK_Hz)をもつクロック信号をカウンタ52とクロック数算出部53へ出力する。
【0064】
カウンタ52は、入力されるクロック信号をカウントして、カウント値(cnt)を示す信号をコンパレータ54の一方の入力に送出する。また、起動時に入力されるリセット信号(reset)に応じて、カウンタ52のカウント値はゼロにリセットされ、カウンタ52はクロック信号のカウント動作を開始する。また、カウンタ52は、コンパレータ54の出力から制御信号switch_on(=1)を受取った場合にも、カウント値がリセットされ、クロック信号のカウント動作を再開する。
【0065】
クロック数算出部53は、次式(10)にしたがってクロック数(clk_num)を算出して、その算出結果をコンパレータ54のもう一方の入力に送出する。
【0066】
【数10】
ここで、ΔtはΔdata/Δt分離回路32が算出した上記の時間間隔を示し、CLK_Hzは入力されるクロック信号の周波数を示す。
【0067】
コンパレータ54は、カウンタ52から受取ったカウント値(cnt)と、クロック数算出部53から受取ったクロック数(clk_num)とを比較する。カウント値(cnt)が増加して、クロック数(clk_num)に等しくなると、コンパレータ54は制御信号switch_on(=1)をバッファスイッチ33、43へ出力する。また、制御信号switch_on(=1)が出力されると、カウンタ52のカウント値がゼロにリセットされ、カウンタ52はクロック信号のカウント動作を再開する。
【0068】
図2の構成においては、バッファスイッチ制御回路50起動後、最初に制御信号switch_on(=1)が出力されると、バッファスイッチ33はオーディオバッファ34側に導通され、バッファスイッチ43はビデオバッファ42側に導通される。その後、バッファスイッチ制御回路50の動作に従い、制御信号switch_on(=1)が出力されるごとに、オーディオバッファ34、38と、ビデオバッファ42、44に対して、バッファスイッチ33、43の切り替え動作が交互に行われる。
【0069】
図5は、図2のオーディオ・ビデオ同期制御装置が実行する同期制御方法の一例を説明するためのフロー図である。とくに、図5の同期制御フローは、図2の構成におけるΔdata/Δt分離回路32の制御部がバッファスイッチ33、43の切り替え動作を制御するために実行される。
【0070】
図5の同期制御フローは、図4に説明したバッファスイッチ制御回路50の動作と同様であるので、その説明を省略する。
【0071】
図6は、本発明の第2の実施の形態に係るオーディオ・ビデオ同期制御装置を示す。とくに、図6のオーディオ・ビデオ同期制御装置は、図2の構成におけるΔdata/Δt分離回路32が、その制御部によるバッファスイッチ切り替え動作に時間ずれが発生した場合にその時間ずれを補正するための時間ずれ補償回路を含むように構成される。
【0072】
図6の時間ずれ補償回路は、クロック生成部(CLK)51と、カウンタ(cnt)52と、カウント数(dts_cnt_num)格納レジスタ53と、コンパレータ(COMP)54と、バッファスイッチ回路61と、カウンタ(cnt)62と、カウント数(dts_cnt_num)格納レジスタ63と、減算器(sub)64と、DTS時間間隔格納レジスタ65と、加算器(add)66とを含む。
【0073】
図6の構成におけるバッファスイッチ回路61は、図4のバッファスイッチ制御回路と同様に構成される。バッファスイッチ回路61が制御信号switch_on(=1)を出力するとき、カウンタ62のカウント値cntがインクリメントされる。カウンタ62は、データ転送累積時間t_pastの値を示す信号(t_pass)を減算器64の一方の入力に送出する。
【0074】
該当するアクセスユニットのdtsをクロック信号の周期で割り算することにより算出したdts_cnt_numの値をレジスタ53とレジスタ63に格納する。レジスタ63は該当するアクセスユニットのdtsの値に相当する信号(dts)を減算器64の他方の入力に出力する。
【0075】
図6のバッファスイッチ制御回路50は、カウンタ52のカウント値cntがレジスタ53に格納されたdts_cnt_numの値に達したとき、制御信号sub_on(=1)を減算器64の制御入力に出力する。このとき、減算器64は、上式(7)に示した時間ずれt_diffの値を示す信号(t_diff)を加算器66の一方の入力に出力する。他方、レジスタ65は、該当するアクセスユニットのDTS時間間隔(au_dts_delta_p)を示す信号を加算器66の他方の入力に出力する。そして、加算器66の出力によって、時間ずれt_diffが補正されて、補正後のDTS時間間隔(au_dts_delta_p)でレジスタ65の格納データが修正される。
【0076】
上記実施形態のオーディオ・ビデオ同期制御装置によれば、図2の構成におけるΔdata/Δt分離回路32の制御部によるバッファスイッチ切り替え動作における時間ずれを検知することができ、簡易な方式で検知された時間ずれを補正することができる。
【0077】
(付記1)
圧縮符号化されたオーディオ・ビデオデータを含む入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔におけるデータ量を算出する手順と、前記時間間隔にしたがって、前記データ量をもつオーディオデータとビデオデータをオーディオバッファとビデオバッファにそれぞれ格納する手順と、前記タイムスタンプ情報に基づいてデータ転送回数を算出する手順と、前記データ転送回数にしたがって、前記オーディオデータと前記ビデオデータをオーディオデコーダとビデオデコーダへ転送する手順と を有することを特徴とするオーディオ・ビデオ同期制御方法。
【0078】
(付記2)
前記オーディオバッファと前記ビデオバッファの大きさは、適用される製品のビットレートに基づいて算出されることを特徴とする付記1記載のオーディオ・ビデオ同期制御方法。
【0079】
(付記3)
入力ファイルからの圧縮符号化されたオーディオ・ビデオデータをオーディオデータとビデオデータに分離するとともに、オーディオ・ビデオ同期制御を行う分離部と、分離されたオーディオデータを格納するオーディオバッファと、格納されたオーディオデータを復号化するオーディオデコーダと、分離されたビデオデータを格納するビデオバッファと、格納されたビデオデータを復号化するビデオデコーダとを有するオーディオ・ビデオ同期制御装置であって、前記分離部は、 前記入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔のデータ量を算出する手段と、算出された時間間隔にしたがって、算出されたデータ量をもつオーディオデータとビデオデータを前記オーディオバッファと前記ビデオバッファにそれぞれ格納する手段と、 前記タイムスタンプ情報に基づいてデータ転送回数を算出する手段と、算出されたデータ転送回数にしたがって、格納された前記オーディオデータと前記ビデオデータを、前記オーディオデコーダと前記ビデオデコーダへそれぞれ転送する手段とを備えることを特徴とするオーディオ・ビデオ同期制御装置。
【0080】
(付記4)
前記オーディオバッファと前記ビデオバッファはそれぞれ、同じサイズの2個のバッファを並列に接続して構成されることを特徴とする付記3記載のオーディオ・ビデオ同期制御装置。
【0081】
(付記5)
前記分離部は、当該アクセスユニットのデータ転送累積時間と対応するタイムスタンプ情報を比較することにより時間ずれを検知し、検知された時間ずれに応じて前記データ転送回数を調整することにより前記時間ずれを補正する時間ずれ補償回路を備えることを特徴とする付記3又は4記載のオーディオ・ビデオ同期制御装置。
【0082】
(付記6)
前記分離部は、前記分離部と前記オーディオバッファ間、及び前記分離部と前記ビデオバッファ間にそれぞれ設けた第1のバッファスイッチと、前記オーディオバッファと前記オーディオデコーダ間、及び前記ビデオバッファと前記ビデオデコーダ間にそれぞれ設けた第2のバッファスイッチの切り替え動作を交互に行うよう構成したことを特徴とする付記3記載のオーディオ・ビデオ同期制御装置。
【0083】
(付記7)
前記時間ずれ補償回路は、所定の周波数で入力されるクロック信号のカウント値と、前記時間間隔とに基づいて、前記オーディオバッファ及び前記ビデオバッファと、前記分離部との導通を切り替えるための制御信号を出力するバッファスイッチ制御回路を含むことを特徴とする付記5記載のオーディオ・ビデオ同期制御装置。
【0084】
(付記8)
前記分離部は、所定の周波数で入力されるクロック信号のカウント値と、前記時間間隔とに基づいて、前記オーディオバッファ及び前記ビデオバッファと、前記分離部との導通を切り替えるための制御信号を出力するバッファスイッチ制御回路を含むことを特徴とする付記3記載のオーディオ・ビデオ同期制御装置。
【0085】
【発明の効果】
以上説明したように、本発明のオーディオ・ビデオ同期制御方法及び装置によれば、入力ファイルのアクセスユニットの大きさに依存しないサイズをもつ復号化用バッファを用いることで、オーディオ・ビデオ同期制御回路の規模を削減することが可能である。したがって、オーディオ・ビデオ同期制御方式のコストの低減および処理時間の短縮に寄与することができる。また、本発明のオーディオ・ビデオ同期制御方法及び装置によれば、Δdata/Δt分離回路の制御部によるバッファスイッチ切り替え動作に発生する可能性のある時間ずれを検知することができ、簡易な方式で検知された時間ずれを補正することができる。
【図面の簡単な説明】
【図1】従来のオーディオ・ビデオ同期制御装置の一例を示す図である。
【図2】本発明の第1の実施の形態に係るオーディオ・ビデオ同期制御装置を示す図である。
【図3】図2のオーディオ・ビデオ同期制御装置が実行する同期制御方法の一例を説明するためのフロー図である。
【図4】図3の同期制御方法を実現するために用いられるバッファスイッチ制御回路を示す図である。
【図5】図2のオーディオ・ビデオ同期制御装置が実行する同期制御方法の一例を説明するためのフロー図である。
【図6】本発明の第2の実施の形態に係るオーディオ・ビデオ同期制御装置を示す図である。
【図7】MP4ファイルに記述される各アクセスユニット間のデコードタイムスタンプ時間間隔(au_dts_delta)の一例を示す図である。
【図8】図7と同じMP4ファイルに記述される各アクセスユニットのデータ量(au_size)の一例を示す図である。
【図9】図7のデコードタイムスタンプ時間間隔(au_dts_delta)と、図8の各アクセスユニットのデータ量(au_size)とに基づき算出されるデータ量(Δdata)の一例を示す図である。
【符号の説明】
10 MP4ファイル
12 AU/DTS分離回路
14 オーディオAUバッファ
16 オーディオデコーダ
18 ビデオAUバッファ
20 ビデオデコーダ
22 オーディオDTSバッファ
24 ビデオDTSバッファ
26 同期制御回路
32 Δdata/Δt分離回路
33 バッファスイッチ
34 オーディオバッファ
35 バッファスイッチ
38 オーディオバッファ
42 ビデオバッファ
43 バッファスイッチ
44 ビデオバッファ
45 バッファスイッチ
Claims (5)
- 圧縮符号化されたオーディオ・ビデオデータを含む入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔におけるデータ量を算出する手順と、
前記時間間隔にしたがって、前記データ量をもつオーディオデータとビデオデータをオーディオバッファとビデオバッファにそれぞれ格納する手順と、
前記タイムスタンプ情報に基づいてデータ転送回数を算出する手順と、
前記データ転送回数にしたがって、前記オーディオデータと前記ビデオデータをオーディオデコーダとビデオデコーダへ転送する手順と
を有することを特徴とするオーディオ・ビデオ同期制御方法。 - 前記オーディオバッファと前記ビデオバッファの大きさは、適用される製品のビットレートに基づいて算出されることを特徴とする請求項1記載のオーディオ・ビデオ同期制御方法。
- 入力ファイルからの圧縮符号化されたオーディオ・ビデオデータをオーディオデータとビデオデータに分離するとともに、オーディオ・ビデオ同期制御を行う分離部と、分離されたオーディオデータを格納するオーディオバッファと、格納されたオーディオデータを復号化するオーディオデコーダと、分離されたビデオデータを格納するビデオバッファと、格納されたビデオデータを復号化するビデオデコーダとを有するオーディオ・ビデオ同期制御装置であって、
前記分離部は
前記入力ファイルから得られる各アクセスユニットのサイズ情報とタイムスタンプ情報に基づいて一定の時間間隔のデータ量を算出する手段と、
算出された時間間隔にしたがって、算出されたデータ量をもつオーディオデータとビデオデータを前記オーディオバッファと前記ビデオバッファにそれぞれ格納する手段と、
前記タイムスタンプ情報に基づいてデータ転送回数を算出する手段と、
算出されたデータ転送回数にしたがって、格納された前記オーディオデータと前記ビデオデータを、前記オーディオデコーダと前記ビデオデコーダへそれぞれ転送する手段と
を備えることを特徴とするオーディオ・ビデオ同期制御装置。 - 前記オーディオバッファと前記ビデオバッファはそれぞれ、同じサイズの2個のバッファを並列に接続して構成されることを特徴とする請求項3記載のオーディオ・ビデオ同期制御装置。
- 前記分離部は、当該アクセスユニットのデータ転送累積時間と対応するタイムスタンプ情報を比較することにより時間ずれを検知し、検知された時間ずれに応じて前記データ転送回数を調整することにより前記時間ずれを補正する時間ずれ補償回路を備えることを特徴とする請求項3又は4記載のオーディオ・ビデオ同期制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003044337A JP4212920B2 (ja) | 2003-02-21 | 2003-02-21 | オーディオ・ビデオ同期制御方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003044337A JP4212920B2 (ja) | 2003-02-21 | 2003-02-21 | オーディオ・ビデオ同期制御方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004254186A true JP2004254186A (ja) | 2004-09-09 |
JP4212920B2 JP4212920B2 (ja) | 2009-01-21 |
Family
ID=33027066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003044337A Expired - Fee Related JP4212920B2 (ja) | 2003-02-21 | 2003-02-21 | オーディオ・ビデオ同期制御方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4212920B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006211201A (ja) * | 2005-01-27 | 2006-08-10 | Sanyo Electric Co Ltd | ディジタル放送受信装置 |
JP2012010411A (ja) * | 2008-01-30 | 2012-01-12 | Onkyo Corp | ストリーム再生装置 |
CN110943932A (zh) * | 2019-11-14 | 2020-03-31 | 锐捷网络股份有限公司 | 一种信息处理方法及装置 |
-
2003
- 2003-02-21 JP JP2003044337A patent/JP4212920B2/ja not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006211201A (ja) * | 2005-01-27 | 2006-08-10 | Sanyo Electric Co Ltd | ディジタル放送受信装置 |
JP4693427B2 (ja) * | 2005-01-27 | 2011-06-01 | 京セラ株式会社 | ディジタル放送受信装置 |
JP2012010411A (ja) * | 2008-01-30 | 2012-01-12 | Onkyo Corp | ストリーム再生装置 |
CN110943932A (zh) * | 2019-11-14 | 2020-03-31 | 锐捷网络股份有限公司 | 一种信息处理方法及装置 |
CN110943932B (zh) * | 2019-11-14 | 2022-11-11 | 锐捷网络股份有限公司 | 一种信息处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP4212920B2 (ja) | 2009-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3976759B2 (ja) | 音声信号と映像信号を同期させる装置 | |
EP1585336B1 (en) | Transcoding system and method for maintaining timing parameters before and after performing transcoding process | |
JP6287315B2 (ja) | 動画像音声同期装置、動画像音声同期方法及び動画像音声同期用コンピュータプログラム | |
JP3932059B2 (ja) | 信号処理装置 | |
JP3925311B2 (ja) | データ配信システム | |
CN108243350B (zh) | 一种音视频同步处理的方法和装置 | |
JPH10507597A (ja) | マルチメディア・システムのためのプログラマブルなオーディオ−ビデオ同期方法および装置 | |
JPH10511513A (ja) | Mpeg再生システムにおいてオーディオとビデオを同期するための方法及び装置 | |
JPH10511238A (ja) | 再生システムのための同期方法及び装置 | |
JP4983923B2 (ja) | デコーダ装置、およびデコード方法 | |
CN106792154B (zh) | 视频播放器的跳帧同步系统及其控制方法 | |
US7158187B2 (en) | Audio video reproduction apparatus, audio video reproduction method, program, and medium | |
US20090147842A1 (en) | Video processing | |
JP4903930B2 (ja) | 信号処理装置 | |
JP4212920B2 (ja) | オーディオ・ビデオ同期制御方法及び装置 | |
JP2005101766A (ja) | 電子装置及びその制御方法 | |
WO2003067881A1 (fr) | Appareil de traitement d'informations et procede associe | |
JP2007201983A (ja) | 放送局同期方法、及び制御装置 | |
JP2006060699A (ja) | 信号処理装置 | |
JP2005333520A (ja) | 画像伝送装置、画像伝送方法、伝送システム、及び映像監視システム | |
JP2008054159A (ja) | 映像音声多重化装置 | |
JP2017224928A (ja) | 情報処理システム、情報処理装置、情報処理方法およびプログラム | |
JP4023350B2 (ja) | ネットワーク接続機器及びこれに用いるタイムスタンプ処理方法 | |
JP3059151B1 (ja) | デ―タストリ―ム切替装置及びデ―タストリ―ム切替方法 | |
JP2008011337A (ja) | 再生装置及び再生方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080729 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080929 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081021 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081029 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111107 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111107 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121107 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121107 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131107 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |