TW202046741A - A method for performing client side latency enhancement, a host processor and a processing circuit thereof - Google Patents

A method for performing client side latency enhancement, a host processor and a processing circuit thereof Download PDF

Info

Publication number
TW202046741A
TW202046741A TW109117630A TW109117630A TW202046741A TW 202046741 A TW202046741 A TW 202046741A TW 109117630 A TW109117630 A TW 109117630A TW 109117630 A TW109117630 A TW 109117630A TW 202046741 A TW202046741 A TW 202046741A
Authority
TW
Taiwan
Prior art keywords
client device
cloud game
video content
game server
client
Prior art date
Application number
TW109117630A
Other languages
Chinese (zh)
Other versions
TWI755742B (en
Inventor
陳泂甫
Original Assignee
聯發科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US16/882,764 external-priority patent/US20200376375A1/en
Application filed by 聯發科技股份有限公司 filed Critical 聯發科技股份有限公司
Publication of TW202046741A publication Critical patent/TW202046741A/en
Application granted granted Critical
Publication of TWI755742B publication Critical patent/TWI755742B/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/204Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform the platform being a handheld device
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features 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/53Features 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 details of basic data processing
    • A63F2300/534Features 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 details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features 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/53Features 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 details of basic data processing
    • A63F2300/535Features 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 details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

A method and apparatus for performing client side latency enhancement with aid of cloud game server side image orientation control. The method may include: utilizing at least one orientation-related sensor in a client device to detect a client device orientation of the client device; utilizing a network interface circuit in the client device to notify a cloud game server of the client device orientation; utilizing the cloud game server to rotate video contents of a cloud game in advance for the client device according to the client device orientation to generate pre-rotated video contents, for being output to the client device through video streaming; and utilizing the network interface circuit to receive the pre-rotated video contents through the video streaming and buffering the pre-rotated video contents in a video buffer, for being output to a display panel and displayed on the display panel.

Description

客戶側延遲改善方法、主處理器以及處理電路Client side delay improvement method, main processor and processing circuit

本發明總體上有關於圖像顯示,以及更具體地,有關於一種借助雲遊戲伺服器側圖像定像控制(image orientation control)執行客戶側延遲增強的方法與裝置,其中,該裝置可包含電子裝置的至少一部分(例如,部分或全部),例如,電子裝置中的主處理器、處理電路等。The present invention generally relates to image display, and more specifically, to a method and device for performing client-side delay enhancement by means of cloud game server-side image orientation control, wherein the device may include At least a part (for example, part or all) of the electronic device, for example, the main processor, processing circuit, etc. in the electronic device.

現代遊戲通常需要影像處理單元(GPU)的龐大GPU計算能力,以獲取出色並完整的場景渲染。更特別地,由於GPU上的特定類型渲染任務,會引入GPU的較重負載。當將遊戲設計為雲遊戲時,雲遊戲伺服器可準備雲遊戲的視訊內容並且透過視訊流將該視訊內容發送給客戶裝置(例如,多功能手機),從而由客戶裝置進行播放。然而,這樣會導致幾個問題。例如,對於橫屏模式的遊戲播放,客戶裝置可需要旋轉已緩存視訊資料,從而匹配顯示方向,並且因此可增加更多延遲與頻寬(BW)消耗。因此,需要一種新穎方法與相關聯架構,以提高運行雲遊戲的電子裝置的整體性能。Modern games usually require the huge GPU computing power of an image processing unit (GPU) to obtain excellent and complete scene rendering. More specifically, due to specific types of rendering tasks on the GPU, a heavier load on the GPU will be introduced. When the game is designed as a cloud game, the cloud game server may prepare the video content of the cloud game and send the video content to the client device (for example, a multi-function mobile phone) through the video stream, so as to be played by the client device. However, this can cause several problems. For example, for game playing in landscape mode, the client device may need to rotate the cached video data to match the display direction, and thus may increase more delay and bandwidth (BW) consumption. Therefore, a novel method and associated architecture is needed to improve the overall performance of electronic devices running cloud games.

為了解決上述問題,本發明的目標是提供一種借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善的方法,以及提供例如電子裝置或電子裝置中主處理器、處理電路等的相關聯裝置,以及雲遊戲伺服器。In order to solve the above-mentioned problems, the objective of the present invention is to provide a method for improving client-side delay through image direction control on a cloud game server, and to provide related devices such as electronic devices or main processors and processing circuits in electronic devices. , And cloud game server.

本發明的另一目標是提供一種借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善的方法,以及提供例如電子裝置或電子裝置中主處理器、處理電路等的相關聯裝置,以及雲遊戲伺服器,以改善電子裝置的整體性能。Another object of the present invention is to provide a method for performing client-side delay improvement by means of cloud game server-side image direction control, and to provide related devices such as electronic devices or main processors and processing circuits in electronic devices, and cloud Game server to improve the overall performance of electronic devices.

本發明的至少一個實施例提供一種客戶側延遲改善方法,借助雲遊戲伺服器側圖像方向控制。該方法包含:利用客戶裝置的至少一個方向相關感測器,檢測該客戶裝置的客戶裝置方向;利用該客戶裝置中的網路介面電路,向雲遊戲伺服器通知該客戶裝置方向;利用該雲遊戲伺服器依據該客戶裝置方向,提前為該客戶裝置生成雲遊戲的預旋轉視訊內容,用於透過視訊流輸出給該客戶裝置,其中,該預旋轉視訊內容對應該客戶裝置方向;以及利用該網路介面電路透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在視訊暫存器中,用於輸出至顯示面板並且在該顯示面板上顯示。At least one embodiment of the present invention provides a method for improving client-side delay, using cloud game server-side image direction control. The method includes: using at least one direction-related sensor of the client device to detect the direction of the client device of the client device; using the network interface circuit in the client device to notify the cloud game server of the direction of the client device; using the cloud According to the direction of the client device, the game server generates pre-rotation video content of the cloud game for the client device in advance for output to the client device through a video stream, wherein the pre-rotation video content corresponds to the direction of the client device; and The network interface circuit receives the pre-rotated video content through the video stream, and caches the pre-rotated video content in the video register for output to and display on the display panel.

本發明的至少一個實施例提供一種主處理器,位於電子裝置中並且借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善。該主處理器包含:核心電路、耦接核心電路的顯示介面電路以及匯流排界面電路。核心電路用於控制該主處理器,用於控制該電子裝置的操作,其中,將該電子裝置作為客戶裝置,並且在該核心電路的控制下,該主處理器執行該客戶裝置的交互控制,以借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善。此外,顯示介面電路用於將顯示面板耦接至該主處理器;以及匯流排界面電路用於透過匯流排將至少一個元件耦接至該主處理器,其中,該至少一個元件包含該客戶裝置中至少一個方向相關感測器。例如,該主處理器利用該至少一個方向相關感測器,檢測該客戶裝置的客戶裝置方向;該主處理器利用該客戶裝置中的網路介面電路,向雲遊戲伺服器通知該客戶裝置方向;該主處理器利用該雲遊戲伺服器依據該客戶裝置方向,提前為該客戶裝置生成雲遊戲的預旋轉視訊內容,用於透過視訊流輸出給該客戶裝置,其中,該預旋轉視訊內容對應該客戶裝置方向;以及該主處理器利用該網路介面電路透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在視訊暫存器中,用於輸出至該顯示面板並且在該顯示面板上顯示。At least one embodiment of the present invention provides a main processor that is located in an electronic device and performs client-side delay improvement by means of cloud game server-side image direction control. The main processor includes a core circuit, a display interface circuit coupled to the core circuit, and a bus interface circuit. The core circuit is used to control the main processor for controlling the operation of the electronic device, wherein the electronic device is used as a client device, and under the control of the core circuit, the main processor performs interactive control of the client device, With the help of cloud game server-side image direction control to implement client-side delay improvement. In addition, the display interface circuit is used to couple the display panel to the main processor; and the bus interface circuit is used to couple at least one element to the main processor through the bus, wherein the at least one element includes the client device In at least one direction related sensor. For example, the main processor uses the at least one direction-related sensor to detect the direction of the client device of the client device; the main processor uses the network interface circuit in the client device to notify the cloud game server of the direction of the client device ; The main processor uses the cloud game server to generate pre-rotation video content of the cloud game for the client device in advance according to the direction of the client device for output to the client device through a video stream, wherein the pre-rotation video content pair The direction of the client device; and the host processor uses the network interface circuit to receive the pre-rotated video content through the video stream, and caches the pre-rotated video content in the video register for output to the display panel and Display on this display panel.

依據許多實施例,本發明進一步提供包含上述主處理器的處理電路,其中,該處理電路進一步包含:該至少一個方向相關感測器;以及該網路介面電路。例如,該處理電路可包含該視訊暫存器,並且該視訊暫存器用於緩存訊框資訊,其中,該訊框資訊包含該預旋轉視訊內容。此外,該視訊暫存器實施為該主處理器的內部暫存器或外部暫存器。According to many embodiments, the present invention further provides a processing circuit including the above-mentioned main processor, wherein the processing circuit further includes: the at least one direction-related sensor; and the network interface circuit. For example, the processing circuit may include the video register, and the video register is used for buffering frame information, wherein the frame information includes the pre-rotated video content. In addition, the video register is implemented as an internal register or an external register of the main processor.

依據許多實施例,本發明進一步提供包含上述主處理器的電子裝置,其中,該電子裝置可包含處理電路與顯示面板。該處理電路可包含該主處理器、該至少一個方向相關感測器以及該網路介面電路。該顯示面板耦接該主處理器,用於顯示資訊。例如,該處理電路可包含該視訊暫存器,並且該視訊暫存器用於緩存訊框資訊,其中,該訊框資訊包含該預旋轉視訊內容。此外,該視訊暫存器實施為該主處理器的內部暫存器或外部暫存器。According to many embodiments, the present invention further provides an electronic device including the above-mentioned main processor, wherein the electronic device may include a processing circuit and a display panel. The processing circuit may include the main processor, the at least one direction-related sensor, and the network interface circuit. The display panel is coupled to the main processor for displaying information. For example, the processing circuit may include the video register, and the video register is used for buffering frame information, wherein the frame information includes the pre-rotated video content. In addition, the video register is implemented as an internal register or an external register of the main processor.

本發明的至少一個實施例提供一種雲遊戲伺服器,用於借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善。該雲遊戲伺服器可包含至少一個處理器(例如,一個或複數個處理器)與耦接上述至少一個處理器的網路介面電路。可安排至少一個處理器控制該雲遊戲伺服器的操作,其中,在該至少一個處理器的控制下,該雲遊戲伺服器執行遊戲控制並且選擇性執行客戶裝置的圖像旋轉,以借助該雲遊戲伺服器側圖像方向控制執行客戶側延遲改善。此外,可安排該網路介面電路透過至少一個網路將雲遊戲伺服器耦接至該客戶裝置。例如,該客戶裝置中的至少一個方向相關感測器配置為檢測該客戶裝置的客戶裝置方向;該客戶裝置配置為向該雲遊戲伺服器通知該客戶裝置方向;該雲遊戲伺服器配置為依據該客戶裝置方向,提前為該客戶裝置生成雲遊戲的預旋轉視訊內容,用於透過視訊流輸出給該客戶裝置,其中,該預旋轉視訊內容對應該客戶裝置方向;以及該客戶裝置配置為透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在視訊暫存器中,用於輸出至顯示面板並且在該顯示面板上顯示。At least one embodiment of the present invention provides a cloud game server for performing client-side delay improvement by means of image direction control on the cloud game server side. The cloud game server may include at least one processor (for example, one or more processors) and a network interface circuit coupled to the at least one processor. At least one processor may be arranged to control the operation of the cloud game server, wherein, under the control of the at least one processor, the cloud game server performs game control and selectively executes image rotation of the client device to use the cloud The game server side image direction control implements the client side delay improvement. In addition, the network interface circuit can be arranged to couple the cloud game server to the client device through at least one network. For example, at least one direction-related sensor in the client device is configured to detect the direction of the client device of the client device; the client device is configured to notify the cloud game server of the direction of the client device; the cloud game server is configured according to The direction of the client device generates pre-rotation video content of the cloud game for the client device in advance for output to the client device through a video stream, wherein the pre-rotation video content corresponds to the direction of the client device; and the client device is configured to pass through The video stream receives the pre-rotated video content, and caches the pre-rotated video content in a video register for output to and display on the display panel.

本發明方法與相關裝置(例如,電子裝置中的主處理器、處理電路等)可適當控制電子裝置的操作,並且更特別地,可請求雲遊戲伺服器提前為客戶裝置執行雲遊戲的視訊內容圖像旋轉,並且將圖像旋轉任務從客戶裝置卸載給雲遊戲伺服器,從而改善電子裝置的整體性能。例如,對於處於橫向模式播放的遊戲,客戶裝置無需旋轉已緩存視訊資料從而匹配顯示方向,並且因此可降低延遲與頻寬(BW)消耗。此外,在解決先前技術的問題時,實施本發明實施例不會大大增加額外成本。與傳統結構相比,在不引入任何副作用或不太可能引入副作用的情況下,本發明可取得電子裝置的最佳性能。The method and related devices of the present invention (for example, the main processor, processing circuit, etc. in the electronic device) can appropriately control the operation of the electronic device, and more particularly, can request the cloud game server to execute the video content of the cloud game for the client device in advance Image rotation, and offload the image rotation task from the client device to the cloud game server, thereby improving the overall performance of the electronic device. For example, for a game played in landscape mode, the client device does not need to rotate the cached video data to match the display direction, and thus can reduce latency and bandwidth (BW) consumption. In addition, when solving the problems of the prior art, the implementation of the embodiments of the present invention will not greatly increase additional costs. Compared with the traditional structure, the present invention can achieve the best performance of the electronic device without introducing any side effects or being unlikely to introduce side effects.

其它實施方式和優點在下面的詳細描述中描述。該發明內容並不打算限定本發明。本發明由申請專利範圍限定。Other embodiments and advantages are described in the detailed description below. This summary is not intended to limit the invention. The present invention is limited by the scope of patent application.

在說明書及申請專利範圍當中使用了某些詞彙來指稱特定的元件。所屬技術領域的技術人員應可理解,硬體製造商可能會用不同的名詞來稱呼同一個元件。本說明書及申請專利範圍並不以名稱的差異作為區分元件的方式,而是以元件在功能上的差異作為區分的準則。在通篇說明書及申請專利範圍項中所提及的「包含」為一開放式的用語,故應解釋成「包含但不限定於」。此外,「耦接」一詞在此包含任何直接及間接的電氣連接手段。因此,若文中描述一個裝置耦接於另一裝置,則代表該裝置可直接電氣連接於該另一裝置,或透過其它裝置或連接手段間接地電氣連接至該另一裝置。Certain words are used in the specification and the scope of the patent application to refer to specific elements. Those skilled in the art should understand that hardware manufacturers may use different terms to refer to the same component. This specification and the scope of the patent application do not use differences in names as a way to distinguish elements, but use differences in functions of elements as a criterion. The "include" mentioned in the entire specification and the scope of patent application is an open term, so it should be interpreted as "include but not limited to". In addition, the term "coupling" here includes any direct and indirect electrical connection means. Therefore, if a device is described in the text as being coupled to another device, it means that the device can be directly electrically connected to the other device, or indirectly electrically connected to the other device through other devices or connecting means.

第1圖是依據本發明第一實施例的電子裝置100的示意圖,其中,為了更好理解也描述了雲遊戲伺服器10。電子裝置100的示例可包含,但不限於,多功能行動電話、平板電腦、可穿戴裝置、一體機與筆記型電腦。可使用電子裝置100作為伺服器(例如,雲遊戲伺服器10)的客戶裝置,以向使用者提供一個或複數個服務,並且特別地,可使用電子裝置100作為雲遊戲伺服器10的遊戲客戶裝置,以允許使用者玩一個或複數個雲遊戲。如第1圖的右上角所示,雲遊戲伺服器10可包含匯流排10B以及可統稱為處理器11的至少一個處理器(例如,一個或複數個處理器),並且該雲遊戲伺服器10可包含影像處理單元(GPU)12、隨機存取記憶體(RAM)(例如,動態RAM(DRAM)13)、網路介面電路14(為了簡化在第1圖中標為「網路IF CKT」),以及視訊轉碼器15(為了簡化在第1圖中標為「VENC」),其中,處理器11、GPU 12、DRAM 13、網路介面電路140與視訊轉碼器15可透過匯流排10B彼此耦接。例如,可安排雲遊戲伺服器10的至少一個存儲裝置(第1圖中未示出)存儲某些程式碼11P。程式碼11P的示例可包含,但不限於,作業系統(OS)、一個或複數個驅動器以及一個或複數個應用。處理器11可從存儲裝置載入程式碼11P,並且運行程式碼11P以控制雲遊戲伺服器10的操作。在運行程式碼11P的處理器11的控制下,雲遊戲伺服器10可執行遊戲控制,更特別地,可為客戶裝置(例如,電子裝置100)執行圖像定像控制,以借助雲遊戲伺服器側圖像定像控制來執行客戶側延遲優化(或延遲降低)。Fig. 1 is a schematic diagram of an electronic device 100 according to a first embodiment of the present invention, in which a cloud game server 10 is also described for better understanding. Examples of the electronic device 100 may include, but are not limited to, multifunctional mobile phones, tablet computers, wearable devices, all-in-one computers, and notebook computers. The electronic device 100 can be used as a client device of a server (for example, the cloud game server 10) to provide one or more services to users, and in particular, the electronic device 100 can be used as a game client of the cloud game server 10 Device to allow users to play one or more cloud games. As shown in the upper right corner of Figure 1, the cloud game server 10 may include a bus 10B and at least one processor (for example, one or more processors) that may be collectively referred to as a processor 11, and the cloud game server 10 Can include image processing unit (GPU) 12, random access memory (RAM) (for example, dynamic RAM (DRAM) 13), network interface circuit 14 (marked as "Network IF CKT" in the first figure for simplicity) , And the video codec 15 (marked as "VENC" in the first figure for simplicity), in which the processor 11, GPU 12, DRAM 13, network interface circuit 140 and video codec 15 can communicate with each other through the bus 10B Coupling. For example, at least one storage device (not shown in Figure 1) of the cloud game server 10 can be arranged to store some program codes 11P. Examples of the code 11P may include, but are not limited to, an operating system (OS), one or more drives, and one or more applications. The processor 11 can load the program code 11P from the storage device, and run the program code 11P to control the operation of the cloud game server 10. Under the control of the processor 11 running the program code 11P, the cloud game server 10 can perform game control, and more particularly, can perform image fixation control for the client device (for example, the electronic device 100) to use the cloud game server Image fixation control on the device side to perform client-side delay optimization (or delay reduction).

如第1圖所示,電子裝置100可包含處理電路105以及耦接處理電路105的顯示面板150,並且處理電路105可包含匯流排105B、主處理器110(例如,中央處理單元(CPU))以及可統稱為方向相關感測器120的至少一個方向相關感測器(例如,一個或複數個方向相關感測器),以及可包含RAM(例如,DRAM 130)與網路介面電路140(為了簡化在第1圖中標為「網路IF CKT」),特別地,主處理器110可包含核心電路112、顯示介面電路114(為了簡化在第1圖中標為「顯示IF CKT」)以及匯流排界面電路116,並且顯示面板150可包含顯示介面電路152(為了簡化在第1圖中標為「網路IF CKT」)、顯示控制器154與顯示模組(例如,液晶顯示(LCD)模組156),其中,主處理器110、方向相關感測器120、DRAM 130以及網路介面電路140可透過匯流排105B彼此耦接,並且顯示介面電路114與匯流排界面電路116可按照第1圖所示的方式耦接核心電路112,但本發明並不局限於此。依據某些實施例,第1圖所示的電子裝置100的結構可多種多樣。例如,可將顯示模組(例如,LCD模組156)與觸摸感應模組(未示出)集成在相同模組,以形成觸摸感應顯示裝置(例如,觸控式螢幕),並且觸摸感應顯示裝置可包含觸摸控制器,用於執行觸摸控制從而經由觸摸感應模組檢測使用者輸入。另外,可安排雲遊戲伺服器10的網路介面電路14與電子裝置100的網路介面電路140透過至少一個網路將雲遊戲伺服器10與電子裝置100彼此耦接。例如,網路介面電路140可包含遵循幾個通訊標準的複數個無線通訊電路(例如,Wi-Fi電路、行動網路電路等),用於執行電子裝置100的無線通訊。As shown in Figure 1, the electronic device 100 may include a processing circuit 105 and a display panel 150 coupled to the processing circuit 105, and the processing circuit 105 may include a bus 105B and a main processor 110 (for example, a central processing unit (CPU)) And at least one direction-related sensor (for example, one or more direction-related sensors) that can be collectively referred to as the direction-related sensor 120, and may include RAM (for example, DRAM 130) and a network interface circuit 140 (for For simplicity, it is labeled "Network IF CKT" in Figure 1). In particular, the main processor 110 may include a core circuit 112, a display interface circuit 114 (labeled as "Display IF CKT" in Figure 1 for simplicity), and a bus The interface circuit 116, and the display panel 150 may include a display interface circuit 152 (labeled as "Network IF CKT" in Figure 1 for simplicity), a display controller 154, and a display module (for example, a liquid crystal display (LCD) module 156) ), where the main processor 110, the direction-related sensor 120, the DRAM 130, and the network interface circuit 140 can be coupled to each other through the bus 105B, and the display interface circuit 114 and the bus interface circuit 116 can be as shown in Figure 1. The illustrated method is coupled to the core circuit 112, but the present invention is not limited to this. According to some embodiments, the structure of the electronic device 100 shown in FIG. 1 can be varied. For example, a display module (for example, LCD module 156) and a touch sensing module (not shown) can be integrated in the same module to form a touch sensing display device (for example, touch screen), and the touch sensing display The device may include a touch controller for performing touch control to detect user input through the touch sensing module. In addition, the network interface circuit 14 of the cloud game server 10 and the network interface circuit 140 of the electronic device 100 can be arranged to couple the cloud game server 10 and the electronic device 100 to each other through at least one network. For example, the network interface circuit 140 may include a plurality of wireless communication circuits (for example, Wi-Fi circuits, mobile network circuits, etc.) that comply with several communication standards for performing wireless communication of the electronic device 100.

