JP2015130164A - ネットワークを通してメディアを伝送するシステム及び方法 - Google Patents

ネットワークを通してメディアを伝送するシステム及び方法 Download PDF

Info

Publication number
JP2015130164A
JP2015130164A JP2014261622A JP2014261622A JP2015130164A JP 2015130164 A JP2015130164 A JP 2015130164A JP 2014261622 A JP2014261622 A JP 2014261622A JP 2014261622 A JP2014261622 A JP 2014261622A JP 2015130164 A JP2015130164 A JP 2015130164A
Authority
JP
Japan
Prior art keywords
audio
model
user device
server
frame
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
Application number
JP2014261622A
Other languages
English (en)
Other versions
JP5913554B2 (ja
Inventor
榮昌 郭
Jung Chang Kuo
榮昌 郭
文凱 曹
Wen-Kae Tsao
文凱 曹
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.)
Ubitus Inc
Original Assignee
Ubitus Inc
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 Ubitus Inc filed Critical Ubitus Inc
Publication of JP2015130164A publication Critical patent/JP2015130164A/ja
Application granted granted Critical
Publication of JP5913554B2 publication Critical patent/JP5913554B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • 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/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23602Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • 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/237Communication with additional data server
    • 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/44012Processing 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 rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • 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/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • H04N21/8153Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

【課題】ネットワークを通してメディアを伝送するシステム及び方法を提供する。
【解決手段】サーバー1で執行されるアプリケーションプログラム100は3Dモデルと音声を含むバーチャル3D環境を産生し、所定順序で各3Dモデルと音声の状態をチェックし、ユーザーデバイス21にダウンロードされていない3Dモデルと音声を、2Dビデオストリーミングフレームにレンダリングして伝送し、ダウンロードされている他の3Dモデルと音声をサーバー1はレンダリングせず、解釈情報を同期伝送し、フレームと解釈情報を受取ると、2Dビデオストリーミングフレームをバックグラウンド画面とバックグラウンド音声として解釈情報に基づき、自身にダウンロードした3Dモデルと音声を使用し、再レンダリングを行い、前景画面と音声とし、最後に前景とバックグラウンドを混合し、サーバー1にアプリケーションプログラム100のバーチャル3D環境を再建する。
【選択図】図2

Description

