JP2016076884A - マルチメディア同期再生装置及びマルチメディア同期再生方法 - Google Patents
マルチメディア同期再生装置及びマルチメディア同期再生方法 Download PDFInfo
- Publication number
- JP2016076884A JP2016076884A JP2014207340A JP2014207340A JP2016076884A JP 2016076884 A JP2016076884 A JP 2016076884A JP 2014207340 A JP2014207340 A JP 2014207340A JP 2014207340 A JP2014207340 A JP 2014207340A JP 2016076884 A JP2016076884 A JP 2016076884A
- Authority
- JP
- Japan
- Prior art keywords
- data
- client terminal
- multimedia
- unit
- reproduction
- 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.)
- Pending
Links
Images
Landscapes
- Television Signal Processing For Recording (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】 それぞれのクライアント端末の時刻ずれがある場合においても、それぞれのクライアント端末での同期再生を実現するマルチメディア同期再生装置を得る。【解決手段】 読みだした第1のマルチメディアデータに含まれる第1の映像データと第1の音声データとについて、前記第1の映像データに含まれる提示時刻情報を調整した第2の映像データと、前記第1の音声データをデコードしたものを第2のサンプリング周波数で再サンプリング処理をして再エンコードした第2の音声データとを多重して第2のマルチメディアデータを生成し、前記第1のマルチメディアデータを第1のクライアント端末へ配信し、前記第2のマルチメディアデータを第2のクライアント端末へ配信する。【選択図】 図1
Description
この発明は、複数のクライアント端末に対してそれぞれのクライアント端末での映像または音声が再生されるタイミングを調整してマルチメディアデータを配信するマルチメディア同期再生装置に関する。
タブレット端末やディスプレイモニターなどの複数のクライアント端末に対して、マルチメディアデータを配信し、それぞれのクライアント端末で映像または音声を再生させるシステムがある。このようなシステムにおいて、それぞれのクライアント端末での映像または音声が再生されるタイミングを調整したい場合がある。例えばそれぞれのクライアント端末での再生タイミングを同時に再生させたい場合や、それぞれのクライアント端末での再生タイミングを意図的にずらして再生させたい場合などがある。
また、それぞれのクライアント端末がNTP(Network Time Protocol)や標準電波(電波時計)を用いて時刻調整を行なう機能を持ち、Moving Picture Experts Group(以下、MPEG)で規格化されている方法(例えば、非特許文献1参照)では、各マルチメディアデータには表示時刻を示すPTS(Presentation Time Stamp)データが含まれており、クライアント端末がPTSに基づいて表示することで所望の時刻に表示することができる。この方法を用いてそれぞれのクライアント端末での再生タイミングを同時に再生させることが一般的である。
ISO/IEC「13818−1 Information technology Generic coding of moving pictures and associated audio information: Systems」、2007年10月15日、p.9−18
しかしながら、それぞれのクライアント端末及びマルチメディアデータ配信側の端末がNTPまたは電波時計を用いた時刻調整を定期的に行なっても各クライアント端末が有する発振回路の個体差によって時刻ずれが生じるため、同じPTSに基づいて再生してもずれが生じるという問題があった。また、単純にクライアント端末ごとに配信するマルチメディアデータのPTS情報を調整することが考えられるが、その場合は、映像についてはデコードした映像データのフレームスキップや同じフレーム画像の継続表示などでPTSに基づいた表示を行なうことができるが、音声についてはデコードした音声データを途中で切ることになったり間延びすることになったりするという問題が生じる。
この発明は、上述のような課題を解決するためになされたもので、それぞれのクライアント端末の時刻ずれがある場合においても、それぞれのクライアント端末での同期再生を実現するマルチメディア同期再生装置を得ることを目的とする。
この発明に係るマルチメディア同期再生装置においては、第1のマルチメディアデータを読み出すマルチメディアデータ読出し部と、前記第1のマルチメディアデータを第1の映像データと第1の音声データとに分離する分離部と、前記第1の映像データに含まれる提示時刻情報を調整した第2の映像データを生成する時刻情報変換部と、前記第1の音声データをデコードするデコード部と、デコードされた前記第1の音声データについて第2のサンプリング周波数で再サンプリング処理を実行する再サンプリング部と、再サンプリング処理された前記第1の音声データをエンコードして第2の音声データを生成するエンコード部と、前記第2の映像データ及び前記第2の音声データを多重して第2のマルチメディアデータを生成する多重化部と、前記第1のマルチメディアデータを第1のクライアント端末へ配信し、前記第2のマルチメディアデータを第2のクライアント端末へ配信するデータ配信部と、前記第1のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報と前記第2のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報とに基づいて、前記時刻情報変換部が調整する前記提示時刻情報の調整量と第2のサンプリング周波数とを制御する再生情報管理部とを備えたことを特徴とするものである。
この発明は、第1のマルチメディアデータを第1のクライアント端末へ配信するとともに、第2のクライアント端末へ配信する際に、第1のマルチメディアデータを映像データと音声データとに分離して、映像データについては映像データに含まれる提示時刻情報を調整した第2の映像データを生成し、音声データについては一旦デコードして第2のサンプリング周波数で再サンプリング処理を行なってエンコードした第2の音声データを生成して第2の映像データ及び第2の音声データを多重した第2のマルチメディアデータを配信することにより、第1のクライアント端末と第2のクライアント端末との再生ずれを調整可能にすることができる。
実施の形態1.
図1は、この発明の実施の形態1にかかるマルチメディア同期再生装置の構成例を示すブロック図である。マルチメディア配信装置10(以下、サーバーともいう)はネットワーク20を介して第1のクライアント端末30及び第2のクライアント端末40と配信可能に接続されている。図1ではクライアント端末を2台として示し、それぞれ第1のクライアント端末30は表示装置31と接続され、第2のクライアント端末40は表示装置41と接続されているものとして示している。例えばクライアント端末がタブレットなどであればクライアント端末自体が表示装置を備えることになる。また、クライアント端末がマルチメディア配信装置10からのマルチメディアデータのうち音声再生のみ必要であれば、そのクライアント端末は表示装置を備える必要はない。
図1は、この発明の実施の形態1にかかるマルチメディア同期再生装置の構成例を示すブロック図である。マルチメディア配信装置10(以下、サーバーともいう)はネットワーク20を介して第1のクライアント端末30及び第2のクライアント端末40と配信可能に接続されている。図1ではクライアント端末を2台として示し、それぞれ第1のクライアント端末30は表示装置31と接続され、第2のクライアント端末40は表示装置41と接続されているものとして示している。例えばクライアント端末がタブレットなどであればクライアント端末自体が表示装置を備えることになる。また、クライアント端末がマルチメディア配信装置10からのマルチメディアデータのうち音声再生のみ必要であれば、そのクライアント端末は表示装置を備える必要はない。
次にマルチメディア配信装置10について説明する。マルチメディア配信装置10は、マルチメディアデータ読出し部100と、タイミング調整部110と、データ配信部140とを備える。マルチメディアデータ読出し部100は、タイミング調整部110の指示に従い、ストレージ101から第1のマルチメディアデータを読出す。
ここで、マルチメディアデータは、例えばMPEG−2規格準拠の映像データとMPEG−4 AAC(Advanced Audio Coding)規格準拠の音声データがMPEG−2 SYSTEM規格のMPEG−2 トランスポートストリーム形式で多重されたマルチメディアデータとする。なお、映像データは、ITU−T H.264規格準拠のものであってもよいし、JPEG(Joint Photographic Experts Group)規格準拠の静止画が連番になっているものやMotiion JPEG形式でもよいし、MPEG−4形式でもよいし、また、それ以外でもよい。音声データも、MPEG−2 AAC形式でもよいし、MPEG−1 Layer2形式、MPEG−1 Layer3形式、PCM(Pulse Code Modulation)形式、であってもよいし、それ以外の形式でもよい。また、多重化方式もMPEG−2 SYSTEMのMPEG−2トランスポートストリーム以外に、MPEG−2プログラムストリーム形式でもよいし、MP4形式でもよいし、それ以外でもよい。以下、MPEG−2規格準拠の映像データとMPEG−4 AAC規格準拠の音声データが、MPEG−2 SYSTEM規格のMPEG−2 トランスポートストリーム形式に多重されているものとして説明する。
ストレージ101は、クライアント装置で再生するためのマルチメディアデータが保管されており、物理的な装置として、HDD(Hard Disk Drive)またはSSD(Solid State Drive)でもよいし、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、またはNAND型フラッシュメモリなどの記憶素子でもよいし、SDメモリーカードなど着脱可能なメモリーカードでもよい。
タイミング調整部110は、マルチメディアデータ読出し部100へマルチメディアデータの読み出しを指示し、マルチメディアデータ読出し部100から入力した第1のマルチメディアデータについて、第1のクライアント端末30へ配信するマルチメディアデータと第2のクライアント端末40へ配信するために再生タイミングを調整した第2のマルチメディアデータとをデータ配信部130へ出力する。マルチメディアデータ読出し部100への読み出し指示はユーザーからの指示に基づくものとして、マルチメディア配信装置10側で直接ユーザーからの再生開始指示を入力するとしても、クライアント端末からネットワーク20を介して再生開始要求されたものを入力するとしても構わない。第2のマルチメディアデータの生成については後ほど詳細を説明する。
データ書き出し/読み出し部120は、タイミング調整部110を介して得られた第1のマルチメディアデータと、タイミング調整部110が生成した第2のマルチメディアデータとをストレージ121に書き込み、ストレージ121から第1のマルチメディアデータ及び第2のマルチメディアデータをデータ配信部130の配信に合わせて読み出してデータ配信部130に出力する。
ストレージ121は、ストレージ101と同様に、物理的な装置として、HDDまたはSSDでもよいし、SRAM、DRAM、EEPROM、またはNAND型フラッシュメモリなどの記憶素子でもよいし、SDメモリーカードなど着脱可能なメモリーカードでもよい。また、実際の実装時においては、ストレージ101と共用してもよい。ストレージ121の用途については後述する。
データ配信部130は、データ書き出し/読み出し部120が読み出した第1のマルチメディアデータを第1のクライアント端末30に配信し、データ書き出し/読み出し部120が読み出した第2のマルチメディアデータを第2のクライアント端末40に配信する。データ配信部130において、第1のクライアント端末30、第2のクライアント端末40へのデータ配信は、HTTP(HyperText Transfer Protocol)を用いたダウンロード形式より擬似ストリーミング方式でもよいし、RTP(Real−time Transport Protocol)を用いたストリーミング形式でもよい。RTSP(Real Time Streaming Protocol)方式でもよいし、その他の方法でよい。以降では、HTTP方式を使うものとする。データ配信部130は、第1のクライアント端末30、第2のクライアント端末40からの接続情報、例えば、各クライアントのIPアドレスなどの情報や、クライアントの接続台数などを再生情報管理部140へ通知する。
ネットワーク20は、物理層にイーサネット(Ethernet(登録商標))を用いたTCP/IPネットワークでもよいし、IEEE802.11g準拠の無線LANとTCP/IPを用いたネットワークでもよいし、TCP/IPを用いないネットワークでもよいし、車載向けの通信規格であるMOST(Media Oriented Systems Transport)などそれ以外の通信方式でもよい。以降では、物理層にイーサネットを用いたTCP/IPネットワークであるとする。
再生情報管理部140は、データ配信部130、各クライアント端末から入力を受け取り、タイミング調整部110または各クライアント端末に情報を送る。データ配信部130から入力される情報は、各クライアント端末から再生要求が発生したこと、再生停止要求があったことなどの情報である。各クライアント端末から入力される情報は、各クライアント端末が備えるデコード部(第1のクライアント端末であればデコード部320)から受け取った映像データや音声データの再生時刻などの再生情報である。
次にタイミング調整部110について詳細を説明する。図2は、本実施の形態にかかるタイミング調整部110の構成例を示すブロック図である。タイミング調整部110は、分離部113と、時刻情報変換部(PTS変換部ともいう)114と、デコード部115と、再サンプリング部116と、エンコード部117と、多重化部118とを備える。
調整部制御部111は、再生情報管理部140からの制御を受けセレクタ112を制御する。例えば、第1のクライアント端末30及び第2のクライアント端末40のいずれか一方のみからの再生要求しかない場合もしくは、第1のクライアント端末30及び第2のクライアント端末40が異なるマルチメディアデータの再生を要求する場合は、セレクタ112は入力されたマルチメディアデータをそのまま出力するパスを選択する。第1のクライアント端末30及び第2のクライアント端末40の両方から同じマルチメディアデータについて再生要求がある場合は、第1のクライアント端末30向けのマルチメディアデータとしてセレクタ112の上部のパスに接続し、第2のクライアント端末40向けのマルチメディアデータとして、セレクタ112を下部のパスへ接続する。
データ分離部113は、第1のマルチメディアデータを第1の映像データと第1の音声データとに分離する。また、分離した第1の映像データをPTS変換部114に送り、分離した第1の音声データをデコード部116に送る。
PTS変換部114は、再生情報管理部140から制御を受け第1の映像データの提示時刻、例えば、MPEG−2 SYSTEMでは、PTS(Presentation Time Stamp)を調整(付け替え)する。また、PTSが調整された映像データ(第2の映像データ)をデータ多重部118へ送る。具体的な調整について説明する。PTS変換部114は、再生情報管理部140からPTSの差分値情報を受け取り、PTSを書き換える。データ分離部113から送られてきた第1の映像データに含まれるPTSをPTSs、再生情報管理部140から送られてきたPTSの差分値をPTSdとする。新しいPTSnは以下の第1式で計算できる。
PTSn=PTSs+PTSd ・・・(1)
ただし、PTSの差分値情報については、上記のようにPTSの時刻情報としてやりとりしてもよいし、映像データの繰り返し回数としてもよい。このとき、映像データの繰り返し回数をPTSr、映像データの間隔の時間をPTSfとする。また、PTSr、PTSfは、再生情報管理部140から入力される。この場合の、PTSnは、以下の第2式で求められる。
ただし、PTSの差分値情報については、上記のようにPTSの時刻情報としてやりとりしてもよいし、映像データの繰り返し回数としてもよい。このとき、映像データの繰り返し回数をPTSr、映像データの間隔の時間をPTSfとする。また、PTSr、PTSfは、再生情報管理部140から入力される。この場合の、PTSnは、以下の第2式で求められる。
PTSn=PTSs+PTSr×PTSf ・・・(2)
このとき、PTSrは、映像データをコピーするように制御する場合は正の値を、映像データをスキップする場合は、負の値を設定する。
このとき、PTSrは、映像データをコピーするように制御する場合は正の値を、映像データをスキップする場合は、負の値を設定する。
デコード部115は、第1の音声データについてデコード処理を行なう。
再サンプリング部116は、デコード部115でデコードされた第1の音声データについて第2のサンプリング周波数でサンプリング処理を実行する。第2のサンプリング周波数を元々第1の音声データがサンプリングされていたサンプリング周波数(第1のサンプリング周波数)と異なる周波数で再びサンプリングしなおすことで、音声データの再生時間を長くしたり短くしたりする。第2のサンプリング周波数を第1のサンプリング周波数よりも低い周波数で再サンプリングすることで第1の音声データそのままを再生するよりも音声データの再生時間は短くなる。一方、第2のサンプリング周波数を第1のサンプリング周波数よりも高い周波数で再サンプリングすることで第1の音声データそのままを再生するよりも音声データの再生時間は長くなる。なお、元々のサンプリング周波数と異なる周波数で再びサンプリングしなおすことを再サンプリングするまたはスケーリングするともいう。
これにより、第1のクライアント端末30、第2のクライアント端末40での再生時に音声データはスキップやコピーをすることなく再生し続けること、音声の同期再生を実現することが可能となる。
デコード後の音声データをスケーリングすると音声のピッチ(音程)が変化する。この対策として、既存のピッチ変換技術を用いてもよいがここではその方法は規定しない。また、第1のクライアント端末30と第2のクライアント端末40の再生時間のずれはそれぞれのクライアント端末に搭載される水晶発振子のようなタイミング生成回路の精度に由来するものが考えられる。一般にそのタイミング生成回路の精度は、百万分の1から十数万分の1の精度であり、音声のピッチが変更されても聴感上は影響のない範囲と考え、ピッチ制御はなくてもよい場合もある。再サンプリングされた音声データは、再エンコード部117へ送られる。再サンプリング部116は、再生情報管理部140から音声の再生時間を長くするか、短くするかの情報を受ける。再サンプリング部116で調整する量(ミリ秒)をds[ミリ秒]とするとdsは、長くする場合、短くする場合でその値を変えても良いし、同じ値でもよい。もともとの音声データの再生時間をTc、新しい再生時間をTn、dsは正の値であるとし、再生情報管理部207からの入力をfとすると以下の第3式が成り立つ。fは、再生時間を長くする場合は1、短くする場合は、−1となる。
Tn=Tc+f×ds ・・・(3)
再エンコード部117は、デコード部115からエンコード情報を受け、その情報と同じ設定で再サンプリングされた音声データを再び符号化し、再符号化された音声データをデータ多重部118へ送る。
再エンコード部117は、デコード部115からエンコード情報を受け、その情報と同じ設定で再サンプリングされた音声データを再び符号化し、再符号化された音声データをデータ多重部118へ送る。
データ多重部118は、PTSが調整された第2の映像データと再エンコードされた第2の音声データとを、データ分離部113から伝達された多重情報に従い再び多重することで第2のマルチメディアデータを生成し、データ書き出し/読み出し部120へ第2のマルチメディアデータを出力する。
このタイミング調整部110は、例えば、第1のクライアント30を基準に第2のクライアント40を調整する場合では、1つあればよい。その逆も同様である。一方、第1のクライアント30と第2のクライアント40の平均となるようにそれぞれを調整する場合には、タイミング調整部110を2つ備えることで実現できる。
次にデータ書き出し/読み出し部120とストレージ121について述べる。前述の通り、データ書き出し/読み出し部120は、タイミング調整部110からデータを受け取り、データ配信部130にデータを送る。これは、クライアント端末からの指示をうけたデータ配信部130、再生情報管理部140からの指示に従って動作している状態である。この場合、ストレージ121は、データ書き出し/読み出し部120にとって、データ配信部130とタイミング調整部110のデータ入出力時のバッファーとして機能する。
一方で、複数のクライアント端末が存在する場合、クライアント端末間で再生ズレが生じた場合は、前述のような方法で、映像データと音声データのPTSを修正する。この時、PTSの修正が必要になったクライアント端末向けのデータについて、それ以降すべてのPTSを修正する必要がある。クライアント端末の台数が少ない場合は前述の逐次処理でも問題は発生しないが、台数が多い場合は処理が間に合わなくなる場合がある。そこで、タイミング調整部110は、再生情報管理部140の指示よりも事前にPTSを修正したデータを作成することができる。クライアント端末間の再生のズレは、一般的には、一定間隔のズレとなる場合が多く、初回の修正に基づいてその後のデータを生成することができる。その場合は、タイミング調整部110は、データ配信部130の要求よりも多くのデータをデータ書き出し/読み出し部120へ送ることになる。その際、データを一時的にストレージ121に貯めることで対応することができる。
また、クライアント端末間の再生ズレが一定ではない場合は、再生開始から初めてPTSを修正した時までの時間Tmodptsの分のデータのPTSを修正するようにしてもよい。ないしは、Tmodptsの半分としてもよいし、それ以下でも以上でもよい。この場合に、PTSを修正したデータを先行して作りすぎた場合は、データ書き出し/読み出し部120は、ストレージ121に保存されているデータを捨てるように動作させる必要がある。PTSを修正したデータを少なく生成した場合は、タイミング調整部110は再度、PTSを修正したデータを先行して生成することができる。
次にクライアント端末の構成について図1を用いて説明する。ここで、図1では第1のクライアント端末30についてのみ構成を示しているが、第2のクライアント端末40も同様の構成要素であって同様の作用をする。
第1のクライアント端末30の外部に表示装置31が接続される。一方、第2のクライアント端末40の外部に表示装置41が接続される。ここまでに述べてきた同期再生とは、この表示装置31と表示装置41に表示される映像が一定の誤差範囲に収まりつつ再生が維持される状態をいう。音声についても同様であり、音声が一定の誤差範囲に収まりつつ再生される状態をいう。ここで、一定の誤差範囲とは、実験的ないし、統計的に決められた、視聴上違和感のない範囲をさす。
第1のクライアント端末30は、データ受信部300、データ分離部310(第3の分離部ともいう)、デコード部320(第3のデコード部ともいう)、提示制御部330、及び再生制御部340を備える。
データ受信部300は、ネットワーク20を介してマルチメディア配信装置10と接続され、マルチメディア配信装置10から配信されたマルチメディアデータを受信する。このとき、マルチメディアデータの要求は、クライアント側が要求することになる。この要求は、再生制御部340が行う。データ受信部300は、受信したマルチメディア情報をデータ分離部310へ出力する。データ受信部300には、ネットワークの遅延やゆらぎを吸収するために、バッファーとして、一時的な記憶領域を設けてもよい。
データ分離部310は、データ受信部300が受信したマルチメディアデータを映像データと音声データとに分離する。ここでは、MPEG−2規格準拠の映像データとMPEG−4 AAC規格準拠の音声データとが、MPEG−2 SYSTEM規格のMPEG−2 トランスポートストリーム形式に多重されているものであるので、トランスポートストリームを分離して、MPEG−2形式の映像データとMPEG−4 AAC形式の音声データとに分ける。データ分離部310についても、処理遅延などを吸収する目的にバッファーとして一時的な記憶領域を設けてもよい。
デコード部320は、データ分離部310で分離された映像データと音声データとを取得してデコード処理を行なう。このとき、データ分離部310とデコード部320は、別々の構成となっているが1つにまとめた構成としてもよい。デコード部320は、映像データと音声データをデコードしてデコードデータを提示制御部330へ送る。また、デコード部320では、映像データであれば、何フレーム分のデータをデコードしたなどの情報や、どの時刻に提示すべき映像データなのかなど、音声データも同様に何秒分のPCMデータを生成したか、どの時刻に提示すべき音声データかなどのマルチメディア情報に含まれる再生情報を再生制御部340へ送る。
再生制御部340は、デコード部320から受け取った映像データや音声データの再生時刻などの再生情報を再生情報管理部140へ送信する。
この再生情報は、映像データのPTSv、音声データのPTSa、もしくは再生制御部340から提示制御部330へ送信したデータでもよい。再生情報は、第1のクライアント端末30やその他のクライアント端末で再生している映像データや音声データ、またはその両方の時間的な情報であればよい。以下では、映像データのPTSv、音声データのPTSaが送られるとする。また、再生制御部340は、再生情報管理部140の要求に従って再生情報を送信するが、再生制御部340が定期的(例えば、1秒毎)に再生情報管理部140へ再生情報を送出するような構成としてもよい。以下ではそのような構成で述べるが、再生情報管理部140の要求にしたがって動作する場合について記載する。
また、再生情報管理部140は、接続されるクライアント端末が1台のみの場合は、以下に述べる再生開始要求を再生制御部340に送信するのみでよい。しかし、再生情報管理部140を実現する際にその制御を簡略化するため、ないし、時間的に後から別のクライアントからの同期再生要求がある場合に備えて、再生情報を再生制御部340へ要求しつづけてもよい。
提示制御部330は、表示装置31に対して、映像データを送信して表示するよう制御する。
このように、第1のクライアント端末30において再生された映像データ及び音声データの量に関する情報である再生情報と第2のクライアント端末40において再生された映像データ及び音声データの量に関する情報である再生情報とに基づいて、PTS変換部114が調整する前記提示時刻情報の調整量と第2のサンプリング周波数とを制御することで第1のクライアント端末30と第2のクライアント端末40との同期再生が可能となる。
次に、マルチメディア配信装置10と第1のクライアント端末30及び第2のクライアント端末40の全体の動作を説明する。ここでは、複数(2台以上)のクライアント端末が同時に1つのマルチメディアデータを同時に同期して再生する場合について述べる。
まず、ユーザーが1つのマルチメディアデータを複数のクライアント端末で同時に同期して再生するという指示を行なう。この指示は、ユーザーがあるクライアント端末に再生制御部を介してマルチメディア配信装置10の再生情報管理部140へ指示内容を送信してもよいし、ユーザーがマルチメディア配信装置10側で設定指示した情報を再生情報管理部140が受け取る方法でもよい。以下ではユーザーが再生情報管理部107に対して複数端末同期再生を指示する例を述べる。このときのユーザーは第1のクライアント端末30及び表示装置31を用いて視聴するユーザー(以下、第1のユーザーともいう)でも、第2のクライアント端末40及び表示装置41を用いて視聴するユーザー(以下、第2のユーザーともいう)でもそれ以外のユーザーであってもよい。ユーザーは1名でもよいし、複数名でもよい。第1のユーザー及び第2のユーザーがそれぞれのクライアント端末を操作することによりそれぞれのクライアント端末の再生情報管理部に再生開始要求が発行される。このとき、時間的に全く同一時刻となる場合もあるが、時差が生じる場合もある。以下では、第1のユーザーが第2のユーザーよりも早く再生開始要求をしたものとして述べるが、逆であっても同時であってもよい。
再生情報管理部140は、第1のクライアント30からの再生要求に従って、タイミング調整部110に対してデータ配信開始を指示する。この段階では、複数クライアント端末間の再生のずれは発生していないので、前述のような再生情報は送信しない。
次に、再生情報管理部140は別のクライアント端末からの再生開始要求を待つ。ここで、本発明に影響は与えないが、第2のクライアント端末40からの再生開始要求の待ち時間にしきい値を設けて第2のクライアント端末へ対応不可の旨を示す情報を送信したり第2のクライアント端末40からの再生開始要求を無視したりする処理を含めてもよい。
第2のクライアント端末40から再生開始要求があったら、第1のクライアント端末の時と同様にタイミング調整部110に対してデータ配信開始を指示する。
次に、再生情報管理部140は、データ配信部130からそれぞれのクライアント端末に配信されたデータ量を受信するようになっているので、予め決められたデータ量をそれぞれのクライアント端末に配信した、予め決めた時刻が経過した、またはその両方の条件にて、第1のクライアント端末30及び第2のクライアント端末40の再生制御部に提示開始を指示する。ここで、各クライアント端末のデータ受信部300、データ分離部310、デコード部320、提示制御330は、再生開始要求を再生管理部140に発行した後は、それぞれ動作を開始し、再生情報管理部140からの再生開始指示を受けたら、瞬時に映像データ、音声データを出力できるような状態になる。このような状況は、例えば、第1のクライアント端末30でユーザーがマルチメディア情報の再生開始を指示し、その直後に一時停止のような状態で停止している状態である。再生情報管理部140から各クライアント端末へ提示開始を出したのち、各クライアント端末の再生制御部340にてマルチメディアデータの提示が開始され、各クライアント端末にて同期した再生が可能となる。
提示開始後、以下の例では再生情報管理部140が再生情報要求を発行する例を示すが、各クライアント端末の再生制御部340が定期的に再生情報を送出してもよい。
次に提示開始後の各クライアント端末での同期制御について述べる。
再生情報管理部140は、提示開始要求発行後、予め決められた時間毎(例えば、1秒など)に各クライアント端末の再生制御部340に再生情報要求を発行する。前述した通り、再生情報は各クライアント端末の映像データと音声データのPTS情報であるとして述べる。第1のクライアント端末30からの再生情報をPTSv1(映像データ)、PTSa1(音声データ)、第2のクライアント端末からの再生情報をPTSv2(映像データ)、PTSa2(音声データ)とすると、例えば本例では第1のクライアント端末30が先に再生開始要求をしたため第1のクライアント端末30の再生情報を基準にクライアント端末間のズレを補正する。ただし、逆でもあってもよい。3台以上の場合はいずれのクライアント端末の情報を基準にしてもよい。
次に図3を用いてマルチメディア配信装置10と第1のクライアント端末30及び第2のクライアント端末40との再生情報の取得があった場合のずれ量の補正量の算出について説明する。図3は、マルチメディア配信装置10と第1のクライアント端末30及び第2のクライアント端末40との情報のやり取りの一例を示す図である。横軸は時間の経過を示す。
まず時刻Ts0にマルチメディア配信装置10が第1のクライアント端末30へ再生情報要求を発行する。
第1のクライアント端末30は、マルチメディア配信装置10からの再生情報の要求に応じて再生情報を返答する。マルチメディア配信装置10は、再生情報の要求した時刻Ts0からd1秒後に、第1のクライアント端末30からの再生情報を取得する。
次にマルチメディア配信装置10は、時刻Ts0から予め決められた時間d秒後に第2のクライアント端末40へ再生情報要求を発行する。
第2のクライアント端末40は、マルチメディア配信装置10からの再生情報の要求に応じて再生情報を返答する。マルチメディア配信装置10は、再生情報の要求した時刻からd2秒後に、第2のクライアント端末40からの再生情報を取得する。
図3では、第1のクライアント端末30と第2のクライアント端末40が別々のタイミングで再生情報要求をしているが同時であってもよい。図3のd1とd2について述べる。これらは、各クライアントでのネットワーク遅延とクライアントでの動作時間を含む遅延時間である。このとき、d1/2とd2/2が各クライアントでの再生情報と考えられる。この時、予め決められた時間よりもd1、d2が大きな値となる場合には、予期しない遅延が発生していると考え、それぞれの値を採用しないという方法を取り入れてもよい。この予期しない遅延時間には、ネットワークに起因するものなどがある。ここで、第1のクライアント端末30と第2のクライアント端末40に全く誤差がない場合は、以下の式が成り立つ
Ts0+d+d2/2―(Ts0+d1/2)=PTSv2―PTSv1
Ts0+d+d2/2―(Ts0+d1/2)=PTSa2―PTSa1
ただし、各PTSは、再生制御部340で受け取るPTSは、PTS間隔の誤差を含んでいる場合がある。これは、再生制御部340でのPTS取得方法や補間処理に起因する。しかし、以下のズレ補正方法においては、これらの誤差を含んでいても不具合は発生しないため、それらを考慮しないものとするが、現在のマルチメディア情報の映像データ、音声データのPTSの間隔をΔPTSv、ΔPTSaとする。また、計測間隔のd秒にfv、fa個の映像データ、音声データが含まれるとする。dvを映像データから推定した値、daを音声データから推定した値とする。
Ts0+d+d2/2―(Ts0+d1/2)=PTSa2―PTSa1
ただし、各PTSは、再生制御部340で受け取るPTSは、PTS間隔の誤差を含んでいる場合がある。これは、再生制御部340でのPTS取得方法や補間処理に起因する。しかし、以下のズレ補正方法においては、これらの誤差を含んでいても不具合は発生しないため、それらを考慮しないものとするが、現在のマルチメディア情報の映像データ、音声データのPTSの間隔をΔPTSv、ΔPTSaとする。また、計測間隔のd秒にfv、fa個の映像データ、音声データが含まれるとする。dvを映像データから推定した値、daを音声データから推定した値とする。
dv=d+d2/2―d1/2―(PTSv2―PTSv1)
da=d+d2/2―d1/2−(PTSa2―PTSa1)
とするとズレが発生する場合というのは、次の式を満たす場合である。
da=d+d2/2―d1/2−(PTSa2―PTSa1)
とするとズレが発生する場合というのは、次の式を満たす場合である。
|dv|―(fv+1)×ΔPTSv>0
|da|―(fa+1)×ΔPTSa>0
dv、daの符号によりどちらが進んでいるか判別できる。上記では、第2のクライアント端末40が早い場合は、負の値となる。また、一般的に、dv、daの符号は同じになる。これは各クライアントで映像データと音声データの同期再生は保証されている場合が多いためである。
|da|―(fa+1)×ΔPTSa>0
dv、daの符号によりどちらが進んでいるか判別できる。上記では、第2のクライアント端末40が早い場合は、負の値となる。また、一般的に、dv、daの符号は同じになる。これは各クライアントで映像データと音声データの同期再生は保証されている場合が多いためである。
しかし、異なっていた場合は映像データと音声データでそれぞれに個別の処理を実施すればよい。もし、各クライアント内での同期再生が保証されている場合は、映像データもしくは音声データどちらかについて上記を検討すればよい。
ここまでで、各クライアント端末のずれの方向が算出できるため、前述した方法にて新しいPTSを算出し、タイミング調整部110へ出力する。
次に、図4を用いて第1のクライアント端末30が既に再生・提示を開始している場合に、第2のクライアント端末40が同じマルチメディアデータを第1のクライアント端末30と同期して再生・提示を行う場合について述べる。ただし、第1のクライアント端末30と第2のクライアント端末40が逆転する場合や3台以上のクライアント端末を考える場合も同様に制御できるため、クライアント端末が2台の場合のみを述べる。
図4に時間の関係を示す。図4は、マルチメディア配信装置10と第1のクライアント端末30及び第2のクライアント端末40との再生要求のやり取りの一例を示す図である。横軸は時間の経過を示す。
再生情報管理部140は、第1のクライアント端末30への提示開始要求の時刻Tt1を記録する。次に、第2のクライアント端末40から再生開始要求が再生情報管理部140へあった時刻Ts2を記録する。このとき、図3にあるように第1のクライアント端末30の提示開始要求に対して再生制御部340が提示開始を再生情報管理部107へ返答するように実装すると、その時間差分によりネットワーク等の遅延時間を推定することができ、より正確な制御が可能となる。
また、第2のクライアント端末40の提示開始要求を発行する際にも、先立ってダミーの提示開始要求と提示開始への返答する手順を加える事で、ネットワーク等の遅延を考慮したより正確な制御が可能となるが、ここでは簡単のため、そのような制御のない図4で検討する。第2のクライアント端末40から再生情報管理部140に再生開始要求があった時に、第1のクライアント端末30が再生している映像データと音声データのPTSをPTSvv1、PTSaa1とする。
各クライアント同時再生のときと同様に再生情報管理部140が再生開始要求を受けてから提示開始要求を出すまでを、予め決めた時刻dinterが経過した場合とすると、再生情報管理部140がクライアント8の再生制御部340に提示開始要求を発行する時刻Tt2は以下を満たす。
Tt2=Ts2+dinter
とすると第2のクライアント端末40が提示開始要求を受けた時に再生すべきPTSはそれぞれPTSvv1+dinter、PTSaa1+dinterであると計算でき、第2のクライアント端末40へ配信するマルチメディア情報の先頭をPTSvv1+dinter、PTSaa1+dinterとなるようにタイミング調整部110を制御しデータ読み込み部100を制御する。
とすると第2のクライアント端末40が提示開始要求を受けた時に再生すべきPTSはそれぞれPTSvv1+dinter、PTSaa1+dinterであると計算でき、第2のクライアント端末40へ配信するマルチメディア情報の先頭をPTSvv1+dinter、PTSaa1+dinterとなるようにタイミング調整部110を制御しデータ読み込み部100を制御する。
第2のクライアント端末40に提示開始を発行した後の動作は、同時同期再生時と同様の制御をする。
ここで、PTSvv1+dinter、PTSaa1+dinterについて、本例ではマルチメディア情報として、映像データをMPEG−2ストリームとしている。前述したとおり、MPEG−2ストリームは、フレーム間予測技術があるため、任意の映像データからデコードすることができない。このため、PTSvv1+dinter、PTSaa1+dinterを算出するにあたり、マルチメディア情報に含まれる映像データで、PTSvv1+dinterより大きな値となりかつその映像データからデコードできる映像データを見つける必要がある。
この時のPTSの差分をΔPTSiとすると、第2のクライアント端末40への提示開始要求時刻は、Tt2=Ts2+dinter+ΔPTSiとなる。さらに、マルチメディア情報のPTSは、それぞれPTSvv1+dinter+ΔPTSi、PTSaa1+dinter+ΔPTSiとなる。
この発明に係るマルチメディア同期再生装置の実施の形態1の構成であるマルチメディア同期再生装置は、以上のように構成されているので、同期のための時刻情報を付加することなく、また、クロック調整機構を搭載していなくても、端末間でマルチメディア情報の同期再生が実現できるという効果を得ることが出来る。
以上、本実施の形態では、クライアント端末を2台として記載したが、2台以上であってもよい。この場合、タイミング調整部110、再生情報管理部140はクライアント端末の数だけ処理できるように拡張すればよい。例えば、3台のクライアント端末が存在する場合は、タイミング調整部110は2個あれば対応できる。
実施の形態2.
図5に、実施の形態2に係るマルチメディア同期再生装置の構成を示す。実施の形態1と比較して、データ配信部131、再生情報管理部141、及び再生制御部341の動作が異なる。それ以外の構成要素は、実施の形態1と同じである。
図5に、実施の形態2に係るマルチメディア同期再生装置の構成を示す。実施の形態1と比較して、データ配信部131、再生情報管理部141、及び再生制御部341の動作が異なる。それ以外の構成要素は、実施の形態1と同じである。
データ配信部131は、実施の形態1では、第1のクライアント端末30及び第2のクライアント端末40からの接続情報、例えば、各クライアント端末のIPアドレスなどの情報や、クライアント端末の接続台数などを再生情報管理部へ通知していたが、実施の形態2では通知しない。実施の形態2では、第1のクライアント端末30及び第2のクライアント端末40の接続情報は、再生情報管理141で管理する。各クライアント端末の再生制御部341は、ユーザー等から再生開始要求をうけ、第1のクライアント端末30または第2のクライアント端末40の接続情報を再生情報管理部141へ通知する。それ以外の機能は実施の形態1と同様である。
このように構成することで、第1のクライアント端末30及び第2のクライアント端末40において、再生情報や再生制御はそれぞれの再生制御部341に集約され、マルチメディア配信装置10において、第1のクライアント端末30及び第2のクライアント端末40の再生情報や再生制御は再生情報管理部141に集約することができる。
これにより、実施の形態1に係るマルチメディア同期再生装置と同様、同期のための時刻情報を付加することなく、また、それぞれのクライアント端末30でクロック調整機構を搭載していなくても、端末間でマルチメディア情報の同期再生が実現できるという効果を得ることが出来る。
実施の形態2では、クライアント端末は、2台で説明したが、2台以上であってもよい。この場合、タイミング調整部110、再生情報管理部141はクライアント端末数だけ処理できるように拡張すればよい。例えば、3台のクライアントが存在する場合は、タイミング調整部110は、3から2個あれば対応できる。
10 マルチメディア配信装置
100 マルチメディアデータ読出し部
110 タイミング調整部
113 分離部
114 時刻情報変換部
115 デコード部
116 再サンプリング部
117 再エンコード部
118 多重化部
130 データ配信部
140 再生情報管理部
20 ネットワーク
30 第1のクライアント端末
40 第2のクライアント端末
100 マルチメディアデータ読出し部
110 タイミング調整部
113 分離部
114 時刻情報変換部
115 デコード部
116 再サンプリング部
117 再エンコード部
118 多重化部
130 データ配信部
140 再生情報管理部
20 ネットワーク
30 第1のクライアント端末
40 第2のクライアント端末
Claims (6)
- 第1のマルチメディアデータを読み出すマルチメディアデータ読出し部と、
前記第1のマルチメディアデータを第1の映像データと第1の音声データとに分離する分離部と、
前記第1の映像データに含まれる提示時刻情報を調整した第2の映像データを生成する時刻情報変換部と、
前記第1の音声データをデコードするデコード部と、
デコードされた前記第1の音声データについて第2のサンプリング周波数で再サンプリング処理を実行する再サンプリング部と、
再サンプリング処理された前記第1の音声データをエンコードして第2の音声データを生成するエンコード部と、
前記第2の映像データ及び前記第2の音声データを多重して第2のマルチメディアデータを生成する多重化部と、
前記第1のマルチメディアデータを第1のクライアント端末へ配信し、前記第2のマルチメディアデータを第2のクライアント端末へ配信するデータ配信部と、
前記第1のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報と前記第2のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報とに基づいて、前記時刻情報変換部が調整する前記提示時刻情報の調整量と第2のサンプリング周波数とを制御する再生情報管理部とを備えたことを特徴とするマルチメディア同期再生装置。 - 前記再生情報は、それぞれのクライアント端末がどの時刻に提示すべき映像データまたは音声データなのかを示す情報、映像データについて何フレーム分のデータをデコードしたかを示す情報、または音声データについて何秒分の音声データをデコードしたかを示す情報を含む
ことを特徴とする請求項1に記載のマルチメディア同期再生装置。 - 前記第1のクライアント端末及び前記第2のクライアント端末は、配信されたマルチメディアデータを映像データと音声データとに分離する第3の分離部、分離された前記映像データと前記音声データとをデコードし、デコードした前記映像データのフレーム数及び再生する時刻並びにデコードした前記音声データのデータ量及び再生する時刻を含む再生情報を送信する第3のデコード部、前記映像データの提示時刻情報に基づいて前記映像データの表示をスキップまたは繰り返し表示する提示制御部を備えた
ことを特徴とする請求項1または請求項2に記載のマルチメディア同期再生装置。 - 前記データ配信部は、前記再生情報管理部に前記第1のクライアント端末及び前記第2のクライアント端末のIPアドレスと、前記第1のクライアント端末及び前記第2のクライアント端末の台数とを含む接続情報を出力する
ことを特徴とする請求項1から請求項3のいずれか1項に記載のマルチメディア同期再生装置。 - 前記第1のクライアント端末及び前記第2のクライアント端末は、再生情報管理部に前記クライアント端末のIPアドレスを含む接続情報を送信する
ことを特徴とする請求項4に記載のマルチメディア同期再生装置。 - 第1のマルチメディアデータを読み出すマルチメディアデータ読出しステップと、
前記第1のマルチメディアデータを第1の映像データと第1の音声データとに分離する分離ステップと、
前記第1の映像データに含まれる提示時刻情報を調整した第2の映像データを生成する時刻情報変換ステップと、
前記第1の音声データをデコードするデコードステップと、
デコードされた前記第1の音声データについて第2のサンプリング周波数で再サンプリング処理を実行する再サンプリングステップと、
再サンプリング処理された前記第1の音声データをエンコードして第2の音声データを生成するエンコードステップと、
前記第2の映像データ及び前記第2の音声データを多重して第2のマルチメディアデータを生成する多重化ステップと、
前記第1のマルチメディアデータを第1のクライアント端末へ配信し、前記第2のマルチメディアデータを第2のクライアント端末へ配信するデータ配信ステップと、
前記第1のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報と前記第2のクライアント端末において再生された映像データ及び音声データの量に関する情報である再生情報とに基づいて、前記時刻情報変換部が調整する前記提示時刻情報の調整量と第2のサンプリング周波数とを制御する再生情報管理ステップと
を備えたことを特徴とするマルチメディア同期再生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014207340A JP2016076884A (ja) | 2014-10-08 | 2014-10-08 | マルチメディア同期再生装置及びマルチメディア同期再生方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014207340A JP2016076884A (ja) | 2014-10-08 | 2014-10-08 | マルチメディア同期再生装置及びマルチメディア同期再生方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016076884A true JP2016076884A (ja) | 2016-05-12 |
Family
ID=55951806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014207340A Pending JP2016076884A (ja) | 2014-10-08 | 2014-10-08 | マルチメディア同期再生装置及びマルチメディア同期再生方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016076884A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112770165A (zh) * | 2020-12-28 | 2021-05-07 | 杭州电子科技大学 | 一种音视频流分布式同步方法 |
-
2014
- 2014-10-08 JP JP2014207340A patent/JP2016076884A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112770165A (zh) * | 2020-12-28 | 2021-05-07 | 杭州电子科技大学 | 一种音视频流分布式同步方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11627351B2 (en) | Synchronizing playback of segmented video content across multiple video playback devices | |
JP7036962B2 (ja) | 再生方法および再生装置 | |
US10856018B2 (en) | Clock synchronization techniques including modification of sample rate conversion | |
JP2019050636A (ja) | 複数のオーバーザトップストリーミングクライアントを同期させること | |
JP6737922B2 (ja) | 送信方法、受信方法、送信装置および受信装置 | |
US9621682B2 (en) | Reduced latency media distribution system | |
JP4983923B2 (ja) | デコーダ装置、およびデコード方法 | |
US20060140591A1 (en) | Systems and methods for load balancing audio/video streams | |
JP5972616B2 (ja) | 受信装置、クロック復元方法及びプログラム | |
JP2006190213A (ja) | メディア再生装置 | |
EP3195533B1 (en) | Video network | |
JP2006332943A (ja) | ストリーム制御装置、ストリーム再生方法、映像記録再生システム | |
JP2020198510A (ja) | 同期制御装置、同期制御方法及び同期制御プログラム | |
JP6193569B2 (ja) | 受信装置、受信方法、及びプログラム、撮像装置、撮像方法、及びプログラム、送信装置、送信方法、及びプログラム | |
JP7365212B2 (ja) | 動画再生装置、動画再生システム、および動画再生方法 | |
JPH09247670A (ja) | 情報多重化装置 | |
JP2016076884A (ja) | マルチメディア同期再生装置及びマルチメディア同期再生方法 | |
JP5082715B2 (ja) | 受信装置、受信方法およびコンピュータプログラム | |
Jung et al. | A client-driven media synchronization mechanism for RTP packet-based video streaming | |
JP6400163B2 (ja) | 受信装置、受信方法、送信装置、送信方法、及びプログラム | |
JP2011004015A (ja) | 再生装置およびコンテンツ再生方法 | |
Potetsianakis et al. | Buffer management for synchronous and low-latency playback of multi-stream user-generated content | |
JP7552900B2 (ja) | 同期制御を行う通信システム、その同期制御方法、受信サーバ及び同期制御プログラム | |
JP7292901B2 (ja) | 送信装置、送信方法、及びプログラム | |
EP4050897A1 (en) | Systems, methods and devices for compressing audiovisual content |