處理電路105(例如,主處理器110)與顯示面板150可透過顯示介面電路114與152彼此耦接,並且顯示介面電路114與152可實施為遵照特定標準的介面電路。例如,特定標準可為行動行業處理器介面(MIPI)聯盟的MIPI顯示序列介面(DSI)標準,並且顯示介面電路114與152可實施為DSI電路。因此,主處理器110(例如,核心電路112)可與顯示面板150進行通訊,用於執行電子裝置100的相關聯控制。此外,電子裝置100可進一步包含附加電路,例如,功率管理電路、存儲介面電路等(未示出),以將執行相關聯操作(例如,功率管理、存儲交互等)的能力提供給電子裝置100。此外,主處理器110(例如,核心電路112)可控制電子裝置100的各種操作。例如,主處理器110(例如,核心電路112)上運行的許多程式碼112P可控制電子裝置100,以使得電子裝置100配備各種功能。程式碼112P的示例可包含,但不限於OS、一個或複數個驅動器以及一個或複數個應用。The processing circuit 105 (for example, the main processor 110) and the display panel 150 can be coupled to each other through the display interface circuits 114 and 152, and the display interface circuits 114 and 152 can be implemented as interface circuits compliant with specific standards. For example, the specific standard may be the MIPI Display Sequence Interface (DSI) standard of the Mobile Industry Processor Interface (MIPI) Alliance, and the display interface circuits 114 and 152 may be implemented as DSI circuits. Therefore, the main processor 110 (for example, the core circuit 112) can communicate with the display panel 150 for performing associated control of the electronic device 100. In addition, the electronic device 100 may further include additional circuits, such as a power management circuit, a storage interface circuit, etc. (not shown), to provide the electronic device 100 with the ability to perform associated operations (eg, power management, storage interaction, etc.) . In addition, the main processor 110 (for example, the core circuit 112) may control various operations of the electronic device 100. For example, many program codes 112P running on the main processor 110 (for example, the core circuit 112) can control the electronic device 100 so that the electronic device 100 is equipped with various functions. Examples of the program code 112P may include, but are not limited to, the OS, one or more drivers, and one or more applications.