本発明はネットワークを通して画像や音声等メディアを伝送するシステム及び方法に関し、特に、ユーザーデバイス上で3Dオブジェクトと音声をレンダリングする方法で、同方法は(A)3Dオブジェクトと3D音声に対するレンダリング(Rendering)、(B)サーバーが提供する立体音声を備える2Dビデオを結合して完成し、ネットワークを通してメディアを伝送するシステム及び方法に関する。
この数年間、オンラインゲームは世界のトレンドとなっている。
クラウドコンピューティング関連システムとテクノロジーの発展に従い、ストリーミングサーバを利用したゲームコンテンツやサービスを提供する技術も現れている。
従来のクラウドゲームサービスを提供する方法は、サーバーによりほとんどすべての演算を行う。
つまり、クラウドゲームサービスを提供するには、該サーバーは多数の参加者により移動或いはコントロールできる3Dオブジェクトを含むバーチャル3D環境を作らなければならない。
従来の技術において、これら3Dオブジェクトは音声効果を備える。
後の参加者(プレーヤー)のコントロール動作に基づき、該サーバーはバーチャル3D環境と3Dオブジェクトとを結合し、ゲーム機のスクリーン上に、立体音声を備える2Dゲームをレンダリングする。
続いて、該サーバーは、レンダリング後の画像と立体音声を、音声を備える2Dビデオストリーミングとして、ネットワークを通してプレーヤーのデバイス上に伝送する。
プレーヤーデバイスはそれを受け取った後、デコードと該2Dビデオストリーミングを表示するだけで、余計な3Dレンダリング演算を行う必要はない。
しかしながら、同一サーバーにおいて、多くのプレーヤーがレンダリング演算を行う伝統技術では、3Dレンダリング演算を執行するサーバーの負荷が過大になってしまう。
この他、プレーヤーが目にする画面はすべて、破壊的圧縮を経た2Dビデオストリーミング形式で伝送されるため、画像であろうと音声であろうと、その品質はもともとの3Dオブジェクトの品質とは差がある。
しかも、サーバーとプレーヤーデバイス間の大量のネットワーク通信帯域幅も大きな問題となる。
本発明は、従来のネットワークを通してメディアを伝送するシステム及び方法の上記した欠点に鑑みてなされたものである。
特開2014−168252公報
本発明が解決しようとする課題は、サーバーの負荷を低下させ、ユーザーデバイス上に表示される画像と音声の品質を高め、サーバーとユーザーデバイス間の通信帯域幅を節減し、ユーザーデバイスそのもの3Dレンダリングと音声効果のアウトプットとサーバーエンドの3Dレンダリング及び音声効果アウトプット(2DストリーミングAVに圧縮されて伝送される)とを結合させ、より良い3Dレンダリングと音声効果のアウトプット結果とするネットワークを通してメディアを伝送するシステム及び方法を提供することである。
上記課題を解決するため、本発明は下記のネットワークを通してメディアを伝送するシステム及び方法を提供する。
ネットワークを通してメディアを伝送するシステム及び方法において、該システムは、サーバー及びユーザーデバイスを備え、該方法は、以下のステップを備え、
ステップ(A):サーバー上でアプリケーションプログラムを執行し、複数の3Dモデル及び3D音声を含むバーチャル3D環境を産生し、各3Dモデル或いは3D音声は、ある状態に対応し、該状態は、この3Dモデル或いは3D音声がユーザーデバイス中にプレ保存するか否かを指示し、ユーザーデバイスは、ネットワークを通してサーバーに連結し、アプリケーションプログラムにより産生する少なくとも一個の各3Dモデル及び3D音声を含むメディアをダウンロードする。
ステップ(B):サーバーは3Dモデルの状態をチェックし、どの3Dモデルを、音声を備える2Dビデオストリーミングフレームにエンコードするかを決定し、その決定方式は、ユーザーデバイス中にプレ保存されていない3Dモデルを、フレーム中にエンコードし、サーバーは3D音声の状態をチェックし、どの3D音声を、立体音声を備える2Dビデオストリーミングフレームにエンコードするか決定し、その決定方式は、ユーザーデバイス中にプレ保存されていない3D音声を、ビデオストリーミングフレーム中にエンコードし、3D音声が、ビデオストリーミングフレーム中の立体音声にエンコードされると、その左右チャンネルの音量は、その位置及び使用者の耳に対する速度により決定され、BGMは、所定位置上の3D音声効果と定義され、サーバーの負荷を低下させ、或いは不安定なネットワークによるデータ伝達で生じる騒音を防止するため、サーバーは、ビデオフレーム中の3D音声のエンコードを放棄することができ、この状況において、3D音声は、ユーザーデバイス中に予め保存した時だけに再生される。
ステップ(C):サーバーは、少なくともネットワークを通して立体音声を備える2Dビデオストリーミングビデオフレームをユーザーデバイスに伝送する。
ステップ(D):ユーザーデバイスは、サーバーからの立体音声を備えるビデオストリーミングフレームデコードを受け取り、ビデオストリーミングフレームをバックグラウンド画面とバックグラウンドオーディオとして利用し、このバックグラウンドの上において、ユーザーデバイス中にプレ保存されるが、ビデオストリーミングフレーム中にまだ含まれていない3Dモデルと3D音声をレンダリングし、前景画面と前景オーディオとする。
ステップ(E):ユーザーデバイスは、自身がレンダリングした前景画面と前景オーディオとサーバーから伝送されたストリーミングフレーム、つまりバックグラウンド画面とバックグラウンドオーディオを混合し、新しく、音声を備えるビデオストリーミングフレームをアウトプットする。
一実施形態のステップ(B)中では、我々はあるバーチャル位置を取り、続いて各3Dモデルは、このバーチャル位置の遠近に基づき配列され、距離が最も近い3Dモデルから始め、一つ一つその状態をチェックし、チェック中に、ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、その後の3Dモデルがユーザーデバイス中にプレ保存されるか否かにかかわらず、発見された3Dモデル及びその後のすべての3Dモデルを含み、ビデオストリーミングフレーム中にエンコードし、任意の3Dモデルの位置が改変された時、或いは配列参考用のバーチャル位置が改変された時、前記の配列とチェックを再度執行し、しかも最新のチェック結果に基づき、3Dモデルをビデオストリーミングフレーム中にエンコードする必要があるか否かを決定する。
一実施形態中において、新しい3Dモデルが3D環境中に出現すると、その後の3Dモデルがユーザーデバイス中にプレ保存されるか否かにかかわらず、新しい3Dモデルを含むその後のすべての3Dモデルを、ビデオストリーミングフレーム中にエンコードする。
一実施形態のステップ(C)において、サーバーは、ユーザーデバイス中にプレ保存されていない3Dモデル及び3D音声を、所定の順序に基づき、ユーザーデバイス中に伝送し、ユーザーデバイスがサーバーにより伝送された3Dモデル或いは3D音声を受け取ると、ユーザーデバイスは、3Dモデル或いは3D音声を保存し、メッセージをサーバーに送り、3Dモデル或いは3D音声の状態を改変し、サーバーに指示し、この3Dモデル或いは3D音声は、ユーザーデバイス中に既にプレ保存される。
一実施形態のステップ(C)中において、サーバーは、ビデオストリーミングフレーム中に未エンコードの3Dモデル及び3D音声の状態情報を、ユーザーデバイスに伝送し、ユーザーデバイスが、状態情報を受け取り、及びチェックする時には、以下の方式に基づき行い、もし、受け取った状態情報中の任意の3Dモデル或いは3D音声が、ユーザーデバイス中にプレ保存される者でないなら、ユーザーデバイスは、サーバーに、3Dモデル或いは3D音声をダウンロードするように請求を送信する。
一実施形態中において、状態情報は、ビデオストリーミングフレーム中にエンコードされていない解釈データを含み、各解釈データは、3Dモデル或いは3D音声の名称、位置、速度、ディレクション、及び属性を含む。
一実施形態中において、サーバーは、3Dシーントランスミッター及び3Dシーンサーバーをさらに含み、3Dシーントランスミッターは、アプリケーションプログラム中或いは執行時にアプリケーションプログラム上に動態連結するデータベースをコンパイルし、それは、すべての3Dモデル及び3D音声及び各3Dモデル或いは3D音声状態を含むリストを保有し、含む状態は、3Dモデル或いは3D音声の状態が“Not Ready(準備中)”、“Loading (ダウンロード中)”、或いは“Ready for Client(ユーザーはダウンロード済み)”の内の何れか一つで示し、3Dシーンサーバーはサーバー上で執行するサーバープログラムで、3Dシーントランスミッター及びユーザーデバイス間メッセージ伝達の中継点とし、3Dシーンサーバー自身は、ユーザーデバイスが、サーバーから必要な3Dモデル及び3D音声をダウンロードするファイルダウンロードサーバーとすることができる。
一実施形態中において、ユーザーデバイスはさらに、3Dシーンユーザーエンド及び3Dシーンキャッシュを備え、3Dシーンユーザーエンドはユーザーデバイス上で動作するプログラムで、3Dモデルのレンダリングに用い、結果をビデオストリーミングにアウトプットし、ネットワークを通してサーバーとコミュニケーションし、3Dシーンキャッシュは、前以てサーバーからダウンロードした少なくとも一個の3Dモデル及び3D音声を保存する。
本発明のネットワークを通してメディアを伝送するシステム及び方法は、サーバーの負荷を低下させ、ユーザーデバイス上に表示される画像と音声の品質を高め、サーバーとユーザーデバイス間の通信帯域幅を節減し、ユーザーデバイスそのもの3Dレンダリングと音声効果のアウトプットとサーバーエンドの3Dレンダリング及び音声効果アウトプットとを結合させ、より良い3Dレンダリングと音声効果をアウトプットすることができる。
本発明一実施形態によるネットワークを通してメディアを伝送するシステムの模式図である。 本発明一実施形態によるネットワークを通してメディアを伝送するシステムの構成を示す模式図である。 本発明一実施形態によるネットワークを通してメディアを伝送する方法のフローチャートである。 本発明の別種の実施形態によるネットワークを通してメディアを伝送する方法のフローチャートである。 本発明方法において、いかにしてビデオストリーミング及び3Dモデルを伝送するかを示す一実施形態の模式図である。 本発明方法において、いかにしてビデオストリーミング及び3Dモデルを伝送するかを示す一実施形態の模式図である。 本発明方法において、いかにしてビデオストリーミング及び3Dモデルを伝送するかを示す一実施形態の模式図である。 本発明方法において、どの3Dモデルがフレームにエンコードされるべきかをいかにして決定するかを示す実施形態の模式図である。 本発明方法において、どの3Dモデルがフレームにエンコードされるべきかをいかにして決定するかを示す実施形態の模式図である。 本発明方法において、どの3Dモデルがフレームにエンコードされるべきかをいかにして決定するかを示す実施形態の模式図である。 本発明方法において、音声を備えるビデオストリーミング及び3D音声をいかにして伝送するかを示す実施形態の模式図である。 本発明方法において、音声を備えるビデオストリーミング及び3D音声をいかにして伝送するかを示す実施形態の模式図である。 本発明方法において、音声を備えるビデオストリーミング及び3D音声をいかにして伝送するかを示す実施形態の模式図である。 本発明方法において、どの3D音声が音声を備えるビデオストリーミングフレームにエンコードされるべきかをいかにして決定するかを示す一実施形態の模式図である。 本発明方法において、どの3D音声が音声を備えるビデオストリーミングフレームにエンコードされるべきかをいかにして決定するかを示す一実施形態の模式図である。 本発明方法において、どの3D音声が音声を備えるビデオストリーミングフレームにエンコードされるべきかをいかにして決定するかを示す一実施形態の模式図である。
以下に図面を参照しながら本発明を実施するための最良の形態について詳細に説明する。
本発明はオンラインゲームに運用され、プレーヤーはユーザーデバイスを使用し、ネットワークを通して、サーバー上でゲームを行う。
このサーバーはプレーヤーの指令に基づき動作し、ユーザーデバイス上でビデオを生じる。
例えば、あるプレーヤーがユーザーデバイスでアクションを採ると、この動作はサーバーデバイスに伝送され、それは画像を演算し、画像をユーザーデバイスに回送する
多くのオンラインゲームにおいて、サーバーが生じる2D画像は、視線範囲内の他のオブジェクトの3Dレンダリング(Rendering)を含む。
本発明は、サーバーにより、ユーザーデバイスが必要とする3Dモデル及び3D音声を提供し、サーバーとユーザーデバイスとの間で、視線範囲内にあるオブジェクトの3Dレンダリング解析を行う。
例えば、サーバーはいくらか或いはすべての3Dモデル及び3D音声をユーザーデバイスに提供し、並びに各3Dモデル或いは3D音声は位置、ディレクション及び状態データ等の関連する解釈データを付帯する。
ゲームの初期には、ユーザーデバイス上でゲームと関連するすべての画像(包括関連する3Dレンダリング)は、ネットワークを通してサーバーにより制作され、立体音声を備える2Dビデオストリーミングとなる。
本発明のシステム、ネットワークを通して、視線範囲内において、3Dモデル及び3D音声等のメディア及びそのレンダリング情報をユーザーデバイスに送るが、その際、比較的近い(目に近い)オブジェクトは優先的に送られる。
本発明システムはできるだけユーザーデバイス上で、3Dモデル及び3D音声のレンダリングを行い、次善の策として、サーバー上で、3Dモデル或いは3D音声等のレンダリングを行う。
3Dモデル或いは3D音声がユーザーデバイス上に既に保存されているなら、サーバーはオブジェクト(3Dモデル或いは3D音声)の解釈データをユーザーデバイスに提供するだけでよい。
ユーザーデバイスはこれに基づきこれらオブジェクトをレンダリングし、結果を、サーバーが提供する任意の立体音声を備える2Dビデオの上に表示する。
ユーザーデバイスの要求でない限り、サーバーはこの3Dモデル及び3D音声をレンダリングしない。
本発明方法のこのアレンジにより、サーバー上のGPU演算を省くことができ、サーバーは3Dモデル及び3D音声を含むアクティブデータベースを維持し、ユーザーとの通信の効果を高めることができる。
本発明において、ユーザーデバイスが示すものは以下の組合せを含む。
(A)サーバー上レンダリングの3Dシーン。結果は立体音声を備える2Dビデオストリーミングの形式で、ユーザーエンドに伝送し、ユーザーデバイスにより再生され、及び(B)サーバー上よりダウンロードされて、ユーザーデバイス上に保存される。
ユーザーデバイスにより自らレンダリングする3Dモデル及び3D音声の結果。この立体音声を備える2Dビデオストリーミングとユーザーデバイス上レンダリングの3Dモデル及び3D音声の混合は、帯域幅占用の状況を低下させられるため、カラフルな3Dシーン及び感動的なサラウンド音声効果を作り出すことができる。
一実施形態において、ユーザーデバイスへと伝送する立体音声を備える2Dビデオストリーミングは、3Dモデル及び3D音声の解釈データを付帯し、ユーザーデバイスは、自分がこの3Dモデル及び3D音声を保存しているかどうかをチェックする。
ないなら、ユーザーデバイスは、必要とする3Dモデル及び3D音声を、サーバーよりダウンロードし、ダウンロード後、ユーザーデバイスは、これを保存し、データリストを作り、シーン再現の必要に備える。
こうして、ビデオストリーミングのディレイと大量の帯域幅が必要であるという問題を改善し、しかもユーザーデバイスエンドにより自らレンダリングすることで、より良い質の画像を得ることができる(ビデオ圧縮を経ていないため)。
前記の解釈データは、ユーザーデバイスが任意の3Dモデル或いは3D音声を遺漏しない、或いは繰り返さないことを許す状況において、ユーザーデバイスエンドが、3Dモデル及び3D音声によりレンダリングした結果と、サーバーが提供する立体音声を備える2Dビデオストリーミングとを正確に混合する。
前記のように、ユーザーデバイスが必要なすべての3Dモデル及び3D音声を保存後、ユーザーデバイスは完璧な3Dシーン及び音声を再現することができる。
この時、サーバーは、新しく加わり、ユーザーデバイスエンドが未保存の新しい3Dモデル或いは3D音声が出現するまで、一切のレンダリングを行う必要がない。
新しい3Dモデルが出現すると、サーバーは、ユーザーデバイスが自らこの新しい3Dモデルをレンダリングするまで、この新しい3Dモデル及びその後のすべてのオブジェクトをレンダリングする。
この他、新しい3D音声が出現すると、ユーザーデバイスエンドが運用できるまで、サーバーは、この3D音声をレンダリングする。
ユーザーデバイスは、後に執行する時に再ダウンロードする必要がないよう、できるだけ自己の保存デバイス上にダウンロードした3Dモデル及び3D音声を保存(キャッシュ)する。
こうして、ネットワークの帯域幅コストはさらに引き下げられ、もし保存できないなら、ダウンロードとレンダリングは執行時に完成させる。
図1は、本発明ネットワークを通してメディアを伝送するシステムの一実施形態の模式図である。
サーバー1は、サービスを提供するアプリケーションプログラムを執行し、このサービスは(これに制限されない)クラウドオンラインゲームサービスである。
複数のユーザーデバイス21、22、23はネットワーク4を通してサーバー1に連結(ログイン)し、サーバー1上で動作されるアプリケーションプログラムが提供するサービスを使用する。
本実施形態中では、ネットワーク4はインターネットで、ユーザーデバイス21、22、23はインターネットに接続可能な任意の電子デバイスである。
それは、例えばスマートフォン21、タブレット、ノート型コンピューター22、デスクトップコンピューター23、ビデオゲーム機、或いはスマートテレビ等(これに制限されない)。
ユーザーデバイス21、22の中には、モバイルアクセスポイントを通して、無線でネットワーク4に連結するものもおり、ユーザーデバイス則ルーターを通して、有線の方式で、ネットワーク4上に連結するものもいる。
サーバー1上で動作されるアプリケーションプログラムは、複数の3Dモデル及び3D音声を含むバーチャル3D環境を作り出すことができる。
各3Dモデル或いは3D音声は状態を対応させ、3Dモデル或いは3D音声に、ユーザーデバイス21、22、23中にプレ保存するか否かを指示する。
本発明の一実施形態中において、各ユーザーデバイスはどれも、対応する独立アプリケーションプログラムを有し、アプリケーションプログラムはユーザーデバイスにだけサービスを提供する。
但し、多数のアプリケーションプログラムは、同時に同一のサーバー上においてサービスを執行し、多数のユーザーデバイスに提供することができる。
図に示すように、ユーザーデバイス21、22、23はネットワーク4を通してサーバー1に連結し、アプリケーションプログラムにより生じ、しかも少なくとも一個の各3Dモデル及び3D音声を含むメディアを得ることができる。
このシステム構成とその特?は、図2及び関連する記載に示す。
図2は本発明システム構成の一実施形態の模式図である。
本発明において、アプリケーションプログラム100は、サーバー1上で動作し、3D画像3D音声のレンダリング結果を生じ、それは通常3Dゲームである。
3Dシーントランスミッター110はプログラムライブラリー(library)で、アプリケーションプログラム100のコンパイル時に、これと靜態連結し、或いはアプリケーションプログラム100の執行時に、これと動態連結する。
3Dシーンユーザーエンド(プログラム)170は、ユーザーデバイス21、22、23上で執行するプログラムにおいて、アプリケーションプログラム100により生成される3D画像及び3D音声レンダリング結果を産生してアウトプットする。
本実施形態中では、各ユーザーデバイス21、22、23は、それぞれ独立したアプリケーションプログラム100及びシーントランスミッター110に対応する。
本発明において、3Dシーンユーザーエンド170及び3Dシーンキャッシュ190は、ユーザーエンドのプログラムと執行方法を組成し、ユーザーデバイスそのものレンダリング3Dモデルと3D音声の演算能力を発揮する。
3Dシーンサーバー120は、アプリケーションプログラム100と共同でサーバー1上で執行するサーバープログラムで、サーバー1の3Dシーントランスミッター110とし、ユーザーデバイス21、22、23の3Dシーンユーザーエンド170との間で、メッセージ伝達の中継点とする。
同時に、ファイルダウンロードサーバーでもあり、ユーザーデバイス21、22、23の3Dシーンユーザーエンド170は、サーバー1から必要な3Dモデル及び3D音声をダウンロードする。
3Dシーントランスミッター110はリストを保有し、すべての3Dモデル及び3D音声、及びモデル或いは音声の状態を列記する。
この状態は、各3Dモデル或いは3D音声の状態を(1)“Not Ready (準備中)”、(2)“Loading (ダウンロード中)”、及び(3)“Ready for Client(ユーザーはダウンロード済み)”の内の何れか一つで示している。
アプリケーションプログラム100のメインプログラム、APIにより呼び出すプログラムライブラリーの方式 (図2のルート101)を通して、3Dシーン情報を3Dシーントランスミッター110に伝送する。
この3Dシーン情報は、名称、位置、速度、属性、ディレクション及びすべて他の3Dモデル及び3D音声レンダリングが必要とするデータを含む。
3Dシーントランスミッター110がこのタイプのデータを受け取ると、以下のプロセスを執行することができる。
ステップ(A):3Dモデルにおいては、レンダリングが必要なすべての3Dモデルを配列させ、その配列方式は、バーチャル位置(3Dプロジェクション面或いは使用者の目など)に対して、近くから遠くへと配列する。
3D音声においては、レンダリングが必要なすべての3D音声を配列させ、その配列方式は、バーチャル位置(3Dプロジェクション面或いは使用者の目など)に対して、近くから遠くへと配列する。
ある状況において、3Dシーン中の3DモデルAは、もう一つの3DモデルBを含み、或いはその上に重なる。
例えば、モデルAは家で、モデルBは家の中のテーブルで、この状況において、どのモデルが、模擬位置に近いかは実は曖昧な問題である。
この時、モデルA及びモデルBは、同一の3Dモデルと見做され、3Dモデル(A+B)と呼ばれる。
シーンに対する既知の情報のいくらかは、ゲーム中の地面などの補助配列に用いられ、他の3Dオブジェクト下の大きくてフラットな3Dモデルと見做される。
通常、使用者の目は地面より高いため、地面の3Dモデルは、配列中で特別処理が必要で、これにより他の3Dモデルの前に表示されないようにする。
ステップ(B):3Dモデルにおいて、最も近い点(目に最も近い点)から”Ready for Client”状態を備えない一個目の3Dモデル“M”を探す。
言い換えれば、一個目の3Dモデル“M”の状態は” Not Ready ”状態(この後、” Not Ready ”状態はNR状態と略称する)である。
当然、このタイプの3Dモデルが存在しない可能性もある(例えば、表示されているすべての3Dモデルが“Ready for Client”状態と標示されている)。
3D音声において、最も近い点(目に最も近い点)から、一個目の”Ready for Client”状態を備えない3D音声“S”を探す。
言い換えれば、一個目の3D音声“S”の状態は” Not Ready ”状態(この後、” Not Ready ”状態はNR状態と略称する)である。
当然、このタイプの3D音声が存在しない可能性もある(例えば、表示された3D音声のすべてが、“Ready for Client”状態と標示されている)。
ステップ(C):3Dモデルにおいて、サーバーは3DモデルM及びその後のすべての3Dモデル(つまり目からの距離がMより遠いすべての3Dモデル)をレンダリングし、(もし3DモデルMがないなら、黒幕により表示する)レンダリング後の結果を、2D ビデオストリーミングフレーム(frame)にエンコードする。
3D音声において、サーバー1上で、”Ready for Client”状態を備えないすべての3D音声をレンダリング(再生)する(もしこのタイプの3D音声がないなら、靜音を生じる)。
続いて、 レンダリング後の結果を、ステップ(C)中の2Dビデオストリーミングフレームを備える立体音声にエンコードする。
注意:3DモデルS後に続く3D音声は、その状態が”Ready for Client”でない時にのみ、レンダリングされ、これはステップ(C)中の3Dモデルと異なる。
ステップ(D):以下の6個の情報を3Dシーンサーバー120(ルート112)に伝送する:[Info 112−A]、[Info 112−B]、 [Info 112−C]、[Info 112−D]、[Info 112−E]及び[Info 112−F]。
3Dシーンサーバー120は、以上の情報を、3Dシーンユーザーエンド170(ルート122)に伝送する。
[Info 112−A]は3DモデルM前のすべての3Dモデルの状態情報(或いは解釈データと呼ぶ)である。
このタイプモデルは存在しない可能性もあることに注意する必要がある。
このタイプのモデルはどれも、“Ready for Client”状態を備える。
その意味は、これらモデルは既にユーザーエンドデバイスに予めダウンロードされているということで、ユーザーエンドデバイス 21、22、23 上面の3Dシーンユーザーエンド(プログラム)170は、これらモデルを 既に自らレンダリングすることができる。
データ伝送の帯域幅は減らすため、3Dシーントランスミッター110は全部の状態情報を伝送する必要はなく、状態情報中の今回のレンダリングと前回のレンダリングとの差異を伝送するだけでよい。
[Info 112−B]もしサーバーが3DモデルMを見つけ、しかもそのユーザーデバイスの状態が“Not Ready”である時、サーバーは、そのユーザー状態を“Loading”に変え、3DモデルMのダウンロード指示を送信し、ユーザーエンドに、この3DモデルMをダウンロードするよう要求する。
もしユーザー状態が既に“Loading”なら、ダウンロード指示は既に送信されているので、一切の指示を送信してはならない。
[Info 112−C]はステップ(C)中のエンコード後のビデオストリーミングフレームである。
[Info 112−D]はすべての状態が”Ready for Client”である3D音声 (このタイプの3D音声は存在しない可能性もある)の状態情報(或いは解釈データと称する)を指す。
このタイプの音声タイプはすべて“Ready for Client”状態を備える。
つまり、これら音声は既にユーザーエンドデバイスに予めダウンロードされていることを示し、ユーザーエンドデバイス 21、22、23上面の3Dシーンユーザーエンド(プログラム)170は、既に自らこれら音声をレンダリング(再生)することができる。
データ伝送帯域幅を減らすため、3Dシーントランスミッター110は、全部の状態情報を伝送する必要はなく、状態情報中の今回のレンダリングと前回のレンダリングとの差異を伝送するだけでよい。
[Info 112−E]もしサーバーが3D音声Sを見つけ、しかもそのユーザー状態が“Not Ready”であるなら、そのユーザー状態を“Loading”に変え、3D音声Sのダウンロード指示を送信し、ユーザーエンドに、この3D音声Sをダウンロードするよう要求する。
ユーザー状態が既に“Loading”なら、ダウンロード指示は既に送信されているので、一切の指示を送信してはならない。
[Info 112−F]はステップ(C)中のエンコード後の立体音声である。
アプリケーションプログラム100のメインプログラムが、新しい3Dシーンデータを、3Dシーントランスミッター110に更新する度に、ステップ(A)〜(D)を繰り返す。
通常、アプリケーションプログラム100のメインプログラムは、毎回のレンダリング中でこのタイプのデータを更新する。
3Dシーンユーザーエンド170が前記データを受け取った後、後述のレンダリングプロセスを行う。
ステップ(i):[Info 112−C]のビデオフレームをデコードし、このフレームを後続の3Dモデルレンダリングのバックグラウンドとして使用する。
この他、[Info 112−F]ビデオを備える立体音声をデコードし、後続の3D音声レンダリングのバックグラウンド音声として使用する。
ステップ(ii):ステップ(i)でエンコード後のビデオフレーム上で [Info 112−A]中のすべての3Dモデルをレンダリングし、ネットワーク帯域幅の?用を低下させる。
3Dシーンユーザーエンド170は、この[Info 112−A]情報をメモリ中に保存する。
よって、次の3Dシーントランスミッター110は、次のレンダリングと今回のレンダリングとの状態[Info 112−A]の差異だけを伝送すればよく、全部の状態情報を伝送する必要はない。
同様に、[Info 112−D]に属するすべての3D音声をレンダリングする時には、これをステップ(i)中デコードの立体音声に混合し、ネットワーク帯域幅?用を低下させる。
3Dシーンユーザーエンド170は、この[Info 112−D]情報をメモリ中に保存するため、次の3Dシーントランスミッター110は、次のレンダリングと今回のレンダリングとの間の状態[Info 112−D]の差異を伝送するだけでよく、全部の状態情報を伝送する必要はない
ステップ(iii):ステップ(ii)中において、サーバーから伝送される立体音声を備えるビデオフレームと3Dシーンユーザーエンド170が自らレンダリングした3Dモデルと3D音声とを混合し、両者の混合結果をアウトプットし、音声を備えるアウトプットビデオストリーミング(ルート176)とする。
もし、[Info 112−B]の状態を提供するなら、3Dシーンユーザーエンド170は、以下のプロセスに基づき、3DモデルMを処理する。
ステップ(I):3Dシーンキャッシュ190を探し(ルート174)、3Dシーンキャッシュ190は前以てユーザーデバイス21、22、23中にダウンロード及び保存していた3Dモデルデータベースを含む。
ステップ(II):もし3Dシーンキャッシュ190中に、既に3DモデルMがあるなら、ステップ(V)を執行する。
ステップ(III):もし3Dシーンキャッシュ190中に、3DモデルMがないなら、3Dシーンユーザーエンド170は、ダウンロード要求を、3Dシーンサーバー120に送信する(ルート172)。
3Dシーンサーバー120は、3DモデルMのデータを、3Dシーンユーザーエンド170に回送する(ルート124)。
ステップ(IV):3Dモデルの完全ダウンロード後、3Dシーンユーザーエンド170は、これを3Dシーンキャッシュ190保存し(ルート194)、これにより次に類似の要求があった時には、再度のダウンロードを行う必要はない。
ステップ(V):3Dシーンユーザーエンド170は、3Dシーンキャッシュ190中から3DモデルMを取り出す(ルート192)。
ステップ(VI):ダウンロードが完成(或いは前以てダウンロード済み)すると、3Dシーンユーザーエンド170は、3DモデルMを取り出すことができる。
3Dシーンユーザーエンド170は、“3D Model is ready on client(3Dモデルは既にユーザーデバイス上)”のメッセージを、3Dシーンサーバー120に伝送する(ルート113)。
3Dシーンサーバー120は、このメッセージを3Dシーントランスミッター110に転送する (ルート114)。
ステップ(VII):3Dシーントランスミッター110がこのメッセージを受け取り後、3DモデルMの状態を、”Loading”から“Ready for Client”に変える。
ステップ(VIII):次のレンダリングにおいて、3Dシーントランスミッター110は、3DモデルMが既にユーザーデバイス中にダウンロードされていることを知っているため、故3Dシーンユーザーエンド170に自らレンダリングさせる。
よって、サーバー1は、この3DモデルMを、再度レンダリングする必要はない。
もし、[Info 112−E]の状態を提供するなら、3Dシーンユーザーエンド170は、以下のプロセスに従い、3D音声Sを準備する(前記の[Info 112−B]に関する記述に類似)。
ステップ(I):3Dシーンキャッシュ190を探し(ルート174)、3Dシーンキャッシュ190は、前以てユーザーデバイス21、22、23中にダウンロード及び保存していた3D音声データベースを含む。
ステップ(II):もし3Dシーンキャッシュ190中に、3D音声が準備されているなら、ステップ(V)を執行する。
ステップ(III):もし3Dシーンキャッシュ190中に、3D音声が準備されていないなら、3Dシーンユーザーエンド170は、ダウンロード要求を、3Dシーンサーバー120に送信する(ルート172)。
3Dシーンサーバー120は、3D音声のデータを、3Dシーンユーザーエンド170に回送する(ルート124)。
ステップ(IV):3D音声の完全ダウンロード後、3Dシーンユーザーエンド170は、これを3Dシーンキャッシュ190に保存する(ルート194)。
これにより、次に類似の要求があった時には、再度のダウンロードを行う必要はない。
ステップ(V):3Dシーンユーザーエンド170は、3Dシーンキャッシュ190中から3D音声Sを取り出す(ルート192)。
ステップ(VI):ダウンロードが完成(或いは前以てダウンロード済み)すると、3Dシーンユーザーエンド170は3D音声Sを取り出す。
3Dシーンユーザーエンド170は、“3D sound is ready on client(3D音声は既にユーザーデバイス上)”のメッセージを、3Dシーンサーバー120に伝送する(ルート113)。
3Dシーンサーバー120は、このメッセージを3Dシーントランスミッター110に転送する (ルート114)。
ステップ(VII):3Dシーントランスミッター110がこのメッセージを受け取り後、3D音声Sの状態を”Loading”から“Ready for Client”に変える。
ステップ(VIII):次のレンダリングにおいて、3Dシーントランスミッター110は、3D音声Sが既にユーザーデバイス中にダウンロードされていることを知っているため、3Dシーンユーザーエンド170に自らレンダリング(再生)するよう要請し、サーバー1はこの3D音声Sを、再びレンダリングする必要はない。
最初期には、ユーザーデバイス21、22、23中には、一切の3Dモデル及び3D音声がないため、3Dシーントランスミッター110は、すべての3Dモデル及び3D音声をレンダリングし、その結果を、立体音声を備える2Dビデオストリーミングにエンコードする。
3Dシーントランスミッター110は、3Dモデルのダウンロード要求[Info 112−B]及び3D音声のダウンロード要求[Info 112−E]を、最も近い点から3Dプロジェクション面(或いは使用者の目)へ伝送する。
3Dシーンユーザーエンド170は、3Dシーンサーバー120から、各3Dモデル或いは3D音声をダウンロードし、或いは3Dシーンキャッシュ190上から一つ一つ取り出す。
より多くの3Dモデル及び3D音声を、3Dシーンユーザーエンド170が取得すると、3Dシーントランスミッター110は、3Dシーンユーザーエンド170に、これらモデル及び音声を自らレンダリングし、3Dシーントランスミッター110からレンダリングする3Dモデル及び3D音声の数を減らすよう自動的に通知する。
これにより、最後の3Dシーンユーザーエンド170上からすべての3Dモデル及び3D音声が取得されるまで、エンコードした2Dビデオストリーミング中の3Dモデル及び3D音声はどんどん少なくなる。
この後、この段階において、音声を備えない黒色スクリーンだけが残る。
言い換えれば、サーバー1は、2Dビデオストリーミングを、ユーザーデバイス21、22、23中に再伝送する必要はなく、しかもサーバー1及びユーザーデバイス21、22、23間の通信帯域幅?用も、大幅に低下される。
本発明において、新しい3DモデルNが実景に出現すると、3Dシーントランスミッター110は、(1)3Dシーンユーザーエンド170に、この新しい3DモデルN前に位置する(使用者の目に対して言えば)すべての3Dモデルだけをレンダリングするよう通知する。
(2)この新しい3DモデルNをダウンロードするよう、3Dシーンユーザーエンド170に通知する。
(3) 3Dシーントランスミッター110は、この新しい3DモデルN及びその後に位置するすべてのモデルをレンダリングし、その結果を、音声を備える2Dビデオストリーミングにエンコードする。
その後、この音声を備える2Dビデオストリーミングを、3Dシーンユーザーエンド170に伝送する。
3Dシーンユーザーエンド170は、3DモデルNユーザーデバイス上で準備する前に、アプリケーションプログラム100の3D画像及び音声のレンダリング結果を再生し続けることができる。
新しい3D音声Tが実景に出現すると、3Dシーントランスミッター110は、(1)3Dシーンユーザーエンド170にこの新しい3D音声Tをダウンロードするよう通知する。及び(2)3Dシーントランスミッター110はこの新しい3D音声Tをレンダリングし、その結果を、立体音声にエンコードする。
この後、この立体音声と2Dビデオストリーミングを、3Dシーンユーザーエンド170に伝送する。
3Dシーンユーザーエンド170は、3D音声Tを、ユーザーデバイス上で準備前に、アプリケーションプログラム100を再製し続ける3D画像及び音声のレンダリング結果である。
このプロセスにおいて、新しい3D音声Tだけをレンダリングし、3Dシーントランスミッター110は、他の3D音声T後方のすべての3D音声をさらにレンダリングする必要はない。
この方法は、音声の本質が画像と異なることにより、画像はその後画像の表示を遮るが、音声は遮らない。
BGMは、所定の3D位置を備える3D音声とみなされ、BGMをできるだけ早くダウンロードできるよう、定義する所定の3D位置は使用者の目に近ければ近いほど良い。
サーバーの負荷を低下させ、或いは不安定なネットワークデータ伝達が生じる騒音を回避するため、サーバーはは、ビデオ中のすべての3D音声のエンコードを放棄することができる。
この状況において、3D音声は、ダウンロードされ、ユーザーデバイス中にプレ保存して初めてユーザーデバイス上で再生される。
3D音声において、サーバー1は3D音声の状態をチェックし、どの3D音声が立体音声を備える2Dビデオストリーミングにエンコードされるべきかを決定する
そのエンコード方式はユーザーデバイス中にプレ保存されていない3D音声をビデオフレーム中にエンコードするものである。
3D音声が、ビデオフレーム中の立体音声にエンコードされると、その左右チャンネルの音量は、その位置及び使用者の耳に対する速度により決定される。
BGMは、所定位置上の3D音声効果と定義される。
図3Aは本発明ネットワークを通してメディアを伝送する方法の一実施形態のフローチャートである。
ネットワークを通した画像の伝送を開始すると(ステップ60)、サーバー上でアプリケーションプログラムを執行し複数の3Dモデルを含むバーチャル3D環境を産生する(ステップ61)。
各3Dモデルは、ある状態に対応し、該状態は、この3Dモデルをユーザーデバイス中にプレ保存するか否かを指示する。
サーバーは続いて3Dモデルの状態をチェックし(ステップ62)、どの3Dモデルが2Dビデオストリーミングフレームにエンコードされるべきかを決定し、ユーザーデバイス中にプレ保存されていない3Dモデルは、フレーム中にエンコードされる。
サーバーは、あるバーチャル位置(通常は3Dプロジェクション面或いは使用者の目)を基準とし、近くから遠くへと、各3Dモデルの状態を一つ一つチェックする。
チェック中に、ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、この発見された3Dモデルを、NR状態と標記する。
続いて、その後の3Dモデルがユーザーデバイス中にプレ保存されるか否かにかかわらず、この3DモデルM及びその後方のすべての3Dモデルは、フレーム中にエンコードされる(ステップ63)。
任意の3Dモデルの位置が改変された時、或いは配列参考用のバーチャル位置が改変された時、前記のチェックを再び執行し、しかも最新のチェック結果に基づき、3Dモデルがビデオフレーム中にエンコードされるべきか否かを決定する。
ステップ64:2Dビデオストリーミングフレームのエンコード後、サーバーは、この2Dビデオストリーミングフレーム及びユーザーデバイス中にプレ保存されていない3Dモデル(すなわち、NR状態を備える3Dモデル及びその後方のすべての3Dモデル)を、所定の順序に基づき、ユーザーデバイスに伝送する。
この所定順序は、最も近い3Dプロジェクション面(或いは使用者の目)の一点から最も遠い点の3Dプロジェクション面の一点までの順序である。
ユーザーデバイスが2Dビデオストリーミングフレームを受け取ると(ステップ65)、ユーザーデバイスはサーバーから伝送されるフレームをデコードし、このフレームを使用し、ユーザーデバイス中にプレ保存されるが、フレーム中に含まれない3Dモデルのバックグラウンドのレンダリングを行う。
これにより、音声を備えるアウトプットビデオストリーミングの混合フレーム を産生する(ステップ66)。
ユーザーデバイスが、サーバーから伝送される3Dモデルを受け取ると、ユーザーデバイスは、この3Dモデルを保存し、続いてメッセージをサーバーに伝送し、3Dモデルの状態を “現在は既にユーザーデバイス中にプレ保存される”に変更するよう通知する。
この後、ユーザーデバイスは、サーバーから伝送されるビデオストリーミングと自らレンダリングした結果とを混合してアウトプットし、新しいビデオとする。
ステップ62中において、新しい3Dモデルが3D環境中に出現すると、その後方の3Dモデルがユーザーデバイス中にプレ保存されるか否かに関わらず、新しい3Dモデルとその後方のすべての3Dモデルをフレーム中にエンコードする。
ステップ64中において、サーバーは、ビデオストリーミングフレーム中にエンコードされていない3Dモデルの状態情報(或いは解釈データと称する)をユーザーデバイスに伝送する。
ユーザーデバイスが、状態情報を受け取り、及びチェックする時には、以下の方式に基づき行う。
もし受け取った状態情報中の任意の3Dモデルが、ユーザーデバイス中にプレ保存される者でないなら、ユーザーデバイスは、サーバーに、3Dモデルをダウンロードするよう請求を送信する(ステップ661)。
状態情報は、各フレーム中にエンコードされていない解釈データを含み、各解釈データは、3Dモデルの名称、位置、速度、ディレクション、及び属性及び各3Dモデルの状態を含む。
図3Bは本発明ネットワークを通してメディアを伝送する方法のもう一つの実施形態のフローチャートである。
ネットワークを通して音声の伝送を開始する(ステップ60a)と、サーバー上でアプリケーションプログラムを執行し、複数の3D音声を含むバーチャル3D環境を産生する(ステップ61a)。
各3D音声は、ある状態に対応し、該状態は、この3D音声がユーザーデバイス中にプレ保存するか否かを指示する。
サーバーは続いて3D音声の状態をチェックし(ステップ62a)、どの3D音声が2Dビデオストリーミングフレームにエンコードされるべきかを決定する。
ユーザーデバイス中にプレ保存されていない3D音声は、フレーム中にエンコードされる。
サーバーは、あるバーチャル位置(通常は3Dプロジェクション面或いは使用者の目)を基準とし、近くから遠くへと、各3D音声の状態を一つ一つチェックする。
チェック中に、ユーザーデバイス中にプレ保存されていない一個目の3D音声を発見すると、この発見された3D音声を、NR状態と標記する。
ステップ64a:音声を備えるビデオストリーミングフレームをエンコード後、サーバーは、この音声を備える2Dビデオストリーミングフレーム及びユーザーデバイス中にプレ保存されていない3D音声(すなわち、このNR状態を備える3D音声)を、所定の順序に基づき、ユーザーデバイスに伝送する。
この所定順序は、最も近い3Dプロジェクション面から(或いは使用者の目)の一点から、最も遠い点の3Dプロジェクション面のもう一つの点までの順序である。
ユーザーデバイスが音声を備えるビデオストリーミングフレームを受け取った(ステップ65a)後、ユーザーデバイスはビデオストリーミング中に含まれるオーディオ(すなわち、音声)をデコードし、このオーディオを、ユーザーデバイス中にプレ保存されるが、ビデオストリーミングフレーム中に含まれない3D音声のバックグラウンドのレンダリングに使用し、これにより混合オーディオ を産生する(ステップ66a)。
ユーザーデバイスがサーバーから伝送される3D音声を受け取ると、ユーザーデバイスは、この3D音声を保存し、続いてメッセージをサーバーに伝送し、3D音声の状態を”現在は既にユーザーデバイス中にプレ保存される”に変更するように、サーバーに通知する。
この後、ユーザーデバイスは、サーバーから伝送されるビデオストリーミング中のオーディオと自らレンダリング(再生、生成)した3D音声の結果を、混合してアウトプットし、新しいオーディオとする。
ステップ62aにおいて、新しい3D音声が3D環境中に出現すると、新しい3D音声を、音声を備える2Dビデオストリーミングフレーム中にエンコードする。
この新しい3D音声は、他の3D音声がレンダリングされるか否かに影響せず、この点は、前記ステップ62中の3Dモデルと異なる。
ステップ64aにおいて、サーバーは、フレーム中にエンコードされていない3D音声の状態情報をユーザーデバイスに伝送する。
ユーザーデバイスが、状態情報を受け取り、及びチェックする時には、以下の方式に基づき行う。
もし受け取った状態情報中の任意の3D音声が、ユーザーデバイス中にプレ保存される者でないなら、ユーザーデバイスはサーバーに、3D音声をダウンロードするよう請求を送信する(ステップ661a)。
状態情報は、各フレーム中にエンコードされていない解釈データを含み、各解釈データは、3D音声の名称、位置、速度、ディレクション、及び属性及び各3D音声の状態を含む。
図4A、4B及び4Cは、本発明方法において、いかにしてビデオストリーミング及び3Dモデルを伝送するかを示す一実施形態の模式図である。
図4Aに示すとおり、最初にユーザーデバイス74がサーバー上で動作するアプリケーションプログラム70にログインしても、一切の3Dモデルは、ユーザーデバイス中にプレ保存されていない。
よって、サーバーは、すべての3Dモデル(人71及びその後の家72を含む)をレンダリングする。
すべての3Dモデルは、ユーザーデバイスのスクリーン上に表示され、サーバーは、レンダリング結果を、2Dビデオストリーミングフレーム73にエンコードする。
続いて、このフレーム73を、ユーザーデバイス74に伝送する。
この段階において、フレーム73は、人71及び家72を含み、ユーザーデバイス74は、このフレーム73をアウトプットするだけでよく、他のオブジェクトをレンダリングする必要はない。
続いて、図4Bに示すとおり、サーバー70は3Dモデルをユーザーデバイスに伝送し始め、ユーザーデバイススクリーンに最も近い3Dプロジェクション面の3Dモデルから開始する。
本実施形態中では、家72と比較すると、人71は3Dプロジェクション面に近い(或いは使用者の目)。
よって、人71の3Dモデルは、先にユーザーデバイス74に伝送され、人71の3Dモデルがユーザーデバイス74上に伝送されて保存された後、ユーザーデバイス74はメッセージをサーバー70に伝送し、人71の3Dモデルが、ユーザーデバイス74中にプレ保存していることを知らせる。
この後、サーバー70は、家72をレンダリングし、そのレンダリング結果を2Dビデオストリーミングフレーム73aにレンダリングし、このフレーム73aと人71aの解釈データを、ユーザーデバイス74に伝送し、ユーザーデバイス74は続いて解釈データを自動的に利用し人をレンダリングし、さらに人のレンダリング結果とフレーム73a(家を含む)を結合し、相同のアウトプット結果を得る。
このプロセス(例えば、サーバーは一回に一個の方式で3Dモデルをユーザーデバイス74に伝送する)は、すべてのユーザーエンドが表示を要する3Dモデルが伝送され、及びユーザーデバイス74中にプレ保存されるまで、何度も繰り返される。
図4Cに示すとおり、ユーザーデバイス74がすべての3Dモデル(人と家の3Dモデルを含む)を擁すると、サーバーのこれ以上のレンダリング操作は不要で、またビデオストリーミングフレームのこれ以上の伝送も不要である(パーツ75)。
サーバーがユーザーデバイス74に伝送する必要があるのは、3Dモデルの解釈データ(人71a及び家72aを含む)だけである。
ユーザーデバイスは自ら、すべての3Dモデルをレンダリングし、相同のアウトプット結果を得る。
図6A、6B及び6Cは、本発明方法において、音声を備えるビデオストリーミング及び3D音声をいかにして伝送するかを示す実施形態の模式図である。
図6Aに示すとおり、初期ユーザーデバイス 74が サーバー70上で動作するアプリケーションプログラムにログインしても、一切の3D音声は、ユーザーデバイス中にプレ保存されていない。
よって、サーバーは、すべての3D音声(音声81及びその後の音声82を含む)をレンダリングする。
すべての3D音声は、ユーザーデバイスのスピーカー上に現れ、サーバーは、レンダリング結果を、音声を備えるビデオストリーミングフレーム83にエンコードする。
続いて、この音声を備えるビデオストリーミングフレーム83を、ユーザーデバイス74に伝送する。
この段階において、音声を備えるビデオストリーミングフレーム83は、音声81及び音声82を含む。
ユーザーデバイス74は、この音声を備えるビデオストリーミングフレーム83だけをアウトプットし、他の音声をレンダリング(再生)する必要はない。
続いて、図6Bに示すとおり、サーバー70は、ユーザーデバイススクリーンに最も近い3Dプロジェクション面の3D音声から開始し、3D音声の、ユーザーデバイスへの伝送を開始する。
本実施形態中では、音声82と比較し、音声81は3Dプロジェクション面(或いは使用者の目)に近い。
よって、音声81の3D音声は、先にユーザーデバイス74に伝送され、音声81の3D音声が伝送され、ユーザーデバイス74上に保存された後、ユーザーデバイス74はメッセージをサーバー70に伝送し、音声81がユーザーデバイス74中にプレ保存されると知らせる。
この後、サーバー70は音声82をレンダリングし、そのレンダリング結果を音声を備える2Dビデオストリーミングフレーム83aにエンコードし、このフレーム83a及び音声81の解釈データを、ユーザーデバイス74に伝送する。
ユーザーデバイス74は続いて解釈データを自動的に利用し、音声をレンダリング(再生)し、さらに音声のレンダリング結果とフレーム83a(音声を含む)とを結び付け、相同のアウトプット結果を得る。
このプロセス(例えば、サーバーは一回に一個の方式で3D音声をユーザーデバイス74に伝送する)は、ユーザーデバイスのスピーカー上に再生される必要があるすべての3D音声が伝送され、及びユーザーデバイス74中にプレ保存されるまで、何度も繰り返される。
図6Cに示すとおり、ユーザーデバイス74がすべての3D音声(音声81と音声82の3D音声を含む)を擁すると、サーバーのこれ以上のレンダリング操作は不要で、つまりビデオストリーミングフレーム(パーツ85)は画像だけを含み、音声を含まない。
サーバーは、3D音声81の解釈データ(音声を含む81a及び音声82a)をユーザーデバイス74に伝送する必要だけがある。
ユーザーは続いて、すべての3D音声を自らレンダリング(再生)し、相同のアウトプット結果を得る。
図5A、5B及び5Cは、本発明方法において、どの3Dモデルがフレームにエンコードされるべきかをいかにして決定するかを示す実施形態の模式図である。
本発明において、サーバーは、レンダリングされるべきすべての3Dモデルを所定の順序で配列する。
この所定の順序は、バーチャル位置(ユーザーデバイススクリーンの3Dプロジェクション面52、或いは使用者の目51)に対して、近くから遠くへの順序である。
図5Aに示すとおり、4個のオブジェクトA、B、C及びDを、ユーザーデバイスのスクリーン上に表示する必要があり、中でも、オブジェクトAはプロジェクション面52に最も近く、次はオブジェクトB、オブジェクトC及びオブジェクトDである。
初期ユーザーデバイスがサーバー70上で動作するアプリケーションプログラムにログインしても、一切の3D音声は、ユーザーデバイス中にプレ保存されていない。
よって、サーバーはすべてのオブジェクトA、オブジェクトB、オブジェクトC及びオブジェクトDをレンダリングし、レンダリング結果を、ビデオストリーミングフレームにエンコードし、このフレーム73を、ユーザーデバイス74に伝送する。
同時に、サーバーは、一つ一つ所定の順序に基づき、オブジェクトA、オブジェクトB、オブジェクトC及びオブジェクトD等の3Dモデルの伝送を開始し、オブジェクトAの3Dモデルが先に伝送される。
ユーザーデバイス上に表示されるすべての3Dモデルの伝送が完了するまで、次にオブジェクトB、オブジェクトC及びオブジェクトDを伝送する。
図5Bに示すとおり、オブジェクトA及びBの3Dモデルがユーザーデバイス中にプレ保存された後、サーバーが、前提に基づき、近くから遠くへの所定順序で、3Dモデルの状態をチェックする時、サーバーは、オブジェクトCは一個目のユーザーデバイス中にプレ保存されていないオブジェクトだと発見する。
よって、サーバーは、オブジェクトC、及びオブジェクトC後に位置するすべて他のオブジェクト(オブジェクトDなど)を、オブジェクトDの3Dモデルがユーザーデバイス中にプレ保存されているか否かに関わらず、レンダリングする。
この時、サーバーはオブジェクトA及びBの3Dモデルに対してレンダリングを行わないため、この時オブジェクトA及びBは既にユーザーデバイス中にプレ保存され、またオブジェクトCの前にある。
図5Cに示すとおり、新しいオブジェクトEが、アプリケーションプログラムが創造するバーチャル3D環境中に表示されると、このオブジェクトユーザーデバイス中にプレ保存されているか否かに関わらず、オブジェクトE及びその後のすべてオブジェクトはどれもサーバーにレンダリングされる。
例えば、図5Cに示すとおり、オブジェクトB、オブジェクトC及びオブジェクトDと比較し、新しいオブジェクトEは、3Dプロジェクション面52に比較的近い。
オブジェクトBの3Dモデルは既にユーザーデバイス中にプレ保存されているが、オブジェクトBは、新しいオブジェクトEの後に位置するため、サーバーは、たとえオブジェクトBのわずかな部分が、その前面の他のオブジェクトに覆われていたとしても、すべてのオブジェクトE、C、B及びDに対して、レンダリングを行う。
図7A、7B及び7Cは、本発明方法において、どの3D音声が音声を備えるビデオストリーミングフレームにエンコードされるべきかをいかにして決定するかを示す一実施形態の模式図である。
本発明において、サーバーは、レンダリングが必要なすべての3D音声を所定の順序で配列する。
この所定の順序は、バーチャル位置(ユーザーデバイススクリーンの3Dプロジェクション面52、或いは使用者の目51)に対して、近くから遠くへの順序である。
図7Aに示すとおり、4個の3D音声A、B、C及びDは、ユーザーデバイスのスピーカー上で再生される必要がある。
その内、音声Aはプロジェクション面52に最も近く、次は音声B、音声C及び音声Dである。
初期ユーザーデバイスがサーバー70上で動作するアプリケーションプログラムにログインしても、一切の3D音声は、ユーザーデバイス中にプレ保存されていない。
よって、サーバーは、すべての音声A、音声B、音声C及び音声Dをレンダリングし、レンダリング結果を、音声を備えるビデオストリーミングフレーム83にエンコードし、このフレーム73を、ユーザーデバイス74に伝送する。
同時に、サーバーは、すべての3D音声がユーザーデバイスに保存されるまで、所定の順序に基づき、音声Aの3D音声を先に伝送し、次に順番に音声B、音声C及び音声Dを伝送し、音声A、音声B、音声C及び音声Dのデータを一つ一つ伝送する。
図7Bに示すとおり、音声A及びBの3D音声がユーザーデバイス中にプレ保存されると、サーバーは、前提に基づき、近くから遠くへの所定順序で、3D音声の状態をチェックし、サーバーは音声Cが一個目のユーザーデバイス中にプレ保存されていない音声であることを発見する。
よって、サーバーは、音声C及び音声C後に位置するすべて他の音声(音声Dなど)をレンダリングし、この段階において、音声A及びBは既にユーザーデバイス中にプレ保存されているので、サーバーは、音声A及びBの3D音声に対してはレンダリングを行わない。
図7Cに示すとおり、新しい音声Eがアプリケーションプログラムが作り出すバーチャル3D環境中に出現すると、音声Eは、サーバーにレンダリングされるが、このレンダリングは、他の音声のレンダリングに影響しない。
これは、図5C中に示す3Dモデルとは異なり、図7Cに示すとおり、音声B、音声C及び音声Dと比較すると、新しい音声Eは、3Dプロジェクション面52に近く、図5C中の3Dモデルとは異なり、ユーザーデバイス中にプレ保存される音声(音声A及びBなど)は、ユーザーデバイスによりレンダリングされるが、ユーザーデバイスにプレ保存される音声(音声E、C及びDなど)ではなく、サーバーがレンダリングする。
上記の本発明名称と内容は、本発明技術内容の説明に用いたのみで、本発明を限定するものではない。本発明の精神に基づく等価応用或いは部品(構造)の転換、置換、数量の増減はすべて、本発明の保護範囲に含むものとする。
本発明は特許の要件である新規性を備え、従来の同類製品に比べ十分な進歩を有し、実用性が高く、社会のニーズに合致しており、産業上の利用価値は非常に大きい。
1 サーバー
3 ネットワーク(アクセスポイント)
4 ネットワーク
21 ユーザーデバイス(スマートフォン)
22 ユーザーデバイス(ノート型コンピューター)
23 ユーザーデバイス(デスクトップコンピューター)
51 使用者の目
52 プロジェクション面
70 サーバー
71、71a 人
72、72a 家
73、73a ビデオストリーミングフレーム
74 ユーザーデバイス
75 ビデオストリーミングフレーム
81、81a 音声
82、82a 音声
83、83a ビデオストリーミングフレーム
85 ビデオストリーミングフレーム
100 アプリケーションプログラム
110 3Dシーントランスミッター(プログラムライブラリー)
120 3Dシーンサーバー
170 3Dシーンユーザーエンド(プログラム)
190 3Dシーンキャッシュ

