Methods, apparatus, and computer-readable media for monitoring user equipment during a 5GMS uplink streaming session

By determining the average throughput, generating activation list reports and monitoring media information in a 5G uplink streaming session, the problem of undefined uplink metrics in the prior art is solved, and effective monitoring of uplink streaming and dynamic improvements of the transmission network are achieved.

CN116325688BActive Publication Date: 2025-08-19TENCENT AMERICA LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280006608.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2022-08-10
Filing Date
2022-08-11
Publication Date
2025-08-19
Estimated Expiration
2042-08-11

AI Technical Summary

Technical Problem

The existing 5G media streaming architecture does not define the metrics of uplink streaming, resulting in the inability to effectively monitor and improve the transmission network.

Method used

A method and apparatus are provided to monitor and measure 5G uplink streaming sessions, including byte count, uplink cycle, and media content attributes within a predetermined interval, and transmit this information to 5GMS application functions by determining an average throughput object, generating an activation list report, and determining a media information object.

Benefits of technology

It realizes effective monitoring of uplink streaming, provides dynamic improvement of data in the transmission network, and improves the analysis capabilities of the transmission system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116325688B_ABST
    Figure CN116325688B_ABST
Patent Text Reader

Abstract

Provided are systems, devices, and methods for monitoring a user device during a 5G media streaming (5GMS) uplink streaming session, which may include: determining an average throughput object for a predetermined interval, wherein the average throughput object includes a number of bytes of media content uploaded during the predetermined interval; and generating an activation list report associated with the 5GMS uplink streaming session, wherein the activation list report includes a list of uplink periods during which content is uplink streamed. The method may also include determining a media information object associated with the media content uploaded during the 5GMS uplink streaming session, and transmitting the average throughput object, the activation list report, and the media information object to a 5GMS application function.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to U.S. Provisional Application No. 63 / 232,018 filed in the U.S. Patent and Trademark Office on August 11, 2021, and U.S. Application No. 17 / 885,031 filed in the U.S. Patent and Trademark Office on August 10, 2022, the entire contents of which are incorporated herein by reference in their entirety. Technical Field

[0003] Embodiments of the present application relate to media processing and streaming methods and systems, and more particularly, to defining metrics for measuring and monitoring uplink streaming sessions. Background Art

[0004] The 5G media streaming architecture defined in 3GPP TS 26.501 (3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; 5G Media Streaming (5GMS)) only defines a general architecture for uplink and downlink media streaming. While 3GPP TS 26.501 and 3GPP TS 26.512 define general uplink processing, they do not define metrics for uplink streaming. Furthermore, the DASH-IF ingest protocol does not define any metrics for uplink streaming.

[0005] Several metrics can be used to measure and monitor internet streaming sessions, where a device streams media content downstream over a network (internet, wireless, 5G, or any other network). Specifications such as MPEG-DASH and 3GPP TS 26.247 define various metrics for download streaming. However, metrics for upstream streaming, where content is streamed from a device to the network, are not defined.

[0006] Therefore, there is a need for the definition of uplink metrics, ie specific parameters that can be measured and monitored by uplink streaming clients and provided to the service provider to dynamically improve the delivery network or for further analysis of the entire delivery system. Summary of the Invention

[0007] According to one or more embodiments, a method for monitoring during a 5G media streaming (5GMS) uplink streaming session by a user equipment may be provided. The method is performed by at least one processor and may include: determining an average throughput object for a predetermined interval, wherein the average throughput object includes a number of bytes uploaded during the predetermined interval; generating an activation list report associated with the uplink streaming session, wherein the activation list report includes a list of uplink periods during which content is upstreamed; determining a media information object associated with media content uploaded during the uplink streaming session; and transmitting the average throughput object, the activation list report, and the media information object to a 5GMS application function.

[0008] According to one or more embodiments, a device for monitoring a user equipment during a 5G media streaming (5GMS) uplink streaming session may be provided. The device may include at least one memory configured to store program code; and at least one processor configured to read the program code and operate in accordance with the instructions of the program code. The program code may include: a first determination code configured to cause at least one processor to determine an average throughput object for a predetermined interval, wherein the average throughput object includes the number of bytes uploaded during the predetermined interval; a first generation code configured to cause at least one processor to generate an activation list report associated with the uplink streaming session, wherein the activation list report includes an uplink period list during which content is uplink streamed; a second determination code configured to cause at least one processor to determine a media information object associated with media content uploaded during the uplink streaming session; and a first transmission code configured to cause at least one processor to transmit the average throughput object, the activation list report, and the media information object to a 5GMS application function.