依據本實施例,可安排主處理器110執行關於雲遊戲的交互控制。特別地,可安排核心電路112控制主處理器110,用於控制電子裝置100的操作。在核心電路112的控制下,主處理器110可執行電子裝置100的顯示控制。例如,主處理器110(例如,核心電路112)可提前將顯示介面電路114的刷新率設定為目標刷新率,用於控制主處理器110依據預設目標刷新率向顯示面板150輸出圖像,並且當存在需求時可動態執行刷新率調整,其中,可安排顯示介面電路114控制從訊框暫存器(例如,DRAM 130中的視訊暫存器132)向顯示面板150輸出圖像的圖像資料的時序,但本發明並不局限於此。此外,可安排顯示介面電路114與152將顯示面板150與主處理器110耦接,並且從主處理器110向顯示面板150發送一個或複數個命令以及圖像資料。因此,顯示面板150可顯示電子裝置100的資訊(例如,圖像資料)。According to this embodiment, the main processor 110 can be arranged to perform interactive control on cloud games. In particular, the core circuit 112 may be arranged to control the main processor 110 for controlling the operation of the electronic device 100. Under the control of the core circuit 112, the main processor 110 can perform display control of the electronic device 100. For example, the main processor 110 (for example, the core circuit 112) may set the refresh rate of the display interface circuit 114 as the target refresh rate in advance, for controlling the main processor 110 to output images to the display panel 150 according to the preset target refresh rate. And when there is demand, the refresh rate can be adjusted dynamically. The display interface circuit 114 can be arranged to control the output of the image from the frame register (for example, the video register 132 in the DRAM 130) to the display panel 150 The timing of the data, but the invention is not limited to this. In addition, the display interface circuits 114 and 152 can be arranged to couple the display panel 150 and the main processor 110, and send one or more commands and image data from the main processor 110 to the display panel 150. Therefore, the display panel 150 can display information (for example, image data) of the electronic device 100.

程式碼112P的一個或複數個應用可包含雲遊戲的客戶應用(APP)。主處理器110(例如,核心電路112)可運行雲遊戲的客戶APP,以執行對於雲遊戲的交互控制。例如,雲遊戲伺服器10可向客戶裝置(例如,電子裝置100)發送雲遊戲的至少一個視訊流。在運行客戶APP的主處理器110(例如,核心電路112)的控制下,電子裝置100可為使用者接收並播放雲遊戲的視訊流,其中,視訊流可承載雲遊戲的圖像資料(例如,圖像訊框)以及相關聯音訊資料。運行客戶APP的主處理器110(例如,核心電路112)可利用電子裝置100的觸摸感應模組或觸控式螢幕檢測使用者控制,例如用戶觸摸行為(例如,用戶使用其手指在觸摸感應模組或觸控式螢幕上點擊、拖拉等),並且利用網路介面電路140透過網路向雲遊戲伺服器10發送使用者控制的使用者控制資訊。因此,回應於用戶控制,雲遊戲伺服器10可改變雲遊戲的圖像資料(例如,圖像訊框)與相關聯音訊資料。此外,運行客戶APP的主處理器110(例如,核心電路112)可利用方向相關感測器120執行電子裝置100的方向相關感應,從而分別在複數個時間點生成複數個方向檢測結果,並且利用網路介面電路140向雲遊戲伺服器10發送複數個時間點的各個方向檢測結果,作為遊戲客戶方向的即時回饋,其中,複數個方向檢測結果可分別在這些時間點指示客戶裝置(例如,電子裝置100)的客戶裝置方向。One or more applications of the program code 112P may include a client application (APP) of a cloud game. The main processor 110 (for example, the core circuit 112) may run a client APP of the cloud game to perform interactive control of the cloud game. For example, the cloud game server 10 may send at least one video stream of the cloud game to the client device (for example, the electronic device 100). Under the control of the main processor 110 (for example, the core circuit 112) running the client APP, the electronic device 100 can receive and play the video stream of the cloud game for the user. The video stream can carry the image data of the cloud game (for example, , Image frame) and associated audio data. The main processor 110 (for example, the core circuit 112) running the client APP can use the touch sensor module or the touch screen of the electronic device 100 to detect user control, such as user touch behavior (for example, the user uses his finger in the touch sensor module Click, drag, etc. on the group or touch screen), and use the network interface circuit 140 to send the user control information controlled by the user to the cloud game server 10 through the network. Therefore, in response to user control, the cloud game server 10 can change the image data (eg, image frame) and associated audio data of the cloud game. In addition, the main processor 110 (for example, the core circuit 112) running the client APP can use the direction-related sensor 120 to perform direction-related sensing of the electronic device 100, thereby generating a plurality of direction detection results at a plurality of time points, and using The network interface circuit 140 sends the detection results of various directions at a plurality of time points to the cloud game server 10 as real-time feedback of the direction of the game client. Among them, the detection results of the plurality of directions can indicate the client device (for example, electronic Device 100) client device orientation.

如第1圖所示,可安排顯示介面電路114將顯示面板150耦接主處理器110,並且可安排匯流排界面電路116透過匯流排105B將至少一個元件耦接主處理器110,其中,上述至少一個元件可包含方向相關感測器120、DRAM 130以及網路介面電路140,其中,DRAM 130可包含視訊暫存器132,並且因此可被認為是主處理器110的外部暫存器,但本發明並不局限於此。依據許多實施例,可將視訊暫存器132集成入主處理器110,並且特別地,可實施為主處理器110的內部暫存器。此外,匯流排界面電路116可符合特定通訊標準,以允許主處理器110與上述至少一個元件(例如,第1圖所示的方向相關感測器120與DRAM 130,以及視訊暫存器132,用於視訊暫存器132作為主處理器110的外部暫存器的情況)進行通訊。例如,方向相關感測器120、DRAM 130與網路介面電路140可分別在主處理器110的控制下進行工作。此外,視訊暫存器132可為RAM(例如,DRAM 130)中複數個緩存區域的一個。例如,可安排視訊暫存器132緩存訊框資訊。As shown in Figure 1, a display interface circuit 114 can be arranged to couple the display panel 150 to the main processor 110, and a bus interface circuit 116 can be arranged to couple at least one component to the main processor 110 through the bus 105B. At least one component may include a direction-dependent sensor 120, a DRAM 130, and a network interface circuit 140. The DRAM 130 may include a video register 132, and therefore may be regarded as an external register of the main processor 110, but The present invention is not limited to this. According to many embodiments, the video register 132 may be integrated into the main processor 110, and in particular, may be implemented as an internal register of the main processor 110. In addition, the bus interface circuit 116 may comply with a specific communication standard to allow the main processor 110 and at least one of the above-mentioned components (for example, the direction-dependent sensor 120 and the DRAM 130 shown in FIG. 1 and the video register 132, Used for communication when the video register 132 is used as an external register of the main processor 110). For example, the direction-related sensor 120, the DRAM 130, and the network interface circuit 140 can work under the control of the main processor 110, respectively. In addition, the video register 132 can be one of a plurality of cache areas in the RAM (for example, the DRAM 130). For example, the video register 132 can be arranged to buffer frame information.

依據許多實施例,當存在需求時,第1圖所示的主處理器110中的電路可多種多樣。例如,顯示介面電路114與匯流排界面電路116可透過直接連接而彼此耦接。另一示例中,在主處理器110中,可將一個或複數個其他元件(例如,用於臨時存儲待輸出給顯示面板150的圖像資料的訊框暫存器)插入顯示介面電路114與匯流排界面電路116之間,並且顯示介面電路114與匯流排界面電路116可透過一個或複數個其他元件彼此耦接。According to many embodiments, when there is a demand, the circuits in the main processor 110 shown in FIG. 1 can be varied. For example, the display interface circuit 114 and the bus interface circuit 116 can be coupled to each other through direct connection. In another example, in the main processor 110, one or more other components (for example, a frame register for temporarily storing image data to be output to the display panel 150) can be inserted into the display interface circuit 114 and The bus interface circuit 116, and the display interface circuit 114 and the bus interface circuit 116 can be coupled to each other through one or more other components.

