JPWO2002023908A1 - ネットワーク動画音声の配信方法、その装置及び動画音声の作成方法 - Google Patents

ネットワーク動画音声の配信方法、その装置及び動画音声の作成方法 Download PDF

Info

Publication number
JPWO2002023908A1
JPWO2002023908A1 JP2002527213A JP2002527213A JPWO2002023908A1 JP WO2002023908 A1 JPWO2002023908 A1 JP WO2002023908A1 JP 2002527213 A JP2002527213 A JP 2002527213A JP 2002527213 A JP2002527213 A JP 2002527213A JP WO2002023908 A1 JPWO2002023908 A1 JP WO2002023908A1
Authority
JP
Japan
Prior art keywords
stream
client
time
server
display
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
Application number
JP2002527213A
Other languages
English (en)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of JPWO2002023908A1 publication Critical patent/JPWO2002023908A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/44Processing 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/44004Processing 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
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • 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

簡潔な構成でもってネットワークを介して動画と音声を速やかに再生表示開始でき、しかも再生表示の中断がなく、さらにユーザ入力に応じた動画と音声を対話式に配信して表示することのできる方法及びその装置を提供する。ネットワークを介してサーバー(1)からクライアント(3)へ複数の圧縮された動画と音声の多重化されたストリーム(s(1)、s(2)、s(n))を送信してクライアントで再生表示する方法において、サーバーはストリームを順次にクライアントへ送信し、クライアントはストリームを順次に受信し、サーバーとは独立に受信順にメモリ内に格納し、順次伸張し、受信伸張と並行して再生表示することを特徴とする方法が開示される。

Description