[0009] According to one or more embodiments, a non-transitory computer-readable medium having instructions stored thereon may be provided. The instructions include one or more instructions that, when executed by one or more processors of a device for a 5G media streaming (5GMS) uplink streaming session, cause the one or more processors to perform the following operations: determining an average throughput object for a predetermined interval, wherein the average throughput object comprises a number of bytes uploaded during the predetermined interval; generating an activation list report associated with the uplink streaming session, wherein the activation list report comprises a list of uplink periods during which content is upstreamed; determining a media information object associated with media content uploaded during the uplink streaming session; and transmitting the average throughput object, the activation list report, and the media information object to a 5GMS application function. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] Other features, properties, and various advantages of the disclosed subject matter will become more apparent from the following detailed description and accompanying drawings, in which:

[0011] Figure 1 is a diagram of an environment in which the methods, apparatus, and systems described herein may be implemented, according to an embodiment.

[0012] Figure 2 yes Figure 1 A block diagram of example components of one or more devices.

[0013] Figure 3 is a block diagram of a media architecture for media uplink streaming, according to an embodiment.

[0014] Figure 4 is a block diagram of a media architecture for media uplink streaming, according to an embodiment.

[0015] Figure 5 is a flow chart of an exemplary process for monitoring user equipment during 5G media uplink streaming, according to an embodiment. Specific embodiments

[0016] Figure 1 FIG is a diagram of an environment 100 in which the methods, apparatuses, and systems described herein may be implemented, according to an embodiment. Figure 1 As shown, environment 100 may include user device 110, platform 120, and network 130. The devices of environment 100 may be interconnected via wired connections, wireless connections, or a combination of wired and wireless connections.

[0017] User device 110 includes one or more devices that can receive, generate, store, process, and / or provide information related to platform 120. For example, user device 110 may include a computing device (e.g., a desktop computer, a laptop computer, a tablet computer, a handheld computer, a smart speaker, a server, etc.), a mobile phone (e.g., a smartphone, a wireless phone, etc.), a wearable device (e.g., smart glasses or a smart watch), or the like. In some implementations, user device 110 can receive information from platform 120 and / or send information to platform 120.

[0018] The platform 120 includes one or more devices as described elsewhere herein. In some implementations, the platform 120 may include a cloud server or a group of cloud servers. In some implementations, the platform 120 may be designed as a modular platform so that software components can be added or removed based on specific needs. Thus, the platform 120 can be easily and / or quickly reconfigured for different uses.

[0019] In some implementations, as shown, the platform 120 can reside in a cloud computing environment 122. It should be noted that while the implementations described herein describe the platform 120 as residing in the cloud computing environment 122, in some implementations, the platform 120 may not be cloud-based (i.e., may be implemented outside of a cloud computing environment) or may be partially cloud-based.

[0020] The cloud computing environment 122 includes an environment that hosts the platform 120. The cloud computing environment 122 can provide computing, software, data access, storage, and other services that do not require end users (e.g., user devices 110) to be aware of the physical location and configuration of the systems and / or devices hosting the platform 120. As shown, the cloud computing environment 122 can include a set of computing resources 124 (collectively, "computing resources 124" and individually, "computing resource 124").

[0021] Computing resources 124 include one or more personal computers, workstation computers, server devices, or other types of computing and / or communication devices. In some implementations, computing resources 124 may control platform 120. Cloud resources may include computing instances running on computing resources 124, storage devices provided on computing resources 124, data transmission devices provided by computing resources 124, and the like. In some implementations, computing resources 124 may communicate with other computing resources 124 via wired connections, wireless connections, or a combination of wired and wireless connections.

[0022] like Figure 1 As further shown, the computing resources 124 include a set of cloud resources, such as one or more application programs ("APP") 124-1, one or more virtual machines ("VM") 124-2, virtualized storage ("VS") 124-3, one or more hypervisors ("HYP") 124-4, etc.

[0023] Applications 124-1 include one or more software applications that can be provided to or accessed by user device 110 and / or platform 120. Applications 124-1 can eliminate the need to install and run software applications on user device 110. For example, applications 124-1 can include software associated with platform 120 and / or any other software that can be provided via cloud computing environment 122. In some implementations, one application 124-1 can send information to / receive information from one or more other applications 124-1 via virtual machine 124-2.