依據許多實施例,方向相關感測器120可包含陀螺儀、磁力儀與攝像頭的一個或組合。例如,依據方向相關感測器120的一個或複數個感應結果(例如,最新感應結果與歷史感應結果),運行客戶APP的主處理器110(例如,核心電路112)可執行感測器融合,以生成複數個方向檢測結果,但本發明並不局限於此。對於另一示例,運行客戶APP的主處理器110(例如,核心電路112)可借助攝像頭執行圖像檢測,特別地,可從攝像頭取得使用者的臉圖像,並且依據該臉圖像執行使用者的臉檢測,以生成複數個方向檢測結果。According to many embodiments, the direction-related sensor 120 may include one or a combination of a gyroscope, a magnetometer, and a camera. For example, according to one or more sensing results (for example, the latest sensing result and historical sensing result) of the direction-related sensor 120, the main processor 110 (for example, the core circuit 112) running the client APP can perform sensor fusion, To generate a plurality of direction detection results, but the present invention is not limited to this. For another example, the main processor 110 (for example, the core circuit 112) running the client APP can perform image detection with the help of a camera. In particular, it can obtain the user's face image from the camera and execute the use based on the face image. The face of the person is detected to generate multiple direction detection results.

第2圖是依據本發明實施例的借助雲遊戲伺服器側圖像方向控制來執行客戶側延遲優化的方法流程圖。可將該方法應用於第1圖所示的電子裝置100與雲遊戲伺服器10,並且特別地,可將其應用於電子裝置100架構中的主處理器110(例如,運行程式碼112P的核心電路112)以及相關聯元件(例如,方向相關感測器120、DRAM 130與網路介面電路140),也應用於雲遊戲伺服器10架構中的運行程式碼11P的處理器11與相關聯元件(例如,GPU 12、DRAM 13、網路介面電路14以及視訊轉碼器15)。Figure 2 is a flowchart of a method for performing client-side delay optimization by means of cloud game server-side image direction control according to an embodiment of the present invention. This method can be applied to the electronic device 100 and the cloud game server 10 shown in FIG. 1, and in particular, it can be applied to the main processor 110 in the structure of the electronic device 100 (for example, the core running the program code 112P The circuit 112) and related components (for example, the direction-related sensor 120, the DRAM 130 and the network interface circuit 140) are also applied to the processor 11 and related components running the code 11P in the cloud game server 10 architecture (For example, GPU 12, DRAM 13, network interface circuit 14, and video transcoder 15).

在步驟S10,主處理器110可利用方向相關感測器120,檢測客戶裝置(例如,電子裝置100)的客戶裝置方向。依據該實施例,主處理器110可從方向相關感測器120獲取感應資訊,並且特別地,可從該方向相關感測器120(例如,運動、位置、地點與環境感測器)收集各種傳感資訊片段,並且可至少依據傳感資訊執行計算(例如,感測器融合),以確定該客戶裝置方向,其中,該傳感資訊可包含運動感應資訊、位置感應資訊、定位感應資訊與環境感應資訊的一個或組合。例如,使用者可按照複數個預定客戶裝置方向的一個方向(例如,複數個橫向的一個或者複數個縱向的一個)持有該客戶裝置(例如,電子裝置100),並且主處理器110可檢測電子裝置100的最新方向。In step S10, the main processor 110 may use the direction-related sensor 120 to detect the direction of the client device (for example, the electronic device 100). According to this embodiment, the main processor 110 can obtain sensing information from the direction-related sensor 120, and in particular, can collect various information from the direction-related sensor 120 (for example, motion, position, location, and environment sensors). Sensor information fragments, and can perform calculations (for example, sensor fusion) at least based on sensor information to determine the direction of the client device, where the sensor information can include motion sensor information, position sensor information, location sensor information, and One or a combination of environmental sensing information. For example, the user may hold the client device (for example, the electronic device 100) according to one of a plurality of predetermined client device directions (for example, one of a plurality of horizontal directions or one of a plurality of vertical directions), and the main processor 110 may detect The latest direction of the electronic device 100.

在步驟S12,主處理器110可利用客戶裝置(例如,電子裝置100)中的網路介面電路140,向雲遊戲伺服器10通知該客戶裝置方向。依據該實施例,主處理器110可利用網路介面電路140向雲遊戲伺服器10發送方向索引,以向雲遊戲伺服器10通知該客戶裝置方向,其中,該方向索引可指示該客戶裝置方向。In step S12, the main processor 110 may use the network interface circuit 140 in the client device (for example, the electronic device 100) to notify the cloud game server 10 of the direction of the client device. According to this embodiment, the main processor 110 may use the network interface circuit 140 to send a direction index to the cloud game server 10 to notify the cloud game server 10 of the direction of the client device, wherein the direction index may indicate the direction of the client device .

在步驟S13,依據該客戶裝置方向(例如,從電子裝置100接收的方向索引),雲遊戲伺服器10(例如,運行程式碼11P的處理器11)可決定是否旋轉雲遊戲的一個或複數個圖像訊框。如果答案為是,進入步驟S14;如果答案為否,進入步驟S24。In step S13, according to the direction of the client device (for example, the direction index received from the electronic device 100), the cloud game server 10 (for example, the processor 11 running the code 11P) may determine whether to rotate one or more cloud games Image frame. If the answer is yes, go to step S14; if the answer is no, go to step S24.

在步驟S14,主處理器110可利用雲遊戲伺服器10依據該客戶裝置方向提前為客戶裝置(例如,電子裝置100)旋轉雲遊戲的視訊內容(例如,一個或複數個圖像訊框),從而生成雲遊戲的預旋轉視訊內容,例如,對應客戶裝置方向的預旋轉視訊內容,以透過視訊流輸出給客戶裝置。例如,在視訊流期間,雲遊戲伺服器10可透過使用視訊轉碼器15編碼該預旋轉視訊內容,以生成預旋轉視訊內容的已編碼結果。In step S14, the main processor 110 may use the cloud game server 10 to rotate the video content (for example, one or more image frames) of the cloud game for the client device (for example, the electronic device 100) in advance according to the direction of the client device. Thus, the pre-rotation video content of the cloud game is generated, for example, the pre-rotation video content corresponding to the direction of the client device is output to the client device through the video stream. For example, during the video streaming, the cloud game server 10 can encode the pre-rotated video content by using the video transcoder 15 to generate the encoded result of the pre-rotated video content.

在步驟S16,主處理器110可利用網路介面電路140透過視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在該視訊暫存器132中,無需旋轉視訊暫存器132中緩存的預旋轉視訊內容,用於輸出至顯示面板150並且在顯示面板150上顯示。例如,在視訊流期間,客戶裝置(例如,電子裝置100)可解碼該已編碼結果(例如,透過使用主處理器110),以取得預旋轉視訊內容。In step S16, the main processor 110 may use the network interface circuit 140 to receive the pre-rotated video content through the video stream, and cache the pre-rotated video content in the video register 132 without rotating the video register 132 The cached pre-rotated video content is used for output to and display on the display panel 150. For example, during the video stream, the client device (for example, the electronic device 100) can decode the encoded result (for example, by using the main processor 110) to obtain the pre-rotated video content.

在步驟S24,在無需提前為客戶裝置(例如,電子裝置100)旋轉雲遊戲的視訊內容情況下,主處理器110可利用雲遊戲伺服器10依據客戶裝置方向準備(例如,生成)雲遊戲的視訊內容,用於透過視訊流輸出至客戶裝置。例如,在視訊流期間,雲遊戲伺服器10可透過使用視訊轉碼器15編碼該視訊內容,以生成視訊內容的已編碼結果。In step S24, without rotating the video content of the cloud game for the client device (for example, the electronic device 100) in advance, the main processor 110 can use the cloud game server 10 to prepare (for example, generate) cloud game content according to the direction of the client device. The video content is used to output to the client device through the video stream. For example, during the video streaming, the cloud game server 10 may encode the video content by using the video codec 15 to generate the encoded result of the video content.

在步驟S26,主處理器110可利用網路介面電路140透過視訊流接收視訊內容,並且將該視訊內容緩存在視訊暫存器132中,用於輸出至顯示面板150並且在顯示面板150上顯示。例如,在視訊流期間,客戶裝置(例如,電子裝置100)可解碼該已編碼結果(例如,透過使用主處理器110),以取得視訊內容。In step S26, the main processor 110 may use the network interface circuit 140 to receive the video content through the video stream, and buffer the video content in the video register 132 for output to the display panel 150 and display on the display panel 150 . For example, during the video streaming, the client device (for example, the electronic device 100) can decode the encoded result (for example, by using the main processor 110) to obtain the video content.

依據本實施例,可重複第2圖所示的流程中的某些操作,其中,步驟S13的最新決定結果可引導對應最新決定結果的相關聯操作的執行。隨著時間流逝,使用者可改變持有電子裝置100的方式,並且主處理器110可生成指示電子裝置100最新方向的最新方向檢測結果(例如,最新方向索引),以回應於最新方向檢測結果(例如,最新方向索引)使得電子裝置100進入該流程的子流程,例如,步驟S13、S14、S16的子流程或者步驟S13、S24、S26的子流程。According to this embodiment, some operations in the process shown in Fig. 2 can be repeated, wherein the latest decision result of step S13 can guide the execution of the associated operation corresponding to the latest decision result. As time passes, the user can change the way of holding the electronic device 100, and the main processor 110 can generate the latest direction detection result (for example, the latest direction index) indicating the latest direction of the electronic device 100 in response to the latest direction detection result (For example, the latest direction index) makes the electronic device 100 enter a sub-process of the process, for example, the sub-process of steps S13, S14, and S16 or the sub-process of steps S13, S24, and S26.

為了更好理解,可將該方法描述為第2圖所示的流程,但本發明並不局限於此。依據某些實施例,可在第2圖所示的流程中增加、刪除或改變一個或複數個步驟。For better understanding, this method can be described as the process shown in Figure 2, but the present invention is not limited to this. According to some embodiments, one or more steps can be added, deleted, or changed in the process shown in Figure 2.