技術分野
本発明は、連続して再生可能な動画映像と音声のストリームの作成方法、送受信方法およびその装置に関する。本発明は特に簡潔なプログラム構成でネットワークを介して動画映像と音声を送信して最小の待ち時間で視聴開始ができ、しかも表示中断やコマ落ちがなく且つ保存も同時にされて後からの再生表示も容易で、さらにユーザ入力に応じた動画映像と音声を対話式に配信して表示することのできる方法及びその装置に関する。
産業上の利用可能性
本発明は、ネットワーク(公衆電話通信網を含む)を介して、動画と音声を含むコンテンツを配信する産業に利用できる。
背景技術
従来の動画映像と音声の送信方式としては、ストリーミング再生技術が知られている。これはサーバーでストリームデータを動画映像と音声に分離してフレーム単位のフレームデータとし、このフレームデータを送信パケットに格納してクライアントへ送信するものである。サーバーとクライアント端末が公衆電話回線等のネットワークを介して接続後、ネゴシエーションを行なった後に送受信を開始し、クライアント端末上で表示中断やコマ落ちをしないように一定時間(例えば4ないし5秒程度)のバッフアリングをした後に表示を開始する。サーバーからの送出とクライアント端末での表示は同期を取って行なわれる。このためサーバーとクライアントを一体的に同期する必要のため、サーバーは各フレームの送出タイミングの時刻データを付してクライアント端末に送出し、クライアント端末では伸張の済んだ各フレームを各々の時刻タイミングにより表示を行う。すなわち、サーバーの送信プログラムで1フレーム毎の表示タイミングを制御している。
このストリーミング再生方式では、クライアント端末においては受信の際に表示をすることができるだけで、保存して後からクライアント端末上で単独再生することができない。
また、各フレーム毎のデータ量は異なるので、現在多用されている圧縮効率の高いバリアブルビットレートで圧縮されたストリームの場合はフレーム毎の映像データの符号量に大きな差が有り、最大符号量のフレームを基準に送信と表示の同期を取るため、符号量の少ないフレームではパケットの空いた部分にスタッフイングバイトを入れるなどしてフレーム毎の送信時間を均一にして表示との同期を取っており、このために送信効率がかなり低下する問題がある。
また、フレーム間予測符号化により圧縮されたストリームでは、クライアント端末で伸張単位分のフレームデータが揃わないと伸張できない場合があり、受信開始後表示開始するまでのバッフアリング時間を十分に取らないと表示中に中断とコマ落ちや画像の崩れが度々発生する問題がある。この方式では、帯域幅に十分に余裕のあるネットワークかATMネットワークを使用する環境ならば、フレーム毎の符号量にかかわらず、フレーム毎の送信時間が一定にできるので鑑賞に耐える映像品質が維持できるが、公衆電話回線等の狭帯域のネットワークでは問題が多く発生し、実用性が低かった。
また、下位層の通信プロトコルを使用せずに直接パケットをアプリケーションで受信する方式のため、必ず1ストリーム毎に数秒間程度のネゴシエーションに要する時間が必要で、表示一時停止後の即時表示再開や、クライアント端末から次々に発せられるユーザ選択に応じて即座にサーバーからストリームを送信して表示すると言った、インタラクテイブ(対話)形式の応用には全く不可能であった。なお、帯域幅を広くして映像品質を相対的に向上させても、送信効率やバッフアリング時間は改善されず、ネゴシエーション時間も無くなるわけではない。さらに上述の様に受信データの保存ができないため、後から再生できず利用の幅を狭めていた。
別の従来技術としては、独立再生形式の1本のストリームのデータをサーバーからクライアント端末のラムディスクにダウンロードし、ある程度のデータがダウンロードされたら、受信と並行してデータの読み出し伸張表示を行うプログレッシング・ダウンロードが知られている。映像音声はサーバーに蓄積されている状態で再生するのと同じ品質でクライアント端末に表示することができ、後で何度でも単独で再生することができるが、ストリームがバリアブルビットレートで圧縮されている場合、受信時間と受信データの表示時間の関係は不定なので、受信開始後表示開始するまでの時間をどの位に取れば最後まで中断無く表示できるか正確には分からないため、受信開始から表示開始までの時間をかなり必要としたり、表示時間の長いストリームだと表示の中断を起こし易く、表示が停止した後、表示を再開するにはユーザのクリックを必要とする等の問題があった。
また、送受信と表示とは同期していないので、端末において表示場面に対応したユーザ選択処理ができず、ストリームの表示中にユーザの選択に応じて次のストリームをサーバーで選択処理して端末に送って表示するという、インタラクティブ(対話式)処理ができなかった。
さに、ストリーミング再生もプログレッシブ・ダウンロードもクライアント端末からの要求とサーバーからの送信、クライアント端末での受信、伸張、表示は一体で、伸張表示するストリームは各送受信伸張表示方式で決められた形式のものしか使用できないという制約がある。
上述したように従来技術では、ネットワークを介してサーバーからクライアントへ動画と音声を送信する際に、ネゴシエーションの時間が必要であり、さらに表示中断やコマ落ちを避けるためクライアント側で受信開始後に一定時間データの蓄積を必要とするため、クライアント側のユーザの待ち時間が長いという問題点がある。この待ち時間の長さはユーザが最も問題とする点でもある。また、サーバーからの動画と音声の送出とクライアントでの再生表示を同期させるためのプログラムが複雑でありサーバーとクライアントに対して高負担を課すという問題点ある。また、狭帯域のネットワークを介して表示の中断やコマ落ち等を発生せずに効率良く特定の部分だけ高画質及び/又は高フレームレートにして配信することができないという問題点がある。さらに、クライアント側のユーザ入力に応じてインタラクティブ(対話式)に動画を選択して且つ表示中断やコマ落ちを発生することなく円滑に配信することができないという問題点がある。さらに、従来技術のストリーミング再生技術では受信した動画と音声の保存ができず、後で単独再生できないという問題点がある。
発明の開示
上記問題点に鑑み本発明の目的は、連続再生可能な動画と音声の多重化された複数のストリーム(バリアブルビットレート圧縮も含む)をサーバから送信し、クライアント側でサーバーから独立して受信開始後に極短時間で表示開始でき、受信ストリームの保存もできる送信効率の高いサーバーからクライアントへの動画及び音声の作成方法、送受信方法およびその装置を提供することである。
また、本発明の別の目的は、表示の中断やコマ落ちを発生することなく動画と音声ストリームを表示することができ、また任意のストリーム部分を他の部分よりも高画質及び/又は高音質に再生表示することができる、ストリームの作成方法、送信効率の高いストリームの圧縮伸張方法、ストリームの送受信表示方法およびその装置を提供することである。
また、本発明の別の目的は、ユーザの選択に応じてクライアント側で動画と音声が早い応答速度で円滑に反応するように、サーバーとクライアント間のストリームの選択的送受信処理方法、動画映像と音声の同期表示方法およびその装置を提供することである。
さらに、本発明の他の目的は、動画映像と音声をサーバーとクライアント間で配信するために必要な非常に小さなプログラムサイズを有し、オペレーションシステムを選ばず、使用プロトコルも自由に選べる高移植性と、単独で再生できる形式のストリームであればどのような圧縮形式のストリームでも取扱うことのできる高い汎用性を持ったサーバからクライアントへ品質の良いリアルタイムの動画映像を狭帯域のネットワークを介して配信することのできる方法およびその装置を提供することである。
本発明によれば、ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声が多重化されたストリームを送信してクライアントで再生表示する方法において、サーバーはクライアントへストリームを順次に送信し、クライアントはストリームを順次に受信し、サーバーとは独立に受信順にメモリ内に格納し、順次伸張し、受信伸張と並行して再生表示することを特徴とする方法が提供される。
この方法によれば、サーバーがストリームを順次に送信しさえすれば、クライアントはサーバーとは独立に受信順にストリームをメモリに格納し、順次伸張し、並行して再生表示するので、サーバーとクライアント間で特別な同期を必要とせず、簡潔なプログラムで効率良く動画と音声の配信をネットワークを介してできる。
また、この方法は、クライアントはストリームの前記再生表示の開始又は終了時期に毎回信号をサーバーに送信し、サーバーではこの信号を受信後にストリームの前記送信をするステップをさらに含むことができる。このステップによればサーバーのストリーム送出とクライアントのストリーム再生表示との間に同期関係を持たせることができる。
さらにこの方法ではストリームの一端にストリーム間の連結を示す識別子を付して、クライアントで受信時にメモリに格納する際に利用して、受信を容易確実にしてもよい。
本発明によれば、ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声のストリームを送信して再生表示する方法であって、サーバーは1番目のストリームをクライアントへ送出し、クライアントは1番目のストリームをサーバーから受信後に直ちに伸張して再生表示し、サーバーは1番目のストリームの送出後に直ちに2番目のストリームを送出し、クライアントは1番目のストリームを再生表示中に2番目のストリームを受信して伸張して1番目のストリーム表示終了後に直ちに2番目のストリームを中断なく再生表示し、順次以降のストリームを送信して再生表示する方法において、2番目のストリームについて、サーバ・クライアント間の送受信に要する時間t(2)とクライアントにおいて伸張に要する時間c(2)との和[t(2)+c(2)]が、クライアントにおいて1番目の再生表示時間Dt(1)と1番目のストリームの伸張に要する時間c(1)との和[Dt(1)+c(1)]よりも短く、n番目(nは3以上の任意の自然数)のストリームについて、サーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)と1番目のストリームの伸張に要する時間c(1)との和[T(n−1)+c(1)]からサーバー・クライアント間で2番目のストリームの送信開始から(n−1)番目のストリームの受信終了までの送受信に要する時間T’(n−1)を引いた値[T(n−1)+c(1)−T’(n−1)]よりも短いことを特徴とする方法が提供される。
この方法によれば、ネットワークを介して動画と音声を受信する時、1番目のストリームのデータ量を小さくする程、待ち時間をできるだけ少なくして表示することができ、しかもその後に再生表示時に再生表示中断等の不具合無しに円滑に再生表示することができる効果を有する。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ送信して再生表示する複数の圧縮された動画と音声の多重化されたストリームを作成する方法において、n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)を、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)に1番目のストリームの伸張に要する時間c(1)を加えてn番目のストリームの伸張に要する時間c(n)を引いて使用するネットワークの実効伝送速度Wを乗じた値[T(n−1)+c(1)−c(n)]Wに2番目から(n−1)番目までのストリームの総バイト数B(n−1)を引き(但し、n=2の時はB(1)をゼロ値とする)さらに別途に追加されるヘッダ等のバイト総数Hを引いてこれをn番目のストリームの表示時間Dt(n)で割った値{[T(n−1)+c(1)−c(n)]W−B(n−1)−H}/Dt(n)以下にすることを特徴とする方法が提供される。
この方法により作成されたストリームは、ネットワークを介して配信する際に待ち時間を最小にして再生表示でき、しかも途中で再生表示中断を生ずることなくクライアント上で円滑に視聴できるという効果を有する。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ送信して再生表示する複数の圧縮された動画と音声の多重化されたストリームを、あるストリームを相対的に高画質又は高フレームレートで表示するように作成する方法において、2番目のストリームを相対的に高画質又は高フレームレートにする場合は、1番目のストリームの再生表示時間Dt(1)と1番目のストリームの伸張に要する時間c(1)との和[Dt(1)+c(1)]が長くなるように、1番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも低めに設定して、2番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも高くし、n番目(nは3以上の任意の自然数)のストリームを相対的に高画質又は高フレームレートにする場合は、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)と1番目のストリームの伸張に要する時間c(1)との和[T(n−1)+c(1)]からサーバー・クライアント間で2番目のストリームの送信開始から(n−1)番目のストリームの受信終了までの送受信に要する時間T’(n−1)を引いた値[T(n−1)+c(1)−T’(n−1)]が大きくなるようにして、n番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも高くすることを特徴とする方法が提供される。
この方法によれば、複数のストリーム中の一部を相対的に高画質及び/又は高フレームレートにしてネットワークを介して送信することができる効果を有する。
また本発明によれば、ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声の多重化されたストリームを送信して表示する方法において、n番目(nは2以上の任意の自然数)のストリームについてサーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)からクライアントからサーバーへの信号の送信に要する時間pを引いた値[Dt(n−1)−p]よりも短いことを特徴とする方法が提供される。
この方法によれば、ネットワークを介してサーバーからのストリームの送出とクライアント上のストリーム再生表示との同期を簡単な方法で取ることができ、クライアントで受信ストリームが溜まることを回避することができる。さらにユーザの選択に応じた画像又は音声をインタラクテイブ(対話式)に配信できる効果がある。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ送信する複数の圧縮された動画と音声の多重化されたストリームを作成する方法において、n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)を、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)からクライアントからサーバーへの信号の送信に要する時間pを引き、さらにn番目のストリームの伸張に要する時間c(n)を引いて、使用するネットワークの実効伝送速度Wを乗じた値[Dt(n−1)−p−c(n)]Wから、ヘッダ等の追加バイトhを引き、n番目のストリームの再生表示時間Dt(n)で割った値{Dt(n−1)−p−c(n)]W−h}/Dt(n)以下にすることを特徴とする方法が提供される。
この方法によれば、ネットワークを通じてサーバーからのストリームの送出とクライアントでの再生表示との同期を簡単にできて、クライアントで受信ストリームの滞留を生ぜずに円滑に再生表示できる動画と音声のコンテンツを作成できる効果がある。さらに、この方法は容易にインタラクティブなコンテンツを作成することができる。
また本発明によれば、ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声の多重化されたストリームを作成する方法において、n番目(nは2以上の任意の自然数)のストリームを相対的に高画質又は高フレームレートにするため、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)を、(n−1)番目のストリームのサーバ・クライアント間の送受信に要する時間t(n−1)と伸張に要する時間c(n−1)との和[t(n−1)+c(n−1)]より長くし、n番目のストリームのサーバー・クライアント間の送受信に要する時間t(n)がその再生表示時間Dt(n)よりも長くなるようにしたことを特徴とする方法が提供される。
この方法によれば、ネットワークを通じて配信できるインタラクテイブな動画映像のコンテンツの一部を特に相対的に高画質及び/又は高フレームレートで作成できる効果がある。
また本発明によれば、ネットワークを介してサーバーからクライアントへ複数n(nは2以上の自然数)の圧縮された動画と音声の多重化されたストリームを送信して表示する方法において、サーバーからの1番目からn番目のストリームをクライアント間で受信するのに要する時間Tt(n)とn番目のストリームをクライアントにおいて伸張するのに要する時間c(n)との和[Tt(n)+c(n)]から、クライアントにおいて1番目から(n−1)番目のストリームの再生表示時間T(n−1)を引算した差A(n)=[Tt(n)+c(n)−T(n−1)]を求め、全てのnについてこの差A(n)の最大値gを求め、このgと等しいか又はより長い時間をクライアントにおいて1番目のストリームの受信開始後その再生表示を開始するまでのデータ蓄積時間とする方法が提供される。
この方法によれば、ネットワークを介して動画映像を再生表示中断を生ぜずにしかもクライアント側での待ち時間を最小にして表示することができる効果がある。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ送信される複数の圧縮された動画と音声の多重化されたストリームをクライアントで再生表示するプログラム手段を記憶したコンピュータの読取り可能な記憶媒体において、サーバーが順次にクライアントへ向けて送信するストリームを順次に受信し、サーバーとは独立に受信順にメモリ内に格納し、順次伸張し、受信伸張と並行して再生表示するプログラム手段を有することを特徴とする記憶媒体が提供される。
この記憶媒体によれば、簡潔な構成でもってネットワークを介して動画映像と音声をクライアントで受信し、待ち時間を最小にして再生表示することができ、しかも再生表示中断等の不具合無しに円滑に再生表示することができ、さらに繰返し再生表示もできる。
またこの記憶媒体は、クライアントにおいてストリームの前記再生表示の開始又は終了時期に毎回信号をサーバーに送信してサーバーにストリームの送信を開始せしめるプログラム手段をさらに有してもよい。このプログラム手段によれば、サーバーのストリーム送出とクライアントのストリーム再生表示との間に同期関係を持たせることができる。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声の多重化されたストリームを記憶したコンピュータが読取り可能な記憶媒体において、n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)が、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)に1番目のストリームの伸張に要する時間c(1)を加えてn番目のストリームの伸張に要する時間c(n)を引いて使用するネットワークの実効伝送速度Wを乗じた値[T(n−1)+c(1)−c(n)]Wから、2番目から(n−1)番目までのストリームの総バイト数B(n−1)を引き(但し、n=2の時はB(1)をゼロ値とする)さらに別途に追加されるヘッダ等のバイト総数Hを引いてこれをn番目のストリームの再生表示時間Dt(n)で割った値{[T(n−1)+c(1)−c(n)]W−B(n−1)−H}/Dt(n)以下であることを特徴とする記憶媒体が提供される。
この記憶媒体によれば、この媒体に記憶された動画と音声が多重化されたストリームは、ネットワークを介して待ち時間を最小にし且つ再生表示中断を生ずることなくクライアントで再生表示できるという効果を有する。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声の多重化されたストリームを送信して表示するシステムにおいて、n番目(nは2以上の任意の自然数)のストリームについてサーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて(n−1)番目のストリームの表示時間Dt(n−1)からクライアントからサーバーへの信号の送信に要する時間pを引いた値[Dt(n−1)−p]よりも短いことを特徴とするシステムが提供される。
このシステムによれば、簡単な手段でサーバーからのストリームの送出とクライアントでのストリームの再生表示との同期をとることができ、クライアントで受信ストリームの滞留なく円滑な再生表示が可能である。さらに、このシステムによれば、インタラクティブな動画映像と音声をネットワークを介して円滑に表示することができるという効果を有する。
また、本発明によれば、ネットワークを介してサーバーからクライアントへ複数n(nは2以上の自然数)の圧縮された動画と音声の多重化されたストリームを送信して表示するシステムにおいて、サーバーからの1番目からn番目のストリームをクライアント間で受信するに要する時間Tt(n)とn番目のストリームをクライアントにおいて伸張に要する時間c(n)との和[Tt(n)+c(n)]から、クライアントにおいて1番目から(n−1)番目のストリームの表示時間T(n−1)を引算した差A(n)=[Tt(n)+c(n)−T(n−1)]を求め、全てのnについてこの差A(n)の最大値gを求め、このgと等しいか又はより長い時間をクライアントにおいて1番目のストリームの受信開始後その表示を開始するまでのデータ蓄積時間とするシステムが提供される。
このシステムによれば、ネットワークを介して動画映像と音声を最小の待ち時間でもって円滑に表示することができるという効果を有する。
以下、本発明を添付図面を参照して詳細に説明する。
発明を実施するための最良の形態
図1を参照して、本発明の第1実施の形態を説明する。第1実施の形態では、ソースの動画映像と音声の多重化データを所定の時間間隔で分割し、各々を所定のデータレートで圧縮したストリームを使用する。この圧縮されたストリームをサーバー1の記憶装置2に記憶しておき、クライアント3からの要求がネットワーク4を介してあれば、順次にネットワーク4を介して送信する。ネットワーク4はインターネットでも、有線の公衆電話回線でも、携帯電話器用の無線公衆ネットワークでもよい。このネットワーク4に接続するクライアント3も例えば、デスクトップのパーソナルコンピュータでも、ノート型パーソナルコンピュータでも、またコンピュータ機能を有する携帯電話器又は携帯情報端末器でもよい。
複数の圧縮された動画と音声が多重化されたストリームs(1)、s(2)、…、s(n)を作成するには、まずビデオテープ又はビデオディスク等に記録されたソースの音付動画映像をフレーム内符号化による圧縮方式でコンピュータに取込む。この圧縮された動画映像と音声を複数に分割し、各々を個別に映像はソレンセンビデオ等の圧縮方式で、音声はIMA等の圧縮方式で各々を後述の適切なデータサイズに圧縮し、例えばQuickTimeの形式で多重化してストリームs(1)、s(2)、…、s(n)とする。これらストリームをサーバー1の記憶装置2に格納する。圧縮方式は問わないが、フレーム内予測符号化とフレーム間予測符号化を用いた圧縮効率の高いバリアブルビットレートで圧縮されたストリームでも可能で、この方式で圧縮されたストリームを前提として以下の説明を行なう。
なお、明細書の中の説明では圧縮した動画映像と音の多重化された単位をストリームと表現している。このストリームの作成は、上記の様にソースの動画映像音声を分割した後に個々に圧縮しても良いし、ソースの動画映像と音声を時間で分割せずに一括圧縮して、圧縮単位毎に異なるデータレートを設定できれば以下に詳述する本発明の上記したストリームを作成することができる。ストリームは送信する際の単位でもあり、伸張する際の単位でもある。従って、以下の説明では、ストリームを伸張単位とも呼ぶことがある。後で説明するように、この複数のストリーム(伸張単位)はサーバ・クライアント間をフアイル転送により順次に送信される。
この第1実施の形態においては、クライアント3ではサーバー1からの1番目(開始)ストリームを受信後に伸張して直ちに再生表示を開始する。サーバー1は1番目ストリームの送信後、直ちに2番目ストリームの送信を開始する。クライアント3では1番目ストリームの再生表示中同時に2番目ストリームの受信と伸張を行い、1番目ストリームの表示終了後に直ちに2番目ストリームを中断が生ずることなく連続して再生表示する。そして3番目以降のストリームについても、同様の操作が繰り返されて、クライアント3上では動画映像とその音声が再生表示の中断やコマ落ちすることなく円滑に再生表示されるようになる。
このためには、以下の図2に説明する操作と処理によりストリームを圧縮し、送信し、そして表示する。
図2においては、n番目(nは自然数)のストリームs(n)の送受信時間をt(n)、n番目のストリームのクライアントでの伸張等の表示準備に要する時間をc(n)、再生表示時間をDt(n)、ストリームバイト数をb(n)、ストリームの設定平均データレートをR(n)、ヘッダ等の追加バイト数をH、使用ネットワーク4の実効伝送速度をWとする。
サーバー1はクライアント3から要求後に、第1番目ストリームs(1)を送信する。クライアント3は1番目ストリームs(1)を送受信時間t(1)内で受信してクライアント3内の図示しないメモリ内に記憶し、1番目ストリームs(1)の受信をt(1)時間後に完了したら、これを伸張時間c(1)で伸張して直ちに再生表示を開始する。サーバ1は1番目ストリームs(1)の送出の完了後、直ちに2番目ストリームs(2)の送出を開始する。クライアントでは2番目ストリームs(2)の受信を1番目ストリームs(1)の伸張時間中c(1)と再生表示時間中Dt(1)に並行して行なう。クライアント3は1番目ストリームs(1)の再生表示が完了したら受信伸張済みの2番目ストリームs(2)の再生表示を直ちに開始する。以降、このようにストリームの再生表示が終了したら引き続き次のストリームの再生表示を中断無く開始すると言った処理を繰り返す。
別の伸張と再生表示時の処理方法としては、クライアンに受信された順番によりストリーム毎に伸張してデータを表示バッフアに追加して行き、表示は1本のストリームを表示していく場合と同様に所定のタイミングで、先頭のフレームデータから順に表示していく。
クライアントでストリーム受信後に直ちに伸張と再生表示し、その後中断無く再生表示を続けるためには、各ストリームの表示が完了した時点で、次に再生表示されるべきストリームの受信と伸張が必ず完了している必要がある。
このためには、図2から理解されるようにnが3以上の自然数の場合、ストリームs(n)の送受信時間t(n)と伸張時間c(n)を加えた時間[t(n)+c(n)]は、ストリームs(1)からストリームs(n−1)までの総再生表
Figure 2002023908
た直[T(n−1)+c(1)]から、ストリームs(2)からストリームs(n
Figure 2002023908
c(1)−T’(n−1)]よりも短くなければならない。すなわち、[t(n)+c(n)]<[T(n−1)+c(1)−T’(n−1)]の関係を有するようして、各ストリームs(n)を送信する。
n=2、すなわち2番目のストリームs(2)の場合については、2番目のストリームのサーバ・クライアント間の送受信に要する時間t(2)とクライアントにおいて伸張に要する時間c(2)との和[t(2)+c(2)]が、クライアントにおいて1番目の再生表示時間Dt(1)と1番目のストリームの伸張に要する時間c(1)との和[Dt(1)+c(1)]よりも短くなければならない。すなわち、[t(2)+c(2)]<[Dt(1)+c(1)]の関係を有するようにして送信する。
上述した関係を満たすためには、nが2以上の自然数の場合、ソースのn番目の分割映像音声を圧縮してストリームs(n)を製作する時の設定平均データレートR(n)を、ストリームs(1)からストリームs(n−1)までの総再生
Figure 2002023908
え、ストリームs(n)の伸張時間c(n)を引算した時間に、使用するネットワークの実効伝送速度Wを乗じた値[T(n−1)+c(1)−c(n)]Wから、ストリームs(2)からストリームs(n−1)の総バイト数B(n−1)=
Figure 2002023908
されるヘッダ等のバイト数Hを引算して得られた値を、ストリームs(n)の表示時間Dt(n)で割った値{[T(n−1)−c(1)−c(n)]W−B(n−1)−H}/Dt(n)、以下に設定する。
すなわち、上述に従ってストリームs(n)作成の際に必要となる圧縮時に設定する平均データレートR(n)の算出式は式1に示されるものである。
Figure 2002023908
ある特定のストリームs(n)(nは3以上の任意の自然数)の画質やフレームレート等を他のストリームよりも相対的に高くしたい場合には、この特定のストリームs(n)の平均データレートR(n)を、使用するネットワークの実行伝送速度Wより高くする必要がある。
このためには、ストリームs(1)からストリームs(n−1)までの総再生
Figure 2002023908
えた時間からストリームs(2)からストリームs(n−1)までの総送受信時
Figure 2002023908
がより長くなるように、ストリームS(2)からストリームs(n−1)を作成する際にそれらの設定データレートを実効伝送速度Wより低めにして圧縮を行なう。
これにより、ストリームs(n)はその再生表示時間Dt(n)より、データの送受信時間t(n)を長く取ることができるので、ストリームs(n)作成時の設定平均データレートR(n)を実効伝送速度Wより高く設定することが可能となり、ストリームs(n)の画質やフレームレート等を他のストリームより高くすることができる。
もし2番目ストリームs(2)の画質やフレームレートを相対的に高くしたい時には、1番目ストリームs(1)の再生表示時間Dt(1)と1番目ストリームs(1)の伸張時間c(1)との和[Dt(1)+c(1)]が長くなるように、1番目ストリームs(1)の圧縮後の平均データレートR(1)をネットワークの実効伝送速度Wよりも低めに設定して、2番目ストリームs(2)の圧縮後の平均データレートR(2)をネットワークの実効伝送速度Wよりも高くして画質やフレームレートを高くする。
上述した方法でもって動画映像と音声の圧縮された複数のストリームs(1)、s(2)、…、s(n)をサーバー1からクライアント3へ送信すると、図2の最下段に示されるように、クライアント3において中断することなくストリームを連続して再生表示することができる。すなわち、複数のストリームs(1)、s(2)、…、s(n)は連続再生可能に形成されている。
なお、一般的に圧縮後の実際のストリームデータレートは圧縮時に設定するデータレートとは異なることがあるので、この場合は圧縮後のストリームデータレートがほぼ本来算出された設定データレートになるまで、設定データレートを適宜増減させて圧縮を繰り返して行なう。
また、実効伝送速度Wは、ネットワーク、ハードウエア、ソフトウエア環境で変化するので、設定する実効伝送速度は実際の環境でテストした上で決める。
次に図3を参照して、本発明の第2実施の形態を説明する。この第2実施の形態では、サーバーからストリームの送出とクライアントでのストリームの再生表示との間に同期関係を有し、サーバがクライアントから信号を受信した後にストリームの送信を開始できる。
前述の第1実施の形態では、サーバー1からの各ストリームの送信は連続して行なわれ、クライアント3に蓄積される未再生表示のストリームデータの量は不定で、クライアント3でのストリーム表示とサーバーからのストリーム送信開始は同期していない。このため、クライアント側で受信ストリームが過剰に蓄積される場合もあり得るが、この第2の実施の形態ではこれを回避できる。
さらに、いわゆる対話(インタラクテイブ)式に動画映像/音声を送信する方法が可能である。このインタラクテイブ方式で動画映像を送信する技術が特願平10−172701号やPCT/JP/99/07116の特許出願に開示されている。ストリーム再生表示中にクライアント3からのユーザ入力を受けて、サーバー1が次に送信するストリームを選択して送信する場合には、各ストリームの送信と再生表示を同期させながら行う必要がある。
第2の実施の形態では、クライアント3でストリームの再生表示終了時期又はストリームが再生表示開始時期に、サーバー1に数バイト程度の信号を送信し、サーバー1ではこの信号を受信したら次のストリームの送信を開始するようにする。
図3に示される本発明の第2実施の形態では、第1実施の形態と同様にクライアント3において1番目(開始)ストリームの受信後に直ちに再生表示開始しそれ以降のストリームも中断することなく再生表示されるが、それ以降のストリームはクライアント3からの信号に応答してサーバー1から送信する構成である。すなわち、サーバー1からのストリームの送出とクライアント3でのストリームの再生表示との間に同期を持たせることができる。
このように、クライアント3でのストリーム再生表示とサーバー1からのストリーム送信開始を同期させる第2実施の形態においては、ストリームs(n)の送受信時間をt(n)、伸張時間をc(n)、再生表示時間をDt(n)、ストリームバイト数をb(n)、使用ネットワーク実効伝送速度をW、ヘッダ等のバイト数をh、クライアントからサーバーへの信号伝送時間をpとする。
サーバー1から送信したストリームs(n−1)の再生表示開始時期と、次に送信するストリームs(n)の送出開始時期を同期させるために、クライアント3では受信伸張したストリームs(n−1)の再生表示を開始する時、サーバー1に対して数バイトの信号を送信し、サーバー1はこの信号を受信したら直ちに次に送信すべきストリームs(n)を送信するようにする。クライアント3においてストリームの受信後に直ちに伸張して再生表示して、その後中断無く表示を続けるためにはストリームの再生表示が完了した時点で次に再生表示されるべきストリームs(n)の受信と伸張が必ず終了している必要がある。
このためには、ストリームs(n)のサーバー・クライアント間の送受信時間t(n)と伸張時間c(n)を加えた時間は、ストリームs(n−1)の再生表示時間Dt(n−1)からクライアント3からサーバー1への信号送信時間pを引いた時間よりも短くなければならない。すなわち、[t(n)+c(n)]<[Dt(n−1)−p]の関係を満たす必要がある。
そして、ストリームs(n)作成時に必要となる圧縮時に設定する平均データレートR(n)の算出式を以下に説明する。上記より圧縮後のストリームs(n)のバイト数b(n)は、直前のストリームs(n−1)の再生表示時間Dt(n−1)から、クライアントからサーバーへの信号送信時間pとストリームs(n)の予想伸張時間c(n)を引いた時間に使用するネットワークの実効伝送速度Wを乗じた値以下でなければならない。すなわち、b(n)<[Dt(n−1)−p−c(n)]Wである。ストリームs(n)のバイト数b(n)の中には別に付加されるヘッダ等のバイト数hが含まれるので、ソースのn番目の分割映像音声信号を圧縮してストリームs(n)を製作する時の設定平均データレートR(n)はb(n)からhを引算して、これをストリームs(n)の再生表示時間Dt(n)で割った値以下に設定する。すなわち、R(n)<{[Dt(n−1)−p−c(n)]W−h}/Dt(n)である。
ある特定のストリームs(n)の画質やフレームレート等を他のストリームよりも相対的に高くしたい場合は、ストリームs(n)の平均データレートR(n)をネットワークの実効伝送速度Wよりも高くする必要がある。このためには、直前のストリームs(n−1)作成時の設定平均データレートR(n−1)を実効伝送速度Wよりも小さく設定し、ストリームs(n−1)の再生表示時間Dt(n−1)がその送受信時間t(n−1)とその伸張時間c(n−1)を加えた時間より長くなるようにしておく。すなわち、Dt(n−1)>[t(n−1)+c(n−1)]。これにより次のストリームs(n)はその再生表示時間Dt(n)よりデータ送受信時間t(n)を長く取ることができるので、ストリームs(n)作成時の設定平均データレートR(n)を実効伝送速度Wより高く設定することが可能となり、ストリームs(n)の画質やフレームレート等を相対的に高くすることができる。
このようにして形成された複数のストリームs(1)、s(2)、…、s(n)は、クライアント3で再生表示される際、図3の最下段に示されるように再生表示が途中で中断することなく連続的に円滑に表示できる。このように複数のストリームは連続して再生可能になっている。なお、一般的に圧縮後の実際のストリームデータレートは圧縮時に設定するデータレートとは異なることがあるので、この場合は圧縮後のストリームデータレートがほぼ本来算出された設定データレートになるまで、設定データレートを適宜増減させて圧縮を繰り返して行なう。
また、実効伝送速度は、ネットワーク、ハードウエア、ソフトウエア環境で変化するので、設定する実効伝送速度は実際の環境でテストした上で決める。
図4を参照して、本発明の第3実施の形態を説明する。この第3実施の形態は、ソースの映像音声を一括して圧縮したストリームを伸張単位毎で伸張再生表示しても再生表示の中断を発生させない、ストリーム受信開始から再生表示開始までのストリームデータバッフアリング時間の設定方法を提供する。
まず、ソースの映像音声を一括して、使用するネットワークの伝送速度に合わせて圧縮平均データレートを設定して圧縮を行なう。ソースの映像音声は、一括圧縮後に複数のデータに分割する。分割されたデータは単数又は複数の伸張単位(1つのフレーム内予測符号化フレームと複数のフレーム間予測符号化フレームで構成される)で構成されるように先頭フレームを選んで分割する。分割後のデータは各々ヘッダ等を付け識別してからストリームとしてサーバーからクライアントへ次々に送信する。また、このようにストリームを実際に分割しなくともストリームを構成する各最小伸張単位の送信時間と、伸張時間と、再生表示時間が分かればそのまま送信してもよい。
クライアントで1回毎に伸張するデータの送信時間と、伸張等の時間と、再生表示時間の各々の情報を基に、再生表示開始後に再生表示の中断を発生させないためのストリームの受信開始からのデータのバッフアリング時間を以下のようにして設定する。
各伸張単位の再生表示開始は、その受信と伸張完了の後でなければできない。従って、ストリームの受信開始から各伸張単位の受信完了までの送受信時間に対象伸張単位の伸張等の時間を加えた時間と、ストリームの再生表示開始から対象となる各伸張単位再生表示開始までの総再生表示時間とを1つずつ比較し、その差が1番大きい時間をストリーム受信開始から再生表示開始までのストリームデータバッフアリング時間として設定する。このストリームデータバッフアリング時間を設定すると、再生表示開始後に再生表示すべきデータの受信、伸張が間に合わず再生表示の中断を起こすことが防止できる。
なお、このバッフアリング時間はストリームのヘッダに記述しておき、クライアントではストリームの受信開始直後にこれを読取ってカウンタにセットし、再生表示開始までの時間をカウントし、設定した時間までカウントしたら再生表示を開始する。このクライアントにおける受信開始時間から再生表示開始時間までの時間がストリームデータバッフアリング時間となる。
図4を参照して、上述したストリームデータバッフアリング時間の設定方法を再度説明する。ストリームの受信開始からn番目の伸張単位s(n)の受信が完
Figure 2002023908
(n)を加えた時間[Tt(n)+c(n)]から、ストリームの再生表示開始か
Figure 2002023908
引算する。すなわち、A(n)=[Tt(n)+c(n)−T(n−1)]を求める。これを全てのnについて繰り返し、その差A(n)の最大値gを求める。このg以上の時間をこのストリームの受信開始から再生表示開始までの時間として設定する。
例えば、図4の場合について見ると、伸張単位s(3)が相対的に符号発生量が多く実効伝送速度Wよりも高い平均データレートを有する。このため、伸張単位s(3)の上記式の差A(3)が最大値gとなる。ストリーム受信開始時から再生表示開始時までの時間差GをG≧g=A(3)とし、この時間差Gをストリームデータバッフアリング時間とする。これにより符号発生量の多い伸張単位s(3)も再生表示の中断を発生することなく連続して再生表示できる。すなわち、このようにして形成された複数のストリームs(1)、s(2)、…、s(n)は、クライアント3で再生表示される際、図4の最下段に示されるように再生表示が途中で中断することなく連続的に円滑に表示できる。このように複数のストリームは連続して再生可能である。
次に、図5と図6を参照して本発明のサーバーとクライアント間で動画と音声の多重化され圧縮されたストリームを送信し、クライアントで受信し、伸張し、再生表示するのに使用されるプログラムの構造を説明する。本発明のプログラムでは送信と、受信と、伸張と、再生表示の各段階はそれぞれ独立にして行なわれる。ストリームの送信はフアイル転送と同じに行なう。従って、従来のサーバー・クライアント間のネゴシエーションの必要はなく、下位層のプロトコルだけで送受信が行なわれる。このためサーバー1とクライアント3がネットワーク4を介して接続した後は、ストリーム送信命令だけで直ちに送信ができる。この通信プロトコルは任意のものでよく、バースト伝送で通常のネットワークを介してクライアント3へ送信される。クライアント3は受信、伸張、再生表示を独立に行う。
これは図2、図3、及び図4に関連して上述したように、ストリームの製作段階で、バリアブルビットレートで圧縮されたストリームデータを、フアイル転送と同様に連続送信しても再生表示が正常に行なわれるようにストリームの再生表示時間と送信時間と再生表示開始時期を予め考慮して作成しているからである。
これは従来のストリーミング製品では、サーバとクライアントがフレーム毎に同期を取り、一体的に送信、受信、伸張、再生表示の操作を行い、このためにサーバーとクライアント間で1ストリーム毎に、ネゴシエーションが必要とされ、通信プロトコルもこのような形式に限定される点で本発明とは異なる。
図6は、本発明の送受信、伸張、再生表示を行うプログラム6のクライアント3内での位置を示す。クライアント3を構成するコンピュータは、下から順にハードウエア、ネットワークインターフエイス、インターネット、トランスポート、ソケット、アプリケーションのBSD階層を有する。従来のストリーミング製品60は最上層のアプリケーション層に対応する位置に存在して、RSTPやRTP/RTCPというプロトコルを使用しており、その下にはTCP/UDPやIPなどのプロトコル層があり、多階層の構造を有する。
本発明のプログラム6は図6に示すようにTCP/UDPを使用することも、直接IP層に接続することも、さらにその下の階層(PPPやEthernetなど)にも直接接続することも可能である。その下に、RS232C/X.21がある。本発明のプログラム6はこれによりネットワークやOS、あるいは環境、ハードウエアに合わせて効率的かつ小規模な構造にすることができる。本発明では、多層化によるモジュール数の増加の弊害(非効率的な処理)の他に1つの伝送帯域を複数のプロトコルで使用するという伝送帯域の分割による非効率的な伝送の弊害を排除して、単純プロトコル及び少階層化により効率向上を図っている。本発明のプログラムは画像音声再生表示処理はアプリケーションの部分にあり、受信処理の部分はより下にあり、OS中のハードウェア割込みを使用できる。クライアント3が携帯電話器や携帯情報端末器の場合は、ストリームの受信処理をOS中のハードウェア割込み処理として組込み、機械語に近い言語、例えばアセンブリ言語で作成すれば効率が良くなる。これは本発明のプログラム6の受信処理がプロトコル階層の下位部分にアクセス可能なことからくる移植性の良さによるものである。
本発明のプログラム6の送受信、伸張、再生表示の各操作の処理について、図2、図3、又は図4に関連して上記で説明したようにソースの動画映像と音声を複数に分割し、各々を圧縮して作成した連続再生可能なストリームを対象にして説明する。
送受信
図5中のサーバー1から、単独で伸張可能な複数のフレームデータで構成されるストリームをその前端及び/又は後端に数バイトの識別子を付けてクライアント3へネットワークを介して送信する。クライアント3は受信したストリームをその受信メモリ(70、図7B)に記憶する。サーバー1は、1ストリームの送信が完了したら直ちに次のストリームの送信を開始する。このようにサーバー1はストリームの送信を連続的に行ない。一方、クライアント3ではストリームの受信を繰り返す。しかし、ストリームが連続的にサーバー1から送信されても、クライアント3では受信時に上記識別子により受信されたストリーム間のつなぎ目を識別できるから、ストリームを簡単に受信メモリ(70、図7B)に順次に格納できる。すなわち、ストリームはその前端及び/又は後端の識別子により前後のストリームと連結する部分が明示されているので、容易に受信メモリ(70、図7B)に順次に格納できる。
なお、図3に関連して上述したようにクライアント3での表示とサーバー1からの送信をストリーム単位で同期させる場合は、クライアント3でストリームの再生表示が開始又は終了されたら、数バイトの信号をクライアント3からサーバー1に送信し、サーバー1ではこの信号を受信したら次のストリームの送信を開始するようにする。このようにすれば、サーバー1からのストリーム送出とクライアント3のストリームの再生表示の同期が簡単な方法でとれる。このため、クライアント3での過剰な受信ストリームの滞留を防ぐことができる。さらに、インタラクテイブ(対話)式のコンテンツの再生表示の場合、ユーザ選択入力信号の同期が簡単にサーバー側でとることができる。
本発明では、送受信処理と伸張処理と再生表示処理とは各々独立して行なわれる。このため、ストリーム形式はクライアント3の伸張表示プログラムで伸張表示できる形式ならばどんな圧縮方式でも良く、またフアイルとしてバースト的に送信できるので送信効率が上がる。クライアント3では常時受信待ちの状態で、1ストリームづつ連続して受信する。これを繰り返して行なう。
伸張
次に図7Aのフローチャートと図7Bを参照して伸張操作を説明する。受信が完了した受信メモリ70(図7B)内のストリームに対して(ステップ73)、1ストリーム単位で伸張操作を行ない(ステップ74)、伸張してプレロールした上、メモリ79(図7B)の空いている領域に格納する(ステップ75)。伸張によりデータ量は数十倍に増えるので格納メモリ79(図7B)の領域を大きくしたくない時は、未表示の伸張済ストリームが既にメモリ79内にある場合はストリームの受信完了後に直ちに伸張せず、直前のストリームの再生表示が開始された後に、次に再生表示するストリームの伸張、プレロールを行なうようにする。
再生表示
再生表示は、図7Bのメモリ領域79に格納されている最初に受信したストリームs(1)分の伸張データを用いて再生表示する(ステップ72)。これが終了したら(ステップ71)、直ちに2番目に受信したストリームs(2)分の伸張済みデータに切り換えて再生表示開始する(ステップ78)。なおこのステップ78(次の伸張済みストリームへ切り換えて表示開始命令を出す)の前には再生表示準備確認ステップ76とサーバーへの信号送出ステップ77(但し、図3に示すストリームの場合に限る)がある。このように、次々にストリーム単位の伸張済みデータを受信順に切り換えながら再生表示していく。受信伸張単位のストリーム内の各フレームの再生表示開始時期は、送受信のタイミングとは無関係にストリームのヘッダ情報等で予め設定されるフレームレートで決定される。
なお、ストリームの最後のフレームの再生表示完了後、次のストリームの最初のフレームの再生表示が行なわれるが、前のストリームの最後のフレームの表示完了後、次のストリームの最初のフレームの表示命令が出るので厳密にはこの間の時間が他のフレーム表示間隔より余分にかかることになり、前のストリームの最後のフレームの表示時間が長くなるが、この間の時間は人間の間隔では認識できないほどに短いので、一般的な視聴の範囲内では問題は無い。
また、別の受信伸張方法と表示方法としては、図8Aに示す受信伸張方法のフローチャートと図8Bに示す表示方法のフローチャートを使用してもよい。この受信伸張と表示は各々並行して処理される。図8Aにおいてはストリームの受信が完了したら伸張し、伸張済みのストリームのデータを表示バッファへ追加する。次々に表示バッファの最後尾に順に追加して行く。図8Bに示すように、表示は表示バッファの先頭のデータから順に表示していく。この処理は一本のストリームの伸張済みデータを表示して行くのと同じ形式である。なお、図8Bのステップ81の表示エラーは表示している際に次のストリームの受信伸張が間に合わず、表示バッファ内の表示データがなくなった場合を意味する。この場合は図8Aの受信伸張の操作を待つ。なお、1つの表示バッフアを使用する代わりに、表示バッファを2つ用いて、データの追加と、表示及び表示済み領域の解放と、を交互に切り換えながら行なえば、表示バッファメモリ領域を拡大せずに表示を続けることができる。
ところで、伸張済みのフレームデータの表示は、フレームレート情報を元に一定の時間間隔で行なわれるので、各々のフレーム毎に表示の相対時刻は決まってている。複数のストリームの伸張済みデータを切り換えながら表示する場合、各フレームが表示される相対時刻を複数ストリームを対象として、最初のストリームの伸張済みのデータの最初のフレームデータから最後のストリームの伸張済みデータの最終フレームデータまでを対象に通しの相対時刻で表示する様にすることもできる。
例えば、図9に示すように、複数の表示バッファA(MOD(m/2))を備えて、1ストリームの伸張済みデータ単位で2つのバッファに交互に読み込み、映像と音声を同期して処理する場合、最初のストリームの最終フレームの表示時刻になったら(ステップ91)、当該ストリームの伸張済みデータの読み込まれている表示バッファからの出力は完了するのでこれを検知し(ステップ92)、次の表示時刻になったらもう一方の表示バッファ既に読み込まれている次のストリームの伸張済みデータの最初のフレームの表示を行う(ステップ93からステップ97)。なお、ステップ94はストリーム毎でフレームレート変更等、前の設定が変わる場合に、そのストリームデータを記憶した表示バッファA(MOD(m/2))の出力開始準備が行なわれる。ステップ96は、フレームレート情報からフレーム間の表示時間間隔により時間割り込みを行う。
その後も所定の表示時刻になったら順に2番目以降の各フレームの表示を行ない(ステップ98、ステップ99)、最終フレームの表示時刻になったら同様にもう一方の表示バッファに既に読み込まれている次のストリームの伸張済みデータの最初のフレームの表示を行う。この様に2つの表示バッファを交互に使用し、ストリームの数か増えても、複数のストリーム全体を1本のストリームとして表示する様に、各フレームの表示を正確な時間間隔で行うことができる。
なお、音声と映像とは圧縮され多重化して格納されて送信されるので、音声についても前述の映像の伸張表示と同期して同様に処理される。
なお、クライアント3のメモリ70(図7B)内に記憶されるストリームは、ハードディスク等に保存して、通信終了後も連結して何度でも再生表示することも可能である。従って、本発明の方法では、受信しながらの視聴中にネットワークの伝送効率の変化等の理由により途中で視聴が中断しても、クライアント上で後から単独に再生可能である。すなわち、本発明によればストリームの受信中に即座に視聴ができると共に、一度ストリームを全部受信すればクライアントで何度も視聴を繰り返すことができる。
次に、クライアント3でのユーザの選択入力に応じて、サーバー1でストリームを選択して送信する場合の処理を説明する。
伸張単位であるストリームを次々に送受信して、ストリームを順次に表示する場合は送受信と表示とは同期しなくなる。これは送信効率を上げるための効果が大きいけれども、クライアント上でユーザが表示画面を視聴して画面内容に応じてキー入力等で選択入力すると、選択に応じて次の画面が表示されるような上記した特願平10−172701号やPCT/JP/99/07116の特許出願に開示されているような対話式オーディオ・ビジュアル作品を配信するシステム等の場合には、以下のようにする。
すなわち、図3に関連して上述した方式が使用され、表示と同期してサーバー1での処理が行なわれるように、クライアント3でのストリームの表示開始の都度、サーバー1に数バイト程度の信号をクライアント3から送信し(図7中のステップ77)、サーバー1ではこの信号をクライアント3から受信後、所定の処理を開始する。
この所定の処理は例えば図10に示される。これは受信伸張ストリーム毎に切り替えて表示する場合(図7)である。クライアント3で各ストリームs(1)、s(2)、s(3)の表示が開始される都度、クライアントから信号77(図7中のステップ77)がサーバーに送られる。すると、サーバー1ではユーザからの入力情報の受信バッフア(図示しない)をリセットして新たに受け付け可能状態にセットし(ステップ11)、次ストリームs(2)の送出を開始し(ステップ12)、ユーザ入力受け付け可能時間内13内のユーザからの選択入力信号14の情報に基づき、次の送信ストリームs(2)、s(3)を選択決定してクライアント3への送信を開始する(ステップ15)、などの処理がある。次に表示されるストリームの選択ができるので、ユーザはリアルタイムに対話的に次ストリームを選択して自分のストーリー展開を行なえる他に、早送り表示、スロー再生表示、巻き戻し表示、表示停止操作等のトリックプレイも可能である。
なお、図8Aと図8Bに示すように表示方式が受信伸張データを表示バッファに次々に追加して表示していく方法の場合は、図11に示すように送受信伸張単位のストリームデータの2番目以降(a2又はa3、b2又はb3)の表示開始時期は直接に知ることはできない。このため、ストリームaaの最初のストリームa1の表示開始時にサーバーに信号100を送信し、サーバー1ではこの信号100を受信したらユーザ入力値受信バッファのリセットと時間のカウントを開始し(ステップ111)、受信ストリーム順次追加方式で表示される1単位aa(ストリームa1、a2、a3)の表示時間から、次の単位bbを表示するための最初のストリームb1の選択に要する時間と送受信時間と伸張等の表示前処理を加えた時間以上の適当な時間を減じた時間までカウントしたら、次の表示単位のストリームbbの最初のストリームb1の送信を開始する(ステップ112)。
なお、サーバーでユーザからの入力値の読取りをユーザからの入力のあった時に行ない、送受信中のストリームの送信を中断して直ちに次のストリーム選択して送信し、クライアントではこのストリーム受信完了後に直ちに伸張表示を行うこともできる。このように受信表示されたストリームも、メモリ70(図7)内に一度取込めばクライアント上3で何度も再生可能である。
以上説明したように、本発明のネットワーク動画音声の配信方法によれば、ネットワークを介してサーバーからクライアントへ動画と音声の多重化された複数の連続して再生可能なストリームを送信して再生表示するために、クライアントで簡単なプログラムでもってサーバーからは独立して受信し、伸張し、再生表示できる。また、本発明の方法によれば、ネットワークを介して受信後に即座に視聴開始できて、ユーザを待たせることがない。また、一旦ネットワークを介して受信すれば何度も再生できる。しかも、ネットワークの伝送中に、動画と音声の中断を極力防止できる。さらに、インタラクテイブにネットワークを介して動画と音声を配信できる。動画映像中の一部を相対的に高品質(高画像/高音質等)にすることができる。しかも、本発明の方法は、サーバーとクライアントのプログラムサイズを非常に小さくでき、OSにも限定されず、使用プロトコルも自由に選べる高移植性と単独で再生できる形式のストリームであればどのような圧縮ストリームも使用でき、さらに狭帯域のネットワークでも品質の良いリアルタイムの動画音声の視聴ができる汎用性の高いシステムが得られる。
【図面の簡単な説明】
図1は、本発明のネットワーク動画音声の配信システムの概略を示す図。
図2は、本発明の第1実施の形態によるネットワーク動画音声の配信方法を説明するため動画ストリームの送信と表示の関係を示す図。
図3は、本発明の第2実施の形態によるネットワーク動画音声の配信方法を説明するため動画ストリームの送信と表示の関係を示す図。
図4は、本発明の第3実施の形態によるネットワーク動画音声の配信方法を説明するため動画ストリームの送信と表示の関係を示す図。
図5は、本発明のネットワーク動画音声の配信プログラムの動作の概略を示す図。
図6は、本発明のネットワーク動画音声の配信プログラムの構成の概略を示す図。
図7Aは、本発明のネットワーク動画音声の配信プログラムのクライアントでの受信、伸張、表示動作の一例の概略を示すフローチャート。
図7Bは、本発明のクライアントのメモリの概略を示す図。
図8Aは、本発明のネットワーク動画音声の配信プログラムのクライアントでの受信、伸張動作の他の例の概略を示すフローチャート。
図8Bは、本発明のネットワーク動画音声の配信プログラムのクライアントでの表示動作の他の例の概略を示すフローチャート。
図9は、本発明のネットワーク動画音声の配信プログラムのクライアントでの表示動作の他の例の概略を示すフローチャート。
図10は、本発明の対話式ネットワーク動画音声の配信方法の一例のストリーム送信と表示の関係を示す図。
図11は、本発明の対話式ネットワーク動画音声の配信方法の他の例のストリーム送信と表示の関係を示す図。
【0028】
なお、ストリームの最後のフレームの再生表示完了後、次のストリームの最初のフレームの再生表示が行なわれるが、前のストリームの最後のフレームの表示完了後、次のストリームの最初のフレームの表示命令が出るので厳密にはこの間の時間が他のフレーム表示間隔より余分にかかることになり、前のストリームの最後のフレームの表示時間が長くなるが、この間の時間は人間の感覚では認識できないほどに短いので、一般的な視聴の範囲内では問題は無い。
また、別の受信伸張方法と表示方法としては、図8Aに示す受信伸張方法のフローチャートと図8Bに示す表示方法のフローチャートを使用してもよい。この受信伸張と表示は各々並行して処理される。図8Aにおいてはストリームの受信が完了したら伸張し、伸張済みのストリームのデータを表示バッファへ追加する。次々に表示バッファの最後尾に順に追加して行く。図8Bに示すように、表示は表示バッファの先頭のデータから順に表示していく。この処理は一本のストリームの伸張済みデータを表示して行くのと同じ形式である。なお、図8Bのステップ81の表示エラーは表示している際に次のストリームの受信伸張が間に合わず、表示バッファ内の表示データがなくなった場合を意味する。この場合は図8Aの受信伸張の操作を待つ。なお、1つの表示バッファを使用する代わりに、表示バッファを2つ用いて、データの追加と、表示及び表示済み領域の解放と、を交互に切り換えながら行なえば、表示バッファメモリ領域を拡大せずに表示を続けることができる。
ところで、伸張済みのフレームデータの表示は、フレームレート情報を元に一定の時間間隔で行なわれるので、各々のフレーム毎に表示の相対時刻は決まってている。複数のストリームの伸張済みデータを切り換えながら表示する場合、各フレームが表示される相対時刻を複数ストリームを対象として、最初のストリームの伸張済みのデータの最初のフレームデータから最後のストリームの伸張済みデータの最終フレームデータまでを対象に通しの相対時刻で表示する様にするこ
【0029】
ともできる。
例えば、図9に示すように、複数の表示バッファA(MOD(m/2))を備えて、1ストリームの伸張済みデータ単位で2つのバッファに交互に読み込み、映像と音声を同期して処理する場合、最初のストリームの最終フレームの表示時刻になったら(ステップ91)、当該ストリームの伸張済みデータの読み込まれている表示バッファからの出力は完了するのでこれを検知し(ステップ92)、次の表示時刻になったらもう一方の表示バッファに既に読み込まれている次のストリームの伸張済みデータの最初のフレームの表示を行う(ステップ93からステップ97)。なお、ステップ94はストリーム毎でフレームレート変更等、前の設定が変わる場合に、そのストリームデータを記憶した表示バッファA(MOD(m/2))の出力開始準備が行なわれる。ステップ96は、フレームレート情報からフレーム間の表示時間間隔により時間割り込みを行う。
その後も所定の表示時刻になったら順に2番目以降の各フレームの表示を行ない(ステップ98、ステップ99)、最終フレームの表示時刻になったら同様にもう一方の表示バッファに既に読み込まれている次のストリームの伸張済みデータの最初のフレームの表示を行う。この様に2つの表示バッファを交互に使用し、ストリームの数が増えても、複数のストリーム全体を1本のストリームとして表示する様に、各フレームの表示を正確な時間間隔で行うことができる。
なお、音声と映像とは圧縮され多重化して格納されて送信されるので、音声についても前述の映像の伸張表示と同期して同様に処理される。
なお、クライアント3のメモリ70(図7B)内に記憶されるストリームは、ハードディスク等に保存して、通信終了後も連結して何度でも再生表示することも可能である。従って、本発明の方法では、受信しながらの視聴中にネットワークの伝送効率の変化等の理由により途中で視聴が中断しても、クライアント上で後から単独に再生可能である。すなわち、本発明によればストリームの受信中に
【0030】
即座に視聴ができると共に、一度ストリームを全部受信すればクライアントで何度も視聴を繰り返すことができる。
次に、クライアント3でのユーザの選択入力に応じて、サーバー1でストリームを選択して送信する場合の処理を説明する。
伸張単位であるストリームを次々に送受信して、ストリームを順次に表示する場合は送受信と表示とは同期しなくなる。これは送信効率を上げるための効果が大きいけれども、クライアント上でユーザが表示画面を視聴して画面内容に応じてキー入力等で選択入力すると、選択に応じて次の画面が表示されるような上記した特願平10−172701号やPCT/JP/99/07116の特許出願に開示されているような対話式オーディオ・ビジュアル作品を配信するシステム等の場合には、以下のようにする。
すなわち、図3に関連して上述した方式が使用され、表示と同期してサーバー1での処理が行なわれるように、クライアント3でのストリームの表示開始の都度、サーバー1に数バイト程度の信号をクライアント3から送信し(図7中のステップ77)、サーバー1ではこの信号をクライアント3から受信後、所定の処理を開始する。
この所定の処理は例えば図10に示される。これは受信伸張ストリーム毎に切り替えて表示する場合(図7)である。クライアント3で各ストリームs(1)、s(2)、s(3)の表示が開始される都度、クライアントから信号77(図7中のステップ77)がサーバーに送られる。すると、サーバー1ではユーザからの入力情報の受信バッファ(図示しない)をリセットして新たに受け付け可能状態にセットし(ステップ11)、次ストリームs(2)の送出を開始し(ステップ12)、ユーザ入力受け付け可能時間内13内のユーザからの選択入力信号14の情報に基づき、次の送信ストリームs(3)を選択決定してクライアント3への送信を開始する(ステップ15)、などの処理がある。次に表示されるスト

