Abstract: The present disclosure discloses a method (400) for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions. The method comprises receiving a plurality of payloads (106) from a plurality of users (104) and generating an aggregated data stream. Further, the method comprises identifying one or more anomalies associated with the plurality of payloads (106) and segmenting the plurality of payloads 106 into one or more clusters. Further, the method comprises performing root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads106 segmented in the one or more clusters. Finally, the method comprises enhancing QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause. Figure 1
DESC:Title: METHOD AND APPARATUS FOR ENHANCING QUALITY OF EXPERIENCE (QoE) OF VIEWING MEDIA CONTENT
TECHNICAL FIELD
The present disclosure generally relates to provision of media streaming on networks. More particularly, the present disclosure relates to a method and apparatus for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions.
BACKGROUND
In the era of digital media consumption, video streaming platforms have become a dominant means for users to access entertainment and informational content. The success of these platforms hinges on providing a seamless and enjoyable user experience, often measured by the Quality of Experience (QoE) of the users while watching videos. QoE is a comprehensive metric that takes into account various factors, such as video quality, playback smoothness, loading times, and playback interruptions, among other factors, which contribute to the overall user satisfaction.
The streaming platforms continuously strive to enhance the QoE for their users to maintain and improve user engagement. Currently, there are several methods available to monitor and improve QoE, but most of them have significant drawbacks. The existing methods tend to be reactive and slow in nature, leading to delay in identifying the associated problem and suggesting their resolution. One of the common existing methods may include conducting user surveys where users are asked to rate their QoE on a scale of 1 to 10. While this can provide valuable feedback on the overall user experience, it is a subjective measure and may not capture the intricacies of user experience in real-time. Another common existing method may include collecting feedback from users through feedback forms, live chat, email, or social media. While this can help identify specific issues, it relies heavily on users proactively reporting problems and may not capture all instances of poor QoE.
Yet another common existing method may include analyzing video session recordings to understand how users interact with the streaming application. This method can reveal potential issues but lacks real-time feedback and scalability. Further, yet another common existing method may include application monitoring by tracking various metrics, like video quality, buffering, and playback errors to identify problems from historical data pertaining to the users. While this approach can help in analyzing past issues, it may not address problems during ongoing user sessions due to lacks real-time feedback and scalability.
Thus, there is a need for an improved apparatus and method that can overcome the above-stated disadvantages in order to enhance Quality of Experience (QoE) of viewing media content during live playback sessions.
The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
SUMMARY
In an embodiment, the present disclosure discloses a method for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions. The method comprises receiving a plurality of payloads from a plurality of users during respective user playback session and generating an aggregated data stream based on the plurality of payloads. Further, the method comprises identifying, from the aggregated data stream, one or more anomalies associated with the plurality of payloads during the user playback sessions. Furthermore, the method comprises segmenting the plurality of payloads into one or more clusters based on the identified one or more anomalies associated with each of the plurality of payloads. Thereafter, the method comprises performing root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads segmented in the one or more clusters. Finally, the method comprises enhancing QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause.
In an embodiment, the present disclosure discloses an apparatus for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions. The apparatus comprises a processor and a memory communicatively coupled with the processor and the processor is configured to receive a plurality of payloads from a plurality of users during respective user playback session and generate an aggregated data stream based on the plurality of payloads. Further, the processor is configured to identify, from the aggregated data stream, one or more anomalies associated with the plurality of payloads during the user playback sessions. Furthermore, the processor is configured to segment the plurality of payloads into one or more clusters based on the identified one or more anomalies associated with each of the plurality of payloads. Thereafter, the processor is configured to perform root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads segmented in the one or more clusters. Finally, the processor is configured to enhance QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
The novel features and characteristics of the disclosure are set forth in the appended claims. The disclosure itself, however, as well as a preferred mode of use, further objectives, and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying figures. One or more embodiments are now described, by way of example only, with reference to the accompanying figures wherein like reference numerals represent like elements and in which:
Figure 1 illustrates an exemplary environment in which an apparatus is configured to enhance Quality of Experience (QoE) of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
Figure 2 illustrates a detailed block diagram of the apparatus of Figure 1, in accordance with some embodiments of the present disclosure.
Figures 3a and 3b illustrate detailed block diagrams of exemplary environments for enhancing QoE of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
Figure 4 shows a flowchart illustrating a method for enhancing QoE of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
It should be appreciated by those skilled in the art that any block diagram herein represents conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION
In the present document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternatives falling within the scope of the disclosure.
The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device, or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or apparatus.
Figure 1 illustrates an exemplary environment 100 in which an apparatus 102 is configured to enhance Quality of Experience (QoE) of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
As illustrated in Figure 1, the exemplary environment 100 may be a media streaming environment or any Over The Top (OTT) platforms. The media streaming environments or the OTT platforms may be an online provider of entertainment that may deliver content over an Internet connection to user’s device based on subscription. The exemplary environment 100 may comprise an apparatus 102, plurality of users 104, a plurality of payloads 106. The apparatus 102 may comprise an interface 108, a memory 110 and a processor 112. The interface 108, a memory and the processor are explained in detail in the description of Figure 2. The environment 100 provides an output 114 by processing the plurality of payloads.
Though this specification, for simplicity and consistency, considers two or more users being functioned in the environment, those of ordinary skill in the art will appreciate that the technique disclosed in the present disclosure may be implemented upon ‘n’ number of users. Those of ordinary skill in the art will also appreciate that the techniques disclosed in of the present disclosure can be implemented by the apparatus 102 itself or by a server, or by a combination thereof. In other words, the apparatus 102 may be positioned within premises and has the data processing capability for enhancing QoE of viewing media content during live playback sessions.
The apparatus 102 may be a device connected to the Internet. The apparatus 102 may be implemented in a variety of devices, including, but not limited to, iOS and android enabled mobile devices, televisions, Smart televisions, web devices, and like. In another example, the apparatus 102 may be implemented on a mobile device, a tablet, a laptop, a desktop or any device that can be connected to the Internet and accessible to the user 104.
The plurality of users 104 may be users or members subscribed with different plans for the media streaming. The plurality of payloads 106 may be actual data that is transmitted over a network. In another example, the plurality of payloads 106 may be content of video, such as video frames, audio samples, and any other relevant data required for video playback.
Initially, the apparatus 102 may receive the plurality of payloads 106 from the plurality of users during respective user playback session. The plurality of payloads 106 associated with the plurality of users 104 may be received over the network.
After receiving the plurality of payloads 106, the apparatus 102 may generate an aggregated data stream based on the plurality of payloads 106. Specifically, the plurality of payloads 106 may be received in the form of data stream in real time. In a non-limiting embodiment, the data stream may correspond to a big chunk of data. The big chunk of data may be collected from respective user devices associated with the plurality of users 104 and aggregated to generate the aggregated data stream. For example, the data stream may include, without limitation, one or more video streams, high frequency data from probe Software Development Kit (SDK) and the like. The probe SDK may be integrated within an OTT application on respective user devices. The probe SDKs may extract and periodically send a real-time QOE metrics to the apparatus 102.
After generating the aggregated data stream, the apparatus 102 may identify, from the aggregated data stream, one or more anomalies associated with the plurality of payloads 106 during the user playback session. The one or more anomalies may be observations that diverge from otherwise well-structured or patterned data. The one or more anomalies may be indicated as unexpected spikes in time series data, breaks in periodicity, or unclassifiable data points, or a combination thereof. In one example, the apparatus 102 may monitor one or more parameters associated with media content streaming and identify one or more anomalies. For example, the apparatus 102 may monitor data stream coming from the user’s device. The one or more anomalies may be identified based on userID, platform, SDK version, videold, time stamp, streaming type, Digital Rights Management (DRM) protected or not, DRM, a resolution, a duration of last reporting, bit rate switch, stall, rebuffering ratio, start time to load time, Acodec, Vcodec, playtime, playback Point of Sale (POS) in seconds, UdID, sessionID, version ID and the like, or a combination thereof.
In another example, the apparatus 102 in association with Artificial Intelligence (AI) based module may identify the one or more anomalies associated with the plurality of payloads 106. The AI model may be trained by past set (or historical data) of data streams and associated anomalies. The AI model may receive the aggregated data stream in real-time and subsequently, filter a set of anomalous rows from the aggregated data stream. Further, the apparatus 102 may process the set of filtered anomalous rows and may determine the one or more anomalies based on the processing of the set of anomalous rows associated with the aggregated data stream. Accordingly, the apparatus 102 may identify the one or more anomalies associated with the plurality of payloads 106. The one or more anomalies in streaming media content may include, without limitation, rebuffering ratio, playback failures, ended plays, rendering quality, average bitrate, average framerate, bandwidth, single-sign-on error and the like, or a combination thereof.
After identifying the one or more anomalies, the apparatus 102 may segment the plurality of payloads 106 into one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads 106. Specifically, the apparatus 102 may divide the filtered set of anomalous rows. The set of anomalous rows comprises the one or more clusters of the plurality of payloads with similar anomalies. Subsequently, the apparatus 102 may process the divided anomalous rows for segmenting the plurality of payloads 106 into one or more clusters.
For example, the apparatus 102 may create the cluster group by segmenting the plurality of payloads 106. The cluster group may include a plurality of clusters (for example, cluster 1, cluster 2, and cluster 3) with each cluster having payloads with similar anomalies. For instance, the cluster 1 may include payload 1 and payload 2. The payload 1 and the payload 2 may include similar anomalies. Similarly, the cluster 2 may include payload 10 and payload 20. The payload 10 and the payload 20 may include similar anomalies.
After segmenting the plurality of payloads, the apparatus 102 may perform root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads 106 segmented in the one or more clusters. The root cause analysis may be performed to classify the one or more clusters.
Specifically, the apparatus 102 may predict the root cause along with a root cause score for the one or more anomalies associated with each of the payloads in the one or more clusters. Subsequently, the apparatus 102 may map the one or more clusters of the plurality of payloads 106 to the predicted root cause along with the root cause score, and determine the associated root cause for the one or more anomalies based on the mapping of the one or more clusters to the predicted root cause along with the root cause score. The one or more clusters may be defined under each predicted root cause. By mapping the one or more clusters with predicted root cause and the root cause score, the apparatus 102 may identify the root cause for the one or more clusters. The predicted root cause may comprise at least one of: Software Development Kit (SDK) version, Content Delivery Network (CDN), content partner, and device parameters. In general, SDK is a set of tools and libraries provided by a third-party to enable developers to integrate specific functionalities into one or more applications. An outdated or incompatible SDK version in any video streaming application or platform may lead to unexpected behaviours, performance issues, or even crashes. In one example, the apparatus 102 may predict the root cause as the SDK version based on the detected anomalies that are associated with a particular SDK version.
The CDNs may be used to distribute video content efficiently to the plurality of users 104 by caching and delivering content from geographically distributed servers. For example, the apparatus 102 may predict the root cause as the CDN if there are issues with the CDN, such as server outages, misconfigurations, or network problems, which results in video buffering, delays, or artifacts in the streaming video. In an example, anomalies in the streaming video may be linked to specific CDN providers or locations.
The apparatus 102 may predict the root cause as the content partner if anomalies in the streaming video is caused by issues with the content partner that provides video content, such as problems with encoding of the video, incorrect or corrupted files, or issues with the metadata associated with the video content. The one or more anomalies related to the content partners may manifest as video quality problems, playback errors, or missing content.
The video streaming experiences may vary depending on a device used to access the video content. Different devices may have different hardware capabilities, screen resolutions, and network connectivity. The one or more anomalies in the streaming video may be correlated with specific device parameters, indicating that certain devices are experiencing issues while others are not. For example, a particular device might struggle with decoding high-definition video, leading to dropped frames or stuttering. In this example, the apparatus may predict the root cause as device parameters.
In a non-limiting embodiment, the root cause score comprises a metric or a numerical value assigned to the root cause. For example, the root cause depends on a frequency of occurrence of a particular anomaly, severity of the anomaly, number of users affected by the anomaly, and a potential for recurrence, or a combination thereof.
The root cause score may be predicted for one or more clusters defined under each root cause to identify anomalous clusters out of the plurality of clusters. The root cause score may be defined as ratio of frequency of sessions under each cluster to the total number of sessions detected as anomalous over a certain time window. In an example, for time window t, the root cause score of a cluster C may be calculated using below equation:
Root Cause Score = (Number of anomaly sessions under Cluster C over time time window t)/(Total number of anomaly sessions over time window t)
In one example, to identify anomalous clusters out of the one or more clusters, the apparatus 102 may filter set of anomalous clusters out of the plurality of clusters based on the root cause score. The one or more clusters having high root cause scores may be referred to as critical clusters.
Finally, after performing the root cause analysis, the apparatus 102 may enhance QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies associated with each of the payloads segmented in the one or more clusters based on the identified root cause.
Specifically, the apparatus 102 may compare the predicted root cause score with a predefined root cause score and subsequently, apply, using a Machine Learning (ML) model, a predefined mitigation strategy for the identified one or more anomalies when the predicted root cause score is above the predefined root cause score. For example, when the predicted root cause score is exceeding the predefined root cause score, the apparatus 102 apply the predefined mitigation strategy. The predefine mitigation strategy may be a proactive mitigation measures at various levels, the apparatus 102 may apply to minimize QoE related disruptions and maintain a high standard of media content streaming performance that may contribute to increase user experience.
In one embodiment, the apparatus 102 may identify the root cause as device parameters. Consequently, the apparatus 102 may apply mitigation on the identified root cause using the ML model and may configured the device parameters before a next playback session. Similarly, if the apparatus 102 identifies that the root cause as at least one of SDK version, the CDN, and the content partner, the apparatus may transmit a notification to an operator for mitigating the root cause. Accordingly, the output 114 (enhanced QoE for the plurality of users 104) may be obtained.
Figure 2 illustrates a detailed block diagram 200 of the apparatus 102 of Figure 1, in accordance with some embodiments of the present disclosure.
In an embodiment, the apparatus 102 may include an interface 108, a memory 110, a Central Processing Unit 112 (also referred as “CPUs” or “the one or more processors”). In some embodiments, the memory 110 may be communicatively coupled to the one or more processors 112. The memory 110 stores instructions executable by the one or more processors 112. The one or more processors 112 may comprise at least one data processor for executing program components for executing user or system-generated requests. The one or more processors 112 may perform one or more functions of the apparatus 102 for enhancing QoE of viewing media content during live playback sessions. The processor 112 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. The memory 110 may store instructions, executable by the one or more processors 112, which on execution, may cause the one or more processors 112 to enhance QoE of viewing media content during live playback sessions. The interface 108 may be coupled with the one or more processors 112 through which plurality of payloads 106 may be received. For example, the one or more processors 112 may communicate with network (not shown in Figure 1) to receive the one or more payloads 106. For example, the interface may be an Input/Output (I/O) interface 108 may enable the apparatus 102 to communicate with other computing devices, such as web servers and external data servers (not shown). For example, the I/O interface 108 may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, Local Area Network (LAN), cable, etc., and wireless networks, such as wireless LAN (WLAN), cellular network, or satellite network. In another example, the I/O interface 108 may include one or more ports for connecting many devices to one another or to another server.
In an embodiment, the one or more processor 112 may include one or more modules or hardware units, for e.g., a receiving unit 202, a generating unit 204, an identifying unit 206, a segmentation unit 208, a performing unit 210, and an enhancing unit 212, but not limited thereto. In some embodiments, the one or more modules or units may be software modules which may be stored in the memory 110. The one or more modules or hardware units may be configured to perform the various operations of the present disclosure to enhance QoE of viewing media content during live playback sessions.
Figures 3a and 3b illustrate a detailed block diagrams of exemplary environments 300a, 300b for enhancing QoE of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
Figures. 3a and 3b depict exemplary environments 300a and 300b, respectively, for enhancing QoE of viewing media content during live playback sessions. In particular, Figure 3a depicts the exemplary environment 300a for identifying one or more anomalies in a media content and their root causes, in accordance with an embodiment of the present disclosure. While Figure 3b depicts the exemplary environment 300b for mitigation of the detected anomalies in the media content in accordance with an embodiment of the present disclosure. The exemplary environments 300a and 300B are explained in the forthcoming paragraphs.
As shown in Figure 3a, the plurality of payloads (payload 1, payload 2, ... payload n) 106 may be received from a plurality of users 104. In one example, the plurality of payloads 106 may refer to actual data that is being transmitted over a network. In another example, the plurality of payloads 106 (payload 1, payload 2, ... payload n) may represent content of a video, such as video frames, audio samples, and any other relevant data required for video play back.
In an embodiment, when a user of the plurality of users 104 watches a video online, the video is partitioned into smaller unit called packets for transmission over the network. Each packet contains a part of the video’s payload along with some additional information, such as source address, destination address, metadata and like information. Further, the plurality of users 104 may be a group of users engaged in the streaming video. In an example, a user of the plurality of users 104 may watch the video on any media streaming platform or on any application installed in a communication device of the user. The plurality of payloads 106 (payload 1, payload 2, payload 3, … payload n) may be received from the plurality of users 104 at the data stream module 302 of the apparatus 102. The data stream module 302 may be configured to receive the plurality of payloads 106 from the plurality of users 104 as a data stream. Subsequently, the data stream module 302 may aggregate the data stream in real-time.
The aggregated data stream may be transmitted to the anomaly detection module 304 to identify the one or more anomalies. The anomaly detection module 304 may be an AI-based anomaly detection module. In an example, the anomaly detection module 304 may be trained by past set of media data and their associated anomalies. The anomaly detection module 304 may be configured to filter set of anomalous rows out of the set of data and outputs the anomaly detected against the respective payload. The anomaly detection module 304 may be configured to perform anomaly detection to identify QoE-related issues specific to different video platforms, including Android, iOS, Web, Android TV, Smart TV, and the like.
In the next step, the output of the anomaly detection module 304 may be transmitted to a data segmentation module 306. The data segmentation module 306 may be configured to perform data segmentation by sub-dividing the filtered set of anomalous rows into X sets 308 or X set cluster group 308 where the anomalous rows are clustered out based on the similar properties. In an embodiment, the data segmentation module 306 may be configured to output X set cluster group 308. The X set cluster group 308 may segregate the plurality of payloads 106 into one or more clusters (such as cluster 1, cluster 2 and cluster 3) with each cluster having payloads with similar anomalies. For example, as depicted in Figure 3A, cluster 1 includes payload 1, payload 5, and so on. The payloads 1 and 5 are grouped together in cluster 1 as the payloads 1 and 5 have similar anomalies detected by the anomaly detection module 304. In addition, cluster 2 includes payload 21 and payload 3 as the payloads 21 and 3 possess similar anomalies. Also, cluster 3 includes payload 11 and payload 50, as the payloads 11 and 50 have similar anomalies.
The one or more clusters (for example, cluster 1, cluster 2 and cluster 3) may be transmitted to the root cause analysis (RCA) classification module 310. The RCA classification module 310 may be configured to perform root cause analysis classification of the one or more clusters. In general, root cause analysis relates to an investigation that simply aims to determine real cause of problem/anomaly. The RCA classification module 310 may be configured to predict root cause 311 for each of the one or more clusters. In particular, the RCA classification module 310 may be configured to map the one or more clusters to predicted root cause of the anomalies detected by the anomaly detection module 304. In an example, a plurality of clusters may be defined under each predicted root cause. The predicted root cause 311 may comprise at least one of: Software Development Kit (SDK) version 312, Content Delivery Network (CDN) 314, content partner 316, and device parameters 318. Once, the root cause is predicted, the appropriate action may be taken to resolve the issue and improve overall video streaming experience for the plurality of users 104 as depicted in Figure 3b.
As shown in Figure 3b, mitigation of the detected anomalies in the media content streaming is depicted. The video QoE is enhanced by applying local intelligence mitigation and AI-based mitigations on a respective user player of a plurality of user devices with facilitation of the apparatus of Figure 2.
The monitoring dashboard module 320 may be configured to monitor parameters associated with the streaming data in real time. The parameters include but may not be limited to buffering time, reloading time, and video resolution during live video streaming. In addition, the monitoring dashboard module 320 may be associated with the anomaly detection module 304 of Figure 3a to detect anomalies in the streaming data in real time. The anomaly in the streaming data includes but may not be limited to rebuffering ratio, playback failures, ended plays, rendering quality, average bitrate, average framerate, bandwidth, and single-sign-on error. In an example, the monitoring dashboard module 320 may be configured to identify video sessions experiencing degraded User Experience Index (UEI).
If the RCA classification module 310 predicts that the root cause 311 as at least one of SDK version 312, the CDN 314, or content partner 316, then the associated payload may be sent to expert approval module 322 for manual attention/ analysis. The expert approval module 322 may be configured to classify an issue with at least one of the SDK version 312, CDN 314, or content partner 316. In an embodiment, the classification is performed based on at least one of: location, content partner, device (such as smartphone, smart TV, and the like), CDN, SDK version, and platform type (such as iOS, Android, WebOS, Linux-based OS and the like). Further, once the issue gets classified, the expert approval module 224 may be configured to notify technical team 326 of the classified issue. In addition, if the issue is not classified, the expert approval module 322 may notify third-party users 328. In an embodiment, the third-party users 328 may correspond to third-party vendors.
In an embodiment, if the RCA classification module 310 may predict the root cause 311 as device parameters, the associated payload data may then be transmitted to the self-healing module 324. The self-healing module 324 may be an AI-based module. The self-healing module 324 may be trained using historical data associated with anomalies along with root cause 311 and root cause score. In an embodiment, the self-healing module 324 may utilize ML algorithms to apply mitigation during the video playback session or before the next session by configuring device parameters including start-up buffer, rebuffering duration, buffering style (continuous/burst), and initial bitrate selection to adapt and manage factors degrading Users Experience Index (UEI). Device parameters may be set by the self-healing module 324 using pre-fed mitigation plan via local intelligence or machine learning recommended mitigation plan.
The mitigation of anomalies may happen proactively at device level, session level, location level, and platform level with facilitation of self-healing module 324. At the device level, the self-healing module 324 may be configured to adjust specific parameters that directly affect the user's playback experience such as start-up buffer, rebuffering duration, buffering style (continuous/burst), and initial bitrate selection. By fine-tuning the parameters in real-time, the self-healing module 324 may optimize video playback for individual user devices. In an embodiment, at the session level, the self-healing module 324 may be configured to continuously enhance QoE metrics during the entire user session.
Figure 4 shows a flowchart illustrating a method 400 for enhancing QoE of viewing media content during live playback sessions, in accordance with some embodiments of the present disclosure.
As illustrated in Figure 4, the method 400 may comprise one or more steps. The method 400 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform particular functions or implement particular abstract data types.
The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method. Additionally, individual blocks may be deleted from the methods without departing from the scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
At block 402, the method 400 comprises receiving a plurality of payloads 106 from a plurality of users 104 during respective user playback session. The operations of block 402 may be performed by the processor 112 (particularly by the receiving unit 202) of Figure 2.
At block 404, the method 400 comprises generating an aggregated data stream based on the plurality of payloads 106. The operations of block 404 may be performed by the processor 112 (particularly, by the generating unit 204) of Figure 2.
At block 406, the method 400 comprises identifying, from the aggregated data stream, one or more anomalies associated with the plurality of payloads 106 during the user playback sessions. The operations of block 406 may be performed by the processor 112 (particularly by the identifying unit 206) of Figure 2.
At block 408, the method 400 comprises segmenting the plurality of payloads 106 into one or more clusters based on the identified one or more anomalies associated with each of the plurality of payloads 106. The operations of block 408 may be performed by the processor 112 (particularly by the segmentation unit 208) of Figure 2.
At block 410, the method 400 comprises performing root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads segmented in the one or more clusters. The operations of block 410 may be performed by the processor 112 (particularly by the performing unit 210) of Figure 2.
At block 412, the method 400 comprises enhancing QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause. The operations of block 412 may be performed by the processor 112 (particularly by the enhancing unit 212) of Figure 2.
ADVANTAGES OF THE INVENTION
In the present disclosure, the plurality of payloads is segmented into one or more clusters and the root cause analysis is performed on the one or more clusters to identify the root cause for the anomalies and subsequently, the present disclosure provides predefined mitigation strategy for enhancing the QoE of viewing the media contents. Accordingly, the present disclosure provides an efficient processing of media data.
The present disclosure may identify the associated problem in the earlier stage and provide mitigation or resolution to the problem. Hence, the technology in the present disclosure tends to be reactive and fast in nature.
The present disclosure provides faster detection and resolution of QoE related issues. This enhances the seamless experience and increases the engagement for the streaming platform. Also, all QoE issues are noticed and subsequent disruption are avoided. As a result, the present disclosure provides enhanced data processing techniques.
The terms “including”, “comprising”, “having” and variations thereof mean “including but not limited to”, unless expressly specified otherwise. The enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise. The terms “a”, “an” and “the” mean “one or more”, unless expressly specified otherwise.
In alternative embodiments, certain operations may be performed in a different order, modified, or removed. Moreover, steps may be added to the above-described logic and still conform to the described embodiments. Further, operations described herein may occur sequentially or certain operations may be processed in parallel. Yet further, operations may be performed by a single processing unit or by distributed processing units.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
Referral Numerals:
Referral number Description
100 Exemplary environment
102 Apparatus
104 Plurality of users
106 Plurality of payloads
108 Interface
110 Memory
112 Processor
114 Output
202 Receiving unit
204 Generating unit
206 Identifying unit
208 Segmentation unit
210 Performing unit
212 Enhancing unit
302 Data stream module
304 Anomaly detection module
308 Cluster group
310 Root cause analysis classification module
311 Root cause
312 SDK version
314 CDN
316 Content partner
318 Device parameters
320 Monitoring dashboard module
322 Expert approval module
324 Self-healing module
326 Notification to technical team
328 Notification to third party users ,CLAIMS:1. A method (400) for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions, the method (400) comprising:
receiving a plurality of payloads (106) from a plurality of users (104) during respective user playback session;
generating an aggregated data stream based on the plurality of payloads (106);
identifying, from the aggregated data stream, one or more anomalies associated with the plurality of payloads (106) during the user playback sessions;
segmenting the plurality of payloads (106) into one or more clusters (308) based on the identified one or more anomalies associated with each of the plurality of payloads (106);
performing root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads (106) segmented in the one or more clusters; and
enhancing QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause.
2. The method (400) as claimed in claim 1, wherein identifying the one or more anomalies associated with the plurality of payloads (106) comprises:
providing the aggregated data stream to a Machine Learning (ML) model, the ML model is configured to filter a set of anomalous rows from the aggregated data stream, wherein the ML model is trained based on a set of historical data streams and associated anomalies;
processing the set of the filtered anomalous rows; and
determining the one or more anomalies based on the processing of the set of anomalous rows associated with the aggregated data stream.
3. The method (400) as claimed in claims 1 or 2, wherein segmenting the plurality of payloads (106) into one or more clusters comprises:
dividing the filtered set of anomalous rows, wherein the set of anomalous rows comprises the one or more clusters of the plurality of payloads (106) with similar anomalies; and
processing the divided anomalous rows for segmenting the plurality of payloads (106) into one or more clusters.
4. The method (400) as claimed in claim 1, wherein performing the root cause analysis for the payloads segmented in the one or more clusters comprises:
predicting the root cause along with a root cause score for the one or more anomalies associated with each of the payloads in the one or more clusters;
mapping the one or more clusters of the plurality of payloads (106) to the predicted root cause along with the root cause score; and
determining the associated root cause for the one or more anomalies based on the mapping of the one or more clusters to the predicted root cause along with the root cause score.
5. The method (400) as claimed in claim 4, wherein the root cause score comprises a metric or a numerical value assigned to the root cause, wherein the root cause depends on a frequency of occurrence of a particular anomaly, severity of the anomaly, number of users affected by the anomaly, and a potential for recurrence.
6. The method (400) as claimed in claims 1 or 4, wherein mitigating the identified one or more anomalies associated with each of the payloads segmented in the one or more clusters comprises:
comparing the predicted root cause score with a predefined root cause score; and
applying, using an ML model, a pre-defined mitigation strategy for the identified one or more anomalies when the predicted root cause score is above the predefined root cause score.
7. The method (400) as claimed in claim 1, further comprising:
applying, using an ML model, mitigation on the root cause by configuring the device parameters before a next playback session, if the root cause is identified as device parameters (318); or
transmitting a notification to an operator for mitigating the root cause, if the root cause is identified as at least one of: SDK version (312), CDN (314), and a content partner (316).
8. An apparatus (102) for enhancing Quality of Experience (QoE) of viewing media content during live playback sessions, the apparatus comprises:
a processor (112); and
a memory (110) communicatively coupled with the processor (112), wherein the processor (112) is configured to:
receive a plurality of payloads (106) from a plurality of users (104) during respective user playback session;
generate an aggregated data stream based on the plurality of payloads (106);
identify, from the aggregated data stream, one or more anomalies associated with the plurality of payloads (106) during the user playback sessions;
segment the plurality of payloads (106) into one or more clusters based on the identified one or more anomalies associated with each of the plurality of payloads (106);
perform root cause analysis on the one or more clusters to identify root cause for the associated anomalies for each of the plurality of payloads (106) segmented in the one or more clusters (308); and
enhance QoE of viewing the media content during live playback session by mitigating the identified one or more anomalies of each of the one or more clusters based on the identified root cause.
9. The apparatus (102) as claimed in claim 8, wherein to identify the one or more anomalies associated with the plurality of payloads (106), the processor (112) is configured to:
provide the aggregated data stream to a Machine Learning (ML) model, the ML model is configured to filter a set of anomalous rows from the aggregated data stream, wherein the ML model is trained based on a set of historical data streams and associated anomalies;
process the set of the filtered anomalous rows; and
determine the one or more anomalies based on the processing of the set of anomalous rows associated with the aggregated data stream.
10. The apparatus (102) as claimed in 8 or 9, wherein to segment the plurality of payloads (106) into one or more clusters, the processor (112) is configured to:
divide the filtered set of anomalous rows, wherein the set of anomalous rows comprises the one or more clusters of the plurality of payloads (106) with similar anomalies; and
process the divided anomalous rows for segmenting the plurality of payloads (106) into one or more clusters.
11. The apparatus (102) as claimed in claim 8, wherein to perform the root cause analysis for the payloads segments in the one or more clusters, the processor (112) is configured to:
predict the root cause along with a root cause score for the one or more anomalies associated with each of the payloads in the one or more clusters;
map the one or more clusters of the plurality of payloads (106) to the predicted root cause along with the root cause score; and
determine the associated root cause for the one or more anomalies based on the mapping of the one or more clusters to the predicted root cause along with the root cause score.
12. The apparatus (102) as claimed in claim 11, wherein the root cause score comprises a metric or a numerical value assigned to the root cause, wherein the root cause depends on a frequency of occurrence of a particular anomaly, severity of the anomaly, number of users affected by the anomaly, and a potential for recurrence.
13. The apparatus (102) as claimed in claim 8 or 11, wherein to mitigate the identified one or more anomalies associated with each of the payloads segmented in the one or more clusters, the processor (112) is configured to:
compare the predicted root cause score with a predefined root cause score; and
apply, using an ML model, a pre-defined mitigation strategy for the identified one or more anomalies when the predicted root cause score is above the predefined root cause score.
14. The apparatus (102) as claimed in claim 8, wherein the processor (112) is further configured to:
apply, using an ML model, mitigation on the root cause by configuring the device parameters before the next playback session, if the root cause is identified as device parameters (318); or
transmit a notification to an operator for mitigating the root cause, if the root cause is identified as at least one of: SDK version (312), CDN (314), and a content partner (316).
| # | Name | Date |
|---|---|---|
| 1 | 202321067284-STATEMENT OF UNDERTAKING (FORM 3) [06-10-2023(online)].pdf | 2023-10-06 |
| 2 | 202321067284-PROVISIONAL SPECIFICATION [06-10-2023(online)].pdf | 2023-10-06 |
| 3 | 202321067284-POWER OF AUTHORITY [06-10-2023(online)].pdf | 2023-10-06 |
| 4 | 202321067284-FORM 1 [06-10-2023(online)].pdf | 2023-10-06 |
| 5 | 202321067284-DRAWINGS [06-10-2023(online)].pdf | 2023-10-06 |
| 6 | 202321067284-DECLARATION OF INVENTORSHIP (FORM 5) [06-10-2023(online)].pdf | 2023-10-06 |
| 7 | 202321067284-Proof of Right [06-04-2024(online)].pdf | 2024-04-06 |
| 8 | 202321067284-PostDating-(04-10-2024)-(E-6-248-2024-MUM).pdf | 2024-10-04 |
| 9 | 202321067284-APPLICATIONFORPOSTDATING [04-10-2024(online)].pdf | 2024-10-04 |
| 10 | 202321067284-FORM-26 [15-10-2024(online)].pdf | 2024-10-15 |
| 11 | 202321067284-DRAWING [20-11-2024(online)].pdf | 2024-11-20 |
| 12 | 202321067284-CORRESPONDENCE-OTHERS [20-11-2024(online)].pdf | 2024-11-20 |
| 13 | 202321067284-COMPLETE SPECIFICATION [20-11-2024(online)].pdf | 2024-11-20 |
| 14 | 202321067284-Power of Attorney [21-11-2024(online)].pdf | 2024-11-21 |
| 15 | 202321067284-Form 1 (Submitted on date of filing) [21-11-2024(online)].pdf | 2024-11-21 |
| 16 | 202321067284-Covering Letter [21-11-2024(online)].pdf | 2024-11-21 |
| 17 | 202321067284-FORM 18 [08-01-2025(online)].pdf | 2025-01-08 |
| 18 | Abstract-1.jpg | 2025-01-14 |