依據某些實施例,不管是否首先生成步驟S14中提到的視訊內容(例如,一個或複數個視訊訊框),雲遊戲伺服器10可依據客戶裝置方向提前為客戶裝置(例如,電子裝置100)生成雲遊戲的預旋轉視訊內容,並且可在伺服器側完成旋轉動作,以生成對應客戶裝置方向的預旋轉視訊內容。上述內容可透過下列方式實現:1)利用雲遊戲伺服器10的GPU 12直接畫出對應客戶裝置方向的預旋轉視訊內容,或者2)首先生成雲遊戲的視訊內容(例如,一個或複數個圖像訊框)並且然後旋轉這些視訊內容,其中,雲遊戲伺服器10中的旋轉器(ROT)(例如,雲遊戲伺服器10的特定處理器(例如,主處理器110或GPU 12)上運行的程式模組(例如,ROT模組)或者雲遊戲伺服器10的專用硬體電路(例如,ROT電路))可執行旋轉這些視訊內容的操作,但本發明並不局限於此。此外,關於第2圖所示的流程,步驟S14的操作可多種多樣。例如,在利用雲遊戲伺服器10依據客戶裝置方向提前為客戶裝置(例如,電子裝置100)生成雲遊戲的預旋轉視訊內容期間,主處理器110可利用雲遊戲伺服器10(例如,GPU 12)直接生成對應客戶裝置方向的預旋轉視訊內容,無需首先生成雲遊戲的視訊內容(例如,一個或複數個圖像訊框),並且接著旋轉視訊內容。According to some embodiments, regardless of whether the video content (for example, one or more video frames) mentioned in step S14 is first generated, the cloud game server 10 can provide the client device (for example, the electronic device 100) in advance according to the direction of the client device. ) Generate pre-rotation video content for cloud games, and complete the rotation on the server side to generate pre-rotation video content corresponding to the direction of the client device. The above content can be achieved in the following ways: 1) Use the GPU 12 of the cloud game server 10 to directly draw the pre-rotated video content corresponding to the direction of the client device, or 2) First generate the video content of the cloud game (for example, one or more images) Image frame) and then rotate the video content, where the rotator (ROT) in the cloud game server 10 (for example, a specific processor of the cloud game server 10 (for example, the main processor 110 or the GPU 12) runs on The program module (for example, ROT module) or the dedicated hardware circuit (for example, ROT circuit) of the cloud game server 10 can perform the operation of rotating these video contents, but the present invention is not limited to this. In addition, regarding the flow shown in FIG. 2, the operation of step S14 can be various. For example, during the period when the cloud game server 10 is used to generate pre-rotation video content of the cloud game for the client device (for example, the electronic device 100) in advance according to the direction of the client device, the main processor 110 may use the cloud game server 10 (for example, the GPU 12). ) Directly generate the pre-rotated video content corresponding to the direction of the client device, without first generating the video content of the cloud game (for example, one or more image frames), and then rotating the video content.

第3圖描述了依據本發明實施例的第2圖所示方法的控制方案,其中為了更好理解,也描述了具有額外旋轉從而增加更多延遲與頻寬(BW)消耗的情況。如第3圖左半部所示,在雲遊戲伺服器側準備的圖像訊框與在客戶側顯示的圖像訊框的各個座標平面的各個源點(簡化標為「O」)彼此不同,其中,眼睛符號可指示使用者觀看遊戲客戶裝置螢幕的方向。對於橫向模式播放的遊戲,該遊戲客戶裝置通常需要旋轉暫存器(尤其是,暫存器的已緩存視訊內容,例如該暫存器緩存的所有圖像訊框),以匹配顯示方向,並且因此增加了更多延遲與頻寬消耗(簡化標為「額外旋轉增加更多延遲與BW」)。例如,當旋轉暫存器(尤其是,暫存器的已緩存視訊內容)時,遊戲客戶裝置必須執行更多操作,例如,更多暫存器的存取(例如,讀與寫)操作,從而引起遊戲控制的更多延遲以及遊戲客戶裝置的一個或複數個內部資料路徑(例如,暫存器的一個或複數個輸入/輸出(I/O)路徑)的更多頻寬消耗。因此,可能會存在許多遊戲問題,例如,視訊落後於音訊、使用者控制的延遲圖像顯示等。Fig. 3 describes the control scheme of the method shown in Fig. 2 according to an embodiment of the present invention. For better understanding, it also describes a situation with extra rotation to increase more delay and bandwidth (BW) consumption. As shown in the left half of Figure 3, the source points (simplified as "O") of the coordinate planes of the image frame prepared on the cloud game server side and the image frame displayed on the client side are different from each other , Where the eye symbol can indicate the direction the user looks at the screen of the game client device. For games played in landscape mode, the game client device usually needs to rotate the register (especially, the cached video content of the register, such as all the image frames cached in the register) to match the display direction, and As a result, more delay and bandwidth consumption are added (simplified labeled "additional rotation adds more delay and BW"). For example, when rotating the register (especially the cached video content of the register), the game client device must perform more operations, for example, more register access (for example, read and write) operations, This causes more delays in game control and more bandwidth consumption of one or more internal data paths of the game client device (for example, one or more input/output (I/O) paths of the register). Therefore, there may be many game problems, such as video lagging behind audio, user-controlled delayed image display, etc.

如第3圖右半部所示,基於該實施例的控制方案,在雲遊戲伺服器側準備的圖像訊框與在客戶側顯示的圖像訊框的各個座標平面的各個源點(簡化標為「O」)相同,其中,眼睛符號可指示使用者觀看遊戲客戶裝置(依據該方法工作(例如,電子裝置100))的螢幕操作的方向。對於橫向模式播放的遊戲,該遊戲客戶裝置不需要旋轉暫存器(例如,視訊暫存器132)(尤其是,暫存器的已緩存視訊內容,例如該暫存器緩存的任意圖像訊框),並且因此降低了延遲與頻寬消耗(簡化標為「降低延遲與BW」)。例如,在步驟S31,遊戲客戶裝置可向雲遊戲伺服器10發送關於遊戲客戶方向(例如,最新方向檢測結果(例如,最新方向索引))的即時回饋(為了簡化標為「方向回饋」)。在遊戲渲染與編碼期間,雲遊戲伺服器10可利用GPU 12執行渲染,以在專用於雲遊戲的遊戲渲染的遊戲渲染暫存器(例如,DRAM 13中的緩存區域)中生成雲遊戲的視訊內容,並且更特別地,在步驟S32中,例如,可透過使用處理器11或GPU 12,依據遊戲客戶裝置的回饋,預旋轉遊戲渲染暫存器中的視訊內容(例如,上述至少一個視訊流的視訊流內容)(為了簡化標為「預旋轉」),並且可進一步利用視訊轉碼器15編碼視訊內容,以生成視訊內容的已編碼結果。既然視訊內容應已經匹配遊戲客戶裝置的方向,所以在步驟S33,遊戲客戶裝置可直接播放視訊內容,無需額外旋轉(為了簡化標為「無需額外旋轉情況下播放」)。因此,可降低延遲與頻寬消耗。As shown in the right half of Figure 3, based on the control scheme of this embodiment, the source points of the image frames prepared on the cloud game server side and the image frames displayed on the client side (simplified Marked as "O") is the same, where the eye symbol can indicate the direction in which the user views the screen operation of the game client device (working according to this method (for example, the electronic device 100)). For games played in landscape mode, the game client device does not need to rotate the register (for example, the video register 132) (especially, the buffered video content of the register, such as any image information buffered by the register) Box), and therefore reduces latency and bandwidth consumption (simplified labelled as "reduced latency and BW"). For example, in step S31, the game client device may send real-time feedback about the game client's direction (for example, the latest direction detection result (for example, the latest direction index)) to the cloud game server 10 (labeled as “direction feedback” for simplicity). During game rendering and encoding, the cloud game server 10 can use the GPU 12 to perform rendering to generate cloud game video in the game rendering register dedicated to game rendering of the cloud game (for example, the cache area in DRAM 13) Content, and more specifically, in step S32, for example, the processor 11 or GPU 12 may be used to pre-rotate the video content in the game rendering register (for example, the above at least one video stream according to the feedback of the game client device). Video stream content) (labeled as "pre-rotation" for simplicity), and the video codec 15 can be further used to encode the video content to generate the encoded result of the video content. Since the video content should match the direction of the game client device, in step S33, the game client device can directly play the video content without additional rotation (for simplicity, it is labeled "Play without additional rotation"). Therefore, the delay and bandwidth consumption can be reduced.

依據某些實施例,在雲遊戲的遊戲渲染期間,雲遊戲伺服器10可利用GPU 12在遊戲渲染暫存器中直接生成雲遊戲的預旋轉視訊內容,以回應于遊戲客戶方向(例如,最新方向檢測結果(例如,最新方向索引))的即時回饋,其中,預旋轉視訊內容對應最新客戶裝置方向,但本發明並不局限於此。According to some embodiments, during the game rendering of the cloud game, the cloud game server 10 can use the GPU 12 to directly generate the pre-rotated video content of the cloud game in the game rendering register in response to the game client's direction (for example, the latest Real-time feedback of orientation detection results (for example, the latest orientation index), where the pre-rotated video content corresponds to the latest client device orientation, but the invention is not limited to this.

第4圖描述了依據本發明實施例的第3圖所示控制方案的許多實施細節,其中,可將90度方向作為複數個橫向的示例。拿安卓OS作為程式碼112P的OS的示例,在程式碼112P中的多層軟體模組中的低層軟體模組可提供獲取當前螢幕方向的功能,如下所示:Fig. 4 describes many implementation details of the control scheme shown in Fig. 3 according to an embodiment of the present invention, where the 90-degree direction can be taken as a plurality of lateral examples. Taking the Android OS as an example of the OS with the code 112P, the low-level software module in the multi-layer software module in the code 112P can provide the function of obtaining the current screen orientation, as shown below:

//Get current screen orientation Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay(); int orientation = display.getOrientation();//Get current screen orientation Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay(); int orientation = display.getOrientation();

本發明並不局限於此。例如,對於其他類型OS,功能可多種多樣。The present invention is not limited to this. For example, for other types of OS, the functions can be diverse.

在步驟S40,客戶APP可從軟體模組的較低層(為了簡化在第4圖中標為「安卓」)獲取當前螢幕方向。在運行客戶APP的主處理器110(例如,核心電路112)的控制下,在步驟S41,遊戲客戶裝置(例如,類似電子裝置100的客戶裝置)可生成方向暗示,以指示當前螢幕方向是遊戲客戶方向的即時回饋(例如,類似最新方向索引的最新方向檢測結果),並且在步驟S42向雲遊戲伺服器10發送方向暗示。此外,在步驟S43,雲遊戲伺服器10可依據方向暗示生成例如預旋轉視訊內容的已旋轉遊戲內容(例如,透過使用GPU 12生成視訊內容並且接著將其進行旋轉以生成已旋轉遊戲內容),以生成預旋轉視訊內容(為了更好理解標為「ROT」),用於視訊轉碼器15進行編碼(為了簡化標為「VENC」),並且可在步驟S44向遊戲客戶裝置發送上述至少一個視訊流(例如,在本實施例中承載已旋轉遊戲內容的視訊流),用於在客戶側直接播放。In step S40, the client APP can obtain the current screen orientation from the lower layer of the software module (marked as "Android" in Figure 4 for simplicity). Under the control of the main processor 110 (for example, the core circuit 112) running the client APP, in step S41, the game client device (for example, a client device similar to the electronic device 100) may generate a direction hint to indicate that the current screen direction is a game Real-time feedback of the client's direction (for example, the latest direction detection result similar to the latest direction index), and a direction hint is sent to the cloud game server 10 in step S42. In addition, in step S43, the cloud game server 10 may generate rotated game content such as pre-rotated video content according to the direction hint (for example, by using the GPU 12 to generate the video content and then rotate it to generate the rotated game content), To generate pre-rotated video content (labeled "ROT" for better understanding), used for encoding by the video transcoder 15 (labeled "VENC" for simplicity), and can send at least one of the above to the game client device in step S44 The video stream (for example, the video stream carrying the rotated game content in this embodiment) is used for direct playback on the client side.

