JP6339226B2 - Streaming control for real-time transport protocol - Google Patents
Streaming control for real-time transport protocol Download PDFInfo
- Publication number
- JP6339226B2 JP6339226B2 JP2016560917A JP2016560917A JP6339226B2 JP 6339226 B2 JP6339226 B2 JP 6339226B2 JP 2016560917 A JP2016560917 A JP 2016560917A JP 2016560917 A JP2016560917 A JP 2016560917A JP 6339226 B2 JP6339226 B2 JP 6339226B2
- Authority
- JP
- Japan
- Prior art keywords
- sink device
- protocol
- tcp
- media stream
- sink
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 claims description 107
- 239000000872 buffer Substances 0.000 claims description 69
- 238000000034 method Methods 0.000 claims description 48
- 230000004044 response Effects 0.000 claims description 41
- 230000005540 biological transmission Effects 0.000 claims description 24
- 238000004458 analytical method Methods 0.000 claims description 20
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 38
- 238000010586 diagram Methods 0.000 description 27
- 238000007726 management method Methods 0.000 description 25
- 238000012545 processing Methods 0.000 description 9
- 230000003139 buffering effect Effects 0.000 description 7
- 230000009977 dual effect Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000007723 transport mechanism Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 239000006249 magnetic particle Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- 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/1083—In-session procedures
-
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Environmental & Geological Engineering (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Description
相互参照
本特許出願は、それぞれが本願の譲受人に譲渡された、2015年4月7日に出願した、Kafle他による米国特許出願第14/680,259号、名称「Streaming Control for Real-Time Transport Protocol」および2014年4月10日に出願した、Kafle他による米国仮特許出願第61/978,121号、名称「Streaming Control for Real-Time Transport Protocol」の優先権を主張するものである。
Cross-reference This patent application is filed April 7, 2015, each assigned to the assignee of the present application, U.S. Patent Application No. 14 / 680,259 to Kafle et al., Entitled `` Streaming Control for Real-Time Transport Protocol. "And US Provisional Patent Application No. 61 / 978,121, filed April 10, 2014, entitled" Streaming Control for Real-Time Transport Protocol ".
以下は、全般的にはワイヤレス通信に関し、より詳細にはWi-Fiピアツーピアリモートディスプレイに関する。ワイヤレス通信システムは、音声、ビデオ、パケットデータ、メッセージング、放送、その他など、様々なタイプの通信コンテンツを提供するために、広く展開されている。これらのシステムは、ワイヤレス媒体にアクセスするのに搬送波感知多重アクセス/衝突回避(CSMA/CA)機構を利用する、Wi-Fiシステムとしても知られているワイヤレスローカルエリアネットワーク(WLAN)であり得る。またこれらのシステムは、使用可能なシステムリソース(たとえば、時間、周波数、および電力)を共有することによって複数のユーザとの通信をサポートすることができる多元接続システムであってもよい。そのような多元接続システムの例は、符号分割多元接続(CDMA)システム、時分割多元接続(TDMA)システム、周波数分割多元接続(FDMA)システム、および直交周波数分割多元接続(OFDMA)システムを含む。 The following relates generally to wireless communications, and more particularly to Wi-Fi peer-to-peer remote displays. Wireless communication systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, etc. These systems may be wireless local area networks (WLANs), also known as Wi-Fi systems, that utilize a carrier sense multiple access / collision avoidance (CSMA / CA) mechanism to access the wireless medium. These systems may also be multiple access systems that can support communication with multiple users by sharing available system resources (eg, time, frequency, and power). Examples of such multiple access systems include code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, and orthogonal frequency division multiple access (OFDMA) systems.
モバイルデバイスが、オーディオ、ビデオ、またはマルチメディアなどのコンテンツを取り込むか生成するのに使用される時に、ユーザが、モバイルデバイスとTV、コンピュータ、オーディオシステム、および類似物などの他のデバイスとの間でコンテンツを共有することを望む場合がある。1つの手法は、1つのデバイス(すなわち、シンクデバイス)が、別のデバイス(すなわち、ソースデバイス)上に表示されるものをミラーリングすることである。ソースデバイスの例は、スマートフォン、タブレット、および類似物を含むことができる。シンクデバイスの例は、TV、コンピュータスクリーンなどを含むことができる。いくつかのアプリケーションにおいて、ソースデバイスは、ワイヤレスリンクを介してメディアストリームを送信することができる。たとえば、Wi-Fiピアツーピアネットワークは、ワイヤレスデバイスがお互いと直接に通信することを可能にする。各他のデバイスの範囲内のデバイスは、中央のアクセスポイントを用いることなく、直接に発見し、通信することができる。 When a mobile device is used to capture or generate content such as audio, video, or multimedia, the user can connect between the mobile device and other devices such as TVs, computers, audio systems, and the like. You may want to share content with. One approach is for one device (ie, sink device) to mirror what is displayed on another device (ie, source device). Examples of source devices can include smartphones, tablets, and the like. Examples of sink devices can include TVs, computer screens, and the like. In some applications, the source device can transmit the media stream via a wireless link. For example, Wi-Fi peer-to-peer networks allow wireless devices to communicate directly with each other. Devices within the range of each other device can be discovered and communicated directly without using a central access point.
Wi-Fiピアツーピア接続は、ソースデバイスが、ビデオおよび/またはオーディオなどのメディアコンテンツを互換シンクディスプレイにワイヤレスに送信することを可能にする。ソースデバイスからシンクデバイスへメディアコンテンツを効果的に送信するために、様々な手法が検討されてきた。たとえば、1つの手法は、ソースデバイスが、ユーザデータグラムプロトコル(UDP)を介するリアルタイムトランスポートプロトコル(RTP)を利用する媒体上での送信のためにMPEG2トランスポートストリーム(MPEG-TS)を使用してメディアコンテンツをカプセル化することを可能にする。ストリーミングコンテンツのエンドツーエンドのリアルタイム転送のために設計されたRTPは、インターネットプロトコル(IP)ネットワークを介してメディアコンテンツを配信するための標準化されたパケットフォーマットを定義する。Wi-Fiピアツーピアリモートディスプレイのための従来の方法は、UDPが待ち時間にクリティカルなマルチメディアコンテンツのリアルタイム転送に適するので、UDP上でRTPを実施する。しかし、UDPプロトコルは、Wi-Fi MACレイヤ再送信に頼り、これは、ネットワーク輻輳があるしきい値を超えて増加する場合に、品質に人為的影響を及ぼす可能性がある。 A Wi-Fi peer-to-peer connection allows a source device to wirelessly transmit media content such as video and / or audio to a compatible sink display. Various techniques have been considered for effectively transmitting media content from a source device to a sink device. For example, one approach uses an MPEG2 transport stream (MPEG-TS) for transmission over a medium where the source device utilizes the Real Time Transport Protocol (RTP) over User Datagram Protocol (UDP). Enabling media content to be encapsulated. Designed for end-to-end real-time transfer of streaming content, RTP defines a standardized packet format for delivering media content over Internet Protocol (IP) networks. Traditional methods for Wi-Fi peer-to-peer remote display implement RTP over UDP because UDP is suitable for real-time transfer of multimedia content that is critical to latency. However, the UDP protocol relies on Wi-Fi MAC layer retransmissions, which can artificially affect quality if network congestion increases beyond a certain threshold.
説明される特徴は、一般に、コンテンツのタイプ、待ち時間要件、ネットワーク条件、および/またはデバイス能力に部分的に基づく、ストリーミングメディアコンテンツの送信において利用されるトランスポートプロトコルの動的な制御のための1つまたは複数の改善されたシステム、方法、および/または装置に関する。いくつかの例では、ソースデバイスは、シンクデバイスにメディアコンテンツをストリーミングするために、ユーザデータグラムプロトコル(UDP)と伝送制御プロトコル(TCP)との間で動的に切り替えることができる。たとえば、リアルタイムメディアコンテンツ(たとえば、ライブストリーミング、ゲーミング、または対話型ユーザ入力の表示)に関連するWi-Fiピアツーピアリモートディスプレイセッション中に、ソースデバイスは、シンクデバイスにメディアストリームを送信するのに、UDP上でリアルタイムトランスポートプロトコル(RTP)を利用することができる。逆に、記憶されたメディア(たとえば、映画)の再生など、メディアコンテンツが待ち時間にクリティカルではない時には、ソースデバイスは、信頼できるデータ伝送を提供するために、TCP上のRTPに動的に切り替えることができる。その結果、ソースデバイスおよびシンクデバイスは、Wi-Fiピアツーピアリモートディスプレイセッション中に、ストリーミングすべきコンテンツのタイプ、ネットワーク条件、および/またはデバイス能力に基づいて適当なトランスポート機構を選択することができる。 The described features are generally for dynamic control of transport protocols utilized in the transmission of streaming media content based in part on content type, latency requirements, network conditions, and / or device capabilities. It relates to one or more improved systems, methods and / or apparatus. In some examples, the source device can dynamically switch between User Datagram Protocol (UDP) and Transmission Control Protocol (TCP) to stream media content to the sink device. For example, during a Wi-Fi peer-to-peer remote display session related to real-time media content (e.g., live streaming, gaming, or displaying interactive user input), the source device can send a media stream to the sink device using UDP. Real-time transport protocol (RTP) can be used above. Conversely, when media content is not critical to latency, such as playing stored media (eg, movies), the source device dynamically switches to RTP over TCP to provide reliable data transmission. be able to. As a result, the source and sink devices can select an appropriate transport mechanism based on the type of content to be streamed, network conditions, and / or device capabilities during the Wi-Fi peer-to-peer remote display session.
別の例において、ソースデバイスは、メディアストリームを処理するシンクデバイスの音量など、再生機能を制御することができる。その結果、音量変化は、シンクデバイスでこれから再生されるべきバッファリングされたデータがある場合でも、即座に反映され得る。さらに、本開示の再生音量制御の機能性は、ソースデバイスから送信されるメディアストリーム内のオーディオの音量レベルにかかわりなく、シンクデバイスにおける音量を制御するのに使用され得る。 In another example, the source device can control playback functions, such as the volume of a sink device that processes the media stream. As a result, the volume change can be reflected immediately even if there is buffered data to be played in the sink device. Furthermore, the playback volume control functionality of the present disclosure can be used to control the volume at the sink device regardless of the volume level of the audio in the media stream transmitted from the source device.
例示的な例の第1のセットにおいては、ワイヤレス通信のための方法が提供される。この方法は、ソースデバイスによって、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始するステップを含むことができる。ソースデバイスは、さらに、シンクデバイスによってサポートされる第2のプロトコルを識別し、Wi-Fiピアツーピアリモートディスプレイセッション中にメディアストリームを送信するために第2のプロトコルに動的に切り替えることができる。 In a first set of illustrative examples, a method for wireless communication is provided. The method can include initiating a media stream by a source device to a sink device via a first protocol during a Wi-Fi peer-to-peer remote display session. The source device can further identify a second protocol supported by the sink device and dynamically switch to the second protocol to transmit the media stream during the Wi-Fi peer-to-peer remote display session.
一例において、第1のプロトコルは、ユーザデータグラムプロトコル(UDP)を含むことができ、第2のプロトコルは、伝送制御プロトコル(TCP)を含むことができる。別の例において、第1のプロトコルは、TCPを含むことができ、第2のプロトコルは、UDPを含むことができる。いくつかの例において、シンクデバイスによってサポートされる第2のプロトコルを識別するステップは、シンクデバイスがTCPをサポートするかどうかと、TCP接続のために使用される1つまたは複数のポートとを判定するためにシンクデバイスに照会を送信するステップを含むことができる。応答して、ソースデバイスは、シンクデバイスがTCPをサポートすることを確認するメッセージとポート情報とを受信することができる。 In one example, the first protocol can include a user datagram protocol (UDP) and the second protocol can include a transmission control protocol (TCP). In another example, the first protocol can include TCP and the second protocol can include UDP. In some examples, identifying a second protocol supported by the sink device determines whether the sink device supports TCP and one or more ports used for the TCP connection. Sending a query to the sink device to do so. In response, the source device can receive a message and port information confirming that the sink device supports TCP.
ソースデバイスは、さらに、受信されたメッセージに応答して、シンクデバイスにセットアップ要求を送信することができ、セットアップ要求は、プロファイルおよびポート情報を含むことができる。ソースデバイスは、さらに、シンクデバイスの復号器待ち時間とバッファサイズとを判定するためにシンクデバイスに照会することができる。いくつかの例において、第1のプロトコルから第2のプロトコルに動的に切り替えるステップは、メディアコンテンツのタイプ、ネットワーク条件、またはシンクデバイスにおいて使用可能なバッファ空間に少なくとも部分的に基づく。ソースデバイスは、さらに、メディアコンテンツのタイプ、ネットワーク条件、またはシンクデバイスにおいて使用可能なバッファ空間に少なくとも部分的に基づいて、再生を開始する前にメディアストリームをバッファリングするためにシンクデバイスによって使用されるバッファサイズを選択することができる。ソースデバイスは、さらに、選択されたバッファサイズをシンクデバイスに送信することができる。 The source device can further send a setup request to the sink device in response to the received message, and the setup request can include profile and port information. The source device may further query the sink device to determine the sink device's decoder latency and buffer size. In some examples, dynamically switching from the first protocol to the second protocol is based at least in part on the type of media content, network conditions, or buffer space available at the sink device. The source device is further used by the sink device to buffer the media stream before starting playback based at least in part on the type of media content, network conditions, or buffer space available at the sink device. The buffer size can be selected. The source device can further send the selected buffer size to the sink device.
一例において、ソースデバイスは、さらに、再生されているメディアストリームのプレゼンテーションタイムスタンプ(PTS)値と、再生を待っているメディアストリームの保留中のバッファサイズとをシンクデバイスに照会することができる。ソースデバイスは、照会に応答して、現在再生されているメディアストリームのPTS値と、再生を待っているメディアストリームのバッファサイズとを示すメッセージを受信することができる。いくつかの例において、ソースデバイスは、シンクデバイスのバッファをフラッシュするためにフラッシュ制御コマンドを発行することができ、フラッシュ制御コマンドは、PTS値を有するデータパケットまでシンクバッファ内のデータを破棄するようにシンクデバイスに命令する。別の例において、ソースデバイスは、シンクデバイスに音量制御コマンドを発行することができ、音量制御コマンドは、シンクデバイスにおけるメディアストリームの再生音量を制御する。 In one example, the source device can further query the sink device for the presentation time stamp (PTS) value of the media stream being played and the pending buffer size of the media stream awaiting playback. In response to the query, the source device may receive a message indicating the PTS value of the media stream currently being played and the buffer size of the media stream waiting to be played. In some examples, the source device can issue a flush control command to flush the sink device's buffer so that the flush control command discards the data in the sink buffer until a data packet having a PTS value. To the sink device. In another example, the source device can issue a volume control command to the sink device, which controls the playback volume of the media stream at the sink device.
例示的な例の第2のセットにおいては、ワイヤレス通信のための装置が提供される。この装置は、プロセッサと、プロセッサと電子通信しているメモリとを含むことができる。メモリは、ソースデバイスによって、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始するためにプロセッサによって実行可能である命令を実施することができる。命令は、シンクデバイスによってサポートされる第2のプロトコルを識別し、Wi-Fiピアツーピアリモートディスプレイセッション中にメディアストリームを送信するために第2のプロトコルに動的に切り替えるためにプロセッサによってさらに実行可能であり得る。いくつかの例において、この装置は、例示的な例の第1のセットに関して上で説明されたワイヤレス通信のための方法の1つまたは複数の態様を実施することができる。 In a second set of illustrative examples, an apparatus for wireless communication is provided. The apparatus can include a processor and memory in electronic communication with the processor. The memory may implement instructions that can be executed by the processor by the source device to initiate a media stream to the sink device via the first protocol during the Wi-Fi peer-to-peer remote display session. The instructions are further executable by the processor to identify a second protocol supported by the sink device and dynamically switch to the second protocol to transmit a media stream during a Wi-Fi peer-to-peer remote display session. possible. In some examples, the apparatus can implement one or more aspects of the method for wireless communication described above with respect to the first set of illustrative examples.
例示的な例の第3のセットにおいては、ワイヤレス通信のための装置が提供される。この装置は、ソースデバイスによって、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始するためのマルチプロトコル通信コンポーネントを含むことができる。この装置は、シンクデバイスによってサポートされる第2のプロトコルを識別するための能力分析コンポーネントと、Wi-Fiピアツーピアリモートディスプレイセッション中にメディアストリームを送信するために第2のプロトコルに動的に切り替えるための動的切替コンポーネントとをさらに含むことができる。いくつかの例において、この装置は、例示的な例の第1のセットに関して上で説明されたワイヤレス通信のための方法の1つまたは複数の態様を実施することができる。 In a third set of illustrative examples, an apparatus for wireless communication is provided. The apparatus can include a multi-protocol communication component for initiating a media stream by a source device to a sink device via a first protocol during a Wi-Fi peer-to-peer remote display session. The apparatus includes a capability analysis component for identifying a second protocol supported by the sink device and dynamically switching to the second protocol to transmit a media stream during a Wi-Fi peer-to-peer remote display session. And a dynamic switching component. In some examples, the apparatus can implement one or more aspects of the method for wireless communication described above with respect to the first set of illustrative examples.
前述は、これに続く詳細な説明をよりよく理解できるようにするために、本開示による例の特徴および技術的利点の概要をどちらかといえばおおまかに示した。追加の特徴および利点は、以下で説明される。開示される概念および特定の例は、本開示の同一の目的を実行するための他の構造を変更しまたは設計するための基礎として容易に利用され得る。そのような同等の構成は、添付の特許請求の範囲の趣旨および範囲から逸脱しない。本明細書で開示される概念の特性を示すと思われる特徴は、その編成と動作の方法との両方に関して、関連する利点と一緒に、添付図面に関連して検討される時に以下の説明からよりよく理解される。図の各々は、特許請求の範囲の限界の定義としてではなく、例示および説明のみの目的で与えられる。 The foregoing has outlined rather broadly the features and technical advantages of the examples according to the present disclosure in order that the detailed description that follows may be better understood. Additional features and advantages are described below. The disclosed concepts and specific examples can be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. Such equivalent constructions do not depart from the spirit and scope of the appended claims. Features believed to characterize the concepts disclosed herein, together with associated advantages, both as to their organization and manner of operation, from the following description when considered in conjunction with the accompanying drawings. Better understood. Each of the figures is provided for purposes of illustration and description only, and not as a definition of the scope of the claims.
本発明の性質および利点のさらなる理解は、添付図面を参照することによって実現され得る。添付の図において、同様のコンポーネントまたは特徴は、同一の参照ラベルを有することができる。さらに、同一のタイプの様々なコンポーネントは、同様のコンポーネントの間で区別するダッシュおよび第2のラベルを参照ラベルに続けることによって区別され得る。第1の参照ラベルのみが本明細書内で使用される場合に、説明は、第2の参照ラベルにかかわりなく、同一の第1の参照ラベルを有する同様のコンポーネントのいずれにも適用可能である。 A further understanding of the nature and advantages of the present invention may be realized by reference to the accompanying drawings. In the appended figures, similar components or features may have the same reference label. Furthermore, various components of the same type can be distinguished by following the reference label with a dash and a second label that distinguishes between similar components. Where only the first reference label is used herein, the description is applicable to any similar component having the same first reference label, regardless of the second reference label. .
説明される実施形態は、オーディオデータおよび/またはビデオデータなどのメディアコンテンツをシンクデバイスにストリーミングするために、ソースデバイスがユーザデータグラムプロトコル(UDP)と伝送制御プロトコル(TCP)との間で動的に切り替えるためのシステムおよび方法を対象とする。たとえば、リアルタイムメディアコンテンツ(たとえば、ストリーミングスポーツイベント)に関連するWi-Fiピアツーピアリモートディスプレイセッション中に、ソースデバイスは、シンクデバイスにメディアコンテンツをストリーミングするのにUDP上のリアルタイムトランスポートプロトコル(RTP)を利用することができる。逆に、メディアコンテンツが、記憶されたメディア(たとえば、映画)の再生など、待ち時間にクリティカルではない時には、ソースデバイスは、信頼できるデータ伝送を提供するために、TCP上のRTPに動的に切り替えることができる。その結果、ソースデバイスおよびシンクデバイスは、Wi-Fiピアツーピアリモートディスプレイセッション中に、ストリーミングすべきコンテンツのタイプ、ネットワーク条件、および/またはデバイス能力に基づいてトランスポート機構を動的に選択することができる。 The described embodiments provide a source device dynamically between a user datagram protocol (UDP) and a transmission control protocol (TCP) to stream media content such as audio data and / or video data to a sink device. System and method for switching to For example, during a Wi-Fi peer-to-peer remote display session related to real-time media content (e.g., streaming sports events), the source device uses Real-time Transport Protocol (RTP) over UDP to stream media content to the sink device. Can be used. Conversely, when the media content is not critical to latency, such as playing stored media (e.g., movies), the source device dynamically uses RTP over TCP to provide reliable data transmission. Can be switched. As a result, source and sink devices can dynamically select a transport mechanism during a Wi-Fi peer-to-peer remote display session based on the type of content to stream, network conditions, and / or device capabilities. .
別の例において、ソースデバイスは、メディアストリームを処理するシンクデバイスの音量など、再生機能を制御することができる。その結果、音量変化は、シンクデバイスでこれから再生されるべきバッファリングされたデータがある時であっても、即座に反映され得る。さらに、本開示の再生音量制御の機能性は、ソースデバイスから送信されるメディアストリーム内のオーディオの音量レベルにかかわりなく、シンクデバイスにおける音量を制御するのに使用され得る。 In another example, the source device can control playback functions, such as the volume of a sink device that processes the media stream. As a result, the volume change can be immediately reflected even when there is buffered data to be played on the sink device. Furthermore, the playback volume control functionality of the present disclosure can be used to control the volume at the sink device regardless of the volume level of the audio in the media stream transmitted from the source device.
以下の説明は、例を提供するものであって、特許請求の範囲に示された範囲、適用可能性、または構成を限定するものではない。本開示の趣旨および範囲から逸脱せずに、議論される要素の機能および配置において変更を行うことができる。様々な実施形態は、様々な手順またはコンポーネントを、適宜に省略し、置換し、または追加することができる。たとえば、説明される方法を、説明されるものとは異なる順序で実行することができ、様々なステップを、追加し、省略し、または組み合わせることができる。また、いくつかの実施形態に関して説明される特徴を、他の実施形態において組み合わせることができる。 The following description provides examples and does not limit the scope, applicability, or configuration set forth in the claims. Changes can be made in the function and arrangement of the elements discussed without departing from the spirit and scope of the disclosure. Various embodiments may omit, substitute, or add various procedures or components as appropriate. For example, the described methods can be performed in a different order than that described, and various steps can be added, omitted, or combined. Also, features described in connection with some embodiments can be combined in other embodiments.
ここで図1を参照すると、システム100は、ソースデバイス115およびシンクデバイス135を含み、1つまたは複数のアクセスポイント105を含むことができる。ソースデバイス115の例は、スマートフォン、セル電話機、ワイヤレスヘッドフォン、ウェアラブルコンピューティングデバイス、タブレット、携帯情報端末(PDA)、ラップトップ、または接続(たとえば、有線、セルラーワイヤレス、Wi-Fiなど)を介してシンクデバイス135と通信することのできる任意の他のデバイスを含むことができるが、これに限定はされない。シンクデバイス135の例は、車載インフォテイメントデバイス、TV、コンピュータ、ラップトップ、プロジェクタ、カメラ、スマートフォン、ウェアラブルコンピューティングデバイス、またはソースデバイス115と通信し、ソースデバイス115から受信されたコンテンツを表示することのできる任意の他のデバイスを含むことができるが、これに限定はされない。シンクデバイス135は、デバイスの組合せとすることができる。たとえば、シンクデバイス135は、ディスプレイデバイスと、ディスプレイデバイス上での表示のためにコンテンツを受信し、バッファリングし、復号するための別々のデバイスとを含むことができる。
Referring now to FIG. 1, the
ソースデバイス115は、リンク125を介してシンクデバイス135に接続され得る。リンク125は、図1内で、ワイヤレスリンクとして図示されているが、いくつかの実施形態において、有線リンクであっても、ワイヤレスリンクであってもよい。ワイヤレスピアツーピア接続を介して接続されたソースデバイス115とシンクデバイス135との間の通信は、シンクデバイス135においてソースデバイス115のコンテンツをリモートにレンダリングするために実行され得る。Wi-Fiリモートディスプレイは、Wi-Fi AllianceからのMiracast(登録商標)としても知られているWi-Fi Display仕様、Discovery and Launch(DIAL)、Digital Living Network Alliance(登録商標)(DLNA(登録商標))、Airplay、WirelessHD、ワイヤレスホームデジタルインターフェース(WHDI)、Intel社のワイヤレスディスプレイ(Wi-Di)技術、およびウルトラワイドバンド(UWB)接続を含むが、これらに限定はされない。以下の技法は、図1に示されたワイヤレスネットワーキングアーキテクチャを使用して説明されるが、説明される技法は、任意の適切な有線またはワイヤレスの通信技術に適用可能である。
一実施形態において、ソースデバイス115は、Wi-Fi Display接続を介してシンクデバイス135に接続される。Miracastとしても知られているWi-Fi Displayプロトコルは、ポータブルデバイスまたはコンピュータがメディアコンテンツ(たとえば、ビデオ、オーディオ、イメージなど)を互換ディスプレイにワイヤレスに送信することを可能にする。これは、ワイヤレスリンク125を介する圧縮された標準品位ビデオまたは高品位ビデオの配信を可能にする。これは、ユーザが、あるデバイスからのディスプレイを別のデバイスのディスプレイ上にエコーすることをも可能にすることができる。ワイヤレスリンク125は、直接ワイヤレスリンク(たとえば、ピアツーピアリンク125-a)であってもよいし、Wi-Fiアクセスポイントを介する間接ワイヤレスリンク(たとえば、間接リンク125-b)であってもよい。直接ワイヤレスリンクの例は、Wi-Fi Direct接続と、Wi-Fi Tunneled Direct Link Setup(TDLS)リンクを使用することによって確立される接続とを含む。
In one embodiment, the
Wi-Fi Displayは、ユーザが、ビデオコンテンツストリーミングおよび/またはオーディオコンテンツストリーミングによって、あるデバイスからのディスプレイを別のデバイスのディスプレイにエコーすることを可能にする。ソースデバイス115とシンクデバイス135との間のリンク125は、両方向とすることができる。一例において、ソースデバイス115とシンクデバイス135との間の接続は、ユーザが、シンクデバイス135を介してソースデバイス115上に記憶されたアプリケーションを起動することを可能にすることもできる。たとえば、シンクデバイス135は、様々な入力コントロール(たとえば、マウス、キーボード、ノブ、キー、ユーザインターフェースボタン)を含むことができる。これらのコントロールは、ソースデバイス115上に記憶されたメディアアプリケーションを介するソースからのオーディオ/ビデオストリーミングを開始し、そのストリーミング中に相互作用するために、シンクデバイス135において使用され得る。
Wi-Fi Display allows a user to echo the display from one device to the display of another device through video content streaming and / or audio content streaming. The
Wi-Fi Displayは、MPEG2トランスポートストリーム(MPEG-TS)などのトランスポートストリームを使用することができる。コンテンツは、メディア符号化フォーマット(たとえば、h.264、MPEG-4、h.265など)に従って符号化され得、シンクデバイス135への送信のために他の情報(たとえば、誤り訂正、ストリーム同期化など)と共にトランスポートストリームに多重化され得る。ソースデバイス115を含むシステム100は、オーディオデータおよび/またはビデオデータなどのメディアコンテンツをシンクデバイス135にストリーミングするために、UDPとTCPとの間で動的に切り替えるように構成され得る。たとえば、リアルタイムメディアコンテンツ(たとえば、ライブストリーミング、ゲーミング、または対話型ユーザ入力の表示)に関連するWi-Fiピアツーピアリモートディスプレイセッション中に、ソースデバイスは、シンクデバイスにメディアコンテンツをストリーミングするのに、UDP上でRTPを利用することができる。逆に、記憶されたメディア(たとえば、映画)の再生など、メディアコンテンツが待ち時間にクリティカルではない時には、ソースデバイスは、信頼できるデータ伝送を提供するために、TCP上のRTPに動的に切り替えることができる。Wi-Fiピアツーピアディスプレイセッションにおいてメディアデータを搬送するためにTCPトランスポートの能力を追加することは、ソースデバイスおよびシンクデバイスが、コンテンツのタイプ、ネットワーク条件、または使用可能なバッファリングなどの他の実施要因に基づいて最良のトランスポート機構を選択することを可能にする。コネクション指向のTCPは、リンク条件に適合するのに適するので、TCPの利用は、輻輳したネットワーク環境においてメディア再生の品質を実質的に改善することができる。
The Wi-Fi Display can use a transport stream such as an MPEG2 transport stream (MPEG-TS). The content may be encoded according to a media encoding format (e.g., h.264, MPEG-4, h.265, etc.) and other information (e.g., error correction, stream synchronization) for transmission to sink
いくつかの例において、Wi-Fiピアツーピアリモートディスプレイ接続がソースデバイス115とシンクデバイス135との間で確立される前またはその後に、これらのデバイスは、能力ネゴシエーション手順にかかわることができる。能力ネゴシエーション手順の一部として、ソースデバイス115は、Wi-Fiリモートディスプレイ接続を確立するためのシンクデバイス135の能力に関する様々な情報をシンクデバイス135に照会することができる。ソースデバイス115は、リアルタイムストリーミングプロトコル(RTSP)要求メッセージを送信することによって、シンクデバイス135に照会することができる。一例において、ソースデバイス115は、シンクデバイス135がデュアルモード通信を含むメディアデータに関するTCPトランスポートの使用をサポートできるかどうかを判定するために、RTSP要求メッセージ(たとえば、Get_Parameter要求メッセージ)を使用してシンクデバイス135に照会することができ、ここで、デュアルモード通信は、UDPおよび/またはTCP上でRTPメディアコンテンツトランスポートをサポートすることを含むことができる。
In some examples, before or after the Wi-Fi peer-to-peer remote display connection is established between the
一例において、能力ネゴシエーション手順中に、シンクデバイス135は、シンクデバイス135がデュアルモード通信(すなわち、UDPおよびTCP)をサポートできるかどうかを示すために、照会に対する応答を生成することができる。能力ネゴシエーション手順が終了された後に、ソースデバイス115は、UDPまたはTCPのいずれかを介してシンクデバイスにRTPメディアコンテンツをストリーミングするために、シンクデバイス135との通信を確立することができる。
In one example, during the capability negotiation procedure, the
ここで図2Aを参照すると、様々な実施形態による、ソースデバイス115-aを示すブロック図200-aがある。ソースデバイス115-aは、図1を参照して説明されたソースデバイス115のうちの1つの、1つまたは複数の態様の例であり得る。ソースデバイス115-aは、プロセッサとすることもできる。ソースデバイス115-aは、ソース受信機205と、通信管理コンポーネント210と、ソース送信機215とを含むことができる。これらのコンポーネントの各々は、お互いと通信していてもよい。
Referring now to FIG. 2A, there is a block diagram 200-a illustrating a source device 115-a according to various embodiments. Source device 115-a may be an example of one or more aspects of one of
ソースデバイス115-aのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数の特定用途向け集積回路(ASIC)を用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、フィールドプログラマブルゲートアレイ(FPGA)、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内に記憶された命令を用いて実施されることも可能である。一実施形態において、図2Aに示されたコンポーネントは、それぞれ、本明細書で説明される機能を実行するための回路または回路網を含むことができる。 The components of source device 115-a, individually or collectively, are one or more application-specific integrated circuits (ASICs) that are adapted to perform some or all of the applicable functions in hardware Can be implemented using. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. Other embodiments use other types of integrated circuits (e.g., structured / platform ASICs, field programmable gate arrays (FPGAs), and other semi-custom ICs) that can be programmed in any manner known in the art. Can be done. The function of each unit is implemented in whole or in part using instructions stored in memory that are formatted to be executed by one or more general purpose or application specific processors. Is also possible. In one embodiment, each of the components shown in FIG. 2A can include circuitry or circuitry for performing the functions described herein.
ソース受信機205は、1つまたは複数の信号202を介して、図1を参照して説明されたシンクデバイス135のうちの1つまたは複数などのシンクデバイスからの通信を受信することができる。受信された通信は、任意の適切な形のデータであるものとすることができる。ソース受信機205は、図1を参照して説明されたソースデバイス115-aとシンクデバイス135との間で確立されるワイヤレス(たとえば、Wi-Fi)ピアツーピア接続を介してこれらの通信を受信することができる。通信管理コンポーネント210は、ソースデバイス115-aによって受信された通信を1つまたは複数の信号204を介して管理することができる。さらに、通信管理コンポーネント210は、1つまたは複数の信号206を介して、ソースデバイス115-aからシンクデバイスに送信される通信を管理することができる。さらに、通信管理コンポーネント210は、オーディオストリームおよび/もしくはビデオストリーム、グラフィックスリソース、通信、ならびに/または制御命令を1つまたは複数のシンクデバイス135に提供するために、ソースデバイス115-aの諸態様を制御しまたは他の形で管理するためにデータを処理することができる。
ソース送信機215は、1つまたは複数の信号208を介して、図1を参照して説明されたシンクデバイス135のうちの1つまたは複数などのシンクデバイスに通信を送信することができる。送信される通信は、グラフィックスリソース、オーディオストリームおよび/もしくはビデオストリーム、ならびに/または通信命令などのデータを含むことができる。ソース送信機215は、ソースデバイス115-aとシンクデバイス135との間で確立されるワイヤレス(たとえば、Wi-Fi)ピアツーピア接続を介してこれらの通信を送信することができる。通信管理コンポーネント210に関する詳細は、下で説明される。
図2Bは、様々な実施形態による、ソースデバイス115-bを示すブロック図200-bである。ソースデバイス115-bは、図1および/または図2Aを参照して説明されたソースデバイス115のうちの1つの、1つまたは複数の態様の例であり得る。ソースデバイス115-bは、プロセッサとすることもできる。ソースデバイス115-bは、ソース受信機205-aと、通信管理コンポーネント210-aと、ソース送信機215-aとを含むことができる。これらのコンポーネントの各々は、お互いと通信していてもよい。
FIG. 2B is a block diagram 200-b illustrating a source device 115-b according to various embodiments. Source device 115-b may be an example of one or more aspects of one of
ソースデバイス115-bのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数のASICを用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内に記憶された命令を用いて実施されることも可能である。一実施形態において、図2Bに示されたコンポーネントは、それぞれ、本明細書で説明される機能を実行するための回路または回路網を含むことができる。 The components of source device 115-b may be implemented individually or collectively using one or more ASICs adapted to perform some or all of the applicable functions in hardware. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. In other embodiments, other types of integrated circuits (eg, structured / platform ASICs, FPGAs, and other semi-custom ICs) that can be programmed in any manner known in the art may be used. The function of each unit is implemented in whole or in part using instructions stored in memory that are formatted to be executed by one or more general purpose or application specific processors. Is also possible. In one embodiment, each of the components shown in FIG. 2B can include circuitry or circuitry for performing the functions described herein.
ソース送信機215-aは、図2Aに関して前に説明されたように構成され得る。ソース受信機205-aも、図2Aに関して前に説明されたように構成され得る。通信管理コンポーネント210-aは、マルチプロトコル通信コンポーネント220と、能力分析コンポーネント225と、再生制御コンポーネント230とを含むことができる。
Source transmitter 215-a may be configured as previously described with respect to FIG. 2A. The source receiver 205-a may also be configured as previously described with respect to FIG. 2A. The communication management component 210-a can include a
一実施形態において、マルチプロトコル通信コンポーネント220は、ソースデバイス115-bがUDPおよびTCPなどの複数のプロトコルを介するシンクデバイスとの通信をサポートすることを可能にするように構成され得る。一例において、マルチプロトコル通信コンポーネント220は、オーディオ/ビデオデータを送信するために、初期セッション中にUDPを使用してシンクデバイスとの通信を初期化することができる。別の例において、マルチプロトコル通信コンポーネント220は、シンクデバイスと通信するためのデフォルト初期セッティングとしてTCPを介する送信を選択することができる。ソースデバイス115-bによってサポートされる複数のトランスポートプロトコルのうちの1つの選択は、シンクデバイスの能力、メディアコンテンツのタイプ、ネットワーク条件、および/またはシンクデバイスにおける使用可能なバッファリングに部分的に基づくものであり得る。さらに、マルチプロトコル通信コンポーネント220は、ソースデバイス115-bが、所定の要因に基づいてUDPとTCPとの間で動的に切り替えることを可能にするように構成され得る。
In one embodiment,
能力分析コンポーネント225は、シンクデバイスの能力を照会することと、複数のトランスポートプロトコルのうちのどの1つがメディアコンテンツのストリーミングに最も適する可能性があるのかを判定することとによって、適当なトランスポートプロトコルの選択においてマルチプロトコル通信コンポーネント220を支援することができる。能力分析コンポーネント225は、Wi-Fiピアツーピアリモートディスプレイセッション中に、シンクデバイスに関する1つまたは複数の照会を生成することができる。一例において、能力分析コンポーネント225は、シンクデバイスがUDPプロトコルおよび/またはTCPプロトコルをサポートするかどうかと、シンクデバイスによって使用される関連するポート情報とを判定するために、シンクデバイスに照会することができる。別の例では、能力分析コンポーネント225は、さらに、シンクデバイスの復号器遅延と、ソースデバイスが割り振ることができる可能性がある初期バッファサイズとをシンクデバイスに照会することができる。送信された照会に応答して、能力分析コンポーネント225は、ソースデバイス115-bにシンクデバイスの能力を示すシンクデバイスからの1つまたは複数のメッセージを受信することができる。
The
一例において、再生制御コンポーネント230は、シンクデバイスに制御コマンド(たとえば、バッファフラッシュ、音量制御など)を発行することができる。いくつかの例においては、シンクデバイスが以前にバッファリングされたデータを再生せずに新しいデータのバッファリングを開始することを可能にするために、シンクデバイスのバッファをフラッシュすることが必要である場合がある。同様に、再生制御コンポーネント230は、シンクデバイスにおけるメディアコンテンツの音量を調整するために、音量制御コマンドを発行することができる。音量制御コマンドは、ソースデバイスから送信されたストリーム内のオーディオの音量レベルにかかわりなく、シンクデバイスにおける音量を調整することができる。音量制御のいくつかの例は、音量増加、音量減少、消音、および/または消音解除を含むことができる。再生制御コンポーネント230は、UDPまたはTCPのいずれかを介してメディアコンテンツを送信する間に制御コマンドを発行することができる。当業者は、再生制御コンポーネント230のコマンドが、バッファフラッシュおよび/または音量制御に排他的に限定はされないことを理解するに違いない。
In one example, the
ここで図2Cを参照すると、様々な実施形態による、ソースデバイス115-cを示すブロック図200-cがある。ソースデバイス115-cは、図1、図2A、および/または図2Bを参照して説明されたソースデバイス115のうちの1つの、1つまたは複数の態様の例であり得る。ソースデバイス115-cは、プロセッサとすることもできる。ソースデバイス115-cは、ソース受信機205-bと、通信管理コンポーネント210-bと、ソース送信機215-bとを含むことができる。これらのコンポーネントの各々は、お互いと通信していてもよい。
Referring now to FIG. 2C, there is a block diagram 200-c illustrating a source device 115-c according to various embodiments. Source device 115-c may be an example of one or more aspects of one of
ソースデバイス115-cのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数のASICを用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内に記憶された命令を用いて実施されることも可能である。一実施形態において、図2Cに示されたコンポーネントは、それぞれ、本明細書で説明される機能を実行するための回路または回路網を含むことができる。 The components of source device 115-c may be implemented individually or collectively using one or more ASICs adapted to perform some or all of the applicable functions in hardware. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. In other embodiments, other types of integrated circuits (eg, structured / platform ASICs, FPGAs, and other semi-custom ICs) that can be programmed in any manner known in the art may be used. The function of each unit is implemented in whole or in part using instructions stored in memory that are formatted to be executed by one or more general purpose or application specific processors. Is also possible. In one embodiment, each of the components shown in FIG. 2C can include circuitry or circuitry for performing the functions described herein.
ソース送信機215-bは、図2Aおよび/または図2Bに関して前に説明されたように構成され得る。ソース受信機205-bも、図2Aおよび/または図2Bに関して前に説明されたように構成され得る。通信管理コンポーネント210-bは、図2Bを参照して説明されるように、マルチプロトコル通信コンポーネント220-aと、能力分析コンポーネント225-aと、再生制御コンポーネント230-aとを含むことができる。 Source transmitter 215-b may be configured as previously described with respect to FIGS. 2A and / or 2B. Source receiver 205-b may also be configured as previously described with respect to FIGS. 2A and / or 2B. The communication management component 210-b can include a multi-protocol communication component 220-a, a capability analysis component 225-a, and a playback control component 230-a, as described with reference to FIG. 2B.
一実施形態において、マルチプロトコル通信コンポーネント220-aは、TCPポートコンポーネント235と、UDPポートコンポーネント240と、動的切替コンポーネント245とをさらに含むことができる。マルチプロトコル通信コンポーネント220-aは、TCPを介してシンクデバイスにRTPメディアコンテンツを送信するのにTCPポートコンポーネント235を利用することができる。いくつかの例において、TCPポートコンポーネント235は、アプリケーションとインターネットプロトコル(IP)レイヤとの間の中間レベルにおいて通信サービスを提供することができる。TCPポートコンポーネント235は、待ち時間を許容する(たとえば、記憶された媒体を再生する)通信がワイヤレスリンクを介してシンクデバイスに送信されようとしている時に、TCPポートをオープンするか作成することができる。同様に、UDPポートコンポーネント240は、ソースデバイス115-cからUDPを介してシンクデバイスにRTPメディアコンテンツを送信するのに利用され得る。いくつかの例において、UDPポートコンポーネント240は、Wi-Fiピアツーピアリモートディスプレイセッション中に直接ワイヤレスリンク上で少なくとも1つのシンクデバイスにメッセージおよび/またはデータグラムを送信することができる。UDPポートコンポーネント240は、リアルタイムストリーミングメディアなどの待ち時間を許容しない通信が、ワイヤレスリンクを介してシンクデバイスに送信されようとしている時に、UDPポートを作成しまたはオープンすることができる。
In one embodiment, the multi-protocol communication component 220-a can further include a
さらなる例において、動的切替コンポーネント245は、能力分析コンポーネント225-aによって判定された、シンクデバイスの能力、メディアコンテンツのタイプ、ネットワーク条件、および/または使用可能なバッファ空間に部分的に基づいて、トランスポートプロトコルを第1のプロトコルから第2のプロトコルへ切り替えることができる。第1のプロトコルおよび第2のプロトコルは、UDPおよび/またはTCPのいずれかとすることができる。能力分析コンポーネント225-aは、前に図2Bに関して説明されたように構成され得る。一例において、シンクデバイスから応答を受信する際に、動的切替コンポーネント245は、プロファイルおよびポート情報を含むRTSP要求メッセージ(たとえば、RTSP SET_PARAMETER要求)を発行することによって、第1のプロトコルから第2のプロトコルへのトランスポートプロトコルの利用の切替を開始することができる。いくつかの場合において、第1のプロトコルをUDPとすることができ、第2のプロトコルをTCPとすることができる。代替案では、他の場合において、第1のプロトコルをTCPとすることができ、第2のプロトコルをUDPとすることができる。
In further examples, the
一例において、ソースデバイス115-cは、メディアデータに関してTCPトランスポートをセットアップするための発行されたRTSP SET_PARAMETER要求に対する肯定の応答を受信する際に、シンクデバイスとの通信を確立することができる。いくつかの例において、シンクデバイスは、TCPサーバとして構成され得、ソースデバイス115-cは、TCPクライアントとして動作する。一例において、第1のプロトコルから第2のプロトコルへの切替の前、その間、および/またはその後のいずれかにオーディオフォーマットおよび/またはビデオフォーマットを変更する必要がある場合があり、ここで、第1のプロトコルまたは第2のプロトコルは、UDPまたはTCPのいずれかであり得る。 In one example, the source device 115-c can establish communication with the sink device upon receiving a positive response to the issued RTSP SET_PARAMETER request to set up the TCP transport for media data. In some examples, the sink device may be configured as a TCP server and the source device 115-c operates as a TCP client. In one example, it may be necessary to change the audio and / or video format either before, during, and / or after switching from the first protocol to the second protocol, where the first The protocol or the second protocol can be either UDP or TCP.
いくつかの例において、動的切替コンポーネント245は、第1のプロトコルから第2のプロトコルへ動的に切り替える前に、シンクデバイス内で指定された量のバッファ空間を割り振るようにさらに要求することができる。ソースデバイス115-cは、これがシンクデバイスに送信できるRTSP SET_PARAMETER要求メッセージに対するパラメータとして、初期バッファサイズを含めることができる。所定の最小バッファ空間の割振りは、ソースデバイス115-cとシンクデバイスとの間のWi-Fiリンクがジッタを有し、かつ/または誤りがある傾向を有する可能性があるので、必要になる可能性がある。その結果、所定の最小量のバッファリングが、ジッタとチャネル内の誤り(たとえば、データの再送信)によって引き起こされるパケット待ち時間とを平滑化し、シンクデバイスにおいてレンダリングされるビデオの良い品質を維持するために、シンクデバイスにおいて提供され得る。いくつかの例において、シンクバッファサイズは、プレゼンテーションのためにソースデバイス115-cからシンクデバイスに送信されるメディアストリームに関するアプリケーションのタイプに基づいて、ソースデバイス115-cによって動的に制御され得る。たとえば、諸技法は、ゲーミングアプリケーションに関してより小さく、対話型メディアアプリケーション(たとえば、対話型コンピューティング、プレゼンテーション、両方向通信など)に関してより大きく、非対話型メディアタイプ(たとえば、ストリーミングビデオ、静的イメージなど)に関してさらにより大きいバッファサイズを選択することができる。
In some examples, the
ソースデバイス115-cは、ユーザがシンクデバイス135におけるバッファリングの量に関するプリファレンスを選択することを可能にするユーザセッティングをさらに含むことができる。たとえば、ユーザは、メディアストリームの、より短い待ち時間またはより高信頼性のディスプレイの間でプリファレンスを選択できるものとされ得、ソースデバイス115-cは、それに従ってシンクバッファサイズを調整することができる。ユーザは、さらに、個々のアプリケーションに関してまたは個々のメディアストリームに関して、使用カテゴリに基づいてシンクバッファサイズプリファレンスをセットでき得る。いくつかの例において、ユーザは、第1のプロトコルから第2のプロトコルへ送信を切り替える前に、シンクバッファサイズを直接に(たとえば、ms単位でなど)セットでき得る。
Source device 115-c may further include user settings that allow a user to select a preference for the amount of buffering at
別の例において、再生制御コンポーネント230-aは、シンクデバイスに制御コマンド(たとえば、バッファフラッシュ、音量制御など)を発行すべきかどうかを判定することができる。フラッシュ制御コンポーネント250は、現在のプレゼンテーション時刻と、シンクデバイスにおけるオーディオストリームおよび/またはビデオストリームのバッファリングされたデータの量とを要求する照会に部分的に基づいて、シンクデバイスのバッファをフラッシュすべきかどうかを判定することができる。Table 1(表1)に、オーディオおよびビデオのタイミングとバッファ状況とに関する要求に関するソースデバイス115-cとシンクデバイスとの間でのメッセージ交換の一例を示す。 In another example, the playback control component 230-a can determine whether to issue a control command (eg, buffer flush, volume control, etc.) to the sink device. Whether the flash control component 250 should flush the sink device's buffer based in part on a query requesting the current presentation time and the amount of buffered data of the audio and / or video stream at the sink device Whether it can be determined. Table 1 shows an example of message exchange between the source device 115-c and the sink device regarding requests for audio and video timing and buffer status.
シンクデバイスからの応答に少なくとも部分的に基づいて、フラッシュ制御コンポーネント250は、シンクデバイスが以前にバッファリングされたデータを再生せずに新しいデータのバッファリングを開始することを可能にするために、シンクデバイスのバッファをフラッシュすることができる。フラッシュ制御コンポーネント250は、シンクデバイスのバッファを指定されたプレゼンテーションタイムスタンプ(PTS)値および/または復号タイムスタンプ(DTS)値までフラッシュするために、シンクデバイスにRTSP要求メッセージ(たとえば、RTSP SET_PARAMETER要求)を発行することができる。いくつかの例において、フラッシュ制御コンポーネント250は、ソースデバイス115-cからシンクデバイスに送信された最大のPTSに関連するPTS値を有するフラッシュコマンドをシンクデバイスに発行する前に、メディアコンテンツのストリーミングを一時停止することができる。シンクデバイスからの応答内で成功のRTSP応答または失敗メッセージのいずれかを受信する際に、ソースデバイス115-cは、以前にスケジューリングされた通りにUDPまたはTCPのいずれかを介してRTPデータのストリーミングを再開することができる。 Based at least in part on the response from the sink device, the flash control component 250 allows the sink device to begin buffering new data without playing back previously buffered data. The sink device's buffer can be flushed. The flush control component 250 sends an RTSP request message (e.g., RTSP SET_PARAMETER request) to the sink device to flush the sink device's buffer to the specified presentation time stamp (PTS) value and / or decoding time stamp (DTS) value. Can be issued. In some examples, the flash control component 250 may stream the media content before issuing a flash command to the sink device that has a PTS value associated with the maximum PTS sent from the source device 115-c to the sink device. You can pause. Upon receiving either a successful RTSP response or failure message within the response from the sink device, the source device 115-c streams the RTP data over either UDP or TCP as previously scheduled Can be resumed.
同様に、再生制御コンポーネント230-aの音量制御コンポーネント255は、シンクデバイスにおけるメディアコンテンツの音量を調整するために、音量制御コマンドを発行することができる。音量制御コマンドは、ソースデバイス115-cから送信されたストリーム内のオーディオの音量レベルにかかわりなく、シンクデバイスにおける音量を調整することができる。音量制御のいくつかの例は、音量増加、音量減少、消音、および/または消音解除を含むことができる。
Similarly, the
ここで図3Aを参照すると、ブロック図300-aは、様々な実施形態によるシンクデバイス135-aを示す。シンクデバイス135-aは、図1、図2A、図2B、および図2Cを参照して説明されたシンクデバイス135のうちの1つの1つまたは複数の態様の例であり得る。シンクデバイス135-aは、プロセッサとすることもできる。シンクデバイス135-aは、シンク受信機305と、通信確立コンポーネント310と、シンク送信機315とを含むことができる。これらのコンポーネントのそれぞれは、お互いと通信していてもよい。
Referring now to FIG. 3A, a block diagram 300-a illustrates a sink device 135-a according to various embodiments. The sink device 135-a may be an example of one or more aspects of one of the
シンクデバイス135-aのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数のASICを用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内に記憶された命令を用いて実施されることも可能である。一実施形態において、図3Aに示されたコンポーネントは、それぞれ、本明細書で説明される機能を実行するための回路または回路網を含むことができる。 The components of sink device 135-a may be implemented individually or collectively using one or more ASICs adapted to perform some or all of the applicable functions in hardware. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. In other embodiments, other types of integrated circuits (eg, structured / platform ASICs, FPGAs, and other semi-custom ICs) that can be programmed in any manner known in the art may be used. The function of each unit is implemented in whole or in part using instructions stored in memory that are formatted to be executed by one or more general purpose or application specific processors. Is also possible. In one embodiment, each of the components shown in FIG. 3A can include circuitry or circuitry for performing the functions described herein.
シンク受信機305は、1つまたは複数の信号302を介して、図1、図2A、図2B、および/または図2Cを参照して説明されたソースデバイス115などの1つまたは複数のソースデバイスから通信を受信することができる。本明細書で説明されるように、通信は、オーディオストリームおよび/もしくはビデオストリーム、グラフィックスリソース、ならびに/またはレンダリング命令を含むことができる。シンク受信機305は、シンクデバイス135-aと1つまたは複数のソースデバイス115との間で確立されるワイヤレス(たとえば、Wi-Fi)ピアツーピア接続を介してこれらの通信を受信することができる。通信確立コンポーネント310は、1つまたは複数の信号304を介して、シンクデバイス135-aによって受信されたそのような通信を管理することができる。さらに、通信確立コンポーネント310は、1つまたは複数の信号306を介して、シンクデバイス135-aからソースデバイスに送信された通信を管理することができる。本明細書で説明されるように、これらの通信は、ソースデバイスおよび/またはソースデバイス上で走行する1つまたは複数のアプリケーションと対話するための、シンクデバイス135-aにおけるユーザ入力を表すデータを含むことができる。シンク送信機315は、1つまたは複数の信号308を介して、Wi-Fi接続を介してシンクデバイス135-aからのそのようなデータを送信することができる。通信確立コンポーネント310に関するさらなる詳細は、下で説明される。
The
図3Bは、様々な実施形態によるシンクデバイス135-bを示すブロック図300-bである。シンクデバイス135-bは、図1、図2A、図2B、図2C、および/または図3Aを参照して説明されたシンクデバイス135のうちの1つの1つまたは複数の態様の例であり得る。シンクデバイス135-bは、プロセッサとすることもできる。シンクデバイス135-bは、シンク受信機305-aと、通信確立コンポーネント310-aと、シンク送信機315-aとを含むことができる。これらのコンポーネントの各々は、お互いと通信していてもよい。
FIG. 3B is a block diagram 300-b illustrating a sink device 135-b according to various embodiments. The sink device 135-b may be an example of one or more aspects of one of the
シンクデバイス135-bのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数のASICを用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内に記憶された命令を用いて実施されることも可能である。一実施形態において、図3Bに示されたコンポーネントは、それぞれ、本明細書で説明される機能を実行するための回路または回路網を含むことができる。 The components of sink device 135-b may be implemented individually or collectively using one or more ASICs adapted to perform some or all of the applicable functions in hardware. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. In other embodiments, other types of integrated circuits (eg, structured / platform ASICs, FPGAs, and other semi-custom ICs) that can be programmed in any manner known in the art may be used. The function of each unit is implemented in whole or in part using instructions stored in memory that are formatted to be executed by one or more general purpose or application specific processors. Is also possible. In one embodiment, each of the components shown in FIG. 3B can include circuitry or circuitry for performing the functions described herein.
シンク受信機305-aおよびシンク送信機315-aは、図3Aを参照して前に説明されたように構成され得る。通信確立コンポーネント310-aは、デュアルモード通信コンポーネント320と、バッファ管理コンポーネント325と、照会応答コンポーネント330と、再生制御受信コンポーネント335とを含むことができる。
Sink receiver 305-a and sink transmitter 315-a may be configured as previously described with reference to FIG. 3A. The communication establishment component 310-a can include a dual
デュアルモード通信コンポーネント320は、UDPトランスポートプロトコルまたはTCPトランスポートプロトコルのいずれかを介してソースデバイスから受信されたメディアコンテンツを復号するように構成され得る。そのような例において、デュアルモード通信コンポーネント320は、シンクデバイス135-bがUDPとTCPとの両方を介してメディアコンテンツを受信するように構成されることの応答をソースデバイスに送信するための指示を照会応答コンポーネント330に提供することによって、その能力をソースデバイスに対して識別することができる。
The dual
バッファ管理コンポーネント325は、シンクデバイス135-bのバッファを管理するように構成され得る。いくつかの例において、ソースデバイスは、ジッタと、チャネル内の誤り(たとえば、データの再送信など)によって引き起こされるパケット待ち時間とを平滑化し、シンクデバイス135-bにおいてレンダリングされるビデオの良い品質を維持するために、シンクデバイス135-b内で指定された量のバッファ空間を割り振るように要求することができる。いくつかの例において、シンクバッファサイズは、プレゼンテーションのためにソースデバイスからシンクデバイスに送信されるメディアストリームに関するアプリケーションのタイプに基づいて、ソースデバイスによって動的に割り振られ得る。その結果、バッファ管理コンポーネント325は、ディスプレイデバイス(図示せず)上でメディアコンテンツをレンダリングする前に、バッファ内で所定の量のメディアコンテンツをバッファリングするように構成され得る。バッファ管理コンポーネント325は、ソースデバイスによって発行されたフラッシュコマンドにさらに応答することができる。そのような例において、バッファ管理コンポーネント325は、指定されたPTS値までバッファをフラッシュすることができる。いくつかの例において、バッファ管理コンポーネント325は、さらに、ソースデバイスによって発行された照会に応答して照会応答コンポーネント330にクリティカル情報を提供することができる。クリティカル情報は、初期バッファサイズ、再生されているオーディオストリームおよび/またはビデオストリームの現在のプレゼンテーション時刻、ならびに使用可能なバッファ空間を含むことができる。
The
照会応答コンポーネント330は、シンクデバイス135-bに情報を要求する発行された照会に応答してソースデバイスへのメッセージを生成するために、デュアルモード通信コンポーネント320およびバッファ管理コンポーネント325から情報を収集することができる。さらなる例において、再生制御受信コンポーネント335は、ソースデバイスからシンクデバイス135-bにストリーミングされたメディアコンテンツの音量を調整するための音量制御などの制御情報を受信するように構成され得る。これに応答して、再生制御受信コンポーネント335は、ソースデバイスから送信されたストリーム内のオーディオの音量レベルにかかわりなく、シンクデバイスにおける音量を調整することができる。いくつかの例において、音量制御は、音量増加、音量減少、消音、および/または消音解除を含むことができる。
図4は、様々な実施形態によるデバイス115-dを示すブロック図400である。デバイス115-dは、図1、図2A、図2B、および/または図2Cを参照して説明されたソースデバイス115のうちの1つの、1つまたは複数の態様の例であり得る。デバイス115-dは、別のデバイスにコンテンツを提供するために、他のワイヤレスデバイスとのWi-Fi直接通信(たとえば、Wi-Fiピアツーピア接続を介する)に参加するように構成され得る。デバイス115-dは、パーソナルコンピュータ(たとえば、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータなど)、セルラー電話機、PDA、デジタルビデオレコーダ(DVR)、インターネット機器、ゲーム機、電子ブックリーダ、その他など、様々な例のいずれをも有することができる。デバイス115-dは、モバイル動作を容易にするために、小型バッテリなどの内蔵電源(図示せず)を有することができる。
FIG. 4 is a block diagram 400 illustrating a device 115-d according to various embodiments. Device 115-d may be an example of one or more aspects of one of the
デバイス115-dは、それぞれがお互いと直接または間接に通信していてもよい(たとえば、1つまたは複数のバス455を介して)、アンテナ410と、トランシーバ415と、メモリ425と、プロセッサ435とを含む。トランシーバ415は、上で説明されたように、アンテナ410を介して両方向で通信するように構成される。たとえば、トランシーバ415は、図1、図2A、図2B、図2C、図3A、および/または図3Bの他のデバイス115および/または135と両方向で通信するように構成され得る。トランシーバ415は、前に説明されたように、図2の受信機205および送信機215を含むことができる。一実施形態において、トランシーバ415は、パケットを変調し、変調されたパケットを送信のためにアンテナ410に供給し、アンテナ410から受信されたパケットを復調するように構成されたモデムをさらに含むことができる。デバイス115-dは、単一のアンテナを含むことができるが、デバイス115-dは、通常は複数のリンクのために複数のアンテナ410を含む。
Devices 115-d may each communicate directly or indirectly with each other (e.g., via one or more buses 455),
メモリ425は、ランダムアクセスメモリ(RAM)および読取専用メモリ(ROM)を含むことができる。メモリ425は、実行された時にプロセッサ435に本明細書で説明される様々な機能(たとえば、オーディオストリームおよび/もしくはビデオストリーム、グラフィックスリソース、ならびに/またはレンダリング命令を識別し/判定し/入手し、受信し、送信するなど)を実行させるように構成された命令を含むコンピュータ可読コンピュータ実行可能ソフトウェアコード430を記憶することができる。代替案では、ソフトウェア430は、プロセッサ435によって直接に実行可能であるのではなく、コンピュータに(たとえばコンパイルされ、実行される時に)本明細書で説明される機能を実行させるように構成され得る。
The
プロセッサ435は、インテリジェントハードウェアデバイス、たとえば、中央処理装置(CPU)、マイクロコントローラ、ASIC、その他を含むことができる。図4のアーキテクチャによれば、デバイス115-dは、図2Aおよび図2Bを参照して説明されたように、マルチプロトコル通信コンポーネント220-b、能力分析コンポーネント225-b、および再生制御コンポーネント230-bをさらに含むことができる。マルチプロトコル通信コンポーネント220-b、能力分析コンポーネント225-b、および再生制御コンポーネント230-bは、バス455を介してデバイス115-dの他のコンポーネントのうちの一部またはすべてと通信している、デバイス115-dのコンポーネントであり得る。
The
デバイス115-dのコンポーネントは、個別にまたは集合的に、適用可能な機能の一部またはすべてをハードウェア内で実行するように適合された1つまたは複数のASICを用いて実施され得る。代替案では、機能は、1つまたは複数の集積回路上の1つまたは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で既知の任意の形でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能は、全体的にまたは部分的に、1つまたは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内で実施された命令を用いて実施されることも可能である。注記されたコンポーネントの各々は、本明細書で説明されるデバイス115-dの動作に関する1つまたは複数の機能を実行するための手段であり得る。 The components of device 115-d may be implemented individually or collectively using one or more ASICs adapted to perform some or all of the applicable functions in hardware. In the alternative, the functions may be performed by one or more other processing units (or cores) on one or more integrated circuits. In other embodiments, other types of integrated circuits (eg, structured / platform ASICs, FPGAs, and other semi-custom ICs) that can be programmed in any manner known in the art may be used. The function of each unit may be implemented in whole or in part using instructions implemented in memory formatted to be executed by one or more general purpose or application specific processors. Is also possible. Each of the noted components may be a means for performing one or more functions related to the operation of device 115-d as described herein.
図5は、ソースデバイス115-eとシンクデバイス135-cとの間の通信の流れの一例を示すメッセージフロー図500である。ソースデバイス115-eは、図1、図2、および/または図4のデバイス115の例であり得る。シンクデバイス135-cは、図1および/または図3のシンクデバイス135の例であり得る。一例において、ソースデバイス115-eおよびシンクデバイス135-cは、Wi-Fiピアツーピア接続を介して接続され得る。ソースデバイス115-eは、UDPトランスポートプロトコルを利用する、シンクデバイス135-cとの確立された接続を有することができる。代替案では、当業者は、ソースデバイス115-eとシンクデバイス135-cとの間のデフォルト通信リンクが、UDPを介するRTPメディアデータの伝送に限定されるのではなく、その代わりにTCPトランスポートプロトコルをも含むことができることを理解するに違いない。
FIG. 5 is a message flow diagram 500 illustrating an example of the flow of communication between the source device 115-e and the sink device 135-c. Source device 115-e may be an example of
図5を参照すると、ソースデバイス115-eは、シンクデバイス135-cの能力を照会するために、シンクデバイス135-cにRTSP「パラメータ取得要求」505を送信することができる。「パラメータ取得要求」505は、シンクデバイス135-cがTCPプロトコルをサポートするかどうか、TCPトランスポートを介するRTPのために使用されるポート情報、復号器待ち時間、および/またはシンクデバイス135-cの初期バッファサイズなどの情報を要求することができる。これに応答して、シンクデバイス135-cは、TCPトランスポートのために使用されるポート情報および要求されたバッファサイズ値と一緒に、シンクデバイス135-cがTCPを介するRTPメディアコンテンツを復号できるかどうかを示すRTSP「パラメータ取得応答」510を発行することができる。ソースデバイス115-eからのTCPに関するRTSP「パラメータ取得要求」505に応答してシンクデバイス135-cから「RTSP OK」510を返す際に、シンクデバイス135-cは、そのTCPサーバを始動し、指定されたポート内でのTCPを介する接続の受け入れの準備ができている。Table 2(表2)は、ソースデバイス115-eによって発行された照会に関するソースデバイス115-eとシンクデバイス135-cとの間の交換の一例を示す。一例において、図1および/または図2を参照して説明されたソースデバイス115の通信管理コンポーネント210および図3を参照して説明されたシンクデバイス135の通信確立コンポーネント310は、下で説明される機能を実行するために、それぞれソースデバイス115-eおよびシンクデバイス135-cの機能要素を制御するためにコードの1つまたは複数のセットを実行することができる。
Referring to FIG. 5, the source device 115-e may send an RTSP “parameter acquisition request” 505 to the sink device 135-c to query the capabilities of the sink device 135-c. “Parameter Acquisition Request” 505 indicates whether the sink device 135-c supports the TCP protocol, port information used for RTP over TCP transport, decoder latency, and / or sink device 135-c. You can request information such as the initial buffer size. In response, sink device 135-c can decode RTP media content over TCP, along with the port information used for TCP transport and the requested buffer size value. RTSP “parameter acquisition response” 510 indicating whether or not can be issued. When the sink device 135-c returns “RTSP OK” 510 in response to the RTSP “parameter acquisition request” 505 regarding TCP from the source device 115-e, the sink device 135-c starts its TCP server, Ready to accept connections over TCP on the specified port. Table 2 shows an example of an exchange between the source device 115-e and the sink device 135-c for a query issued by the source device 115-e. In one example, the
ソースデバイス115-eは、シンクデバイス135-cから能力情報を受信する際に、UDP上のRTPからTCP上のRTPへのメディアコンテンツの送信の切替を開始するために、RTSP「パラメータセット要求」515を用いて応答することができる。いくつかの例において、第1のトランスポートプロトコルから第2のトランスポートプロトコルへの切替は、ソースデバイスおよびシンクデバイス内での内部一時停止を含む。「パラメータセット要求」515は、RTP/AVP/TCPプロファイルおよびポート情報を含むwfd-rtp-client-over-tcp-portsパラメータを有するRTSPセットアップ要求を含むことができる。シンクデバイス135-cは、返報として、シンクデバイス135-cにおいてTCPサーバを実行し、シンクデバイス135-cがすでにそのTCPサーバを始動し、ソースデバイス115-eからの接続を受け入れる準備ができていることを示すRTSP「パラメータセット応答」520を返すことができる。 When the source device 115-e receives the capability information from the sink device 135-c, the RTSP “parameter set request” is used to start switching the transmission of media content from RTP over UDP to RTP over TCP. You can respond with 515. In some examples, switching from the first transport protocol to the second transport protocol includes an internal pause in the source device and the sink device. The “Parameter Set Request” 515 may include an RTSP setup request with a wfd-rtp-client-over-tcp-ports parameter that includes RTP / AVP / TCP profile and port information. In return, sink device 135-c runs a TCP server at sink device 135-c, and sink device 135-c has already started the TCP server and is ready to accept connections from source device 115-e. RTSP “parameter set response” 520 can be returned to indicate that
ソースデバイス115-eは、肯定の「パラメータセット応答」520を受信する際に、TCP上のRTPメディアコンテンツ525を送信することによって、シンクデバイス135-cとの通信を開始することができる。RTPデータが、TCPトランスポートを介して送信されようとしている時に、各RTPパケットデータは、IETF RFC 4571、「Framing Real-time Transport Protocol (RTP) and RTP Control Protocol (RTCP) packets over Connection-Oriented Transport」に従ってフレーミングされ得る。シンクデバイス135-cは、シンクデバイス135-cのディスプレイ上で、ストリーミングされたメディアコンテンツをレンダリングする530ことができる。Table 3(表3)は、UDPからTCPへおよび/またはTCPからUDPへの送信の切替に関する、ソースデバイス115-eとシンクデバイス135-cとの間での上で示されたメッセージ交換の一例を示す。当業者は、示された例が、指定された例に対して限定的ではないことを理解するはずである。
When source device 115-e receives an affirmative “parameter set response” 520, source device 115-e may initiate communication with sink device 135-c by transmitting
さらなる例において、ソースデバイス115-eは、コンテンツのタイプおよび/またはネットワーク条件に部分的に基づいて、もう一度UDP上でのメディアコンテンツの送信に戻ろうと努めることができる。その場合に、ソースデバイス115-eは、TCPからUDPへのトランスポートプロトコルの切替の処理を開始するために、「パラメータセット要求」535を発行することができる。その結果、シンクデバイス135-cは、シンクデバイス135-cがTCP上のRTPデータの受信からUDP上のRTPデータの受信に切り替えるように構成されることを示す「パラメータセット応答」540を用いて応答することができる。その結果、ソースデバイス115-eは、UDP上のメディアコンテンツのストリーミング545を再開することができ、このメディアコンテンツは、シンクデバイス135-c上でレンダリングされ、表示され550得る。 In a further example, source device 115-e may attempt to return to sending media content over UDP again based in part on the type of content and / or network conditions. In that case, the source device 115-e can issue a “parameter set request” 535 to start the process of switching the transport protocol from TCP to UDP. As a result, sink device 135-c uses “parameter set response” 540 to indicate that sink device 135-c is configured to switch from receiving RTP data on TCP to receiving RTP data on UDP. Can respond. As a result, the source device 115-e can resume streaming 545 of media content over UDP, which may be rendered and displayed 550 on the sink device 135-c.
図6は、ソースデバイス115-fとシンクデバイス135-dとの間の通信の別の例を示すメッセージフロー図600である。ソースデバイス115-fは、図1、図2、図4、および/または図5のデバイス115の例であり得る。シンクデバイス135-dは、図1および/または図3に示されたシンクデバイス135の例であり得る。一例において、ソースデバイス115-fおよびシンクデバイス135-dは、Wi-Fiピアツーピア接続を介して接続され得る。ソースデバイス115-fは、UDPトランスポートプロトコルまたはTCPトランスポートプロトコルのいずれかを利用して、シンクデバイス135-dとの確立された通信を有することができる。
FIG. 6 is a message flow diagram 600 illustrating another example of communication between the source device 115-f and the sink device 135-d. Source device 115-f may be an example of
いくつかの例において、ソースデバイス115-fは、シンクデバイス135-dに、フラッシュコマンドおよび音量制御コマンドなどの再生制御コマンドを発行することができる。
しかし、図5を参照して説明された形に似て、制御コマンドの発行には、ソースデバイス115-fとシンクデバイス135-dとの間の能力ネゴシエーション手順の確立が先行する。図6を参照すると、このネゴシエーションは、それぞれソースデバイス115-fとシンクデバイス135-dとの間で交換されるRTSP「パラメータ取得要求」605およびRTSP「パラメータ取得応答」610に基づく。その後、ソースデバイス115-fは、シンクデバイス135-dがそのそれぞれのバッファをそれにフラッシュできる、ソースデバイス115-fからシンクデバイス135-dに送信されたデータパケットのPTS値を識別するフラッシュコマンド615を発行することができる。発行されたフラッシュコマンドの成功の処理時に、シンクデバイス135-dは、応答620を確認して応答することができる。その結果、シンクデバイス135-dは、PTS値まで、シンクデバイス135-dのバッファをフラッシュする625ことができる。Table 4(表4)は、ソースデバイス115-fとシンクデバイス135-dとの間でのフラッシュコマンド交換の一例を示す。
In some examples, the source device 115-f can issue playback control commands, such as flash commands and volume control commands, to the sink device 135-d.
However, similar to the form described with reference to FIG. 5, the issue of the control command is preceded by the establishment of a capability negotiation procedure between the source device 115-f and the sink device 135-d. Referring to FIG. 6, this negotiation is based on RTSP “parameter acquisition request” 605 and RTSP “parameter acquisition response” 610 exchanged between source device 115-f and sink device 135-d, respectively. The source device 115-f then flushes the
同様に、ソースデバイス115-fは、シンクデバイス135-dへのデータストリームの音量を調整するために、シンクデバイス135-dに音量制御コマンド630を発行することができる。発行された音量制御コマンド630の成功の処理時に、シンクデバイス135-dは、応答635を確認して応答することができる。その結果、シンクデバイス135-dは、シンクデバイス135-dにおけるメディアコンテンツの音量を調整しまたは更新する640ことができる。シンクデバイス135-dにおける音量は、ソースデバイス115-fから送信されたストリーム内のオーディオの音量レベルにはかかわりなく調整されまたは更新され得る。音量制御のいくつかの例は、音量増加、音量減少、消音、および/または消音解除を含むことができる。Table 5(表5)は、図2Cを参照して説明された、ソースデバイス115の音量制御コンポーネント255によって開始されるソースデバイス115-fとシンクデバイス135-dとの間で交換される音量制御の一例を示す。
Similarly, the source device 115-f can issue a
図7は、シンクデバイス135とのワイヤレス通信のためにソースデバイス115によって実行される方法700を示す。明瞭さのために、方法700は、図1に示されたシステム100を参照し、ならびに/または図1、図2A、図2B、図2C、図4、図5、および/もしくは図6を参照して説明されたデバイス115のうちの1つを参照して、下で説明される。一実施態様において、図2A、図2B、および/または図2Cを参照して説明された通信管理コンポーネント210は、下で説明される機能を実行するためにソースデバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行することができる。
FIG. 7 shows a
方法700のブロック705において、ソースデバイス115は、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始する。ブロック705の動作は、図2A、図2B、および/または図2Cを参照して説明された通信管理コンポーネント210および/またはマルチプロトコル通信コンポーネント220によって実行され得る。
At
方法700のブロック710において、ソースデバイス115は、シンクデバイス135によってサポートされる第2のプロトコルを識別することができる。ブロック710の動作は、図2Bおよび/または図2Cを参照して説明された能力分析コンポーネント225によって実行され得る。ブロック715において、ソースデバイス115は、Wi-Fiピアツーピアリモートディスプレイセッション中にメディアストリームを送信するために第2のプロトコルに動的に切り替えることができる。ブロック715の動作は、図2Cを参照して説明された動的切替コンポーネント245によって実行され得る。
In
図8は、シンクデバイス135とのワイヤレス通信のためにソースデバイス115によって実行される方法800を示す。明瞭さのために、方法800は、図1に示されたシステム100を参照し、ならびに/または図1、図2A、図2B、図2C、図4、図5、および/もしくは図6を参照して説明されたデバイス115のうちの1つを参照して、下で説明される。一実施態様において、図2A、図2B、および/または図2Cを参照して説明された通信管理コンポーネント210は、下で説明される機能を実行するためにソースデバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行することができる。
FIG. 8 shows a
方法800のブロック805において、ソースデバイス115は、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始する。ブロック805の動作は、図2A、図2B、および/または図2Cを参照して説明された通信管理コンポーネント210および/またはマルチプロトコル通信コンポーネント220によって実行され得る。
At
方法800のブロック810において、ソースデバイス115は、TCP接続のために使用されるポート情報と一緒に、シンクデバイスがTCPトランスポートプロトコルをサポートできるかどうかを判定するためにシンクデバイスに照会を送信することができる。ブロック810の動作は、図2Bおよび/または図2Cを参照して説明された能力分析コンポーネント225によって実行され得る。ブロック815において、ソースデバイス115は、照会に応答して、シンクデバイスがTCPをサポートすることを確認するメッセージと、シンクデバイスがリスンしつつある関連するTCPポートとを受信することができる。ブロック815の動作は、図2A、図2B、および/または図2Cを参照して説明されたソース受信機205によって実行され得る。
In
方法800のブロック820において、ソースデバイス115は、Wi-Fiピアツーピアリモートディスプレイセッション中にメディアストリームを送信するために第2のプロトコルに動的に切り替えることができる。ブロック820の動作は、図2Cを参照して説明された動的切替コンポーネント245によって実行され得る。
At
添付図面に関連して上で示された詳細な説明は、例示的実施形態を説明するものであって、実施され得る実施形態のみまたは特許請求の範囲の範囲内の実施形態のみを表すものではない。この説明全体にわたって使用される「例示的」という用語は、「例、事例、または例示の働きをすること」を意味し、「好ましい」または「他の実施形態よりも有利である」ことを意味しない。発明を実施するための形態は、説明された技法の理解を提供するための特定の詳細を含む。しかし、これらの技法を、これらの特定の詳細を用いずに実践することができる。いくつかの場合に、周知の構造およびデバイスは、説明される実施形態の諸概念を不明瞭にすることを避けるために、ブロック図形式で示される。 The detailed description set forth above in connection with the appended drawings is intended as a description of exemplary embodiments and is not intended to represent the only embodiments that may be implemented or that are within the scope of the claims. Absent. As used throughout this description, the term “exemplary” means “acting as an example, instance, or illustration” and means “preferred” or “advantageous over other embodiments”. do not do. The detailed description includes specific details for providing an understanding of the described techniques. However, these techniques can be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described embodiments.
情報および信号は、様々な異なる技術および技法のいずれを使用することによっても表され得る。たとえば、上の説明全体にわたって参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光学場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。 Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referred to throughout the above description are voltages, currents, electromagnetic waves, magnetic fields or magnetic particles, optical fields or optical particles, or Can be represented by any combination of
諸実施形態において、図2A、図2B、図2C、図3A、図3B、および図4に示されたコンポーネントは、それぞれ、図2A、図2B、図2C、図3A、図3B、および図4を参照して本明細書で説明される機能を実行するための回路または回路網を含む。 In embodiments, the components shown in FIGS. 2A, 2B, 2C, 3A, 3B, and 4 are shown in FIGS. 2A, 2B, 2C, 3A, 3B, and 4 respectively. Includes circuitry or circuitry for performing the functions described herein.
本明細書の開示に関連して説明された様々な例示的なブロックおよびコンポーネントは、本明細書で説明される機能を実行するように設計された、汎用プロセッサ、デジタル信号プロセッサ(DSP)、ASIC、FPGAもしくは他のプログラマブル論理デバイス、ディスクリートゲートもしくはトランジスタ論理、ディスクリートハードウェアコンポーネント、またはその任意の組合せを用いて実施されまたは実行され得る。汎用プロセッサは、マイクロプロセッサであってもよいが、代替案においては、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であってもよい。プロセッサは、コンピューティングデバイスの組合せ、たとえば、DSPおよびマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアに関連する1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成としても実施され得る。 Various exemplary blocks and components described in connection with the disclosure herein are general purpose processors, digital signal processors (DSPs), ASICs designed to perform the functions described herein. , FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, eg, a combination of DSP and microprocessor, multiple microprocessors, one or more microprocessors associated with a DSP core, or any other such configuration. .
本明細書において説明される機能は、ハードウェア、プロセッサによって実行されるソフトウェア、ファームウェア、またはその任意の組合せ内で実施され得る。機能は、プロセッサによって実行されるソフトウェア内で実装される場合に、コンピュータ可読媒体上に記憶され、または1つもしくは複数の命令もしくはコードとしてコンピュータ可読媒体上で送信され得る。他の例および実施態様は、本開示および添付の特許請求の範囲の範囲および要旨に含まれる。たとえば、ソフトウェアの性質に起因して、上で説明される機能は、プロセッサによって実行されるソフトウェア、ハードウェア、ファームウェア、ハードワイヤリング、またはこれらのいずれかの組合せを使用して実施され得る。機能を実装する特徴は、機能の一部が異なる物理位置において実装されるように分散されること状態を含めて、様々な位置に物理的に配置されることも可能である。また、請求項内を含めて本明細書で使用される時に、項目のリスト(たとえば、「at least one of(少なくとも1つの〜)」または「one or more of(〜のうちの1つまたは複数)」などの句がその前に置かれた項目のリスト)内で使用される「or(または)」は、離接的なリストを示し、たとえば、「at least one of A, B, or C(A、B、またはCのうちの少なくとも1つ)」のリストは、A、B、C、AB、AC、BC、またはABC(すなわち、AとBとCと)を意味する。 The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. The functionality, when implemented in software executed by a processor, may be stored on a computer readable medium or transmitted as one or more instructions or code on a computer readable medium. Other examples and implementations are within the scope and spirit of the present disclosure and appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hardwiring, or any combination thereof. Features that implement functions can also be physically located at various locations, including the state that some of the functions are distributed so that they are implemented at different physical locations. Also, as used herein, including within the claims, a list of items (e.g., “at least one of” or “one or more of” one or more of ) '' Or `` or (or) '' used in the preceding list of items) indicates a disjunctive list, for example, `` at least one of A, B, or C A list of (at least one of A, B, or C) means A, B, C, AB, AC, BC, or ABC (ie, A, B, and C).
コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にするすべての媒体を含む、コンピュータ記憶媒体と通信媒体との両方を含む。記憶媒体は、汎用コンピュータまたは特殊目的コンピュータによってアクセスされ得る任意の使用可能な媒体であってもよい。限定ではなく例として、コンピュータ可読媒体は、RAM、ROM、電気的消去可能プログラマブルROM(EEPROM)、コンパクトディスク(disc)ROM(CD-ROM)もしくは他の光ディスクストレージ、磁気ディスク(disk)ストレージまたは他の磁気ストレージデバイス、または、命令もしくはデータ構造の形において所望のプログラムコード手段を担持しもしくは記憶するのに使用され得、汎用コンピュータ、特殊目的コンピュータ、汎用プロセッサ、もしくは特殊目的プロセッサによってアクセスされ得る任意の他の媒体を含むことができる。また、すべての接続は、当然、コンピュータ可読媒体と呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、より対線、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合に、同軸ケーブル、光ファイバケーブル、より対線、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ディスク(disk)およびディスク(disc)は、本明細書で使用される時に、CD、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピディスク(disk)、およびBlu-ray(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常は磁気的にデータを再生し、ディスク(disc)は、レーザを用いて光学的にデータを再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれる。 Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, computer readable media can be RAM, ROM, electrically erasable programmable ROM (EEPROM), compact disc (CD-ROM) or other optical disk storage, magnetic disk storage or other. A magnetic storage device or any of those that can be used to carry or store the desired program code means in the form of instructions or data structures and accessed by a general purpose computer, special purpose computer, general purpose processor, or special purpose processor Other media can be included. Also, all connections are naturally referred to as computer readable media. For example, software uses a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technology such as infrared, wireless, and microwave to use a website, server, or other remote When transmitted from a source, coaxial technologies, fiber optic cables, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of media. As used herein, disk and disc are CD, laser disc (disc), optical disc (disc), digital versatile disc (DVD), floppy disc (disk), And a Blu-ray (registered trademark) disc. The disc usually reproduces data magnetically, and the disc reproduces data optically using a laser. Combinations of the above are also included within the scope of computer-readable media.
本開示の以前の説明は、当業者が本開示を作りまたは使用することを可能にするために提供される。本開示に対する様々な変更は、当業者にたやすく明白になり、本明細書において定義される包括的な原理は、本開示の趣旨または範囲から逸脱せずに他の変形形態に適用され得る。本開示全体にわたって、「例」または「例示的」という用語は、一例または一事例を示すものであり、言及された例についてのいかなる優先をも暗示することはなく、または要求することもない。したがって、本開示は、本明細書において説明される例および設計に限定されてはならず、本明細書において開示される原理および新規の特徴と一貫する最も広い範囲を与えられなければならない。 The previous description of the disclosure is provided to enable any person skilled in the art to make or use the disclosure. Various modifications to the present disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the spirit or scope of the present disclosure. Throughout this disclosure, the term “example” or “exemplary” indicates an example or instance, and does not imply or require any preference for the recited example. Accordingly, the present disclosure should not be limited to the examples and designs described herein, but should be accorded the widest scope consistent with the principles and novel features disclosed herein.
100 システム
105 アクセスポイント
115 ソースデバイス
115-a ソースデバイス
115-b ソースデバイス
115-c ソースデバイス
115-d デバイス
115-e ソースデバイス
115-f ソースデバイス
125 リンク
125-a ピアツーピアリンク
125-b 間接リンク
135 シンクデバイス
135-a シンクデバイス
135-b シンクデバイス
135-c シンクデバイス
135-d シンクデバイス
200-a ブロック図
200-b ブロック図
200-c ブロック図
202 信号
204 信号
205 ソース受信機
205-a ソース受信機
205-b ソース受信機
206 信号
208 信号
210 通信管理コンポーネント
210-a 通信管理コンポーネント
210-b 通信管理コンポーネント
215 ソース送信機
215-a ソース送信機
215-b ソース送信機
220 マルチプロトコル通信コンポーネント
220-a マルチプロトコル通信コンポーネント
220-b マルチプロトコル通信コンポーネント
225 能力分析コンポーネント
225-a 能力分析コンポーネント
225-b 能力分析コンポーネント
230 再生制御コンポーネント
230-a 再生制御コンポーネント
230-b 再生制御コンポーネント
235 TCPポートコンポーネント
240 UDPポートコンポーネント
245 動的切替コンポーネント
250 フラッシュ制御コンポーネント
255 音量制御コンポーネント
300-a ブロック図
300-b ブロック図
302 信号
304 信号
305 シンク受信機
305-a シンク受信機
306 信号
308 信号
310 通信確立コンポーネント
310-a 通信確立コンポーネント
315 シンク送信機
315-a シンク送信機
320 デュアルモード通信コンポーネント
325 バッファ管理コンポーネント
330 照会応答コンポーネント
335 再生制御受信コンポーネント
400 ブロック図
410 アンテナ
415 トランシーバ
425 メモリ
430 コンピュータ可読コンピュータ実行可能ソフトウェアコード
435 プロセッサ
455 バス
500 メッセージフロー図
505 RTSP「パラメータ取得要求」
510 RTSP「パラメータ取得応答」
515 RTSP「パラメータセット要求」
520 RTSP「パラメータセット応答」
525 TCP上のRTPメディアコンテンツ
535 「パラメータセット要求」
540 「パラメータセット応答」
545 UDP上のメディアコンテンツのストリーミング
600 メッセージフロー図
605 RTSP「パラメータ取得要求」
610 RTSP「パラメータ取得応答」
615 フラッシュコマンド
620 応答
630 音量制御コマンド
635 応答
700 方法
800 方法
100 system
105 access point
115 Source device
115-a source device
115-b source device
115-c source device
115-d device
115-e source device
115-f source device
125 links
125-a peer-to-peer link
125-b indirect link
135 Sink device
135-a sink device
135-b sink device
135-c sink device
135-d sink device
200-a block diagram
200-b block diagram
200-c block diagram
202 signals
204 signal
205 Source receiver
205-a source receiver
205-b source receiver
206 signals
208 signals
210 Communication Management Component
210-a Communication Management Component
210-b Communication Management Component
215 source transmitter
215-a source transmitter
215-b source transmitter
220 Multiprotocol communication components
220-a multiprotocol communication component
220-b multiprotocol communication component
225 Capability analysis component
225-a Capability analysis component
225-b Capability Analysis Component
230 Playback control components
230-a Playback control component
230-b Playback control component
235 TCP port component
240 UDP port component
245 Dynamic switching components
250 flash control components
255 Volume control component
300-a block diagram
300-b block diagram
302 signal
304 signal
305 sink receiver
305-a sink receiver
306 signal
308 signal
310 Communication establishment component
310-a Communication establishment component
315 sink transmitter
315-a sink transmitter
320 Dual-mode communication components
325 Buffer Management Component
330 Query Response component
335 Playback control reception component
400 block diagram
410 Antenna
415 transceiver
425 memory
430 Computer readable computer executable software code
435 processor
455 bus
500 message flow diagram
505 RTSP “Parameter acquisition request”
510 RTSP “Parameter Acquisition Response”
515 RTSP “Parameter Set Request”
520 RTSP “Parameter Set Response”
525 RTP media content over TCP
535 “Parameter Set Request”
540 “Parameter Set Response”
545 Media content streaming over UDP
600 Message Flow Diagram
605 RTSP “Parameter acquisition request”
610 RTSP "Parameter acquisition response"
615 Flash command
620 response
630 Volume control command
635 responses
700 methods
800 methods
Claims (30)
前記シンクデバイスによってサポートされる第2のプロトコルを識別するステップと、
前記Wi-Fiピアツーピアリモートディスプレイセッション中に前記メディアストリームを送信するためにメディアコンテンツのタイプに基づいて前記第2のプロトコルに動的に切り替えるステップと
を含む、ワイヤレス通信のための方法。 Initiating a media stream by a source device to a sink device via a first protocol during a Wi-Fi peer-to-peer remote display session;
Identifying a second protocol supported by the sink device;
Dynamically switching to the second protocol based on a type of media content to transmit the media stream during the Wi-Fi peer-to-peer remote display session.
前記シンクデバイスが伝送制御プロトコル(TCP)をサポートするかどうかと、TCP接続のために使用される1つまたは複数のポートとを判定するために前記シンクデバイスに照会を送信するステップと、
前記照会に応答して、前記シンクデバイスがTCPをサポートすることを確認するメッセージとポート情報とを受信するステップと
を含む、請求項1に記載の方法。 Identifying the second protocol supported by the sink device comprises:
Sending a query to the sink device to determine whether the sink device supports Transmission Control Protocol (TCP) and one or more ports used for TCP connection;
The method of claim 1, comprising: receiving a message confirming that the sink device supports TCP and port information in response to the inquiry.
をさらに含む、請求項4に記載の方法。 5. The method of claim 4, further comprising: querying the sink device to determine a decoder latency and buffer size of the sink device.
をさらに含む、請求項4に記載の方法。 5. The method of claim 4, further comprising: sending a setup request to the sink device in response to the received message, wherein the setup request includes a profile and port information. .
前記選択されたバッファサイズを前記シンクデバイスに送信するステップと
をさらに含む、請求項7に記載の方法。 A buffer used by the sink device to buffer the media stream before starting playback based at least in part on the type of media content, network conditions, or buffer space available at the sink device Selecting a size;
8. The method of claim 7, further comprising: transmitting the selected buffer size to the sink device.
前記照会に応答して、再生されている前記メディアストリームの前記PTS値と、再生を待っている前記メディアストリームの前記保留中のバッファサイズとを示すメッセージを受信するステップと
をさらに含む、請求項1に記載の方法。 Querying the sink device for a presentation time stamp (PTS) value of the media stream being played and a pending buffer size of the media stream awaiting playback;
Responsive to the query, further comprising: receiving a message indicating the PTS value of the media stream being played and the pending buffer size of the media stream awaiting playback. The method according to 1.
をさらに含む、請求項9に記載の方法。 10. The method of claim 9, further comprising: issuing a flush control command to flush the sink device buffer.
をさらに含む、請求項1に記載の方法。 The method of claim 1, further comprising: issuing a volume control command to the sink device, wherein the volume control command further issues and controls a playback volume of the media stream at the sink device.
前記プロセッサと電子通信しているメモリであって、前記メモリは、命令を実施し、前記命令は、
ソースデバイスによって、Wi-Fiピアツーピアリモートディスプレイセッション中に第1のプロトコルを介するシンクデバイスへのメディアストリームを開始し、
前記シンクデバイスによってサポートされる第2のプロトコルを識別し、
前記Wi-Fiピアツーピアリモートディスプレイセッション中に前記メディアストリームを送信するためにメディアコンテンツのタイプに基づいて前記第2のプロトコルに動的に切り替える
ために前記プロセッサによって実行可能である
ワイヤレス通信のための装置。 A processor;
A memory in electronic communication with the processor, wherein the memory implements instructions, the instructions comprising:
By the source device to initiate a media stream to the sink device via the first protocol during a Wi-Fi peer-to-peer remote display session;
Identify a second protocol supported by the sink device;
An apparatus for wireless communication that is executable by the processor to dynamically switch to the second protocol based on a type of media content to transmit the media stream during the Wi-Fi peer-to-peer remote display session .
前記シンクデバイスが伝送制御プロトコル(TCP)をサポートするかどうかと、TCP接続のために使用される1つまたは複数のポートとを判定するために前記シンクデバイスに照会を送信し、
前記照会に応答して、前記シンクデバイスがTCPをサポートすることを確認するメッセージとポート情報とを受信する
ために前記プロセッサによってさらに実行可能である、請求項13に記載の装置。 The instructions executable by the processor to identify the second protocol supported by the sink device are:
Send an inquiry to the sink device to determine whether the sink device supports Transmission Control Protocol (TCP) and the port or ports used for the TCP connection;
14. The apparatus of claim 13, further operable by the processor to receive a message confirming that the sink device supports TCP and port information in response to the inquiry.
前記シンクデバイスの復号器待ち時間とバッファサイズとを判定するために前記シンクデバイスに照会する
ために前記プロセッサによってさらに実行可能である、請求項16に記載の装置。 The instructions are
The apparatus of claim 16, further executable by the processor to query the sink device to determine a decoder latency and buffer size of the sink device.
前記受信されたメッセージに応答して、前記シンクデバイスにセットアップ要求を送信する
ために前記プロセッサによってさらに実行可能であり、前記セットアップ要求は、プロファイルおよびポート情報を含む、請求項16に記載の装置。 The instructions are
17. The apparatus of claim 16, further executable by the processor to send a setup request to the sink device in response to the received message, wherein the setup request includes profile and port information.
メディアコンテンツの前記タイプ、ネットワーク条件、または前記シンクデバイスにおいて使用可能なバッファ空間に少なくとも部分的に基づいて、再生を開始する前に前記メディアストリームをバッファリングするために前記シンクデバイスによって使用されるバッファサイズを選択し、
前記選択されたバッファサイズを前記シンクデバイスに送信する
ために前記プロセッサによってさらに実行可能である、請求項19に記載の装置。 The instructions are
A buffer used by the sink device to buffer the media stream before starting playback based at least in part on the type of media content, network conditions, or buffer space available at the sink device Select the size,
The apparatus of claim 19, further executable by the processor to send the selected buffer size to the sink device.
再生されている前記メディアストリームのプレゼンテーションタイムスタンプ(PTS)値と、再生を待っている前記メディアストリームの保留中のバッファサイズとを前記シンクデバイスに照会し、
前記照会に応答して、再生されている前記メディアストリームの前記PTS値と、再生を待っている前記メディアストリームの前記保留中のバッファサイズとを示すメッセージを受信する
ために前記プロセッサによってさらに実行可能である、請求項13に記載の装置。 The instructions are
Query the sink device for the presentation time stamp (PTS) value of the media stream being played and the pending buffer size of the media stream awaiting playback;
Responsive to the query, further executable by the processor to receive a message indicating the PTS value of the media stream being played and the pending buffer size of the media stream awaiting playback 14. The device of claim 13, wherein
前記シンクデバイスのバッファをフラッシュするためにフラッシュ制御コマンドを発行する
ために前記プロセッサによってさらに実行可能である、請求項21に記載の装置。 The instructions are
24. The apparatus of claim 21, further executable by the processor to issue a flush control command to flush a buffer of the sink device.
前記シンクデバイスに音量制御コマンドを発行する
ために前記プロセッサによってさらに実行可能であり、前記音量制御コマンドは、前記シンクデバイスにおける前記メディアストリームの再生音量を制御する、請求項13に記載の装置。 The instructions are
14. The apparatus of claim 13, further executable by the processor to issue a volume control command to the sink device, the volume control command controlling a playback volume of the media stream at the sink device.
前記シンクデバイスによってサポートされる第2のプロトコルを識別するための能力分析コンポーネントと、
前記Wi-Fiピアツーピアリモートディスプレイセッション中に前記メディアストリームを送信するためにメディアコンテンツのタイプに基づいて前記第2のプロトコルに動的に切り替えるための動的切替コンポーネントと
を含む、ワイヤレス通信のための装置。 A multi-protocol communication component for initiating a media stream by a source device to a sink device via a first protocol during a Wi-Fi peer-to-peer remote display session;
A capability analysis component for identifying a second protocol supported by the sink device;
A wireless switching component for dynamically switching to the second protocol based on a type of media content to transmit the media stream during the Wi-Fi peer-to-peer remote display session; apparatus.
前記照会に応答して、前記シンクデバイスがTCPをサポートすることを確認するメッセージとポート情報とを受信するための受信機であって、前記送信機および前記受信機は、前記シンクデバイスによってサポートされる前記第2のプロトコルを識別するために前記能力分析コンポーネントと通信している、受信機と
をさらに含む、請求項25に記載の装置。 A transmitter for sending an inquiry to the sink device to determine whether the sink device can support Transmission Control Protocol (TCP) and one or more ports used for a TCP connection; ,
In response to the inquiry, a receiver for receiving a message confirming that the sink device supports TCP and port information, wherein the transmitter and the receiver are supported by the sink device. 26. The apparatus of claim 25, further comprising: a receiver in communication with the capability analysis component to identify the second protocol.
前記シンクデバイスの復号器待ち時間とバッファサイズとを判定するために前記シンクデバイスに照会する
ためのものである、請求項28に記載の装置。 The capability analysis component further includes:
30. The apparatus of claim 28, for querying the sink device to determine a decoder latency and buffer size of the sink device.
請求項28に記載の装置。 29. The apparatus of claim 28, wherein the transmitter is further for transmitting a setup request to the sink device in response to the received message, the setup request including profile and port information. .
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461978121P | 2014-04-10 | 2014-04-10 | |
US61/978,121 | 2014-04-10 | ||
US14/680,259 US9648073B2 (en) | 2014-04-10 | 2015-04-07 | Streaming control for real-time transport protocol |
US14/680,259 | 2015-04-07 | ||
PCT/US2015/024825 WO2015157362A1 (en) | 2014-04-10 | 2015-04-08 | Streaming control for real-time transport protocol |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2017517922A JP2017517922A (en) | 2017-06-29 |
JP2017517922A5 JP2017517922A5 (en) | 2017-08-17 |
JP6339226B2 true JP6339226B2 (en) | 2018-06-06 |
Family
ID=54266078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016560917A Active JP6339226B2 (en) | 2014-04-10 | 2015-04-08 | Streaming control for real-time transport protocol |
Country Status (8)
Country | Link |
---|---|
US (1) | US9648073B2 (en) |
EP (1) | EP3130127B1 (en) |
JP (1) | JP6339226B2 (en) |
KR (1) | KR101801127B1 (en) |
CN (1) | CN106165368B (en) |
BR (1) | BR112016023611A2 (en) |
MX (1) | MX357815B (en) |
WO (1) | WO2015157362A1 (en) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6193185B2 (en) * | 2014-07-09 | 2017-09-06 | 株式会社東芝 | Communication device, terminal device, and program |
US10567457B1 (en) | 2014-09-29 | 2020-02-18 | Amazon Technologies, Inc. | Dynamic rotation of streaming protocols |
FR3030968A1 (en) * | 2014-12-23 | 2016-06-24 | Orange | METHOD AND APPARATUS FOR MAINTAINING TRANSPORT ADDRESS ASSOCIATIONS WITH AN ADDRESS TRANSLATION ENTITY |
ITUB20155063A1 (en) | 2015-10-16 | 2017-04-16 | Univ Degli Studi Di Roma La Sapienza Roma | ? METHOD AND DEVICE FOR SELECTING DYNAMICALLY AND IN AN AUTONOMOUS TIME, THE BEST SOLUTION TO BE USED FOR COMMUNICATION BETWEEN THE DIFFERENT KNOTS OF A SUBMARINE SENSOR NETWORK, IN ORDER TO AUTOMATICALLY ADAPT TO THE MUTE-CONDITIONAL CONDITIONS OF THE UNDER-SEA ENVIRONMENT? |
CN105430433B (en) * | 2015-10-29 | 2019-02-19 | 小米科技有限责任公司 | Information processing method and device |
CN105872651A (en) * | 2015-12-18 | 2016-08-17 | 乐视移动智能信息技术(北京)有限公司 | Image processing method and device |
KR20170097546A (en) * | 2016-02-18 | 2017-08-28 | 에스케이텔레콤 주식회사 | Contents Transmission Method in Heterogeneous Network and Apparatus therefor |
WO2017155271A1 (en) * | 2016-03-07 | 2017-09-14 | 엘지전자 주식회사 | Method and apparatus for receiving streaming via transport protocol in wireless communication system |
US10547660B2 (en) * | 2016-09-12 | 2020-01-28 | Bose Corporation | Advertising media processing capabilities |
US9961169B1 (en) * | 2016-10-31 | 2018-05-01 | International Business Machines Corporation | Implementing autoswitching network protocols for optimal efficiency |
CN108616764A (en) * | 2016-12-09 | 2018-10-02 | 中兴通讯股份有限公司 | A kind of control method and equipment |
CN106790204A (en) * | 2017-01-03 | 2017-05-31 | 北京奇虎科技有限公司 | The conversion method and device of a kind of tunneling of flow data |
KR102581438B1 (en) | 2017-01-12 | 2023-09-21 | 삼성전자주식회사 | Wireless display subsystem and system-on-chip |
JP6749281B2 (en) * | 2017-03-23 | 2020-09-02 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | IoT device, signaling server, message bus management server, connection forming method, and program |
EP3528469B1 (en) * | 2018-02-14 | 2021-06-30 | Tata Consultancy Services Limited | Adaptive restful real-time live media streaming |
CN109391845A (en) * | 2018-11-23 | 2019-02-26 | 深圳市炬力北方微电子有限公司 | The dynamic adjusting method that striding equipment is shown |
CN109862398A (en) * | 2019-03-29 | 2019-06-07 | 北京奇艺世纪科技有限公司 | Multimedia data transmission method, apparatus and system |
DE112019007634T5 (en) * | 2019-08-16 | 2022-05-05 | Google Llc | Context-aware airplane mode |
CN112469012A (en) * | 2019-09-06 | 2021-03-09 | 华为技术有限公司 | Bluetooth communication method and related device |
TWI763581B (en) * | 2019-10-03 | 2022-05-01 | 瑞昱半導體股份有限公司 | Main bluetooth circuit of multi-member bluetooth device capable of dynamically switching operation mode |
US11412576B2 (en) | 2019-10-03 | 2022-08-09 | Realtek Semiconductor Corp. | Auxiliary Bluetooth circuit of multi-member Bluetooth device capable of dynamically switching operation mode |
US11570081B2 (en) | 2019-10-03 | 2023-01-31 | Realtek Semiconductor Corp. | Multi-member bluetooth device capable of dynamically switching operation mode |
TWI730439B (en) | 2019-10-03 | 2021-06-11 | 瑞昱半導體股份有限公司 | System and method for playing network data |
TWI727447B (en) * | 2019-10-03 | 2021-05-11 | 瑞昱半導體股份有限公司 | Playing system and playing method |
US11134367B2 (en) * | 2019-10-03 | 2021-09-28 | Realtek Semiconductor Corp. | Main bluetooth circuit of multi-member bluetooth device capable of dynamically switching operation mode |
US11375579B2 (en) | 2019-10-03 | 2022-06-28 | Realtek Semiconductor Corp. | Multi-member Bluetooth device capable of adaptively switching operation mode in response to data type change of received packets, and related main Bluetooth circuit and auxiliary Bluetooth circuit |
CN112738706B (en) * | 2019-10-14 | 2024-07-19 | 瑞昱半导体股份有限公司 | Playing system and method |
US11356735B2 (en) * | 2019-10-15 | 2022-06-07 | Sling Media Pvt Ltd. | Devices, systems and processes for multi-device access, control and presentation of streaming content |
KR20210101696A (en) * | 2020-02-10 | 2021-08-19 | 삼성전자주식회사 | Electronic device and method for controling buffer |
US11212349B1 (en) * | 2020-08-31 | 2021-12-28 | Frontiir Pte Ltd. | Switching between network protocols for a data storage system |
US11902599B2 (en) * | 2020-12-09 | 2024-02-13 | Hulu, LLC | Multiple protocol prediction and in-session adaptation in video streaming |
CN112653925B (en) * | 2020-12-21 | 2023-03-24 | 苏州科达特种视讯有限公司 | Cross-device transfer method, system, device and storage medium for media playing |
CN114697736A (en) * | 2020-12-29 | 2022-07-01 | 深圳Tcl新技术有限公司 | Wireless screen projection method, system, intelligent device and computer readable storage medium |
CN112995182B (en) * | 2021-03-04 | 2023-04-25 | 广州市百果园信息技术有限公司 | Media stream transmission method, device, equipment and medium |
CN113268813B (en) * | 2021-05-28 | 2022-11-01 | 成都威爱新经济技术研究院有限公司 | Vehicle display method and system based on pixel streaming technology |
US20230007361A1 (en) | 2021-06-30 | 2023-01-05 | Tencent America LLC | Bidirectional presentation datastream using control and data plane channels |
US11895171B2 (en) | 2021-10-01 | 2024-02-06 | Comcast Cable Communications, Llc | Method and apparatus for mobile device as temporary content origin |
TWI814134B (en) * | 2021-11-16 | 2023-09-01 | 財團法人工業技術研究院 | Remote rendering system, method and device based on virtual mobile architecture |
CN115208864B (en) * | 2022-08-12 | 2024-02-06 | 阿波罗智联(北京)科技有限公司 | Data transmission method, device, equipment, vehicle and storage medium |
WO2024150297A1 (en) * | 2023-01-11 | 2024-07-18 | 日本電信電話株式会社 | Device and method for forwarding data using method according to server status |
WO2024150300A1 (en) * | 2023-01-11 | 2024-07-18 | 日本電信電話株式会社 | Device and method for transferring data by method according to situation of communication network |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7720983B2 (en) * | 2004-05-03 | 2010-05-18 | Microsoft Corporation | Fast startup for streaming media |
EP1879347B1 (en) * | 2006-07-14 | 2012-05-30 | Sony Europe Limited | System and method of audio/video streaming |
US8718928B2 (en) * | 2008-04-23 | 2014-05-06 | Verizon Patent And Licensing Inc. | Traffic monitoring systems and methods |
JP5454248B2 (en) * | 2010-03-12 | 2014-03-26 | ソニー株式会社 | Transmission device and transmission method |
US8650604B2 (en) | 2010-10-27 | 2014-02-11 | Samsung Electronics Co., Ltd. | Method and system for synchronization of audio/video (A/V) stream format change in wireless communication systems |
US9137560B2 (en) * | 2010-12-10 | 2015-09-15 | Verizon Patent And Licensing Inc. | Methods and systems for providing access to content during a presentation of a media content instance |
KR20130070330A (en) | 2011-12-19 | 2013-06-27 | 주식회사 솔박스 | System and method for converting http live streaming protocol to rtsp protocol in mobile rnvironment |
US9491505B2 (en) * | 2012-02-28 | 2016-11-08 | Qualcomm Incorporated | Frame capture and buffering at source device in wireless display system |
JP2014027613A (en) * | 2012-07-30 | 2014-02-06 | Toshiba Corp | Video transmission apparatus and video transmission method |
US20140162687A1 (en) * | 2012-12-10 | 2014-06-12 | Qualcomm Incorporated | Techniques for determining a state of proximity between mobile devices |
-
2015
- 2015-04-07 US US14/680,259 patent/US9648073B2/en active Active
- 2015-04-08 WO PCT/US2015/024825 patent/WO2015157362A1/en active Application Filing
- 2015-04-08 JP JP2016560917A patent/JP6339226B2/en active Active
- 2015-04-08 KR KR1020167028022A patent/KR101801127B1/en active IP Right Grant
- 2015-04-08 BR BR112016023611A patent/BR112016023611A2/en not_active IP Right Cessation
- 2015-04-08 MX MX2016013221A patent/MX357815B/en active IP Right Grant
- 2015-04-08 EP EP15719536.3A patent/EP3130127B1/en active Active
- 2015-04-08 CN CN201580017793.0A patent/CN106165368B/en active Active
Also Published As
Publication number | Publication date |
---|---|
MX357815B (en) | 2018-07-24 |
US9648073B2 (en) | 2017-05-09 |
MX2016013221A (en) | 2017-05-01 |
EP3130127A1 (en) | 2017-02-15 |
EP3130127B1 (en) | 2020-03-04 |
US20150295982A1 (en) | 2015-10-15 |
BR112016023611A2 (en) | 2017-08-15 |
WO2015157362A1 (en) | 2015-10-15 |
CN106165368A (en) | 2016-11-23 |
KR20160142314A (en) | 2016-12-12 |
JP2017517922A (en) | 2017-06-29 |
CN106165368B (en) | 2019-04-23 |
KR101801127B1 (en) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6339226B2 (en) | Streaming control for real-time transport protocol | |
US9430177B2 (en) | Method and apparatus for providing an enhanced Wi-Fi display session in a Wi-Fi display network, and system thereof | |
KR101653671B1 (en) | Establishing and controlling audio and voice back channels of a wi-fi display connection | |
JP6279512B2 (en) | System and method for adaptive video communication | |
EP3087716B1 (en) | Remote rendering for efficient use of wireless bandwidth for wireless docking | |
US10264038B2 (en) | Discovery and management of synchronous audio or video streaming service to multiple sinks in wireless display system | |
EP3078182B1 (en) | Wireless media sharing from multiple sources to a single sink | |
US10158690B2 (en) | Method and system for streaming multimedia content in a wireless fidelity display network environment | |
KR101306734B1 (en) | Method and device for controlling connection establishment in wireless network | |
US9749373B2 (en) | System and method for improved content streaming | |
US11374623B2 (en) | Connected isochronous stream swapping | |
US20120110130A1 (en) | Method and system for playing multimedia file and computer readable medium using the method | |
TW201427463A (en) | Broadcasting system and method for multimedia bitstream | |
KR20180014708A (en) | Techniques for managing reverse channel audio sessions | |
WO2015169005A1 (en) | Method, system and main sharing end for sharing screen and operation control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170703 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170703 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20170703 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170914 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180105 |
|
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: 20180409 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180509 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6339226 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |