Prosecution Insights
Last updated: April 19, 2026
Application No. 18/572,164

DYNAMIC IMAGE-QUALITY VIDEO PLAYING METHOD, APPARATUS, ELECTRONIC DEVICE, AND STORAGE MEDIUM

Non-Final OA §102§103
Filed
Dec 19, 2023
Examiner
ANSARI, TAHMINA N
Art Unit
2674
Tech Center
2600 — Communications
Assignee
BEIJING ZITIAO NETWORK TECHNOLOGY CO., LTD.
OA Round
1 (Non-Final)
86%
Grant Probability
Favorable
1-2
OA Rounds
2y 8m
To Grant
99%
With Interview

Examiner Intelligence

Grants 86% — above average
86%
Career Allow Rate
743 granted / 868 resolved
+23.6% vs TC avg
Strong +18% interview lift
Without
With
+17.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 8m
Avg Prosecution
33 currently pending
Career history
901
Total Applications
across all art units

Statute-Specific Performance

§101
12.2%
-27.8% vs TC avg
§103
40.4%
+0.4% vs TC avg
§102
22.6%
-17.4% vs TC avg
§112
10.5%
-29.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 868 resolved cases

Office Action

§102 §103
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA. Claims 10 , 12 and 14 were cancelled and Claims 15-23 were newly added by the applicants in a preliminary amendment dated December 19, 2023. Claims 1-9, 11 , 13, and 15-23 are pending in this application. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. Specification The title of the invention is not descriptive. A new title is required that is clearly indicative of the invention to which the claims are directed. Claim Rejections - 35 USC § 102 The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale , or otherwise available to the public before the effective filing date of the claimed invention. (a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention. Claims 1-2, 11-12, 13, 15 and 2 3 are rejected under 35 U.S.C. 102( a)(1 ) /(a)(2) as being anticipated by A shner et al. (US PGPub US 2019 / 0141117A 1, hereby referred to as “Ashner”) . Consider Claims 1, 11 and 13. Ashner teaches: 1. (Original) A dynamic image quality video playing method, comprising: / 11. (Currently Amended) An electronic device, comprising: a memory storing a computer program thereon; and a processor for execution of the computer program in the memory to perform the method of: / 13. (Currently Amended) A computer program product being stored on anon-transitory computer storage medium and comprising a computer program, wherein the computer program, when executed by a processor, implementing the method of (Ashner: abstract, Individualized connectivity based request handling is disclosed. For example, a content source is accessed by a client device and a load balancer executes on a processor to receive a first request based on the client device accessing the content source. A first session variable is set to a first value in a first session and a first latency to the client device is measured. A first plurality of target nodes is selected based on the first session variable. A first plurality of messages is sent to the first plurality of target nodes. A second request is received from the client device after the first session expires, starting a second session. The first session variable is set to a different second value in the second session. A second plurality of messages is sent to a second plurality of target nodes different from the first plurality of target nodes. [0014]-[0022], Figure 1; [ 0021] In illustrated example system 100 in FIG. 1, load balancer service 140 may be part of an advertisement auction service operated by an ad agency, connecting client devices 172 and 173 to advertisers 160, 162, and 164 thereby allowing advertisers 160, 162, and 164 to bid on ad impressions on client devices 172 and 173 as they materialize. In an example, web content 150 may be any form of web content (e.g., news article, video streaming, email, cloud storage, etc.) accessible to client devices 172 and 173 and web content 150 may include ad slots and ad impressions. In the example, upon loading web content 150, client devices 172 and 173 contact load balancer service 140 to obtain bids for a given ad impression, and load balancer service 140 in turn may contact advertisers 160, 162, and 164 for bids for the ad impression. ) 1. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 11. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 13. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; (Ashner: [0033] A first session variable is set to a first value in a first session (block 420). In an example, after a request is made to load balancer service 140 by client device 172, a first client session is established, and at least one session variable is set to determine certain content serving configurations for load balancer service 140 in relation specifically to client device 172. In an example, at the initiation of a first session or a new session after a prolonged (e.g., 30 minute) delay, load balancer service 140 may revert to default settings for client device 172 based on, for example, physical characteristics of client device 172 (e.g., device type, connection type, etc.). In an example, the first session variable is one of a timeout value, a request class, a client device type, and a network connection type. In an example, a timeout value may be a time limit for serving a request or for awaiting a response. For example, a video streaming service may wait for a timeout value before terminating a stream due to lack of response, while an ad agency may cut off additional bidders for a given ad impression after hitting a timeout value. In an example, a request class may include a type of request. For example, a request for a video advertisement would not be sent to an image or audio advertiser for bids. A client device type may include physical characteristics of client device 172 (e.g., make, model, screen size, headphone vs. speaker, etc.). In an example, a network connection type may include a currently active connection (e.g., the interface used to send the request) and/or other connection interfaces on client device 172 that currently have signal. ) 1. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 11. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 13. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; (Ashner: [0038] A first plurality of messages is sent to the first plurality of target nodes (block 450). In an example, load balancer service 140 sends a plurality of translated requests (e.g., requests for bids) to each selected target node in the first plurality of target nodes (e.g., advertisers 160 and 162). In an example, target nodes may be selected based on a combination of factors including content availability factors and delivery performance factors. For example, a video hosting service may check for the availability of a given video, or if placed on a shuffle or random mode, check that a target node has content (e.g., web content 150) in the right category or genre. Similarly, serving video typically requires high bandwidth, but users may typically expect a slight delay or buffering period, especially when accessing distant content (e.g., from overseas). In an example, a weather report from a weather service may be expected to be delivered with low latency regardless of format, so downgrading quality (e.g., high resolution video to low resolution video to image to text) may be preferable to a perceptible delay in delivering a weather report. In an advertisement serving system, it would be a waste of time and resources to request for a video advertiser to bid on a still banner ad, so content type becomes very important for efficiency, for example, by reducing unnecessary network traffic and processing tasks. In addition, requesting and receiving bids with low latency becomes extremely important because of stringent time limits imposed on auctions to preserve the user experience for web content 150. In such systems, cutting off slow responding target nodes (e.g., advertiser 164) may mean the difference between successfully placing a bid in time for an ad impression and being rejected for being too slow. [0041] In an example, probe 250 may be triggered by client device 172 accessing the content source (e.g., web content 150). In an example, probe 250 is triggered based on a timing discrepancy between any two of the load balancer service 140, the client device 172, and a publisher of web content 150. In an example, the load balancer service 140 receives another request in a first session from the client device 172 and sends another plurality of messages to an updated plurality of target nodes (e.g., advertisers 160, 162, and 164) different from the first plurality of target nodes (e.g., advertisers 160 and 162) based on the second session variable (e.g., a latency and/or bandwidth measurement by probe 250). In an example, a client device variable (e.g., latency measurement, bandwidth measurement, orientation, movement, resolution, etc.) is stored in a cookie on client device 172. In an example, the client device variable is transmitted to load balancer service 140 where the client device variable is stored as a session variable. ) 1. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 11. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 13. and determining a target image quality level based on the image quality selection strategy and a current network condition, (Ashner: [0039] In a typical browsing session, client device 172 may access numerous pages from numerous content providers (e.g., web content 150). To the extent that a plurality of these content providers are affiliated with a given ad agency, this ad agency may expect to receive multiple subsequent requests for ads after receiving an initial request for ads. Therefore, for the ad agency, being able to enhance the likelihood of successfully placing a subsequent series of ads may equate to a large computing efficiency increase. In these cases, a probe (e.g., probe 250) may be implemented to better tailor subsequent ad placements. In an example, the probe is sent by the load balancer service 140 and/or the client device 172 and results from the probe are stored as a second session variable. In an example, probe 250 measures a round trip latency between the load balancer service 140 and the client device 172. Probe 250 may also measure a latency between the load balancer service 140 or the client device 172, and a host of web content 150. In an example, latency may be measured via a ping from either client device 172 or load balancer service 140. In the example, factors such as DNS lookup time, wait time, TCP/IP lag, and connection bandwidth may factor into total latency between client device 172 and load balancer service 140. In an example, latency from client device 172 to load balancer service 140 may not equal the reverse latency from load balancer service 140 to client device 172, and both latencies may be factored into any session variable or settings adjustments made by load balancer service 140. For example, load balancer service 140 may be collocated with DNS and therefore have a much lower DNS response time than a mobile device (e.g., client device 172) out in the countryside. [0040] In an example, probe 250 measures a network bandwidth of the client device 172. In the example, bandwidth may be measured in addition to or instead of latency. In an example bandwidth and latency may be measured by separate probes. In an example, latency may be associated with a response timeout setting, while bandwidth may be associated with a content type setting. For example, on a client device 172 with a high latency may be insensitive to delayed content buffering times, for example, having a video delivered from a low use data center in Kansas City to a device in a Washington D.C. suburb, thereby increasing the utilization of the underutilized data center. Consequently, the same client device 172 may provide a longer period for acquiring bids on an ad associated with the video, so more distantly located advertisers may have time to respond with a bid on an ad. In an example, client device 172 located in Washington D.C. actually belongs to a Chicago traveler, and a Chicago advertiser who would be willing to place a high bid for the Chicago traveler's business may not get a chance to bid under a default timeout setting on load balancer service 140. In the example, because of the high latency experienced by client device 172, the Chicago advertiser is given a chance to bid and places an ad that would not have been given a chance otherwise. In another example, a measurement from probe 250 may indicate, for example, low latency and low bandwidth (e.g., when client device 172 is moving at high speed in a metropolitan area). In the example, video content and ads may be disabled in favor of image ads to avoid packet loss as client device 172 move between cell phone towers interrupting a video. ) 1. and playing, based on the target image quality level, the video to be played in the video information stream. / 11. and playing, based on the target image quality level, the video to be played in the video information stream. / 13. and playing, based on the target image quality level, the video to be played in the video information stream. (Ashner: [ 0042] A second request is received from the client device after the first session expires, wherein the second request starts a second session (block 460). In an example, connection sessions with load balancer service 140 expire after a given amount of time. In another example, a connection session between load balancer service 140 and client device 172 may expire based on client device 172 changing a connection interface (e.g., WiFi vs. 4G). In an example, a session duration between load balancer service 140 and client device 172 may be based on an associated Secure Socket Layer (“SSL”) or other encryption session. The first session variable is set to a different second value in the second session (block 470). In an example, load balancer service 140 sets a timeout value for client device 172's new requests under the second session to a different value. For example, load balancer service 140 may change a timeout value from a shorter value for a previous WiFi connection to a longer timeout value for a new 4G session. In another example, client device 172 sends a cookie storing a previous latency value for a previous 4G session that is significantly lower than the average 4G connection, and load balancer service 140 responds by setting a short timeout value for the new 4G connection based on the previous value in the cookie. A second plurality of messages is sent to a second plurality of target nodes different from the first plurality of target nodes (block 480). In an example, where the first message of first session (e.g., WiFi) was sent to a first plurality of target nodes (e.g., advertisers 160 and 162), the first message of the second session (e.g., wireless 4G) is sent to a different plurality of target nodes (e.g., advertisers 160, 162, and 164). [0043] FIG. 5 is a flow diagram illustrating individualized connectivity based request handling in an advertisement bidding system according to an example of the present disclosure. Although the examples below are described with reference to the flowchart illustrated in FIG. 5, it will be appreciated that many other methods of performing the acts associated with FIG. 5 may be used. For example, the order of some of the blocks may be changed, certain blocks may be combined with other blocks, and some of the blocks described are optional. The methods may be performed by processing logic that may comprise hardware (circuitry, dedicated logic, etc.), software, or a combination of both. In example system 500, load balancer service 140 and a client device 172 combine improve advertisement delivery with individualized connectivity based request handling. ) Consider Claims 2 and 15 and 23 . Ashner teaches: 2. (Original) The method of claim 1, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. / 15. (New) The electronic device of claim 11, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. / 23. (New) The computer program product of claim 13, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. (Ashner: [ 0048] Individualized connectivity based request handling delivers improved data center utilization and efficiency by tailoring content delivery of both published web content and associated ancillary content (e.g., advertisements) to the actual current capacity (e.g., latency and bandwidth) of the client device in question. For example, a client device 372 on a high latency high bandwidth connection (e.g., loading overseas content or due to damage at a switch), may be served from a data center selected for low utilization. The same client device 372 may also allow for a more comprehensive auction with more respondents for ad impressions associated with the content served. Similarly, compute resources may be saved where client device 372 is experiencing low latency and low bandwidth by avoiding the delivery of contents that may not properly load (e.g., high resolution video). In an example, by instrumenting and tracking connectivity on an individualized basis, a load balancer 140 implementing individualized connectivity based request handling may increase data center utilization thereby reducing computing resource overhead. In addition, by predictively excluding target nodes that are likely to fail to respond in a sufficiently timely manner, load balancer 140 reduces overall processing and network load, thereby increasing effective computing capacity. ) Claims 1-2, 11-12, 13, 15 and 23 are further rejected under 35 U.S.C. 102(a)(1)/(a)(2) as being anticipated by Liu et al. (US PGPub US 20210120292A1 , hereby referred to as “Liu”). Consider Claims 1, 11 and 13. Liu teaches: 1. (Original) A dynamic image quality video playing method, comprising: / 11. (Currently Amended) An electronic device, comprising: a memory storing a computer program thereon; and a processor for execution of the computer program in the memory to perform the method of: / 13. (Currently Amended) A computer program product being stored on anon-transitory computer storage medium and comprising a computer program, wherein the computer program, when executed by a processor, implementing the method of: (Liu: abstract, Video playback quality detection methods, systems, and apparatuses are described. The method can include obtaining a first video data packet of a target video from a bearer network and obtaining a data byte quantity of first video data included in the first video data packet. The method may also include determining a buffer byte quantity stored in a video quality detection buffer. Furthermore, the method can include obtaining video frame data rate information corresponding to the target video and reducing the buffer byte quantity stored in the video quality detection buffer based on a video frame rate of the target video and the video frame data rate information of the target video. The method may further include determining a playback status of playing the target video on a video player, and determining video playback quality of the target video based on the playback status. According to the embodiments of the present invention, user experience and accuracy of the video playback quality detection method can be improved. [0045] FIG. 1 is a schematic structural diagram of a video playback quality detection system according to an embodiment of the present invention. The video playback quality detection system includes a video resource server 101, a video player 102, a video playback quality detection apparatus 103 described in Embodiment 2, and a data rate information cloud server 104 described in Embodiment described in FIG. 6. [0046] In embodiments of some feasible implementations, the video resource server 101 may be configured to store a plurality of videos including at least a target video. The video player 102 may send a video playback request to the video resource server 101 by using a bearer network based on a user operation instruction received by the video player 102. Then, the video resource server 101 responds to the video playback request sent by the video player 102, and sends, to the video player 102 by using the bearer network, a video determined based on the video playback request. The video player 102 may obtain the video from the video resource server 101 by using the bearer network, and play the video. The bearer network is a network that is between the video resource server 101 and the video player 102 and that is used for video transmission or signaling exchange. Herein, a video may be transmitted in the bearer network in a form of a video data packet. A type of the video data packet may be an http data packet. A video in transmission may correspond to a plurality of video data packets. This is not limited herein. [0049] FIG. 2 is a schematic flowchart of a video playback quality detection method according to an embodiment of the present invention. ) 1. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 11. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 13. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; (Liu: [0049] FIG. 2 is a schematic flowchart of a video playback quality detection method according to an embodiment of the present invention. [0050] S101. Obtain a first video data packet of a target video from a bearer network, obtain a data byte quantity of first video data in the first video data packet, and determine, based on the data byte quantity, a buffer byte quantity stored in a video quality detection buffer. [ 0056] S102. Obtain video frame data rate information corresponding to the target video, and reduce, based on a video frame rate of the target video and the video frame data rate information of the target video, the buffer byte quantity stored in the video quality detection buffer. ) 1. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 11. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 13. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; (Liu: Figure 2, [0056] S102 Obtain video frame data rate information corresponding to the target video, and reduce, based on a video frame rate of the target video and the video frame data rate information of the target video, the buffer byte quantity stored in the video quality detection buffer. [0057]-[0059] Optionally, the video playback quality detection apparatus may extract a video identifier of the target video from basic video information (for ease of understanding and description, a target identifier is used as a substitute in the following description). Herein, each of a plurality of videos stored in the video resource server corresponds to only one specific video identifier. [0061] FIG. 3 is a schematic composition diagram of decoded video information according to an embodiment of the present invention. It may be learned from the diagram that one group of decoded information includes at least a video identifier and video frame data rate information of one video. ) 1. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 11. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 13. and determining a target image quality level based on the image quality selection strategy and a current network condition, (Liu: [0061] Referring to FIG. 3, it may be learned from FIG. 3 that the video frame data rate information includes single frame data rate information corresponding to each of some or all video frames in the target video, for example, single frame data rate information 1 to single frame data rate information n shown in the figure. The single frame data rate information corresponding to any video frame includes at least a data rate byte quantity and a data rate information identifier that correspond to any video frame, for example, a data rate byte quantity k1 to a data rate byte quantity kn and a data rate information identifier corresponding to each data rate byte quantity in the figure. The video frame data rate information of the target video is obtained from the data rate information cloud server based on the video identifier of the target video. This method is simple and easy to implement. A data processing amount in the video playback quality detection method can be reduced, and efficiency of the video playback quality detection method can be improved. [0062]-[0065] Then, the video playback quality detection apparatus may store, in the data rate information buffer, a plurality of single frame data rate byte quantities corresponding to the second video data packet, to update the video frame data rate information that is of the target video and that is stored in the data rate information buffer. It may be understood herein that the video playback quality detection apparatus needs some time to complete updating the video frame data rate information that is of the target video and that is stored in the data rate information buffer ) 1. and playing, based on the target image quality level, the video to be played in the video information stream. / 11. and playing, based on the target image quality level, the video to be played in the video information stream. / 13. and playing, based on the target image quality level, the video to be played in the video information stream. (Liu: [0070] Optionally, the video playback quality detection apparatus may further use a preset time interval T as a preset cycle to perform a reduction operation on the buffer byte quantity stored in the video quality detection buffer. Herein, T is an integer multiple of the reduction cycle. [ 0072] S103. Determine, based on the reduced buffer byte quantity stored in the video quality detection buffer, the playback status of playing the target video on the video player. [0073]-[0074] Optionally, after the video playback quality detection apparatus obtains the reduced buffer byte quantity stored in the video quality detection buffer, if the video playback quality detection apparatus determines that the reduced buffer byte quantity is less than or equal to a preset stalling byte quantity threshold, it may be determined that the playback status of the target video is a stalling state. [0075]-[0076] S104. Determine video playback quality of the target video based on the playback status. [0077] In embodiments of some feasible implementations, after determining the playback status of playing the target video on the video player, the video playback quality detection apparatus may determine the video playback quality of the target video based on the playback status. ) Consider Claims 2, 15 and 23. Liu teaches: 2. (Original) The method of claim 1, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. / 15. (New) The electronic device of claim 11, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. / 23. (New) The computer program product of claim 13, wherein: the image quality selection strategy comprises a high image quality strategy or a high fluency strategy, the high image quality strategy being for indicating a terminal device to play the video to be played in the video information stream at a first image quality level in a first network condition, the high fluency strategy being for indicating the terminal device to play the video to be played in the video information stream at a second image quality level in the first network condition, and a bit rate corresponding to the first image quality level is greater than a bit rate corresponding to the second image quality level. (Liu: [0076] S104. Determine video playback quality of the target video based on the playback status.[0077] In embodiments of some feasible implementations, after determining the playback status of playing the target video on the video player, the video playback quality detection apparatus may determine the video playback quality of the target video based on the playback status. In embodiments of a specific implementation, when the video playback quality detection apparatus determines that the playback status of playing the target video on the video player is the stalling state, the video playback quality detection apparatus may determine a quantity of stalling times that corresponds to the target video. For example, the video playback quality detection apparatus may record a time at which the target video is in the stalling state, and count a total quantity of stalling times of the target video from a start time of playing the video to a current moment. Then, the video playback quality detection apparatus may determine whether the quantity of stalling times of the target video is greater than or equal to a first preset quantity threshold. If the video playback quality detection apparatus determines that the quantity of stalling times that corresponds to the target video is greater than or equal to a first preset quantity threshold, the video playback quality detection apparatus may determine that the video playback quality of playing the target video on the video player is poor. Otherwise, the video playback quality detection apparatus may determine that the playback quality of playing the target video on the video player is good. Optionally, the video playback quality detection apparatus may further determine whether the quantity of stalling times of the target video is greater than or equal to a second preset quantity threshold at the expiration of a preset detection period. If the video playback quality detection apparatus determines that the quantity of stalling times of the target video is greater than or equal to the second preset quantity threshold at the expiration of the preset detection period, the video playback quality detection apparatus may determine that the playback quality of playing the target video on the video player is poor. Otherwise, the video playback quality detection apparatus may determine that playback quality of playing the target video on the video player is good. The video playback quality of the target video is determined based on the quantity of stalling times that corresponds to the target video. This method is simple and easy to implement. In this way, efficiency and applicability of the video playback quality detection method can be improved. [0078] In embodiments of some feasible implementations, when the video playback quality detection apparatus determines that the playback status of the target video is the stalling state, the video playback quality detection apparatus may stop performing the step of reducing, based on the video frame rate of the target video and the video frame data rate information of the target video, the buffer byte quantity stored in the video quality detection buffer. In this case, the video playback quality detection apparatus may continue to obtain a new video data packet, and increase, based on a data byte quantity of video data in the new video data packet, the buffer byte quantity stored in the video quality detection buffer. In this way, a video data buffer mechanism used when the video player is in the stalling state may be synchronously simulated. When the buffer byte quantity stored in the video quality detection buffer is greater than or equal to a preset fluent byte quantity threshold, the video playback quality detection apparatus may determine that the playback status of the target video on a video player is switched from the stalling state to a fluent state. In this case, the video playback quality detection apparatus may continue to perform the step of reducing, based on the video frame rate and the video frame data rate information, the buffer byte quantity stored in the video quality detection buffer. Then, the video playback quality detection apparatus may obtain duration in which the playback status of the target video is switched from the stalling state to the fluent state, and update the total stalling duration of the target video based on the duration. ) Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102 of this title, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negatived by the manner in which the invention was made. Claims 1-9, 11 , 13, and 15-23 are rejected under 35 U.S.C. 103 as being unpatentable over Ashner et al. (US PGPub US 2019 / 0141117A 1, hereby referred to as “Ashner”) , in view of Liu et al. (US PGPub US 2021 / 0120292 A1 , hereby referred to as “ Liu ” ) . Consider Claims 1 -3 , 11 , 13 , 15 and 23 . Ashner teaches: 1. (Original) A dynamic image quality video playing method, comprising: / 11. (Currently Amended) An electronic device, comprising: a memory storing a computer program thereon; and a processor for execution of the computer program in the memory to perform the method of: / 13. (Currently Amended) A computer program product being stored on anon-transitory computer storage medium and comprising a computer program, wherein the computer program, when executed by a processor, implementing the method of (Ashner: abstract, Individualized connectivity based request handling is disclosed. For example, a content source is accessed by a client device and a load balancer executes on a processor to receive a first request based on the client device accessing the content source. A first session variable is set to a first value in a first session and a first latency to the client device is measured. A first plurality of target nodes is selected based on the first session variable. A first plurality of messages is sent to the first plurality of target nodes. A second request is received from the client device after the first session expires, starting a second session. The first session variable is set to a different second value in the second session. A second plurality of messages is sent to a second plurality of target nodes different from the first plurality of target nodes. [0014]-[0022], Figure 1; [ 0021] In illustrated example system 100 in FIG. 1, load balancer service 140 may be part of an advertisement auction service operated by an ad agency, connecting client devices 172 and 173 to advertisers 160, 162, and 164 thereby allowing advertisers 160, 162, and 164 to bid on ad impressions on client devices 172 and 173 as they materialize. In an example, web content 150 may be any form of web content (e.g., news article, video streaming, email, cloud storage, etc.) accessible to client devices 172 and 173 and web content 150 may include ad slots and ad impressions. In the example, upon loading web content 150, client devices 172 and 173 contact load balancer service 140 to obtain bids for a given ad impression, and load balancer service 140 in turn may contact advertisers 160, 162, and 164 for bids for the ad impression. ) 1. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 11. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; / 13. receiving a switch command for a video information stream, the switch command being for switching a target video played in the video information stream; ( Ashner: [0033] A first session variable is set to a first value in a first session (block 420). In an example, after a request is made to load balancer service 140 by client device 172, a first client session is established, and at least one session variable is set to determine certain content serving configurations for load balancer service 140 in relation specifically to client device 172. In an example, at the initiation of a first session or a new session after a prolonged (e.g., 30 minute) delay, load balancer service 140 may revert to default settings for client device 172 based on, for example, physical characteristics of client device 172 (e.g., device type, connection type, etc.). In an example, the first session variable is one of a timeout value, a request class, a client device type, and a network connection type. In an example, a timeout value may be a time limit for serving a request or for awaiting a response. For example, a video streaming service may wait for a timeout value before terminating a stream due to lack of response, while an ad agency may cut off additional bidders for a given ad impression after hitting a timeout value. In an example, a request class may include a type of request. For example, a request for a video advertisement would not be sent to an image or audio advertiser for bids. A client device type may include physical characteristics of client device 172 (e.g., make, model, screen size, headphone vs. speaker, etc.). In an example, a network connection type may include a currently active connection (e.g., the interface used to send the request) and/or other connection interfaces on client device 172 that currently have signal. ) 1. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 11. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; / 13. determining an image quality selection strategy based on the switch command and video information of the target video corresponding to the switch command, the image quality selection strategy being for characterizing image quality levels when playing a video to be played in the video information stream in different network conditions; (Ashner: [0038] A first plurality of messages is sent to the first plurality of target nodes (block 450). In an example, load balancer service 140 sends a plurality of translated requests (e.g., requests for bids) to each selected target node in the first plurality of target nodes (e.g., advertisers 160 and 162). In an example, target nodes may be selected based on a combination of factors including content availability factors and delivery performance factors. For example, a video hosting service may check for the availability of a given video, or if placed on a shuffle or random mode, check that a target node has content (e.g., web content 150) in the right category or genre. Similarly, serving video typically requires high bandwidth, but users may typically expect a slight delay or buffering period, especially when accessing distant content (e.g., from overseas). In an example, a weather report from a weather service may be expected to be delivered with low latency regardless of format, so downgrading quality (e.g., high resolution video to low resolution video to image to text) may be preferable to a perceptible delay in delivering a weather report. In an advertisement serving system, it would be a waste of time and resources to request for a video advertiser to bid on a still banner ad, so content type becomes very important for efficiency, for example, by reducing unnecessary network traffic and processing tasks. In addition, requesting and receiving bids with low latency becomes extremely important because of stringent time limits imposed on auctions to preserve the user experience for web content 150. In such systems, cutting off slow responding target nodes (e.g., advertiser 164) may mean the difference between successfully placing a bid in time for an ad impression and being rejected for being too slow. [0041] In an example, probe 250 may be triggered by client device 172 accessing the content source (e.g., web content 150). In an example, probe 250 is triggered based on a timing discrepancy between any two of the load balancer service 140, the client device 172, and a publisher of web content 150. In an example, the load balancer service 140 receives another request in a first session from the client device 172 and sends another plurality of messages to an updated plurality of target nodes (e.g., advertisers 160, 162, and 164) different from the first plurality of target nodes (e.g., advertisers 160 and 162) based on the second session variable (e.g., a latency and/or bandwidth measurement by probe 250). In an example, a client device variable (e.g., latency measurement, bandwidth measurement, orientation, movement, resolution, etc.) is stored in a cookie on client device 172. In an example, the client device variable is transmitted to load balancer service 140 where the client device variable is stored as a session variable. ) 1. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 11. and determining a target image quality level based on the image quality selection strategy and a current network condition, / 13. and determining a target image quality level based on the image quality selection strategy and a current network condition, (Ashner: [0039] In a typical browsing session, client device 172 may access numerous pages from numerous content providers (e.g., web content 150). To the extent that a plurality of these content providers are affiliated with a given ad agency, this ad agency may expect to receive multiple subsequent requests for ads after receiving an initial request for ads. Therefore, for the ad agency, being able to enhance the likelihood of successfully placing a subsequent series of ads may equate to a large computing efficiency increase. In these cases, a probe (e.g., probe 250) may be implemented to better tailor subsequent ad placements. In an example, the probe is sent by the load balancer service 140 and/or the client device 172 and results from the probe are stored as a second session variable. In an example, probe 250 measures a round trip latency between the load balancer service 140 and the client device 172. Probe 250 may also measure a latency between the load balancer service 140 or the client device 172, and a host of web content 150. In an example, latency may be measured via a ping from either client device 172 or load balancer service 140. In the example, factors such as DNS lookup time, wait time, TCP/IP lag, and connection bandwidth may factor into total latency between client device 172 and load balancer service 140. In an example, latency from client device 172 to load balancer service 140 may not equal the reverse latency from load balancer service 140 to client device 172, and both latencies may be factored into any session variable or settings adjustments made by load balancer service 140. For example, load balancer service 140 may be collocated with DNS and therefore have a much lower DNS response time than a mobile device (e.g., client device 172) out in the countryside. [0040] In an example, probe 250 measures a network bandwidth of the client device 172. In the example, bandwidth may be measured in addition to or instead of latency. In an example bandwidth and latency may be measured by separate probes. In an example, latency may be associated with a response timeout setting, while bandwidth may be associated with a content type setting. For example, on a client device 172 with a high latency may be insensitive to delayed content buffering times, for example, having a video delivered from a low use data center in Kansas City to a device in a Washington D.C. suburb, thereby increasing the utilization of the underutilized data center. Consequently, the same client device 172 may provide a longer period for acquiring bids on an ad associated with the video, so more distantly located advertisers may have time to respond with a bid on an ad. In an example, client device 172 located in Washington D.
Read full office action

Prosecution Timeline

Dec 19, 2023
Application Filed
Mar 20, 2026
Non-Final Rejection — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12586249
PROCESSING APPARATUS, PROCESSING METHOD, AND STORAGE MEDIUM FOR CALIBRATING AN IMAGE CAPTURE APPARATUS
2y 5m to grant Granted Mar 24, 2026
Patent 12586354
TRAINING METHOD, APPARATUS AND NON-TRANSITORY COMPUTER READABLE MEDIUM FOR A MACHINE LEARNING MODEL
2y 5m to grant Granted Mar 24, 2026
Patent 12573083
COMPUTER-READABLE RECORDING MEDIUM STORING OBJECT DETECTION PROGRAM, DEVICE, AND MACHINE LEARNING MODEL GENERATION METHOD OF TRAINING OBJECT DETECTION MODEL TO DETECT CATEGORY AND POSITION OF OBJECT
2y 5m to grant Granted Mar 10, 2026
Patent 12548297
IMAGE PROCESSING METHOD AND APPARATUS, COMPUTER DEVICE, STORAGE MEDIUM, AND PROGRAM PRODUCT BASED ON FEATURE AND DISTRIBUTION CORRELATION
2y 5m to grant Granted Feb 10, 2026
Patent 12524504
METHOD AND DATA PROCESSING SYSTEM FOR PROVIDING EXPLANATORY RADIOMICS-RELATED INFORMATION
2y 5m to grant Granted Jan 13, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
86%
Grant Probability
99%
With Interview (+17.9%)
2y 8m
Median Time to Grant
Low
PTA Risk
Based on 868 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month