依據許多實施例,步驟S43的操作可多種多樣。例如,在依據方向暗示生成預旋轉視訊內容期間,雲遊戲伺服器10可利用GPU 12直接生成對應當前螢幕方向的預旋轉視訊內容。According to many embodiments, the operation of step S43 can be varied. For example, during the generation of the pre-rotated video content based on the direction hint, the cloud game server 10 can use the GPU 12 to directly generate the pre-rotated video content corresponding to the current screen orientation.

第5圖描述了依據本發明另一實施例的第3圖所示控制方案的幾個實施細節,其中,可將270度方向作為複數個橫向的另一示例。除了使用270度方向替換90度方向,步驟S40-S44的操作幾乎與第4圖所示實施例的操作相同。為了簡化,不重複本實施例的相似描述細節。Fig. 5 describes several implementation details of the control scheme shown in Fig. 3 according to another embodiment of the present invention, in which the 270 degree direction can be taken as another example of plural lateral directions. Except that the 270-degree direction is used instead of the 90-degree direction, the operations of steps S40-S44 are almost the same as those of the embodiment shown in FIG. 4. For simplicity, similar description details of this embodiment are not repeated.

依據許多實施例,在第一時刻,步驟S10中提到的客戶裝置方向可代表客戶裝置的第一客戶裝置方向(例如,90度方向),因此回應於最新方向檢測結果(例如,最新方向索引),可執行步驟S14與S16的操作。在第二時刻,在步驟S10,主處理器110可利用方向相關感測器120檢測客戶裝置的第二客戶裝置方向(例如,270度方向),其中,例如電子裝置100的客戶裝置可已經從第一客戶裝置方向旋轉為第二客戶裝置方向。接著,在步驟S12,主處理器110可利用網路介面電路140向雲遊戲伺服器10通知第二客戶裝置方向。因此,進入步驟S13、S14與S16的子流程。更特別地,主處理器110可利用雲遊戲伺服器10依據第二客戶裝置方向提前為客戶裝置(例如,電子裝置100)旋轉雲遊戲的其他視訊內容(例如,對應第二時刻或從第二時刻開始的第二時間段的第二視訊內容,而不是對應第一時刻或第一時刻與第二時刻之間第一時間段的第一視訊內容),以生成雲遊戲的其他預旋轉視訊內容(例如,對應第二時刻或第二時間段的第二預旋轉視訊內容,而不是對應第一時刻或第一時間段的第一預旋轉視訊內容),用於透過視訊流輸出至客戶裝置,其中,其他預旋轉視訊內容對應第二客戶裝置方向。此外,主處理器110可利用網路介面電路140透過視訊流接收其他預旋轉視訊內容,並且將該其他預旋轉視訊內容緩存在視訊緩衝器132中,用於輸出至顯示面板150並且在顯示面板150中進行顯示。以第4圖與第5圖所示實施例作為示例,這些實施例的第一客戶裝置方向與第二客戶裝置方向可屬於客戶裝置的複數個橫向方向,並且可分別在不同時刻(例如,第一時刻與第二時刻)檢測到。According to many embodiments, at the first moment, the client device direction mentioned in step S10 may represent the client device's first client device direction (for example, a 90-degree direction), and therefore respond to the latest direction detection result (for example, the latest direction index). ), the operations of steps S14 and S16 can be performed. At the second moment, in step S10, the main processor 110 may use the direction-related sensor 120 to detect the second client device direction (for example, a 270 degree direction) of the client device, wherein, for example, the client device of the electronic device 100 may have been The rotation of the first client device direction is the second client device direction. Then, in step S12, the main processor 110 may use the network interface circuit 140 to notify the cloud game server 10 of the direction of the second client device. Therefore, the sub-flow of steps S13, S14 and S16 is entered. More specifically, the main processor 110 may use the cloud game server 10 to rotate other video content of the cloud game (for example, corresponding to the second moment or from the second client device) in advance for the client device (for example, the electronic device 100) according to the direction of the second client device. The second video content of the second time period starting from the time, instead of the first video content corresponding to the first time or the first time period between the first time and the second time), to generate other pre-rotated video content of the cloud game (For example, the second pre-rotation video content corresponding to the second time or the second time period, rather than the first pre-rotation video content corresponding to the first time or the first time period), used to output to the client device through the video stream, Wherein, other pre-rotated video content corresponds to the direction of the second client device. In addition, the main processor 110 can use the network interface circuit 140 to receive other pre-rotated video content through the video stream, and cache the other pre-rotated video content in the video buffer 132 for output to the display panel 150 and on the display panel 150 for display. Taking the embodiments shown in Figures 4 and 5 as examples, the first client device direction and the second client device direction of these embodiments may belong to a plurality of lateral directions of the client device, and may be at different times (for example, the first One moment and second moment) are detected.

依據許多實施例,利用雲遊戲伺服器10依據第二客戶裝置方向提前為客戶裝置(例如,電子裝置100)旋轉雲遊戲的其他視訊內容以生成雲遊戲的其他預旋轉視訊內容的上述操作可多種多樣。例如,在利用雲遊戲伺服器10依據第二客戶裝置方向提前為客戶裝置(例如,電子裝置100)生成雲遊戲的其他預旋轉視訊內容(例如,對應第二時刻或第二時間段的第二預旋轉視訊內容)期間,主處理器110可利用雲遊戲伺服器10(例如,GPU 12)直接生成對應第二客戶裝置方向的其他預旋轉視訊內容,無需首先生成雲遊戲的其他視訊內容(例如,對應第二時刻或開始於第二時刻的時間段的第二視訊內容)以及將其進行旋轉。According to many embodiments, the above operations of using the cloud game server 10 to rotate other video content of the cloud game for the client device (for example, the electronic device 100) in advance according to the direction of the second client device to generate other pre-rotated video content of the cloud game can be multiple Diverse. For example, the cloud game server 10 is used to generate other pre-rotation video content of the cloud game for the client device (for example, the electronic device 100) in advance according to the direction of the second client device (for example, the second time corresponding to the second time or the second time period). During the pre-rotation video content), the main processor 110 can use the cloud game server 10 (for example, GPU 12) to directly generate other pre-rotated video content corresponding to the direction of the second client device without first generating other video content of the cloud game (for example, , Corresponding to the second time or the second video content of the time period starting at the second time) and rotate it.

第6圖描述了依據本發明另一實施例的第3圖所示控制方案的許多實施細節,其中,0度方向可作為複數個縱向的示例。除了使用0度方向替換90度方向以及可改變雲遊戲在縱向模式中運行,步驟S40-S42以及S44的操作幾乎與第4圖所示實施例的操作相同。由於在雲遊戲伺服器側準備的圖像訊框與在客戶側顯示的圖像訊框的各個座標平面的各個源點(簡化標為「O」)彼此相同,所以無需選裝在雲遊戲側準備的圖像訊框,並且因此使用步驟S43’替代步驟S43以對應這種情況。例如,步驟S24所示,雲遊戲伺服器10可依據步驟S43中的方向暗示,利用GPU 12生成例如視訊內容的未旋轉遊戲內容,用於視訊轉碼器15進行編碼(簡化標為「VENC」),並且可在步驟S44向遊戲客戶裝置發送上述至少一個視訊流(例如,在該實施例中承載不旋轉遊戲內容的視訊流),用於客戶側直接播放。為了簡化,不重複該實施例的相似描述細節。Fig. 6 describes many implementation details of the control scheme shown in Fig. 3 according to another embodiment of the present invention, in which the 0 degree direction can be taken as an example of a plurality of longitudinal directions. Except that the 0-degree direction is used instead of the 90-degree direction and the cloud game can be changed to run in the portrait mode, the operations of steps S40-S42 and S44 are almost the same as those of the embodiment shown in FIG. 4. Since the source points of the coordinate planes of the image frame prepared on the cloud game server side and the image frame displayed on the client side (simplified as "O") are the same as each other, there is no need to install it on the cloud game side. Prepare the image frame, and therefore use step S43' instead of step S43 to correspond to this situation. For example, as shown in step S24, the cloud game server 10 can use the GPU 12 to generate unrotated game content such as video content according to the direction hint in step S43, and use the video codec 15 for encoding (simply labeled "VENC" ), and the above at least one video stream (for example, a video stream carrying non-rotating game content in this embodiment) may be sent to the game client device in step S44 for direct playback on the client side. For simplicity, similar description details of this embodiment are not repeated.

第7圖描述了依據本發明另一實施例的第3圖所示控制方案的許多實施細節,其中,可將180度方向作為複數個縱向的另一示例。除了使用180度方向替換90度方向以及可改變雲遊戲在縱向模式中運行,步驟S40-S44的操作幾乎與第4圖所示實施例的操作相同。為了簡化,不重複本實施例的相似描述細節。Fig. 7 describes many implementation details of the control scheme shown in Fig. 3 according to another embodiment of the present invention, in which the 180-degree direction can be taken as another example of plural longitudinal directions. Except that the 180-degree direction is used instead of the 90-degree direction and the cloud game can be changed to run in the portrait mode, the operations of steps S40-S44 are almost the same as those of the embodiment shown in FIG. 4. For simplicity, similar description details of this embodiment are not repeated.

依據許多實施例,在第一時刻,步驟S10中提到的客戶裝置方向可代表客戶裝置的第一客戶裝置方向(例如,180度方向),因此回應於最新方向檢測結果(例如,最新方向索引),可執行步驟S14與S16的操作。在第二時刻,在步驟S10,主處理器110可利用方向相關感測器120檢測客戶裝置的第二客戶裝置方向(例如, 0度方向),其中,例如電子裝置100的客戶裝置可已經從第一客戶裝置方向旋轉為第二客戶裝置方向。接著,在步驟S12,主處理器110可利用網路介面電路140向雲遊戲伺服器10通知第二客戶裝置方向。因此,進入步驟S13、S24與S26的子流程。更特別地,主處理器110可利用雲遊戲伺服器10依據第二客戶裝置方向準備(例如,生成)雲遊戲的其他視訊內容(例如,對應第二時刻或從第二時刻開始的第二時間段的第二視訊內容,而不是對應第一時刻或第一時刻與第二時刻之間第一時間段的第一視訊內容),無需提前為客戶裝置(例如,電子裝置100)旋轉雲遊戲的其他視訊內容,用於透過視訊流輸出至客戶裝置。此外,主處理器110可利用網路介面電路140透過視訊流接收其他視訊內容,並且將該其他視訊內容緩存在視訊緩衝器132中,用於輸出至顯示面板150並且在顯示面板150中進行顯示。以第6圖與第7圖所示實施例作為示例,這些實施例的第一客戶裝置方向與第二客戶裝置方向可屬於客戶裝置的複數個縱向方向,並且可分別在不同時刻(例如,第一時刻與第二時刻)檢測到。According to many embodiments, at the first moment, the direction of the client device mentioned in step S10 may represent the first client device direction of the client device (for example, a 180 degree direction), and therefore respond to the latest direction detection result (for example, the latest direction index) ), the operations of steps S14 and S16 can be performed. At the second moment, in step S10, the main processor 110 may use the direction-related sensor 120 to detect the second client device direction (for example, 0 degree direction) of the client device, wherein, for example, the client device of the electronic device 100 may have been The rotation of the first client device direction is the second client device direction. Then, in step S12, the main processor 110 may use the network interface circuit 140 to notify the cloud game server 10 of the direction of the second client device. Therefore, the sub-flow of steps S13, S24 and S26 is entered. More specifically, the main processor 110 can use the cloud game server 10 to prepare (for example, generate) other video content of the cloud game according to the direction of the second client device (for example, corresponding to the second time or the second time from the second time). Segment of the second video content, instead of the first video content corresponding to the first time or the first time period between the first time and the second time), there is no need to rotate the cloud game for the client device (for example, the electronic device 100) in advance Other video content is used to output to client devices through video streams. In addition, the main processor 110 can use the network interface circuit 140 to receive other video content through the video stream, and buffer the other video content in the video buffer 132 for output to the display panel 150 and display on the display panel 150 . Taking the embodiments shown in FIGS. 6 and 7 as examples, the first client device orientation and the second client device orientation of these embodiments may belong to a plurality of longitudinal directions of the client device, and may be at different times (for example, the first One moment and second moment) are detected.