Claims (15)

  1. ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声の多重化されたストリームを送信してクライアントで再生表示する方法において、サーバーはストリームを順次にクライアントへ送信し、クライアントはストリームを順次に受信し、サーバーとは独立に受信順にメモリ内に格納し、順次伸張し、受信伸張と並行して再生表示することを特徴とする方法。
  2. クライアントはストリームの前記再生表示の開始又は終了時期に毎回信号をサーバーに送信し、サーバーはこの信号を受信後にストリームの前記送信をするステップをさらに含むことを特徴とする請求項1に記載の方法。
  3. 前記ストリームの一端には他のストリームとの連結を示す識別子を有し、クライアントは前記メモリ内に順次にストリームを格納する際にこの識別子を使用するステップをさらに含むことを特徴とする請求項1に記載の方法。
  4. ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声の多重化されたストリームを送信して再生表示する方法であって、サーバーは1番目のストリームをクライアントへ送出し、クライアントは1番目のストリームをサーバーから受信後に直ちに伸張して再生表示し、サーバーは1番目のストリームの送出後に直ちに2番目のストリームを送出し、クライアントは1番目のストリームを表示中に2番目のストリームを受信して伸張して1番目のストリーム再生表示終了後に直ちに2番目のストリームを中断なく再生表示し、順次以降のストリームを送信して再生表示する方法において、
    2番目のストリームについて、サーバ・クライアント間の送受信に要する時間t(2)とクライアントにおいて伸張に要する時間c(2)との和[t(2)+c(2)]が、クライアントにおいて1番目の再生表示時間Dt(1)と1番目のストリームの伸張に要する時間c(1)との和[Dt(1)+c(1)]よりも短く、
    n番目(nは3以上の任意の自然数)のストリームについて、サーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)と1番目のストリームの伸張に要する時間c(1)との和[T(n−1)+c(1)]からサーバー・クライアント間で2番目のストリームの送信開始から(n−1)番目のストリームの受信終了までの送受信に要する時間T’(n−1)を引いた値[T(n−1)+c(1)−T’(n−1)]よりも短いことを特徴とする方法。
  5. ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声の多重化されたストリームを作成する方法において、
    n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)を、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)に1番目のストリームの伸張に要する時間c(1)を加えてn番目のストリームの伸張に要する時間c(n)を引いて使用するネットワークの実効伝送速度Wを乗じた値[T(n−1)+c(1)−c(n)]Wに2番目から(n−1)番目までのストリームの総バイト数B(n−1)を引き(但し、n=2の時はB(1)をゼロ値とする)さらに別途に追加されるヘッダ等のバイト総数Hを引いてこれをn番目のストリームの再生表示時間Dt(n)で割った値{[T(n−1)+c(1)−c(n)]W−B(n−1)−H}/Dt(n)以下にすることを特徴とする方法。
  6. ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声の多重化されたストリームを、あるストリームを相対的に高画質又は高フレームレートで再生表示するように作成する方法において、
    2番目のストリームを相対的に高画質又は高フレームレートにする場合は、1番目のストリームの再生表示時間Dt(1)と1番目のストリームの伸張に要する時間c(1)との和[Dt(1)+c(1)]が長くなるように、1番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも低めに設定して、2番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも高くし、
    n番目(nは3以上の任意の自然数)のストリームを相対的に高画質又は高フレームレートにする場合は、クライアントにおいて1番目から(n−1)番目までのストリームの総再生表示時間T(n−1)と1番目のストリームの伸張に要する時間c(1)との和[T(n−1)+c(1)]からサーバー・クライアント間で2番目のストリームの送信開始から(n−1)番目のストリームの受信終了までの送受信に要する時間T’(n−1)を引いた値[T(n−1)+c(1)−T’(n−1)]が大きくなるようにして、n番目のストリームの圧縮後の平均データレートをネットワークの実効伝送速度Wよりも高くすることを特徴とする方法。
  7. ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声が多重化されたストリームをクライアントに送信して再生表示する方法において、n番目(nは2以上の任意の自然数)のストリームについてサーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)からクライアントからサーバーへ信号の送信に要する時間pを引いた値[Dt(n−1)−p]よりも短いことを特徴とする方法。
  8. ネットワークを介してサーバーからクライアントへ送信する複数の圧縮された動画と音声が多重化されたストリームを作成する方法において、n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)を、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)からクライアントからサーバーへ信号を送信するのに要する時間pを引き、さらにn番目のストリームの伸張に要する時間c(n)を引いて、使用するネットワークの実効伝送速度Wを乗じた値[Dt(n−1)−p−c(n)]Wから、ヘッダ等の追加バイトhを引き、n番目のストリームの再生表示時間Dt(n)で割った値{[Dt(n−1)−p−c(n)]W−h}/Dt(n)以下にすることを特徴とする方法。
  9. ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声が多重化されたストリームを作成する方法において、n番目(nは2以上の任意の自然数)のストリームを相対的に高画質又は高フレームレートにするため、クライアントにおいて(n−1)番目のストリームの再生表示時間Dt(n−1)を、(n−1)番目のストリームのサーバ・クライアント間の送受信に要する時間t(n−1)と伸張に要する時間c(n−1)との和[t(n−1)+c(n−1)]より長くし、n番目のストリームのサーバー・クライアント間の送受信に要する時間t(n)がその再生表示時間Dt(n)よりも長くなるようにしたことを特徴とする方法。
  10. ネットワークを介してサーバーからクライアントへ複数n(nは2以上の自然数)の圧縮された動画と音声が多重化されたストリームを送信して再生表示する方法において、サーバーからの1番目からn番目のストリームをクライアント間で受信するのに要する時間Tt(n)とn番目のストリームをクライアントにおいて伸張するのに要する時間c(n)との和[Tt(n)+c(n)]から、クライアントにおいて1番目から(n−1)番目のストリームの再生表示時間T(n−1)を引算した差A(n)=[Tt(n)+c(n)−T(n−1)]を求め、全てのnについてこの差A(n)の最大値gを求め、このgと等しいか又はより長い時間をクライアントにおいて1番目のストリームの受信開始後その再生表示を開始するまでのデータ蓄積時間とする方法。
  11. ネットワークを介してサーバーからクライアントへ送信される複数の圧縮された動画と音声の多重化されたストリームをクライアントで再生表示するプログラム手段を記憶したコンピュータの読取り可能な記憶媒体において、
    サーバーが順次にクライアントへ向けて送信するストリームを順次に受信し、サーバーとは独立に受信順にメモリ内に格納し、順次伸張し、受信伸張と並行して再生表示するプログラム手段を有することを特徴とする記憶媒体。
  12. クライアントにおいてストリームの前記再生表示の開始又は終了時期に毎回信号をサーバーに送信してサーバーにストリームの送信を開始せしめるプログラム手段をさらに有する請求項11に記載の記憶媒体。
  13. ネットワークを介してサーバーからクライアントへ送信して表示する複数の圧縮された動画と音声の多重化されたストリームを記憶したコンピュータが読取り可能な記憶媒体において、
    n番目(nは2以上の任意の自然数)のストリームの圧縮後の平均データレートR(n)が、クライアントにおいて1番目から(n−1)番目までのストリームの総表示時間T(n−1)に1番目のストリームの伸張に要する時間c(1)を加えてn番目のストリームの伸張に要する時間c(n)を引いて使用するネットワークの実効伝送速度Wを乗じた値[T(n−1)+c(1)−c(n)]Wから、2番目から(n−1)番目までのストリームの総バイト数B(n−1)を引き(但し、n=2の時はB(1)をゼロ値とする)さらに別途に追加されるヘッダ等のバイト総数Hを引いてこれをn番目のストリームの表示時間Dt(n)で割った値{[T(n−1)+c(1)−c(n)]W−B(n−1)−H}/Dt(n)以下であることを特徴とする記憶媒体。
  14. ネットワークを介してサーバーからクライアントへ複数の圧縮された動画と音声の多重化されたストリームを送信して表示するシステムにおいて、n番目(nは2以上の任意の自然数)のストリームについてサーバ・クライアント間の送受信に要する時間t(n)とクライアントにおいて伸張に要する時間c(n)との和[t(n)+c(n)]が、クライアントにおいて(n−1)番目のストリームの表示時間Dt(n−1)からクライアントからサーバーへの信号の送信に要する時間pを引いた値[Dt(n−1)−p]よりも短いことを特徴とするシステム。
  15. ネットワークを介してサーバーからクライアントへ複数n(nは2以上の自然数)の圧縮された動画と音声の多重化されたストリームを送信して表示するシステムにおいて、サーバー・クライアント間で1番目からn番目のストリームを送受信するに要する時間Tt(n)とn番目のストリームをクライアントにおいて伸張に要する時間c(n)との和[Tt(n)+c(n)]から、クライアントにおいて1番目から(n−1)番目のストリームの表示時間T(n−1)を引算した差A(n)=[Tt(n)+c(n)−T(n−1)]を求め、全てのnについてこの差A(n)の最大値gを求め、このgと等しいか又はより長い時間をクライアントにおいて1番目のストリームの受信開始後その表示を開始するまでのデータ蓄積時間とするシステム。