Claims (15)

  1. ネットワークを通してメディアを伝送する方法において、該メディアは複数の画像及び音声を備え、以下のステップを含み、
    ステップ(A):サーバー上でアプリケーションプログラムを執行し、複数の3Dモデル及び3D音声を含むバーチャル3D環境を産生し、該各3Dモデル及び3D音声は、該3Dモデル或いは3D音声を、ユーザーデバイス中にプレ保存するか否かの状態の指示に対応し、
    ステップ(B):該サーバーは、該各3Dモデル及び3D音声の状態をチェックし、どの3Dモデル或いは3D音声を、音声を備える2Dビデオストリーミングフレームにエンコードするべきかを決定し、そのエンコード方式は、該ユーザーデバイス中にプレ保存されていない各3Dモデル及び3D音声エンコードを、該フレーム中にエンコードし、
    ステップ(C):該サーバーは、該音声を備える2Dビデオストリーミングフレームを、ネットワークを通して、該ユーザーデバイスに伝送し、該サーバーは、該ユーザーデバイス中にプレ保存されていない各3Dモデル及び3D音声を、所定の順序に基づき、該ユーザーデバイスに伝送し、該ユーザーデバイスが、該サーバーから送られて来た各3Dモデル或いは3D音声を受け取ると、該ユーザーデバイスは、該各3Dモデル或いは3D音声を保存し、メッセージを該サーバーに発信し、該各3Dモデル或いは3D音声の状態を改変させ、該各3Dモデル或いは3D音声を現在、該ユーザーデバイス中にプレ保存するよう指示し、
    ステップ(D):該ユーザーデバイスは、該サーバーからのフレームを受け取りデコードし、該フレームを利用し、該各ユーザーデバイス中にプレ保存されるが、該フレーム中に含まれない3Dモデルと3D音声のバックグラウンド画面とバックグラウンドオーディオをレンダリングし、これによりアウトプットされる音声を備えるビデオストリーミング混合フレームを産生することを特徴とするネットワークを通してメディアを伝送する方法。
  2. 前記ステップ(B)において、該各3Dモデルの状態は、該サーバーにより、該バーチャル位置に最も近い点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、
    チェック中に、該ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該発見された3Dモデルを含むすべての他の3Dモデルを、該フレーム中にエンコードし、
    しかもステップ(B)において、該各3D音声の状態は、該サーバーにより、該バーチャル位置に最も近い点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、チェック中に、該ユーザーデバイス中にプレ保存されていない任意の3D音声を発見すると、該3D音声を、該音声を備える2Dビデオストリーミング混合フレーム中にエンコードすることを特徴とする請求項1に記載のネットワークを通してメディアを伝送する方法。
  3. 前記新しい3Dモデルが前記3D環境中に出現すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該新しい3Dモデルを含むその後のすべての3Dモデルを、該フレーム中にエンコードし、
    該バーチャル位置は、3Dプロジェクション面であることを特徴とする請求項2に記載のネットワークを通してメディアを伝送する方法。
  4. 前記ステップ(C)において、該サーバーが、該ユーザーデバイス中にプレ保存されていない該各3Dモデル及び3D音声を、該ユーザーデバイスに伝送する所定順序は、該バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への順序で、
    該ステップ(C)において、該サーバーは、該フレーム中にエンコードされていない3Dモデル及び3D音声の状態情報を、該ユーザーデバイス中に伝送し、該ユーザーデバイスが、該状態情報を受け取り及びチェックする時には、以下の方式に基づき行い、
    受け取った該状態情報中の任意の3Dモデル或いは3D音声が、該デバイス中にプレ保存されていないなら、該ユーザーデバイスは、該サーバーに、該3Dモデル或いは3D音声をダウンロードするように請求を送信し、
    該状態情報は、該音声を備える2Dビデオストリーミングフレーム中にエンコードされていない解釈データを含み、該各3Dモデルの該解釈データは、該3Dモデルの名称、位置、速度、ディレクション、及び属性を含むことを特徴とする請求項1に記載のネットワークを通してメディアを伝送するシステム。
  5. ネットワークを通してメディアを伝送するシステムは、サーバー、ユーザーデバイスを備え、
    該サーバーは、アプリケーションプログラムを執行し、複数の3Dモデル及び3D音声を含むバーチャル3D環境を産生し、該各3Dモデル及び3D音声は、該3Dモデル或いは該3D音声を、ユーザーデバイス中にプレ保存するか否かを指示する状態に対応し、
    該ユーザーデバイスは、ネットワークを通して該サーバーに連結し、該アプリケーションプログラムにより産生する少なくともいくらかの該3Dモデル及び該3D音声を含む該メディアを取得し、
    該メディアは、複数の画像及び音声を含み、該複数の画像及び音声の伝送方式は、以下を含み、
    ステップ(B):該サーバーは、該各3Dモデル及び3D音声の状態をチェックし、どの3Dモデル或いは3D音声を、音声を備える2Dビデオストリーミングフレームにエンコードするべきかを決定し、そのエンコード方式は、該ユーザーデバイス中にプレ保存されていない各3Dモデル及び3D音声エンコードを、該フレーム中にエンコードし、
    ステップ(C):該サーバーは、該音声を備える2Dビデオストリーミングフレームを、ネットワークを通して、該ユーザーデバイスに伝送し、該サーバーは、該ユーザーデバイス中にプレ保存されていない各3Dモデル及び3D音声を、所定の順序に基づき、該ユーザーデバイスに伝送し、該ユーザーデバイスが、該サーバーから送られて来た各3Dモデル或いは3D音声を受け取ると、該ユーザーデバイスは、該各3Dモデル或いは3D音声を保存し、メッセージを該サーバーに発信し、該各3Dモデル或いは3D音声の状態を改変させ、該各3Dモデル或いは3D音声を現在、該ユーザーデバイス中にプレ保存するよう指示し、
    ステップ(D):該ユーザーデバイスは、該サーバーからのフレームを受け取りデコードし、該フレームを利用し、該各ユーザーデバイス中にプレ保存されるが、該フレーム中の該各3Dモデル及び3D音声を含まないバックグラウンド画面とバックグラウンドオーディオをレンダリングし、これにより、アウトプットされる音声を備えるビデオストリーミング混合フレームを産生し、
    ステップ(E):該ユーザーデバイスは該混合フレームを計算し、アウトプットされる音声を備えるビデオストリーミングのフレームとすることを特徴とするネットワークを通してメディアを伝送するシステム。
  6. 前記ステップ(B)において、該各3Dモデルの状態は、該サーバーにより、バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、チェック中に、該ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該発見された3Dモデルを含むすべての他の3Dモデルを、該フレーム中にエンコードし、
    しかも、該ステップ(B)において、該各3D音声の状態は、該サーバーにより、該バーチャル位置に最も近い点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、チェック中に、該ユーザーデバイス中にプレ保存されていない任意の3D音声を発見すると、該3D音声を、該音声を備える2Dビデオストリーミングフレーム中にエンコードし、
    新しい3Dモデルが該3D環境中に出現すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、即將該新しい3Dモデルを含む他のすべての3Dモデルを、該フレーム中にエンコードすることを特徴とする請求項5に記載のネットワークを通してメディアを伝送するシステム。
  7. 前記ステップ(C)において、該サーバーが、該ユーザーデバイス中にプレ保存されていない該各3Dモデル及び3D音声を、該ユーザーデバイスに伝送する所定順序は、該バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への順序で、
    該ステップ(C)において、該サーバーはまた、該フレーム中にエンコードされていない3Dモデル、すなわち3D音声の状態情報を、該ユーザーデバイス中に伝送し、該ユーザーデバイスが、該状態情報を受け取り及びチェックする時には、以下の方式に基づき行い、受け取った該状態情報中の任意の3Dモデル或いは3D音声が、該デバイス中にプレ保存されていないなら、該ユーザーデバイスは該サーバーに、該3Dモデル或いは該3D音声をダウンロードするよう請求を送信し、該状態情報は、該フレーム中にエンコードされていない該3Dモデル及び該3D音声の解釈データを含み、該各3Dモデル或いは該3D音声の該解釈データは、該3Dモデル或いは該3D音声の名称、位置、速度、ディレクション、及び属性を含むことを特徴とする請求項5に記載のネットワークを通してメディアを伝送するシステム。
  8. 前記サーバーは、3Dシーントランスミッター、3Dシーンサーバーをさらに備え、
    該3Dシーントランスミッターは、該アプリケーションプログラム中、或いは執行時間中において、該アプリケーションプログラム上に動態連結されるプログラムライブラリーをコンパイルし、
    該3Dシーントランスミッターは、すべての3Dモデル及び3D音声及び各3Dモデル或いは3D音声状態を含むリストを保有し、該状態は、該3Dモデル或いは該3D音声の状態を“Not Ready (準備中)”、“Loading (ダウンロード中)”及び“Ready for Client(ユーザーはダウンロード済み)”の内の何れか一つで示しており、
    該3Dシーンサーバーは、アプリケーションプログラムにより、サーバー上で執行されるサーバープログラムで、該3Dシーンサーバーは、該3Dシーントランスミッターと該ユーザーデバイスとの間のメッセージ伝達の中継点となり、該3Dシーンサーバーはまた、該ユーザーデバイスが、該サーバーより、必要な3Dモデル及び3D音声をダウンロードするダウンロードサーバープログラムともなり、
    該ユーザーデバイスは、3Dシーンユーザーエンド、3Dシーンキャッシュをさらに備え、
    該3Dシーンユーザーエンドは、該ユーザーデバイス上で動作するプログラムで、該アウトプットビデオストリーミングを産生し、ネットワークを通してと該サーバーと通じ、
    該3Dシーンキャッシュは、前以て該サーバーからダウンロードした少なくとも一個の該3Dモデル及び該3D音声を保存することを特徴とする請求項5に記載のネットワークを通してメディアを伝送するシステム。
  9. ネットワークを通してメディアを伝送する方法において、該メディアは、複数の画像及び音声を含み、
    該方法は、以下のステップを含み、
    ステップ(A):サーバー上でアプリケーションプログラムを執行し、複数の3Dモデル及び3D音声を含むバーチャル3D環境を産生し、該各3Dモデル及び3D音声は、該3Dモデル或いは該3D音声を、ユーザーデバイス中にプレ保存するか否かを指示する状態に対応し、
    ステップ(B):該サーバーは、該各3D音声の状態をチェックし、どの3D音声を、音声を備える2Dビデオストリーミングフレームにダウンロードする必要があるかを決定し、そのエンコード方式は、該ユーザーデバイス中にプレ保存されない該各3D音声を、該音声を備える2Dビデオストリーミングフレーム中にエンコードし、
    ステップ(C):該サーバーは、該音声を備える2Dビデオストリーミングフレームを、ネットワークを通して、該ユーザーデバイスに伝送し、該サーバーは、該ユーザーデバイス中にプレ保存されていない該各3D音声を、所定の順序に基づき、該ユーザーデバイスに伝送し、
    該ユーザーデバイスが、該サーバーから送られて来た該各3D音声を受け取ると、該ユーザーデバイスは、該各3D音声を保存し、メッセージを該サーバーに発信し、該各3D音声の状態を改変し、該各3D音声を現在該ユーザーデバイス中にプレ保存するよう指示し、
    ステップ(D):該ユーザーデバイスは、該サーバーから受け取った該音声を備える2Dビデオストリーミングフレームをデコードし、該音声を備える2Dビデオストリーミングフレームを利用し、該各ユーザーデバイス中にプレ保存されるが、該音声を備える2Dビデオストリーミングフレーム中に含まれない3D音声のバックグラウンドオーディオをレンダリングし、これによりアウトプットされる音声を備えるビデオストリーミング混合フレームを産生することを特徴とするネットワークを通してメディアを伝送する方法。
  10. 前記ネットワークを通してメディアを伝送する方法は、
    該ステップ(A)において、該各3Dモデルは、該3Dモデルを該ユーザーデバイス中にプレ保存するか否か指示の状態に対応し、
    該ステップ(B)において、該サーバーは、該各3D音声の状態をチェックし、これによりどの3D音声を、音声を備える2Dビデオストリーミングフレーム中にエンコードするかを決定し、その実施方式は、該ユーザーデバイス中にプレ保存されていない任意の3D音声を発見すると、該3D音声を、該音声を備える2Dビデオストリーミングフレーム中にエンコードし、
    該ステップ(B)において、該各3Dモデルの状態は、該サーバーにより、バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、チェック中に、該ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該発見された3Dモデルの他のすべての3Dモデルを、該音声を備える2Dビデオストリーミングフレーム中にエンコードし、
    該ステップ(C)において、該サーバーはまた、該各ユーザーデバイス中にプレ保存されていない3Dモデルを、該バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への所定順序で、該ユーザーデバイス中に伝送し、該ユーザーデバイスが該サーバーから送られて来た該各3Dモデルを受け取ると、該ユーザーデバイスは、該各3Dモデルを保存し、メッセージを該サーバーに発信し、該各3Dモデルの状態を改変し、該各3Dモデルを現在該ユーザーデバイス中にプレ保存するよう指示することを特徴とする請求項9に記載のネットワークを通してメディアを伝送する方法。
  11. 前記新しい3Dモデルが該3D環境中に出現すると、他の該各3Dモデルが該ユーザーデバイス中にプレ保存されているか否かに関わらず、該新しい3Dモデルを含むすべての3Dモデルを、該フレーム中にエンコードし、該バーチャル位置は、3Dプロジェクション面であることを特徴とする請求項10に記載のネットワークを通してメディアを伝送する方法。
  12. 前記ステップ(C)において、該サーバーは、該フレーム中にエンコードされていない3Dモデル及び3D音声の状態情報を、該ユーザーデバイス中に伝送し、該ユーザーデバイスが、該状態情報を受け取り及びチェックする時には、以下の方式に基づき行い、受け取った該状態情報中の任意の3Dモデル或いは3D音声が、該デバイス中にプレ保存されていないなら、該ユーザーデバイスは、該サーバーに、該3Dモデル或いは3D音声をダウンロードするように請求を送信し、該状態情報は、該音声を備える2Dビデオストリーミングフレーム中にエンコードされていない解釈データを含み、該解釈データは、該3Dモデル或いは3D音声の名称、位置、速度、ディレクション、及び属性を含むことを特徴とする請求項10に記載のネットワークを通してメディアを伝送する方法。
  13. ネットワークを通してメディアを伝送する方法において、該メディアは複数の画像及び音声を含み、
    該方法は、以下のステップを含み、
    ステップ(A):サーバー上でアプリケーションプログラムを執行し、複数の3Dモデルを含むバーチャル3D環境を産生し、該各3Dモデルは、該3Dモデルを、ユーザーデバイス中にプレ保存するか否かを指示する状態に対応し、
    ステップ(B):該サーバーは、該各3Dモデルの状態をチェックし、該3Dモデルを、音声を備える2Dビデオストリーミングフレームにエンコードするかを決定し、そのエンコード方式は、該ユーザーデバイス中にプレ保存されていない該各3Dモデルを、該フレーム中にエンコードし、該各3Dモデルの状態は、該サーバーにより、バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への順序で、チェックされ、チェック中に、該ユーザーデバイス中にプレ保存されていない一個目の3Dモデルを発見すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該発見された3Dモデルを含むすべての他の3Dモデルを、該フレーム中にエンコードし、
    ステップ(C):ステップ(B)において、該サーバーが、任意の3Dモデルを、該フレーム中にエンコードする時、該サーバーは、少なくとも該2Dビデオストリーミングのフレームを、ネットワークを通して、該ユーザーデバイスに伝送し、該ステップ(C)中において、該サーバーはまた、該各ユーザーデバイス中にプレ保存されていない3Dモデルを、該バーチャル位置に最も近い一点から、該バーチャル位置から最も遠いもう一つの点への所定順序で、該ユーザーデバイス中に伝送し、該ユーザーデバイスが該サーバーから送られて来た該各3Dモデルを受け取ると、該ユーザーデバイスは、該各3Dモデルを保存し、メッセージを該サーバーに発信し、該各3Dモデルの状態を改変し、該各3Dモデル音声を現在該ユーザーデバイス中にプレ保存するよう指示し、もし該各3Dモデルがすべて該ユーザーデバイス中にプレ保存されているなら、該サーバーはこれ以上エンコードする必要はなく、また該2Dビデオストリーミングのフレームを伝送する必要もなく、
    ステップ(D):該ユーザーデバイスは、該サーバーからのフレームを受け取りデコードし、該フレームを利用し、該各ユーザーデバイス中にプレ保存されるが、該フレーム中に含まれない3Dモデルのバックグラウンド画面とバックグラウンドオーディオをレンダリングし、これにより混合フレームを産生することを特徴とするネットワークを通してメディアを伝送する方法。
  14. 前記新しい3Dモデルが該3D環境中に出現すると、その後の各3Dモデルが、該ユーザーデバイス中にプレ保存されるか否かに関わらず、該新しい3Dモデルを含む他のすべての3Dモデルを、該フレーム中にエンコードし、
    該バーチャル位置は該ユーザーデバイススクリーンの3Dプロジェクション面であることを特徴とする請求項13に記載のネットワークを通してメディアを伝送する方法。
  15. 前記ステップ(C)において、該サーバーは、該フレーム中にエンコードされていない3Dモデルの状態情報を、該ユーザーデバイス中に伝送し、該ユーザーデバイスが、該状態情報を受け取り及びチェックする時には、以下の方式に基づき行い、
    もし、受け取った該状態情報中の任意の3Dモデルが、該デバイス中にプレ保存されていないなら、該ユーザーデバイスは該サーバーに該3Dモデルをダウンロードする請求を送信し、
    該状態情報は、該フレーム中にエンコードされていない解釈データを含み、該各3Dモデルの該解釈データは、該3Dモデルの名称、位置、速度、ディレクション、及び属性を含むことを特徴とする請求項13に記載のネットワークを通してメディアを伝送する方法。