第8圖是依據本發明另一實施例的電子裝置示意圖。與第1圖所示結構相比,將內部記憶體118插入顯示介面電路114與匯流排界面電路116之間,從而替換上述訊框緩衝器臨時存儲待輸出至顯示面板150的圖像資料。回應於結構改變,相應改變許多標號。例如,可分別使用主處理器210、處理電路205以及電子裝置200代替上述主處理器110、處理電路105以及電子裝置100。為了簡化,不重複本實施例的相似描述細節。FIG. 8 is a schematic diagram of an electronic device according to another embodiment of the invention. Compared with the structure shown in FIG. 1, the internal memory 118 is inserted between the display interface circuit 114 and the bus interface circuit 116 to replace the aforementioned frame buffer to temporarily store image data to be output to the display panel 150. In response to structural changes, many labels were changed accordingly. For example, the main processor 210, the processing circuit 205, and the electronic device 200 may be used to replace the above-mentioned main processor 110, the processing circuit 105, and the electronic device 100, respectively. For simplicity, similar description details of this embodiment are not repeated.

雖然已經透過示例並且按照優選實施方式描述了本發明,但是要理解的是,本發明不限於此。熟悉該技術的人仍然能夠在不脫離本發明的範圍與精神的情況下進行各種變更與修改。因此,本發明的範圍應當由所附的申請專利範圍及其等同物限定與保護。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。Although the present invention has been described through examples and according to preferred embodiments, it is to be understood that the present invention is not limited thereto. Those familiar with the technology can still make various changes and modifications without departing from the scope and spirit of the present invention. Therefore, the scope of the present invention should be limited and protected by the scope of the attached patent application and its equivalents. The foregoing descriptions are only preferred embodiments of the present invention, and all equivalent changes and modifications made in accordance with the scope of the patent application of the present invention shall fall within the scope of the present invention.

100,200:電子裝置 105,205:處理電路 105B:匯流排 110,210:主處理器 112:核心電路 112P:程式碼 114:顯示介面電路 116:匯流排界面電路 120:方向相關感測器 130:DRAM 132:視訊緩衝器 140:網路介面電路 150:顯示面板 152:顯示介面電路 154:顯示控制器 156:LCD模組 10:雲遊戲伺服器 11:處理器 12:GPU 13:DRAM 14:網路介面電路 15:視訊轉碼器 10B:匯流排 11P:程式碼 118:內部記憶體 S31,S32,S33,S40,S41,S42,S43,S44,S43’,S10,S12,S13,S14,S16,S24,S26:步驟100,200: electronic device 105,205: processing circuit 105B: Bus 110, 210: main processor 112: core circuit 112P: Code 114: display interface circuit 116: bus interface circuit 120: Orientation related sensor 130: DRAM 132: Video buffer 140: network interface circuit 150: display panel 152: display interface circuit 154: display controller 156: LCD module 10: Cloud game server 11: processor 12: GPU 13: DRAM 14: Network interface circuit 15: Video codec 10B: Bus 11P: Code 118: Internal memory S31, S32, S33, S40, S41, S42, S43, S44, S43’, S10, S12, S13, S14, S16, S24, S26: steps

附圖說明透過示例而非限制的方式描述本發明,其中,相同的附圖標記標識相似元件。應當注意的是,本發明中對一個實施例的不同參考並不一定是相同實施例,並且這種參考意味著至少一個。此外,當結合實施例描述特定特徵、結構或特性時,無論是否明確描述,主張本領域技術人員獲知結合其他實施例的該特徵、結構或特性。 第1圖是依據本發明第一實施例的電子裝置示意圖,其中,為了更好理解也描述了雲遊戲伺服器。 第2圖是依據本發明實施例的借助雲遊戲伺服器側圖像方向控制來執行客戶側延遲優化的方法流程圖。 第3圖描述了依據本發明實施例的第2圖所示方法的控制方案。 第4圖描述了依據本發明實施例的第3圖所示控制方案的許多實施細節。 第5圖描述了依據本發明另一實施例的第3圖所示控制方案的幾個實施細節。 第6圖描述了依據本發明另一實施例的第3圖所示控制方案的許多實施細節。 第7圖描述了依據本發明另一實施例的第3圖所示控制方案的許多實施細節。 第8圖是依據本發明另一實施例的電子裝置示意圖。BRIEF DESCRIPTION OF THE DRAWINGS The present invention is described by way of example rather than limitation, wherein the same reference numerals identify similar elements. It should be noted that different references to one embodiment in the present invention are not necessarily the same embodiment, and such references mean at least one. In addition, when describing a particular feature, structure, or characteristic in combination with an embodiment, whether or not it is explicitly described, it is recommended that those skilled in the art know the feature, structure, or characteristic in combination with other embodiments. Figure 1 is a schematic diagram of an electronic device according to a first embodiment of the present invention, in which a cloud game server is also described for better understanding. Figure 2 is a flowchart of a method for performing client-side delay optimization by means of cloud game server-side image direction control according to an embodiment of the present invention. Figure 3 illustrates the control scheme of the method shown in Figure 2 according to an embodiment of the present invention. Figure 4 describes many implementation details of the control scheme shown in Figure 3 according to an embodiment of the present invention. Figure 5 describes several implementation details of the control scheme shown in Figure 3 according to another embodiment of the present invention. Figure 6 illustrates many implementation details of the control scheme shown in Figure 3 according to another embodiment of the present invention. Figure 7 depicts many implementation details of the control scheme shown in Figure 3 according to another embodiment of the present invention. FIG. 8 is a schematic diagram of an electronic device according to another embodiment of the invention.

S10,S12,S13,S14,S16,S24,S26:步驟 S10, S12, S13, S14, S16, S24, S26: steps

Claims (10)