JP2002527213A 2000-09-11 2000-09-11 ネットワーク動画音声の配信方法、その装置及び動画音声の作成方法 Pending JPWO2002023908A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2000/006182 WO2002023908A1 (fr) 2000-09-11 2000-09-11 Procede de distribution d'images et de sons dynamiques sur un reseau ; appareil et procede de production d'images et de sons dynamiques

Publications (1)

Publication Number Publication Date
JPWO2002023908A1 true JPWO2002023908A1 (ja) 2004-01-29

Family

ID=11736446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002527213A Pending JPWO2002023908A1 (ja) 2000-09-11 2000-09-11 ネットワーク動画音声の配信方法、その装置及び動画音声の作成方法

Country Status (3)

Country Link
US (1) US20040083301A1 (ja)
JP (1) JPWO2002023908A1 (ja)
WO (1) WO2002023908A1 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266657B2 (en) 2001-03-15 2012-09-11 Sling Media Inc. Method for effectively implementing a multi-room television system
US6263503B1 (en) 1999-05-26 2001-07-17 Neal Margulis Method for effectively implementing a wireless television system
US7023924B1 (en) * 2000-12-28 2006-04-04 Emc Corporation Method of pausing an MPEG coded video stream
US20030223013A1 (en) * 2002-06-04 2003-12-04 Sami Laakso Method and arrangement for forming application specific presentation
JP4497804B2 (ja) 2002-10-08 2010-07-07 キヤノン株式会社 受信装置及び受信装置の制御方法
KR100608715B1 (ko) * 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
US8099755B2 (en) * 2004-06-07 2012-01-17 Sling Media Pvt. Ltd. Systems and methods for controlling the encoding of a media stream
US7917932B2 (en) 2005-06-07 2011-03-29 Sling Media, Inc. Personal video recorder functionality for placeshifting systems
US7975062B2 (en) 2004-06-07 2011-07-05 Sling Media, Inc. Capturing and sharing media content
US7769756B2 (en) * 2004-06-07 2010-08-03 Sling Media, Inc. Selection and presentation of context-relevant supplemental content and advertising
US8346605B2 (en) 2004-06-07 2013-01-01 Sling Media, Inc. Management of shared media content
CN103037254B (zh) 2004-06-07 2016-07-13 斯灵媒体公司 个人媒体广播***
US9998802B2 (en) 2004-06-07 2018-06-12 Sling Media LLC Systems and methods for creating variable length clips from a media stream
US20060040683A1 (en) * 2004-08-18 2006-02-23 Nokia Corporation Cellular radio telecommunications terminal, a system, a method, a computer program and a user interface
US20060059199A1 (en) * 2004-08-18 2006-03-16 Nokia Corporation Cellular radio telecommunications terminal, a system, a method, a computer program and a user interface
EP1899814B1 (en) * 2005-06-30 2017-05-03 Sling Media, Inc. Firmware update for consumer electronic device
TWI459783B (zh) * 2006-05-11 2014-11-01 Cfph Llc 使用及管理電子檔案的方法和設備
GB2446201A (en) * 2007-02-01 2008-08-06 Wecomm Ltd Switching between Real Time Protocol (RTP) streams
US8477793B2 (en) 2007-09-26 2013-07-02 Sling Media, Inc. Media streaming device with gateway functionality
US8350971B2 (en) 2007-10-23 2013-01-08 Sling Media, Inc. Systems and methods for controlling media devices
US8060609B2 (en) 2008-01-04 2011-11-15 Sling Media Inc. Systems and methods for determining attributes of media items accessed via a personal media broadcaster
US8667279B2 (en) 2008-07-01 2014-03-04 Sling Media, Inc. Systems and methods for securely place shifting media content
US20100011012A1 (en) * 2008-07-09 2010-01-14 Rawson Andrew R Selective Compression Based on Data Type and Client Capability
US8381310B2 (en) 2009-08-13 2013-02-19 Sling Media Pvt. Ltd. Systems, methods, and program applications for selectively restricting the placeshifting of copy protected digital media content
US20100070925A1 (en) * 2008-09-08 2010-03-18 Sling Media Inc. Systems and methods for selecting media content obtained from multple sources
US8667163B2 (en) 2008-09-08 2014-03-04 Sling Media Inc. Systems and methods for projecting images from a computer system
JP5335354B2 (ja) * 2008-10-03 2013-11-06 キヤノン株式会社 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム
US9191610B2 (en) * 2008-11-26 2015-11-17 Sling Media Pvt Ltd. Systems and methods for creating logical media streams for media storage and playback
US8438602B2 (en) * 2009-01-26 2013-05-07 Sling Media Inc. Systems and methods for linking media content
US9325789B2 (en) * 2009-02-17 2016-04-26 International Business Machines Corporation Distributed server election with imperfect clock synchronization
US8171148B2 (en) 2009-04-17 2012-05-01 Sling Media, Inc. Systems and methods for establishing connections between devices communicating over a network
US8406431B2 (en) 2009-07-23 2013-03-26 Sling Media Pvt. Ltd. Adaptive gain control for digital audio samples in a media stream
US9479737B2 (en) * 2009-08-06 2016-10-25 Echostar Technologies L.L.C. Systems and methods for event programming via a remote media player
US20110032986A1 (en) * 2009-08-07 2011-02-10 Sling Media Pvt Ltd Systems and methods for automatically controlling the resolution of streaming video content
US8532472B2 (en) * 2009-08-10 2013-09-10 Sling Media Pvt Ltd Methods and apparatus for fast seeking within a media stream buffer
US9565479B2 (en) 2009-08-10 2017-02-07 Sling Media Pvt Ltd. Methods and apparatus for seeking within a media stream using scene detection
US9525838B2 (en) * 2009-08-10 2016-12-20 Sling Media Pvt. Ltd. Systems and methods for virtual remote control of streamed media
US8966101B2 (en) 2009-08-10 2015-02-24 Sling Media Pvt Ltd Systems and methods for updating firmware over a network
US20110035765A1 (en) * 2009-08-10 2011-02-10 Sling Media Pvt Ltd Systems and methods for providing programming content
US20110035466A1 (en) * 2009-08-10 2011-02-10 Sling Media Pvt Ltd Home media aggregator system and method
US8799408B2 (en) * 2009-08-10 2014-08-05 Sling Media Pvt Ltd Localization systems and methods
US9160974B2 (en) 2009-08-26 2015-10-13 Sling Media, Inc. Systems and methods for transcoding and place shifting media content
US8314893B2 (en) 2009-08-28 2012-11-20 Sling Media Pvt. Ltd. Remote control and method for automatically adjusting the volume output of an audio device
US20110113354A1 (en) * 2009-11-12 2011-05-12 Sling Media Pvt Ltd Always-on-top media player launched from a web browser
US9015225B2 (en) 2009-11-16 2015-04-21 Echostar Technologies L.L.C. Systems and methods for delivering messages over a network
US8799485B2 (en) * 2009-12-18 2014-08-05 Sling Media, Inc. Methods and apparatus for establishing network connections using an inter-mediating device
US8626879B2 (en) 2009-12-22 2014-01-07 Sling Media, Inc. Systems and methods for establishing network connections using local mediation services
US9178923B2 (en) * 2009-12-23 2015-11-03 Echostar Technologies L.L.C. Systems and methods for remotely controlling a media server via a network
US9275054B2 (en) 2009-12-28 2016-03-01 Sling Media, Inc. Systems and methods for searching media content
US8856349B2 (en) 2010-02-05 2014-10-07 Sling Media Inc. Connection priority services for data communication between two devices
US20110208835A1 (en) * 2010-02-22 2011-08-25 Research In Motion Limited Method, system and apparatus for distributing multimedia data
WO2012077392A1 (ja) * 2010-12-10 2012-06-14 三菱電機株式会社 マルチ画面表示システム
KR101913176B1 (ko) * 2011-12-29 2018-11-01 삼성전자주식회사 텔레비전 장치의 전력을 제어하기 위한 방법 및 장치
JP5874443B2 (ja) * 2012-03-01 2016-03-02 ソニー株式会社 通信装置、通信システム、および、これらの制御方法ならびに当該方法をコンピュータに実行させるためのプログラム
KR102104409B1 (ko) * 2013-11-14 2020-05-29 한화테크윈 주식회사 영상저장시스템 및 오픈플랫폼기반 영상저장시스템에서 프로토콜 변환 방법
JP6578808B2 (ja) * 2015-08-18 2019-09-25 ヤマハ株式会社 コンテンツデータ受信装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0709009A1 (en) * 1993-06-16 1996-05-01 GOULD, Kim V.W. System and method for transmitting video material
JP3193563B2 (ja) * 1994-04-12 2001-07-30 松下電器産業株式会社 リアルタイムデータ読み出しシステム
JPH10276408A (ja) * 1997-03-31 1998-10-13 Nippon Telegr & Teleph Corp <Ntt> ビデオ情報提供制御方法およびシステム
US6014694A (en) * 1997-06-26 2000-01-11 Citrix Systems, Inc. System for adaptive video/audio transport over a network
JPH1188855A (ja) * 1997-09-03 1999-03-30 Nippon Telegr & Teleph Corp <Ntt> 映像転送再生システム
US6065650A (en) * 1997-09-30 2000-05-23 Lockheed Martin Energy Systems, Inc. Plug Detector Bypass Breaker Guard
JPH11163934A (ja) * 1997-11-27 1999-06-18 Canon Inc 伝送システム及び伝送装置及び受信装置及び実時間動画像及び音声送信システム及び装置及びその制御方法及び記憶媒体
JP2000092064A (ja) * 1998-09-09 2000-03-31 Tokyo Electric Power Co Inc:The 通信システム及びこの通信システムに用いられる可変レート符号化装置