JP2014261622A 2014-01-02 2014-12-25 ネットワークを通してメディアを伝送するシステム及び方法 Active JP5913554B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/146,343 US8860720B1 (en) 2014-01-02 2014-01-02 System and method for delivering graphics over network
US14/146,343 2014-01-02

Publications (2)

Publication Number Publication Date
JP2015130164A true JP2015130164A (ja) 2015-07-16
JP5913554B2 JP5913554B2 (ja) 2016-05-11

Family

ID=51661127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014261622A Active JP5913554B2 (ja) 2014-01-02 2014-12-25 ネットワークを通してメディアを伝送するシステム及び方法

Country Status (5)

Country Link
US (1) US8860720B1 (ja)
JP (1) JP5913554B2 (ja)
KR (1) KR101664146B1 (ja)
CN (1) CN104768023B (ja)
TW (1) TWI528794B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017117431A (ja) * 2015-12-21 2017-06-29 ユービッタズ アイエンシーUbitus Inc. ネットワークを通してメディアを伝送するシステム及び方法
JP2020151494A (ja) * 2015-08-19 2020-09-24 ソニー・インタラクティブエンタテインメント エルエルシー クライアント側のアセット統合を用いたクラウドゲームストリーミング

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106713889B (zh) * 2015-11-13 2019-05-28 中国电信股份有限公司 3d画面的渲染方法和系统、及移动终端
CN106851394A (zh) * 2017-01-18 2017-06-13 广东小天才科技有限公司 一种背景音乐切换方法和装置
EP3547704A1 (en) * 2018-03-30 2019-10-02 Thomson Licensing Method, apparatus and stream for volumetric video format
CN109492128B (zh) * 2018-10-30 2020-01-21 北京字节跳动网络技术有限公司 用于生成模型的方法和装置
CN117234455B (zh) * 2023-11-14 2024-04-19 深圳市齐奥通信技术有限公司 基于环境感知的音频装置智能控制方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377257B1 (en) * 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
US6384821B1 (en) * 1999-10-04 2002-05-07 International Business Machines Corporation Method and apparatus for delivering 3D graphics in a networked environment using transparent video
US20040207662A1 (en) * 2003-04-16 2004-10-21 Anderson Daryl E. User interface, method and apparatus for providing three-dimensional object fabrication status
US20070146372A1 (en) * 2005-12-09 2007-06-28 Digital Steamworks, Llc System, method and computer program product for creating two dimensional (2D) or three dimensional (3D) computer animation from video
JP2013254501A (ja) * 2008-01-17 2013-12-19 Vivox Inc アバタ別にレンダリングされる環境を用いる仮想現実システムにおいてリアルタイムのアバタ別のストリーミングデータを提供するスケーラブルな技法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010085150A (ko) * 2000-02-29 2001-09-07 곽태영 카메라와 화면 캡쳐를 이용한 인터넷 분산 방송 시스템
KR20010025417A (ko) * 2000-12-26 2001-04-06 손영철 인터넷사이트상의 홈쇼핑채널광고 또는 전자우편을 이용한홈쇼핑방송서비스 방법 및 시스템
KR100666956B1 (ko) 2005-03-08 2007-01-10 삼성전자주식회사 네트워크에서의 미디어 전송 장치 및 방법
JP4177381B2 (ja) * 2006-03-01 2008-11-05 株式会社スクウェア・エニックス 画像生成方法、画像生成装置、および画像生成プログラム
US20100304862A1 (en) * 2009-05-29 2010-12-02 Coleman J Todd Collectable card-based game in a massively multiplayer role-playing game that presents real-time state information
CN102355489B (zh) * 2011-08-17 2015-03-04 焦秀琴 通过网络显示与操作3d游戏的方法、系统、服务器及客户端
US20130120378A1 (en) * 2011-11-15 2013-05-16 Trimble Navigation Limited Progressively providing software components for browser-based 3d modeling

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377257B1 (en) * 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
US6384821B1 (en) * 1999-10-04 2002-05-07 International Business Machines Corporation Method and apparatus for delivering 3D graphics in a networked environment using transparent video
US20040207662A1 (en) * 2003-04-16 2004-10-21 Anderson Daryl E. User interface, method and apparatus for providing three-dimensional object fabrication status
US20070146372A1 (en) * 2005-12-09 2007-06-28 Digital Steamworks, Llc System, method and computer program product for creating two dimensional (2D) or three dimensional (3D) computer animation from video
JP2013254501A (ja) * 2008-01-17 2013-12-19 Vivox Inc アバタ別にレンダリングされる環境を用いる仮想現実システムにおいてリアルタイムのアバタ別のストリーミングデータを提供するスケーラブルな技法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6015048564; 四倉達夫, 外4名: '"仮想人物によるサイバースペース上でのコミュニケーションシステムの構築"' 電子情報通信学会技術研究報告 第98巻, 第683号, 19990323, p.39-46, 社団法人電子情報通信学会 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020151494A (ja) * 2015-08-19 2020-09-24 ソニー・インタラクティブエンタテインメント エルエルシー クライアント側のアセット統合を用いたクラウドゲームストリーミング
JP2017117431A (ja) * 2015-12-21 2017-06-29 ユービッタズ アイエンシーUbitus Inc. ネットワークを通してメディアを伝送するシステム及び方法

