JP2008048182A - 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム - Google Patents
通信処理装置、および通信制御方法、並びにコンピュータ・プログラム Download PDFInfo
- Publication number
- JP2008048182A JP2008048182A JP2006222223A JP2006222223A JP2008048182A JP 2008048182 A JP2008048182 A JP 2008048182A JP 2006222223 A JP2006222223 A JP 2006222223A JP 2006222223 A JP2006222223 A JP 2006222223A JP 2008048182 A JP2008048182 A JP 2008048182A
- Authority
- JP
- Japan
- Prior art keywords
- reproduction
- data
- recording
- retransmission request
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
- H04L1/1838—Buffer management for semi-reliable protocols, e.g. for less sensitive applications such as streaming video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1848—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4627—Rights management associated to the content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/637—Control signals issued by the client directed to the server or network components
- H04N21/6375—Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8355—Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Communication Control (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
【課題】受信データの再生処理、または記録と再生処理の各処理態様に適応した再送制御を行う構成を提供する。
【解決手段】ストリーミングデータ受信を実行する通信処理装置において、通信処理装置の処理状態が(1)「再生のみ」を実行する状態、または、(2)「再生+記録」を実行する状態、これらのいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう。本構成により、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上が実現される。
【選択図】図3
【解決手段】ストリーミングデータ受信を実行する通信処理装置において、通信処理装置の処理状態が(1)「再生のみ」を実行する状態、または、(2)「再生+記録」を実行する状態、これらのいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう。本構成により、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上が実現される。
【選択図】図3
Description
本発明は、通信処理装置、および通信制御方法、並びにコンピュータ・プログラムに関する。特に、受信データの再生処理や記録処理を実行する装置において、実行する処理が再生処理のみであるか、記録処理を伴う再生処理であるか等の処理状況に応じて最適な通信制御を実行する通信処理装置、および通信制御方法、並びにコンピュータ・プログラムに関する。
ブロードバンドネットワークの普及とともに、画像データ等データ量の大きいデータ通信もリアルタイム再生が可能となってきている。例えば、IP電話やTV電話などでは、音声に併せて画像データを送信し、双方でリアルタイム再生を行ない、双方向コミュニケーションが実現される。
データを実時間(リアルタイム)で通信する通信手法は、ストリーミング通信と呼ばれる。ストリーミングを行うためのプロトコルとしては、例えば、HTTP(Hyper Texttransfer Protocol)ストリーミングなどのTCP上でのストリーミング・プロトコルがある。このTCP通信では、途中のネットワークでパケットロスが発生した場合、受信側から再送要求が自動的に実行され、確実なパケットの送受信が実現される。すなわち、TCPを利用した通信では、自動的に再送要求を行い、確実に正しい順序で受信アプリケーションにパケットが届く設定となっている。
しかし、このTCP(Transmission Control Protocol)による通信は、再送要求が頻繁に発生すると大きな遅延が発生してしまうので、リアルタイム性の必要なストリーミング配信には適さない。
一方、RTP(Real−time Transport Protocol、RFC3550)ストリーミングなどUDP(User Datagram Protocol)上でのストリーミング配信は、途中のネットワークでパケットロスが発生しても、原則としてデータ受信側からの再送要求は行なわない。従って、遅延の発生が少なく、リアルタイム性が必要な場合には、UDP上でのストリーミングが用いられることが多い。しかし、RTPやUDPを適用した通信ではパケットロスによる消失データが受信アプリケーションに届かないという問題がある。
このRTPやUDPにおける問題を解決する構成として、受信データの処理を実行するアプリケーションの判断で、例えば安定した再生を行うためにデータが必要と判断した場合、ストリーミング送信側に対してパケット再送を要求する構成がある。しかし、このような再送要求を行うと、上述したTCPと同じように遅延が発生することになる。
例えばストリーミング再生のパケット消失が発生し、再送要求がなされた後、遅延して受信しパケットが再生処理に間に合わない場合は、結果としてデータ送受信双方での処理が増え、ネットワークに無駄なパケットを流すというデメリットを発生させるのみとなる。このような問題を解決する手法として、特許文献1(特許第3757857)には、必要に応じて「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なう構成を開示している。
例えば、インターネットを介して動画データを受信して記録(保存)する場合には、リアルタイム性が必要ではないこともある。このような場合、一般的には確実にデータが届くHTTP(TCP)によるダウンロードが用いられる。一方、ストリーミング再生を行い、かつそのストリーミング受信データの記録も行なう場合には、再生処理におけるリアルタイム性が優先され、リアルタイム再生の妨げとなるHTTPによるダウンロードは適用されないのが一般的である。
このように、遅延の発生が許容されないストリーミング再生処理と、遅延の発生が許容される受信データ記録処理には、それぞれに適した通信プロトコルが利用される。これらの処理、すなわち、ストリーミング再生処理と、データ記録処理の処理態様に応じた要求を同時に満たし、再生および記録の双方に適応する処理を実現する構成はこれまでに提案されていない。
例えば特許文献2(特開2005−86362)には、ストリーミングを行う際の記録方法についての構成が開示されている。しかし、この開示手法ではHTTPを用い、再送要求がなされ遅延が発生する場合は、再生スキップを行なう構成であり、再生品質の低下が発生することになる。
特許3757857
特開2005−86362号公報
本発明は、上述の状況に鑑みてなされたものであり、受信データの再生処理や記録処理を実行する装置において、実行する処理が再生処理のみであるか、記録処理を伴う再生処理であるか等の処理状況に応じて最適な通信制御を実行する通信処理装置、および通信制御方法、並びにコンピュータ・プログラムを提供することを目的とする。
本発明の第1の側面は、
ネットワークを介するデータ受信を行なう通信処理装置であり、
通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態管理を行なう状態管理部と、
受信データ中の損失データを検出するデータ損失検出部と、
損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御部とを有し、
前記再送要求制御部は、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行する構成であることを特徴とする通信処理装置にある。
ネットワークを介するデータ受信を行なう通信処理装置であり、
通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態管理を行なう状態管理部と、
受信データ中の損失データを検出するデータ損失検出部と、
損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御部とを有し、
前記再送要求制御部は、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行する構成であることを特徴とする通信処理装置にある。
さらに、本発明の通信処理装置の一実施態様において、前記受信データはパケット単位で受信されるデータであることを特徴とする。
さらに、本発明の通信処理装置の一実施態様において、前記再送要求制御部は、通信処理装置が、再生のみを実行する再生状態にある場合は、予め測定されたデータ送信装置との間の往復遅延時間に基づいて、再送要求を行うか否かを決定する処理を実行する構成であることを特徴とする。
さらに、本発明の通信処理装置の一実施態様において、前記通信処理装置は、再生処理に適用するデータを蓄積するデコードバッファと、記録処理に適用するデータを蓄積する記録バッファに対するデータ格納制御を行う再生・記録判別部を有し、前記再生・記録判別部は、前記状態管理部から、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態情報を入力して、バッファへのデータ蓄積処理様を変更する構成であることを特徴とする。
さらに、本発明の通信処理装置の一実施態様において、前記再送要求制御部に対して、再生処理を実行している受信データに対応する再生時刻情報を通知し、前記再送要求制御部は、前記再生・記録判別部から入力する情報、すなわち、再生処理を実行している受信データに対応する再生時刻情報を適用して、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定を実行する構成であることを特徴とする。
さらに、本発明の第2の側面は、
ネットワークを介するデータ受信を行なう通信処理装置における通信制御方法であり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なう状態管理ステップと、
データ損失検出部が、受信データ中の損失データを検出する損失データ検出ステップと、
再送要求制御部が、損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行するステップであることを特徴とする通信制御方法にある。
ネットワークを介するデータ受信を行なう通信処理装置における通信制御方法であり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なう状態管理ステップと、
データ損失検出部が、受信データ中の損失データを検出する損失データ検出ステップと、
再送要求制御部が、損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行するステップであることを特徴とする通信制御方法にある。
さらに、本発明の通信制御方法の一実施態様において、前記受信データはパケット単位で受信されるデータであることを特徴とする。
さらに、本発明の通信制御方法の一実施態様において、前記再送要求制御ステップは、通信処理装置が、再生のみを実行する再生状態にある場合は、予め測定されたデータ送信装置との間の往復遅延時間に基づいて、再送要求を行うか否かを決定する処理を実行することを特徴とする。
さらに、本発明の通信制御方法の一実施態様において、前記通信制御方法は、さらに、再生・記録判別部において、再生処理に適用するデータを蓄積するデコードバッファと、記録処理に適用するデータを蓄積する記録バッファに対するデータ格納制御を行う再生・記録制御ステップを有し、前記再生・記録判別部は、前記再生・記録制御ステップにおいて、前記状態管理部から、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態情報を入力して、バッファへのデータ蓄積処理様を変更することを特徴とする。
さらに、本発明の通信制御方法の一実施態様において、前記再生・記録判別部は、前記再送要求制御部に対して、再生処理を実行している受信データに対応する再生時刻情報を通知し、前記再送要求制御部は、前記再生・記録判別部から入力する情報、すなわち、再生処理を実行している受信データに対応する再生時刻情報を適用して、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定を実行することを特徴とする。
さらに、本発明の第3の側面は、
ネットワークを介するデータ受信を行なう通信処理装置において、通信制御を実行させるコンピュータ・プログラムであり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なわせる状態管理ステップと、
データ損失検出部に、受信データ中の損失データを検出させる損失データ検出ステップと、
再送要求制御部に、損失データに対する再送要求を出力するか否かの決定処理を実行させる再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定させ、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行させるステップであることを特徴とするコンピュータ・プログラムにある。
ネットワークを介するデータ受信を行なう通信処理装置において、通信制御を実行させるコンピュータ・プログラムであり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なわせる状態管理ステップと、
データ損失検出部に、受信データ中の損失データを検出させる損失データ検出ステップと、
再送要求制御部に、損失データに対する再送要求を出力するか否かの決定処理を実行させる再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定させ、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行させるステップであることを特徴とするコンピュータ・プログラムにある。
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づく、より詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本発明の一実施例の構成によれば、例えばリアルタイムストリーミング再生処理を行うためのストリーミングデータ受信を実行する通信処理装置において、通信処理装置の処理状態が以下の状態のいずれであるか、すなわち、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
以下、図面を参照しながら、本発明の通信処理装置、および通信制御方法、並びにコンピュータ・プログラムの詳細について説明する。
本発明の通信処理装置は、例えばリアルタイムストリーミング再生処理を行うためにストリーミングデータ受信を行なう際、通信処理装置が受信するデータを、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態であっても、
各状態に対応する態様でのパケット取得制御を行い、処理状態に適したデータ取得に基づく再生または記録を行なう構成を有する。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態であっても、
各状態に対応する態様でのパケット取得制御を行い、処理状態に適したデータ取得に基づく再生または記録を行なう構成を有する。
本発明の通信処理装置の構成および処理についての説明の前に、RTPやUDPプロトコルを適用した通信構成において、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なう構成例の概要について説明する。なお、この処理例は、例えば本出願人と同一出願に係る特許(特許第3757857)に記載されている。通信処理装置は、通信プロトコルとして、RTP(Real−time Transport Protocol、RFC3550)や、UDP(User Datagram Protocol)を適用し、リアルタイムストリーミング再生を行なう。
リアルタイムストリーミング再生を行なう機器では、リアルタイム性の確保、すなわち、受信データの遅延を小さくして再生することが重要とされる。この低遅延再生を実現するため、通信処理装置のパケットロス検出部では、受信パケットのロス(消失)を検出し、以下のような処理を行う。
(ステップ1)
「パケットロスが検知されたパケットに付加されていたはずの再生時刻」を判定、
(ステップ2)
ステップ1で判定したロスパケットの「再生時刻」と、「現在の再生時刻+T(猶予時間)」を比較、
(ステップ3)
(3a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
(3b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
「パケットロスが検知されたパケットに付加されていたはずの再生時刻」を判定、
(ステップ2)
ステップ1で判定したロスパケットの「再生時刻」と、「現在の再生時刻+T(猶予時間)」を比較、
(ステップ3)
(3a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
(3b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
このような処理によって、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なう構成が実現される。パケットには、受信側において、データ再生を順番に間違いなく実行可能とするため再生時刻が付与されている。例えばRTPパケットのタイムスタンプである。RTPのタイムスタンプは、例えばビデオデータならば同じフレームのデータを含んだ複数のパケットに、同じタイムスタンプが付けられている。
図1にRTPパケットの構成を示す。図1に示すように、RTPパケットは、動画データ等の実データに想到するペイロードの他、各プロトコル対応のヘッダとしてRTPヘッダ、UDPヘッダ、IPヘッダが設定される。RTPヘッダには、
シーケンスナンバー(16ビット):パケット毎に1つずつ増えるカウンタ
タイムスタンプ(32ビット):再生時刻を示す
送信元識別子(SSRC)(32ビット):送信者を示す
マーカー(1ビット):ビデオフレームの最後のパケットかなどの識別情報
これらの情報が含まれる。
シーケンスナンバー(16ビット):パケット毎に1つずつ増えるカウンタ
タイムスタンプ(32ビット):再生時刻を示す
送信元識別子(SSRC)(32ビット):送信者を示す
マーカー(1ビット):ビデオフレームの最後のパケットかなどの識別情報
これらの情報が含まれる。
再送要求の実行可否の判定は、このRTPヘッダの再生時刻を示すタイムスタンプを参照して行なわれることになる。データ受信再生を行なう通信処理装置のパケットロス検出部(データ損失検出部)において、パケットロスを検知した場合、そのロスしたパケットに付加されていたタイムスタンプを前後のパケットのタイムスタンプから推定する。なお、連続的にパケットロスがある場合や、フレームの最初/最後のパケットがロスした場合にも、そのタイムスタンプの範囲を、前後のパケットに基づいて推定する。
通信処理装置では、ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)か、小さい(早い)かによって、再送要求を行うか否かを決定することになる。ここでT(猶予時間)は、ストリーミング送信側に再送要求を送出し、要求したそのパケットが再生までに間に合うように再送されてくると判断する基準値であり、例えば送信側と受信側のデータ往復遅延時間であるRTT(Round−Trip Time)の値が用いられる。
データ送受信処理およびRTTを適用した再送要求の判定処理および再送処理、受信処理のシーケンスについて、図2を参照して説明する。図2は、左側にストリーミングデータの送信処理を実行する送信装置、右側にストリーミングデータの受信および再生処理を実効する受信装置を示している。
送信装置は、シーケンスナンバー[n]と、タイムスタンプ[t]が付与されたパケットを順次送信する。前述したように、シーケンスナンバー[n]は各パケットに設定されるカウンタであり、1つのパケット毎に1増分される設定となっている。タイムスタンプ[t]は、再生時刻を示している。図に示す例では、3つのパケットが1つの再生時刻用のデータを格納したパケットとして設定された例である。
送信装置は、まず、再生時刻t=0の3つのパケットn=1〜3を送信装置に送信し、送信装置は、これらのパケットを受信して再生を行なう。再生タイミングは、図に示す時間[Ta]であるとする。
さらに、送信装置は継続的にパケット送信を実行し、受信装置は、受信および再生処理を実行する。この処理の実行中、シーケンスナンバー:n=4、タイムスタンプ:t=100のパケットが受信装置において受信できなかったとする。この場合、受信装置は、前後の受信パケットのシーケンスナンバーやタイムスタンプ情報から、ロスパケットを特定する。すなわち、ロスパケットのシーケンスナンバーが、n=4であり、タイムスタンプがt=100であると推定する。
受信装置は、この推定に基づいて、ロスパケット[n=4,T=100]の再送要求を実行するか否かを決定する。すなわち、前述したように、
(a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
(b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
このような処理によって、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なう。
(a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
(b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
このような処理によって、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なう。
図2に示す例では、
現在の再生時刻は、[Tb]であり、
猶予時間は[T]である。この猶予時間[T]は、データ送受信装置間の往復遅延時間であるRTTが適用可能であり、予め計測された時間である。
また、ロスパケット[n=4,T=100]の再生時刻は、[Td]である。
現在の再生時刻は、[Tb]であり、
猶予時間は[T]である。この猶予時間[T]は、データ送受信装置間の往復遅延時間であるRTTが適用可能であり、予め計測された時間である。
また、ロスパケット[n=4,T=100]の再生時刻は、[Td]である。
この場合、受信装置は、
ロスパケット[n=4,T=100]の「再生時刻(Td)」が、「現在の再生時刻(Tb)+T(猶予時間)」よりも大きいか否か、すなわち、
Td>Tb+T
が成立するか否かを判定する。
ロスパケット[n=4,T=100]の「再生時刻(Td)」が、「現在の再生時刻(Tb)+T(猶予時間)」よりも大きいか否か、すなわち、
Td>Tb+T
が成立するか否かを判定する。
Td>Tb+T
上記式が成立する場合は、受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
一方、上記式が成立しない場合は、再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
上記式が成立する場合は、受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に「再送要求部」より再送要求を送る。
一方、上記式が成立しない場合は、再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
受信装置は、これらの処理によって、「再生に間に合うと思われるパケット」だけを選別して再送要求を行なう構成としている。
図2を参照して説明した方法は、再生のみを行うための方法であるが、先にも述べたように、ストリーミング受信した動画データの記録も同時に行う場合は、再生処理に間に合わなくても、再送要求によりロスパケットを受信して、完全性の高いデータ記録を行なうことが好ましい。
しかし、データ受信側において、再生処理のみを実行し記録処理を行なわない場合は、再生に間に合わないパケットを何度も再送要求することは、結果的に再生に間に合わないパケットの受信をもたらすのみで、無駄な処理が発生するとともに、ネットワーク上の無駄なデータ転送を増大させるという問題も発生させる。
本発明の通信処理装置は、例えばリアルタイムストリーミング再生処理を行うためのストリーミングデータ受信に際して、通信処理装置の状態が、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態であるかを判別し、判別した状態に応じて、ロスパケットの再送処理要求の態様を変更して、各状態に応じた最適な再送制御を実現するものである。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態であるかを判別し、判別した状態に応じて、ロスパケットの再送処理要求の態様を変更して、各状態に応じた最適な再送制御を実現するものである。
以下、本発明の通信処理装置の構成および実行する処理について、図3以下を参照して説明する。図3は、本発明の通信処理装置の構成を示すブロック図である。図3に示す通信処理装置100は、RTPやUDPプロトコルを適用した通信により、図示しないデータ送信装置の送信するパケットを、ネットワークインタフェース101を介して受信する。受信パケットは、先に図1を参照して説明した構成を有し、
シーケンスナンバー(16ビット):パケット毎に1つずつ増えるカウンタ
タイムスタンプ(32ビット):再生時刻を示す
送信元識別子(SSRC)(32ビット):送信者を示す
マーカー(1ビット):ビデオフレームの最後のパケットかなどの識別情報
これらの情報が含まれるパケットである。
シーケンスナンバー(16ビット):パケット毎に1つずつ増えるカウンタ
タイムスタンプ(32ビット):再生時刻を示す
送信元識別子(SSRC)(32ビット):送信者を示す
マーカー(1ビット):ビデオフレームの最後のパケットかなどの識別情報
これらの情報が含まれるパケットである。
通信処理装置100は、ネットワークインタフェース101を介してパケット受信部102においてパケットを受信し、データ損失検出部として機能するパケットロス検出部103において、ロスパケットの検出を実行する。この処理は、受信パケットに設定されたシーケンスナンバー、タイムスタンプから、受信できなかったロスパケットのシーケンスナンバー、タイムスタンプを特定する処理として実行される。
パケットロス検出部103においてロスパケットの検出された後、受信パケットは、パケット受信バッファ104に蓄積され、その後、フレーム構成部105において、パケットから実データ(ペイロード)を取り出して、再生データ(フレーム画像など)を生成する処理が実行される。
その後、再生・記録判別部106は、自装置である通信処理装置100が、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかを判別し、判別状態に応じて、フレーム構成部105において生成されたフレームデータを再生処理部を構成するデコードバッファ107、または記録処理を実行する記録バッファ121のいずれか、または双方に供給する。
(1)「再生のみ」を実行する状態にある場合は、再生処理部を構成するデコードバッファ107に供給し、
(2)「再生+記録」を実行する状態にある場合は、再生処理部を構成するデコードバッファ107と、記録処理を実行する記録バッファ121の双方に供給する。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかを判別し、判別状態に応じて、フレーム構成部105において生成されたフレームデータを再生処理部を構成するデコードバッファ107、または記録処理を実行する記録バッファ121のいずれか、または双方に供給する。
(1)「再生のみ」を実行する状態にある場合は、再生処理部を構成するデコードバッファ107に供給し、
(2)「再生+記録」を実行する状態にある場合は、再生処理部を構成するデコードバッファ107と、記録処理を実行する記録バッファ121の双方に供給する。
再生処理においては、デコードバッファ107に蓄積されたデータを、ビデオデコーダ108、オーディオデコーダ110が取得して、デコード処理を行い、それぞれ映像出力部109、音声出力部111に出力して再生処理が実行される。
記録処理を実行する場合は、記録バッファ121に蓄積されたデータを記録管理部122が取得して、所定の記録フォーマットへの変換処理などを実行し、HDDなどの記憶装置123に記録する処理が実行される。
図4に示すフローを参照して、再生・記録判別部106の実行する処理の詳細を説明する。再生・記録判別部106は、まず、ステップS101において、パケット受信バッファ104を検証して、フレーム構成データが到着しているか否かを判定し、到着している場合、ステップS102において、自装置が、再生処理のみを実行している状態であるか、再生と記録処理を併せて実行している状態であるかを判別する。図3に示す再生・記録判別部106は、状態管理部131から、状態情報を入力して装置の状態を判別する。
再生と記録を併せて実行している場合は、ステップS103に進み、再生処理における再生時刻情報と、パケット受信バッファ104から取得したパケットの再生時刻とを対比し、ステップS104において、再生時刻に間に合う処理のタイミングで、パケットから取得した実データをデコードバッファ107に転送する。
次に、再生・記録判別部106は、ステップS105において、再生時刻情報を再送制御部132に出力する。この情報は、再送要求制御部132において再送要求を実行するか否かを判定する処理に利用される。この処理については、後段で詳細に説明する。
さらに、ステップS106において、再生・記録判別部106は、パケット受信バッファ104から取得したパケットの実データを記録処理側の記録バッファ121に転送し、ステップS107において、転送済みのフレーム構成データをパケット受信バッファ104から消去する。
一方、記録処理を実行することなく、再生のみを実行している場合は、ステップS102からステップS111に進む。ステップS111では、再生処理における再生時刻情報と、パケット受信バッファ104から取得したパケットの再生時刻とを対比し、ステップS112において、再生時刻に間に合う処理のタイミングで、パケットから取得した実データをデコードバッファ107に転送する。
次に、再生・記録判別部106は、ステップS113において、再生時刻情報を再送制御部132に出力する。この情報は、再送要求制御部132において再送要求を実行するか否かを判定する処理に利用される。この処理については、後段で詳細に説明する。最後に、ステップS114において、転送済みのフレーム構成データをパケット受信バッファ104から消去する。
再生・記録判別部106は、図4に示すフローに従った処理を再生処理の終了、あるいは再生と記録処理の終了するまで継続して実行する。
次に、通信処理装置100の実行するロスパケットに対する再送要求制御について図3を参照して説明する。パケットロス検出部103は、受信パケットに設定されたシーケンスナンバー、タイムスタンプから、受信できなかったロスパケットのシーケンスナンバー、タイムスタンプを特定し、このロスパケット情報を再送要求制御部132に出力する。また、再生・記録判別部106は、実行中の再生処理における再生時刻情報、すなわち、実際に再生されているデータに対応するパケットに設定されている再生時刻を再送制御部132に入力する。
再送制御部132は、さらに、状態管理部131から、通信処理装置の実行状態、すなわち、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態に設定されているかの情報を入力する。なお、この状態設定は、ユーザ入力部141からのユーザ入力に応じて切り替えが可能な構成となっている。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態に設定されているかの情報を入力する。なお、この状態設定は、ユーザ入力部141からのユーザ入力に応じて切り替えが可能な構成となっている。
再送制御部132は、これらの情報、すなわち、
(a)通信処理装置の状態(再生のみ、または再生+記録)
(b)ロスパケット情報(ロスパケットのシーケンスナンバー、タイムスタンプ)
(c)再生時刻情報(再生処理の行なわれているパケットの再生時刻)
これらの情報をそれぞれ状態管理部131、パケットロス検出部103、再生・記録判別部106から入力する。
さらに、再送要求制御部132は、予め、計測済みのデータ往復遅延時間としてのRTT(Round−Trip Time)の値、すなわち、送信側と受信側の装置間で計測したデータ往復遅延時間としてのRTTを保持している。
(a)通信処理装置の状態(再生のみ、または再生+記録)
(b)ロスパケット情報(ロスパケットのシーケンスナンバー、タイムスタンプ)
(c)再生時刻情報(再生処理の行なわれているパケットの再生時刻)
これらの情報をそれぞれ状態管理部131、パケットロス検出部103、再生・記録判別部106から入力する。
さらに、再送要求制御部132は、予め、計測済みのデータ往復遅延時間としてのRTT(Round−Trip Time)の値、すなわち、送信側と受信側の装置間で計測したデータ往復遅延時間としてのRTTを保持している。
再送要求制御部132は、通信処理装置100が、
(1)「再生のみ」を実行する状態にある場合は、
RTTを、T(猶予時間)として、ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)か、小さい(早い)かによって、再送要求を行うか否かを決定する。すなわち、再生に間に合う再送パケットの受信が可能と判断された場合にのみ、再送要求を実行する。
(1)「再生のみ」を実行する状態にある場合は、
RTTを、T(猶予時間)として、ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)か、小さい(早い)かによって、再送要求を行うか否かを決定する。すなわち、再生に間に合う再送パケットの受信が可能と判断された場合にのみ、再送要求を実行する。
一方、通信処理装置100が、
(2)「再生+記録」を実行する状態にある場合は、
再送要求制御部132は、再生に間に合う再送パケットの受信が可能か否かの判断を実行することなく、予め定めた上限回数に至るまで、繰り返し再送要求を実行する。
(2)「再生+記録」を実行する状態にある場合は、
再送要求制御部132は、再生に間に合う再送パケットの受信が可能か否かの判断を実行することなく、予め定めた上限回数に至るまで、繰り返し再送要求を実行する。
再送要求制御部132の実行する再送要求制御処理について、図5を参照して説明する。再送要求制御部132は、ステップS201において、パケットロスが検出されたか否かを判定する。これは、図3に示すパケットロス検出部103からの入力情報によって判定される。
次に、再送要求制御部132は、ステップS202において、自装置が再生のみを実行しているか、再生と記録を併せて実行しているかの状態判別処理を実行する。この状態判別処理は、図3に示す状態管理部131からの入力情報に基づいて行なわれる。自装置が再生のみを実行している場合は、ステップS203に進み、自装置が再生と記録を併せて実行している場合は、ステップS211に進む。
まず、自装置が再生と記録処理を併せて実行している場合の処理について説明する。自装置が再生と記録処理を併せて実行している場合、再送要求制御部132は、ステップS203において、再送要求回数のカウント値が、予め設定された上限回数を超えているか否かを判定する。再送要求制御部132は、ある1つの特定パケットに対応する再送要求処理回数をカウントし、このカウント値が予め設定された上限回数を超えているか否かを判定する処理を実行する。
設定回数(上限)を超えている場合は、ステップS221に進み、新たな再送要求を実行することなく処理を終了する。一方、設定回数(上限)を超えていない場合は、ステップS204に進み、再送要求パケットを生成して、パケット送信部133を介して再送要求パケットを出力する。
次に、ステップS205において、予め定めた設定時間内での再送パケットの受信に成功したか否かを判定し、受信されていない場合は、ステップS203に戻り、さらに、設定回数に基づいて再度の再送要求を行うか否かを判定する。制限時間内に受信されている場合は、ステップS206に進み、再送パケットの受信を完了する。
このように記録処理が実行されている場合は、予め定めた上限回数に至るまで、差異層要求を繰り返し実行する。すなわち、記録処理が実行されている場合は、再送パケットが再生に間に合うか否かについての判定は行なわない。
一方、再生処理のみが実効されている場合は、ステップS202からステップS211に進む。自装置が再生処理のみを実行している場合、再送要求制御部132は、ステップS211において、再生に間に合う再送パケットの受信が可能か否かの判断を実行する。この処理は、
(a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に再送要求を送る。
(b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
このように、ステップS211の判定処理は、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なうための判定処理として実行される。
(a)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも大きい(遅い)場合は、
受信したパケットを再生するまでにT以上の余裕があるので、再生までに再送が間に合うと判断して、送信側に再送要求を送る。
(b)ロスパケットの「再生時刻」が、「現在の再生時刻+T(猶予時間)」よりも小さい(早い)場合は、
再生までにロスパケットの再送要求に基づく受信が間に合わないと判断して再送要求を送らない。
このように、ステップS211の判定処理は、「再生に間に合うと思われるパケット」だけを受信側から再送要求を行なうための判定処理として実行される。
再生に間に合うパケット受信が不可能と判断した場合は、ステップS221に進み、再送要求を断念し、再送要求は実行しない。一方、再生に間に合うパケット受信が可能と判断した場合は、ステップS212に進み、再送要求パケットを生成して、パケット送信部133を介して再送要求パケットを出力する。
次に、ステップS213において、予め定めた設定時間内での再送パケットの受信に成功したか否かを判定し、受信されていない場合は、ステップS211に戻り、さらに、再度の再送要求を行うか否かを、再生に間に合うか否かに基づいて判定する処理を繰り返す。ステップS213において、制限時間内に受信されたことが確認された場合は、ステップS214に進み、再送パケットの受信を完了する。
このように記録処理が実行されず、再生のみが実行されている場合は、再送要求を行うか否かを、再送要求パケットの受信が、再生に間に合うか否かに基づいて判定する処理を行なう。
このように、本発明の通信処理装置は、例えばリアルタイムストリーミング再生処理のためのストリーミングデータ受信を行なう通信処理装置において、通信処理装置の処理状態が以下の状態のいずれであるか、すなわち、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
なお、状況によっては、ストリーミング再生した映像・音声の動画データを再生した通りにそのまま記録したいという場合もあるので、ユーザがその選択をできることが望ましい。このような場合は、再生処理用のデコードバッファに格納したデータと同じものを記録処理用の記録バッファ121に記録する設定とすればよい。
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本発明の一実施例の構成によれば、例えばリアルタイムストリーミング再生処理を行うためのストリーミングデータ受信を実行する通信処理装置において、通信処理装置の処理状態が以下の状態のいずれであるか、すなわち、
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
(1)「再生のみ」を実行する状態、または、
(2)「再生+記録」を実行する状態、
これら(1),(2)のいずれの状態にあるかに応じて、ロスパケットに対応する再送要求を実行するか否かの判定態様を変更して制御を行なう構成としたので、再生処理のみの場合にはリアルタイム再生の実現、記録処理を行なう場合には、記録データの完全性の向上といった、それぞれの目的とするデータ態様を実現した再生処理および記録処理が実現される。
100 通信処理装置
101 ネットワークインタフェース
102 パケット受信部
103 パケットロス検出部
104 パケット受信バッファ
105 フレーム構成部
106 再生・記録判別部
107 デコードバッファ
108 ビデオデコーダ
109 映像出力部
110 オーディオデコーダ
111 音声出力部
121 記録バッファ
122 記録管理部
123 記憶装置
131 状態管理部
132 再送要求制御部
133 パケット送信部
141 ユーザ入力部
101 ネットワークインタフェース
102 パケット受信部
103 パケットロス検出部
104 パケット受信バッファ
105 フレーム構成部
106 再生・記録判別部
107 デコードバッファ
108 ビデオデコーダ
109 映像出力部
110 オーディオデコーダ
111 音声出力部
121 記録バッファ
122 記録管理部
123 記憶装置
131 状態管理部
132 再送要求制御部
133 パケット送信部
141 ユーザ入力部
Claims (11)
- ネットワークを介するデータ受信を行なう通信処理装置であり、
通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態管理を行なう状態管理部と、
受信データ中の損失データを検出するデータ損失検出部と、
損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御部とを有し、
前記再送要求制御部は、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行する構成であることを特徴とする通信処理装置。 - 前記受信データはパケット単位で受信されるデータであることを特徴とする請求項1に記載の通信処理装置。
- 前記再送要求制御部は、
通信処理装置が、再生のみを実行する再生状態にある場合は、
予め測定されたデータ送信装置との間の往復遅延時間に基づいて、再送要求を行うか否かを決定する処理を実行する構成であることを特徴とする請求項1に記載の通信処理装置。 - 前記通信処理装置は、
再生処理に適用するデータを蓄積するデコードバッファと、記録処理に適用するデータを蓄積する記録バッファに対するデータ格納制御を行う再生・記録判別部を有し、
前記再生・記録判別部は、
前記状態管理部から、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態情報を入力して、バッファへのデータ蓄積処理様を変更する構成であることを特徴とする請求項1に記載の通信処理装置。 - 前記再生・記録判別部は、
前記再送要求制御部に対して、再生処理を実行している受信データに対応する再生時刻情報を通知し、
前記再送要求制御部は、前記再生・記録判別部から入力する情報、すなわち、再生処理を実行している受信データに対応する再生時刻情報を適用して、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定を実行する構成であることを特徴とする請求項4に記載の通信処理装置。 - ネットワークを介するデータ受信を行なう通信処理装置における通信制御方法であり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なう状態管理ステップと、
データ損失検出部が、受信データ中の損失データを検出する損失データ検出ステップと、
再送要求制御部が、損失データに対する再送要求を出力するか否かの決定処理を実行する再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定し、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行するステップであることを特徴とする通信制御方法。 - 前記受信データはパケット単位で受信されるデータであることを特徴とする請求項6に記載の通信制御方法。
- 前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、
予め測定されたデータ送信装置との間の往復遅延時間に基づいて、再送要求を行うか否かを決定する処理を実行することを特徴とする請求項6に記載の通信制御方法。 - 前記通信制御方法は、さらに、
再生・記録判別部において、再生処理に適用するデータを蓄積するデコードバッファと、記録処理に適用するデータを蓄積する記録バッファに対するデータ格納制御を行う再生・記録制御ステップを有し、
前記再生・記録判別部は、前記再生・記録制御ステップにおいて、
前記状態管理部から、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの状態情報を入力して、バッファへのデータ蓄積処理様を変更することを特徴とする請求項6に記載の通信制御方法。 - 前記再生・記録判別部は、前記再送要求制御部に対して、再生処理を実行している受信データに対応する再生時刻情報を通知し、
前記再送要求制御部は、前記再生・記録判別部から入力する情報、すなわち、再生処理を実行している受信データに対応する再生時刻情報を適用して、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定を実行することを特徴とする請求項9に記載の通信制御方法。 - ネットワークを介するデータ受信を行なう通信処理装置において、通信制御を実行させるコンピュータ・プログラムであり、
状態管理部において、通信処理装置の処理状態が、受信データの再生のみを実行する再生状態にあるか、受信データの再生と記録を併せて実行する再生記録状態にあるかの判別を行なわせる状態管理ステップと、
データ損失検出部に、受信データ中の損失データを検出させる損失データ検出ステップと、
再送要求制御部に、損失データに対する再送要求を出力するか否かの決定処理を実行させる再送要求制御ステップとを有し、
前記再送要求制御ステップは、
通信処理装置が、再生のみを実行する再生状態にある場合は、再送要求データに基づく再送データの受信が再生処理に間に合うか否かの判定に基づいて、再送要求を行なうか否かを決定させ、
通信処理装置が、再生と記録を併せて実行する再生記録状態にある場合は、1つの損失データに対する再送要求の送信回数が、予め設定された上限回数に至ったか否かの判定に基づいて、再送要求を行なうか否かを決定する処理を実行させるステップであることを特徴とするコンピュータ・プログラム。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006222223A JP2008048182A (ja) | 2006-08-17 | 2006-08-17 | 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム |
PCT/JP2007/065101 WO2008020547A1 (fr) | 2006-08-17 | 2007-08-01 | Dispositif de traitement des communications, procédé de commande des communications, et programme informatique |
US12/090,487 US7886071B2 (en) | 2006-08-17 | 2007-08-01 | Communication processing device, communication control method, and computer program |
KR20087009206A KR20090040871A (ko) | 2006-08-17 | 2007-08-01 | 통신 처리 장치, 통신 제어 방법 및 컴퓨터 프로그램 |
CN2007800013832A CN101356814B (zh) | 2006-08-17 | 2007-08-01 | 通信处理设备和通信控制方法 |
EP07791781A EP2053858A1 (en) | 2006-08-17 | 2007-08-01 | Communication processing device, communication control method, and computer program |
TW96128875A TW200826565A (en) | 2006-08-17 | 2007-08-06 | Communication processing apparatus, communication control method, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006222223A JP2008048182A (ja) | 2006-08-17 | 2006-08-17 | 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008048182A true JP2008048182A (ja) | 2008-02-28 |
Family
ID=39082073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006222223A Pending JP2008048182A (ja) | 2006-08-17 | 2006-08-17 | 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US7886071B2 (ja) |
EP (1) | EP2053858A1 (ja) |
JP (1) | JP2008048182A (ja) |
KR (1) | KR20090040871A (ja) |
CN (1) | CN101356814B (ja) |
TW (1) | TW200826565A (ja) |
WO (1) | WO2008020547A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016067561A1 (ja) * | 2014-10-31 | 2016-05-06 | 日本電気株式会社 | 通信端末、通信システムおよび通信方法、並びにコンピュータ・プログラムが格納されているコンピュータ読み取り可能な記憶媒体 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2302845B1 (en) | 2009-09-23 | 2012-06-20 | Google, Inc. | Method and device for determining a jitter buffer level |
US8762589B2 (en) * | 2010-01-22 | 2014-06-24 | National Instruments Corporation | Data transfer between devices maintaining state data |
US8630412B2 (en) | 2010-08-25 | 2014-01-14 | Motorola Mobility Llc | Transport of partially encrypted media |
US8838680B1 (en) | 2011-02-08 | 2014-09-16 | Google Inc. | Buffer objects for web-based configurable pipeline media processing |
US9490850B1 (en) | 2011-11-28 | 2016-11-08 | Google Inc. | Method and apparatus for decoding packetized data |
US9185429B1 (en) | 2012-04-30 | 2015-11-10 | Google Inc. | Video encoding and decoding using un-equal error protection |
US10034023B1 (en) | 2012-07-30 | 2018-07-24 | Google Llc | Extended protection of digital video streams |
US9603039B2 (en) * | 2013-04-03 | 2017-03-21 | Qualcomm Incorporated | Opportunistic media patching for a communication session |
CN103269260A (zh) * | 2013-06-03 | 2013-08-28 | 腾讯科技(深圳)有限公司 | 数据传输方法、数据接收端、数据发送端和数据传输系统 |
JP6426901B2 (ja) * | 2014-03-14 | 2018-11-21 | 富士通クライアントコンピューティング株式会社 | 配信方法、再生装置、配信装置、転送制御プログラムおよび配信制御プログラム |
EP3375116B1 (en) * | 2015-11-13 | 2023-01-11 | Sony Group Corporation | Timeout of a communication radio link |
DK3378179T3 (da) | 2015-12-01 | 2019-08-05 | Ericsson Telefon Ab L M | Prædiktiv bekræftelsesfeedbackmekanisme |
US10237019B2 (en) | 2016-05-03 | 2019-03-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Variable transport format parameters for fast acknowledgment feedback mechanism |
CN114095796A (zh) * | 2020-07-30 | 2022-02-25 | 中国移动通信集团终端有限公司 | 无效重传包减少方法、装置、设备及计算机存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6735634B1 (en) * | 1999-06-10 | 2004-05-11 | Blue Coat Systems | Method for real time protocol media recording |
JP4240766B2 (ja) * | 2000-06-26 | 2009-03-18 | パナソニック株式会社 | データ蓄積方法およびそれを実現した受信装置および放送システム |
JP3757857B2 (ja) | 2001-12-12 | 2006-03-22 | ソニー株式会社 | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム |
SE524679C2 (sv) | 2002-02-15 | 2004-09-14 | Ericsson Telefon Ab L M | System för broadcast/multicast-utsändning av datainformation emot en lokal del av ett trådlöst nät |
JP4000904B2 (ja) * | 2002-05-21 | 2007-10-31 | ソニー株式会社 | 情報処理装置および方法、記録媒体、並びにプログラム |
US7076717B2 (en) | 2003-06-13 | 2006-07-11 | Microsoft Corporation | Time-aware best-effort hole-filling retry method and system for network communications |
JP2005086362A (ja) | 2003-09-05 | 2005-03-31 | Matsushita Electric Ind Co Ltd | データ多重化方法、データ送信方法およびデータ受信方法 |
WO2005088931A1 (en) * | 2004-02-13 | 2005-09-22 | Nokia Corporation | Timing of quality of experience metrics |
JP2005348015A (ja) | 2004-06-02 | 2005-12-15 | Fujitsu Ltd | リアルタイム・ストリーミングデータ受信装置 |
US20070255219A1 (en) * | 2006-04-19 | 2007-11-01 | Trevor Vaugh | Instrument access device |
-
2006
- 2006-08-17 JP JP2006222223A patent/JP2008048182A/ja active Pending
-
2007
- 2007-08-01 US US12/090,487 patent/US7886071B2/en not_active Expired - Fee Related
- 2007-08-01 CN CN2007800013832A patent/CN101356814B/zh not_active Expired - Fee Related
- 2007-08-01 KR KR20087009206A patent/KR20090040871A/ko not_active Application Discontinuation
- 2007-08-01 EP EP07791781A patent/EP2053858A1/en not_active Withdrawn
- 2007-08-01 WO PCT/JP2007/065101 patent/WO2008020547A1/ja active Application Filing
- 2007-08-06 TW TW96128875A patent/TW200826565A/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016067561A1 (ja) * | 2014-10-31 | 2016-05-06 | 日本電気株式会社 | 通信端末、通信システムおよび通信方法、並びにコンピュータ・プログラムが格納されているコンピュータ読み取り可能な記憶媒体 |
Also Published As
Publication number | Publication date |
---|---|
CN101356814B (zh) | 2011-07-27 |
EP2053858A1 (en) | 2009-04-29 |
US7886071B2 (en) | 2011-02-08 |
WO2008020547A1 (fr) | 2008-02-21 |
CN101356814A (zh) | 2009-01-28 |
TW200826565A (en) | 2008-06-16 |
KR20090040871A (ko) | 2009-04-27 |
US20080259964A1 (en) | 2008-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008048182A (ja) | 通信処理装置、および通信制御方法、並びにコンピュータ・プログラム | |
KR100967377B1 (ko) | 데이터 통신 시스템, 데이터 송신 장치, 데이터 수신 장치, 데이터 통신 방법, 및 컴퓨터 프로그램을 기록한 매체 | |
US9565482B1 (en) | Adaptive profile switching system and method for media streaming over IP networks | |
JP4000905B2 (ja) | 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム | |
JP4414311B2 (ja) | マルチメディアストリーミングサービスシステム及びその方法 | |
JP4287376B2 (ja) | ストリーミングメディア | |
JP5875725B2 (ja) | コンテンツ再生情報推定装置及び方法及びプログラム | |
JP5084362B2 (ja) | データ送信装置、及びデータ送受信システム | |
JP5207895B2 (ja) | 送信装置、受信装置、及び方法、プログラム | |
JP2004007823A (ja) | データ伝送方法および装置 | |
JP2003179580A (ja) | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム | |
JP2004266504A (ja) | 送受信システム、送信装置および方法、受信装置および方法、記録媒体、並びにプログラム | |
US8873590B2 (en) | Apparatus and method for correcting jitter | |
KR101177454B1 (ko) | 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법 | |
JPWO2017135181A1 (ja) | クライアント、サーバ、受信方法及び送信方法 | |
JP2005051299A (ja) | パケット送信装置、パケット受信装置、パケット送信方法及びパケット受信方法 | |
GB2543840A (en) | Method and server for managing the transmission of packets over a plurality of paths | |
JP2004260668A (ja) | 動画像伝送システム、動画像送信装置、動画像中継装置、動画像受信装置、プログラム、および記録媒体 | |
JP4433281B2 (ja) | 受信装置および方法、記録媒体、並びにプログラム | |
JP2008193227A (ja) | 動画再生装置 | |
KR101700370B1 (ko) | 지터 보정 방법 및 장치 | |
JP5393699B2 (ja) | 送信端末及び受信端末 | |
JP4770248B2 (ja) | 情報処理装置および方法、プログラム、並びに記録媒体 | |
CN115767143A (zh) | 播放卡顿的判断方法、装置、电子设备和可读存储介质 |