[0024] The virtual machine 124-2 comprises a software implementation of a machine (e.g., a computer) that runs programs like a physical machine. Depending on the degree to which the virtual machine 124-2 corresponds to any physical machine and its purpose, the virtual machine 124-2 can be a system virtual machine or a process virtual machine. A system virtual machine can provide a complete system platform that supports the operation of a complete operating system ("OS"). A process virtual machine can run a single program and can support a single process. In some implementations, the virtual machine 124-2 can run on behalf of a user (e.g., user device 110) and can manage the infrastructure of the cloud computing environment 122, such as data management, synchronization, or long-term data transfer.

[0025] The virtualized storage 124-3 includes one or more storage systems and / or one or more devices that use virtualization technology within the storage system or device of the computing resource 124. In some implementations, in the context of the storage system, the types of virtualization may include block virtualization and file virtualization. Block virtualization may refer to the abstraction (or separation) of logical storage from physical storage, so that the storage system can be accessed without considering the physical storage or heterogeneous structure. Separation allows administrators of the storage system to have flexibility in how the administrator manages the storage of end users. File virtualization eliminates the dependency between data accessed at the file level and the location where the file is physically stored. This can optimize storage usage, server consolidation and / or non-disruptive file migration performance.

[0026] Hypervisor 124-4 provides hardware virtualization technology that allows multiple operating systems (e.g., guest operating systems) to run simultaneously on a host computer (e.g., computing resource 124). Hypervisor 124-4 presents a virtual operating platform to the guest operating systems and manages the operation of the guest operating systems. Multiple instances of various operating systems can share virtualized hardware resources.