Also Published As

Publication number Publication date
KR20150080903A (ko) 2015-07-10
TWI528794B (zh) 2016-04-01
JP5913554B2 (ja) 2016-05-11
US8860720B1 (en) 2014-10-14
CN104768023A (zh) 2015-07-08
KR101664146B1 (ko) 2016-10-10
TW201541948A (zh) 2015-11-01
CN104768023B (zh) 2018-03-23

Similar Documents

Publication Publication Date Title
JP5913554B2 (ja) ネットワークを通してメディアを伝送するシステム及び方法
US9370718B2 (en) System and method for delivering media over network
JP6310073B2 (ja) 描画システム、制御方法、及び記憶媒体
US11617947B2 (en) Video game overlay
JP2020151494A (ja) クライアント側のアセット統合を用いたクラウドゲームストリーミング
JP6306089B2 (ja) ネットワークを通してメディアを伝送するシステム及び方法
JP5624224B2 (ja) データ提供システム、提供装置、実行装置、制御方法、プログラム、及び記録媒体
US9233308B2 (en) System and method for delivering media over network
CN113209632B (zh) 一种云游戏的处理方法、装置、设备及存储介质
US20220193540A1 (en) Method and system for a cloud native 3d scene game
JPWO2015011762A1 (ja) 画像生成システムおよび画像生成用プログラム
CN104998412A (zh) 一种单机游戏实现方法及装置
JP6379107B2 (ja) 情報処理装置並びにその制御方法、及びプログラム
US20230079893A1 (en) Multi-Viewpoint Multi-User Audio User Experience
KR102441514B1 (ko) 하이브리드 스트리밍
CN115220906A (zh) 音频/视频合成应用的云执行
JP2016527576A (ja) 情報処理装置、制御方法、プログラム及び記録媒体
JP2016509486A (ja) ネットワークを介して送信するためのビデオゲーム画面画像の生成及び符号化を行う方法及びシステム
CN110536171B (zh) 互动场景中的多媒体处理方法、装置及电子设备
JP5932892B2 (ja) コンテンツ提供システム、コンテンツ提供機器、コンテンツ再生機器、制御方法、プログラム、及び記録媒体
KR20130046892A (ko) 분할 디스플레이를 위한 데이터 관리 장치, 시스템 및 방법과 그 기록 매체
CN112402943A (zh) 加入或重放来自游戏广播的游戏实例

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160203

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: 20160314

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160401

R150 Certificate of patent or registration of utility model

Ref document number: 5913554

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250