一種客戶側延遲改善方法,借助雲遊戲伺服器側圖像方向控制,該方法包含: 利用客戶裝置的至少一個方向相關感測器,檢測該客戶裝置的客戶裝置方向; 利用該客戶裝置中的網路介面電路,向雲遊戲伺服器通知該客戶裝置方向; 利用該雲遊戲伺服器依據該客戶裝置方向,提前為該客戶裝置生成雲遊戲的預旋轉視訊內容,用於透過視訊流輸出給該客戶裝置,其中,該預旋轉視訊內容對應該客戶裝置方向;以及 利用該網路介面電路透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在視訊暫存器中,用於輸出至顯示面板並且在該顯示面板上顯示。A client-side delay improvement method, with the help of cloud game server-side image direction control, the method includes: Using at least one direction-related sensor of the client device to detect the direction of the client device of the client device; Use the network interface circuit in the client device to notify the cloud game server of the direction of the client device; Using the cloud game server to generate pre-rotation video content of the cloud game for the client device in advance according to the direction of the client device for output to the client device through a video stream, wherein the pre-rotation video content corresponds to the direction of the client device; as well as The network interface circuit is used to receive the pre-rotated video content through the video stream, and the pre-rotated video content is cached in a video register for output to and display on the display panel. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該利用該客戶裝置的該至少一個方向相關感測器,檢測該客戶裝置的該客戶裝置方向的步驟進一步包含: 從該至少一個方向相關感測器獲取感應資訊,其中,該感應資訊包含運動感應資訊、定位感應資訊、位置感應資訊與環境感應資訊中的一個或組合;以及 至少依據該感應資訊,執行計算,以確定該客戶裝置方向。According to the client-side delay improvement method described in claim 1, wherein the step of using the at least one direction-related sensor of the client device to detect the direction of the client device of the client device further includes: Obtain sensing information from the at least one direction-related sensor, where the sensing information includes one or a combination of motion sensing information, location sensing information, position sensing information, and environment sensing information; and At least according to the sensing information, a calculation is performed to determine the direction of the client device. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該利用該客戶裝置中的該網路介面電路,向該雲遊戲伺服器通知該客戶裝置方向的步驟進一步包含: 利用該網路介面電路向該雲遊戲伺服器發送方向索引,以向該雲遊戲伺服器通知該客戶裝置方向,其中,該方向索引指示該客戶裝置方向。According to the client-side delay improvement method described in claim 1, wherein the step of using the network interface circuit in the client device to notify the cloud game server of the direction of the client device further includes: The network interface circuit is used to send a direction index to the cloud game server to notify the cloud game server of the direction of the client device, wherein the direction index indicates the direction of the client device. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,在該視訊流期間,該雲遊戲伺服器編碼該預旋轉視訊內容,以生成該預旋轉視訊內容的已編碼結果,並且該客戶裝置解碼該已編碼結果,以獲取該預旋轉視訊內容。According to the client-side delay improvement method described in claim 1, wherein, during the video stream, the cloud game server encodes the pre-rotated video content to generate an encoded result of the pre-rotated video content, and the The client device decodes the encoded result to obtain the pre-rotated video content. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該利用該雲遊戲伺服器依據該客戶裝置方向,提前為該客戶裝置生成該雲遊戲的該預旋轉視訊內容的步驟進一步包含: 利用該雲遊戲伺服器依據該客戶裝置方向提前為該客戶裝置旋轉該雲遊戲的視訊內容,從而生成該預旋轉視訊內容,以透過該視訊流輸出給該客戶裝置;或者利用該雲遊戲伺服器直接生成對應該客戶裝置方向的該預旋轉視訊內容,以透過該視訊流輸出給該客戶裝置。According to the client-side delay improvement method described in claim 1, wherein the step of using the cloud game server to generate the pre-rotated video content of the cloud game for the client device in advance according to the direction of the client device further includes : Use the cloud game server to rotate the video content of the cloud game for the client device in advance according to the direction of the client device, thereby generating the pre-rotated video content to output to the client device through the video stream; or use the cloud game server The pre-rotation video content corresponding to the direction of the client device is directly generated to output to the client device through the video stream. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該利用該網路介面電路透過該視訊流接收該預旋轉視訊內容並且將該預旋轉視訊內容緩存在該視訊暫存器中的步驟進一步包含: 利用該網路介面電路透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在該視訊暫存器中且不旋轉該視訊暫存器中緩存的該預旋轉視訊內容,用於輸出至該顯示面板並且在該顯示面板上顯示。The client-side delay improvement method described in claim 1, wherein the network interface circuit is used to receive the pre-rotated video content through the video stream and cache the pre-rotated video content in the video register The steps further include: Use the network interface circuit to receive the pre-rotated video content through the video stream, and cache the pre-rotated video content in the video register without rotating the pre-rotated video content cached in the video register. It is output to the display panel and displayed on the display panel. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該客戶裝置方向代表該客戶裝置的第一客戶裝置方向,並且該方法進一步包含: 利用該客戶裝置的該至少一個方向相關感測器,檢測該客戶裝置的第二客戶裝置方向,其中,該客戶裝置已經從該第一客戶裝置方向旋轉為該第二客戶裝置方向; 利用該客戶裝置中的該網路介面電路,向該雲遊戲伺服器通知該第二客戶裝置方向; 利用該雲遊戲伺服器依據該第二客戶裝置方向,提前為該客戶裝置生成該雲遊戲的其他預旋轉視訊內容,用於透過該視訊流輸出給該客戶裝置,其中,該其他預旋轉視訊內容對應該第二客戶裝置方向;以及 利用該網路介面電路透過該視訊流接收該其他預旋轉視訊內容,並且將該其他預旋轉視訊內容緩存在該視訊暫存器中,用於輸出至該顯示面板並且在該顯示面板上顯示。According to the client-side delay improvement method described in claim 1, wherein the client device direction represents the first client device direction of the client device, and the method further includes: Using the at least one direction-related sensor of the client device to detect the second client device direction of the client device, wherein the client device has rotated from the first client device direction to the second client device direction; Using the network interface circuit in the client device to notify the cloud game server of the direction of the second client device; The cloud game server is used to generate other pre-rotated video content of the cloud game for the client device in advance according to the direction of the second client device for outputting to the client device through the video stream, wherein the other pre-rotated video content Correspond to the direction of the second client device; and The network interface circuit is used to receive the other pre-rotated video content through the video stream, and the other pre-rotated video content is cached in the video register for output to and display on the display panel. 如申請專利範圍第1項所述之客戶側延遲改善方法,其中,該客戶裝置方向代表該客戶裝置的第一客戶裝置方向,並且該方法進一步包含: 利用該客戶裝置的該至少一個方向相關感測器,檢測該客戶裝置的第二客戶裝置方向,其中,該客戶裝置已經從該第一客戶裝置方向旋轉為該第二客戶裝置方向; 利用該客戶裝置中的該網路介面電路,向該雲遊戲伺服器通知該第二客戶裝置方向; 利用該雲遊戲伺服器依據該第二客戶裝置方向,準備該雲遊戲的其他視訊內容,並且不為該客戶裝置提前旋轉該雲遊戲的其他視訊內容,用於透過該視訊流輸出給該客戶裝置;以及 利用該網路介面電路透過該視訊流接收該其他視訊內容,並且將該其他視訊內容緩存在該視訊暫存器中,用於輸出至該顯示面板並且在該顯示面板上顯示。According to the client-side delay improvement method described in claim 1, wherein the client device direction represents the first client device direction of the client device, and the method further includes: Using the at least one direction-related sensor of the client device to detect the second client device direction of the client device, wherein the client device has rotated from the first client device direction to the second client device direction; Using the network interface circuit in the client device to notify the cloud game server of the direction of the second client device; Use the cloud game server to prepare other video content of the cloud game according to the direction of the second client device, and do not rotate the other video content of the cloud game for the client device in advance, for outputting to the client device through the video stream ;as well as The network interface circuit is used to receive the other video content through the video stream, and the other video content is cached in the video register for output to and display on the display panel. 一種主處理器,位於電子裝置中並且借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善,該主處理器包含: 核心電路,用於控制該主處理器,控制該電子裝置的操作,其中,將該電子裝置作為客戶裝置,並且在該核心電路的控制下,該主處理器執行該客戶裝置的交互控制,以借助雲遊戲伺服器側圖像方向控制執行客戶側延遲改善; 顯示介面電路,耦接該核心電路,用於將顯示面板耦接至該主處理器;以及 匯流排界面電路,耦接該核心電路,用於透過匯流排將至少一個元件耦接至該主處理器,其中,該至少一個元件包含該客戶裝置中至少一個方向相關感測器; 其中: 該主處理器利用該至少一個方向相關感測器,檢測該客戶裝置的客戶裝置方向; 該主處理器利用該客戶裝置中的網路介面電路,向雲遊戲伺服器通知該客戶裝置方向; 該主處理器利用該雲遊戲伺服器依據該客戶裝置方向,提前為該客戶裝置生成雲遊戲的預旋轉視訊內容,用於透過視訊流輸出給該客戶裝置,其中,該預旋轉視訊內容對應該客戶裝置方向;以及 該主處理器利用該網路介面電路透過該視訊流接收該預旋轉視訊內容,並且將該預旋轉視訊內容緩存在視訊暫存器中,用於輸出至該顯示面板並且在該顯示面板上顯示。A main processor is located in an electronic device and performs client-side delay improvement with the help of cloud game server-side image direction control. The main processor includes: The core circuit is used to control the main processor and control the operation of the electronic device, wherein the electronic device is used as a client device, and under the control of the core circuit, the main processor performs interactive control of the client device to Use cloud game server-side image direction control to implement client-side delay improvement; A display interface circuit, coupled to the core circuit, for coupling the display panel to the main processor; and A bus interface circuit, coupled to the core circuit, for coupling at least one element to the host processor through the bus, wherein the at least one element includes at least one direction-related sensor in the client device; among them: The main processor uses the at least one direction-related sensor to detect the direction of the client device of the client device; The main processor uses the network interface circuit in the client device to notify the cloud game server of the direction of the client device; The main processor uses the cloud game server to generate pre-rotation video content of the cloud game for the client device in advance according to the direction of the client device for output to the client device through a video stream, wherein the pre-rotation video content corresponds to Client device orientation; and The main processor uses the network interface circuit to receive the pre-rotated video content through the video stream, and caches the pre-rotated video content in a video register for output to and display on the display panel . 一種處理電路,用於客戶側延遲改善,包含申請專利範圍9的該主處理器,該處理電路進一步包含: 該至少一個方向相關感測器;以及 該網路介面電路。A processing circuit for improving client-side delay, including the main processor in the scope of patent application 9, and further including: The at least one direction-related sensor; and The network interface circuit.
TW109117630A 2019-05-30 2020-05-27 A method for performing client side latency enhancement, a host processor and a processing circuit thereof TWI755742B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962854379P 2019-05-30 2019-05-30
US62/854,379 2019-05-30
US16/882,764 US20200376375A1 (en) 2019-05-30 2020-05-26 Method and apparatus for performing client side latency enhancement with aid of cloud game server side image orientation control
US16/882,764 2020-05-26

Publications (2)

Publication Number Publication Date
TW202046741A true TW202046741A (en) 2020-12-16
TWI755742B TWI755742B (en) 2022-02-21

Family

ID=73507194

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109117630A TWI755742B (en) 2019-05-30 2020-05-27 A method for performing client side latency enhancement, a host processor and a processing circuit thereof

Country Status (2)

Country Link
CN (1) CN112007357A (en)
TW (1) TWI755742B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112843676B (en) * 2021-01-12 2023-04-18 腾讯科技(深圳)有限公司 Data processing method, device, terminal, server and storage medium

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8793393B2 (en) * 2011-11-23 2014-07-29 Bluespace Corporation Video processing device, video server, client device, and video client-server system with low latency thereof
US9357272B2 (en) * 2012-08-03 2016-05-31 Intel Corporation Device orientation capability exchange signaling and server adaptation of multimedia content in response to device orientation
CN103023872B (en) * 2012-11-16 2016-01-06 杭州顺网科技股份有限公司 A kind of cloud game service platform
US10242462B2 (en) * 2013-04-02 2019-03-26 Nvidia Corporation Rate control bit allocation for video streaming based on an attention area of a gamer
US20160365114A1 (en) * 2015-06-11 2016-12-15 Yaron Galant Video editing system and method using machine learning
US10238965B2 (en) * 2016-04-28 2019-03-26 Sony Interactive Entertainment America Llc Cloud gaming device handover
US20180014049A1 (en) * 2016-07-08 2018-01-11 Tastemade, Inc. Orientation Based, Aspect Ratio Switching Video Playback System
CN106390449A (en) * 2016-09-19 2017-02-15 南京工业大学 A cloud game framework based on the graphical virtualization technology
US10445925B2 (en) * 2016-09-30 2019-10-15 Sony Interactive Entertainment Inc. Using a portable device and a head-mounted display to view a shared virtual reality space

Also Published As

Publication number Publication date
TWI755742B (en) 2022-02-21
CN112007357A (en) 2020-12-01

Similar Documents

Publication Publication Date Title
US20200376375A1 (en) Method and apparatus for performing client side latency enhancement with aid of cloud game server side image orientation control
KR101713177B1 (en) System and method for virtual displays
JP5060489B2 (en) Multi-user terminal service promotion device
JP5129151B2 (en) Multi-user display proxy server
EP3046331B1 (en) Media control method and system based on cloud desktop
JP5451397B2 (en) An architecture for delivering video content in response to remote interaction
JP5636111B2 (en) Technology to send instructions to the target device
WO2021057448A1 (en) Information display method and apparatus
US20170109861A1 (en) Server-Based Fast Remote Display on Client Devices
KR20090106454A (en) Stateful browsing
JP2009245376A (en) Information processing apparatus
US20140108940A1 (en) Method and system of remote communication over a network
WO2021164004A1 (en) Reduced display processing unit transfer time to compensate for delayed graphics processing unit render time
US9521190B2 (en) Dynamic session transformation
WO2020042769A1 (en) Image information transmission method and apparatus, and storage medium and electronic device
US10089019B2 (en) Minimizing latency from peripheral devices to compute engines
CN109302563B (en) Anti-shake processing method and device, storage medium and mobile terminal
TWI755742B (en) A method for performing client side latency enhancement, a host processor and a processing circuit thereof
US8984540B2 (en) Multi-user computer system
US11140216B2 (en) Dynamically providing host input control for streaming applications
KR101749891B1 (en) METHOD OF CONTROLLING FRAME RATE BASED ON Resource Status AND APPARATUS FOR CLOUD STREAMING SERVICE
US8984167B1 (en) Real-time frame streaming from remote graphics processing unit
US20180061103A1 (en) Systems and Methods for Generating Display Views Tracking User Head Movement for Head-Mounted Display Devices
KR20150044697A (en) Method for rotating documet and an electronic device
US20210339139A1 (en) Rendering video game on display device using gpu in display device and video game data from second device