JP2022552504A - ネットワーク伝送中に目標フレームレートを提供するためのビデオフレームの選択的複数インスタンス符号化 - Google Patents
ネットワーク伝送中に目標フレームレートを提供するためのビデオフレームの選択的複数インスタンス符号化 Download PDFInfo
- Publication number
- JP2022552504A JP2022552504A JP2022521503A JP2022521503A JP2022552504A JP 2022552504 A JP2022552504 A JP 2022552504A JP 2022521503 A JP2022521503 A JP 2022521503A JP 2022521503 A JP2022521503 A JP 2022521503A JP 2022552504 A JP2022552504 A JP 2022552504A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- encoded
- video
- video frame
- stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 65
- 238000009877 rendering Methods 0.000 claims description 62
- 230000004044 response Effects 0.000 claims description 40
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000003362 replicative effect Effects 0.000 claims description 5
- 230000003139 buffering effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 22
- 238000012545 processing Methods 0.000 description 32
- 238000010586 diagram Methods 0.000 description 13
- 230000000737 periodic effect Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 9
- 230000010076 replication Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 230000001627 detrimental effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234381—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/355—Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/358—Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
-
- 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/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- 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/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4781—Games
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5593—Details of game data or player data management involving scheduling aspects
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
ビデオソースデバイスは、通常、公称フレームレートでビデオストリームのビデオフレーム(「ピクチャ」としても知られる)をレンダリングする。この公称フレームレートは、フレームレートの変動をほとんどまたはまったく伴わずに固定されてもよく、または、たとえば、ビデオストリーム中の任意の所与のビデオフレームをレンダリングするために必要とされる処理負荷または能力に起因して、実効フレームレートにいくらかの変動があってもよい。そのようなビデオストリームをリアルタイムで伝送するために利用される伝送ネットワークは、典型的には、伝送の処理負荷が一貫しており、閾値レベルにあるかまたはそれを上回る場合、より効果的に動作する。可変であるフレームレートまたは公称フレームレートとは異なるフレームレートでレンダリングされるビデオストリームは、公称フレームレートよりも速くまたは遅く到着するフレームにつながり、したがって、ストリーム中のビデオフレーム間に比較的小さいかまたは大きいアイドルタイムスパンを引き起こし得る。これらのアイドルタイムスパンは、そのようなビデオストリームをネットワーク伝送問題の対象とし得る。そのような問題は、ビデオストリームを送信するために確立されるチャネルの優先順位を落とすこと、またはネットワークにおける問題の認識を遅らせることを含み得る。したがって、一貫しない送信処理負荷を呈するビデオストリームは、ネットワークを介してビデオストリームを受信する宛先デバイスにおけるビデオストリームのビデオストリーム再生における視聴者の体験に悪影響を及ぼし得る。
本開示は、添付の図面を参照することによって、よりよく理解され、その多数の特徴および利点が当業者に明らかになる。異なる図面における同じ参照符号の使用は、類似または同一の項目を示す。
ビデオストリームが、ビデオストリームを送信するネットワークに比較的一定の処理負荷を呈することを保証することは、典型的には、ビデオストリームを表すデータの、より信頼性の高い、またはそうでなければ効果的な送信をもたらす。一定の伝送処理負荷をネットワークに与える1つの従来のアプローチは、ビデオデータを一定のレートで送信できるように、ソースデバイスにおいてビデオデータをバッファリングすることである。しかしながら、そのようなアプローチは、ビデオコンテンツの配信において待ち時間を招き、これは、しばしば、遠隔でサービスされるビデオゲームおよび他のリアルタイムビデオストリーミングアプリケーションでは実行不可能である。そのようなリアルタイムビデオストリーミングアプリケーションの場合、この一定の処理負荷を与えるよう試みるために用いられる1つの手法は、ソースデバイスにおいてビデオストリーム内のすべての符号化されたフレームを自動的に複製し、それによって、ビデオストリームを送信するためのチャネルがアイドルである時間期間を低減することである。たとえば、60フレーム/秒(FPS)のフレームレートが特定のネットワークに適していると見なされ、ソースデバイスがビデオフレームを30FPSの公称レートでレンダリングする場合、ソースデバイスは、結果として生じるビデオストリームを60FPSで作成するよう、各ビデオフレームを1回複製する。しかしながら、このアプローチは、ビデオストリームのフレームレートが既知であるという仮定と、フレームレートが一定であるという仮定との両方に基づく。レンダリングフレームレートが未知であるか、またはレンダリングプロセスが可変フレームレートをもたらす場合、フレームレートがネットワークの目標フレームレートの50%超であるか、または50%超に増加すると、各およびすべてのビデオフレームの自動複製は、過剰な数のビデオフレームを生成することになり、これは、ネットワークを過負荷にし、したがって、視聴体験に悪影響を及ぼし得る。逆に、フレームレートが目標フレームレートの50%未満であるか、または50%未満に下回ると、各およびすべてのビデオフレームの自動単一複製は、目標フレームレートを下回ってビデオフレームを生成することになり、したがって、送信されるビデオストリームに、ネットワークに対する不充分または一貫しない処理負荷という、同じ有害な影響を及ぼす潜在的可能性がある。
Claims (27)
- 方法であって、
第1のデバイスにおいて、符号化されていないビデオフレームの第1のストリームを第1のフレームレートでレンダリングすることと、
前記第1のデバイスにおいて、前記第1のストリームのビデオフレームを符号化して、符号化されたビデオフレームの第2のストリームを生成することとを含み、前記第2のストリームは、前記第1のフレームレートよりも大きい第2のフレームレートを有し、前記第1のストリームのビデオフレームを符号化することは、前記第1のフレームレートと前記第2のフレームレートとの間の差を補償するよう、前記第2のストリームに含めるために、前記第1のストリームの少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供することを含み、前記方法はさらに、
前記第2のストリームをネットワークを介して第2のデバイスに送信するために提供することを含む、方法。 - 前記少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供することは、
前記第1のストリームの第1のビデオフレームを符号化して、第1のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第1の符号化されたインスタンスを生成することと、
前記第1のフレーム期間に続く第2のフレーム期間について、前記第1のストリームの第2のビデオフレームが符号化される準備ができているかどうかを判断することを含み、前記第1のフレーム期間および前記第2のフレーム期間は、前記第2のフレームレートに基づいており、
さらに、
前記第2のビデオフレームが符号化される準備ができていると判断することに応答して、前記第2のビデオフレームを符号化して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第2のビデオフレームの符号化されたインスタンスを生成することと、
前記第2のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化するか、または前記第1のビデオフレームの前記第1の符号化されたインスタンスを複製して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第2の符号化されたインスタンスを生成することとを含む、請求項1に記載の方法。 - 前記第1のストリームをレンダリングすることは、前記第1のストリームの各ビデオフレームをフレームバッファにおいて順番に前記第1のフレームレートでレンダリングすることを含み、
前記第1のストリームの前記第2のビデオフレームが前記第2のフレーム期間について符号化される準備ができているかどうかを判断することは、
前記第1の期間の終了を表すタイマの満了に応答して、前記フレームバッファ中の前記第2のビデオフレームのレンダリングが完了したかどうかを判断することを含む、請求項2に記載の方法。 - 少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供することは、
前記第1のストリームの第3のビデオフレームが、前記第2の期間に続く第3のフレーム期間について符号化される準備ができているかどうかを判断することと、
前記第3のビデオフレームが符号化される準備ができていると判断することに応答して、前記第3のビデオフレームを符号化して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第3のビデオフレームの符号化されたインスタンスを生成することと、
前記第3のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化するか、または前記第1のビデオフレームの前記第1の符号化されたインスタンスを複製して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第3の符号化されたインスタンスを生成することとを含む、請求項2または3に記載の方法。 - 前記第1のビデオフレームを再符号化して前記第1のビデオフレームの前記第2の符号化されたインスタンスを生成することは、
前記第1のビデオフレームの前記第1の符号化されたインスタンスに少なくとも部分的に基づいて前記第1のビデオフレームを再符号化して、前記第1のビデオフレームの前記第2の符号化されたインスタンスを前記第1の符号化されたインスタンスよりも高い画質で生成することを含む、請求項1~4のいずれか1項に記載の方法。 - さらに、
前記第2のフレームレートを、前記第1のデバイスの設定に基づいて決定すること含む、請求項1に記載の方法。 - さらに、
前記第2のフレームレートを決定するために、前記ネットワークを介して前記第2のデバイスに問い合わせることを含む、請求項6に記載の方法。 - さらに、
前記第1のデバイスにおいてビデオゲームアプリケーションを実行することを含み、
前記符号化されていないビデオフレームの前記第1のストリームをレンダリングすることは、前記ビデオゲームアプリケーションにおいて実行される命令に応答して、およびさらに前記ネットワークを介して受信されるユーザゲームコントローラコマンドに応答して、前記第1のストリームをレンダリングすることを含む、先行する請求項のいずれか1項に記載の方法。 - 方法であって、
符号化されたビデオフレームのストリームを、ネットワークを介して第1のデバイスから第2のデバイスに送信するために、指定されたフレームレートで提供することを含み、前記符号化されたビデオフレームのストリームを提供することは、
第1のビデオフレームを符号化して、前記指定されたフレームレートに対応する第1のフレーム期間について前記ストリームに含めるために第1の符号化されたビデオフレームを生成することと、
第2のビデオフレームが前記第1のフレーム期間に続く第2のフレーム期間について符号化の準備ができていないと判断したことに応答して、前記第1のレンダリングされたビデオフレームを再符号化して、前記第2のフレーム期間について前記ストリームに含めるために第2の符号化されたビデオフレームを生成することとを含む、方法。 - さらに、
前記第2のビデオフレームが前記第2のフレーム期間についての符号化の準備ができていると判断したことに応答して、前記第2のビデオフレームを符号化して、前記第2のフレーム期間について前記ストリームに含めるために第3の符号化されたビデオフレームを生成することを含む、請求項9に記載の方法。 - さらに、
第3のビデオフレームが前記第2のフレーム期間に続く第3のフレーム期間について符号化の準備ができていないと判断したことに応答して、前記第1のビデオフレームを再符号化して、前記第3のフレーム期間について前記ストリームに含めるために第3の符号化されたビデオフレームを生成することを含む、請求項9または10に記載の方法。 - さらに、
前記指定されたフレームレートを、前記第1のデバイスのデフォルト設定、ユーザ指定設定、前記ネットワークを介する前記第1のデバイスから前記第2のデバイスへのクエリ、および前記ネットワークの分析のうちの少なくとも1つに基づいて決定することを含む、請求項9から11のいずれか1項に記載の方法。 - 前記第2のビデオフレームは準備ができていないと判断することは、
前記第2のフレーム期間の開始に対応するタイマの満了時に、前記第1のデバイスのフレームバッファが前記第2のビデオフレームの完了したレンダリングを含まないと判断することを含む、請求項9~12のいずれか1項に記載の方法。 - さらに、
前記第1のデバイスにおいて、前記フレームバッファにおいてバッファリングするために、前記指定されたフレームレートよりも低いフレームレートで、ビデオフレームのシーケンスをレンダリングすることを含み、前記シーケンスは、前記第1のビデオフレームと前記第2のビデオフレームとを含む、請求項13に記載の方法。 - 前記第1のビデオフレームを再符号化して第2の符号化されたビデオフレームを生成することは、
前記第1のビデオフレームを、前記第1の符号化されたビデオフレームに部分的に基づいて再符号化して、前記第2の符号化されたビデオフレームを、前記第1の符号化されたビデオフレームよりも高い画質で生成することを含む、請求項9のいずれか1項に記載の方法。 - システムであって、
第1のデバイスを備え、前記第1のデバイスは、
ネットワークに結合するよう構成されるネットワークインターフェイスと、
前記ネットワークインターフェイスに結合され、第1のフレームレートを有するレンダリングされたビデオフレームの第1のストリームを符号化して、前記ネットワークインターフェイスを介する前記ネットワークを介した送信のために、符号化されたビデオフレームの第2のストリームを生成するよう構成されるエンコーダとを備え、前記第2のストリームは、前記第1のフレームレートよりも大きい第2のフレームレートを有し、前記エンコーダは、前記第1のフレームレートと前記第2のフレームレートとの間の差を補償するよう、前記第2のストリームに含めるために、前記第1のストリームの少なくとも1つのビデオフレームの複数のインスタンスを選択的に符号化するよう構成される、システム。 - 前記ネットワークに結合され、第2のデバイスのディスプレイでの再生のために、前記符号化されたビデオフレームの第2のストリームを受信し、復号するよう構成される前記第2のデバイスをさらに含む、請求項16に記載のシステム。
- 前記第2のデバイスは、前記ネットワークを介して前記第1のデバイスにユーザ入力を提供するためにキーボードまたはゲームコントローラのうちの少なくとも1つを含み、
前記第1のデバイスは、前記レンダリングされたビデオフレームの第1のストリームを前記ユーザ入力に基づいてレンダリングするようにビデオゲームアプリケーションを実行するよう構成されるサーバを含む、請求項17に記載のシステム。 - 前記エンコーダは、以下の構成によって、少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供するよう構成され、前記以下の構成は、
前記第1のストリームの第1のビデオフレームを符号化して、第1のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第1の符号化されたインスタンスを生成することと、
前記第1のフレーム期間に続く第2のフレーム期間について、前記第1のストリームの第2のビデオフレームが符号化される準備ができているかどうかを判断することとを含み、前記第1のフレーム期間および前記第2のフレーム期間は、前記第2のフレームレートに基づいており、前記以下の構成は、さらに、
前記第2のビデオフレームが符号化される準備ができていると判断することに応答して、前記第2のビデオフレームを符号化して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第2のビデオフレームの符号化されたインスタンスを生成することと、
前記第2のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化するか、または前記第1のビデオフレームの前記第1の符号化されたインスタンスを複製して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第2の符号化されたインスタンスを生成することとを含む、請求項16~18のいずれか1項に記載のシステム。 - 前記エンコーダは、前記第1のストリームの各ビデオフレームをフレームバッファにおいて順番に前記第1のフレームレートでレンダリングするよう構成され、
前記エンコーダは、タイマの満了に応答して、前記フレームバッファ内の前記第2のビデオフレームのレンダリングが完了したかどうかを判断することによって、前記第1のストリームの前記第2のビデオフレームが前記第2のフレーム期間について符号化される準備ができているかどうかを判断するよう構成される、請求項19に記載のシステム。 - 前記エンコーダは、以下の構成によって、少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供するよう構成され、当該以下の構成は、
前記第1のストリームの第3のビデオフレームが、前記第2のフレーム期間に続く第3のフレーム期間について符号化される準備ができているかどうかを判断することと、
前記第3のビデオフレームが符号化される準備ができていると判断することに応答して、前記第3のビデオフレームを符号化して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第3のビデオフレームの符号化されたインスタンスを生成することと、
前記第3のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第3の符号化されたインスタンスを生成することとを含む、請求項16~18のいずれか1項に記載のシステム。 - 前記エンコーダは、前記第1のビデオフレームの前記第1の符号化されたインスタンスに少なくとも部分的に基づいて前記第1のビデオフレームを再符号化して、前記第1のビデオフレームの前記第2の符号化されたインスタンスを前記第1のビデオフレームの前記第1の符号化されたインスタンスよりも高い画質で生成するよう構成される、請求項21に記載のシステム。
- 前記エンコーダは、さらに、
前記第2のフレームレートを、デフォルト設定、ユーザ指定設定、前記ネットワークの分析、および第2のデバイスへのクエリのうちの少なくとも1つに基づいて決定するよう構成され、前記第2のデバイスは、前記ネットワークに結合され、前記第2のデバイスのディスプレイでの再生のために、前記符号化されたビデオフレームの第2のストリームを受信し、復号するよう構成される、請求項16~22のいずれか1項に記載のシステム。 - 実行可能命令のセットを具現化する非一時的なコンピュータ可読媒体であって、前記実行可能命令のセットは、少なくとも1つのプロセッサを、
第1のフレームレートを有する符号化されていないビデオフレームの第1のストリームのビデオフレームを符号化して、符号化されたビデオフレームの第2のストリームを生成するよう操作し、前記第2のストリームは、前記第1のフレームレートよりも大きい第2のフレームレートを有し、前記ビデオフレームの前記符号化は、前記第1のフレームレートと前記第2のフレームレートとの間の差を補償するよう、前記第2のストリームに含めるために、前記第1のストリームの少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供することを含み、前記実行可能命令のセットは、さらに、前記少なくとも1つのプロセッサを、
ネットワークを介した送信のために前記第2のストリームを提供するよう操作する、非一時的なコンピュータ可読媒体。 - 少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供するよう前記少なくとも1つのプロセッサを操作するための前記実行可能命令は、前記少なくとも1つのプロセッサを、
前記第1のストリームの第1のビデオフレームを符号化して、第1のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第1の符号化されたインスタンスを生成し、
前記第1のフレーム期間に続く第2のフレーム期間について、前記第1のストリームの第2のビデオフレームが符号化される準備ができているかどうかを判断するよう操作するための実行可能命令を含み、前記第1のフレーム期間および前記第2のフレーム期間は、前記第2のフレームレートに基づいており、
前記実行可能命令は、さらに、前記少なくとも1つのプロセッサを、
前記第2のビデオフレームが符号化される準備ができていると判断することに応答して、前記第2のビデオフレームを符号化して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第2のビデオフレームの符号化されたインスタンスを生成し、
前記第2のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化するか、または前記第1のビデオフレームの前記第1の符号化されたインスタンスを複製して、前記第2のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第2の符号化されたインスタンスを生成するよう操作するための実行可能命令を含む、請求項24に記載の非一時的なコンピュータ可読媒体。 - 前記第1のストリームをレンダリングすることは、前記第1のストリームの各ビデオフレームをフレームバッファにおいて順番に前記第1のフレームレートでレンダリングすることを含み、
前記第1のストリームの前記第2のビデオフレームが前記第2のフレーム期間について符号化される準備ができているかどうかを判断することは、
前記第1の期間の終了を表すタイマの満了に応答して、前記フレームバッファ中の前記第2のビデオフレームのレンダリングが完了したかどうかを判断することを含む、請求項25に記載の非一時的なコンピュータ可読媒体。 - 少なくとも1つのビデオフレームの複数の符号化されたインスタンスを選択的に提供するよう前記少なくとも1つのプロセッサを操作するための前記実行可能命令は、さらに、前記少なくとも1つのプロセッサを、
前記第1のストリームの第3のビデオフレームが、前記第2の期間に続く第3のフレーム期間について符号化される準備ができているかどうかを判断し、
前記第3のビデオフレームが符号化される準備ができていると判断することに応答して、前記第3のビデオフレームを符号化して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第3のビデオフレームの符号化されたインスタンスを生成し、
前記第3のビデオフレームが符号化される準備ができていないと判断することに応答して、前記第1のビデオフレームを再符号化するか、または前記第1のビデオフレームの前記第1の符号化されたインスタンスを複製して、前記第3のフレーム期間について、前記第2のストリームに含めるために、前記第1のビデオフレームの第3の符号化されたインスタンスを生成するよう操作するための実行可能命令を含む、請求項25に記載の非一時的なコンピュータ可読媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/055495 WO2021071486A1 (en) | 2019-10-10 | 2019-10-10 | Selective multiple-instance encoding of video frames to provide target frame rate during network transmission |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022552504A true JP2022552504A (ja) | 2022-12-16 |
Family
ID=68387410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022521503A Pending JP2022552504A (ja) | 2019-10-10 | 2019-10-10 | ネットワーク伝送中に目標フレームレートを提供するためのビデオフレームの選択的複数インスタンス符号化 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230140250A1 (ja) |
EP (1) | EP4042704A1 (ja) |
JP (1) | JP2022552504A (ja) |
KR (1) | KR20220070268A (ja) |
WO (1) | WO2021071486A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024010588A1 (en) * | 2022-07-08 | 2024-01-11 | Google Llc | Cloud-based gaming system for supporting legacy gaming applications with high frame rate streams |
CN116761018B (zh) * | 2023-08-18 | 2023-10-17 | 湖南马栏山视频先进技术研究院有限公司 | 一种基于云平台的实时渲染系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11036458B2 (en) * | 2015-10-14 | 2021-06-15 | Google Llc | User interface for screencast applications |
US10523947B2 (en) * | 2017-09-29 | 2019-12-31 | Ati Technologies Ulc | Server-based encoding of adjustable frame rate content |
EP3503569A1 (en) * | 2017-12-19 | 2019-06-26 | Thomson Licensing | Method of transmitting video frames from a video stream to a display and corresponding apparatus |
-
2019
- 2019-10-10 JP JP2022521503A patent/JP2022552504A/ja active Pending
- 2019-10-10 EP EP19795395.3A patent/EP4042704A1/en active Pending
- 2019-10-10 WO PCT/US2019/055495 patent/WO2021071486A1/en unknown
- 2019-10-10 KR KR1020227013904A patent/KR20220070268A/ko not_active Application Discontinuation
- 2019-10-10 US US17/767,909 patent/US20230140250A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4042704A1 (en) | 2022-08-17 |
KR20220070268A (ko) | 2022-05-30 |
WO2021071486A1 (en) | 2021-04-15 |
US20230140250A1 (en) | 2023-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10225620B1 (en) | System and method for effectuating selective ABR segment delivery for ABR bandwidth control | |
US20190069038A1 (en) | System and method for providing fast abr startup with selective abr segment delivery | |
US9204203B2 (en) | Reduction of latency in video distribution networks using adaptive bit rates | |
JP4989054B2 (ja) | 帯域幅が制限されるネットワーク上のメディア変換方法および装置 | |
US8997160B2 (en) | Variable bit video streams for adaptive streaming | |
US9232243B2 (en) | Audio and video streaming for media effects | |
US20140297813A1 (en) | Systems and methods for controlling the encoding of a segmented media stream using segment transmit times | |
US20140215536A1 (en) | Streaming video server with segment length control and methods for use therewith | |
JP2007089137A (ja) | ロバストなストリーミングを行うためのサーバメディア処理による適応型メディアプレイアウト | |
JP5521940B2 (ja) | 符号化方法、復号化方法、符号化装置及び復号化装置 | |
TWI735476B (zh) | 視聽接收裝置及其快速變換頻道之方法 | |
JP7496022B2 (ja) | クライアント、サーバ、受信方法及び送信方法 | |
CN111886875B (zh) | 一种通过网络传送媒体内容的方法及服务器 | |
US20190253470A1 (en) | Data buffering method, network device, and storage medium | |
JP2022552504A (ja) | ネットワーク伝送中に目標フレームレートを提供するためのビデオフレームの選択的複数インスタンス符号化 | |
JP2016059037A (ja) | 少なくとも2つの連続するセグメントに分離されたマルチメディアコンテンツを受信するための方法およびクライアント端末、ならびに対応するコンピュータプログラム製品およびコンピュータ可読媒体 | |
JP2006203910A (ja) | 同期化イーサネット(登録商標)システムにおいてジッターなしにデータを伝送する方法 | |
US20060230171A1 (en) | Methods and apparatus for decreasing latency in A/V streaming systems | |
TWI723394B (zh) | 修正視訊串流流量的方法、機上盒及電腦可讀儲存介質 | |
KR102118678B1 (ko) | 부호화된 비디오 스트림 전송 장치 및 방법 | |
US9294821B2 (en) | Scrubbing noise remover and methods for use therewith | |
EP3888373A1 (en) | A method and apparatus for loop-playing video content | |
US20160050243A1 (en) | Methods and devices for transmission of media content | |
WO2022111684A1 (zh) | 调整终端功耗的方法、码率的调整方法及相关设备 | |
CN114025171A (zh) | 一种视频处理方法、装置、终端设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220719 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220719 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230816 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231115 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240507 |