[0027] The network 130 includes one or more wired networks and / or wireless networks. For example, the network 130 may include a cellular network (e.g., a fifth generation (5G) network, a long term evolution (LTE) network, a third generation (3G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a telephone network (e.g., a public switched telephone network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, a fiber-optic-based network, etc., and / or a combination of these or other types of networks.

[0028] Figure 1 The number and arrangement of devices and networks shown are provided as examples. In practice, there may be additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or different Figure 1The devices and / or networks shown are arranged differently. Figure 1 Two or more of the devices shown may be implemented in a single device, or Figure 1 The single device shown may be implemented as multiple distributed devices. Additionally or alternatively, one set of devices (eg, one or more devices) of environment 100 may perform one or more functions described as being performed by another set of devices of environment 100.

[0029] Figure 2 yes Figure 1 Device 200 may correspond to user device 110 and / or platform 120. Figure 2 As shown, device 200 may include a bus 210 , a processor 220 , a memory 230 , a storage component 240 , an input component 250 , an output component 260 , and a communication interface 270 .

[0030] The bus 210 includes components that allow communication between components of the device 200. The processor 220 is implemented in hardware, firmware, or a combination of hardware and software. The processor 220 is a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or another type of processing component. In some implementations, the processor 220 includes one or more processors that can be programmed to perform functions. The memory 230 includes random access memory (RAM), read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, and / or optical memory) that stores information and / or instructions for use by the processor 220.

[0031] The storage component 240 stores information and / or software related to the operation and use of the device 200. For example, the storage component 240 may include a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optical disk, and / or a solid-state disk), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cartridge, a magnetic tape, and / or another type of non-transitory computer-readable medium, and a corresponding drive.

[0032] Input components 250 include components that allow device 200 to receive information, for example, via user input (e.g., a touch screen display, a keyboard, a keypad, a mouse, buttons, switches, and / or a microphone). Additionally or alternatively, input components 250 may include sensors for sensing information (e.g., a global positioning system (GPS) component, an accelerometer, a gyroscope, and / or an actuator). Output components 260 include components that provide output information from device 200 (e.g., a display, a speaker, and / or one or more light emitting diodes (LEDs)).

[0033] The communication interface 270 includes transceiver-like components (e.g., a transceiver and / or a separate receiver and transmitter) that enable the device 200 to communicate with other devices, for example, via a wired connection, a wireless connection, or a combination of a wired connection and a wireless connection. The communication interface 270 may allow the device 200 to receive information from another device and / or provide information to another device. For example, the communication interface 270 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, a universal serial bus (USB) interface, a Wi-Fi interface, a cellular network interface, etc.

[0034] Device 200 may perform one or more of the processes described herein. Device 200 may perform these processes in response to processor 220 executing software instructions stored by a non-transitory computer-readable medium, such as memory 230 and / or storage component 240. A computer-readable medium is defined herein as a non-transitory memory device. A memory device may include memory space within a single physical storage device or memory space distributed across multiple physical storage devices.

[0035] The software instructions may be read into the memory 230 and / or storage component 240 from another computer-readable medium or from another device via the communication interface 270. When executed, the software instructions stored in the memory 230 and / or storage component 240 may cause the processor 220 to perform one or more processes described herein. Additionally or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to perform one or more processes described herein. Thus, the implementations described herein are not limited to any specific combination of hardware circuitry and software.

[0036] Figure 2 The number and arrangement of components shown are provided as examples. In practice, device 200 may include additional components, fewer components, different components, or components that are different from those in the example. Figure 2 Additionally or alternatively, one set of components (eg, one or more components) of device 200 may perform one or more functions described as being performed by another set of components of device 200.

[0037] The 5G media streaming (5GMS) system can be an assembly of application functions (AFs), application servers and interfaces of the 5G media streaming architecture, which supports downlink media streaming services, or supports uplink media streaming services, or supports both. The 5GMS application provider may include a party that interacts with the functions of the 5GMS system and provides a 5GMS-aware application (Aware Application) that interacts with the functions of the 5GMS system. The 5GMS-aware application may refer to an application in the user equipment (UE) provided by the 5GMS application provider, which contains the service logic of the 5GMS application service and interacts with other 5GMS clients and network functions via the interfaces and application programming interfaces (APIs) defined in the 5GMS architecture. The 5GMS client may refer to a UE function, which can be a 5GMS downlink (5GMSd) client, a 5GMS uplink (5GMSu) client, or both.

[0038] A 5GMSd client may refer to a UE function that includes at least a 5G media streaming player and a media session handler for downlink streaming and may be accessed through a well-defined interface / API. A 5GMSu client may refer to an initiator of a 5GMSu service that may be accessed through a well-defined interface / API. A 5GMSu media streamer may refer to a UE function that enables uplink streaming of media content to an Application Server (AS) function of a 5GMS application provider and interacts with a 5GMSu aware application for media capture and subsequent streaming and a media session handler for media session control.

[0039] Dynamic policy may refer to dynamic policy and charging control (PCC) rules for uplink or downlink application flows during a media session. An egest session may refer to an uplink media streaming session from a 5GMS AS to a 5GMSu application provider. An ingest session may refer to a session for uploading media content to a 5GMSdAS. A policy template may refer to a collection of (semi-static) policy or control function (PCF) / network exposure function (NEF) API parameters that are specific to a 5GMS application provider and the resulting PCC rules. A policy template ID may identify the desired policy template that is used by the 5GMSd application function (AF) to select the appropriate PCF / NEF API for the 5G system, enabling the PCF to compile the desired PCC rules. A Media Player Entry may refer to a document or a pointer to a document that defines a media presentation (e.g., a Media Presentation Description (MPD) for DASH or a Uniform Resource Locator (URL) for a video clip file). A Media Streamer Entry may refer to a pointer (e.g., in the form of a URL) that defines the entry point for an uplink media streaming session. A Presentation Entry may refer to a document or a pointer to a document that defines an application presentation (e.g., an HTML5 document).

[0040] A provisioning session may refer to a data structure provided at an interface (M1d) by a 5GMSd application provider that configures 5GMSd features associated with a set of 5GMSd-aware applications. A 5GMSd media player may refer to a UE function that enables playback and rendering of media presentations based on media play entries and exposes some basic controls, such as play, pause, seek, stop, to 5GMSd-aware applications. Server access information may refer to a set of parameters and addresses (including 5GMSd AF and 5GMSd AS addresses) required to activate a receive streaming session. Service and content discovery may refer to functions and procedures provided by a 5GMSd application provider to 5GMS-aware applications that enable end users to discover available streaming services and content offerings and select specific services or content items to access. A service announcement may refer to a procedure performed between a 5GMS-aware application and a 5GMS application provider, enabling the 5GMS-aware application to obtain 5GMS service access information directly or by referencing the information.

[0041] A third-party player may refer to a portion of an application that uses the API to perform selected 5GMSd functions to playback media content. A third-party uplink streamer may refer to a portion of an application that uses the API to perform selected 5GMSd functions to capture and stream media content.

[0042] The 5G media streaming architecture defined in 3GPP TS 26.501 (3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; 5G Media Streaming (5GMS); General Description and Architecture (Release 16), V16.3.1) only defines the general architecture for uplink and downlink media streaming. Furthermore, 3GPP TS 26.512 defines the concept of uplink streaming, where content is streamed from a device to an external service provider.

[0043] Figure 3 The 5G media streaming architecture for uplink streaming is shown.

[0044] Figure 3Figure 3 is a diagram of a media architecture 300 for media uplink streaming. A 5GMSu application provider 301 can use the 5GMSu for uplink streaming services. The 5GMSu application provider 301 can provide a 5GMSu-aware application 302 on a UE 303 to use a 5GMSu client 304 and network functions using the interfaces and APIs defined in the 5GMSu. The 5GMSuAS can be an AS dedicated to 5G media uplink streaming. The 5GMSu client 304 can be a function within the UE 303 dedicated to 5G media uplink streaming.

[0045] 5GMSu AF 306 and 5GMSu AS 305 may be Data Network (DN) 307 functions. Functions in a trusted DN may be trusted by the operator's network. Therefore, the AF in a trusted DN may communicate directly with all 5G Core functions. Functions in an external DN may communicate only with 5G Core functions via NEF 308 using link 320. In some embodiments, link 320 may be associated with N33, which may be an API.

[0046] The media architecture 300 can connect the UE 303 internal functions and the relevant network functions for 5G media uplink streaming. Accordingly, the media architecture 300 can include multiple functions. For example, the 5GMSu client 304 on the UE 303 can be the initiator of the 5GMSu services that can be accessed through the interface / API. The 5GMSu client 304 can include two sub-functions, a media session handler 309 and a media streamer 310. The media session handler 309 can communicate with the 5GMSu AF 306 to establish, control and support the delivery of media sessions. The media session handler 309 can open an API used by the 5GMSu aware application 302. The streamer 310 can communicate with the 5GMSu AS 305 to stream media content and provide services for media capture and streaming to the 5GMSu aware application 302, and provide services for media session control to the media session handler 309. The 5GMSu-aware application 302 can control the 5GMSu client 304 by implementing external applications or content service provider specific logic and enabling the establishment of media sessions. The 5GMSu AS 305 can host the 5G media functionality. The 5GMSu application provider 301 can be an external application or content specific media functionality that uses 5GMSu to stream media from the 5GMSu-aware application 302, such as media storage, consumption, transcoding and redistribution. The 5GMSu AF 306 can provide various control functions to the media session processor 309 of the UE 303 and / or the 5GMSu application provider 301. The 5GMSu AF 306 can relay or initiate requests to different PCFs 311 for processing or interact with other network functions.

[0047] The media architecture 300 may include a number of different interfaces. For example, link 321 may be associated with M1u, which may be a 5GMSu provisioning API exposed by the 5GMSu AF 306 to provision the use of the media architecture 300 and obtain feedback. Link 322 may be associated with M2u, which may be a 5GMSu publishing API exposed by the 5GMSu AS 305 and used when selecting a 5GMSu AS 305 in a trusted DN (e.g., DN 307) to receive content for a streaming service. Link 323 may be associated with M3u, which may be an internal API for exchanging information within a trusted DN such as DN 307 for content hosted by the 5GMSu AS 305. Link 324 may be associated with M4u, which may be a media uplink streaming API exposed by the 5GMSu AS 305 to the streaming media player 310 to stream media content. 302. Link 324 may be associated with M5u, which may be a media session handling API exposed by the 5GMSuAF 306 to the media session processor for media session handling, control, and assistance, which may also include appropriate security mechanisms, such as authorization and authentication. Link 325 may be associated with M5u, which may be a media session handling API exposed by the 5GMSuAF 306 to the media session processor for media session handling, control, and assistance, which may also include appropriate security mechanisms, such as authorization and authentication. Link 326 may be associated with M6u, which may be a UE 303 media session handling API exposed by the media session processor 309 to the 5GMSu-aware application 302 for using 5GMSu functions. Link 327 may be associated with M7u, which may be a UE streaming player API exposed by the streaming player 310 to the 5GMSu-aware application 302 and the media session processor 309 for using the streaming player 310. Link 328 may be associated with M8u, which may be an application API for information exchange between the 5GMSu-aware application 302 and the 5GMSu application provider 301, for example, providing service access information to the 5GMSu-aware application 302.

[0048] As described above, 3GPP TS 26.501 defines the general architecture for uplink and downlink media streaming, and 3GPP TS 26.512 defines the concept of uplink streaming for streaming content from a device to an external service provider. According to some embodiments, architectures and call flows for various collaborative scenarios for uplink streaming may be provided.

[0049] Figure 4 is a diagram of a media architecture 400 for media uplink streaming, according to an embodiment. Figure 4As can be seen in FIG, media architecture 400 may be similar to media architecture 300, except that, in media architecture 400, 5GMSu-aware applications 302, 5GMSu AF 306, and 5GMSu AS 305 communicate with 5GMSu application providers 401. In some embodiments, 5GMSu application providers 401 may be included in external DN 407 instead of trusted DN 307.

[0050] In some embodiments, the media architecture 400 may be relevant to a collaborative scenario involving deploying a 5G MSu AS 305 in a trusted DN 307 solely for the collaborative media plane. In some embodiments, the 5G MSu system provider associated with the trusted DN 307 may provide uplink streaming capabilities as a service to the 5G MSu application provider 401 in the external DN 407.

[0051] The components of media architecture 300 and media architecture 400 may be implemented using hardware, firmware, software, or a combination of hardware and software. For example, the components of media architecture 300 and 400 may be implemented as hardware circuits, one or more microchips, ASICs, one or more processors executing computer program code stored in at least one memory (e.g., RAM, ROM, or other dynamic or static memory devices), one or more microcontrollers, one or more DSPs, FPGAs, other types of processing components / circuits, or any combination of the foregoing.

[0052] As mentioned above, while 3GPP TS 26.501 and 3GPP TS 26.512 define general uplink processing, they do not define metrics for uplink streaming. Similarly, the DASH-IF access protocol does not define any metrics for uplink streaming. Although metrics can be used for downlink streaming of media content, there is no standard definition of metrics for uplink streaming sessions.

[0053] Therefore, there is a need for the definition of uplink metrics, i.e., specific parameters that can be measured and monitored by uplink streaming clients and provided to service providers to dynamically improve the delivery network or for further analysis of the entire delivery system. Embodiments of the present application aim to define a set of metrics for uplink streaming, in particular for push / pull based protocols.

[0054] According to one aspect of the present application, an average throughput object can be used to measure and monitor uplink flows. Because media in many uplink flows is uploaded using a push / pull protocol, the average throughput object can include the number of bytes pushed / pulled within a given predetermined time interval. The average throughput object can also include an inactive flag to indicate whether the uplink flow has become inactive. Table 1 discloses further details associated with the average throughput object.

[0055] Table 1 - Average throughput of objects

[0056]

[0057] According to one aspect of the present application, an activation list can be used as a metric. The activation list can report the activation period during the uplink session. In the uplink period during the uplink monitoring period, samples and / or data packets of media content and other information can be continuously encoded and uploaded. The activation list can be a list of these uplink periods, in which continuous transmission is started by user action in each uplink period and continues until the transmission is temporarily suspended due to user pause or due to failure. In some embodiments, the uplink period can be started at a specified time. Table 2 discloses further details of the activation list. In some embodiments, the activation list can be referred to as an activation list report.

[0058] Table 2 - Activation List Report

[0059]

[0060]

[0061] According to one aspect of the present application, media information metrics can be used to measure and monitor uplink streaming. Media information metrics can be used to report information about media and media quality, including but not limited to media type, encoding format, codec profile and level, width and height, and other information as shown in Table 3.

[0062] Table 3 - Media Information for Quality Reporting

[0063]

[0064] According to one aspect of the present application, device information metrics can be used to measure and monitor the video resolution / image resolution at the user device. Metrics can be recorded at the beginning of each uplink cycle and whenever characteristics change during a session (for example, if the device is rotated from horizontal to vertical orientation, or if the capture resolution changes due to a change in the capture camera). Table 4 includes further details of the device information metrics. If a single metric cannot be recorded, its value should be set to 0 (zero).

[0065] Table 4 - Device Information

[0066]

[0067] According to embodiments of the present application, the characteristics of a single uplink stream can be captured, measured, and monitored. Media content uploaded via a single uplink stream and its attributes can be monitored and measured. When measuring and monitoring downlink streaming, dynamic switching between various streams can occur, which can reduce the accuracy of the measurements. However, since uplink streaming typically includes a single stream of media content, the efficiency and accuracy of the measured and monitored metrics can be improved by monitoring the characteristics of a single stream during uplink streaming.

[0068] In contrast to the dynamic switching between various streams during downlink streaming, uplink streaming tends to consist of a single stream. Therefore, this application only proposes to capture the features of a single stream during uplink streaming.

[0069] Figure 5 is a flow diagram of an example process 500 for monitoring user equipment during 5G MS uplink streaming corresponding to media architecture 300 and media architecture 400 according to an embodiment.

[0070] At operation 505, an average throughput object for a predetermined interval may be determined. As an example, one of the user device 303, the 5GMSu aware application 302, and the 5GMSu client 304 may determine the average throughput object for the predetermined interval. In some embodiments, the average throughput object may include the number of bytes uploaded over the entire predetermined interval. The predetermined interval may be measured in seconds or milliseconds and may be determined by a service provider. In some embodiments, the average throughput object may also include the average number of content bytes uploaded over the entire predetermined interval. In some embodiments, the average throughput object may also include an access bearer indicating the connection over which the average throughput object is reported. In some embodiments, the average throughput object also includes an activation time and an inactivity type, wherein at least one push request is not completed during the activation time, and the inactivity type indicates the type of inactivity within the predetermined interval.

[0071] At operation 510, an activation list report associated with an uplink streaming session can be generated. As an example, one of the user equipment 303, the 5GMSu perception application 302, and the 5GMSu client 304 can generate an activation list report associated with uplink streaming. In some embodiments, the activation list report can include a list of uplink cycles for which content is uplink streamed. In some embodiments, each uplink cycle in the uplink cycle list can be started based on a user action associated with uploading media content. In some embodiments, each uplink cycle in the uplink cycle list can end when the upload of media content is paused or the upload of media content fails. In some embodiments, the activation list report can include one or more activation list objects, and each of the one or more activation list objects can be associated with an uplink cycle in the uplink cycle list.

[0072] In some embodiments, each of the one or more activation list objects may include a start type attribute indicating the type of user action that started the corresponding associated uplink period. In some embodiments, each of the one or more activation list objects may include a stop cause attribute indicating the reason why the corresponding associated uplink period ended. In some embodiments, each of the one or more activation list objects may include an identification of the quality metric being used, a target average quality of the media content, and a target average bit rate for the media content.

[0073] At operation 515, media information objects associated with the media content uploaded during the uplink streaming session may be determined. As an example, one of the user device 303, the 5GMSu aware application 302, and the 5GMSu client 304 may determine the media information objects associated with the media content uploaded during the uplink streaming session. In some embodiments, the media information objects associated with the media content may include a media content type and a representation type object. The representation type object may include media content information including, but not limited to, average and maximum bandwidth, width and height, media type (mimeType), and codec parameters (profile and level).

[0074] In some embodiments, process 500 may also include determining device information metrics. The device information metrics may include a timestamp, the width of the displayed video in screen pixels, the height of the displayed video in screen pixels, and the horizontal angle of the user device screen to the user's eyes.

[0075] At operation 520, the average throughput object, activation list report, and media information object may be sent to a 5GMS application function or a 5GMS application provider. As an example, the 5GMSu client 304 may send the average throughput object, activation list report, and media information object to the 5GMSu AF 306. In some embodiments, the 5GMSu awareness application 302 may send the average throughput object, activation list report, and media information object to the 5GMSu application provider 301. In some embodiments, the average throughput object, activation list report, media information object, and device information metrics may be sent to a 5GMS application function or a 5GMS application provider.

[0076] In some embodiments, user equipment monitoring during a 5GMS uplink streaming session may be monitored on a single stream.

[0077] In addition, the proposed method can be implemented by a processing circuit (eg, one or more processors or one or more integrated circuits). In one example, one or more processors execute a program stored in a non-transitory computer-readable medium to perform one or more proposed methods.

[0078] The above-described techniques may be implemented as computer software using computer-readable instructions and physically stored in one or more computer-readable media.

[0079] The embodiments of the present application can be used alone or in any combination. In addition, each embodiment (and method thereof) can be implemented by a processing circuit (e.g., one or more processors or one or more integrated circuits). In one example, one or more processors execute a program stored in a non-transitory computer-readable medium.

[0080] The above disclosure provides illustration and description, but is not intended to be exhaustive or to limit the implementations to the precise form disclosed. Modifications and variations are possible in light of the disclosure or may be acquired from practice of the implementations.

[0081] As used herein, the term "component" is intended to be broadly interpreted as hardware, firmware, or a combination of hardware and software.

[0082] Even if combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of possible implementations. In fact, many of these features can be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may only be directly dependent on one claim, the disclosure of possible implementations includes each dependent claim in combination with every other claim in the claim set.

[0083] Any element, action or instruction used herein shall not be construed as critical or necessary unless so explicitly described. In addition, as used herein, the articles "one" and "an" are intended to include one or more items and can be used interchangeably with "one or more". In addition, as used herein, the term "set" is intended to include one or more items (e.g., related items, unrelated items, a combination of related items and unrelated items, etc.), and can be used interchangeably with "one or more". In the case where the intention is only one item, the term "one" or similar language is used. In addition, as used herein, the terms "having", "containing", "having" or similar terms are intended to be open terms. In addition, the phrase "based on" means "based at least in part on", unless otherwise explicitly stated.

Claims

1. A method for monitoring a user equipment during a 5G media streaming 5GMS uplink streaming session, characterized in that The method is executed by at least one processor, and includes: determining an average throughput object for a predetermined interval, wherein the average throughput object comprises a number of bytes of media content uploaded during the predetermined interval; generating an activation list report associated with the 5GMS uplink streaming session, wherein the activation list report includes a list of uplink periods during which content is uplink streamed; determining a media information object associated with the media content uploaded during the 5GMS uplink streaming session; wherein the media information object comprises a media content type and a representation type object, the representation type object comprising media content information, the media content information comprising at least one of: average and maximum bandwidth, width and height, media type, and encoder parameters; The average throughput object, the activation list report and the media information object are transmitted to a 5GMS application function.

2. The method according to claim 1, characterized in that The user equipment monitoring the 5GMS uplink streaming session is monitored on a single stream.

3. The method according to claim 1, characterized in that The average throughput object also includes an average number of content bytes uploaded during the predetermined interval.

4. The method according to claim 1, wherein The average throughput object further includes an access bearer indicating a connection for which the average throughput object is reported.

5. The method according to claim 1, wherein The average throughput object further includes an activation time and an inactivity type within the predetermined interval, wherein at least one push request is not completed within the activation time, and the inactivity type indicates a type of inactivity within the predetermined interval.

6. The method according to claim 1, characterized in that Each uplink period in the uplink period list starts based on a user action associated with uploading the media content, and wherein each uplink period in the uplink period list ends when uploading of the media content is paused or when uploading of the media content fails.

7. The method according to claim 6, characterized in that The active list report includes one or more active list objects, and wherein each of the one or more active list objects is associated with an uplink cycle in the uplink cycle list.

8. The method according to claim 7, characterized in that Each of the one or more activation list objects includes a start type attribute and a stop cause attribute, wherein the start type attribute indicates a type of user action to start the corresponding related uplink period and the stop cause attribute indicates a reason for ending the corresponding related uplink period.

9. The method according to claim 7, characterized in that Each of the one or more active list objects includes an identification of a quality metric being used, a target average quality for the media content, and a target average bit rate for the media content.

10. The method according to any one of claims 1 to 9, characterized in that The method further comprises: determining device information metrics, wherein the device information metrics include a timestamp, a width of the displayed video in screen pixels, a height of the displayed video in screen pixels, and a horizontal angle of the user device screen toward the user's eyes; and The device information metrics are transmitted to the 5GMS application function.

11. A device for monitoring a user equipment during a 5G media streaming 5GMS uplink streaming session, characterized in that The device comprises: at least one memory configured to store program code; and At least one processor is configured to read the program code and implement the method according to any one of claims 1 to 10 according to instructions of the program code.

12. A non-transitory computer-readable medium, characterized in that Instructions are stored, comprising one or more instructions that, when executed by one or more processors of a device used for 5G media streaming 5GMS uplink streaming session, cause the one or more processors to implement the method according to any one of claims 1 to 10.