Coding method and device
By encoding XR data for different dimensions or QoS requirements, the problem of XR data transmission delay and real-time in wireless communication networks is solved, and the transmission efficiency and user experience are improved.
Patent Information
- Application Number
- CN202080104178.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-08
- Publication Date
- 2025-06-06
- Estimated Expiration
- 2040-09-08
AI Technical Summary
In wireless communication networks, the transmission of XR data is easily affected by wireless channel fading, resulting in transmission failure and retransmission, which increases delay, which cannot meet the real-time transmission requirements of XR data, resulting in poor user experience.
A coding method is provided, by obtaining XR data units of different dimensions or different QoS requirements, encoding them, improving encoding efficiency, and optimizing the utilization of limited air interface resources.
By encoding according to different dimensions of XR data or different QoS requirements, the transmission efficiency and success rate of XR data are improved, delay is reduced, and user experience of XR services is improved.
Smart Images

Figure CN116097645B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a coding method and device. Background Art
[0002] In wireless communication networks, extended reality (XR) technology has the advantages of multi-viewing angles and strong interactivity, which can provide users with a new visual experience and has great application value and commercial potential. XR includes virtual reality (VR), augmented reality (AR), and mixed reality (MR), which can be widely used in entertainment, games, medical treatment, advertising, industry, online education, tactile Internet, engineering and many other fields.
[0003] When XR data is transmitted in a wireless network, it will be affected by the fading of the wireless channel, resulting in transmission failure, so the XR data that failed to be transmitted needs to be retransmitted. However, retransmission will increase the transmission delay of XR data. Since the transmission of XR data in the network has real-time requirements, retransmission will cause the real-time transmission requirements of XR data to be unable to be guaranteed, causing users to experience discomfort such as freezes, screen distortion, dizziness, etc., reducing the user experience of XR services. Therefore, how to correctly complete the transmission of XR data in a low-latency manner, thereby improving the user experience of XR services, has become an urgent problem to be solved. Summary of the invention
[0004] The embodiments of the present application provide a coding method and device.
[0005] In a first aspect, an embodiment of the present application provides a coding method, which can be executed by a terminal or a network device, or by a component of the terminal or the network device (such as a processor, a chip, or a chip system, etc.), including: obtaining T1 first data units to be encoded and T2 second data units to be encoded, where T1 and T2 are integers greater than or equal to 1. According to at least one of the extended reality data types corresponding to the T1 first data units to be encoded or the extended reality data types corresponding to the T2 second data units to be encoded, the T1 first data units to be encoded and the T2 second data units to be encoded are encoded to obtain K coded data units, where K is an integer greater than or equal to T1+T2. The K coded data units are output.
[0006] Through the above method, in the process of encoding XR data, the encoding of XR data can be completed according to the different dimensions or different QoS requirements of the XR data, thereby improving the encoding efficiency of the XR data and thus improving the utilization efficiency of limited air interface resources.
[0007] The coding in this application is not limited to a specific coding type. For example, the coding type may be group coding, convolutional coding or random linear coding, and the coding type may also be network coding (such as group network coding, convolutional network coding or random linear network coding).
[0008] In combination with the first aspect, in certain embodiments of the first aspect, the type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data. Optionally, the extended reality basic layer data and the extended reality enhancement layer data may be extended reality data obtained by performing source encoding on the source data of XR, and the source encoding may be, for example, high efficiency video coding (HEVC) or scalable HEVC extension coding (SHVC). Through this implementation method, in the process of encoding the XR data, the encoding of the XR data can be completed according to the degree of QoS requirements of different XR data types, thereby improving the encoding efficiency of the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to ensure the QoS requirements of the XR data.
[0009] In combination with the first aspect, in certain embodiments of the first aspect, the type of extended reality data corresponding to the T1 first data units to be encoded includes data within the extended reality field of view (FOV), and the type of extended reality data corresponding to the T2 second data units to be encoded includes data outside the extended reality FOV. Optionally, the data within the extended reality FOV and the data outside the extended reality FOV can be extended reality data obtained by performing FOV source encoding on the source data of the XR. FOV source coding can divide the source data of the XR into a part within the viewing angle and a part outside the viewing angle. Generally, the viewing angle of the FOV is about 60-150 degrees, wherein the part within the viewing angle corresponds to the data within the extended reality FOV, and the part outside the viewing angle corresponds to the data outside the extended reality FOV. Through this implementation method, in the process of encoding the XR data, the encoding of the XR data can be completed according to the visual presentation requirements of the XR data, thereby improving the encoding efficiency for the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to enhance the user's visual experience of the XR service.
[0010] In combination with the first aspect, in certain embodiments of the first aspect, the type of extended reality data corresponding to the T1 first data units to be encoded includes video data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes data other than the video data type (for example, including audio data). Through this implementation, it is possible to complete the encoding of the XR data in accordance with the presentation requirements of the XR data for vision and other user perceptions (for example, hearing) during the encoding of the XR data, thereby improving the encoding efficiency of the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to enhance the user's comprehensive experience of the XR service.
[0011] In combination with the first aspect, in some implementations of the first aspect, encoding T1 first data units to be encoded and T2 second data units to be encoded according to at least one of the types of extended reality data corresponding to T1 first data units to be encoded or the types of extended reality data corresponding to T2 second data units to be encoded specifically includes:
[0012] According to at least one of the types of the extended reality data corresponding to the T1 first data units to be encoded or the types of the extended reality data corresponding to the T2 second data units to be encoded, a coding matrix H is obtained, and the T1 first data units to be encoded and the T2 second data units to be encoded are encoded according to the coding matrix H. Optionally, the coding matrix H includes a coding submatrix The encoding matrix It includes T1 first coding vectors and T2 second coding vectors, wherein the T1 first coding vectors correspond to the T1 first data units to be encoded, and the T2 second coding vectors correspond to the T2 second data units to be encoded.
[0013] In a possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in any one of the T1 first coding vectors is greater than the number of non-zero coefficients included in any one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0014] In another possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in one of the T1 first coding vectors is greater than the number of non-zero coefficients included in one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0015] Through the implementation of the first encoding vector and the second encoding vector described above, it is possible to provide the first data unit to be encoded with stronger encoding protection than the second data unit to be encoded according to the types of extended reality data respectively corresponding to the first data unit to be encoded and the second data unit to be encoded.
[0016] For example, when the type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data, since the extended reality basic layer data can provide users with a basic extended reality experience, providing stronger coding protection for the extended reality basic layer data first can ensure the basic experience of the user's extended reality experience. On this basis, providing coding protection for the extended reality enhancement layer data on a best effort basis can provide users with an enhanced extended reality experience.
[0017] For another example, when the type of extended reality data corresponding to T1 first data units to be encoded includes data within the extended reality FOV, and the type of extended reality data corresponding to T2 second data units to be encoded includes data outside the extended reality FOV, since the data within the extended reality FOV can present to the user extended reality visual content that the user is more concerned about than the data outside the extended reality FOV, providing stronger coding protection for the data within the extended reality FOV can prioritize the experience of the extended reality experience that the user is concerned about.
[0018] In a second aspect, an embodiment of the present application provides a device that can implement the method in the first aspect or any possible implementation of the first aspect. The device includes corresponding units or components for executing the above method. The units included in the device can be implemented by software and / or hardware. The device can be, for example, a terminal or a network device, or a chip, a chip system, or a processor that supports the terminal or network device to implement the above method.
[0019] In a third aspect, an embodiment of the present application provides a device, comprising: a processor, the processor being coupled to a memory, the memory being used to store programs or instructions, and when the programs or instructions are executed by the processor, the device implements the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0020] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed, enables a computer to execute the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0021] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes a computer program code. When the computer program code is run on a computer, the computer executes the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0022] In a sixth aspect, an embodiment of the present application provides a chip, comprising: a processor, the processor being coupled to a memory, the memory being used to store programs or instructions, and when the programs or instructions are executed by the processor, the chip implements the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0023] In a seventh aspect, an embodiment of the present application provides a communication system, comprising: the device of the second aspect above or the device of the third aspect above. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] Figure 1 A schematic diagram of a communication system used in the embodiments provided in this application;
[0025] Figure 2 A schematic diagram showing an example of an architecture of a communication system is shown;
[0026] Figure 3 A coding schematic diagram provided by the present application is shown;
[0027] Figure 4-Figure 7 Schematic diagrams of several scenarios to which the embodiments of the present application may be applied;
[0028] Figure 8 A schematic diagram of a flow chart of an encoding method provided in an embodiment of the present application is shown;
[0029] Fig. 9 A schematic diagram of the structure of a communication device provided in an embodiment of the present application;
[0030] Fig.10 A schematic diagram of the structure of a terminal provided in an embodiment of the present application;
[0031] Fig.11 A schematic diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0032] The method and device provided in the embodiments of the present application can be applied to a communication system. Figure 1 The communication system 100 includes one or more access network devices (the figure shows access network device 110 and access network device 120), and one or more terminals communicating with the one or more access network devices. Figure 1The terminals 114 and 118 shown in the figure communicate with the access network device 110, and the terminals 124 and 128 shown in the figure communicate with the access network device 120. It can be understood that the access network device and the terminal can also be referred to as communication devices.
[0033] The method and apparatus provided in the embodiments of the present application can be used in various communication systems, such as a fourth generation (4G) communication system, a 4.5G communication system, a 5G communication system, a system integrating multiple communication systems, or a communication system to be evolved in the future (such as a 5.5G communication system or a 6G communication system). For example, a long term evolution (LTE) system, a new radio (NR) system, a wireless fidelity (WiFi) system, and a communication system related to the third generation partnership project (3GPP), and other such communication systems.
[0034] Figure 2 A possible architecture example of a communication system is shown in FIG. Figure 2The network equipment in the radio access network (RAN) shown includes a base station (such as gNodeB or gNB) with a centralized unit (CU) and a distributed unit (DU) separated architecture. RAN can be connected to the core network (for example, it can be the core network of LTE, it can also be the core network of 5G, etc.). CU and DU can be understood as the division of the base station from the perspective of logical functions. CU and DU can be physically separated or deployed together. Multiple DUs can share one CU. A DU can also be connected to multiple CUs (not shown in the figure). CU and DU can be connected through an interface, such as an F1 interface. CU and DU can be divided according to the protocol layer of the wireless network. For example, the functions of the packet data convergence protocol (PDCP) layer and the radio resource control (RRC) layer are set in the CU, while the functions of the radio link control (RLC), media access control (MAC) layer, physical layer, etc. are set in the DU. It can be understood that the division of CU and DU processing functions according to this protocol layer is only an example, and can also be divided in other ways. For example, the CU or DU can be divided into functions with more protocol layers. For example, the CU or DU can also be divided into partial processing functions with protocol layers. In one design, some functions of the RLC layer and the functions of the protocol layers above the RLC layer are set in the CU, and the remaining functions of the RLC layer and the functions of the protocol layers below the RLC layer are set in the DU. In another design, the functions of the CU or DU can also be divided according to the service type or other system requirements. For example, by delay, the functions whose processing time needs to meet the delay requirements are set in the DU, and the functions that do not need to meet the delay requirements are set in the CU. Figure 2 The network architecture shown can be applied to a 5G communication system, which can also share one or more components or resources with an LTE system. In another design, a CU can also have one or more functions of a core network. One or more CUs can be centrally or separately set. For example, a CU can be set on the network side for centralized management. A DU can have multiple RF functions, or the RF function can be remotely set.
[0035] The function of CU can be implemented by one entity, or the control plane (CP) and the user plane (UP) can be further separated, that is, the control plane (CU-CP) and the user plane (CU-UP) of the CU can be implemented by different functional entities, and the CU-CP and CU-UP can be coupled with the DU to jointly complete the function of the base station.
[0036] It can be understood that the embodiments provided in the present application are also applicable to an architecture in which the CU and DU are not separated.
[0037] The access network device in this application can be any device with wireless transceiver function. Including but not limited to: evolved base station (NodeB or eNB or e-NodeB, evolutional Node B) in LTE, base station (gNodeB or gNB) or transceiver point (transmission receiving point / transmission reception point, TRP) in NR, base station of subsequent evolution of 3GPP, access node in WiFi system, wireless relay node, wireless backhaul node, core network equipment, etc. The base station can be: macro base station, micro base station, micro-micro base station, small station, relay station, or balloon station, etc. Multiple base stations can support the same technology network mentioned above, or they can support the different technologies mentioned above. The base station may include one or more co-station or non-co-station TRPs. The access network device can also be a server (such as a cloud server), a wireless controller, CU, and / or DU in a cloud radio access network (CRAN) scenario. The access network device can also be a server, a wearable device, a machine communication device, a vehicle-mounted device, or a smart screen, etc. The following is an example of an access network device as a base station. The multiple access network devices may be base stations of the same type or different types. The base station may communicate with the terminal device or communicate with the terminal device through a relay station. The terminal device may communicate with multiple base stations of different technologies. For example, the terminal device may communicate with a base station supporting an LTE network or a base station supporting a 5G network, and may also support dual connection with a base station of an LTE network and a base station of a 5G network.
[0038] The terminal in this application is a device with wireless transceiver function, which can be deployed on land, including indoors or outdoors, handheld, wearable or vehicle-mounted; it can also be deployed on the water surface (such as ships, etc.); it can also be deployed in the air (for example, on airplanes, balloons and satellites, etc.). The terminal can be a mobile phone, a tablet computer (Pad), a computer with wireless transceiver function, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a terminal in industrial control (industrial control), a vehicle-mounted terminal device, a terminal in self-driving, a terminal in assisted driving, a terminal in remote medical, a terminal in smart grid, a terminal in transportation safety, a terminal in smart city, a terminal in smart home, etc. The embodiments of this application do not limit the application scenarios. A terminal may also be sometimes referred to as terminal equipment, user equipment (UE), access terminal equipment, vehicle-mounted terminal, industrial control terminal, UE unit, UE station, mobile station, mobile station, remote station, remote terminal equipment, mobile equipment, UE terminal equipment, wireless communication equipment, machine terminal, UE agent or UE device, etc. A terminal may be fixed or mobile.
[0039] As an example but not limitation, in the present application, the terminal may be a wearable device. Wearable devices may also be referred to as wearable smart devices, which are a general term for wearable devices that are intelligently designed and developed using wearable technology for daily wear, such as glasses, gloves, watches, clothing, and shoes. A wearable device is a portable device that is worn directly on the body or integrated into the user's clothes or accessories. Wearable devices are not just hardware devices, but also achieve powerful functions through software support, data interaction, and cloud interaction. Broadly speaking, wearable smart devices include full-featured, large-sized, and independent of smartphones to achieve complete or partial functions, such as smart watches or smart glasses, as well as those that only focus on a certain type of application function and need to be used in conjunction with other devices such as smartphones, such as various types of smart bracelets and smart jewelry for vital sign monitoring.
[0040] In the present application, the terminal may be a terminal in the Internet of Things (IoT) system. IoT is an important part of the future development of information technology. Its main technical feature is to connect objects to the network through communication technology, thereby realizing human-machine interconnection and intelligent network of things-to-things interconnection. The terminal in the present application may be a terminal in machine type communication (MTC). The terminal of the present application may be a vehicle-mounted module, a vehicle-mounted module, a vehicle-mounted component, a vehicle-mounted chip or a vehicle-mounted unit built into a vehicle as one or more components or units. The vehicle may implement the method of the present application through the built-in vehicle-mounted module, vehicle-mounted module, vehicle-mounted component, vehicle-mounted chip or vehicle-mounted unit. Therefore, the embodiments of the present application may be applied to vehicle networking, such as vehicle to everything (V2X), long term evolution vehicle (LTE-V), vehicle to vehicle (V2V), etc.
[0041] The terminal in the present application may also be a VR terminal, an AR terminal, or an MR terminal. VR terminals, AR terminals, and MR terminals may all be referred to as XR terminals. XR terminals may be, for example, head-mounted devices (such as helmets or glasses), or all-in-one machines, or TVs, monitors, cars, vehicle-mounted devices, tablets, smart screens, holographic projectors, video players, remote-controlled robots, tactile Internet terminals, and the like. XR terminals can present XR data to users, and users can experience a variety of XR services by wearing or using XR terminals. XR terminals can access the network wirelessly or wired, for example, via WiFi or 5G systems.
[0042] In wireless communication networks, XR technology has the advantages of multi-viewing angles and strong interactivity, which can provide users with a brand-new experience and has great application value and commercial potential. XR includes technologies such as VR, AR and MR, which can be widely used in many fields such as entertainment, games, medical treatment, advertising, industry, online education, and engineering. VR technology mainly refers to the rendering of visual and audio scenes to simulate the sensory stimulation of the visual and audio in the real world to the user as much as possible. VR technology usually requires users to wear XR terminals (such as head-mounted devices) to simulate vision and / or hearing to users. VR technology can also track the user's movements to update the simulated visual and / or auditory content in a timely manner. AR technology mainly refers to providing additional visual and / or auditory information or artificially generated content in the real environment perceived by the user, in which the user's acquisition of the real environment can be direct (for example, without sensing, processing and rendering) or indirect (for example, through sensors and other means), and further enhanced processing. MR technology inserts some virtual elements into the physical scene, with the aim of providing users with an immersive experience in which these elements are part of the real scene. Network devices can process and transmit data generated by XR services (which can be called XR data). For example, network devices in the cloud can render and encode XR source data (such as source encoding), and transmit XR data to XR terminals with the help of network devices in the core network and / or access network. XR terminals provide users with a variety of XR experiences (such as immersive experience, visual experience, interactive experience or device experience, etc.) by processing XR data. There are many different evaluation dimensions for XR experience, such as one or more of the following evaluation dimensions: picture clarity, picture smoothness, picture distortion, picture stereoscopic sense, picture black edges, picture drag, sound quality, sound effects, field of view, freeze, screen distortion, dizziness, audio and video synchronization, interactive freedom, interactive operation response speed, interactive operation accuracy, interactive content loading speed, terminal wearing comfort, terminal wearing fatigue, terminal endurance, terminal portability, or terminal visual impairment friendliness, etc.
[0043] When XR data is transmitted in a wireless network, it will be affected by the fading of the wireless channel, resulting in transmission failure, so the XR data that failed to be transmitted needs to be retransmitted. However, retransmission will increase the transmission delay of XR data. Since the transmission of XR data in the network has real-time requirements, retransmission will cause the real-time transmission requirements of XR data to be unable to be guaranteed, causing users to experience discomfort such as freezes, screen distortion, dizziness, etc., reducing the user experience of XR services. Therefore, how to correctly complete the transmission of XR data in a low-latency manner, thereby improving the user experience of XR services, has become an urgent problem to be solved.
[0044] In order to effectively reduce the frequent feedback overhead and performance loss during the communication process, network coding has become an important technical direction, that is, by encoding the data units to be transmitted and adding redundant information to combat problems such as packet loss or errors in wireless communications, so as to improve the reliability of data transmission.
[0045] Network coding includes many types, such as group network coding, convolutional network coding and random linear network coding (RLNC). These coding techniques obtain corresponding coded data units by performing coding operations on the coded data units. Figure 3 For example, by encoding N data units to be encoded, K encoded data units are obtained, and the encoding rate can be approximately represented by R = N / K. Since K is generally greater than or equal to N, R is generally greater than 0 and less than or equal to 1. The data unit in this application may also be referred to as a data packet, a data segment or a data block.
[0046] Taking RLNC as an example, combined with Figure 3 , the N data units to be encoded are represented as X 1 ,X 2 ,…,X N , the N data units to be encoded may be included in an original data block. In the present application, a data block may also be referred to as a data group, a data generation or a data batch. In the present application, an original data block may also be referred to as a data block to be encoded. When the N data units to be encoded are encoded using RLNC, the N data units to be encoded may be multiplied by K encoding vectors to obtain K encoded data units (respectively represented as Y 1 ,Y 2 ,…,Y K ). For example, the K encoding vectors can be represented as [g 1,1 ,g 1,2 ,…,g 1,N ],[g 2,1 ,g 2,2 ,…,g 2,N ],…,[g K,1 ,g K,2 ,…,g K,N ], where each code vector contains N code coefficients, and the nth code coefficient in the kth code vector is denoted as g k,n The coding coefficients in the coding vector can be randomly selected from a finite field or a Galois field (GF), where GF is a field containing a finite number of elements. GF(q) can be used to represent a GF containing q elements. 1 ,X2 ,…,X N Multiplying with K encoding vectors to obtain K encoding data units Y 1 ,Y 2 ,…,Y K Can meet:
[0047] Y 1 =g 1,1 *X 1 +g 1,2 *X 2 +…+g 1,N *X N
[0048] Y 2 =g 2,1 *X 1 +g 2,2 *X 2 +…+g 2,N *X N
[0049] …
[0050] Y K =g K,1 *X 1 +g K,2 *X 2 +…+g K,N *X N
[0051] The kth coded data unit Y k =g k,1 *X 1 +g k,2 *X 2 +…+g k,N *X N The header may carry a code vector indicating k,1 ,g k,2 ,…,g k,N ] so that the receiving end can decode the received data according to the coding vector. It can be understood that the above K coding vectors can be included in a coding matrix or coding sub-matrix, which satisfies:
[0052]
[0053] The above multiplication of N data units to be encoded by K encoding vectors to obtain K encoding data units can also be understood as multiplying N data units to be encoded by the encoding matrix (or encoding sub-matrix) to obtain K encoding data units. It can be understood that the encoding matrix can also be called a generator matrix, a convolution generator matrix or a coefficient matrix. The vectors in this application are written in the form of row vectors for convenience of expression, but they can also be expressed in the form of column vectors, which is not limited in this application.
[0054] Using network coding to encode XR data and then transmit it can improve the transmission success rate of XR data to a certain extent. XR data has the characteristics of multiple dimensions or multiple quality of service (QoS) requirements. For example, XR data can include video data, audio data and other data of multiple dimensions. For another example, XR data may include high QoS requirement data and low QoS requirement data. Although using network coding to encode XR data and then transmit it can improve the transmission success rate of XR data, since network coding does not take into account the different dimensions or different QoS requirements of XR data, it will lead to a decrease in coding efficiency, thereby limiting the efficient use of limited air interface resources.
[0055] The present application provides an encoding method for XR data, in which the encoding efficiency of XR data is improved by distinguishing XR data of different dimensions or different QoS requirements during encoding, thereby improving the utilization efficiency of limited air interface resources.
[0056] The embodiments provided in this application are applicable to a variety of different scenarios. Figure 4-Figure 7 Schematic diagrams of several scenarios to which the embodiments of the present application can be applied are shown.
[0057] Figure 4 A schematic diagram of a scenario to which an embodiment of the present application is applicable is shown. Figure 4A system 400 is shown, including a server 410, a core network and an access network 420 (which may be referred to as a transmission network 420, such as an LTE, 5G or 6G network), and an XR terminal 430. The server 410 may be used to encode, decode and render XR source data, the transmission network 420 may be used to transmit XR data, and the XR terminal 430 may provide users with a variety of XR experiences by processing XR data. It is understood that other devices may be included between the transmission network 420 and the XR terminal 430, such as other terminals (such as mobile phones, laptops, or vehicle-mounted terminals, etc.) and / or network devices (such as relay devices, integrated access backhaul (IAB) devices, WiFi routers, or WiFi access points, etc.), and the XR terminal 430 obtains XR data from the transmission network 420 with the help of other terminals and / or network devices.
[0058] Figure 5 Another schematic diagram of a scenario to which an embodiment of the present application is applicable is shown. Figure 5 A system 500 is illustrated, including an XR terminal 520 and other terminals 510. Other terminals 510 are terminals other than the XR terminal 520. Other terminals 510 can be an XR terminal or an ordinary terminal (also referred to as a non-XR terminal). Other terminals 510 can transmit XR data to the XR terminal 520. For example, other terminals 510 can project XR data to the XR terminal 520. For another example, other terminals 510 and XR terminals 520 are vehicle-mounted terminals, and XR data can be exchanged between vehicle-mounted terminals. It can be understood that other terminals 510 can also be connected to a transmission network (such as an LTE, 5G or 6G network) to obtain XR data from the transmission network, or send data to the transmission network.
[0059] Figure 6 Another schematic diagram of a scenario to which an embodiment of the present application is applicable is shown. Figure 6A system 600 is illustrated, including an XR terminal 630, a WiFi router or a WiFi access point 620 (which may be referred to as a WiFi device 620), and other terminals 610. Other terminals 610 are terminals other than the XR terminal 630. Other terminals 610 may be an XR terminal or an ordinary terminal (also referred to as a non-XR terminal). Other terminals 610 may transmit XR data to the XR terminal 630 with the aid of the WiFi device 620. For example, other terminals 610 are mobile devices, the WiFi device 620 is a WiFi router, a WiFi access point or a set-top box, and the XR terminal 620 is a TV device, a smart screen device or an electronic tablet device. The mobile device may project XR data to a TV device, a smart screen device or an electronic tablet device through a WiFi router, a WiFi access point or a set-top box to present it to the user.
[0060] Figure 7 Another schematic diagram of a scenario to which an embodiment of the present application is applicable is shown. Figure 7 A system 700 is shown, including a server 710, a fixed network 720, a WiFi router or a WiFi access point 730 (which may be referred to as a WiFi device 730), and an XR terminal 740. The server 710 may be used to encode, decode and render XR source data, and transmit XR data to the XR terminal 740 with the help of the fixed network 720 and the WiFi device 730. For example, the fixed network 720 is an operator network, the WiFi device 730 is a WiFi router, a WiFi access point or a set-top box, and the server 710 transmits or projects XR data to the XR terminal 740 with the help of the operator network 720 and the WiFi device 730.
[0061] Understandably, Figure 4-Figure 7 Only several scenarios to which the embodiments of the present application can be applied are provided, and no limitation is imposed on the applicable scenarios of the embodiments of the present application.
[0062] The technical solution of the present application is described in detail below with specific embodiments in conjunction with the accompanying drawings. The following embodiments and implementation methods may be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. It should be understood that the functions explained in the present application can be implemented by independent hardware circuits, software running in conjunction with a processor / microprocessor or a general-purpose computer, using a dedicated integrated circuit, and / or using one or more digital signal processors. When the present application is described as a method, it can also be implemented in a computer processor and a memory coupled to the processor.
[0063] In order to facilitate the understanding of the embodiments of the present application, some concepts or terms involved in the present application are briefly described first.
[0064] 1. Galois field (GF). GF is a field containing a finite number of elements. GF(q) can be used to represent a GF containing q elements, where q is a positive integer. For example, GF(2) contains two elements, 0 and 1 (it can also be understood that the elements in GF(2) can be represented in binary), GF(4) contains four elements, 0, 1, 2, and 3, and GF(q) contains q elements, 0, 1, ..., q-1.
[0065] 2. Operations in GF. In this application, if the elements included in the coding matrix, coding vector or coding kernel are elements in GF, the operations involved in the coding can be understood as operations in GF.
[0066] ●Multiplication in GF. The elements in GF can be generated by the primitive polynomial P(x) on GF. The polynomial multiplication on GF can be performed by mapping the elements in GF to polynomials, mapping the multiplication operation on the GF field to polynomial multiplication, and then taking the modulus of the primitive polynomial P(x). For example, when q=4, the primitive polynomial of GF(4) is P(x)=x 2 +x+1, 2-bit data (such as '10', the corresponding polynomial form is x), multiplied by 2-bit data (such as '11', the corresponding polynomial form is x+1) on GF(4), satisfies (x*(x+1))mod P(x)=(x 2 +x)mod(x 2 +x+1)=1 (mod means modulus), and the corresponding binary representation is "01". For another example, when q=4, 4-bit data (such as '1011') is multiplied with 2-bit data (such as '11', the corresponding polynomial form is x+1) on GF(4). The first two bits '10' (the corresponding polynomial form is x) and the last two bits '11' (the corresponding polynomial form is x+1) of the 4-bit data '1011' can be multiplied with the 2-bit data '11' (the corresponding polynomial form is x+1) on GF(4), and then the results obtained are concatenated to obtain the result of multiplying '1011' and '11' on GF(4), that is:
[0067] ■(x*(x+1))mod P(x)=(x 2 +x)mod(x 2 +x+1)=1, the corresponding binary representation is '01';
[0068] ■((x+1)*(x+1))mod P(x)=(x 2 +2x+1)mod(x 2 +x+1)=x, the corresponding binary representation is '10';
[0069] ■ The binary representation of the result of concatenating '01' and '10' to get '1011' and multiplying it by '11' over GF(4) is '0110'.
[0070] ●Addition in GF. Polynomial addition in GF can be done by mapping the elements in GF to polynomial form, and mapping the addition operation in GF field to polynomial addition (such as XOR of coefficients of similar terms). For example, 2-bit data (such as '10', the corresponding polynomial form is x), and 2-bit data (such as '11', the corresponding polynomial form is x+1) are XORed and added in GF, satisfying ( represents exclusive-or addition), and the corresponding binary representation is "01".
[0071] Figure 8 The flowchart of a coding method 800 provided in an embodiment of the present application. The execution subject of the method may be a terminal, or a chip, a chip system, or a processor that supports the terminal to implement the method. The execution subject of the method may also be a network device, or a chip, a chip system, or a processor that supports the network device to implement the method. Figure 8 As shown, the method 800 of this embodiment may include part 810 , part 820 , and part 830 .
[0072] Part 810: Obtain T1 first data units to be encoded and T2 second data units to be encoded, where T1 and T2 are integers greater than or equal to 1.
[0073] Part 820: According to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded, encode the T1 first data units to be encoded and the T2 second data units to be encoded to obtain K encoded data units, where K is an integer greater than or equal to T1+T2.
[0074] Part 830: Output K coded data units. When the execution subject of method 800 is a terminal, outputting coded data units can be understood as the terminal sending coded data units to a network device or other terminals. When the execution subject of method 800 is a network device, outputting coded data units can be understood as the network device sending coded data units to a terminal or other network device. Sending coded data units can also be understood as sending processed coded data units, and the processing includes, for example, one or more of modulation, layer mapping, antenna port mapping, precoding or resource mapping. When the execution subject of method 800 is a chip, chip system, or processor in a terminal or in a network device, outputting coded data units can be understood as outputting coded data units in the terminal or in the network device through a communication interface to a module that subsequently processes the coded data unit. It can be understood that the output in this application can refer to the sending of signals or data on an air interface, or it can refer to the output of signals or data to other modules in the device through a communication interface in the device.
[0075] Through the above method, in the process of encoding XR data, the encoding of XR data can be completed according to the different dimensions or different QoS requirements of the XR data, thereby improving the encoding efficiency of the XR data and thus improving the utilization efficiency of limited air interface resources.
[0076] The coding in this application is not limited to a specific coding type. For example, the coding type may be group coding, convolutional coding or random linear coding, and the coding type may also be network coding (such as group network coding, convolutional network coding or random linear network coding).
[0077] In the present application, there are many different implementations for encoding the data unit to be encoded. For example, a coding matrix can be used to encode the data unit to be encoded, or a coding core can be used to encode the data unit to be encoded. The coding core can be understood as a coding vector, and the coding core can also be called a convolution kernel, a coding kernel vector, a coefficient vector or a coefficient vector, etc. Optionally, the coding core is included in the coding matrix, for example, the coding core can include all non-zero elements in a row or a column of the coding matrix.
[0078] In the present application, the types of augmented reality data corresponding to the T1 first data units to be encoded and the types of augmented reality data corresponding to the T2 second data units to be encoded may be classified in a variety of different ways.
[0079] In a possible implementation of the extended reality data type, the extended reality data type corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the extended reality data type corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data. Optionally, the extended reality basic layer data and the extended reality enhancement layer data may be extended reality data obtained by performing source encoding on the source data of XR, and the source coding may be, for example, high efficiency video coding (HEVC) or scalable HEVC extension coding (SHVC). Through this implementation method, it is possible to complete the encoding of the XR data in the process of encoding the XR data according to the degree of QoS requirements of different XR data types, thereby improving the encoding efficiency of the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to ensure the QoS requirements of the XR data.
[0080] In another possible implementation of the extended reality data type, the extended reality data type corresponding to the T1 first data units to be encoded includes data within the extended reality field of view (FOV), and the extended reality data type corresponding to the T2 second data units to be encoded includes data outside the extended reality FOV. Optionally, the data within the extended reality FOV and the data outside the extended reality FOV can be extended reality data obtained by performing FOV source encoding on the source data of the XR. FOV source coding can divide the source data of the XR into an inner part and an outer part of the viewing angle. Generally, the viewing angle of the FOV is about 60-150 degrees, wherein the inner part of the viewing angle corresponds to the above-mentioned data within the extended reality FOV, and the outer part of the viewing angle corresponds to the above-mentioned data outside the extended reality FOV. Through this implementation method, it is possible to complete the encoding of the XR data according to the visual presentation requirements of the XR data during the encoding process of the XR data, thereby improving the encoding efficiency for the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to enhance the user's visual experience of the XR service.
[0081] In another possible implementation of the extended reality data type, the extended reality data type corresponding to the T1 first data units to be encoded includes video data, and the extended reality data type corresponding to the T2 second data units to be encoded includes data other than the video data type (for example, including audio data). Through this implementation, in the process of encoding XR data, the encoding of XR data can be completed according to the presentation requirements of XR data for vision and other user perceptions (for example, hearing), thereby improving the encoding efficiency of XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to enhance the user's comprehensive experience of XR services.
[0082] It can be understood that the present application only uses two types of extended reality data as an illustration to describe the implementation scheme. The present application does not limit the number of extended reality data types. For example, the number of extended reality data types may be three or more. Correspondingly, the above-mentioned T1 first data units to be encoded and T2 second data units to be encoded are also only used as an illustration to describe the implementation scheme of two data units to be encoded. The present application also does not limit the number of types of data units to be encoded. For example, method 800 may also include T3 third data units to be encoded corresponding to another type of extended reality data, where T3 is an integer greater than or equal to 1.
[0083] In part 820, encoding T1 first data units to be encoded and T2 second data units to be encoded according to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded can be implemented in a variety of different ways.
[0084] In a possible implementation of part 820, a coding matrix H is obtained based on at least one of the types of extended reality data corresponding to the above-mentioned T1 first data units to be encoded or the types of extended reality data corresponding to the above-mentioned T2 second data units to be encoded, and the above-mentioned T1 first data units to be encoded and the above-mentioned T2 second data units to be encoded are encoded according to the coding matrix H.
[0085] Optionally, the encoding matrix H includes encoding sub-matrices The encoding matrix It includes T1 first coding vectors and T2 second coding vectors, wherein the T1 first coding vectors correspond to the T1 first data units to be encoded, and the T2 second coding vectors correspond to the T2 second data units to be encoded.
[0086] In an implementation manner of obtaining K coded data units, according to the coding matrix H, T1 first to-be-coded data units O 1 ,O 2 ,…,O T1 and T2 second data units to be encoded Q 1 ,Q 2 ,…,Q T2 Encode and obtain K coded data units A 1 ,A 2 ,…,A K , K is greater than or equal to T1+T2, and K coded data units satisfy:
[0087] [A 1 ,A 2,…,A K ]=[O 1 ,Q 1 ,O 2 ,Q 2 ,…,O T1 Q T2 ]×H
[0088] The dimension of the encoding matrix H is (T1+T2)*K, that is, the encoding matrix H contains T1+T2 rows and K columns. H contains elements in GF(q), q is an integer greater than 0, and H contains at least one submatrix This submatrix Contains T1+T2 rows. Submatrix The T1 row vectors in correspond to the T1 first encoding vectors mentioned above, and the submatrix The other T2 row vectors in correspond to the T2 second encoding vectors mentioned above. There are non-zero elements in GF(q) on the diagonal lines in . Optionally, the number of the diagonal lines is M, where M is an integer greater than 0 and less than or equal to T1+T2. When it is a square matrix, the above diagonal lines include the main diagonal lines of the square matrix and the diagonal lines parallel to the main diagonal lines. The above M can be understood as the convolution depth, coding constraint, constraint length, convolution constraint length, memory depth, coding depth, coding kernel size, coding kernel length or coding kernel depth corresponding to the coding. The value of M can be understood as the maximum value of the number of data units to be coded that participate in the coding when obtaining one coded data unit.
[0089] It can be understood that the present application does not apply to the T1 first data units to be encoded O 1 ,O 2 ,…,O T1 and T2 second data units to be encoded Q 1 ,Q 2 ,…,Q T2 The order of arrangement and the values of T1 and T2 are limited. In the present application example, only T1 and T2 are equal, and T1 first data units to be encoded O 1 ,O 2 ,…,O T1 and T2 second data units to be encoded Q 1 ,Q 2 ,…,Q T2 The specific implementation method of the present application scheme is described by taking alternating arrangement as an example. Although the cases where T1 and T2 have different values and T1 first data units to be encoded and T2 second data units to be encoded have other arrangement orders are not given in the examples of the present application, they still fall within the protection scope of the present application.
[0090] In a possible implementation of the encoding matrix H, the encoding matrix H satisfies:
[0091]
[0092] in, It can be understood as the above encoding sub-matrix There are non-zero elements in GF(q) on the main diagonal and the M-1 diagonals parallel to the main diagonal, for example, The form of the example in Table 1 is as follows:
[0093] Table 1
[0094]
[0095] The above example The elements on the main diagonal and the M-1 diagonal lines parallel to the main diagonal can be abbreviated as When i=1 Represents the elements on the main diagonal, i = 2, ... M represents the elements on the M-1 diagonal lines parallel to the main diagonal. For any 1≤i≤M, There is at least one non-zero element in GF(q). In addition, for any 1≤i≤M, The values of the T1+T2-i+1 elements in can be the same, partially different, or completely different. When for any 1≤i≤M, When the values of T1+T2-i+1 elements in are the same, is an upper triangular Toeplitz matrix. 1 The submatrix contained in There is no special requirement, for example, it can be obtained randomly in GF(q) The elements in .
[0096] Table 1 shows the sub-matrix The first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors, are the T1 first encoding vectors, corresponding to T1 first to-be-encoded data units O respectively. 1 ,O 2 ,…,O T1 The above submatrix The second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors, are the T2 second encoding vectors, corresponding to T2 second to-be-encoded data units Q respectively. 1 ,Q 2 ,…,Q T2 .
[0097] In another possible implementation of the encoding matrix H, the encoding matrix H satisfies:
[0098]
[0099] in, It can be understood as the above encoding sub-matrix There are non-zero elements in GF(q) on the M diagonals of , for example, The form of the example in Table 2 is as follows:
[0100] Table 2
[0101]
[0102] The above example The i-th diagonal element in can be abbreviated as 1≤i≤M. For any 1≤i≤M, There is at least one non-zero element in GF(q). In addition, for any 1≤i≤M, The values of the T1+T2 elements in can be the same, partially different, or completely different. 2 The submatrix contained in There is no special requirement, for example, it can be obtained randomly in GF(q) The elements in .
[0103] For example, The form of the example in Table 3 is as follows:
[0104] Table 3
[0105]
[0106] The above example There is at least one non-zero element in GF(q) on the diagonal line shown in FIG. In addition, the values of the elements on any diagonal line shown can be the same, partially different, or completely different. 2 The submatrix contained in There is no special requirement, for example, it can be obtained randomly in GF(q) The elements in .
[0107] Submatrices shown in Table 2 or Table 3 The first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors, are the T1 first encoding vectors, corresponding to T1 first to-be-encoded data units O respectively. 1 ,O 2 ,…,O T1 The above submatrix The second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors, are the T2 second encoding vectors, corresponding to T2 second to-be-encoded data units Q respectively. 1 ,Q 2 ,…,Q T2 .
[0108] In another possible implementation of the encoding matrix H, the encoding matrix H satisfies:
[0109] H=[I T1+T2 H′]=H 3
[0110] Among them, I T1+T2 is the identity matrix of (T1+T2)*(T1+T2) dimensions. The matrix H′ is the H 1 or H 2 , or, the matrix H′ contains H 1 One or more column vectors in H, or the matrix H′ contains H 2 One or more column vectors in .
[0111] In the several possible coding matrices provided above, the T1 first coding vectors and the T2 second coding vectors can have a variety of different designs.
[0112] In a possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in any one of the T1 first coding vectors is greater than the number of non-zero coefficients included in any one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0113] For example, when the above encoding matrix H is used 1 When the sub-matrix The number of non-zero coefficients contained in any one of the T1 first coding vectors (i.e., the first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors) is greater than the number of non-zero coefficients contained in any one of the T2 second coding vectors (i.e., the second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors).
[0114] For another example, when the above encoding matrix H is used 2 When the sub-matrix The number of non-zero coefficients contained in any one of the T1 first coding vectors (i.e., the first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors) is greater than the number of non-zero coefficients contained in any one of the T2 second coding vectors (i.e., the second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors).
[0115] The implementation of the first coding vector and the second coding vector is explained by taking T1=T2=3, K=8, and coding depth M=4 as an example.
[0116] When the encoding matrix H is used 1 When H 1 The submatrix in For example, it may have the form of the examples shown in Table 4, Table 5, or Table 6, where "0" represents a zero coefficient in the submatrix, and the other elements represent non-zero coefficients in the submatrix.
[0117] Table 4
[0118]
[0119] Table 5
[0120]
[0121] Table 6
[0122]
[0123]
[0124] When the encoding matrix H is used 2 , and H 2 The submatrix in When the form shown in Table 2 is adopted, the submatrix For example, it may have the form of the examples shown in Table 7, Table 8, or Table 9, where "0" represents the zero coefficient in the sub-matrix, and the other elements represent the non-zero coefficients in the sub-matrix.
[0125] Table 7
[0126]
[0127] Table 8
[0128]
[0129] Table 9
[0130]
[0131] When the encoding matrix H is used 2 , and H2 The submatrix in When the form shown in Table 3 is adopted, the submatrix For example, it may have the form of the examples shown in Table 10, Table 11, or Table 12, where "0" represents the zero coefficient in the sub-matrix, and the other elements represent the non-zero coefficients in the sub-matrix.
[0132] Table 10
[0133]
[0134]
[0135] Table 11
[0136]
[0137] Table 12
[0138]
[0139] It can be understood that Tables 4-12 only illustrate several possible specific forms of coding sub-matrices, and other sub-matrices that satisfy the condition that "the number of non-zero coefficients contained in any one of the T1 first coding vectors is greater than the number of non-zero coefficients contained in any one of the T2 second coding vectors" also fall within the scope of protection of this application.
[0140] In another possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in one of the T1 first coding vectors is greater than the number of non-zero coefficients included in one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0141] For example, when the above encoding matrix H is used 1 When the sub-matrix The number of non-zero coefficients contained in a certain first coding vector among the T1 first coding vectors (i.e., the first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors) is greater than the number of non-zero coefficients contained in a certain second coding vector among the T2 second coding vectors (i.e., the second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors).
[0142] For another example, when the above encoding matrix H is used 2 When the sub-matrix The number of non-zero coefficients contained in a certain first coding vector among the T1 first coding vectors (i.e., the first row, the third row, ..., the T1+T2-1th row, a total of T1 row vectors) is greater than the number of non-zero coefficients contained in a certain second coding vector among the T2 second coding vectors (i.e., the second row, the fourth row, ..., the T1+T2th row, a total of T2 row vectors).
[0143] Through the implementation of the encoding vector described above, it is possible to provide a stronger encoding protection for the first data unit to be encoded than for the second data unit to be encoded according to the type of extended reality data respectively corresponding to the first data unit to be encoded and the second data unit to be encoded.
[0144] For example, when the type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data, since the extended reality basic layer data can provide users with a basic extended reality experience, providing stronger coding protection for the extended reality basic layer data first can ensure the user's basic experience of the basic extended reality experience. On this basis, the best-effort extended reality enhancement layer data can provide users with an enhanced extended reality experience.
[0145] For another example, when the type of extended reality data corresponding to T1 first data units to be encoded includes data within the extended reality FOV, and the type of extended reality data corresponding to T2 second data units to be encoded includes data outside the extended reality FOV, since the data within the extended reality FOV can present to the user extended reality visual content that the user is more concerned about than the data outside the extended reality FOV, prioritizing the provision of stronger coding protection for the data within the extended reality FOV can prioritize the user's experience of the extended reality experience.
[0146] Corresponding to the method provided in the above method embodiment, the present application embodiment also provides a corresponding device, including a module for executing the corresponding module of the above embodiment. The module can be software, hardware, or a combination of software and hardware.
[0147] Fig. 9 A schematic diagram of the structure of a device is given. The device 900 can be a network device, a terminal device, a chip, a chip system, or a processor that supports the network device to implement the above method, or a chip, a chip system, or a processor that supports the terminal device to implement the above method. The device can be used to implement the method described in the above method embodiment, and the details can be referred to the description in the above method embodiment.
[0148] The device 900 may include one or more processors 901, which may also be referred to as processing units, and may implement certain control functions. The processor 901 may be a general-purpose processor or a dedicated processor, etc. For example, it may be a baseband processor or a central processing unit. The baseband processor may be used to process communication protocols and communication data, and the central processing unit may be used to control a communication device (e.g., a base station, a baseband chip, a terminal, a terminal chip, a DU or a CU, etc.), execute a software program, and process data of the software program.
[0149] In an optional design, the processor 901 may also store instructions and / or data 903, and the instructions and / or data 903 can be executed by the processor so that the device 900 executes the method described in the above method embodiment.
[0150] In another optional design, the processor 901 may include a transceiver unit for implementing the receiving and sending functions. For example, the transceiver unit may be a transceiver circuit, or an interface, or an interface circuit. The transceiver circuit, interface, or interface circuit for implementing the receiving and sending functions may be separate or integrated. The above-mentioned transceiver circuit, interface, or interface circuit may be used for reading and writing code / data, or the above-mentioned transceiver circuit, interface, or interface circuit may be used for transmitting or delivering signals.
[0151] In yet another possible design, the apparatus 900 may include a circuit that may implement the functions of sending, receiving, or communicating in the aforementioned method embodiments.
[0152] Optionally, the device 900 may include one or more memories 902, on which instructions 904 may be stored, and the instructions may be executed on the processor so that the device 900 performs the method described in the above method embodiment. Optionally, data may also be stored in the memory. Optionally, instructions and / or data may also be stored in the processor. The processor and memory may be provided separately or integrated together. For example, the corresponding relationship described in the above method embodiment may be stored in a memory or in a processor.
[0153] Optionally, the device 900 may further include a transceiver 905 and / or an antenna 906. The processor 901 may be referred to as a processing unit, which controls the device 900. The transceiver 905 may be referred to as a transceiver unit, a transceiver, a transceiver circuit, a transceiver device or a transceiver module, etc., which is used to implement a transceiver function.
[0154] Optionally, the device 900 in the embodiment of the present application can be used to execute the embodiment of the present application Figure 8 The method described in .
[0155] The processor and transceiver described in the present application can be implemented in an integrated circuit (IC), an analog IC, a radio frequency integrated circuit RFIC, a mixed signal IC, an application specific integrated circuit (ASIC), a printed circuit board (PCB), an electronic device, etc. The processor and transceiver can also be manufactured using various IC process technologies, such as complementary metal oxide semiconductor (CMOS), N-type metal oxide semiconductor (NMOS), P-type metal oxide semiconductor (positive channel metal oxide semiconductor, PMOS), bipolar junction transistor (BJT), bipolar CMOS (BiCMOS), silicon germanium (SiGe), gallium arsenide (GaAs), etc.
[0156] The device described in the above embodiments may be a network device or a terminal device, but the scope of the device described in this application is not limited thereto, and the structure of the device may not be limited thereto. Fig. 9 The device may be a stand-alone device or may be part of a larger device. For example, the device may be:
[0157] (1) Independent integrated circuit IC, or chip, or chip system or subsystem;
[0158] (2) having a set of one or more ICs, and optionally, the IC set may also include a storage component for storing data and / or instructions;
[0159] (3) ASIC, such as modem (MSM);
[0160] (4) Modules that can be embedded in other devices;
[0161] (5) Receivers, terminals, smart terminals, cellular phones, wireless devices, handheld devices, mobile units, vehicle-mounted devices, network devices, cloud devices, artificial intelligence devices, machine equipment, home equipment, medical equipment, industrial equipment, etc.;
[0162] (6)Others
[0163] Fig.10 A schematic diagram of the structure of a terminal device is provided. The terminal device can be applied to Figure 1 , Figure 4 , Figure 5 , Figure 6 or Figure 7 In the scenario shown. For ease of illustration, Fig.10 Only the main components of the terminal device are shown. Fig.10 As shown, the terminal device 1000 includes a processor, a memory, a control circuit, an antenna, and an input-output device. The processor is mainly used to process the communication protocol and communication data, and to control the entire terminal, execute the software program, and process the data of the software program. The memory is mainly used to store software programs and data. The radio frequency circuit is mainly used for converting baseband signals and radio frequency signals and processing radio frequency signals. The antenna is mainly used to send and receive radio frequency signals in the form of electromagnetic waves. The input-output device, such as a touch screen, a display screen, a keyboard, etc., is mainly used to receive data input by the user and output data to the user.
[0164] When the terminal device is turned on, the processor can read the software program in the storage unit, parse and execute the instructions of the software program, and process the data of the software program. When data needs to be sent wirelessly, the processor performs baseband processing on the data to be sent, and outputs the baseband signal to the RF circuit. The RF circuit processes the baseband signal to obtain the RF signal and sends the RF signal outward in the form of electromagnetic waves through the antenna. When data is sent to the terminal device, the RF circuit receives the RF signal through the antenna, and the RF signal is further converted into a baseband signal, and the baseband signal is output to the processor, and the processor converts the baseband signal into data and processes the data.
[0165] For ease of explanation, Fig.10 Only one memory and processor are shown. In an actual terminal device, there may be multiple processors and memories. The memory may also be referred to as a storage medium or a storage device, etc., which is not limited in the embodiment of the present invention.
[0166] As an optional implementation, the processor may include a baseband processor and a central processing unit. The baseband processor is mainly used to process the communication protocol and communication data, and the central processing unit is mainly used to control the entire terminal device, execute software programs, and process software program data. Fig.10The processor in integrates the functions of the baseband processor and the central processing unit. Those skilled in the art will understand that the baseband processor and the central processing unit may also be independent processors, which are interconnected through technologies such as buses. Those skilled in the art will understand that the terminal device may include multiple baseband processors to adapt to different network standards, and the terminal device may include multiple central processing units to enhance its processing capabilities. The various components of the terminal device may be connected through various buses. The baseband processor may also be described as a baseband processing circuit or a baseband processing chip. The central processing unit may also be described as a central processing circuit or a central processing chip. The function of processing the communication protocol and communication data may be built into the processor, or may be stored in the storage unit in the form of a software program, and the processor executes the software program to implement the baseband processing function.
[0167] In one example, the antenna with transceiver functions and the control circuit can be regarded as the transceiver unit 1011 of the terminal device 1000, and the processor with processing function can be regarded as the processing unit 1012 of the terminal device 1000. Fig.10 As shown, the terminal device 1000 includes a transceiver unit 1011 and a processing unit 1012. The transceiver unit may also be referred to as a transceiver, a transceiver, a transceiver device, etc. Optionally, the device used to implement the receiving function in the transceiver unit 1011 may be regarded as a receiving unit, and the device used to implement the sending function in the transceiver unit 1011 may be regarded as a sending unit, that is, the transceiver unit 1011 includes a receiving unit and a sending unit. Exemplarily, the receiving unit may also be referred to as a receiver, a receiver, a receiving circuit, etc., and the sending unit may be referred to as a transmitter, a transmitter, or a transmitting circuit, etc. Optionally, the above-mentioned receiving unit and the sending unit may be one integrated unit, or may be multiple independent units. The above-mentioned receiving unit and the sending unit may be located in one geographical location, or may be dispersed in multiple geographical locations.
[0168] like Fig.11 As shown, another embodiment of the present application provides a device 1100. The device can be a terminal, or a component of a terminal (for example, an integrated circuit, a chip, etc.). Alternatively, the device can be a network device, or a component of a network device (for example, an integrated circuit, a chip, etc.). The device can also be other communication modules for implementing the method in the method embodiment of the present application. The device 1100 may include: a processing module 1102 (or a processing unit). Optionally, it may also include a transceiver module 1101 (or a transceiver unit) and a storage module 1103 (or a storage unit).
[0169] In one possible design, Fig.11One or more modules in the may be implemented by one or more processors, or by one or more processors and memories; or by one or more processors and transceivers; or by one or more processors, memories and transceivers, which are not limited in the embodiments of the present application. The processor, memory, and transceiver may be provided separately or integrated.
[0170] The device has the function of implementing the terminal described in the embodiment of the present application. For example, the device includes a module or unit or means corresponding to the steps involved in the terminal described in the embodiment of the present application. The function or unit or means can be implemented by software, or by hardware, or by hardware executing the corresponding software implementation, or by a combination of software and hardware. For details, please refer to the corresponding description in the aforementioned corresponding method embodiment. Alternatively, the device has the function of implementing the network device described in the embodiment of the present application. For example, the device includes a module or unit or means corresponding to the steps involved in the network device described in the embodiment of the present application. The function or unit or means can be implemented by software, or by hardware, or by hardware executing the corresponding software implementation, or by a combination of software and hardware. For details, please refer to the corresponding description in the aforementioned corresponding method embodiment.
[0171] Optionally, each module in the apparatus 1100 in the embodiment of the present application can be used to execute the embodiment of the present application. Figure 8 Describe the method.
[0172] In one possible design, a device 1100 may include: a processing module 1102 and a transceiver module 1101. The processing module 1102 is used to obtain T1 first data units to be encoded and T2 second data units to be encoded, and encode the T1 first data units to be encoded and the T2 second data units to be encoded according to at least one of the extended reality data types corresponding to the T1 first data units to be encoded or the extended reality data types corresponding to the T2 second data units to be encoded, to obtain K encoded data units, where T1 and T2 are integers greater than or equal to 1, and K is an integer greater than or equal to T1+T2. The transceiver module 1101 is used to output the K encoded data units.
[0173] Through the above-mentioned device, during the process of encoding XR data, the encoding of XR data can be completed according to the different dimensions or different QoS requirements of the XR data, thereby improving the encoding efficiency of the XR data and thus improving the utilization efficiency of limited air interface resources.
[0174] In some possible implementations of the device 1100, the type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data. Optionally, the extended reality basic layer data and the extended reality enhancement layer data may be extended reality data obtained by performing source coding on the source data of the XR, and the source coding may be, for example, high efficiency video coding (HEVC) or scalable HEVC extension coding (SHVC). Through this implementation, it is possible to complete the encoding of the XR data according to the degree of QoS requirements of different XR data types during the encoding process, thereby improving the encoding efficiency of the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to ensure the QoS requirements of the XR data.
[0175] In some possible implementations of the device 1100, the type of extended reality data corresponding to the T1 first data units to be encoded includes data within the extended reality field of view (FOV), and the type of extended reality data corresponding to the T2 second data units to be encoded includes data outside the extended reality FOV. Optionally, the data within the extended reality FOV and the data outside the extended reality FOV can be extended reality data obtained by performing FOV source coding on the source data of the XR. FOV source coding can divide the source data of the XR into a part within the viewing angle and a part outside the viewing angle. Generally, the viewing angle of the FOV is about 60-150 degrees, wherein the part within the viewing angle corresponds to the data within the extended reality FOV, and the part outside the viewing angle corresponds to the data outside the extended reality FOV. Through this implementation method, it is possible to complete the encoding of the XR data according to the visual presentation requirements of the XR data during the encoding process, thereby improving the encoding efficiency of the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with coding to enhance the user's visual experience of the XR service.
[0176] In some possible implementations of the device 1100, the type of extended reality data corresponding to the T1 first data units to be encoded includes video data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes data other than the video data type (for example, including audio data). Through this implementation, the encoding of the XR data can be completed according to the presentation requirements of the XR data for vision and other user perceptions (for example, hearing) during the encoding of the XR data, thereby improving the encoding efficiency for the XR data, thereby improving the utilization efficiency of limited air interface resources, and utilizing limited resources in combination with encoding to enhance the user's comprehensive experience of the XR service.
[0177] In some possible implementations of the device 1100, the processing module 1102 is configured to encode the T1 first data units to be encoded and the T2 second data units to be encoded according to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded, specifically including:
[0178] The processing module 1102 is used to obtain a coding matrix H according to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded, and encode the T1 first data units to be encoded and the T2 second data units to be encoded according to the coding matrix H. Optionally, the coding matrix H includes a coding submatrix The encoding matrix It includes T1 first coding vectors and T2 second coding vectors, wherein the T1 first coding vectors correspond to the T1 first data units to be encoded, and the T2 second coding vectors correspond to the T2 second data units to be encoded.
[0179] In a possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in any one of the T1 first coding vectors is greater than the number of non-zero coefficients included in any one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0180] In another possible implementation of the first coding vector and the second coding vector, the number of non-zero coefficients included in one of the T1 first coding vectors is greater than the number of non-zero coefficients included in one of the T2 second coding vectors. Optionally, the number of non-zero coefficients included in any one of the T2 second coding vectors is less than the coding depth M.
[0181] Through the implementation of the first encoding vector and the second encoding vector described above, it is possible to provide the first data unit to be encoded with stronger encoding protection than the second data unit to be encoded according to the types of extended reality data respectively corresponding to the first data unit to be encoded and the second data unit to be encoded.
[0182] It is understandable that some optional features in the embodiments of the present application may be implemented independently in certain scenarios without relying on other features, such as the solution on which they are currently based, to solve corresponding technical problems and achieve corresponding effects, or may be combined with other features according to needs in certain scenarios. Accordingly, the devices provided in the embodiments of the present application may also realize these features or functions accordingly, which will not be elaborated here.
[0183] Those skilled in the art can also understand that the various illustrative logical blocks and steps listed in the embodiments of the present application can be implemented by electronic hardware, computer software, or a combination of the two. Whether such functions are implemented by hardware or software depends on the specific application and the design requirements of the entire system. Those skilled in the art can use various methods to implement the functions for corresponding applications, but such implementation should not be understood as exceeding the scope of protection of the embodiments of the present application.
[0184] It is understood that the processor in the embodiment of the present application can be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor can be a general processor, a digital signal processor (digital signal processor, DSP), an application specific integrated circuit (application specific integrated circuit, ASIC), a field programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
[0185] The scheme described in the present application can be implemented in various ways. For example, these technologies can be implemented in a combination of hardware, software or hardware. For hardware implementation, the processing unit for executing these technologies at a communication device (for example, a base station, a terminal, a network entity or a chip) can be implemented in one or more general-purpose processors, DSPs, digital signal processing devices, ASICs, programmable logic devices, FPGAs, or other programmable logic devices, discrete gates or transistor logic, discrete hardware components, or any combination thereof. The general-purpose processor can be a microprocessor, and optionally, the general-purpose processor can also be any traditional processor, controller, microcontroller or state machine. The processor can also be implemented by a combination of computing devices, such as a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a digital signal processor core, or any other similar configuration to implement.
[0186] It can be understood that the memory in the embodiments of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0187] The present application also provides a computer-readable medium on which a computer program is stored. When the computer program is executed by a computer, the functions of any of the above method embodiments are implemented.
[0188] The present application also provides a computer program product, which implements the functions of any of the above method embodiments when executed by a computer.
[0189] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a high-density digital video disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).
[0190] It is understood that the "embodiment" mentioned in the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, the various embodiments in the entire specification do not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It is understood that in various embodiments of the present application, the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiment of the present application.
[0191] It can be understood that in the present application, "when", "if" and "if" all mean that the device will take corresponding actions under certain objective circumstances, and do not limit the time, nor do they require that the device must have a judgment action when it is implemented, nor do they mean that there are other limitations.
[0192] The term “simultaneously” in the present application may be understood as at the same time point, within a period of time, or within the same cycle.
[0193] Those skilled in the art will appreciate that the first, second, and other various digital numbers involved in the present application are only for the convenience of description and are not intended to limit the scope of the embodiments of the present application. The specific values of the numbers (also referred to as indexes), the specific values of the quantities, and the positions in the present application are only for illustrative purposes, are not the only form of representation, and are not intended to limit the scope of the embodiments of the present application. The first, second, and other various digital numbers involved in the present application are also only for the convenience of description and are not intended to limit the scope of the embodiments of the present application.
[0194] In this application, elements expressed in the singular are intended to mean "one or more" rather than "one and only one", unless otherwise specified. In this application, "at least one" is intended to mean "one or more", and "more than one" is intended to mean "two or more", unless otherwise specified.
[0195] In addition, the terms "system" and "network" are often used interchangeably in this article. The term "and / or" in this article is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. A can be singular or plural, and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.
[0196] In this document, the term "at least one of..." or "at least one of..." means all or any combination of the listed items. For example, "at least one of A, B, and C" may mean: A exists alone, B exists alone, C exists alone, A and B exist at the same time, B and C exist at the same time, and A, B, and C exist at the same time, where A may be singular or plural, B may be singular or plural, and C may be singular or plural.
[0197] It can be understood that in each embodiment of the present application, "B corresponding to A" means that B is associated with A, and B can be determined according to A. However, it should also be understood that determining B according to A does not mean determining B only according to A, and B can also be determined according to A and / or other information.
[0198] The corresponding relationships shown in each table in the present application can be configured or predefined. The values of the information in each table are only examples and can be configured as other values, which are not limited by the present application. When configuring the corresponding relationship between the information and each parameter, it is not necessarily required to configure all the corresponding relationships illustrated in each table. For example, in the table in the present application, the corresponding relationships shown in some rows may not be configured. For another example, appropriate deformation adjustments can be made based on the above table, such as splitting, merging, etc. The names of the parameters shown in the titles of the above tables can also use other names that can be understood by the communication device, and the values or representations of the parameters can also be other values or representations that can be understood by the communication device. When implementing the above tables, other data structures can also be used, such as arrays, queues, containers, stacks, linear lists, pointers, linked lists, trees, graphs, structures, classes, heaps, hash tables or hash tables.
[0199] The predefined in the present application may be understood as defined, predefined, stored, pre-stored, pre-negotiated, pre-configured, solidified, or pre-burned.
[0200] It will be appreciated by those skilled in the art that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0201] Those skilled in the art will appreciate that, for the sake of convenience and brevity of description, the specific working processes of the systems, devices and units described above may refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0202] It is understood that the systems, devices and methods described in the present application can also be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0203] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0204] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0205] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.
[0206] The same or similar parts between the various embodiments in this application can refer to each other. In the various embodiments in this application, and the various implementation methods / implementation methods / implementation methods in each embodiment, if there is no special explanation and logical conflict, the terms and / or descriptions between different embodiments and the various implementation methods / implementation methods / implementation methods in each embodiment are consistent and can be referenced to each other. The technical features in different embodiments and the various implementation methods / implementation methods / implementation methods in each embodiment can be combined to form new embodiments, implementation methods, implementation methods, or implementation methods according to their inherent logical relationships. The above-described implementation methods of this application do not constitute a limitation on the scope of protection of this application.
[0207] The above description is only a specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application.
Claims
1. A coding method, It is characterized in that include: Obtaining T1 first data units to be encoded and T2 second data units to be encoded, where T1 and T2 are integers greater than or equal to 1; the dimension of the extended reality data type corresponding to the T1 first data units to be encoded is different from the dimension of the extended reality data type corresponding to the T2 second data units to be encoded; Obtaining a coding matrix according to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded; Encode the T1 first to-be-encoded data units and the T2 second to-be-encoded data units according to the encoding matrix to obtain K encoded data units, where K is an integer greater than or equal to T1+T2; as well as Outputting the K coded data units; The coding matrix includes a coding sub-matrix, and the coding sub-matrix includes T1 first coding vectors and T2 second coding vectors. The T1 first coding vectors correspond to the T1 first data units to be encoded respectively, and the T2 second coding vectors correspond to the T2 second data units to be encoded respectively.
2. The method according to claim 1, It is characterized in that The number of non-zero coefficients contained in one of the T1 first encoding vectors is greater than the number of non-zero coefficients contained in one of the T2 second encoding vectors.
3. The method according to claim 2, It is characterized in that The number of non-zero coefficients included in any one of the T1 first coding vectors is greater than the number of non-zero coefficients included in any one of the T2 second coding vectors.
4. The method according to any one of claims 1 to 3, It is characterized in that The number of non-zero coefficients contained in any one of the T2 second coding vectors is less than the coding depth M, where the coding depth is the maximum number of data units to be encoded that participate in the encoding when obtaining a coded data unit, where M is an integer greater than 0 and less than or equal to T1+T2.
5. The method according to any one of claims 1 to 3, It is characterized in that The type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data.
6. The method according to any one of claims 1 to 3, It is characterized in that The type of augmented reality data corresponding to the T1 first data units to be encoded includes data within the augmented reality field of view, and the type of augmented reality data corresponding to the T2 second data units to be encoded includes data outside the augmented reality field of view.
7. A communication device, It is characterized in that include: Processing module and transceiver module; The processing module is used to obtain T1 first data units to be encoded and T2 second data units to be encoded, and obtain a coding matrix according to at least one of the types of extended reality data corresponding to the T1 first data units to be encoded or the types of extended reality data corresponding to the T2 second data units to be encoded, and encode the T1 first data units to be encoded and the T2 second data units to be encoded according to the coding matrix to obtain K encoded data units, wherein T1 and T2 are integers greater than or equal to 1, and K is an integer greater than or equal to T1+T2; the dimensions of the extended reality data types corresponding to the T1 first data units to be encoded are different from those of the extended reality data types corresponding to the T2 second data units to be encoded; The transceiver module is used to output the K coded data units; The coding matrix includes a coding sub-matrix, and the coding sub-matrix includes T1 first coding vectors and T2 second coding vectors. The T1 first coding vectors correspond to the T1 first data units to be encoded respectively, and the T2 second coding vectors correspond to the T2 second data units to be encoded respectively.
8. The device according to claim 7, It is characterized in that The number of non-zero coefficients contained in one of the T1 first encoding vectors is greater than the number of non-zero coefficients contained in one of the T2 second encoding vectors.
9. The device according to claim 7, It is characterized in that The number of non-zero coefficients included in any one of the T1 first coding vectors is greater than the number of non-zero coefficients included in any one of the T2 second coding vectors.
10. The device according to any one of claims 7 to 9, It is characterized in that The number of non-zero coefficients contained in any one of the T2 second coding vectors is less than the coding depth M, where the coding depth is the maximum number of data units to be encoded that participate in the encoding when obtaining a coded data unit, where M is an integer greater than 0 and less than or equal to T1+T2.
11. The device according to any one of claims 7 to 9, It is characterized in that The type of extended reality data corresponding to the T1 first data units to be encoded includes extended reality basic layer data, and the type of extended reality data corresponding to the T2 second data units to be encoded includes extended reality enhancement layer data.
12. The device according to any one of claims 7 to 9, It is characterized in that The type of augmented reality data corresponding to the T1 first data units to be encoded includes data within the augmented reality field of view, and the type of augmented reality data corresponding to the T2 second data units to be encoded includes data outside the augmented reality field of view.
13. A communication device, It is characterized in that include: A processor, wherein the processor is coupled to a memory, wherein the memory is used to store programs or instructions, and when the programs or instructions are executed by the processor, the device executes the method according to any one of claims 1 to 6.
14. A computer-readable storage medium having a computer program or instructions stored thereon, It is characterized in that When the computer program or instruction is executed, the computer is caused to perform the method according to any one of claims 1 to 6.
15. A communication device, It is characterized in that The apparatus comprises means for executing the method of any one of claims 1 to 6.
16. A computer program product, comprising computer program code, It is characterized in that When the computer program code is executed on a computer, the computer is enabled to implement the method according to any one of claims 1 to 6.
17. A chip, It is characterized in that include: A processor, the processor is coupled to a memory, the memory is used to store programs or instructions, when the program or instructions are executed by the processor, the processor executes the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Scalable video coding layered video data transmission method and apparatus, and reception method and apparatus using network coding
KR1020130060976A