Also Published As

Publication number Publication date
WO2002023908A1 (fr) 2002-03-21
US20040083301A1 (en) 2004-04-29

Similar Documents

Publication Publication Date Title
JPWO2002023908A1 (ja) ネットワーク動画音声の配信方法、その装置及び動画音声の作成方法
JP4949591B2 (ja) ビデオ誤り回復方法
US7237254B1 (en) Seamless switching between different playback speeds of time-scale modified data streams
JP3739609B2 (ja) マルチメディアの再生システムにおけるディジタルのビデオおよびオーディオの再生の適応型同期化のための方法および装置
JP3523217B2 (ja) メディアデータプロセッサ
US20040128701A1 (en) Client device and server device
EP1585334A1 (en) Method and client for playing a video stream.
JP2003114845A (ja) メディア変換方法およびメディア変換装置
EP2076052A2 (en) Synchronizing audio and video frames
US20060140591A1 (en) Systems and methods for load balancing audio/video streams
JP4715306B2 (ja) ストリーム制御装置、ストリーム再生方法、映像記録再生システム
JP4526294B2 (ja) ストリームデータ送信装置、受信装置、プログラムを記録した記録媒体、およびシステム
JP2003060700A (ja) データ伝送方法及び装置並びにデータ受信方法及び装置
JP2006190213A (ja) メディア再生装置
JP2003333488A (ja) ストリーミングデータ再生方式及びストリーミングデータ再生方法
JP3844485B2 (ja) 携帯電話向けインターネットライブ放送システム、携帯電話向けインターネットライブ放送方法、ストリーミングデータ作成配信プログラム及び記録媒体
JP2006295645A (ja) 特殊再生データ生成方法、配信装置及びビデオ再生システム
WO2001045411A1 (fr) Systeme et technique de transmission d&#39;un produit audio/visuel par un serveur/client
JP2002073049A (ja) 音楽配信サーバ、音楽再生端末、及びサーバ処理プログラムを記憶した記憶媒体、端末処理プログラムを記憶した記憶媒体
JP7365212B2 (ja) 動画再生装置、動画再生システム、および動画再生方法
JP4255685B2 (ja) 画像伝送方法および画像伝送装置
JP4373229B2 (ja) 映像閲覧方法及び映像閲覧システム
JP3894362B2 (ja) 複数動画像の閲覧装置および記録媒体
JP4484220B2 (ja) 映像配信装置
JPH10271482A (ja) 符号化映像の同期再生制御方法およびシステム